:root{
  --orange:#F15A26;--orange-deep:#D64A19;--orange-tint:#FFF1EA;
  --navy:#25355C;--ink:#141B2D;--body:#3B4256;--muted:#6B7280;
  --bg:#FFFFFF;--surface:#F7F7F5;--line:#E8E6E1;--line-2:#D9D6CF;
  --accent:var(--orange);--accent-tint:var(--orange-tint);
  --r:14px;--r-lg:22px;--max:1180px;
  --shadow:0 1px 2px rgba(20,27,45,.04),0 12px 32px -12px rgba(20,27,45,.14);
  --font:"Plus Jakarta Sans",system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
*{box-sizing:border-box}
html{scroll-padding-top:84px;scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
body{margin:0;font-family:var(--font);font-size:16px;line-height:1.6;color:var(--body);background:var(--bg)}
img{max-width:100%;display:block}
a{color:var(--navy)}
a:focus-visible,button:focus-visible{outline:3px solid var(--orange);outline-offset:3px;border-radius:6px}
h1,h2,h3{color:var(--ink);font-weight:700;line-height:1.1;letter-spacing:-.025em;margin:0 0 .5em}
h1{font-size:clamp(2.4rem,4.6vw,3.9rem);font-weight:800;letter-spacing:-.035em}
h2{font-size:clamp(1.8rem,3.2vw,2.6rem)}
h3{font-size:1.2rem;letter-spacing:-.015em}
p{margin:0 0 1em}
.wrap{max-width:var(--max);margin:0 auto;padding:0 clamp(18px,4vw,40px)}
.btn{display:inline-flex;align-items:center;gap:8px;background:var(--ink);color:#fff;text-decoration:none;font-weight:600;padding:14px 22px;border-radius:999px;white-space:nowrap;font-size:.98rem;transition:transform .15s,background .15s}
.btn:hover{background:var(--navy);color:#fff;transform:translateY(-1px)}
.btn.primary{background:var(--orange)}
.btn.primary:hover{background:var(--orange-deep)}
.btn.soft{background:var(--surface);color:var(--ink);border:1px solid var(--line)}
.btn.soft:hover{background:#fff;border-color:var(--line-2)}
.btn.light{background:#fff;color:var(--ink)}
.btn.light:hover{background:var(--orange-tint);color:var(--ink)}

/* nav */
.nav{background:rgba(255,255,255,.86);backdrop-filter:saturate(180%) blur(12px);-webkit-backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:72px}
.brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:var(--ink)}
.brand-mark{width:36px;height:36px;flex:none}
.brand-name{font-weight:800;font-size:1.02rem;letter-spacing:-.02em;line-height:1.1;display:block}
.brand-sub{display:block;font-size:.72rem;color:var(--muted);font-weight:500;margin-top:2px}
.brand-sub strong{color:var(--orange);font-weight:700}
.nav-links{display:flex;gap:6px;align-items:center;margin:0;padding:0;list-style:none}
.nav-links a{text-decoration:none;color:var(--body);font-weight:500;font-size:.95rem;padding:8px 12px;border-radius:999px}
.nav-links a:hover{background:var(--surface);color:var(--ink)}
.nav-links .cta{background:var(--orange);color:#fff;padding:10px 18px;font-weight:600;margin-left:8px}
.nav-links .cta:hover{background:var(--orange-deep);color:#fff}
.nav-toggle{display:none;background:none;border:1px solid var(--line);border-radius:999px;padding:8px 14px;font:inherit;font-weight:600;cursor:pointer}
@media (max-width:900px){
  .nav-toggle{display:block}
  .nav-links{display:none;position:absolute;left:0;right:0;top:72px;background:#fff;flex-direction:column;align-items:stretch;gap:0;border-bottom:1px solid var(--line);padding:8px 0}
  .nav-links.open{display:flex}
  .nav-links li{padding:6px clamp(18px,4vw,40px)}
  .nav-links a{display:block}
  .nav-links .cta{display:inline-block;margin:6px 0 0}
}

/* hero */
.hero{position:relative;overflow:hidden;background:
  radial-gradient(1100px 520px at 85% -10%,var(--accent-tint),transparent 62%),
  radial-gradient(700px 400px at 0% 100%,#F3F4F6,transparent 60%),#fff}
.hero .wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(32px,5vw,72px);align-items:center;padding-top:clamp(48px,7vw,96px);padding-bottom:clamp(48px,7vw,96px)}
.hero h1{max-width:15ch}
.hero .lede{font-size:1.15rem;max-width:46ch;color:var(--body);margin-bottom:1.6em}
.hero .actions{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:30px}
.proof{display:flex;gap:22px;flex-wrap:wrap;margin:0;padding:0;list-style:none;color:var(--muted);font-size:.92rem;font-weight:500}
.proof li{display:flex;gap:8px;align-items:center}
.proof svg{flex:none}
.crumb{font-size:.88rem;color:var(--muted);margin-bottom:18px}
.crumb a{color:var(--muted);text-decoration:none}
.crumb a:hover{color:var(--ink)}
@media (max-width:900px){.hero .wrap{grid-template-columns:1fr}}

/* request panel */
.panel{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:26px}
.panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:6px}
.panel h2{font-size:1.25rem;margin:0}
.panel .hint{font-size:.92rem;color:var(--muted);margin:2px 0 18px}
.pill{display:inline-flex;align-items:center;gap:6px;font-size:.74rem;font-weight:700;color:var(--orange-deep);background:var(--accent-tint);padding:6px 10px;border-radius:999px;white-space:nowrap;letter-spacing:.01em}
.pill i{width:7px;height:7px;border-radius:50%;background:var(--accent);display:inline-block}
.widget-shell{min-height:380px}
.widget-fallback{border:1px dashed var(--line-2);border-radius:var(--r);padding:24px;text-align:center;color:var(--muted);font-size:.92rem;background:var(--surface)}
.panel .foot{display:flex;gap:16px;flex-wrap:wrap;margin-top:16px;padding-top:14px;border-top:1px solid var(--line);font-size:.82rem;color:var(--muted)}
.panel .foot span{display:flex;align-items:center;gap:6px}

/* chooser (home panel) */
.chooser{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;list-style:none;padding:0;margin:0}
.chooser a{display:flex;align-items:center;justify-content:center;height:104px;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:#fff;text-decoration:none;color:var(--ink);font-weight:700;font-size:.9rem;text-align:center;transition:border-color .15s,box-shadow .15s,transform .15s}
.chooser a:hover{border-color:var(--orange);box-shadow:0 6px 18px -8px rgba(241,90,38,.5);transform:translateY(-1px)}
.chooser img{max-height:76px;max-width:100%;width:auto;object-fit:contain}
.chooser .other{grid-column:1/-1}
.chooser .other a{height:auto;padding:13px;border-style:dashed;font-weight:600;color:var(--muted);background:var(--surface)}
@media (max-width:420px){.chooser{grid-template-columns:repeat(2,1fr)}}

/* logo strip */
.logos{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}
.logos .wrap{display:flex;align-items:center;gap:clamp(20px,3vw,44px);padding:22px clamp(18px,4vw,40px);overflow:hidden}
.logos p{margin:0;font-size:.85rem;color:var(--muted);font-weight:600;white-space:nowrap;flex:none}
.logos ul{display:flex;gap:clamp(22px,3vw,44px);align-items:center;list-style:none;padding:0;margin:0;overflow-x:auto;scrollbar-width:none}
.logos ul::-webkit-scrollbar{display:none}
.logos img{height:30px;width:auto;filter:grayscale(1);opacity:.55;transition:filter .2s,opacity .2s}
.logos a:hover img{filter:none;opacity:1}

/* sections */
.section{padding:clamp(56px,7vw,104px) 0}
.section.surface{background:var(--surface)}
.section-head{max-width:60ch;margin-bottom:clamp(28px,4vw,48px)}
.section-head p{color:var(--muted);font-size:1.08rem}
.section-head.center{margin-left:auto;margin-right:auto;text-align:center}

/* steps */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;list-style:none;padding:0;margin:0;counter-reset:s}
.steps li{counter-increment:s;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:28px 26px 26px;position:relative}
.steps li::before{content:"0" counter(s);font-size:.78rem;font-weight:800;color:var(--orange);letter-spacing:.06em;display:block;margin-bottom:14px}
.steps svg{width:40px;height:40px;margin-bottom:16px}
.steps h3{margin-bottom:.35em}
.steps p{color:var(--muted);margin:0;font-size:.97rem}
@media (max-width:760px){.steps{grid-template-columns:1fr}}

/* escrow flow */
.flow{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(28px,5vw,72px);align-items:center}
.flow .track{list-style:none;padding:0;margin:0;border-left:2px solid var(--line-2);margin-left:10px}
.flow .track li{position:relative;padding:0 0 26px 28px}
.flow .track li:last-child{padding-bottom:0}
.flow .track li::before{content:"";position:absolute;left:-8px;top:5px;width:14px;height:14px;border-radius:50%;background:#fff;border:3px solid var(--line-2)}
.flow .track li.hot::before{border-color:var(--orange);background:var(--orange)}
.flow .track strong{display:block;color:var(--ink);font-size:1.02rem}
.flow .track span{color:var(--muted);font-size:.95rem}
@media (max-width:860px){.flow{grid-template-columns:1fr}}

/* compare */
.compare{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;font-size:.97rem}
.compare th,.compare td{padding:16px 20px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
.compare tr:last-child td{border-bottom:0}
.compare th{background:var(--surface);color:var(--ink);font-weight:700;font-size:.9rem}
.compare th.us{background:var(--accent-tint);color:var(--orange-deep)}
.compare td:first-child{color:var(--ink);font-weight:600;width:28%}
.compare td.us{background:#FFFAF7}
.compare .no{color:var(--muted)}
.compare-wrap{overflow-x:auto}

/* services */
.services{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;list-style:none;padding:0;margin:0}
.services li{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:16px 18px;font-weight:600;color:var(--ink);font-size:.95rem;display:flex;gap:10px;align-items:center}
.services li::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--orange);flex:none}
@media (max-width:900px){.services{grid-template-columns:repeat(2,1fr)}}
@media (max-width:480px){.services{grid-template-columns:1fr}}

/* faq */
.faq{max-width:800px;margin:0 auto}
.faq details{background:#fff;border:1px solid var(--line);border-radius:var(--r);margin-bottom:10px;padding:0 20px}
.faq summary{cursor:pointer;padding:18px 0;font-weight:600;color:var(--ink);list-style:none;display:flex;justify-content:space-between;gap:16px;align-items:center}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-size:1.4rem;color:var(--orange);line-height:1;font-weight:500}
.faq details[open] summary::after{content:"–"}
.faq details p{padding:0 0 18px;margin:0;color:var(--muted)}

/* retailer strip */
.strip{background:var(--ink);color:#fff}
.strip .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;padding-top:48px;padding-bottom:48px}
.strip h2{color:#fff;font-size:1.7rem;margin:0}
.strip p{margin:6px 0 0;color:#B8BFCF;max-width:58ch}

/* brand page */
.hero.brand-hero{background:
  radial-gradient(1000px 520px at 90% -10%,var(--accent-tint),transparent 60%),
  radial-gradient(600px 380px at 0% 100%,#F3F4F6,transparent 60%),#fff;border-top:4px solid var(--accent)}
.brand-logo{display:inline-flex;align-items:center;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:12px 18px;margin-bottom:20px;box-shadow:var(--shadow)}
.brand-logo img{max-height:56px;width:auto}
.variants{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px;align-items:center;font-size:.9rem;color:var(--muted)}
.variants a,.variants strong{padding:7px 13px;border-radius:999px;border:1px solid var(--line);text-decoration:none;color:var(--ink);font-weight:600;font-size:.88rem;background:#fff}
.variants strong{background:var(--accent);border-color:var(--accent);color:#fff}
.variants a:hover{border-color:var(--accent)}
.brand-body{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(28px,5vw,64px)}
.brand-body aside{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:26px;align-self:start}
.brand-body aside h3{margin-bottom:.6em}
.brand-body aside ul{list-style:none;padding:0;margin:0}
.brand-body aside li{padding:9px 0 9px 28px;position:relative;border-bottom:1px solid var(--line);font-size:.96rem}
.brand-body aside li:last-child{border-bottom:0}
.brand-body aside li::before{content:"";position:absolute;left:0;top:14px;width:16px;height:16px;border-radius:50%;background:var(--accent-tint);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Ccircle cx='8' cy='8' r='8'/%3E%3C/svg%3E");}
.brand-body aside li::after{content:"";position:absolute;left:4px;top:18px;width:8px;height:5px;border-left:2px solid var(--accent);border-bottom:2px solid var(--accent);transform:rotate(-45deg)}
@media (max-width:860px){.brand-body{grid-template-columns:1fr}}

/* footer */
footer{background:var(--surface);color:var(--muted);font-size:.93rem;border-top:1px solid var(--line)}
footer .wrap{display:grid;grid-template-columns:1.4fr .8fr 1.2fr 1fr;gap:32px;padding-top:56px;padding-bottom:44px}
footer h4{color:var(--ink);font-size:.95rem;font-weight:700;margin:0 0 12px}
footer ul{list-style:none;padding:0;margin:0}
footer li{margin-bottom:9px}
footer a{color:var(--body);text-decoration:none}
footer a:hover{color:var(--orange-deep)}
footer .legal{border-top:1px solid var(--line);padding:18px 0;font-size:.82rem}
footer .legal .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:0;padding-bottom:0}
@media (max-width:760px){footer .wrap{grid-template-columns:1fr}}

/* mobile sticky cta */
.sticky-cta{display:none}
@media (max-width:900px){
  .sticky-cta{display:block;position:fixed;left:0;right:0;bottom:0;z-index:25;padding:10px clamp(18px,4vw,40px) calc(10px + env(safe-area-inset-bottom,0px));background:rgba(255,255,255,.92);backdrop-filter:blur(10px);border-top:1px solid var(--line)}
  .sticky-cta .btn{width:100%;justify-content:center}
  body{padding-bottom:72px}
}

/* ===== home hero in SC navy ===== */
.hero.dark{background:
  radial-gradient(900px 520px at 90% -10%,rgba(241,90,38,.28),transparent 60%),
  radial-gradient(700px 420px at 0% 110%,rgba(255,255,255,.07),transparent 60%),var(--navy)}
.hero.dark h1{color:#fff}
.hero.dark .lede{color:#CBD3E6}
.hero.dark .proof{color:#DDE3F0}
.hero.dark .btn.soft{background:rgba(255,255,255,.08);color:#fff;border-color:rgba(255,255,255,.22)}
.hero.dark .btn.soft:hover{background:rgba(255,255,255,.16)}
.hero.dark .panel{border-color:transparent;box-shadow:0 30px 60px -30px rgba(0,0,0,.5)}

/* ===== brand pages: compact intro + full-width form ===== */
.hero.brand-hero.compact .wrap{grid-template-columns:1fr;padding-top:clamp(36px,5vw,64px);padding-bottom:clamp(32px,5vw,56px)}
.hero.brand-hero.compact .intro{display:grid;grid-template-columns:auto 1fr;gap:clamp(20px,3vw,40px);align-items:center}
.hero.brand-hero.compact h1{font-size:clamp(2rem,3.6vw,3rem);max-width:22ch;margin-bottom:.35em}
.hero.brand-hero.compact .lede{margin-bottom:1em;max-width:60ch}
.hero.brand-hero.compact .brand-logo{margin:0}
@media (max-width:640px){.hero.brand-hero.compact .intro{grid-template-columns:1fr}}
.form-section{padding:0 0 clamp(48px,6vw,80px);background:linear-gradient(var(--surface) 0,var(--surface) 55%,#fff 55%)}
.panel.wide{padding:clamp(20px,3vw,36px)}
.panel.wide .widget-shell{min-height:520px}
.panel.wide .panel-head{margin-bottom:8px}
.panel.wide h2{font-size:1.5rem}

/* install illustration */
.install{display:grid;gap:22px}
.install-art{background:#F5F4F1;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}
.install-art img{width:100%;height:auto;display:block}
.install-art svg{display:block;width:100%;height:auto}
.install-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;list-style:none;padding:0;margin:0;counter-reset:i}
.install-steps li{counter-increment:i;padding-top:12px;border-top:3px solid var(--orange)}
.install-steps li::before{content:"Step " counter(i);font-size:.76rem;font-weight:800;color:var(--orange);letter-spacing:.04em;display:block;margin-bottom:6px}
.install-steps strong{display:block;color:var(--ink);margin-bottom:4px}
.install-steps span{color:var(--muted);font-size:.93rem}
@media (max-width:860px){.install-steps{grid-template-columns:repeat(2,1fr)}}
@media (max-width:480px){.install-steps{grid-template-columns:1fr}}

/* ===== home hero: copy on top, full-width brand panel below ===== */
.hero.dark .wrap{grid-template-columns:1fr;gap:clamp(28px,4vw,48px);padding-top:clamp(40px,6vw,72px);padding-bottom:clamp(40px,6vw,80px)}
.hero.dark .hero-copy{max-width:760px}
.hero.dark h1{max-width:18ch}
.hero.dark .lede{max-width:60ch}
.hero.dark .panel{padding:clamp(22px,3vw,34px)}
.hero.dark .chooser{grid-template-columns:repeat(7,1fr);gap:14px}
.hero.dark .chooser a{height:124px;padding:14px;border-radius:16px}
.hero.dark .chooser img{max-height:92px}
.hero.dark .chooser .other a{height:auto;padding:16px;font-size:1rem}
@media (max-width:1100px){.hero.dark .chooser{grid-template-columns:repeat(5,1fr)}}
@media (max-width:820px){.hero.dark .chooser{grid-template-columns:repeat(4,1fr)}.hero.dark .chooser a{height:104px}.hero.dark .chooser img{max-height:72px}}
@media (max-width:520px){.hero.dark .chooser{grid-template-columns:repeat(2,1fr)}}

/* ===== wide hero: centered copy, bigger panel ===== */
.hero.dark .wrap{max-width:1480px}
.hero.dark .hero-copy{max-width:900px;margin:0 auto;text-align:center}
.hero.dark h1{max-width:none;font-size:clamp(2.4rem,4.4vw,4.2rem)}
.hero.dark .lede{margin-left:auto;margin-right:auto;max-width:64ch}
.hero.dark .actions{justify-content:center}
.hero.dark .proof{justify-content:center}
.hero.dark .chooser{grid-template-columns:repeat(5,1fr);gap:16px}
.hero.dark .chooser a{height:150px;padding:16px 20px}
.hero.dark .chooser img{max-height:112px}
.hero.dark .chooser .other{grid-column:auto}
.hero.dark .chooser .other a{height:150px;padding:16px;font-size:1rem}
@media (max-width:1100px){.hero.dark .chooser{grid-template-columns:repeat(4,1fr)}.hero.dark .chooser a,.hero.dark .chooser .other a{height:128px}.hero.dark .chooser img{max-height:92px}}
@media (max-width:820px){.hero.dark .chooser{grid-template-columns:repeat(3,1fr)}.hero.dark .chooser a,.hero.dark .chooser .other a{height:110px}.hero.dark .chooser img{max-height:76px}}
@media (max-width:520px){.hero.dark .chooser{grid-template-columns:repeat(2,1fr)}}

.brand-logo-img{height:46px;width:auto;display:block}
@media (max-width:600px){.brand-logo-img{height:36px}}

/* tighter hero so the brand panel starts above the fold */
.hero.dark .wrap{gap:22px;padding-top:clamp(28px,4vw,44px);padding-bottom:clamp(28px,4vw,48px)}
.hero.dark h1{font-size:clamp(2.1rem,3.6vw,3.3rem);margin-bottom:.35em}
.hero.dark .lede{font-size:1.08rem;margin-bottom:0}
.hero.dark .proof{margin-top:6px;font-size:.95rem;gap:28px}
.hero.dark .panel{padding:clamp(18px,2.4vw,28px)}
.hero.dark .panel .hint{margin-bottom:14px}
.hero.dark .chooser a,.hero.dark .chooser .other a{height:132px}
.hero.dark .chooser img{max-height:100px}

footer .areas{columns:2;column-gap:20px}
footer .areas li{break-inside:avoid}
@media (max-width:760px){footer .areas{columns:2}}

footer .areas-note{font-size:.88rem;margin:0 0 10px}
