:root{
  /* storm & signal system: charcoal structure, ice backgrounds, safety-orange action */
  --coal:#1D232B;          /* primary dark — text + bands */
  --coal-deep:#14181F;     /* deepest band */
  --coal-soft:#2A323C;     /* hairline-adjacent surfaces on dark */
  --paper:#FAFCFD;         /* cool white */
  --ice:#EBF1F4;           /* ice-blue light panels */
  --body-ink:#414B57;      /* paragraph text on light */
  --steel:#6E7986;         /* muted text on light */
  --line:#D9E1E6;          /* hairlines on light */
  --line-dark:#333C47;     /* hairlines on dark */
  --signal:#F4581C;        /* safety orange — action & accents */
  --signal-deep:#C23F0C;   /* deep orange — small text on light */
  --signal-pale:#FFD9C7;   /* soft orange text on dark */
  --text-hi:#F4F6F8;       /* headings on dark */
  --text-body:#B9C2CC;     /* paragraphs on dark */
  --text-dim:#828E9B;      /* muted labels on dark */
  --display:'Anton', Impact, sans-serif;
  --body:'Archivo', -apple-system, sans-serif;
  --mono:'IBM Plex Mono', ui-monospace, monospace;
  --pad:clamp(20px,5vw,64px);
  --sect:clamp(64px,9vw,112px);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{font-family:var(--body);color:var(--coal);background:var(--paper);line-height:1.55;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}
img{max-width:100%;display:block;height:auto}
a{color:inherit}
button{font-family:inherit}
::selection{background:var(--signal);color:#FFFFFF}

/* ---------- utilities ---------- */
.wrap{width:100%;max-width:1200px;margin:0 auto;padding-left:max(var(--pad),env(safe-area-inset-left));padding-right:max(var(--pad),env(safe-area-inset-right))}
.mono{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase}
.display{font-family:var(--display);font-weight:400;line-height:.95;letter-spacing:.005em;text-transform:uppercase}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-family:var(--mono);font-size:13px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;border:2px solid var(--coal);padding:15px 26px;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease;background:transparent;color:var(--coal)}
.btn .arrow{transition:transform .15s ease}
.btn:hover .arrow{transform:translateX(4px)}
/* primary: safety orange */
.btn-solid{background:var(--signal);border-color:var(--signal);color:var(--coal-deep)}
.btn-solid:hover{background:var(--coal);border-color:var(--coal);color:#FFFFFF}
.btn-outline:hover{background:var(--coal);color:var(--paper)}
/* on dark bands */
.btn-inverse{border-color:var(--paper);color:var(--paper)}
.btn-inverse:hover{background:var(--paper);color:var(--coal)}
.btn-inverse-solid{background:var(--signal);color:var(--coal-deep);border-color:var(--signal)}
.btn-inverse-solid:hover{background:var(--paper);border-color:var(--paper);color:var(--coal)}
.btn:focus-visible,a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--signal);outline-offset:3px}

/* ---------- top bar ---------- */
.topbar{background:var(--coal-deep);color:var(--text-hi)}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;min-height:38px;gap:16px}
.topbar span{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-dim)}
.topbar a{color:var(--signal);text-decoration:none;filter:brightness(1.25)}
.topbar a:hover{text-decoration:underline}
@media(max-width:680px){
  .topbar .hide-sm{display:none}
  .topbar .wrap{justify-content:center;text-align:center}
}

/* ---------- nav ---------- */
.nav{position:sticky;top:0;z-index:50;background:var(--paper);border-bottom:2px solid var(--coal)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;height:72px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;min-width:0}
.brand .name{font-family:var(--display);font-size:17px;letter-spacing:.03em;text-transform:uppercase;white-space:nowrap;line-height:1.05}
.brand .name span{color:var(--signal)}
.nav-links{display:flex;gap:28px;list-style:none}
.nav-links a{font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;padding:6px 0;border-bottom:2px solid transparent;white-space:nowrap}
.nav-links a:hover,.nav-links a.active{border-bottom-color:var(--signal)}
.nav-cta{display:flex;gap:10px;align-items:center;flex-shrink:0}
.nav .btn{padding:11px 18px;font-size:12px}
.menu-toggle{display:none;background:none;border:2px solid var(--coal);color:var(--coal);width:44px;height:44px;cursor:pointer;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}
@media(max-width:1120px){.nav-links{display:none}.menu-toggle{display:flex}}
@media(max-width:760px){.nav .btn-outline{display:none}}
@media(max-width:520px){
  .nav .wrap{height:64px}
  .brand .name span{display:none}
  .nav .btn{padding:10px 12px;font-size:11px}
}

/* ---------- hero ---------- */
.hero{background:linear-gradient(180deg, var(--paper) 0%, var(--ice) 100%);border-bottom:2px solid var(--coal)}
.hero .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(40px,5vw,72px);align-items:center;padding-top:clamp(56px,8vw,96px);padding-bottom:clamp(56px,8vw,96px)}
.hero h1{font-size:clamp(48px,7vw,104px)}
.hero h1 .hollow{color:transparent;-webkit-text-stroke:2px var(--signal)}
.hero .kicker{display:inline-block;border:1.5px solid var(--signal-deep);color:var(--signal-deep);padding:7px 14px;margin-bottom:26px}
.hero .sub{font-size:clamp(16.5px,1.6vw,19px);color:var(--body-ink);max-width:52ch;margin:24px 0 32px}
.hero .sub strong{color:var(--coal)}
.hero-cta{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:30px}
.hero-proof{display:flex;align-items:center;gap:12px;font-size:14px;color:var(--steel)}
.hero-proof .stars{letter-spacing:3px;color:var(--signal-deep);font-size:15px;flex-shrink:0}
.hero-proof strong{color:var(--coal)}

/* repair-order card */
.ro-wrap{position:relative;padding-top:34px}
.ro-card{background:#FFFFFF;border:2px solid var(--coal);box-shadow:8px 8px 0 var(--coal)}
.ro-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 20px;background:var(--coal);color:var(--text-hi)}
.ro-head .mono{font-size:11px;letter-spacing:.1em}
.ro-body{padding:6px 20px 0}
.ro-line{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:13px 0;border-bottom:1px dashed var(--line)}
.ro-line:last-child{border-bottom:none}
.ro-line .item{font-size:14.5px;font-weight:500}
.ro-line .item small{display:block;font-weight:400;color:var(--steel);font-size:12.5px;margin-top:2px}
.ro-line .val{font-family:var(--mono);font-size:12.5px;white-space:nowrap;color:var(--steel);text-decoration:line-through;flex-shrink:0}
.ro-line .val.free{color:var(--signal-deep);font-weight:600;text-decoration:none}
.ro-total{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;border-top:2px solid var(--coal);margin-top:4px}
.ro-total .lbl{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase}
.ro-total .amt{font-family:var(--display);font-size:42px;line-height:1;color:var(--signal-deep)}
.ro-total .amt small{font-size:20px}
.ro-stamp{position:absolute;top:0;right:14px;width:92px;height:92px;border:3px solid var(--signal);border-radius:50%;background:#FFFFFF;color:var(--signal-deep);display:flex;align-items:center;justify-content:center;text-align:center;transform:rotate(9deg);font-family:var(--mono);font-size:9.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;line-height:1.45;padding:10px;z-index:2}
@media(max-width:960px){
  .hero .wrap{grid-template-columns:1fr;text-align:center}
  .hero .sub{margin-left:auto;margin-right:auto}
  .hero-cta,.hero-proof{justify-content:center}
  .ro-wrap{max-width:500px;margin:0 auto;width:100%}
  .ro-card{text-align:left}
}
@media(max-width:420px){
  .ro-line{flex-direction:column;gap:2px}
  .ro-line .val{text-decoration-thickness:1px}
}

/* ---------- ticker — signal orange band ---------- */
.ticker{background:var(--signal);color:var(--coal-deep);overflow:hidden}
.ticker-track{display:flex;width:max-content;animation:tick 30s linear infinite}
.ticker-track span{display:flex;align-items:center;gap:28px;padding:13px 14px;font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;white-space:nowrap}
.tdot{width:6px;height:6px;background:var(--coal-deep);display:inline-block;flex-shrink:0}
@keyframes tick{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .ticker-track{animation:none;width:100%;justify-content:center}
  .ticker-track span+span{display:none}
  .ticker-track span{white-space:normal;flex-wrap:wrap;justify-content:center;row-gap:6px}
}

/* ---------- section rhythm ---------- */
section{padding-top:var(--sect);padding-bottom:var(--sect)}
.sec-head{max-width:760px;margin:0 auto clamp(40px,5vw,64px);text-align:center}
.sec-head .eyebrow{display:inline-block;font-family:var(--mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--signal-deep);border-bottom:2px solid var(--signal);padding-bottom:6px;margin-bottom:20px}
.sec-head h2{font-family:var(--display);font-size:clamp(34px,4.4vw,56px);line-height:1;text-transform:uppercase}
.sec-head p{margin:18px auto 0;font-size:17px;color:var(--body-ink);max-width:60ch}

/* guarantees — charcoal band, white cards */
.gu{background:var(--coal);color:var(--text-hi)}
.gu .sec-head h2{color:var(--text-hi)}
.gu .sec-head p{color:var(--text-body)}
.gu .sec-head .eyebrow{color:var(--signal);border-bottom-color:var(--signal);filter:brightness(1.2)}
.gu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.gu-card{background:#FFFFFF;color:var(--coal);padding:32px 28px;display:flex;flex-direction:column;gap:16px;border-top:4px solid var(--signal)}
.gu-card .tag{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--signal-deep)}
.gu-card .big{font-family:var(--display);font-size:clamp(34px,3.2vw,46px);line-height:.98;text-transform:uppercase;min-height:2em}
.gu-card p{color:var(--body-ink);font-size:15px}
.gu-card p strong{color:var(--coal)}
@media(max-width:900px){
  .gu-grid{grid-template-columns:1fr}
  .gu-card .big{min-height:0}
}

/* process — ice band */
.process{background:var(--ice);border-bottom:2px solid var(--coal)}
.steps{display:grid;grid-template-columns:repeat(3,1fr);border-top:2px solid var(--coal);border-bottom:2px solid var(--coal);background:#FFFFFF}
.step{padding:38px 30px;display:flex;flex-direction:column;gap:16px}
.step+.step{border-left:1px solid var(--line)}
.step .n{font-family:var(--display);font-size:56px;line-height:1;color:transparent;-webkit-text-stroke:1.5px var(--signal)}
.step h3{font-size:17px;font-weight:700;text-transform:uppercase;letter-spacing:.03em}
.step p{font-size:14.5px;color:var(--body-ink)}
@media(max-width:900px){
  .steps{grid-template-columns:1fr}
  .step+.step{border-left:none;border-top:1px solid var(--line)}
}

/* stats band — charcoal */
.stats{background:var(--coal);color:var(--text-hi);padding:0}
.stats .grid{display:grid;grid-template-columns:repeat(4,1fr)}
.stat{padding:44px 20px;text-align:center;border-left:1px solid var(--line-dark)}
.stat:first-child{border-left:none}
.stat .num{font-family:var(--display);font-size:clamp(36px,4vw,56px);line-height:1;color:var(--signal);filter:brightness(1.15)}
.stat .lbl{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-dim);margin-top:10px}
@media(max-width:800px){
  .stats .grid{grid-template-columns:repeat(2,1fr)}
  .stat{padding:34px 16px}
  .stat:nth-child(3){border-left:none}
  .stat:nth-child(n+3){border-top:1px solid var(--line-dark)}
}

/* quote — white */
.quote{background:var(--paper);text-align:center;border-bottom:2px solid var(--coal)}
.quote .wrap{max-width:880px}
.quote blockquote{font-size:clamp(23px,3vw,36px);font-weight:600;line-height:1.3;letter-spacing:-.01em}
.quote blockquote em{font-style:normal;background:var(--signal);color:#FFFFFF;padding:0 10px;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.quote cite{display:block;margin-top:28px;font-style:normal;font-family:var(--mono);font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--steel)}
.quote .stars{display:block;letter-spacing:6px;font-size:18px;margin-bottom:22px;color:var(--signal-deep)}

/* pillars — white */
.pillars{border-bottom:2px solid var(--coal)}
.pillars .row{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(28px,4vw,56px)}
.pillar{text-align:left}
.pillar h3{font-size:18px;font-weight:700;text-transform:uppercase;letter-spacing:.02em;border-top:3px solid var(--signal);padding-top:18px;margin-bottom:12px}
.pillar p{font-size:15px;color:var(--body-ink)}
@media(max-width:900px){.pillars .row{grid-template-columns:1fr;gap:32px}}

/* faq — ice */
.faq{background:var(--ice);border-bottom:2px solid var(--coal)}
.faq-list{max-width:800px;margin:0 auto;border-top:1px solid #C6D2D9}
.faq details{border-bottom:1px solid #C6D2D9}
.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 4px;font-weight:700;font-size:16.5px;text-align:left}
.faq summary::-webkit-details-marker{display:none}
.faq summary .pm{font-family:var(--mono);font-size:20px;flex-shrink:0;width:20px;text-align:center;color:var(--signal-deep)}
.faq details[open] summary .pm::before{content:"–"}
.faq details:not([open]) summary .pm::before{content:"+"}
.faq details p{padding:0 4px 22px;color:var(--body-ink);font-size:15.5px;max-width:65ch;text-align:left}

/* final cta — charcoal */
.cta{background:linear-gradient(180deg, var(--coal) 0%, var(--coal-deep) 100%);color:var(--text-hi);text-align:center}
.cta .mono-tag{color:var(--text-dim);margin-bottom:22px;display:inline-block}
.cta h2{font-family:var(--display);font-size:clamp(42px,7vw,92px);line-height:.95;text-transform:uppercase;max-width:14ch;margin:0 auto}
.cta h2 .hollow{color:transparent;-webkit-text-stroke:2px var(--signal)}
.cta p{max-width:52ch;margin:26px auto 36px;color:var(--text-body);font-size:16.5px}
.cta .row{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
@media(max-width:520px){
  .cta .row{flex-direction:column;align-items:stretch;max-width:340px;margin:0 auto}
}

/* footer — white */
footer{background:var(--paper);padding-top:clamp(48px,7vw,80px);border-top:2px solid var(--coal)}
.f-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:clamp(28px,4vw,56px);padding-bottom:52px}
.f-grid h5{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--signal-deep);margin-bottom:16px}
.f-grid ul{list-style:none}
.f-grid li{margin-bottom:10px}
.f-grid a{text-decoration:none;font-size:14.5px}
.f-grid a:hover{text-decoration:underline;text-decoration-color:var(--signal)}
.f-brand p{color:var(--steel);font-size:14px;max-width:36ch;margin-top:14px}
.f-bottom{border-top:2px solid var(--coal);padding:20px 0;display:flex;justify-content:space-between;align-items:center;gap:10px 24px;flex-wrap:wrap;font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--steel)}
.f-bottom .scripture{color:var(--signal-deep)}
.f-bottom a{color:inherit}
@media(max-width:900px){.f-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){
  .f-grid{grid-template-columns:1fr;text-align:center}
  .f-brand p{margin-left:auto;margin-right:auto}
  .f-brand .brand{justify-content:center}
  .f-bottom{justify-content:center;text-align:center}
}

/* mobile menu */
.mmenu{position:fixed;inset:0;background:var(--coal-deep);color:var(--text-hi);z-index:100;display:none;flex-direction:column;padding:24px var(--pad) 32px;overflow-y:auto}
.mmenu.open{display:flex}
.mmenu .close{align-self:flex-end;background:none;border:2px solid var(--signal);color:var(--signal);width:48px;height:48px;cursor:pointer;font-size:18px;flex-shrink:0;filter:brightness(1.2)}
.mmenu ul{list-style:none;margin:28px 0 32px}
.mmenu a{font-family:var(--display);font-size:clamp(26px,7.5vw,34px);text-transform:uppercase;text-decoration:none;display:block;padding:14px 0;border-bottom:1px solid var(--line-dark)}
.mmenu a:hover{color:var(--signal)}
.mmenu .btn{margin-top:auto;width:100%}

/* ---------- page header (subpages) ---------- */
.page-header{background:linear-gradient(180deg, var(--paper) 0%, var(--ice) 100%);border-bottom:2px solid var(--coal);text-align:center}
.page-header .wrap{padding-top:clamp(48px,7vw,84px);padding-bottom:clamp(44px,6vw,72px)}
.page-header .kicker{display:inline-block;font-family:var(--mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase;border:1.5px solid var(--signal-deep);color:var(--signal-deep);padding:7px 14px;margin-bottom:24px}
.page-header h1{font-family:var(--display);font-weight:400;text-transform:uppercase;line-height:.96;font-size:clamp(40px,6.2vw,88px)}
.page-header h1 .hollow{color:transparent;-webkit-text-stroke:2px var(--signal)}
.page-header .sub{font-size:clamp(16px,1.6vw,19px);color:var(--body-ink);max-width:62ch;margin:22px auto 0}

/* ---------- split content ---------- */
.split{background:var(--paper);border-bottom:2px solid var(--coal)}
.split.alt{background:var(--ice)}
.split .wrap{display:grid;grid-template-columns:1fr 1fr;gap:clamp(36px,5vw,72px);align-items:center}
.split.reverse .copy{order:2}
.split .copy .eyebrow{display:inline-block;font-family:var(--mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--signal-deep);border-bottom:2px solid var(--signal);padding-bottom:6px;margin-bottom:18px}
.split .copy h2{font-family:var(--display);font-size:clamp(30px,3.8vw,50px);line-height:1;text-transform:uppercase;margin-bottom:20px}
.split .copy p{color:var(--body-ink);font-size:16.5px;margin-bottom:16px}
.split .copy p:last-child{margin-bottom:0}
.split .copy p strong{color:var(--coal)}
.image-card{aspect-ratio:4/5;border:2px solid var(--coal);box-shadow:8px 8px 0 var(--coal);position:relative;overflow:hidden;background:var(--coal-soft)}
.image-card.g1{background:linear-gradient(150deg,var(--coal-soft),var(--coal-deep))}
.image-card.g2{background:linear-gradient(150deg,var(--signal-deep),#5c2a0a)}
.image-card.g3{background:linear-gradient(150deg,var(--coal-soft),var(--signal-deep))}
.image-card .label{position:absolute;left:24px;right:24px;bottom:24px;color:var(--text-hi);font-family:var(--display);font-size:clamp(22px,3vw,32px);line-height:1;text-transform:uppercase}
.image-card .label em{font-style:normal;color:var(--signal-pale)}
@media(max-width:900px){
  .split .wrap{grid-template-columns:1fr;gap:40px}
  .split.reverse .copy{order:0}
  .image-card{max-width:460px;margin:0 auto;width:100%}
}

/* ---------- insurers ---------- */
.insurers{background:var(--ice);border-bottom:2px solid var(--coal)}
.insurers .grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}
.insurers .cell{background:#FFFFFF;border:2px solid var(--coal);padding:26px 18px;text-align:center;font-family:var(--display);font-size:19px;text-transform:uppercase;color:var(--coal)}

/* ---------- contact ---------- */
.contact-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(32px,4vw,56px);align-items:start}
.info-card{background:#FFFFFF;color:var(--coal);border:2px solid var(--coal);padding:28px 26px;margin-bottom:16px}
.info-card .tag{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--signal-deep)}
.info-card h4{font-size:17px;font-weight:700;text-transform:uppercase;letter-spacing:.02em;margin:10px 0 6px}
.info-card p{color:var(--body-ink);font-size:14.5px;margin-bottom:12px}
.info-card a.big{font-family:var(--display);font-size:clamp(22px,3.4vw,30px);text-transform:uppercase;color:var(--coal);text-decoration:none;line-height:1.1;display:inline-block;overflow-wrap:anywhere}
.info-card a.big:hover{color:var(--signal-deep)}
.form-card{background:#FFFFFF;color:var(--coal);border:2px solid var(--coal);box-shadow:8px 8px 0 var(--coal);padding:clamp(24px,4vw,44px)}
.form-card .tag{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--signal-deep)}
.form-card h2{font-family:var(--display);font-size:clamp(28px,4vw,42px);text-transform:uppercase;line-height:1;margin:10px 0 8px}
.form-card .lead{color:var(--body-ink);font-size:15.5px;margin-bottom:26px}
@media(max-width:900px){.contact-grid{grid-template-columns:1fr}}

/* forms */
.field{margin-bottom:18px}
.field label{display:block;font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--coal);margin-bottom:8px}
.field label .req{color:var(--signal-deep)}
.field input,.field select,.field textarea{width:100%;padding:13px 14px;border:1.5px solid var(--line);background:var(--paper);font-family:var(--body);font-size:16px;color:var(--coal);transition:border-color .15s ease,box-shadow .15s ease}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--signal-deep);box-shadow:0 0 0 3px var(--signal-pale)}
.field textarea{resize:vertical;min-height:110px}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:540px){.frow{grid-template-columns:1fr;gap:0}}

.chip-row{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:6px}
.chip{position:relative;cursor:pointer}
.chip input{position:absolute;opacity:0;width:0;height:0;pointer-events:none}
.chip span{display:inline-block;padding:9px 15px;border:1.5px solid var(--line);font-size:13.5px;font-weight:500;color:var(--body-ink);transition:all .15s ease}
.chip input:checked+span{background:var(--coal);color:var(--paper);border-color:var(--coal)}
.chip:hover span{border-color:var(--coal)}

.option-cards{display:flex;flex-direction:column;gap:10px}
.option-card{display:block;cursor:pointer;position:relative}
.option-card input{position:absolute;opacity:0;width:0;height:0;pointer-events:none}
.option-card .obody{display:block;padding:13px 16px 13px 42px;border:1.5px solid var(--line);background:var(--paper);position:relative;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}
.option-card .obody::before{content:'';position:absolute;left:15px;top:50%;transform:translateY(-50%);width:16px;height:16px;border-radius:50%;border:2px solid var(--line);background:#fff;transition:all .15s ease}
.option-card .otitle{display:block;font-size:14.5px;font-weight:700;color:var(--coal);text-transform:uppercase;letter-spacing:.02em}
.option-card .odesc{display:block;font-size:12.5px;color:var(--steel);margin-top:2px}
.option-card:hover .obody{border-color:var(--coal)}
.option-card input:focus-visible+.obody{outline:none;border-color:var(--signal-deep);box-shadow:0 0 0 3px var(--signal-pale)}
.option-card input:checked+.obody{border-color:var(--coal);box-shadow:4px 4px 0 var(--coal)}
.option-card input:checked+.obody::before{border-color:var(--coal);background:var(--coal);box-shadow:inset 0 0 0 3px #fff}
.option-card.severe input:checked+.obody{border-color:var(--signal-deep)}
.option-card.severe input:checked+.obody::before{border-color:var(--signal-deep);background:var(--signal-deep);box-shadow:inset 0 0 0 3px var(--signal-pale)}

.consent{font-size:12px;color:var(--steel);margin-top:14px;text-align:center;line-height:1.5}
.consent a{color:var(--coal);text-decoration:underline}
.form-btn{width:100%;margin-top:4px}

.success{text-align:center;padding:20px 0;display:none}
.success .check{width:72px;height:72px;border:2px solid var(--coal);background:var(--signal);color:var(--coal-deep);display:flex;align-items:center;justify-content:center;margin:0 auto 20px;font-size:34px}
.success h3{font-family:var(--display);font-size:28px;text-transform:uppercase;margin-bottom:10px}
.success p{color:var(--body-ink);font-size:15.5px;max-width:380px;margin:0 auto}

/* ---------- legal ---------- */
.legal{background:var(--paper)}
.legal .wrap{max-width:760px}
.legal h2{font-size:19px;font-weight:700;text-transform:uppercase;letter-spacing:.02em;border-top:3px solid var(--signal);padding-top:16px;margin:34px 0 12px}
.legal h2:first-child{margin-top:0}
.legal p{color:var(--body-ink);font-size:16px;line-height:1.75;margin-bottom:18px}
.legal p strong{color:var(--coal)}
.legal a{color:var(--signal-deep);text-decoration:underline}

/* subpage extras */
.steps.four{grid-template-columns:repeat(4,1fr)}
.gu-grid.four{grid-template-columns:repeat(2,1fr)}
@media(max-width:900px){
  .steps.four{grid-template-columns:1fr}
  .gu-grid.four{grid-template-columns:1fr}
}

/* A2P: hide chat widget when lead overlay open */
body.lead-modal-open chat-widget,
body.lead-modal-open [class*="chat-widget"],
body.lead-modal-open iframe[src*="leadconnector"]{display:none !important;visibility:hidden !important}

/* ---------- mobile refinements ---------- */
@media(max-width:600px){
  .hero h1{font-size:clamp(34px,9vw,64px)}
  .hero-proof{flex-wrap:wrap;justify-content:center;text-align:center}
  .hero-cta .btn{flex:1 1 100%}
  .ro-stamp{width:76px;height:76px;font-size:8px;right:8px;padding:8px}
  .ro-total .amt{font-size:34px}
  .sec-head h2{font-size:clamp(28px,8vw,44px)}
}
