/* ============ AXIS AIR & MECHANICAL — engineered light-industrial (UNIT01 system) ============ */
:root{
  --disp:'Bebas Neue',sans-serif;
  --body:'Archivo',system-ui,sans-serif;
  --mono:'Space Mono',ui-monospace,monospace;
  --paper:#eceae2;      /* concrete paper */
  --paper2:#e5e2d8;     /* slightly deeper band */
  --panel:#f6f4ee;      /* light card */
  --ink:#15170f;        /* near-black warm graphite (text) */
  --ink2:#3b3d33;
  --muted:#6d6c60;      /* mono label */
  --hair:#d3d0c4;       /* hairline on paper */
  --line:#c6c2b4;       /* stronger rule */
  --hi:#c1922f;         /* LMB brand gold accent */
  --hi-d:#e63d12;
  --maxw:1560px;
  --pad:clamp(20px,4.5vw,72px);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:var(--body);background:var(--paper);color:var(--ink);line-height:1.5;overflow-x:hidden;font-weight:400;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
.wrap{max-width:var(--maxw);margin:0 auto;padding-left:var(--pad);padding-right:var(--pad);width:100%}
.mono-s{font-family:var(--mono);font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-weight:400;font-feature-settings:"zero" 1}
.hg{color:var(--hi)!important}

h1,h2,h3,h4{font-weight:400;line-height:.92}
h1{font-family:var(--disp);font-size:clamp(3.4rem,8.2vw,7.6rem);letter-spacing:.005em;text-transform:uppercase}
h2{font-family:var(--disp);font-size:clamp(2.2rem,4.6vw,4rem);letter-spacing:.01em;text-transform:uppercase;line-height:.94}
h3{font-family:var(--disp);font-size:clamp(1.5rem,2.2vw,2.1rem);letter-spacing:.015em;text-transform:uppercase;line-height:1}
.dot{display:inline-block;width:7px;height:7px;background:var(--hi);border-radius:1px;flex:0 0 auto;animation:blink 2.4s steps(1) infinite}
@keyframes blink{0%,72%{opacity:1}73%,100%{opacity:.25}}

/* modular vertical grid overlay */
.modgrid{position:relative}
.modgrid > .wrap{position:relative}
.modgrid > .wrap::before{content:'';position:absolute;top:0;bottom:0;left:var(--pad);right:var(--pad);pointer-events:none;z-index:0;
  background:repeating-linear-gradient(90deg,var(--hair) 0 1px,transparent 1px calc(100%/6));opacity:.55}
.modgrid > .wrap > *{position:relative;z-index:1}

/* ---------- buttons ---------- */
.btn{display:inline-flex;align-items:center;gap:.55em;font-family:var(--mono);font-weight:700;font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;padding:.82em 1.25em;border:1px solid var(--ink);transition:.18s ease;white-space:nowrap;cursor:pointer}
.btn i{font-style:normal;transition:transform .18s ease}
.btn:hover i{transform:translateX(4px)}
.btn-hi{background:var(--hi);border-color:var(--hi);color:#1a0a04}
.btn-hi:hover{background:var(--hi-d);border-color:var(--hi-d)}
.btn-ghost{background:transparent;color:var(--ink)}
.btn-ghost:hover{background:var(--ink);color:var(--paper)}
.btn.lg{padding:1em 1.5em;font-size:.85rem}
.btn.wide{width:100%;justify-content:center}
.chip{display:inline-flex;align-items:center;gap:.5em;font-family:var(--mono);font-weight:700;font-size:.72rem;letter-spacing:.05em;text-transform:uppercase;color:var(--ink);border-bottom:2px solid var(--hi);padding-bottom:2px}
.chip i{font-style:normal;color:var(--hi);transition:transform .18s ease}
.chip:hover i{transform:translateX(4px)}

/* ---------- status bar ---------- */
.statusbar{background:var(--paper2);border-bottom:1px solid var(--hair)}
.sb-row{display:flex;align-items:center;justify-content:space-between;gap:14px;height:34px;font-family:var(--mono);font-size:.68rem;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}
.sb-left{display:flex;align-items:center;gap:9px;min-width:0;overflow:hidden;white-space:nowrap}
.sb-sep{color:var(--line)}
.sb-right{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* ---------- header ---------- */
.hdr{position:sticky;top:0;z-index:60;background:rgba(236,234,226,.86);backdrop-filter:blur(10px);border-bottom:1px solid var(--hair);transition:box-shadow .2s}
.hdr.stuck{box-shadow:0 1px 0 var(--line),0 10px 30px -22px rgba(0,0,0,.4)}
.hdr-row{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;height:70px;gap:18px}
.nav{display:flex;gap:8px;justify-self:start}
.nav a{font-family:var(--mono);font-size:.72rem;letter-spacing:.05em;text-transform:uppercase;padding:.5em .75em;border:1px solid var(--hair);color:var(--ink2);transition:.16s;white-space:nowrap}
.nav a:hover{border-color:var(--ink);color:var(--ink)}
.logo{justify-self:center;display:flex;align-items:center;gap:.5em}
.logo .mark,.ft-brand .mark{width:15px;height:15px;flex:0 0 auto;background:
  linear-gradient(var(--hi),var(--hi)) 0 0/7px 7px no-repeat,
  linear-gradient(var(--hi),var(--hi)) 100% 100%/7px 7px no-repeat,var(--ink)}
.logo-t{font-family:var(--disp);font-size:1.6rem;letter-spacing:.03em;line-height:.8;display:flex;flex-direction:column;color:var(--ink)}
.logo-t em{font-family:var(--mono);font-style:normal;font-size:.5rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-top:2px}
.hright{display:flex;align-items:center;gap:14px;justify-self:end}
.tel{font-family:var(--mono);font-weight:700;font-size:.82rem;letter-spacing:.02em;color:var(--ink);white-space:nowrap}
.tel:hover{color:var(--hi)}
.burger{display:none;flex-direction:column;gap:5px;width:40px;height:34px;border:1px solid var(--hair);background:transparent;align-items:center;justify-content:center;cursor:pointer}
.burger span{width:18px;height:2px;background:var(--ink)}

/* ---------- mobile menu ---------- */
.mnav{position:fixed;inset:0;z-index:80;background:var(--paper);transform:translateY(-100%);transition:transform .4s cubic-bezier(.7,0,.2,1);display:flex;flex-direction:column;padding:0 var(--pad) calc(var(--pad) + env(safe-area-inset-bottom));overflow-y:auto}
.mnav.on{transform:none}
.mnav-top{display:flex;align-items:center;justify-content:space-between;height:70px;border-bottom:1px solid var(--hair)}
.mnav-x{width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--hair);background:transparent;font-size:1rem;cursor:pointer;color:var(--ink)}
.mnav-links{display:flex;flex-direction:column;padding:24px 0;flex:1;justify-content:center;gap:6px}
.mnav-links a{font-family:var(--disp);font-size:clamp(2rem,9vw,3rem);letter-spacing:.02em;text-transform:uppercase;display:flex;align-items:baseline;gap:.5em;padding:.14em 0;border-bottom:1px solid var(--hair)}
.mm-n{font-family:var(--mono);font-size:.8rem;color:var(--hi);letter-spacing:0}
.mnav-foot{padding-top:18px;display:flex;flex-direction:column;gap:12px}

/* ---------- hero (full-bleed) ---------- */
.hero{position:relative;min-height:clamp(600px,90vh,880px);display:flex;overflow:hidden;background:var(--paper2)}
.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:60% 50%}
.hero-scrim{position:absolute;inset:0;background:linear-gradient(102deg,rgba(236,234,226,.96) 0%,rgba(236,234,226,.9) 26%,rgba(236,234,226,.55) 50%,rgba(236,234,226,.12) 74%,rgba(236,234,226,.04) 100%),linear-gradient(0deg,rgba(236,234,226,.6) 0%,rgba(236,234,226,0) 22%)}
.hero-lines{position:absolute;top:0;bottom:0;left:var(--pad);right:var(--pad);pointer-events:none;background:repeating-linear-gradient(90deg,rgba(80,76,64,.14) 0 1px,transparent 1px calc(100%/6))}
.hero-inner{position:relative;z-index:2;display:flex;flex-direction:column;justify-content:space-between;padding-top:clamp(24px,3vw,40px);padding-bottom:0;width:100%}
.hero-hud{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}
.hero-tag{display:flex;flex-wrap:wrap;align-items:center;gap:.55em}
.tsep{color:var(--line)}
.hero-online{display:flex;align-items:center;gap:.5em;color:var(--ink2)}
.hero-main{padding:clamp(30px,5vh,72px) 0}
.hero h1{margin-bottom:.32em}
.hero-sub{font-size:clamp(1rem,1.28vw,1.2rem);max-width:32em;color:var(--ink2);line-height:1.5}
.hero-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:clamp(22px,2.6vw,32px)}
.hero-bar{display:flex;align-items:center;justify-content:space-between;gap:20px 40px;flex-wrap:wrap;padding:16px 0;border-top:1px solid var(--line)}
.hero-cap{display:flex;align-items:center;gap:.5em;color:var(--ink2)}
.hero-spec{display:flex;flex-wrap:wrap;gap:clamp(18px,2.4vw,40px)}
.hero-spec li{display:flex;flex-direction:column;gap:1px}
.hero-spec b{font-family:var(--disp);font-weight:400;font-size:1.5rem;letter-spacing:.02em;color:var(--ink);line-height:1}
.hero-spec span{font-size:.62rem}

/* ---------- readout ---------- */
.readout{background:var(--panel);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.readout .ro-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.ro{padding:clamp(26px,3vw,44px) clamp(14px,2vw,32px);border-left:1px solid var(--hair)}
.ro:first-child{border-left:0;padding-left:0}
.ro-n{font-family:var(--disp);font-size:clamp(2.6rem,4.6vw,4.2rem);line-height:.85;letter-spacing:.01em;color:var(--ink)}
.ro-n span{font-family:var(--mono);font-size:.9rem;color:var(--hi);vertical-align:super;margin-left:2px}
.ro-k{color:var(--muted);margin-top:10px}

/* ---------- section heads ---------- */
.sec-head{max-width:none;margin-bottom:clamp(30px,3.6vw,56px)}
.sec-lbl{display:flex;align-items:center;gap:.55em;margin-bottom:18px}
.sec-intro{font-size:clamp(1rem,1.15vw,1.12rem);max-width:34em;color:var(--ink2);margin-top:16px}

/* ---------- services ---------- */
.svcs{padding:clamp(52px,6.5vw,104px) 0;border-top:1px solid var(--hair);background:var(--paper)}
.svc-index{border-top:1px solid var(--line)}
.svc-row{display:grid;grid-template-columns:auto 1.5fr 1fr .9fr;gap:clamp(18px,2.6vw,44px);align-items:center;padding:clamp(24px,3vw,42px) 0;border-bottom:1px solid var(--line)}
.svc-ix{align-self:start;padding-top:.4em;color:var(--hi);font-weight:700}
.svc-main h3{margin-bottom:.42em}
.svc-main p{font-size:.97rem;color:var(--ink2);max-width:34em;margin-bottom:1.1em}
.svc-meta{display:flex;flex-direction:column;gap:12px}
.svc-meta .mv{display:flex;justify-content:space-between;gap:12px;border-bottom:1px dotted var(--line);padding-bottom:8px}
.svc-meta .k{color:var(--muted)}
.svc-meta .v{color:var(--ink);font-weight:700}
.svc-pic{position:relative;aspect-ratio:4/3;overflow:hidden;border:1px solid var(--line)}
.svc-pic img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.svc-row:hover .svc-pic img{transform:scale(1.04)}
.pic-tag{position:absolute;top:8px;left:8px;background:var(--paper);border:1px solid var(--line);padding:2px 6px;font-size:.6rem;color:var(--ink)}

/* ---------- ticker ---------- */
.ticker{background:var(--hi);color:#1a0a04;overflow:hidden;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);padding:12px 0}
.ticker-track{display:flex;width:max-content;animation:tick 26s linear infinite}
.ticker-track span{font-family:var(--disp);font-size:1.5rem;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;padding-right:1rem}
@keyframes tick{to{transform:translateX(-50%)}}

/* ---------- method ---------- */
.method{padding:clamp(52px,6.5vw,104px) 0;background:var(--paper2)}
.method-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(30px,4vw,72px);align-items:start}
.method-head h2{margin:18px 0}
.method-head .btn{margin-top:20px}
.steps{list-style:none;border-top:1px solid var(--line)}
.steps li{display:grid;grid-template-columns:auto 1fr;gap:clamp(16px,2vw,30px);padding:clamp(20px,2.4vw,30px) 0;border-bottom:1px solid var(--line)}
.st-n{font-family:var(--disp);font-size:clamp(2rem,3vw,2.8rem);color:var(--hi);letter-spacing:.02em;line-height:.8}
.st-b h3{margin-bottom:.4em}
.st-b p{font-size:.97rem;color:var(--ink2);max-width:36em}

/* ---------- diagnostics / guarantees ---------- */
.diag{padding:clamp(52px,6.5vw,104px) 0;background:var(--paper)}
.diag-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:clamp(28px,3.6vw,64px);align-items:center}
.diag-fig{position:relative;border:1px solid var(--line)}
.diag-fig img{width:100%;aspect-ratio:4/3.4;object-fit:cover}
.diag-fig figcaption{position:absolute;left:0;bottom:0;right:0;display:flex;align-items:center;gap:.5em;background:rgba(236,234,226,.92);border-top:1px solid var(--line);padding:8px 12px;font-size:.6rem;color:var(--ink)}
.diag-body h2{margin:16px 0 26px}
.promise{list-style:none;border-top:1px solid var(--line)}
.promise li{display:grid;grid-template-columns:auto 1fr;gap:clamp(14px,1.8vw,26px);padding:20px 0;border-bottom:1px solid var(--line)}
.pn{width:30px;height:30px;flex:0 0 auto;display:grid;place-items:center;border:1px solid var(--ink);color:var(--ink);font-weight:700;font-size:.85rem}
.promise h3{font-size:1.25rem;margin-bottom:.3em}
.promise p{font-size:.95rem;color:var(--ink2);max-width:40em}

/* ---------- transmissions ---------- */
.trans{padding:clamp(52px,6.5vw,104px) 0;background:var(--paper2);border-top:1px solid var(--hair)}
.trans-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap;margin-bottom:clamp(26px,3vw,44px)}
.rating-badge{background:var(--panel);border:1px solid var(--line);padding:8px 12px;color:var(--ink2)}
.rating-badge b{color:var(--hi);font-family:var(--disp);font-size:1.05rem;letter-spacing:.03em}
.trans-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:clamp(16px,2vw,26px);align-items:start}
.tq{background:var(--panel);border:1px solid var(--line);padding:clamp(22px,2.4vw,34px);display:flex;flex-direction:column;justify-content:space-between;min-height:100%}
.tq p{font-family:var(--body);font-weight:500;font-size:1.02rem;line-height:1.5;margin-bottom:1.4em}
.tq-lead p{font-size:clamp(1.15rem,1.7vw,1.55rem);line-height:1.4;font-weight:600}
.tq footer{color:var(--muted)}
.tlog{color:var(--line)}

/* ---------- coverage ---------- */
.coverage{padding:clamp(52px,6.5vw,104px) 0;background:var(--paper)}
.cov-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,3.6vw,64px);align-items:center}
.cov-body h2{margin:16px 0 18px}
.cov-list{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:0 clamp(16px,2vw,30px);margin:24px 0 18px;border-top:1px solid var(--line)}
.cov-list li{display:flex;align-items:center;gap:.7em;padding:12px 0;border-bottom:1px solid var(--hair);font-size:.9rem;color:var(--ink);letter-spacing:.02em;text-transform:none}
.cov-list .cc{color:var(--hi);font-weight:700;font-size:.72rem}
.cov-note{color:var(--muted)}
.cov-fig{position:relative;border:1px solid var(--line)}
.cov-fig img{width:100%;aspect-ratio:5/4;object-fit:cover}
.cov-fig figcaption{position:absolute;left:0;bottom:0;right:0;display:flex;align-items:center;gap:.5em;background:rgba(236,234,226,.92);border-top:1px solid var(--line);padding:8px 12px;font-size:.6rem;color:var(--ink)}

/* ---------- end cta ---------- */
.endcta{padding:clamp(56px,7vw,120px) 0;background:var(--paper2);border-top:1px solid var(--hair)}
.endcta-in{text-align:center;max-width:60ch;margin:0 auto;display:flex;flex-direction:column;align-items:center}
.ec-tag{display:flex;flex-wrap:wrap;justify-content:center;gap:.5em;margin-bottom:24px}
.endcta h2{font-size:clamp(2.6rem,6vw,5.2rem)}
.endcta p{font-size:clamp(1rem,1.2vw,1.15rem);color:var(--ink2);margin:20px 0 4px;max-width:44ch}
.endcta .hero-cta{justify-content:center}
.ec-spec{display:flex;flex-wrap:wrap;justify-content:center;gap:.55em;margin-top:26px;color:var(--muted)}

/* ---------- footer ---------- */
.ft{background:var(--paper);border-top:1px solid var(--line);padding:clamp(40px,4.5vw,68px) 0 26px}
.ft-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:clamp(24px,3vw,48px)}
.ft-brand .logo-t{flex-direction:row;align-items:center;gap:.5em;font-size:1.7rem}
.ft-brand .logo-t em{margin-top:0}
.ft-brand p{margin-top:16px;max-width:30em;color:var(--muted)}
.ft-col{display:flex;flex-direction:column;gap:10px}
.ft-col h4{margin-bottom:6px;color:var(--muted);letter-spacing:.1em}
.ft-col a{font-size:.95rem;color:var(--ink2)}
.ft-col a:hover{color:var(--hi)}
.ft-plain{color:var(--muted);text-transform:none;letter-spacing:.02em}
.ft-base{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-top:clamp(30px,3.5vw,52px);padding-top:20px;border-top:1px solid var(--hair);color:var(--muted)}
.ft-base a{color:var(--ink);border-bottom:1px solid var(--hi)}

/* ---------- callbar ---------- */
.callbar{position:fixed;left:0;right:0;bottom:0;z-index:70;display:none;background:var(--ink);color:var(--paper);padding:9px 14px calc(9px + env(safe-area-inset-bottom));gap:10px;align-items:center;border-top:2px solid var(--hi)}
.cb-call{display:flex;flex-direction:column;line-height:1.1;flex:0 0 auto}
.cb-call b{font-family:var(--disp);font-size:1.15rem;letter-spacing:.03em}
.cb-call .mono-s{color:rgba(240,238,230,.7)}
.cb-cta{flex:1;text-align:center;display:inline-flex;align-items:center;justify-content:center;gap:.45em;font-family:var(--mono);font-weight:700;font-size:.8rem;letter-spacing:.05em;text-transform:uppercase;padding:.85em 1em;color:#1a0a04}
.cb-cta i{font-style:normal}

/* ---------- lead modal ---------- */
.lead{position:fixed;inset:0;z-index:100;display:none}
.lead.on{display:block}
body.lead-open{overflow:hidden}
.lead-scrim{position:absolute;inset:0;background:rgba(20,20,14,.55);backdrop-filter:blur(3px)}
.lead-card{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:min(560px,94vw);max-height:92vh;overflow:auto;background:var(--paper);border:1px solid var(--ink);padding:clamp(22px,3vw,38px)}
.lead-x{position:absolute;top:12px;right:12px;width:36px;height:36px;border:1px solid var(--hair);background:transparent;cursor:pointer;font-size:1rem;color:var(--ink)}
.lead-tag{display:flex;align-items:center;gap:.5em;margin-bottom:14px}
.lead-card h3{font-size:clamp(1.8rem,3vw,2.4rem);margin-bottom:.3em}
.lead-p{color:var(--ink2);font-size:.98rem;margin-bottom:20px}
.lead-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.lf{display:flex;flex-direction:column;gap:6px}
.lf-full{grid-column:1/-1}
.lf label{font-family:var(--mono);font-size:.64rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.lf input,.lf select,.lf textarea{font-family:var(--body);font-size:.95rem;padding:.7em .8em;border:1px solid var(--line);background:var(--panel);color:var(--ink);width:100%}
.lf input:focus,.lf select:focus,.lf textarea:focus{outline:2px solid var(--hi);outline-offset:-2px;border-color:var(--hi)}
.lead-form .btn{grid-column:1/-1;margin-top:2px}
.lead-fine{grid-column:1/-1;text-align:center;color:var(--muted)}
.lead-ok{display:none;text-align:center;padding:20px 0}
.lead-ok .ok-mark{width:56px;height:56px;margin:0 auto 16px;display:grid;place-items:center;background:var(--hi);color:#1a0a04;font-size:1.6rem;border-radius:2px}
.lead-ok h3{font-size:1.8rem;margin-bottom:.4em}
.lead-ok p{color:var(--ink2)}
.lead-ok a{color:var(--hi);font-weight:700}

/* ---------- reveal ---------- */
/* engineered entrance motion — crisp rise + tight ease, gated on html.js */
.rv{opacity:0;transform:translateY(28px)}
html.js .rv{transition:opacity .62s cubic-bezier(.16,.84,.3,1),transform .66s cubic-bezier(.16,.84,.3,1)}
.rv.in{opacity:1;transform:none}
html:not(.js) .rv{opacity:1;transform:none}

/* heading clip/mask rise — text rises from behind overflow:hidden */
.rv-h{overflow:hidden;padding-bottom:.06em}
.rv-h > *{display:block;opacity:0;transform:translateY(115%)}
html.js .rv-h > *{transition:opacity .5s ease,transform .72s cubic-bezier(.19,.9,.24,1)}
.rv-h.in > *{opacity:1;transform:none}
html:not(.js) .rv-h > *{opacity:1;transform:none}

/* stagger — children ripple in on a tight cadence */
html.js .rv-stg > .rv{transition-delay:0ms}
html.js .rv-stg > .rv:nth-child(2){transition-delay:70ms}
html.js .rv-stg > .rv:nth-child(3){transition-delay:140ms}
html.js .rv-stg > .rv:nth-child(4){transition-delay:210ms}
html.js .rv-stg > .rv:nth-child(5){transition-delay:280ms}
html.js .rv-stg > .rv:nth-child(6){transition-delay:350ms}
html.js .rv-stg > .rv:nth-child(7){transition-delay:420ms}
html.js .rv-stg > .rv:nth-child(8){transition-delay:490ms}
html.js .rv-stg > .rv:nth-child(9){transition-delay:560ms}
html.js .rv-stg > .rv:nth-child(10){transition-delay:630ms}
html.js .rv-stg > .rv:nth-child(11){transition-delay:700ms}
html.js .rv-stg > .rv:nth-child(12){transition-delay:770ms}

/* hero on-load — staggered rise/fade of HUD tag → h1 → sub → CTAs */
html.js .hero-lb{opacity:0;transform:translateY(22px)}
html.js .hero.hero-go .hero-lb{opacity:1;transform:none;transition:opacity .7s cubic-bezier(.16,.84,.3,1),transform .78s cubic-bezier(.16,.84,.3,1)}
html.js .hero.hero-go .hero-lb.d1{transition-delay:.06s}
html.js .hero.hero-go .hero-lb.d2{transition-delay:.16s}
html.js .hero.hero-go .hero-lb.d3{transition-delay:.28s}
html.js .hero.hero-go .hero-lb.d4{transition-delay:.4s}
html.js .hero.hero-go .hero-lb.d5{transition-delay:.52s}

@media (prefers-reduced-motion:reduce){
  .rv,.rv-h > *,.hero-lb{transition:none!important}
  .rv,.rv-h > *{opacity:1!important;transform:none!important}
  html.js .hero-lb{opacity:1!important;transform:none!important}
  .ticker-track,.dot{animation:none!important}
}

/* ============ RESPONSIVE ============ */
@media (max-width:1080px){
  .method-grid{grid-template-columns:1fr;gap:30px}
  .trans-grid{grid-template-columns:1fr 1fr}
  .tq-lead{grid-column:1/-1}
}
@media (max-width:960px){
  .nav{display:none}
  /* .nav is display:none here, so a 3-track grid left an empty trailing track +
     18px gap that pushed .hright (and the burger) 18px off the right gutter.
     Two tracks = logo left, burger flush to the wrap gutter. */
  .hdr-row{grid-template-columns:1fr auto}
  .logo{justify-self:start}
  .tel{display:none}
  .hright .btn-hi{display:none}
  .burger{display:flex}
  /* close button matches the burger box exactly and stays in the mnav-top row;
     app.js aligns that row onto the header row so there is no open/close jump */
  .mnav-x{width:40px;height:34px}
  .callbar{display:flex}
  .modgrid > .wrap::before{background:repeating-linear-gradient(90deg,var(--hair) 0 1px,transparent 1px calc(100%/4));opacity:.4}
  .svc-row{grid-template-columns:auto 1fr;grid-template-areas:"ix main" "meta meta" "pic pic";gap:14px 16px}
  .svc-ix{grid-area:ix}.svc-main{grid-area:main}
  .svc-meta{grid-area:meta;flex-direction:row;flex-wrap:wrap;gap:10px 26px}
  .svc-meta .mv{border-bottom:0;padding-bottom:0;flex-direction:column;gap:2px;justify-content:flex-start}
  .svc-pic{grid-area:pic;aspect-ratio:16/8}
  .diag-grid,.cov-grid{grid-template-columns:1fr;gap:26px}
  .diag-fig{order:-1}
  .cov-fig{order:-1}
  .ft-grid{grid-template-columns:1fr 1fr}
  .ft-brand{grid-column:1/-1}
}
@media (max-width:620px){
  .readout .ro-grid{grid-template-columns:1fr 1fr}
  .ro{border-left:0;border-top:1px solid var(--hair);padding:22px 0}
  .ro:nth-child(odd){padding-right:14px}
  .ro:nth-child(even){padding-left:14px;border-left:1px solid var(--hair)}
  .ro:nth-child(1),.ro:nth-child(2){border-top:0}
  .trans-grid{grid-template-columns:1fr}
  .sb-hide{display:none}
  .sb-right{display:none}
  .cov-list{grid-template-columns:1fr}
  .lead-form{grid-template-columns:1fr}
  .hero{min-height:clamp(560px,88vh,760px)}
  .hero-bg{object-position:64% 42%}
  .hero-scrim{background:linear-gradient(180deg,rgba(236,234,226,.95) 0%,rgba(236,234,226,.82) 30%,rgba(236,234,226,.42) 58%,rgba(236,234,226,.72) 100%)}
  .hero-hud{gap:8px}
  .hero-bar{gap:12px 24px}
  .hero-spec{gap:14px 22px}
  .hero-spec li{flex:0 0 calc(50% - 11px)}
  .ft-base{flex-direction:column;gap:6px}
}
@media (max-width:420px){
  .ft-grid{grid-template-columns:1fr}
}

/* ---------- capabilities (icon boxes) ---------- */
.caps{padding:clamp(52px,6.5vw,104px) 0;background:var(--paper);border-top:1px solid var(--hair)}
.caps-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.cap{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:clamp(22px,2.6vw,38px)}
.cap-i{display:inline-grid;place-items:center;width:46px;height:46px;border:1px solid var(--line);margin-bottom:20px}
.cap-i svg{width:24px;height:24px;fill:none;stroke:var(--ink);stroke-width:1.5;stroke-linejoin:round;stroke-linecap:round}
.cap-n{color:var(--hi);font-weight:700;margin-bottom:8px}
.cap h3{margin-bottom:.5em}
.cap p{font-size:.96rem;color:var(--ink2);max-width:34ch}

/* ---------- field feed (video cards) ---------- */
.feed{padding:clamp(52px,6.5vw,104px) 0;background:var(--paper2)}
.feed .idx-top{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap}
.feed-head{margin-bottom:0}
.feed-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,1.6vw,22px);margin-top:clamp(28px,3.4vw,48px)}
.vcard{position:relative;border:1px solid var(--line);overflow:hidden;background:var(--ink)}
.vcard video{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}
.vcard figcaption{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;gap:.5em;background:rgba(236,234,226,.94);border-top:1px solid var(--line);padding:8px 12px;font-size:.62rem;color:var(--ink)}

/* ---------- field log (image cards) ---------- */
.log{padding:clamp(52px,6.5vw,104px) 0;background:var(--paper);border-top:1px solid var(--hair)}
.log-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:clamp(14px,1.6vw,22px)}
.icard{position:relative;grid-column:span 2;overflow:hidden;border:1px solid var(--line)}
.icard-lg{grid-column:span 6}
.icard img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/3;transition:transform .5s ease}
.icard-lg img{aspect-ratio:24/9}
.icard:hover img{transform:scale(1.04)}
.icard figcaption{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;gap:.6em;background:rgba(236,234,226,.94);border-top:1px solid var(--line);padding:8px 12px;font-size:.62rem;color:var(--ink)}
.icard .lc{background:var(--hi);color:#1a0a04;padding:2px 6px;font-weight:700;font-size:.58rem;flex:0 0 auto}

@media (max-width:900px){
  .caps-grid{grid-template-columns:repeat(2,1fr)}
  .feed-grid{grid-template-columns:1fr 1fr}
  .icard{grid-column:span 3}
  .icard-lg{grid-column:span 6}
}
@media (max-width:600px){
  .caps-grid{grid-template-columns:1fr}
  .feed-grid{grid-template-columns:1fr}
  .log-grid{grid-template-columns:1fr}
  .icard,.icard-lg{grid-column:span 1}
  .icard-lg img{aspect-ratio:16/9}
}

/* ============ INNER PAGES (services / about / areas / contact) ============ */

/* ---------- coverage sectors (areas.html) ---------- */
.cov-sectors{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.sector{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:clamp(20px,2.2vw,32px);display:flex;flex-direction:column;gap:8px;transition:background .16s ease,box-shadow .16s ease}
.sector:hover{background:var(--panel);box-shadow:inset 3px 0 0 var(--hi)}
.sector .sec-code{color:var(--hi);font-weight:700}
.sector h3{color:var(--ink)}
.sector p{color:var(--muted)}
@media (max-width:1080px){.cov-sectors{grid-template-columns:repeat(3,1fr)}}
@media (max-width:720px){.cov-sectors{grid-template-columns:repeat(2,1fr)}}
@media (max-width:460px){.cov-sectors{grid-template-columns:1fr}}

/* ---------- dispatch / contact (contact.html) ---------- */
.dispatch{padding:clamp(52px,6.5vw,104px) 0;background:var(--paper);border-top:1px solid var(--hair)}
.disp-grid{display:grid;grid-template-columns:1fr 1.02fr;gap:clamp(30px,4vw,72px);align-items:start}
.disp-info h2{margin:16px 0 18px}
.disp-lines{list-style:none;border-top:1px solid var(--line);margin-top:8px}
.disp-lines li{display:grid;grid-template-columns:auto 1fr;gap:clamp(14px,1.8vw,26px);padding:22px 0;border-bottom:1px solid var(--line)}
.dl-n{width:30px;height:30px;flex:0 0 auto;display:grid;place-items:center;border:1px solid var(--ink);color:var(--ink);font-weight:700;font-size:.85rem}
.disp-lines h3{font-size:1.25rem;margin-bottom:.35em}
.dl-big{display:inline-block;font-family:var(--disp);font-size:clamp(1.9rem,3vw,2.6rem);letter-spacing:.02em;line-height:.9;color:var(--ink);margin-bottom:8px}
.dl-big:hover{color:var(--hi)}
.dl-txt{font-size:.98rem;color:var(--ink2);max-width:36em;margin-bottom:8px}
.dl-link{color:var(--ink);border-bottom:1px solid var(--hi)}
.dl-link:hover{color:var(--hi)}
.disp-form-card{background:var(--panel);border:1px solid var(--ink);padding:clamp(22px,3vw,38px)}
.disp-form-card .lead-tag{margin-bottom:14px}
.disp-h{font-size:clamp(1.8rem,3vw,2.4rem);margin-bottom:.3em}
.disp-form-card .lead-form input,.disp-form-card .lead-form select,.disp-form-card .lead-form textarea{background:var(--paper)}
@media (max-width:1080px){.disp-grid{grid-template-columns:1fr;gap:34px}}

/* ============ HOME — REAL-BUSINESS SECTIONS ============ */

/* ---------- systems we install (spec catalog) ---------- */
.catalog{padding:clamp(52px,6.5vw,104px) 0;background:var(--paper);border-top:1px solid var(--hair)}
.cat-index{border-top:1px solid var(--line)}
.cat-hrow{display:grid;grid-template-columns:auto 1.7fr .8fr 1fr 1fr;gap:clamp(14px,2vw,32px);padding:12px 0;border-bottom:1px solid var(--line);color:var(--muted);font-size:.62rem;letter-spacing:.08em}
.cat-hrow span:first-child{grid-column:1/3}
.cat-row{display:grid;grid-template-columns:auto 1.7fr .8fr 1fr 1fr;gap:clamp(14px,2vw,32px);align-items:center;padding:clamp(22px,2.6vw,34px) 0;border-bottom:1px solid var(--line);transition:background .16s ease}
.cat-row:hover{background:var(--panel)}
.cat-ix{align-self:start;padding-top:.35em;color:var(--hi);font-weight:700}
.cat-tier{display:inline-block;color:var(--hi);font-weight:700;font-size:.62rem;margin-bottom:8px}
.cat-main h3{margin-bottom:.4em;overflow-wrap:break-word}
.cat-main p{font-size:.94rem;color:var(--ink2);max-width:38em}
.cat-cell{display:flex;flex-direction:column;gap:5px;border-left:1px solid var(--hair);padding-left:clamp(12px,1.4vw,20px)}
.cat-cell .cc-k{color:var(--muted);font-size:.6rem}
.cat-cell .cc-v{font-family:var(--mono);font-size:.82rem;font-weight:700;color:var(--ink);letter-spacing:.01em;overflow-wrap:break-word}
.cat-price{display:flex;flex-direction:column;align-items:flex-start;gap:4px;border-left:1px solid var(--hair);padding-left:clamp(12px,1.4vw,20px)}
.cp-from{color:var(--muted);font-size:.58rem;letter-spacing:.1em}
.cp-n{font-family:var(--disp);font-size:clamp(1.7rem,2.4vw,2.4rem);line-height:.85;letter-spacing:.01em;color:var(--ink);overflow-wrap:break-word}
.cp-n span{font-family:var(--mono);font-size:.7rem;font-weight:700;color:var(--hi);vertical-align:super;margin-left:1px}
.cat-price .chip{margin-top:8px}
.cat-note{margin-top:18px;color:var(--muted)}

@media (max-width:960px){
  .cat-hrow{display:none}
  .cat-row{grid-template-columns:auto 1fr;gap:6px 16px;align-items:start}
  .cat-ix{grid-row:1;grid-column:1}
  .cat-main{grid-row:1;grid-column:2}
  .cat-cell{grid-column:1/-1;border-left:0;padding-left:0;flex-direction:row;justify-content:space-between;align-items:baseline;gap:12px;border-bottom:1px dotted var(--line);padding-bottom:8px}
  .cat-cell:first-of-type{margin-top:10px;border-top:1px solid var(--hair);padding-top:10px}
  .cat-cell .cc-k{font-size:.62rem}
  .cat-price{grid-column:1/-1;flex-direction:row;align-items:center;flex-wrap:wrap;gap:6px 14px;border-left:0;padding-left:0;margin-top:6px}
  .cat-price .cp-n{font-size:1.8rem}
  .cat-price .chip{margin-top:0;margin-left:auto}
}
@media (max-width:420px){
  .cat-price .chip{margin-left:0;flex-basis:100%;margin-top:4px}
}

/* ---------- how we can help (symptom cards) ---------- */
.help{padding:clamp(52px,6.5vw,104px) 0;background:var(--paper2);border-top:1px solid var(--hair)}
.help-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.hcard{display:flex;flex-direction:column;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:clamp(22px,2.6vw,36px);background:var(--panel);transition:box-shadow .16s ease,background .16s ease}
.hcard:hover{box-shadow:inset 3px 0 0 var(--hi)}
.hc-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:22px}
.hc-n{color:var(--hi);font-weight:700}
.hc-stat{color:var(--muted);font-size:.62rem;border:1px solid var(--line);padding:2px 6px}
.hcard h3{margin-bottom:.5em}
.hcard p{font-size:.95rem;color:var(--ink2);margin-bottom:1.4em;flex:1}
.hc-go{display:inline-flex;align-items:center;gap:.5em;color:var(--ink);font-weight:700}
.hc-go i{font-style:normal;color:var(--hi);transition:transform .18s ease}
.hcard:hover .hc-go i{transform:translateX(4px)}

/* ---------- industries (spec-card matrix) ---------- */
.inds{padding:clamp(52px,6.5vw,104px) 0;background:var(--paper);border-top:1px solid var(--hair)}
.inds-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.ind{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:clamp(22px,2.6vw,38px)}
.ind-i{display:inline-grid;place-items:center;width:46px;height:46px;border:1px solid var(--line);margin-bottom:20px}
.ind-i svg{width:24px;height:24px;fill:none;stroke:var(--ink);stroke-width:1.5;stroke-linejoin:round;stroke-linecap:round}
.ind-n{color:var(--hi);font-weight:700;margin-bottom:8px}
.ind h3{margin-bottom:.5em}
.ind p{font-size:.95rem;color:var(--ink2);max-width:34ch}

/* ---------- brands (make wall) ---------- */
.brands{padding:clamp(52px,6.5vw,104px) 0;background:var(--paper2);border-top:1px solid var(--hair)}
.brands-in{display:grid;grid-template-columns:.9fr 1.35fr;gap:clamp(30px,4vw,72px);align-items:start}
.brands-head h2{margin:16px 0 18px}
.brands-spec{display:flex;flex-wrap:wrap;align-items:center;gap:.5em;margin-top:20px;color:var(--muted)}
.brand-wall{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.brand-wall li{display:flex;align-items:center;gap:.6em;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:clamp(16px,1.8vw,24px) clamp(14px,1.6vw,22px);font-family:var(--disp);font-size:clamp(1.5rem,2vw,1.9rem);letter-spacing:.02em;text-transform:uppercase;line-height:1;color:var(--ink);background:var(--panel);transition:background .16s ease,box-shadow .16s ease}
.brand-wall li:hover{box-shadow:inset 0 -3px 0 var(--hi)}
.bw-n{font-family:var(--mono);font-size:.62rem;font-weight:700;color:var(--hi);letter-spacing:0;flex:0 0 auto}

/* ---------- trucks & crew ---------- */
.crew{padding:clamp(52px,6.5vw,104px) 0;background:var(--paper);border-top:1px solid var(--hair)}
.crew-media{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,1.6vw,22px);margin-bottom:clamp(20px,2.4vw,32px)}
.cm{position:relative;border:1px solid var(--line);overflow:hidden}
.cm img{width:100%;height:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .5s ease}
.cm:hover img{transform:scale(1.04)}
.cm figcaption{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;gap:.5em;background:rgba(236,234,226,.94);border-top:1px solid var(--line);padding:8px 12px;font-size:.6rem;color:var(--ink)}
.crew-spec{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.crew-spec li{display:flex;flex-direction:column;gap:6px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:clamp(16px,1.8vw,24px)}
.crew-spec .cs-k{color:var(--hi);font-weight:700;font-size:.62rem}
.crew-spec .cs-v{color:var(--ink);font-size:.72rem;letter-spacing:.02em;text-transform:none}

/* ---------- coverage (grouped neighborhoods + local SEO) ---------- */
.cov-top{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,3.6vw,64px);align-items:center;margin-bottom:clamp(28px,3.4vw,48px)}
.cov-intro h2{margin:16px 0 18px}
.cov-sectors-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.cov-sec{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:clamp(20px,2.2vw,30px);transition:background .16s ease,box-shadow .16s ease}
.cov-sec:hover{background:var(--panel);box-shadow:inset 3px 0 0 var(--hi)}
.cov-sec-h{display:flex;align-items:center;gap:.6em;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--hair)}
.cov-sec-h .cc{color:var(--hi);font-weight:700;flex:0 0 auto}
.cov-sec-h h3{color:var(--ink)}
.cov-nb{list-style:none;display:flex;flex-direction:column;gap:8px}
.cov-nb li{font-size:.9rem;color:var(--ink2);letter-spacing:.01em}
.cov-nb li::before{content:'◦';color:var(--hi);margin-right:.5em;font-size:.8em}
.coverage .cov-note{margin:18px 0 clamp(30px,3.6vw,52px);color:var(--muted)}
.cov-seo{border-top:1px solid var(--line);padding-top:clamp(24px,2.8vw,40px)}
.seo-lbl{display:flex;align-items:center;gap:.55em;margin-bottom:20px}
.seo-cols{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,3vw,56px)}
.seo-cols p{font-size:.97rem;line-height:1.6;color:var(--ink2)}
.seo-cols b{color:var(--ink);font-weight:600}

/* ---------- responsive: real-business sections ---------- */
@media (max-width:900px){
  .help-grid{grid-template-columns:repeat(2,1fr)}
  .inds-grid{grid-template-columns:repeat(2,1fr)}
  .brands-in{grid-template-columns:1fr;gap:30px}
  .crew-media{grid-template-columns:1fr 1fr}
  .crew-spec{grid-template-columns:repeat(2,1fr)}
  .cov-top{grid-template-columns:1fr;gap:26px}
  .cov-fig{order:-1}
  .cov-sectors-grid{grid-template-columns:repeat(2,1fr)}
  .seo-cols{grid-template-columns:1fr;gap:20px}
}
@media (max-width:600px){
  .help-grid{grid-template-columns:1fr}
  .inds-grid{grid-template-columns:1fr}
  .brand-wall{grid-template-columns:repeat(2,1fr)}
  .crew-media{grid-template-columns:1fr}
  .crew-spec{grid-template-columns:1fr}
  .cov-sectors-grid{grid-template-columns:1fr}
}

/* r2 — remove index numbers everywhere; never crop the Carrier logo */
.mm-n,.st-n,.bw-n{display:none!important}
.steps li{grid-template-columns:1fr!important}
img[src*="carrier.png"]{object-fit:contain!important;background:#fff}

/* ===== INSTANT ESTIMATE TOOL ===== */
.est{padding:clamp(56px,7vw,104px) 0;background:var(--panel);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.est-head{max-width:none;margin-bottom:clamp(26px,3vw,40px)}
.est-head h2{margin:14px 0 .4em}
.est-shell{display:grid;grid-template-columns:1.12fr .88fr;gap:clamp(18px,2.4vw,34px);align-items:start}
.est-main{background:#fff;border:1px solid var(--line);padding:clamp(22px,2.6vw,34px)}
.est-progress{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}
.est-track{flex:1;height:4px;background:var(--hair);position:relative;overflow:hidden}
.est-track span{position:absolute;left:0;top:0;bottom:0;width:25%;background:var(--hi);transition:width .35s cubic-bezier(.2,.8,.25,1)}
.est-step{display:none}
.est-step.is-on{display:block;animation:estIn .35s ease}
@keyframes estIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.est-q{font-size:clamp(1.3rem,2vw,1.7rem);margin-bottom:18px;line-height:1.1}
.est-sub{margin:20px 0 10px;color:var(--muted)}
.est-opt-note{text-transform:none;letter-spacing:0;color:var(--muted)}
.est-opts{display:grid;gap:10px}
.est-opts.est-2{grid-template-columns:1fr 1fr}
.est-opts.est-3{grid-template-columns:1fr 1fr 1fr}
.est-opts.est-add{grid-template-columns:1fr 1fr 1fr}
.est-opt{text-align:left;background:var(--panel);border:1px solid var(--line);padding:14px 15px;cursor:pointer;transition:.16s ease;display:flex;flex-direction:column;gap:3px;font-family:inherit;color:var(--ink)}
.est-opt b{font-weight:600;font-size:.98rem}
.est-opt small{color:var(--muted);font-size:.78rem}
.est-opt:hover{border-color:var(--hi);transform:translateY(-1px)}
.est-opt.sel{border-color:var(--hi);background:rgba(193,146,47,.1);box-shadow:inset 0 0 0 1px var(--hi)}
.est-check{position:relative;padding-right:32px}
.est-check.sel:after{content:"✓";position:absolute;right:12px;top:12px;color:var(--hi);font-weight:700}
.est-nav{display:flex;align-items:center;gap:12px;margin-top:26px;padding-top:20px;border-top:1px solid var(--hair)}
.est-back{background:none}
.est-next{margin-left:0}
.est-reset{margin-left:auto;background:none;border:0;cursor:pointer;color:var(--muted);text-decoration:underline;text-underline-offset:3px}
.est-side{position:sticky;top:88px;background:var(--ink);color:var(--paper);padding:clamp(24px,2.6vw,34px);border:1px solid var(--ink)}
.est-side-lbl{color:var(--hi)!important;display:flex;align-items:center;gap:8px;margin-bottom:16px}
.est-side-lbl .dot{background:var(--hi)}
.est-figure{display:flex;align-items:baseline;gap:8px;font-family:var(--disp,inherit);font-weight:400;line-height:1;flex-wrap:wrap}
.est-figure span{font-size:clamp(2.1rem,4vw,3.1rem);letter-spacing:-.01em}
.est-dash{font-size:1.6rem!important;color:var(--hi)}
.est-monthly{color:var(--hair)!important;margin-top:12px;letter-spacing:.02em}
.est-sum{list-style:none;margin:22px 0;padding:18px 0;border-top:1px solid rgba(255,255,255,.14);border-bottom:1px solid rgba(255,255,255,.14);display:grid;gap:10px}
.est-sum li{display:flex;justify-content:space-between;gap:16px;font-size:.86rem}
.est-sum li span{color:#a7a595}
.est-sum li b{font-weight:600;text-align:right}
.est-sum-empty{color:#8a897c!important;justify-content:flex-start!important}
.est-cta{width:100%;justify-content:center;margin-top:4px}
.est-fine{color:#8f8e80!important;margin-top:16px;text-transform:none;letter-spacing:0;line-height:1.5;font-size:.68rem}
@media(max-width:900px){
  .est-shell{grid-template-columns:1fr}
  .est-side{position:static;order:-1}
  .est-opts.est-2,.est-opts.est-3,.est-opts.est-add{grid-template-columns:1fr 1fr}
}
@media(max-width:520px){.est-opts.est-3,.est-opts.est-add{grid-template-columns:1fr}}
