/* Emergency-fix cluster design system — shared by /emergency-fix and all problem pages. */
:root{--ef-ink:#0f172a;--ef-blue:#1e40af;--ef-red:#dc2626;--ef-amber:#f59e0b;--ef-bg:#f8fafc;--ef-line:#e5e7eb;--ef-muted:#6b7280;--ef-green:#25d366}
*{box-sizing:border-box}
body.ef{margin:0;color:var(--ef-ink);background:#fff;line-height:1.6;font-family:var(--font-primary,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif)}
.ef-wrap{max-width:1080px;margin:0 auto;padding:0 1.25rem}
.ef-bar{background:var(--ef-red);color:#fff;text-align:center;padding:.6rem 1rem;font-weight:600;font-size:.95rem}
.ef-bar a{color:#fff;text-decoration:underline}
.ef-head{display:flex;align-items:center;justify-content:space-between;padding:1rem 0}
.ef-logo{font-weight:800;font-size:1.25rem;color:var(--ef-ink);text-decoration:none}
.ef-logo span{color:var(--ef-blue)}
.ef-hero{padding:2.5rem 0 1.5rem;text-align:center}
.ef-eyebrow{display:inline-block;background:#fef2f2;color:var(--ef-red);font-weight:700;font-size:.8rem;letter-spacing:.04em;text-transform:uppercase;padding:.35rem .8rem;border-radius:999px;margin-bottom:1rem}
.ef-hero h1{font-size:clamp(1.9rem,5vw,3rem);line-height:1.1;margin:.25rem 0 1rem;font-weight:800;letter-spacing:-.02em}
.ef-hero h1 em{color:var(--ef-blue);font-style:normal}
.ef-sub{font-size:1.15rem;color:#334155;max-width:680px;margin:0 auto 1.75rem}
.ef-cta-row{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap}
.ef-btn{display:inline-block;border:0;border-radius:10px;padding:.95rem 1.8rem;font-size:1.05rem;font-weight:700;cursor:pointer;text-decoration:none;transition:transform .08s}
.ef-btn:active{transform:translateY(1px)}
.ef-btn-primary{background:var(--ef-blue);color:#fff}
.ef-btn-emergency{background:var(--ef-red);color:#fff}
.ef-btn-ghost{background:#fff;color:var(--ef-blue);border:2px solid var(--ef-blue)}
.ef-btn-wa{background:var(--ef-green);color:#fff}
.ef-btn i{margin-right:.4rem}
.ef-trust{display:flex;gap:1.25rem;justify-content:center;flex-wrap:wrap;color:var(--ef-muted);font-size:.9rem;margin-top:1.5rem}
.ef-trust b{color:var(--ef-ink)}
.ef-geo{background:#eff6ff;border:1px solid #bfdbfe;border-radius:12px;max-width:760px;margin:1.5rem auto 0;padding:.9rem 1.1rem;color:#1e3a8a;font-size:.95rem;text-align:center}
.ef-geo b{color:var(--ef-blue)}
.ef-section{padding:2.75rem 0;border-top:1px solid var(--ef-line)}
.ef-section h2{font-size:1.6rem;font-weight:800;text-align:center;margin:0 0 .4rem}
.ef-section .lede{text-align:center;color:var(--ef-muted);max-width:640px;margin:0 auto 1.75rem}
.ef-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.ef-step{background:var(--ef-bg);border:1px solid var(--ef-line);border-radius:12px;padding:1.25rem}
.ef-step .n{display:inline-flex;width:2rem;height:2rem;align-items:center;justify-content:center;background:var(--ef-blue);color:#fff;border-radius:999px;font-weight:800;margin-bottom:.6rem}
.ef-step h3{margin:.2rem 0 .35rem;font-size:1.1rem}
.ef-step p{margin:0;color:#475569;font-size:.95rem}
.ef-price{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.ef-card{border:1px solid var(--ef-line);border-radius:14px;padding:1.5rem;background:#fff;display:flex;flex-direction:column}
.ef-card.feat{border:2px solid var(--ef-blue);box-shadow:0 8px 28px rgba(30,64,175,.12)}
.ef-card .tag{font-weight:700;color:var(--ef-blue);font-size:.85rem;text-transform:uppercase;letter-spacing:.04em}
.ef-card .amt{font-size:2.1rem;font-weight:800;margin:.25rem 0}
.ef-card .amt small{font-size:.95rem;font-weight:600;color:var(--ef-muted)}
.ef-card ul{margin:.5rem 0 1.25rem;padding-left:1.1rem;color:#475569;font-size:.95rem}
.ef-card li{margin:.3rem 0}
.ef-card .ef-btn{margin-top:auto;text-align:center}
.ef-fixlist{columns:2;column-gap:2rem;max-width:760px;margin:0 auto;list-style:none;padding:0}
.ef-fixlist li{padding:.4rem 0 .4rem 1.6rem;position:relative;break-inside:avoid;color:#334155}
.ef-fixlist li::before{content:"\f0ad";font-family:"Font Awesome 6 Free";font-weight:900;color:var(--ef-blue);position:absolute;left:0}
.ef-prose{max-width:760px;margin:0 auto;color:#334155}
.ef-prose h2{text-align:left;font-size:1.5rem;margin:2rem 0 .6rem}
.ef-prose h3{font-size:1.2rem;margin:1.5rem 0 .4rem;color:var(--ef-ink)}
.ef-prose p{margin:.6rem 0}
.ef-prose ul,.ef-prose ol{margin:.6rem 0;padding-left:1.4rem}
.ef-prose li{margin:.35rem 0}
.ef-prose code{background:var(--ef-bg);border:1px solid var(--ef-line);border-radius:5px;padding:.1rem .35rem;font-size:.9em}
.ef-answer{background:#eff6ff;border-left:4px solid var(--ef-blue);border-radius:0 10px 10px 0;padding:1rem 1.25rem;margin:1rem auto;max-width:760px;color:#1e3a8a;font-size:1.05rem}
.ef-faq{max-width:760px;margin:0 auto}
.ef-faq details{border:1px solid var(--ef-line);border-radius:10px;padding:.4rem 1rem;margin:.6rem 0;background:#fff}
.ef-faq summary{font-weight:700;cursor:pointer;padding:.6rem 0;color:var(--ef-ink)}
.ef-faq details[open] summary{color:var(--ef-blue)}
.ef-faq p{margin:.3rem 0 .9rem;color:#475569}
.ef-cluster{display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));max-width:880px;margin:0 auto}
.ef-cluster a{display:block;border:1px solid var(--ef-line);border-radius:10px;padding:.9rem 1.1rem;text-decoration:none;color:var(--ef-ink);font-weight:600;background:#fff;transition:border-color .12s,box-shadow .12s}
.ef-cluster a:hover{border-color:var(--ef-blue);box-shadow:0 4px 14px rgba(30,64,175,.1)}
.ef-cluster a span{display:block;font-weight:400;font-size:.88rem;color:var(--ef-muted);margin-top:.2rem}
.ef-form{max-width:560px;margin:0 auto;background:var(--ef-bg);border:1px solid var(--ef-line);border-radius:14px;padding:1.5rem}
.ef-form label{display:block;font-weight:600;font-size:.92rem;margin:.75rem 0 .3rem}
.ef-form input,.ef-form select,.ef-form textarea{width:100%;border:1px solid #cbd5e1;border-radius:9px;padding:.7rem;font-size:1rem;font-family:inherit}
.ef-form textarea{min-height:90px;resize:vertical}
.ef-hp{position:absolute;left:-9999px}
.ef-form .ef-btn{width:100%;margin-top:1.1rem}
.ef-note{color:var(--ef-muted);font-size:.85rem;text-align:center;margin-top:.8rem}
.ef-ok{display:none;background:#ecfdf5;border:1px solid #a7f3d0;color:#065f46;border-radius:10px;padding:1rem;text-align:center;font-weight:600}
.ef-foot{border-top:1px solid var(--ef-line);padding:2rem 0;text-align:center;color:var(--ef-muted);font-size:.9rem}
.ef-foot a{color:var(--ef-blue)}
@media(max-width:560px){.ef-fixlist{columns:1}}
