/* Iron Elk design system, Update 1: black / gold / red, matched to the live site. Document 18 Part 2 tokens are the law. */
:root{
  --black:#000000;--card:#0B0B0B;--gold:#F7A407;--gold-d:#965C00;--red:#D31616;--red-d:#B01212;
  --ink:#141414;--paper:#FCFCFA;--ground:#F2F1ED;--line:#E3E1DB;--mut:#57544A;
  --display:'Arial Narrow','Helvetica Neue Condensed','Roboto Condensed','Liberation Sans Narrow','DIN Condensed',system-ui,sans-serif;
  --stencil:'Haettenschweiler','Impact','Franklin Gothic Bold','Arial Narrow',sans-serif;
  --sans:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
}
html{-webkit-text-size-adjust:100%;scroll-padding-top:92px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased}
a{color:var(--gold-d);font-weight:600}
a:hover{color:var(--ink)}
:focus-visible{outline:3px solid var(--gold-d);outline-offset:2px}
img{max-width:100%;height:auto}
input::placeholder,textarea::placeholder{color:var(--mut)}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}.dsx{transition:transform 160ms ease}}
/* progress + skip */
#progress{position:fixed;top:0;left:0;height:3px;width:0%;background:var(--gold);z-index:80}
.skip{position:fixed;left:-9999px;top:10px;z-index:90;background:var(--black);color:var(--paper);padding:10px 16px;border-radius:8px;text-decoration:none;font-weight:700}
.skip:focus{left:10px;color:var(--paper)}
/* layout */
.wrap{max-width:1160px;margin:0 auto;padding-left:24px;padding-right:24px}
.sec{padding-top:clamp(28px,4vw,48px);padding-bottom:clamp(28px,4vw,48px)}
.sec-last{padding-bottom:clamp(40px,5.5vw,64px)}
main>section:not(.hero):not(.quote):not(.steps-panel):not(.flow-band):not(.lh-game):not(.lh-steps):not(.lt-offer):not(.lt-promo):not(.lt-hero):not(.pl-hero):not(.sv-hero):nth-of-type(even){background:var(--ground);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.kicker{margin:0 0 14px;font-size:12px;font-weight:800;letter-spacing:2px;color:var(--gold-d);text-transform:uppercase;display:flex;align-items:center;gap:10px}
.kicker::before{content:"";width:26px;height:2px;background:var(--gold);flex-shrink:0}
.h2{margin:0 0 16px;font-weight:800;text-transform:uppercase;letter-spacing:.02em;font-size:clamp(22px,2.9vw,29px);line-height:1.12;color:var(--ink);display:flex;align-items:center;gap:12px}
.h2::before{content:"";width:26px;height:3px;background:var(--gold);flex-shrink:0}
.h3{margin:0 0 10px;font-weight:800;text-transform:uppercase;letter-spacing:.02em;font-size:17px;color:var(--ink)}
.muted{color:var(--mut)}
.small{font-size:13px;color:var(--mut)}
.prose{margin:0;font-size:16px;line-height:1.7;max-width:760px}
.money{color:var(--gold-d);font-weight:700}
/* header */
.site-head{background:var(--paper);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:60}
.head-row{max-width:1240px;margin:0 auto;padding:0 24px;display:flex;align-items:center;gap:14px;height:78px}
.brand{text-decoration:none;display:flex;flex-direction:column;line-height:1;white-space:nowrap}
.brand b{font-weight:900;font-size:21px;letter-spacing:1px;color:var(--ink);text-transform:uppercase}
.brand span{font-size:8.5px;letter-spacing:2.5px;color:var(--gold-d);font-weight:800;margin-top:4px}
.brand img{display:block;height:52px;width:auto;flex-shrink:0;object-fit:contain}
.foot-logo{display:block;height:60px;width:auto;margin:0 0 14px}
.nav{display:flex;align-items:center;gap:2px;flex:1;min-width:0}
.navlink,.menu>button{padding:10px 10px;font-size:14px;font-weight:700;color:var(--ink);background:none;border:none;border-radius:6px;cursor:pointer;font-family:inherit;white-space:nowrap;text-decoration:none;display:inline-block}
.navlink:hover,.menu>button:hover{background:var(--ground);color:var(--ink)}
.menu{position:relative}
.menu .caret{font-size:9px;color:var(--gold-d)}
.company-panel{width:235px;padding:10px}
.company-panel a{display:block;width:100%;padding:12px;color:var(--ink);font-size:14px;font-weight:700;text-decoration:none;border-radius:4px}
.company-panel a:hover,.company-panel a:focus-visible{background:var(--ground)}
.career-hero{background:var(--ground);border-bottom:1px solid var(--line)}
.career-hero .crumbs a{color:var(--gold-d)}
.career-hero .crumbs a:hover,.career-hero .crumbs a:focus-visible{color:var(--ink);text-decoration:underline}
.career-hero .crumbs .here,.career-hero .crumbs .sep{color:#57544A}
.career-hero h1{max-width:920px;font-size:clamp(36px,5vw,64px);line-height:1.08;letter-spacing:-.025em;margin:12px 0 20px}
.career-hero .prose{max-width:760px}
.job-lead{font-size:clamp(20px,3vw,28px);font-weight:700;margin:12px 0}
.job-facts{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0}
.job-facts span{padding:9px 13px;background:var(--ink);color:#fff;font-size:15px;font-weight:700}
.job-card{max-width:800px;border:1px solid var(--line);border-top:4px solid var(--gold);padding:clamp(20px,4vw,38px)}
.job-card h3{font-size:28px;line-height:1.2;margin:12px 0}.job-card h3 a{color:var(--ink)}
.job-pay{font-size:23px;font-weight:800;margin:14px 0}.job-reading{max-width:1000px}
.job-list{padding-left:24px;font-size:16px;line-height:1.8;margin-bottom:28px}.job-list li+li{margin-top:8px}
.job-apply{border-left:4px solid var(--gold);padding:clamp(20px,4vw,36px);background:var(--ground);max-width:960px}
.panel{position:absolute;top:100%;left:var(--panel-x,0px);background:var(--paper);border:1px solid var(--line);border-top:2px solid var(--gold);border-radius:0 0 10px 10px;box-shadow:0 16px 36px rgba(0,0,0,.16);z-index:50;display:none;max-width:calc(100vw - 24px)}
/* One controlled state: the panel is visible only while data-open is set, so
   aria-expanded can never disagree with what is on screen. Hover opens it via
   the script, which also suppresses reopening after an explicit close until the
   pointer leaves and returns. Without the script the hover fallback below
   still opens menus. */
.menu[data-open] .panel{display:flex;flex-wrap:wrap}
html:not(.js-nav) .menu:hover .panel{display:flex;flex-wrap:wrap}
.svc-item:first-child .svc-kids{display:block}
.svc-list:hover .svc-item:first-child:not(:hover) .svc-kids{display:none}
.svc-list:focus-within .svc-item:first-child:not(:focus-within) .svc-kids{display:none}
.svc-panel{width:min(620px,calc(100vw - 28px));padding:12px}
.panel{max-width:calc(100vw - 24px)}
.svc-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px 8px}
.nico{display:block;width:26px;height:26px;object-fit:contain;flex-shrink:0}
.drawer .svc-name .nico{width:24px;height:24px}
.svc-cell{display:flex;align-items:center;gap:10px;padding:10px 12px;text-decoration:none;color:var(--ink);font-size:14px;font-weight:600;border-radius:6px;white-space:nowrap}
.svc-cell:hover{background:var(--ground);box-shadow:inset 3px 0 0 var(--gold);color:var(--ink)}
.svc-cell .ticon svg{width:20px;height:20px}
.svc-foot{margin:12px -12px -12px;border-radius:0 0 9px 9px}
.svc-name{display:flex;align-items:center;gap:10px;min-width:0}
.svc-item .ticon svg,.drawer .ticon svg{width:18px;height:18px}
.svc-foot{flex-basis:100%;display:flex;flex-wrap:wrap;gap:10px 14px;align-items:center;border-top:1px solid var(--line);padding:12px 16px;background:var(--ground)}
.svc-foot .btn-amber-sm{padding:10px 16px;font-size:12.5px}
.svc-foot-line{font-size:13px;color:var(--ink)}
.svc-foot-line a{font-weight:700;white-space:nowrap}
.svc-list{width:252px;border-right:1px solid var(--line);padding:8px 0;max-height:72vh;overflow-y:auto}
.svc-item>a{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 16px;text-decoration:none;color:var(--ink);font-size:14px;font-weight:600}
.svc-item>a:hover,.svc-item:focus-within>a{background:var(--ground);color:var(--ink);box-shadow:inset 3px 0 0 var(--gold)}
.svc-kids{display:none;position:absolute;left:252px;top:0;bottom:0;width:406px;padding:16px 20px;overflow-y:auto}
.svc-item:hover .svc-kids,.svc-item:focus-within .svc-kids{display:block}
.svc-pane{width:406px}
.svc-kids .all{font-weight:800;text-transform:uppercase;font-size:14px;letter-spacing:.02em;color:var(--ink);text-decoration:none;display:inline-block;border-bottom:2px solid var(--gold);padding-bottom:6px}
.svc-kids .kgrid{display:grid;grid-template-columns:1fr 1fr;gap:1px 18px;margin-top:10px}
.svc-kids .kgrid a{font-size:13.5px;color:var(--gold-d);text-decoration:none;padding:5px 0;font-weight:600}
.svc-kids .kgrid a:hover{text-decoration:underline;color:var(--gold-d)}
.areas-panel{gap:22px 26px;padding:20px 24px;flex-wrap:wrap;width:max-content;max-width:calc(100vw - 24px);max-height:calc(100vh - 140px);overflow-y:auto}
.acol{min-width:150px}
.acol>a{font-size:14px;font-weight:800;color:var(--ink);text-decoration:none;display:block;padding-bottom:8px;border-bottom:1px solid var(--line);margin-bottom:8px;white-space:nowrap;text-transform:uppercase;letter-spacing:.02em;font-size:12.5px}
.acol>a:hover{color:var(--gold-d)}
.acol .town{display:block;font-size:13px;color:var(--gold-d);text-decoration:none;padding:3px 0;white-space:nowrap;font-weight:600}
.acol .town:hover{text-decoration:underline;color:var(--gold-d)}
.head-phone{font-weight:800;color:var(--ink);text-decoration:none;font-size:15.5px;white-space:nowrap}
.head-phone:hover{color:var(--gold-d)}
.btn{display:inline-block;text-decoration:none;font-weight:800;border-radius:8px;cursor:pointer;text-align:center;text-transform:uppercase;letter-spacing:.03em}
.btn:active{transform:translateY(1px)}
.btn-amber{background:var(--red);color:#fff;border:none;font-size:15.5px;padding:15px 28px}
.btn-amber:hover{background:var(--red-d);color:#fff}
.btn-amber-sm{background:var(--red);color:#fff;border:none;font-size:14px;padding:12px 20px}
.btn-amber-sm:hover{background:var(--red-d);color:#fff}
.btn-line{border:1.5px solid var(--red);color:var(--red);background:none;font-size:15.5px;padding:13.5px 24px}
.btn-line:hover{background:var(--ground);color:var(--red)}
.burger{width:44px;height:44px;display:none;flex-direction:column;gap:4px;justify-content:center;align-items:center;background:none;border:1px solid var(--line);border-radius:8px;cursor:pointer;flex-shrink:0}
.burger span{width:17px;height:2px;background:var(--ink)}
/* mobile header + drawer */
.head-m{display:none}
@media (min-width:900px) and (max-width:1120px){
  .head-row{gap:8px}
  .navlink,.menu>button{padding:8px 6px;font-size:13px}
  .head-phone{font-size:13px}
  .btn-amber-sm{padding:11px 14px;font-size:13px}
  .brand b{font-size:18px}
  .brand span{font-size:7.5px;letter-spacing:2px}
}
@media (max-width:899px){
  .head-row{display:none}
  .head-m .head-phone{display:flex;align-items:center;min-height:44px;padding:0 6px}
  .head-m .brand{min-height:44px;justify-content:center}
  .head-m{display:flex;align-items:center;gap:12px;height:64px;padding:0 14px}
  .site-head{position:sticky;top:0;z-index:60}
  .brand b{font-size:18px}
  .brand span{font-size:7.5px;letter-spacing:2px;margin-top:3px}
  .head-m .head-phone{font-size:14px}
  .head-m .brand img{height:44px;width:auto;max-width:100%;flex-shrink:0;object-fit:contain}
  .head-m .brand{flex:0 1 auto;min-width:0;overflow:hidden}
  .head-m .head-phone{margin-left:auto}
  .burger{display:flex}
}
@media (max-width:400px){
  .head-m{gap:8px;padding:0 10px}
  .head-m .brand img{height:38px}
  .head-m .head-phone{font-size:13px}
}
.drawer{display:none;position:fixed;top:64px;left:0;right:0;bottom:0;background:var(--paper);z-index:55;overflow-y:auto;padding:16px 18px 110px;border-top:1px solid var(--line)}
.drawer.open{display:block}
.drawer-close{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:48px;box-sizing:border-box;margin:0 0 10px;padding:12px 4px;background:var(--paper);border:0;border-bottom:1px solid var(--line);color:var(--ink);font:inherit;font-size:13px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;cursor:pointer}
.drawer-close .dx{font-size:24px;font-weight:400;line-height:1;color:var(--gold-d)}
.drawer-close:hover{color:var(--gold-d)}
body.nav-locked{overflow:hidden}
[inert]{pointer-events:none}
.drawer .dbtns{display:flex;gap:10px;margin-bottom:6px}
.drawer .dbtns a{flex:1;text-align:center;font-size:14px;padding:12px 8px;border-radius:8px;text-decoration:none;font-weight:800;white-space:nowrap;text-transform:uppercase}
.drawer .dcall{border:1.5px solid var(--red);color:var(--red)}
.drawer .dquote{background:var(--red);color:#fff}
.drawer details{border-top:1px solid var(--line)}
.drawer summary{display:flex;justify-content:space-between;align-items:center;padding:14px 2px;font-weight:800;font-size:15px;color:var(--ink);list-style:none;cursor:pointer;text-transform:uppercase;letter-spacing:.02em}
.drawer summary::-webkit-details-marker{display:none}
.drawer .dsx{color:var(--gold-d);font-size:22px;font-weight:400;line-height:1}
.drawer details[open]>summary>.dsx{transform:rotate(45deg)}
.drawer .dlist a{display:flex;justify-content:space-between;align-items:center;min-height:44px;box-sizing:border-box;padding:10px 4px;text-decoration:none;color:var(--ink);font-size:15px;font-weight:600;border-top:1px solid var(--ground)}
.drawer .dcounty{display:flex;align-items:center;min-height:44px;box-sizing:border-box;padding:9px 4px;text-decoration:none;color:var(--ink);font-size:14px;font-weight:800;border-top:1px solid var(--ground);text-transform:uppercase;letter-spacing:.02em}
.drawer .dtowns{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}
.drawer .dtowns a{display:flex;align-items:center;min-height:44px;box-sizing:border-box;padding:9px 4px;text-decoration:none;color:var(--gold-d);font-size:14px;font-weight:600}
.drawer .dflat{display:flex;align-items:center;min-height:48px;box-sizing:border-box;padding:12px 2px;text-decoration:none;color:var(--ink);font-size:15px;font-weight:800;border-top:1px solid var(--line);text-transform:uppercase;letter-spacing:.02em}
.drawer .dflat.last{border-bottom:1px solid var(--line)}
/* hero: the diagonal-clipped dark panel from the live site */
.hero{background:var(--black);color:var(--paper)}
.hero .wrap{padding-top:clamp(28px,4.5vw,54px);padding-bottom:clamp(36px,5.5vw,64px)}
.crumbs ol{display:flex;flex-wrap:wrap;gap:7px;list-style:none;margin:0;padding:0;font-size:13px;align-items:center}
.crumbs a{color:var(--gold);text-decoration:none;font-weight:600}
.crumbs a:hover{text-decoration:underline;color:var(--gold)}
.crumbs .sep{color:var(--mut)}
.hero .crumbs .sep{color:rgba(247,164,7,.55)}
.crumbs .here{color:var(--mut)}
.hero .crumbs .here{color:var(--line)}
.hero-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,330px),1fr));gap:clamp(24px,4vw,56px);align-items:center;margin-top:14px}
.h-hero{margin:0 0 14px;font-weight:900;text-transform:uppercase;letter-spacing:.01em;font-size:clamp(27px,3.8vw,42px);line-height:1.06;color:var(--gold);text-wrap:pretty}
.h-hero .t1{display:block;color:var(--gold)}
.h-hero .t2{display:block;color:var(--gold)}
.hero-geo{margin:-4px 0 14px;font-size:12.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#E3E1DB}
.lead{margin:0 0 22px;font-size:clamp(16.5px,1.8vw,19px);line-height:1.6;color:var(--ground);text-wrap:pretty}
.lead.tight{margin-bottom:8px}
.speed{margin:0 0 22px;font-size:14px;color:var(--line)}
.hero .money{color:var(--gold)}
.cta-row{display:flex;flex-wrap:wrap;gap:12px}
.hero .btn-line{border-color:var(--gold);color:var(--paper)}
.hero .btn-line:hover{background:rgba(247,164,7,.14);color:var(--paper)}
/* who-it's-for strip along the panel base */
.trust{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:22px;padding-top:14px;border-top:1px solid rgba(247,164,7,.45);font-size:12.5px;font-weight:800;color:var(--paper);align-items:center;text-transform:uppercase;letter-spacing:.06em}
.trust .dot{color:var(--gold)}
/* photo placeholder: seated in the clipped shape, gold keyline */
.ph{aspect-ratio:4/3;background:var(--card);border:1px dashed rgba(247,164,7,.65);border-radius:2px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:24px;box-sizing:border-box;text-align:center}
.hero .ph{clip-path:polygon(12% 0,100% 0,100% 100%,0 100%);border-radius:0}
.ph .ph-k{margin:0;font-size:11px;font-weight:800;letter-spacing:1.8px;color:var(--gold)}
.ph .ph-cap{margin:0;font-style:italic;font-size:15px;line-height:1.5;color:var(--paper);max-width:320px}
section:not(.hero) .ph{background:var(--paper);border:1px dashed var(--gold-d)}
section:not(.hero) .ph .ph-k{color:var(--gold-d)}
section:not(.hero) .ph .ph-cap{color:var(--ink)}
.hero-photo img{display:block;width:100%;height:auto;border-radius:2px;border:1px solid rgba(247,164,7,.45)}
.hero-art{display:flex;align-items:center;justify-content:center}
.hero-art img{display:block;width:100%;height:auto;max-width:640px;border:1px solid rgba(247,164,7,.45);border-radius:2px;background:#FCFCFA}
/* cards, grids, chips: flat, gold keylines, no glow */
.card{border:1px solid var(--line);border-top:2px solid var(--gold);border-radius:2px;padding:20px 22px;background:var(--paper)}
.svc-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr));gap:14px}
.svc-card{display:flex;flex-direction:column;align-items:center;gap:0;background:var(--ground);border:1px solid var(--line);border-top:2px solid var(--gold);border-radius:2px;padding:16px 14px 18px;text-decoration:none;overflow:hidden}
.svc-card:hover{border-color:var(--gold-d);border-top-color:var(--gold);box-shadow:0 6px 18px rgba(0,0,0,.10)}
.svc-card:active{transform:translateY(1px)}
.svc-card img{display:block;width:100%;max-width:250px;height:150px;object-fit:contain;object-position:center}
.svc-card-label{font-size:15px;font-weight:800;text-transform:uppercase;letter-spacing:.02em;color:var(--ink);text-align:center;line-height:1.25;margin-top:6px}
.svc-card:hover .svc-card-label{color:var(--gold-d)}
.svc-card-sub{display:block;font-size:12px;color:var(--mut);text-align:center;line-height:1.35;margin-top:4px;font-weight:400;text-transform:none;letter-spacing:0}
.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}
.grid-lg{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:12px}
.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:16px}
.tile{display:flex;justify-content:space-between;align-items:center;gap:10px;border:1px solid var(--line);border-radius:2px;padding:17px 18px;background:var(--paper);text-decoration:none;color:var(--ink);font-size:15px;font-weight:700;min-height:44px;box-sizing:border-box}
.tile:hover{border-color:var(--gold-d);box-shadow:0 4px 14px rgba(0,0,0,.08);color:var(--ink)}
.tile:active{transform:translateY(1px)}
.tile .arrow{color:var(--gold-d);font-size:18px}
.ticon{display:inline-flex;color:var(--gold-d);flex-shrink:0}
.ticon svg{width:22px;height:22px;display:block}
.tile .sub{display:block;font-size:12.5px;color:var(--mut);margin-top:4px;font-weight:400}
.tile .tcol{display:block}
.teaser{border:1px solid var(--line);border-top:2px solid var(--gold);border-radius:2px;padding:20px 22px;background:var(--paper);text-decoration:none;display:block}
.teaser:hover{border-color:var(--gold-d);border-top-color:var(--gold);box-shadow:0 4px 14px rgba(0,0,0,.08)}
.teaser .tk{margin:0 0 8px;font-size:11px;font-weight:800;letter-spacing:1.8px;color:var(--gold-d)}
.teaser .tt{margin:0;font-weight:800;text-transform:uppercase;letter-spacing:.02em;font-size:16px;line-height:1.35;color:var(--ink)}
.teaser .tt-sm{font-size:14.5px;line-height:1.4}
.chips{display:flex;flex-wrap:wrap;gap:10px;max-width:860px}
.chip{display:inline-flex;align-items:center;white-space:nowrap;min-height:44px;box-sizing:border-box;padding:10px 18px;border:1px solid var(--line);border-radius:999px;background:var(--paper);font-size:14px;font-weight:600;color:var(--ink);text-decoration:none;box-shadow:0 1px 0 var(--line)}
.chip:hover{border-color:var(--gold-d);color:var(--gold-d)}
.chip:active{transform:translateY(1px);box-shadow:none}
.price-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:14px}
.pcard{border:1px solid var(--line);border-top:3px solid var(--gold);border-radius:2px;padding:18px 20px;background:var(--paper)}
.pcard .pl{margin:0 0 6px;font-size:12px;font-weight:800;letter-spacing:1.2px;color:var(--mut)}
.pcard .pv{margin:0;font-weight:800;font-size:38px;line-height:1;color:var(--gold-d)}
.pcard .pv small{font-size:17px;font-weight:800}
.steps-cont .wrap{padding-top:0}
.steps-cont{border-top:0 !important}
main>section.steps-panel,.steps-panel{background:var(--black);color:var(--paper);position:relative;overflow:hidden;border-top:4px solid var(--gold)}
.steps-panel::after{content:"";position:absolute;right:3%;top:0;width:min(38%,420px);aspect-ratio:480 / 253;background:url('../images/iron-elk-logo-white.png') no-repeat center/contain;opacity:.10;pointer-events:none}
.steps-panel .wrap{position:relative;z-index:1}
.steps-panel .wrap{padding-top:clamp(42px,6vw,74px);padding-bottom:clamp(42px,6vw,74px)}
.steps-kicker{margin:0 0 12px;display:inline-block;padding-bottom:10px;border-bottom:4px solid var(--gold);font-family:var(--stencil);font-size:16px;font-weight:400;letter-spacing:.26em;color:var(--gold);text-transform:uppercase}
.steps-head{margin:14px 0 clamp(26px,3.6vw,44px);font-family:var(--stencil);font-weight:400;text-transform:uppercase;letter-spacing:.02em;font-size:clamp(32px,4.8vw,58px);line-height:1;color:var(--paper)}
.steps-3{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr));gap:clamp(20px,2.4vw,32px);align-items:stretch}
.steps-3.steps-wide{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}
.steps-3 li{border-top:6px solid var(--gold);padding-top:16px;position:relative;display:flex;flex-direction:column}
@media (min-width:900px){.steps-3 li+li{padding-left:clamp(20px,2.4vw,34px)}.steps-3 li+li::before{content:"";position:absolute;left:calc(-1 * clamp(12px,1.5vw,20px));top:6px;bottom:6px;width:1px;background:rgba(247,164,7,.22)}}
.steps-3 .sn{display:block;font-family:var(--stencil);font-weight:400;font-size:clamp(74px,8.6vw,124px);line-height:.78;color:var(--gold);letter-spacing:0}
.steps-3 .st{margin:10px 0 0;font-family:var(--stencil);font-weight:400;text-transform:uppercase;letter-spacing:.03em;font-size:clamp(19px,1.95vw,25px);line-height:1.1;color:var(--paper)}
.steps-3 .sb{margin:12px 0 0;font-size:16.5px;line-height:1.5;color:var(--paper);font-weight:600}
.steps-3 .sb a{color:var(--gold)}
.steps-tail{margin:clamp(26px,3.2vw,38px) 0 0;font-size:15.5px;font-weight:700;color:var(--line)}
.steps-tail a{color:var(--gold)}
.steps-tail a:hover{color:var(--paper)}
/* steps */
.steps{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:26px 14px}
.steps li{position:relative;text-align:center;padding:0 10px}
.steps .n{width:46px;height:46px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 12px;font-weight:900;font-size:19px;position:relative;z-index:1;background:var(--gold);color:#141414;box-shadow:0 0 0 6px var(--paper)}
.steps li:nth-child(3n+2) .n{background:var(--red);color:#fff}
.steps li:nth-child(3n) .n{background:#141414;color:var(--gold)}
.steps .s{font-size:15.5px;line-height:1.5;font-weight:700;color:var(--ink);display:block;max-width:300px;margin:0 auto}
@media (min-width:700px){
  .steps li::after{content:"";position:absolute;top:22px;left:calc(50% + 34px);right:calc(-50% + 34px);height:2px;background:rgba(247,164,7,.55)}
  .steps li:last-child::after{display:none}
}
.steps-wrap{text-align:center}
.steps-wrap .kicker{display:inline-flex;background:rgba(247,164,7,.14);color:var(--gold-d);padding:7px 14px;border-radius:999px;margin-bottom:18px}
.steps-wrap .kicker::before{display:none}
.steps-wrap .h2{justify-content:center;margin-bottom:24px}
.steps-wrap .h2::before{display:none}
.trust-band{background:var(--paper);border-bottom:1px solid var(--line)}
.trust-band-row{display:flex;flex-wrap:wrap;gap:8px 34px;justify-content:center;padding-top:13px;padding-bottom:13px;font-size:12.5px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--ink)}
.trust-band-row span{display:flex;align-items:center;gap:8px}
.trust-band-row span::before{content:"";width:7px;height:7px;background:var(--gold);border-radius:50%}
.hero-kicker{margin:0 0 10px;font-size:14.5px;font-weight:700;color:var(--gold)}
.h-hero-xl{font-size:clamp(32px,4.6vw,54px);margin-bottom:14px}
.lead-link{color:var(--gold);font-weight:700;text-decoration:underline;text-decoration-color:rgba(247,164,7,.5);text-underline-offset:3px}
.lead-link:hover{color:var(--gold)}
.lead-link-key{font-weight:800;text-decoration-color:var(--gold);text-decoration-thickness:2px}
.hero-point{margin:18px 0 4px;font-size:19px;font-weight:800;color:var(--paper)}
.hero-sub{margin:0 0 16px;font-size:14px;font-style:italic;color:var(--line)}
.btn-xl{font-size:17px;padding:18px 42px}
.flow-band{background:var(--ground);border-bottom:1px solid var(--line)}
.flow-band .wrap{padding-top:clamp(26px,3.5vw,40px);padding-bottom:clamp(26px,3.5vw,40px)}
.flow-center{max-width:560px;margin:0 auto}
.flow-card{background:var(--card);border:1px solid rgba(247,164,7,.5);border-top:3px solid var(--gold);padding:20px 22px}
.flow-label{display:block;font-size:15px;font-weight:800;text-transform:uppercase;letter-spacing:.03em;color:var(--paper);margin:2px 0 10px}
.flow-zip{display:flex;gap:10px}
.flow-zip input{flex:1;min-width:0;box-sizing:border-box;padding:12px 14px;border:1px solid rgba(247,164,7,.55);background:#000;color:var(--paper);font-size:18px;font-weight:700;letter-spacing:.12em;border-radius:2px}
.flow-zip input::placeholder{color:#57544A}
.flow-zip .btn-amber{padding:12px 22px;font-size:14px}
.flow-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin-top:6px}
.flow-item{display:flex;align-items:center;gap:10px;padding:9px 10px;color:var(--paper);text-decoration:none;font-size:12.5px;font-weight:800;text-transform:uppercase;letter-spacing:.03em;border:1px solid transparent;border-radius:2px}
.flow-item:hover{border-color:rgba(247,164,7,.55);background:#000;color:var(--paper)}
.flow-item .ticon{color:var(--gold)}
.flow-item .ticon svg{width:19px;height:19px}
.cta-band{background:var(--black);border-top:2px solid var(--gold);border-bottom:1px solid rgba(247,164,7,.35);border-radius:2px;padding:clamp(22px,3vw,32px) 24px}
.cta-band-in{display:flex;flex-direction:column;align-items:center;gap:8px;max-width:560px;margin:0 auto}
.cta-band .hero-zip-lab{color:var(--gold)}
.cta-band .hero-zip-help{color:var(--line)}
.hero-zip{display:flex;flex-direction:column;align-items:center;gap:6px}
.hero-zip-lab{font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.hero-zip-row{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;align-items:stretch}
.hero-zip-row input{width:132px;box-sizing:border-box;padding:16px 18px;border:1.5px solid var(--gold);border-radius:8px;background:#fff;color:var(--ink);font:inherit;font-size:19px;font-weight:800;letter-spacing:.12em;text-align:center}
.hero-zip-row input:focus{outline:3px solid var(--gold);outline-offset:2px}
.hero-zip-row .btn-xl{padding:16px 32px}
.hero-zip-help{margin:2px 0 0;font-size:12.5px;color:var(--line);text-align:center}
@media (max-width:520px){.hero-zip-row{flex-direction:column;align-items:stretch}.hero-zip-row input{width:100%}}
.cta-stack{display:inline-flex;flex-direction:column;align-items:center;gap:0;max-width:100%}
.cta-stack .cta-or{align-self:stretch;max-width:none}
.cta-stack .cta-alt{justify-content:center;text-align:center}
.cta-stack>.btn{margin:0}
@media (max-width:899px){.cta-stack{display:flex;width:100%}}
.cta-or{display:flex;align-items:center;gap:12px;margin:16px 0 10px;font-size:11px;font-weight:800;letter-spacing:.18em;color:var(--line);max-width:300px}
.cta-or span{flex:1;height:1px;background:rgba(247,164,7,.4)}
.cta-alt{margin:0;display:flex;flex-wrap:wrap;gap:6px 12px;font-size:15.5px;align-items:center}
.cta-alt a{color:var(--paper);font-weight:600;text-decoration:none}
.cta-alt a:hover{color:var(--gold);text-decoration:underline}
.cta-alt a strong{color:var(--gold);font-weight:800}
.cta-alt .dot{color:var(--gold)}
/* tables */
.twrap{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:thin;border:1px solid var(--line);border-top:2px solid var(--gold);border-radius:2px}
table.t{border-collapse:separate;border-spacing:0;width:100%;min-width:480px}
.t th{text-align:left;font-size:12px;font-weight:800;letter-spacing:1.2px;color:var(--mut);padding:12px 16px;background:var(--ground)}
.t td{padding:13px 16px;border-top:1px solid var(--line);font-size:15px}
.t tbody tr{background:var(--paper)}
.t tbody tr:hover{background:var(--ground)}
.t .price-col{text-align:right;font-weight:600;position:sticky;right:0;background:inherit;border-left:1px solid var(--line);font-size:14px}
.t th.price-col{background:var(--ground);font-weight:800}
.t td.price-col.is-money{color:var(--gold-d);font-weight:700;white-space:nowrap;font-size:15px}
/* faq */
.faq{max-width:760px}
.faq details{border:1px solid var(--line);border-radius:2px;margin-bottom:10px;background:var(--paper)}
.faq details:last-child{margin-bottom:0}
.faq summary{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:15px 18px;font-weight:700;font-size:16px;color:var(--ink);list-style:none;cursor:pointer}
.faq summary::-webkit-details-marker{display:none}
.faq .dsx{color:var(--gold-d);font-size:22px;font-weight:400;line-height:1;flex-shrink:0}
.faq details[open] .dsx{transform:rotate(45deg)}
.faq .ans{margin:0;padding:0 18px 16px;font-size:15px;line-height:1.65;color:var(--ink)}
/* quote */
.quote{background:var(--ground);border-top:1px solid var(--line)}
.quote .wrap{padding-top:clamp(40px,6vw,72px);padding-bottom:clamp(40px,6vw,72px)}
.qgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:clamp(24px,4vw,52px);align-items:center}
.qh{margin:0 0 10px;font-weight:900;text-transform:uppercase;letter-spacing:.01em;font-size:clamp(24px,3.2vw,33px);line-height:1.08;color:var(--ink)}
.qp{margin:0 0 18px;font-size:16px;line-height:1.65;color:var(--ink);max-width:440px}
.qtel{margin:0;font-weight:800;font-size:24px}
.qtel a{color:var(--ink);text-decoration:none}
.qtel a:hover{color:var(--gold-d)}
.qhours{margin:4px 0 0;font-size:13.5px;color:var(--mut)}
.qcard{background:var(--paper);border:1px solid var(--line);border-top:3px solid var(--gold);border-radius:2px;padding:22px 24px;box-shadow:0 10px 28px rgba(0,0,0,.08)}
.pills-k{margin:0 0 6px;font-size:11px;font-weight:800;letter-spacing:1.4px;color:var(--mut)}
.pills{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.pill{border:1px solid var(--line);border-radius:999px;padding:6px 12px;font-size:13px;font-weight:600;background:var(--ground);color:var(--ink)}
.hp{position:absolute;left:-9999px;top:-9999px;height:1px;width:1px}
.fields{display:flex;flex-direction:column;gap:14px}
.fields label{display:block;font-size:13px;font-weight:700;margin-bottom:6px}
.fields input,.fields select,.fields textarea{width:100%;box-sizing:border-box;padding:12px 14px;border:1px solid var(--mut);border-radius:2px;background:#fff;font-size:16px;color:var(--ink);font-family:inherit}
.fields input:focus,.fields select:focus,.fields textarea:focus{border-color:var(--gold-d)}
.fields textarea{resize:vertical}
.fields .btn-amber{width:100%;padding:15px 20px;font-size:15.5px}
.fchecks{border:1px solid var(--line);border-radius:2px;padding:12px 14px;margin:0;min-inline-size:auto}
.fchecks legend{font-size:13px;font-weight:700;padding:0 4px}
.fcheck-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px 12px;margin-top:4px}
.fcheck{display:flex;align-items:center;gap:9px;font-size:14px;cursor:pointer;font-weight:600}
.fcheck input{width:18px;height:18px;accent-color:var(--gold-d);flex-shrink:0}
.qmore summary{cursor:pointer;font-weight:800;font-size:13px;letter-spacing:.04em;text-transform:uppercase;color:var(--gold-d);list-style:none}
.qmore summary::-webkit-details-marker{display:none}
.qmore summary::before{content:"+ "}
.qmore[open] summary::before{content:"\2212 "}
.qlines{margin-top:14px;display:flex;flex-direction:column;gap:5px;font-size:13.5px;line-height:1.5;color:var(--ink)}
.qlines p{margin:0}
.qlines a{font-weight:700}
.qlines .trustline{color:var(--mut)}
/* footer: black ground, gold keyline headings */
.site-foot{background:var(--black);color:var(--line)}
.site-foot .wrap{padding-top:clamp(40px,6vw,64px);padding-bottom:28px}
.fgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:28px 24px}
.fh{margin:0 0 12px;font-size:11px;font-weight:800;letter-spacing:1.8px;color:var(--gold)}
.fa{display:block;font-size:13.5px;color:var(--line);text-decoration:none;padding:3.5px 0;font-weight:400}
.fa:hover{color:var(--paper);text-decoration:underline}
.fa.strong{font-weight:700}
.fbottom{border-top:1px solid rgba(247,164,7,.4);margin-top:32px;padding-top:22px;display:flex;flex-wrap:wrap;gap:14px 28px;justify-content:space-between;align-items:flex-start}
.nap{margin:0;font-size:14px;color:var(--paper)}
.nap a{color:var(--paper);font-weight:700}
.nap a:hover{color:var(--gold)}
.nap2{margin:6px 0 0;font-size:13px;color:var(--gold)}
.nap2 a{color:var(--gold)}
.nap2 a:hover{color:var(--paper)}
.legal{display:flex;flex-wrap:wrap;gap:6px 16px;align-items:center}
.legal a{font-size:13px;color:var(--gold);text-decoration:none;font-weight:400}
.legal a:hover{color:var(--paper);text-decoration:underline}
.legal .copyright{font-size:13px;color:var(--line)}
/* sticky call bar */
.callbar{display:none}
.callbar-spacer{display:none}
@media (max-width:899px){
  .callbar{position:fixed;left:0;right:0;bottom:0;z-index:70;background:var(--black);display:flex;gap:10px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));box-shadow:0 -6px 18px rgba(0,0,0,.35);border-top:1px solid rgba(247,164,7,.4)}
  .callbar a{flex:1;display:flex;align-items:center;justify-content:center;min-height:46px;border-radius:8px;text-decoration:none;font-weight:800;font-size:13.5px;white-space:nowrap;text-transform:uppercase;letter-spacing:.02em}
  .callbar .cb-call{border:1.5px solid var(--gold);color:var(--paper)}
  .callbar .cb-text{border:1.5px solid var(--gold);color:var(--gold)}
  .callbar .cb-quote{background:var(--red);color:#fff}
  .callbar .cb-quote:hover{background:var(--red-d)}
  .callbar a:active{transform:translateY(1px)}
  .callbar-spacer{display:block;height:76px}
}

/* ---- the one quote form ---- */
body[data-quote-page] .head-row .nav,body[data-quote-page] .head-row>.btn,body[data-quote-page] .head-m .burger,body[data-quote-page] .drawer,body[data-quote-page] .crumbs,body[data-quote-page] .site-foot{display:none}
body[data-quote-page] .head-row>.head-phone{margin-left:auto}
.qform-wrap>.qform{display:none}
.qform-wrap>.qloading{display:flex}
.qform-wrap[data-form-state="enhanced"]>#quote-form{display:block}
.qform-wrap[data-form-state="enhanced"]>.qloading,.qform-wrap[data-form-state="enhanced"]>#quote-fallback{display:none}
.qform-wrap[data-form-state="fallback"]>#quote-fallback{display:block}
.qform-wrap[data-form-state="fallback"]>.qloading,.qform-wrap[data-form-state="fallback"]>#quote-form{display:none}
.qloading{min-height:220px;box-sizing:border-box;align-items:center;justify-content:center;gap:16px;padding:30px 24px;background:var(--paper);border:1px solid var(--line);border-top:3px solid var(--gold);text-align:left}
.qloading-mark{width:28px;height:28px;box-sizing:border-box;flex:0 0 auto;border:3px solid var(--line);border-top-color:var(--gold-d);border-radius:50%;animation:qspin 800ms linear infinite}
.qloading-title{margin:0 0 4px;font-weight:800;font-size:17px;color:var(--ink)}
.qloading-copy{margin:0;max-width:42ch;font-size:14px;line-height:1.5;color:var(--mut)}
@keyframes qspin{to{transform:rotate(360deg)}}
.qform{--qline:#918D82}
.qform-wrap{max-width:720px}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.qcontext{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 14px;padding:12px 14px;background:var(--ground);border:1px solid var(--qline);border-left:4px solid var(--gold);font-size:14px;line-height:1.4;color:var(--ink)}
.qcontext[hidden]{display:none}
.qcontext>span,.qcontext-summary{font-weight:700}
.qcontext b{padding:0 5px;color:var(--gold-d)}
.qcontext-main{display:flex;min-width:0;flex:1;flex-direction:column;gap:3px}
.qcontext-label{font-size:11px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--mut)}
.qcontext-actions{display:flex;flex:0 0 auto;flex-wrap:wrap;justify-content:flex-end;gap:8px}
.qcontext button{min-height:44px;padding:8px 12px;border:1.5px solid var(--ink);border-radius:2px;background:#fff;color:var(--ink);font:inherit;font-size:13px;font-weight:800;cursor:pointer}
.qcontext button:hover{border-color:var(--gold-d);color:var(--gold-d)}
.qcontext button:focus-visible{outline:3px solid var(--gold-d);outline-offset:2px}
.qeditbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:-4px 0 20px;padding:12px 14px;background:#FFF8E8;border:1px solid #D9AA4A;border-left:4px solid var(--gold-d);font-size:14px;line-height:1.45;color:var(--ink)}
.qeditbar[hidden]{display:none}
.qedit-return,.qcancel{min-height:44px;padding:8px 12px;border:1.5px solid var(--ink);border-radius:2px;background:var(--paper);color:var(--ink);font:inherit;font-size:13px;font-weight:800;cursor:pointer}
.qedit-return:hover,.qcancel:hover{border-color:var(--gold-d);color:var(--gold-d)}
.qbar{position:sticky;top:78px;z-index:5;background:var(--paper);padding:10px 0 12px;border-bottom:1px solid var(--line);margin-bottom:26px}
.qcount{margin:0 0 8px;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--mut)}
.qtrack{height:4px;background:var(--line);border-radius:2px;overflow:hidden}
.qtrack span{display:block;height:100%;width:0;background:var(--gold);transition:width 260ms ease}
.qstep{padding:0 0 8px}
.qstepnum{margin:0 0 6px;font-family:var(--display);font-size:34px;line-height:1;color:var(--gold-d);letter-spacing:.02em}
.qsteph{margin:0 0 6px;font-family:var(--display);font-size:clamp(24px,3.4vw,34px);line-height:1.05;text-transform:uppercase;letter-spacing:.015em;color:var(--ink);outline:none}
.qsub{margin:0 0 20px;font-size:16px;line-height:1.6;color:var(--mut);max-width:52ch}
.qfields{display:flex;flex-direction:column;gap:20px}
.qf{display:flex;flex-direction:column;gap:8px;border:0;padding:0;margin:0;min-width:0}
.qf[hidden]{display:none}
.qf label,.qf legend{font-size:15px;font-weight:700;color:var(--ink);padding:0;display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}
.qreq{font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--mut)}
.qf input[type=text],.qf input[type=tel],.qf input[type=email],.qf input[type=number],.qf input[type=date],.qf select,.qf textarea{
  width:100%;box-sizing:border-box;padding:14px 15px;border:1.5px solid var(--qline);border-radius:2px;background:#fff;font-size:16px;font-family:inherit;color:var(--ink)}
.qf input:focus,.qf select:focus,.qf textarea:focus{border-color:var(--gold-d);outline:3px solid rgba(247,164,7,.35);outline-offset:1px}
.qf input[aria-invalid=true],.qf select[aria-invalid=true],.qf textarea[aria-invalid=true]{border-color:var(--red)}
.qf textarea{resize:vertical;min-height:96px}
.qf input[type=file]{font-size:14px;padding:12px 0}
.qopts{display:flex;flex-direction:column;gap:0}
.qf-multiselect .qopts,.qf-radio .qopts{border:1.5px solid var(--qline);border-radius:2px;overflow:hidden}
.qopt{display:flex;gap:12px;align-items:center;justify-content:flex-start;text-align:left;padding:14px 15px;font-size:16px;font-weight:400;cursor:pointer;background:#fff;border-top:1px solid var(--qline);min-height:48px;box-sizing:border-box}
.qopts .qopt:first-child{border-top:0}
.qopt:hover{background:var(--ground)}
.qopt input{width:20px;height:20px;flex:0 0 auto;accent-color:var(--gold-d)}
.qopt span{line-height:1.4}
.qf-check .qopt{border:1.5px solid var(--qline);border-radius:2px}
.qhelp{margin:0;font-size:13.5px;line-height:1.55;color:var(--mut)}
.qhelp a{font-weight:700}
.qerr{margin:0;font-size:13.5px;font-weight:700;color:var(--red);line-height:1.5}
.qerr:not([hidden]){display:block;padding:9px 11px;background:#FFF1F1;border-left:3px solid var(--red)}
.qerror-summary{margin:0 0 18px;padding:13px 15px;background:#FFF1F1;border:1px solid #C94B4B;border-left:4px solid var(--red);color:var(--ink);font-size:14px;line-height:1.5}
.qerror-summary:focus{outline:3px solid var(--red);outline-offset:2px}
.qerror-summary a{color:var(--ink);font-weight:800}
.qnotice{margin:0;padding:14px 16px;background:var(--ground);border-left:3px solid var(--gold);font-size:14.5px;line-height:1.6;color:var(--ink)}
.qthumbs{display:flex;flex-wrap:wrap;gap:6px}
.qthumb{font-size:12px;padding:5px 9px;background:var(--ground);border:1px solid var(--line);border-radius:2px;color:var(--mut)}
.qsummary{display:flex;flex-direction:column;gap:0;border:1.5px solid var(--line);border-radius:2px}
.qsrow{display:flex;gap:14px;padding:12px 15px;border-top:1px solid var(--line);font-size:15px}
.qsummary .qsrow:first-child{border-top:0}
.qsk{flex:0 0 90px;font-weight:800;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--mut);padding-top:3px}
.qsv{flex:1;line-height:1.5;color:var(--ink)}
.qedit{min-height:44px;background:none;border:0;padding:8px 2px;font:inherit;font-size:13.5px;font-weight:700;color:var(--gold-d);text-decoration:underline;cursor:pointer}
.qconfirm{margin:0;font-size:18px;line-height:1.55;color:var(--ink)}
.qfine{margin:0;font-size:13px;color:var(--mut)}
.qnav{display:flex;gap:12px;align-items:center;margin-top:26px;flex-wrap:wrap}
.qback{min-height:48px;background:none;border:1.5px solid var(--qline);border-radius:2px;padding:13px 20px;font:inherit;font-size:14px;font-weight:800;text-transform:uppercase;letter-spacing:.03em;color:var(--ink);cursor:pointer}
.qback:hover{border-color:var(--gold-d);color:var(--gold-d)}
.qsubmit{flex:1;min-width:200px}
.qform[data-enhanced] .qstep[data-in-flow="0"]{display:none}
.qform[data-enhanced] .qnojs{display:none}
.qform:not([data-enhanced]) .qstepnum{display:none}
.qfallback{padding:clamp(22px,4vw,34px);background:var(--paper);border:1px solid var(--qline);border-top:3px solid var(--gold);box-shadow:0 10px 28px rgba(0,0,0,.06)}
.qfallback .qfields{gap:18px}
.qfallback-contact{display:flex;flex-direction:column;gap:18px;margin-top:2px;padding-top:20px;border-top:1px solid var(--line)}
.qfallback-contact h3{margin:0;font-size:18px;line-height:1.3;color:var(--ink)}
.qoptional{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--mut)}
.qfallback input:user-invalid,.qfallback select:user-invalid,.qfallback textarea:user-invalid{border-color:var(--red);box-shadow:0 0 0 2px rgba(211,22,22,.12)}
.qfallback-submit{display:block;width:100%;box-sizing:border-box;margin-top:18px;min-height:50px}
.qfallback .qlines{align-items:center;text-align:center}
.qentry{display:flex;flex-direction:column;align-items:center;text-align:center;gap:0}
.qentry .pills-k{align-self:flex-start}
.qentry .pills{align-self:flex-start}
.qentry .qstart{width:100%;box-sizing:border-box;margin-top:4px}
.qentry .cta-or{color:var(--mut);align-self:stretch;max-width:none}
.qentry .cta-or span{background:var(--line)}
.qentry .cta-alt{justify-content:center;color:var(--ink)}
.qentry .cta-alt a{color:var(--ink)}
.qentry .cta-alt a:hover{color:var(--gold-d);text-decoration:underline}
.qentry .cta-alt a strong{color:var(--gold-d)}
.qentry .cta-alt .dot{color:var(--gold-d)}
.qentry .qlines{align-items:center;text-align:center}
@media (max-width:899px){
  .qstepnum{font-size:28px}
  body[data-quote-page] .callbar,body[data-quote-page] .callbar-spacer{display:none}
  .qbar{top:64px}
  .qnav{position:sticky;bottom:0;z-index:6;display:grid;grid-template-columns:auto minmax(0,1fr);background:var(--paper);padding:12px 0 calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);margin-top:20px}
  .qsubmit{min-width:0}
  .qback[hidden]+.qsubmit{grid-column:1/-1}
  .qsk{flex-basis:74px}
}

.qtiles{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.qtiles>.qtile{flex:1 1 148px;max-width:220px}
.qtile{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:74px;padding:14px 10px;border:1.5px solid var(--qline);border-radius:8px;background:#fff;cursor:pointer;text-align:center}
.qtile-art{min-height:132px;padding:10px 8px 12px}
.qtile input{position:absolute;opacity:0;width:1px;height:1px}
.qtile img{display:block;width:100%;max-width:104px;height:72px;object-fit:contain;object-position:center;margin:0 auto}
.qtile span{font-size:12.5px;font-weight:800;letter-spacing:.03em;text-transform:uppercase;line-height:1.25;color:var(--ink)}
.qtile:hover{border-color:var(--gold-d)}
.qtile:focus-within{outline:3px solid var(--gold-d);outline-offset:2px}
.qtile:has(input:focus-visible){outline:3px solid var(--gold-d);outline-offset:2px}
.qtile:has(input:checked){border-color:var(--gold);border-width:2px;background:#FFFDF6;box-shadow:0 2px 10px rgba(0,0,0,.07);padding:13px 9px}
.qtile-art:has(input:checked){padding:9px 7px 11px}
.qtile:has(input:checked) span{color:var(--gold-d)}
.qtile:has(input:checked)::after{content:"\2713";position:absolute;top:6px;right:8px;font-size:13px;font-weight:900;color:var(--gold-d)}
.qtile:active{transform:translateY(1px)}
.qservice-groups{display:flex;flex-direction:column;gap:22px}
.qservice-group,.qrelated-group{display:flex;flex-direction:column;gap:9px}
.qgroup-title{margin:0;font-size:12px;font-weight:800;line-height:1.35;letter-spacing:.09em;text-transform:uppercase;color:var(--mut)}
.qgroup-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.qgroup-grid .qtile{max-width:none;min-height:56px;width:100%;box-sizing:border-box;align-items:flex-start;padding:12px 38px 12px 14px;text-align:left}
.qtile-compact{min-height:56px;align-items:flex-start;padding:12px 38px 12px 14px;text-align:left}
.qtile-compact img{display:none}
.qtile-compact span,.qgroup-grid .qtile span{font-size:15px;font-weight:700;letter-spacing:0;text-transform:none;line-height:1.35}
.qtile-compact:has(input:checked),.qgroup-grid .qtile:has(input:checked){padding:11px 37px 11px 13px}
.qrelated-featured{display:flex;flex-direction:column;gap:9px;padding:16px;background:var(--ground);border:1px solid var(--qline);border-left:4px solid var(--gold)}
.qrelated-more{border-top:1px solid var(--line);padding-top:6px}
.qrelated-more summary{display:flex;align-items:center;min-height:44px;font-size:14px;font-weight:800;color:var(--gold-d);cursor:pointer}
.qrelated-more>div{display:flex;flex-direction:column;gap:20px;padding-top:12px}
.qtask-groups,.qtask-profile{display:flex;flex-direction:column;gap:18px}
.qtask-group{display:flex;flex-direction:column;gap:9px;padding:14px;background:var(--ground);border:1px solid var(--qline)}
.qtask-group[hidden],.qtask-profile[hidden],[data-task-group][hidden]{display:none}
.qtask-group-title{margin:0;font-size:14px;font-weight:800;line-height:1.4;color:var(--ink)}
.qtask-group .qgroup-grid{gap:8px}
.qtask-note{margin:0;font-size:13px;line-height:1.5;color:var(--mut)}
.qshared-details{margin-top:4px;padding-top:16px;border-top:1px solid var(--line)}
.qshared-details:not(details){display:flex;flex-direction:column;gap:14px;padding-top:20px}
.qshared-details h3{margin:0;font-size:17px;line-height:1.3;color:var(--ink)}
details.qshared-details>summary{display:flex;align-items:center;min-height:46px;box-sizing:border-box;padding:10px 12px;border:1.5px solid var(--qline);border-radius:2px;background:var(--paper);color:var(--ink);font-size:15px;font-weight:800;line-height:1.4;cursor:pointer;list-style:none}
details.qshared-details>summary::-webkit-details-marker{display:none}
details.qshared-details>summary::before{content:"+";width:24px;flex:0 0 24px;color:var(--gold-d);font-size:21px;line-height:1}
details.qshared-details[open]>summary::before{content:"\2212"}
details.qshared-details[open]>summary{border-color:var(--gold-d)}
.qshared-details-body{display:flex;flex-direction:column;gap:14px;padding:16px 2px 0}
.qrequest-review{margin:0 0 22px;padding:16px;background:var(--ground);border:1px solid var(--qline);border-left:4px solid var(--gold);overflow-wrap:anywhere}
.qrequest-review h3{margin:0 0 8px;font-size:16px;line-height:1.5}
.qreview-row{display:flex;align-items:flex-start;gap:12px;justify-content:space-between}
.qreview-row p{flex:1;margin:8px 0;font-size:14px;line-height:1.6}
.qreview-row button{flex:0 0 auto;min-width:44px;min-height:44px;border:0;background:transparent;color:var(--ink);font:inherit;font-size:14px;text-decoration:underline;cursor:pointer}
.qreview-row button:focus-visible{outline:3px solid var(--gold-d);outline-offset:2px}
.hero-zip-help.is-error{color:var(--red);font-weight:800}
@media (prefers-reduced-motion:reduce){.qtrack span{transition:none}.qtile:active{transform:none}.qloading-mark{animation:none}}
@media (max-width:420px){.qtiles{gap:8px}.qtiles>.qtile{flex:1 1 132px}.qtile img{height:60px}}
@media (max-width:560px){
  .qgroup-grid{grid-template-columns:1fr}
  .qcontext,.qeditbar{align-items:stretch;flex-direction:column}
  .qcontext-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}
  .qcontext-actions button{width:100%}
  .qedit-return,.qcancel{width:100%}
  .qloading{min-height:180px;align-items:flex-start;padding:24px 18px}
  .qfallback{padding:22px 18px}
  .qtask-group{padding:12px}
}

@media (max-width:520px){
  .kicker,.teaser .tk,.ph .ph-k,.pills-k,.fh,.hero-zip-lab{font-size:12px}
  .trust-band-row{font-size:12px}
}

@media (max-width:899px){
  .trust-band-row{display:grid;grid-template-columns:auto auto;justify-content:center;justify-items:start;gap:10px 18px;padding-top:13px;padding-bottom:13px;font-size:11px;letter-spacing:.03em;text-align:left}
  .trust-band-row span{justify-content:flex-start;align-items:center;gap:6px;line-height:1.2;white-space:nowrap}
  .trust-band-row span::before{width:5px;height:5px;flex:0 0 5px}
}

/* Landing-page concept: mud on the process numbers. Scoped to T1 only.
   The spatter is painted INSIDE the glyphs with background-clip:text, so the mud is on
   the numbers rather than floating over the panel; a few tiny flecks land off the digit. */
.steps-3 li{--mud:#241A12;--mud2:#3A2A1C}
.steps-3 .sn{
  position:relative;display:inline-block;color:transparent;
  background-image:
    radial-gradient(closest-side,var(--mud2) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud2) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud2) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud2) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud2) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud2) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud2) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud2) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud2) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud2) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud2) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud2) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud2) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud2) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud2) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud2) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud2) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud2) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud2) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud2) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud2) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud2) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud2) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud2) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    linear-gradient(to bottom,var(--mud) 24%,transparent 100%),
    linear-gradient(to bottom,var(--mud2) 20%,transparent 100%),
    linear-gradient(var(--gold),var(--gold));
  background-size:
    1.9% 1.7%, 2.4% 2.2%, 2.3% 2.1%, 2.3% 2.1%, 1.8% 1.7%, 1.6% 1.5%, 1.7% 1.6%, 1.7% 1.6%, 1.4% 1.2%, 2.2% 2.0%, 1.3% 1.2%, 2.2% 2.0%, 1.2% 1.1%, 2.4% 2.2%, 1.5% 1.4%, 1.8% 1.7%, 1.9% 1.7%, 2.3% 2.1%, 1.1% 1.0%, 1.3% 1.2%, 1.4% 1.3%, 1.6% 1.5%, 1.6% 1.4%, 1.2% 1.1%, 2.1% 1.9%, 2.4% 2.2%, 1.8% 1.6%, 1.9% 1.7%, 1.2% 1.1%, 1.2% 1.1%, 1.4% 1.3%, 1.5% 1.4%, 1.3% 1.2%, 2.0% 1.8%, 1.5% 1.3%, 1.5% 1.3%, 1.9% 1.7%, 1.7% 1.6%, 1.9% 1.8%, 1.5% 1.4%, 1.6% 1.5%, 0.9% 0.8%, 1.2% 1.1%, 1.6% 1.5%, 0.9% 0.8%, 1.4% 1.3%, 0.9% 0.8%, 2.0% 1.8%, 1.8% 1.6%, 1.2% 1.1%, 1.0% 0.9%, 1.9% 1.7%, 1.6% 1.4%, 2.3% 2.1%, 1.3% 1.2%, 1.3% 1.2%, 1.3% 1.2%, 1.1% 1.0%, 1.0% 0.9%, 1.3% 1.2%, 1.5% 1.4%, 2.2% 2.0%, 2.1% 1.9%, 1.2% 1.1%, 1.4% 1.3%, 2.0% 1.9%, 1.8% 1.7%, 2.0% 1.9%, 1.8% 1.7%, 2.4% 2.2%, 1.3% 1.2%, 2.3% 2.1%,
    1.2% 11%, 1.0% 8%,
    100% 100%;
  background-position:
    44% 49%, 29% 54%, 15% 19%, 32% 35%, 69% 27%, 41% 30%, 88% 53%, 82% 13%, 45% 56%, 32% 11%, 28% 29%, 38% 69%, 9% 43%, 23% 40%, 66% 27%, 72% 63%, 54% 66%, 21% 34%, 37% 37%, 32% 32%, 40% 55%, 77% 62%, 84% 59%, 82% 30%, 10% 56%, 36% 66%, 40% 49%, 45% 60%, 61% 91%, 48% 53%, 32% 40%, 60% 20%, 78% 57%, 46% 49%, 35% 36%, 70% 21%, 25% 30%, 23% 26%, 16% 25%, 12% 60%, 69% 83%, 82% 29%, 26% 22%, 36% 43%, 77% 48%, 88% 22%, 61% 81%, 47% 24%, 83% 38%, 80% 78%, 77% 34%, 33% 50%, 87% 29%, 24% 50%, 52% 76%, 47% 74%, 84% 62%, 62% 78%, 63% 36%, 87% 19%, 55% 18%, 40% 63%, 64% 91%, 26% 43%, 40% 47%, 23% 11%, 56% 75%, 35% 25%, 80% 63%, 29% 67%, 26% 19%, 13% 57%,
    26% 34%, 70% 60%,
    0 0;
  background-repeat:no-repeat;
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;
}
.steps-3 .sn::after{
  content:"";position:absolute;left:-28%;right:-32%;top:-16%;bottom:-24%;
  pointer-events:none;z-index:1;
  background-image:
    radial-gradient(closest-side,var(--mud2) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud2) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud2) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud2) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud2) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud2) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud2) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud2) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud2) 92%,transparent 100%),
    radial-gradient(closest-side,var(--mud) 92%,transparent 100%);
  background-size:0.7% 0.7%, 0.7% 0.6%, 1.0% 0.9%, 1.2% 1.1%, 1.0% 0.9%, 0.6% 0.6%, 1.0% 0.9%, 1.2% 1.1%, 1.3% 1.2%, 0.9% 0.9%, 0.7% 0.7%, 0.8% 0.8%, 0.8% 0.7%, 1.2% 1.1%, 1.0% 0.9%, 1.3% 1.2%, 1.0% 0.9%, 1.4% 1.3%, 0.9% 0.9%, 0.6% 0.6%, 0.9% 0.8%, 1.0% 0.9%, 0.6% 0.6%, 1.0% 0.9%, 1.0% 1.0%, 0.8% 0.7%;
  background-position:12% 92%, 96% 96%, 29% 42%, 2% 41%, 78% 47%, 20% 71%, 96% 61%, 32% 36%, 46% 69%, 58% 84%, 2% 54%, 91% 99%, 80% 45%, 8% 8%, 12% 66%, 67% 17%, 71% 63%, 42% 68%, 30% 57%, 57% 58%, 45% 24%, 92% 9%, 75% 94%, 79% 30%, 64% 15%, 27% 5%;
  background-repeat:no-repeat;
}
.steps-3 li:nth-child(2) .sn{background-position:48% 53%,82% 28%,20% 39%,26% 37%,39% 15%,41% 91%,77% 15%,38% 49%,56% 89%,9% 68%,41% 34%,51% 20%,48% 29%,25% 40%,47% 46%,33% 42%,77% 80%,20% 49%,14% 57%,60% 13%,42% 54%,34% 45%,41% 47%,70% 40%,48% 56%,19% 31%,68% 23%,50% 49%,53% 59%,79% 78%,17% 32%,67% 64%,13% 59%,55% 81%,38% 70%,11% 87%,25% 83%,81% 51%,45% 71%,9% 34%,63% 81%,76% 59%,61% 41%,69% 14%,48% 15%,73% 24%,73% 54%,11% 39%,84% 65%,76% 72%,16% 67%,85% 65%,36% 44%,58% 68%,78% 29%,22% 77%,65% 76%,46% 52%,35% 82%,39% 21%,31% 45%,89% 64%,32% 18%,45% 30%,38% 50%,30% 14%,17% 52%,9% 21%,11% 51%,61% 81%,17% 82%,44% 86%,66% 28%,22% 56%,0 0}
.steps-3 li:nth-child(3) .sn{background-position:27% 89%,80% 48%,70% 45%,25% 67%,53% 60%,91% 81%,84% 36%,45% 77%,84% 50%,82% 83%,51% 86%,90% 21%,87% 13%,20% 23%,88% 78%,65% 47%,62% 21%,39% 53%,18% 77%,71% 35%,35% 41%,77% 22%,72% 52%,77% 13%,9% 40%,16% 90%,46% 59%,61% 61%,62% 71%,57% 19%,45% 11%,76% 21%,28% 89%,80% 29%,64% 43%,11% 29%,27% 78%,36% 71%,10% 87%,27% 12%,19% 79%,71% 90%,58% 60%,58% 83%,18% 18%,66% 32%,58% 55%,13% 28%,37% 38%,62% 70%,14% 71%,25% 88%,52% 41%,38% 85%,70% 87%,19% 35%,69% 68%,16% 24%,15% 82%,12% 80%,84% 44%,55% 65%,90% 83%,69% 27%,24% 57%,22% 33%,78% 45%,70% 49%,73% 12%,40% 16%,23% 92%,9% 10%,38% 22%,78% 66%,0 0}
.steps-3 li:nth-child(4) .sn{background-position:91% 80%,44% 55%,78% 12%,19% 46%,17% 52%,63% 72%,90% 34%,21% 27%,50% 50%,32% 61%,69% 83%,75% 31%,63% 34%,82% 89%,10% 46%,19% 14%,68% 86%,72% 27%,61% 91%,42% 79%,15% 47%,9% 62%,31% 66%,38% 56%,82% 86%,65% 89%,73% 19%,12% 86%,72% 32%,13% 81%,9% 44%,52% 26%,35% 21%,60% 48%,82% 88%,78% 74%,58% 50%,74% 49%,71% 15%,61% 25%,52% 76%,30% 20%,49% 40%,34% 85%,80% 51%,27% 33%,42% 16%,69% 12%,68% 22%,65% 81%,22% 48%,63% 31%,64% 19%,27% 88%,76% 61%,89% 60%,70% 75%,8% 53%,86% 11%,59% 67%,91% 39%,36% 85%,89% 83%,12% 11%,11% 37%,73% 55%,36% 46%,27% 66%,69% 86%,49% 33%,73% 37%,86% 26%,16% 44%,58% 30%,0 0}
.steps-3 li:nth-child(2) .sn::after{transform:scaleX(-1)}
.steps-3 li:nth-child(3) .sn::after{transform:rotate(180deg)}
.steps-3 li:nth-child(4) .sn::after{transform:scaleY(-1)}

.qf.qemph{outline:2px solid var(--gold);outline-offset:6px;border-radius:4px}
.qf.qemph label{color:var(--gold-d)}

/* design pass, September 2026: one card language, tighter phone layouts */
.h2,.h3,.teaser .tt{text-wrap:balance}
@media (max-width:899px){
  .svc-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .svc-card{padding:12px 10px 14px}
  .svc-card img{height:96px}
  .svc-card-label{font-size:12.5px;letter-spacing:.01em}
  .svc-card-sub{font-size:11px}
  .hero .ph{aspect-ratio:auto;clip-path:none;flex-direction:row;align-items:center;justify-content:flex-start;gap:12px;padding:12px 14px;text-align:left}
  .hero .ph .ph-k{flex-shrink:0;font-size:10px;letter-spacing:1.4px}
  .hero .ph .ph-cap{font-size:13px;line-height:1.4;max-width:none}
}

/* Home hero ground: the flat black gets material. Three layers, all subtle and all in the brand's
   colours: a warm gold glow bleeding from the photo side (the sunset in the shot), one broad
   diagonal band lifted a few points off black at the plate angle for depth, and a fine grain so the
   panel reads as surface rather than a fill. Text sits above all three. Home only. */
.hero{position:relative;isolation:isolate;overflow:hidden;background:
  radial-gradient(ellipse 62% 78% at 78% 58%, rgba(247,164,7,.20), rgba(247,164,7,0) 68%),
  linear-gradient(112deg, #000 0 42%, #121212 42% 74%, #000 74%),
  #000}
.hero::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.11;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='g'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .6 0'/></filter><rect width='180' height='180' filter='url(%23g)'/></svg>");background-size:180px 180px}
.hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;z-index:0;background:linear-gradient(90deg, var(--gold) 0 38%, rgba(247,164,7,.25) 38% 100%)}
.hero > .wrap{position:relative;z-index:1}
/* Home hero photo: the brand's cut-plate shape without losing picture. The photograph stays whole;
   only two corners are chamfered (a 34px cut, ~3% of the frame) like a cut steel plate, and the gold
   plate behind carries the full diagonal so the slant reads without cropping content. Home only. */
.hero .hero-photo{position:relative;isolation:isolate}
.hero .hero-photo::before{content:"";position:absolute;inset:0;transform:translate(16px,16px);background:var(--gold);clip-path:polygon(10% 0,100% 0,100% 100%,0 100%);z-index:-1}
.hero .hero-photo img{border:0;border-radius:0;clip-path:polygon(34px 0,100% 0,100% calc(100% - 34px),calc(100% - 34px) 100%,0 100%,0 34px)}
@media (max-width:899px){
  .hero .hero-photo::before{transform:translate(10px,10px)}
  .hero .hero-photo img{clip-path:polygon(22px 0,100% 0,100% calc(100% - 22px),calc(100% - 22px) 100%,0 100%,0 22px)}
}

/* Policy documents: one continuous article, compact headings, reading measure */
.doc{max-width:760px}
.doc-h{margin:28px 0 8px;font-weight:800;text-transform:uppercase;letter-spacing:.03em;font-size:15px;color:var(--ink)}
.doc-h:first-child{margin-top:0}
.doc-p{margin:0;font-size:16px;line-height:1.7;color:var(--ink)}
.doc-p+.doc-h{margin-top:28px}

.qnote{margin:10px 0 0;font-size:12.5px;line-height:1.5;color:var(--mut);text-align:center;max-width:520px}
.qmore{margin-top:6px}
.qmore summary{cursor:pointer;font-size:13.5px;font-weight:700;color:var(--gold-d);list-style:none;padding:6px 0}
.qmore summary::-webkit-details-marker{display:none}
.qmore summary::before{content:"+ "}
.qmore[open] summary::before{content:"\2013 "}
.qmore .qf{margin-top:10px}

/* Full editorial audit tables */
.audit-reading{max-width:960px}.audit-reading>.h2{margin-top:32px;margin-bottom:14px}.audit-reading>.h2:first-child{margin-top:0}.audit-reading>.prose{max-width:none;margin-bottom:24px}.audit-table-scroll{overflow-x:auto;margin:24px 0;outline-offset:4px}.audit-table{width:100%;border-collapse:collapse;text-align:left;line-height:1.6}.audit-table caption{text-align:left;font-weight:700;margin-bottom:12px}.audit-table th,.audit-table td{padding:12px 14px;border-bottom:1px solid #d8d5cb;vertical-align:top}.audit-table thead{background:#ece9e0}.audit-table tbody th{font-weight:600}.audit-table a{text-decoration:underline}@media(max-width:600px){.audit-table{font-size:14px}.audit-table th,.audit-table td{padding:10px 8px}}

/* Homepage service chooser: image card with description */
.svc-cards-desc{grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr))}
.svc-card-desc{align-items:stretch;text-align:left;padding:18px 20px 20px}
.svc-card-desc img{max-width:100%;height:132px}
.svc-card-desc .svc-card-label{text-align:left;margin-top:12px;font-size:16px}
.svc-card-copy{display:block;margin:8px 0 0;font-size:14.5px;line-height:1.6;color:var(--mut);font-weight:400;text-transform:none;letter-spacing:0}
.svc-card-note{display:block;margin:10px 0 0;padding-top:9px;border-top:1px solid var(--line);font-size:13px;line-height:1.5;color:var(--ink);font-weight:700;text-transform:none;letter-spacing:0}
.teaser .td{margin:8px 0 0;font-size:14px;line-height:1.6;color:var(--mut);font-weight:400;text-transform:none;letter-spacing:0}
@media (max-width:899px){
  .svc-cards-desc{grid-template-columns:1fr;gap:12px}
  .svc-card-desc{padding:14px 16px 16px}
  .svc-card-desc img{height:112px}
  .svc-card-desc .svc-card-label{font-size:14.5px}
  .svc-card-copy{font-size:14px}
}

/* Before-and-after comparison: side by side on desktop, stacked on mobile.
   Both frames stay fully visible at 4:3 (no slider, camera angles differ). */
.ba-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:0 0 14px}
/* Second example sits under the first with a clear rule between them. */
.ba-sep{margin-top:30px;padding-top:30px;border-top:1px solid var(--line)}
.ba-fig picture{display:block}
.ba-fig{margin:0;min-width:0}
.ba-lab{display:inline-block;margin:0 0 8px;padding:4px 10px;background:var(--ink);color:var(--paper);border-radius:3px;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.ba-fig img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;background:#EDECE7;border:1px solid var(--line);border-radius:4px}
.ba-note{margin:0 0 20px;font-size:15px;line-height:1.55;color:#57544A}
@media (max-width:720px){.ba-grid{grid-template-columns:minmax(0,1fr);gap:14px}}
