
:root{
  --navy:#10405A; --navy-mid:#0C3448; --navy-deep:#072634; --navy-ink:#04191F;
  --gold:#B8A355; --gold-lt:#D8C583; --gold-dk:#8A7838;
  --ink:#12181C; --body:#4A5762; --line:#E3E7EA; --mist:#F5F7F8; --white:#fff;
  --maxw:1200px; --ease:cubic-bezier(.22,.61,.36,1);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:"Archivo",system-ui,sans-serif;color:var(--body);background:var(--white);font-size:17px;line-height:1.6;font-variation-settings:"wdth" 100;overflow-x:hidden}
h1,h2,h3,h4,.num{font-weight:800;color:var(--ink);line-height:1.06;letter-spacing:-.028em}
a{color:inherit;text-decoration:none}
img,svg{display:block;max-width:100%}
:focus-visible{outline:2.5px solid var(--gold);outline-offset:3px;border-radius:3px}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px}
@media(max-width:640px){.wrap{padding:0 20px}}

/* ---------- brand ---------- */
.brandmark{display:inline-flex;align-items:center;gap:10px;color:var(--navy)}
.brandmark .glyph{display:block;color:currentColor;flex:none}
.brandmark .wordmark{font-weight:800;letter-spacing:-.035em;color:currentColor;line-height:1;white-space:nowrap}
.brandmark .stop{color:var(--gold)}
.on-dark .brandmark,.on-dark.brandmark{color:#fff}

/* ---------- nav ---------- */
.nav{position:fixed;top:0;left:0;right:0;z-index:60;transition:background .3s var(--ease),box-shadow .3s var(--ease),border-color .3s}
.nav-in{display:flex;align-items:center;gap:30px;height:72px;border-bottom:1px solid transparent}
.nav.solid{background:rgba(255,255,255,.92);backdrop-filter:saturate(180%) blur(14px)}
.nav.solid .nav-in{border-bottom-color:var(--line)}
.nav.solid .brandmark{color:var(--navy)}
.nav.solid .links a{color:var(--ink)}
.nav.solid .ghost{border-color:rgba(18,24,28,.28);color:var(--ink)}
.links{margin-left:auto;display:flex;align-items:center;gap:28px}
.links>*+*{margin-left:0}
@supports not (gap:1px){.links>*+*{margin-left:28px}}
.links a{color:rgba(255,255,255,.86);font-size:14.5px;font-weight:600;position:relative;transition:color .2s}
.links a:not(.ghost):after{content:"";position:absolute;left:0;bottom:-5px;width:0;height:2px;background:var(--gold);transition:width .25s var(--ease)}
.links a:not(.ghost):hover:after{width:100%}
.ghost{border:1.5px solid rgba(255,255,255,.4);color:#fff!important;padding:8px 17px;border-radius:999px;font-weight:700;transition:background .2s,border-color .2s}
.ghost:hover{background:var(--gold);border-color:var(--gold);color:var(--navy-deep)!important}
@media(max-width:820px){.links a:not(.ghost){display:none}}

/* ---------- hero ---------- */
.hero{position:relative;background:var(--navy-deep);color:#fff;overflow:hidden;padding:150px 0 96px}
.hero:before{content:"";position:absolute;inset:0;background:
  radial-gradient(900px 520px at 78% 8%,rgba(184,163,85,.20),transparent 62%),
  radial-gradient(700px 500px at 8% 92%,rgba(22,96,130,.55),transparent 65%),
  linear-gradient(165deg,var(--navy) 0%,var(--navy-deep) 52%,var(--navy-ink) 100%)}
.hero:after{content:"";position:absolute;inset:0;opacity:.05;pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.5) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.5) 1px,transparent 1px);
  background-size:76px 76px;mask-image:radial-gradient(70% 60% at 50% 40%,#000,transparent)}
.hero .wrap{position:relative;z-index:2;display:grid;grid-template-columns:1.06fr .94fr;gap:60px;align-items:center}
@media(max-width:980px){.hero{padding:126px 0 72px}.hero .wrap{grid-template-columns:1fr;gap:44px}}
.eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:11.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-lt);margin-bottom:22px}
.eyebrow:before{content:"";width:26px;height:1.5px;background:var(--gold)}
h1.display{font-size:clamp(40px,6.1vw,74px);color:#fff;letter-spacing:-.04em}
h1.display .fade{color:rgba(255,255,255,.42)}
h1.display .gold{color:var(--gold-lt)}
.hero p.lede{margin-top:24px;font-size:clamp(17px,1.7vw,20px);color:rgba(255,255,255,.74);max-width:35em;line-height:1.55}
.cta-row{margin-top:36px;display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.btn{display:inline-flex;align-items:center;gap:9px;padding:14px 26px;border-radius:999px;font-weight:700;font-size:15px;transition:transform .2s var(--ease),box-shadow .2s,background .2s}
.btn-gold{background:var(--gold);color:var(--navy-ink);box-shadow:0 8px 24px rgba(184,163,85,.3)}
.btn-gold:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(184,163,85,.42)}
.btn-line{border:1.5px solid rgba(255,255,255,.34);color:#fff}
.btn-line:hover{background:rgba(255,255,255,.09);transform:translateY(-2px)}
.btn-dark{background:var(--navy);color:#fff}
.btn-dark:hover{background:var(--navy-deep);transform:translateY(-2px)}
.arrow{transition:transform .25s var(--ease)}
.btn:hover .arrow{transform:translateX(4px)}

/* ---------- signature: consolidation panel ---------- */
.panel{background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.13);border-radius:18px;padding:22px;backdrop-filter:blur(8px);box-shadow:0 30px 70px rgba(0,0,0,.34)}
.panel-hd{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
.panel-hd .t{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.5);font-weight:700}
.live{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:var(--gold-lt);font-weight:700}
.live i{width:6px;height:6px;border-radius:50%;background:var(--gold);animation:pulse 2.4s infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.28}}
.biz{display:flex;align-items:center;gap:12px;padding:11px 13px;border-radius:11px;background:rgba(255,255,255,.045);margin-bottom:8px;border:1px solid rgba(255,255,255,.06);animation:slidein .6s var(--ease) backwards}
.biz:nth-child(2){animation-delay:.15s}.biz:nth-child(3){animation-delay:.3s}
.biz:nth-child(4){animation-delay:.45s}.biz:nth-child(5){animation-delay:.6s}
.biz .nm{margin-left:2px}
@keyframes slidein{from{opacity:0;transform:translateX(-14px)}}
.biz .dot{width:8px;height:8px;border-radius:50%;flex:none}
.biz .nm{font-size:13.5px;color:rgba(255,255,255,.9);font-weight:600}
.biz .amt{margin-left:auto;font-size:13.5px;font-weight:700;color:#fff;font-variant-numeric:tabular-nums}
.total{margin-top:14px;padding-top:16px;border-top:1px dashed rgba(255,255,255,.2);display:flex;align-items:flex-end;justify-content:space-between}
.total .lab{font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.55);font-weight:700}
.total .big{font-size:clamp(28px,3.6vw,40px);font-weight:800;color:#fff;letter-spacing:-.035em;font-variant-numeric:tabular-nums;line-height:1}
.total .big span{color:var(--gold-lt);font-size:.52em;margin-right:6px;letter-spacing:0}

/* ---------- marquee strip ---------- */
.strip{background:var(--navy-ink);color:rgba(255,255,255,.5);padding:15px 0;overflow:hidden;white-space:nowrap;border-top:1px solid rgba(255,255,255,.07)}
.strip .track{display:inline-flex;gap:46px;animation:march 34s linear infinite;font-size:12.5px;letter-spacing:.15em;text-transform:uppercase;font-weight:600}
.strip b{color:var(--gold);font-weight:700}
@keyframes march{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.strip .track{animation:none}.biz{animation:none;opacity:1;transform:none}}

/* ---------- sections ---------- */
section.band{padding:110px 0}
section.band.tight{padding:88px 0}
.mist{background:var(--mist)}
.sec-lab{font-size:11.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-dk);margin-bottom:16px;display:flex;align-items:center;gap:10px}
.sec-lab:before{content:"";width:22px;height:1.5px;background:var(--gold)}
h2.sec{font-size:clamp(30px,4.1vw,50px)}
.sec-sub{margin-top:18px;font-size:18px;max-width:40em;color:var(--body)}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}

/* ---------- problem/solution split ---------- */
.split{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-top:52px;border:1px solid var(--line);border-radius:18px;overflow:hidden}
@media(max-width:860px){.split{grid-template-columns:1fr}}
.split>div{padding:38px 34px}
.split .before{background:var(--mist);border-right:1px solid var(--line)}
.split h3{font-size:19px;margin-bottom:6px}
.split .tagline{font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;margin-bottom:20px}
.before .tagline{color:#A0755E}
.after .tagline{color:var(--gold-dk)}
.tick{display:flex;gap:12px;padding:9px 0;font-size:15.5px;align-items:flex-start}
.tick svg{flex:none;margin-top:3px}
.after .tick{color:var(--ink);font-weight:500}

/* ---------- products ---------- */
.prods{margin-top:56px;display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
@media(max-width:860px){.prods{grid-template-columns:1fr}}
.prod{position:relative;display:block;padding:34px 32px 30px;border-radius:18px;background:#fff;border:1px solid var(--line);overflow:hidden;transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s}
.prod:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--gold);transform:scaleY(0);transform-origin:top;transition:transform .35s var(--ease)}
.prod:hover{transform:translateY(-5px);box-shadow:0 24px 48px rgba(7,38,52,.13);border-color:#cfd8dd}
.prod:hover:before{transform:scaleY(1)}
.prod .kind{font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-dk)}
.prod h3{font-size:27px;margin:9px 0 0;display:flex;align-items:center;gap:11px;flex-wrap:wrap}
.tagpill{font-size:11px;font-weight:700;letter-spacing:.05em;padding:4px 11px;border-radius:999px;background:var(--mist);color:var(--navy);border:1px solid var(--line);text-transform:uppercase}
.tagpill.live{background:rgba(184,163,85,.14);border-color:rgba(184,163,85,.4);color:var(--gold-dk)}
.prod p{margin-top:13px;font-size:15.5px;line-height:1.6}
.prod .more{margin-top:20px;display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:14.5px;color:var(--navy)}
.prod .more .arrow{color:var(--gold-dk)}

/* ---------- pricing ---------- */
.plans{margin-top:52px;display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:start}
@media(max-width:900px){.plans{grid-template-columns:1fr}}
.plan{border:1px solid var(--line);border-radius:18px;padding:32px 28px;background:#fff;position:relative;transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.plan:hover{transform:translateY(-4px);box-shadow:0 20px 44px rgba(7,38,52,.11)}
.plan.feature{background:linear-gradient(168deg,var(--navy) 0%,var(--navy-deep) 100%);border-color:transparent;color:rgba(255,255,255,.8);box-shadow:0 24px 54px rgba(7,38,52,.28)}
.plan.feature h3,.plan.feature .price{color:#fff}
.plan .badge{position:absolute;top:-11px;right:26px;background:var(--gold);color:var(--navy-ink);font-size:10.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;padding:5px 13px;border-radius:999px}
.plan h3{font-size:15px;letter-spacing:.14em;text-transform:uppercase;font-weight:700}
.price{margin-top:16px;font-size:42px;font-weight:800;letter-spacing:-.04em;color:var(--ink);line-height:1}
.price sup{font-size:16px;font-weight:700;vertical-align:super;margin-right:3px;letter-spacing:0}
.price em{font-style:normal;font-size:14.5px;font-weight:600;color:var(--body);letter-spacing:0}
.plan.feature .price em{color:rgba(255,255,255,.62)}
.plan ul{list-style:none;margin-top:24px;border-top:1px solid var(--line);padding-top:20px}
.plan.feature ul{border-top-color:rgba(255,255,255,.16)}
.plan li{display:flex;gap:11px;padding:7px 0;font-size:14.8px;align-items:flex-start}
.plan li svg{flex:none;margin-top:4px}
.addon{margin-top:34px;padding:22px 26px;border:1px dashed var(--line);border-radius:14px;background:var(--white);display:flex;gap:34px;flex-wrap:wrap;justify-content:space-between;align-items:center}
.addon .item b{color:var(--ink);font-weight:800}
.addon .item span{display:block;font-size:13.5px;margin-top:2px}

/* ---------- fee callout ---------- */
.fee{margin-top:22px;display:flex;align-items:center;gap:26px;flex-wrap:wrap;padding:26px 30px;border-radius:16px;background:var(--navy-deep);color:rgba(255,255,255,.75)}
.fee .big{font-size:40px;font-weight:800;color:#fff;letter-spacing:-.04em;line-height:1}
.fee .big span{color:var(--gold-lt);font-size:.5em;margin-right:5px}
.fee p{font-size:15px;max-width:44em}

/* ---------- trust row ---------- */
.trust{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:16px;overflow:hidden;margin-top:52px}
@media(max-width:860px){.trust{grid-template-columns:repeat(2,1fr)}}
.trust>div{background:#fff;padding:28px 24px}
.trust h4{font-size:15.5px;margin-bottom:7px}
.trust p{font-size:14px;line-height:1.55}

/* ---------- CTA ---------- */
.closer{background:var(--navy-ink);color:#fff;padding:104px 0;position:relative;overflow:hidden}
.closer:before{content:"";position:absolute;inset:0;background:radial-gradient(760px 400px at 50% 0%,rgba(184,163,85,.16),transparent 66%)}
.closer .wrap{position:relative;text-align:center}
.closer h2{color:#fff;font-size:clamp(30px,4.4vw,52px)}
.closer p{margin:20px auto 0;color:rgba(255,255,255,.68);max-width:34em;font-size:18px}

/* ---------- footer ---------- */
footer{background:#fff;border-top:1px solid var(--line);padding:60px 0 34px}
.fgrid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:34px}
@media(max-width:860px){.fgrid{grid-template-columns:1fr 1fr}}
footer h5{font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink);margin-bottom:15px;font-weight:800}
footer ul{list-style:none}
footer li{margin:9px 0}
footer a{font-size:14.5px;transition:color .2s}
footer a:hover{color:var(--navy)}
.fbase{margin-top:44px;padding-top:22px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:13.5px}
.fbase a{font-weight:600;color:var(--navy)}

/* ---------- product page ---------- */
.phero{background:linear-gradient(168deg,var(--navy) 0%,var(--navy-deep) 100%);color:#fff;padding:142px 0 78px;position:relative;overflow:hidden}
.phero:after{content:"";position:absolute;inset:0;opacity:.05;background-image:linear-gradient(rgba(255,255,255,.5) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.5) 1px,transparent 1px);background-size:70px 70px;mask-image:radial-gradient(60% 70% at 30% 40%,#000,transparent)}
.phero .wrap{position:relative;z-index:2}
.crumb{font-size:13px;color:rgba(255,255,255,.5);margin-bottom:26px}
.crumb a:hover{color:var(--gold-lt)}
.phero h1{font-size:clamp(34px,5vw,58px);color:#fff}
.phero .lede{margin-top:20px;font-size:18.5px;color:rgba(255,255,255,.75);max-width:40em}
.fgridp{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:52px}
@media(max-width:900px){.fgridp{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.fgridp{grid-template-columns:1fr}}
.fcard{border:1px solid var(--line);border-radius:15px;padding:26px 24px;background:#fff;transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.fcard:hover{transform:translateY(-4px);box-shadow:0 18px 38px rgba(7,38,52,.1)}
.fcard .n{font-size:11.5px;font-weight:800;color:var(--gold-dk);letter-spacing:.1em}
.fcard h3{font-size:17.5px;margin:9px 0 8px}
.fcard p{font-size:14.5px;line-height:1.6}
.why-list{margin-top:44px;border-top:1px solid var(--line)}
.why-row{display:grid;grid-template-columns:.9fr 1.6fr;gap:30px;padding:26px 0;border-bottom:1px solid var(--line);align-items:start}
@media(max-width:760px){.why-row{grid-template-columns:1fr;gap:8px}}
.why-row h4{font-size:19px}
.why-row p{font-size:16px}
.soon{margin-top:40px;display:flex;gap:10px;flex-wrap:wrap}
.soon span{border:1px solid var(--line);background:var(--mist);border-radius:999px;padding:8px 17px;font-size:13.5px;color:var(--ink);font-weight:500}

/* ---------- legal ---------- */
.legal{padding:130px 0 80px;max-width:820px;margin:0 auto}
.legal h1{font-size:clamp(32px,4.6vw,46px)}
.legal .meta{margin-top:12px;font-size:14px;color:var(--body)}
.legal h2{font-size:21px;margin:38px 0 12px}
.legal p,.legal li{font-size:16px;margin-bottom:13px}
.legal ul{padding-left:22px}
.draft{margin:26px 0;padding:18px 22px;border-radius:13px;background:rgba(184,163,85,.11);border:1px solid rgba(184,163,85,.42);border-left-width:5px;font-size:15px;color:#6B5C25}

/* ---------- login ---------- */
.authwrap{min-height:100vh;display:grid;grid-template-columns:1.05fr .95fr}
@media(max-width:900px){.authwrap{grid-template-columns:1fr}.authside{display:none}}
.authside{background:linear-gradient(168deg,var(--navy) 0%,var(--navy-ink) 100%);color:#fff;padding:56px 54px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}
.authside:after{content:"";position:absolute;inset:0;opacity:.06;background-image:linear-gradient(rgba(255,255,255,.5) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.5) 1px,transparent 1px);background-size:70px 70px}
.authside>*{position:relative;z-index:2}
.authside h2{color:#fff;font-size:34px;max-width:12em}
.authside .pts{margin-top:26px;display:flex;flex-direction:column;gap:15px}
.authside .pt{display:flex;gap:12px;font-size:15px;color:rgba(255,255,255,.74);align-items:flex-start}
.authmain{display:flex;align-items:center;justify-content:center;padding:48px 30px;background:#fff}
.authbox{width:min(400px,100%)}
.authbox h1{font-size:29px;margin:26px 0 8px}
.authbox .sub{font-size:15.5px;margin-bottom:28px}
.seg{display:flex;background:var(--mist);border-radius:11px;padding:4px;margin-bottom:20px;border:1px solid var(--line)}
.seg button{flex:1;border:0;background:transparent;padding:10px;border-radius:8px;font:inherit;font-size:14.5px;font-weight:700;color:var(--body);cursor:pointer;transition:background .2s,color .2s}
.seg button.on{background:#fff;color:var(--navy);box-shadow:0 1px 4px rgba(0,0,0,.1)}
.fld{margin-bottom:18px}
.fld label{display:block;font-size:13px;font-weight:700;color:var(--ink);margin-bottom:7px}
.fld input{width:100%;padding:14px 15px;border:1.5px solid var(--line);border-radius:11px;font:inherit;font-size:16px;transition:border-color .2s}
.fld input:focus{border-color:var(--gold);outline:none}
.wide{width:100%;justify-content:center;cursor:pointer;border:0;font:inherit}
.otpbox{display:flex;gap:9px;justify-content:space-between;margin:10px 0}
.otpbox input{width:100%;aspect-ratio:1/1.1;text-align:center;font-size:21px;font-weight:800;border:1.5px solid var(--line);border-radius:11px;font-family:inherit}
.hintbox{margin-top:24px;padding:15px 17px;background:var(--mist);border-radius:12px;font-size:13.5px;line-height:1.55}
.tiny{font-size:12.5px;text-align:center;margin-top:16px;color:var(--body)}
.hidden{display:none!important}

/* ---------- logo switcher (preview only) ---------- */
#lgpick{position:fixed;left:0;right:0;bottom:0;z-index:90;background:rgba(7,25,33,.96);backdrop-filter:blur(10px);color:#fff;border-top:1px solid rgba(255,255,255,.14);padding:12px 20px;display:flex;align-items:center;gap:16px;flex-wrap:wrap;justify-content:center}
#lgpick .lb{font-size:11px;letter-spacing:.17em;text-transform:uppercase;color:var(--gold);font-weight:800}
#lgpick button{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.07);border:1.5px solid rgba(255,255,255,.16);color:#fff;border-radius:999px;padding:8px 15px;font:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}
#lgpick button:hover{background:rgba(255,255,255,.14)}
#lgpick button.on{background:var(--gold);border-color:var(--gold);color:var(--navy-ink);font-weight:800}
#lgpick button svg{color:currentColor}
body.haspick{padding-bottom:70px}
