@font-face{font-family:"General Sans";src:url("/fonts/general-sans-400.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"General Sans";src:url("/fonts/general-sans-500.woff2") format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"General Sans";src:url("/fonts/general-sans-600.woff2") format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"General Sans";src:url("/fonts/general-sans-700.woff2") format("woff2");font-weight:700;font-display:swap}
:root{--ink:#0C0C0D;--ink2:#3E3F45;--ink3:#77787F;--paper:#FFFFFF;--mist:#F3F3F1;--line:rgba(12,12,13,.10);
  --signal:#FFD84A;--signal-soft:#FFF4C7;--signal-ink:#0C0C0D;--good:#1D9A5B;--bad:#D9443B;--night:#0C0C0D;--on-night:#F5F5F3;
  --font:"General Sans","Helvetica Neue",Helvetica,Arial,sans-serif;--max:1240px}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--ink:#F2F2F0;--ink2:#C5C6CC;--ink3:#8D8E96;--paper:#0E0E10;--mist:#17171A;
  --line:rgba(255,255,255,.11);--signal-soft:#3A3214;--good:#3CC584;--bad:#FF6A5F;--night:#060607;color-scheme:dark}}
:root[data-theme="dark"]{--ink:#F2F2F0;--ink2:#C5C6CC;--ink3:#8D8E96;--paper:#0E0E10;--mist:#17171A;--line:rgba(255,255,255,.11);
  --signal-soft:#3A3214;--good:#3CC584;--bad:#FF6A5F;--night:#060607;color-scheme:dark}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:400 17px/1.6 var(--font);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,video{max-width:100%;display:block}
a{color:inherit}
:focus-visible{outline:2px solid var(--signal);outline-offset:3px}
.wrap{max-width:var(--max);margin:0 auto;padding-inline:clamp(16px,4vw,40px)}
h1,h2,h3{margin:0;font-weight:600;text-wrap:balance}
h2{font-size:clamp(32px,4.6vw,58px);line-height:1.03;letter-spacing:-.035em}
h3{font-size:clamp(22px,2.2vw,28px);line-height:1.15;letter-spacing:-.025em}
.label{font:500 15px/1.3 var(--font);color:var(--ink3);display:flex;align-items:center;gap:10px}
.label:before{content:"";width:22px;height:2px;border-radius:2px;background:var(--signal)}
.lede{font-size:clamp(17px,1.5vw,20px);line-height:1.55;color:var(--ink2);max-width:52ch;margin:18px 0 0}
section{padding-block:clamp(72px,9vw,128px)}
section.mist{background:var(--mist)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:54px;padding:0 26px;border-radius:999px;border:0;cursor:pointer;
  font:600 16px/1 var(--font);text-decoration:none;background:var(--ink);color:var(--paper);transition:transform .2s ease;white-space:nowrap}
.btn:hover{transform:translateY(-2px)}
.btn.sig{background:var(--signal);color:var(--signal-ink)}
.btn.line{background:transparent;color:inherit;box-shadow:inset 0 0 0 1.5px currentColor}
.btn svg{width:18px;height:18px}
.hl{background:linear-gradient(transparent 58%,var(--signal) 58%,var(--signal) 92%,transparent 92%);padding:0 .04em}
@supports (animation-timeline: view()){@media (prefers-reduced-motion:no-preference){
  .rv{animation:rv linear both;animation-timeline:view();animation-range:entry 0% entry 45%}
  .zm img{animation:zm linear both;animation-timeline:view();animation-range:entry 0% exit 60%}}}
@keyframes rv{from{opacity:.25;transform:translateY(46px) scale(.98)}to{opacity:1;transform:none}}
@keyframes zm{from{transform:scale(1.12)}to{transform:scale(1)}}
@keyframes rise{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}
/* nav */
.nav{position:absolute;top:env(safe-area-inset-top,0px);left:0;right:0;z-index:20;color:#fff}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:78px;gap:20px}
.brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;font:600 21px/1 var(--font);letter-spacing:-.03em}
.brand svg{width:28px;height:28px}
.nav nav{display:flex;gap:30px;font:500 15px/1 var(--font)}
.nav nav a{text-decoration:none;opacity:.85}
.nav nav a:hover,.nav nav a[aria-current]{opacity:1}
.nav .btn{height:44px;padding:0 20px;font-size:15px}
@media (max-width:880px){.nav nav{display:none}}
/* page hero */
.phero{position:relative;color:#fff;background:#1b1610;overflow:hidden}
.phero picture,.phero .shade{position:absolute;inset:0}
.phero picture img{width:100%;height:100%;object-fit:cover}
.phero .shade{background:linear-gradient(90deg,rgba(10,8,6,.88) 0%,rgba(10,8,6,.62) 45%,rgba(10,8,6,.12) 80%),linear-gradient(0deg,rgba(10,8,6,.55) 0%,rgba(10,8,6,0) 50%)}
.phero .inner{position:relative;padding-top:clamp(132px,15vw,190px);padding-bottom:clamp(72px,9vw,120px)}
.phero .inner>*{animation:rise .9s cubic-bezier(.2,.7,.2,1) both}
.phero .inner>*:nth-child(2){animation-delay:.07s}.phero .inner>*:nth-child(3){animation-delay:.14s}.phero .inner>*:nth-child(4){animation-delay:.21s}.phero .inner>*:nth-child(5){animation-delay:.28s}
.crumbs{font:500 14px/1 var(--font);color:rgba(255,255,255,.66);display:flex;gap:8px;flex-wrap:wrap}
.crumbs a{text-decoration:none;color:rgba(255,255,255,.82)}
.phero h1{font-size:clamp(42px,6.4vw,92px);line-height:.98;letter-spacing:-.045em;max-width:14ch;margin-top:22px}
.phero .sub{font-size:clamp(18px,1.6vw,21px);line-height:1.5;color:rgba(255,255,255,.86);max-width:44ch;margin:24px 0 0}
.phero .ctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}
.phero .btn.line{color:#fff}
/* short answer card (made to be quoted) */
.answer{position:relative;margin-top:-56px;z-index:2;background:var(--paper);border:1px solid var(--line);border-radius:24px;padding:clamp(24px,3.4vw,40px);
  box-shadow:0 40px 90px -50px rgba(12,12,13,.45);display:grid;grid-template-columns:auto minmax(0,1fr);gap:clamp(16px,3vw,34px);align-items:start}
.answer .tag{font:600 13px/1 var(--font);background:var(--signal);color:#0C0C0D;padding:9px 12px;border-radius:999px;white-space:nowrap}
.answer p{margin:0;font-size:clamp(18px,1.7vw,22px);line-height:1.5;letter-spacing:-.01em}
@media (max-width:700px){.answer{grid-template-columns:1fr;margin-top:-40px}}
/* split */
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,80px);align-items:center}
.split.flip .photo{order:2}
.photo{position:relative;border-radius:20px;overflow:hidden;aspect-ratio:4/3.4;background:#d9d6d0}
.photo img{width:100%;height:100%;object-fit:cover}
.photo figcaption{position:absolute;left:14px;bottom:14px;font:500 12.5px/1 var(--font);color:#fff;background:rgba(12,12,13,.55);padding:7px 10px;border-radius:99px;backdrop-filter:blur(6px)}
.split p{color:var(--ink2);max-width:52ch}
@media (max-width:900px){.split{grid-template-columns:1fr}.split.flip .photo{order:0}}
/* steps */
.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:44px;counter-reset:st}
.step{border:1px solid var(--line);border-radius:22px;padding:28px;background:var(--paper);position:relative}
.step:before{counter-increment:st;content:counter(st);display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:var(--signal);color:#0C0C0D;font:700 20px/1 var(--font)}
.step .when{position:absolute;top:30px;right:26px;font:600 13px/1 var(--font);color:var(--ink3)}
.step h3{margin-top:22px}
.step p{color:var(--ink2);margin:12px 0 0}
.step ul{margin:14px 0 0;padding:0;list-style:none;display:grid;gap:8px;color:var(--ink2);font-size:15.5px}
.step li{display:grid;grid-template-columns:20px minmax(0,1fr);gap:8px}
.step li svg{width:18px;height:18px;margin-top:3px;color:var(--good)}
@media (max-width:900px){.steps{grid-template-columns:1fr}}
/* five sources */
.five{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:40px}
.src{border-radius:20px;background:var(--mist);padding:22px;min-height:190px;display:flex;flex-direction:column;gap:10px}
section.mist .src{background:var(--paper)}
.src .n{font:700 13px/1 var(--font);color:var(--ink3)}
.src h3{font-size:20px}
.src p{margin:0;color:var(--ink2);font-size:15px;line-height:1.5}
.src .lgs{display:flex;gap:10px;flex-wrap:wrap;margin-top:auto;color:var(--ink3);font-size:13px}
@media (max-width:1100px){.five{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:620px){.five{grid-template-columns:1fr}}
/* stats */
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:44px}
.stat{border-top:2px solid var(--ink);padding-top:18px}
.stat b{display:block;font:600 clamp(44px,5vw,68px)/1 var(--font);letter-spacing:-.05em}
.stat b em{font-style:normal;color:var(--ink3);font-size:.5em;letter-spacing:-.02em}
.stat p{margin:10px 0 0;color:var(--ink2);font-size:15.5px;max-width:26ch}
@media (max-width:900px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* bars */
.bars2{display:grid;gap:14px;margin-top:34px}
.bar{display:grid;grid-template-columns:160px minmax(0,1fr) 64px;gap:14px;align-items:center;font-size:15.5px}
.bar .t{display:block;height:18px;border-radius:99px;background:var(--mist);overflow:hidden}
.bar .t i{display:block;height:100%;border-radius:99px;background:var(--ink);transform-origin:0 50%}
.bar .t i.y{background:var(--signal)}
.bar b{text-align:right;font-variant-numeric:tabular-nums}
@media (max-width:620px){.bar{grid-template-columns:110px minmax(0,1fr) 52px;font-size:14px}}
/* prose */
.layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:clamp(28px,5vw,80px);align-items:start}
.toc{position:sticky;top:28px;display:grid;gap:4px;font-size:14.5px}
.toc b{font-weight:600;font-size:13px;color:var(--ink3);margin-bottom:8px}
.toc a{text-decoration:none;color:var(--ink2);padding:6px 0;border-left:2px solid var(--line);padding-left:14px}
.toc a:hover{color:var(--ink);border-color:var(--signal)}
@media (max-width:980px){.layout{grid-template-columns:1fr}.toc{position:static}}
.prose{max-width:72ch}
.prose h2{font-size:clamp(28px,3.4vw,42px);margin:64px 0 18px;scroll-margin-top:24px}
.prose h2:first-child{margin-top:0}
.prose h3{font-size:22px;margin:34px 0 10px}
.prose p,.prose li{color:var(--ink2);font-size:18px;line-height:1.7}
.prose ol,.prose ul{padding-left:22px}
.prose li{margin:8px 0}
.prose strong{color:var(--ink);font-weight:600}
.prose .note{background:var(--signal-soft);border-radius:16px;padding:18px 22px;margin:26px 0;color:var(--ink)}
.prose table{width:100%;border-collapse:collapse;margin:24px 0;font-size:15.5px}
.prose th,.prose td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--line);vertical-align:top}
.prose th{font-weight:600;color:var(--ink3);font-size:14px}
.prose figure{margin:34px 0}
.prose figure img{border-radius:18px;width:100%}
.prose figcaption{font-size:14px;color:var(--ink3);margin-top:10px}
.meta{font-size:14.5px;color:var(--ink3);margin-top:22px}
/* cards */
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:40px}
.card{border:1px solid var(--line);border-radius:22px;padding:26px;background:var(--paper);display:flex;flex-direction:column;gap:12px;text-decoration:none}
a.card{transition:transform .2s ease,box-shadow .2s ease}
a.card:hover{transform:translateY(-3px);box-shadow:0 30px 60px -40px rgba(12,12,13,.5)}
.card .ph{border-radius:14px;overflow:hidden;aspect-ratio:16/10;margin:-8px -8px 6px}
.card .ph img{width:100%;height:100%;object-fit:cover}
.card p{margin:0;color:var(--ink2);font-size:15.5px}
.card .go{margin-top:auto;display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:15px}
.card .go svg{width:16px;height:16px}
@media (max-width:900px){.cards{grid-template-columns:1fr}}
/* question chips */
.qs{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}
.qs span{background:var(--paper);border:1px solid var(--line);border-radius:999px;padding:12px 18px;font-size:16px}
section.mist .qs span{background:var(--paper)}
/* answer mock */
.mock{border-radius:22px;background:#212121;color:#ECECEC;padding:24px;box-shadow:0 50px 100px -50px rgba(0,0,0,.6);max-width:520px}
.mock .q{margin-left:auto;max-width:86%;background:#323232;border-radius:20px;padding:12px 16px;font-size:15.5px;width:fit-content}
.mock .a{margin-top:16px;font-size:15.5px;line-height:1.55}
.mock ol{margin:10px 0 0;padding-left:20px}
.mock li{margin:8px 0}
.mock li b{color:#fff}
.mock .you{margin-top:12px;border:1.5px dashed #5A5A5E;border-radius:14px;padding:10px 14px;color:#A3A4AB;font-size:14.5px}
.mock .src{all:unset;display:block;font-size:12.5px;color:#8A8B92;margin-top:14px}
/* plans */
.plans{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:40px}
.plan{border:1px solid var(--line);border-radius:24px;padding:clamp(24px,3vw,36px);display:flex;flex-direction:column;gap:18px;background:var(--paper)}
.plan.dark{background:var(--night);color:var(--on-night);border-color:var(--night)}
.plan .k{font:600 14px/1 var(--font);color:var(--ink3)}
.plan.dark .k{color:var(--signal)}
.plan h3{font-size:30px}
.amt{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.amt b{font:600 clamp(48px,5.4vw,68px)/1 var(--font);letter-spacing:-.05em}
.amt span{font-size:15.5px;opacity:.75}
.plan ul{list-style:none;margin:0;padding:0;display:grid;gap:11px;font-size:16px}
.plan li{display:grid;grid-template-columns:22px minmax(0,1fr);gap:8px;align-items:start}
.plan li svg{width:18px;height:18px;margin-top:3px;color:var(--good)}
.plan.dark li svg{color:var(--signal)}
.plan .btn{margin-top:auto}
.plan.dark .btn{background:var(--signal);color:var(--signal-ink)}
.terms{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:16px}
.terms div{background:var(--mist);border-radius:20px;padding:22px}
.terms b{display:block;font-size:17px;font-weight:600}
.terms p{margin:6px 0 0;color:var(--ink2);font-size:15px}
@media (max-width:900px){.plans,.terms{grid-template-columns:1fr}}
/* calculator */
.roi{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,72px);align-items:center;background:var(--night);color:var(--on-night);border-radius:28px;padding:clamp(26px,5vw,60px);margin-top:60px}
@media (max-width:900px){.roi{grid-template-columns:1fr}}
/* faq */
.faq{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(28px,5vw,80px)}
.faq details{border-top:1px solid var(--line);padding-block:22px}
.faq details:last-child{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;list-style:none;font:600 20px/1.3 var(--font);letter-spacing:-.02em;display:flex;justify-content:space-between;gap:18px}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:"";flex:none;width:11px;height:11px;margin-top:6px;border-right:2px solid var(--ink3);border-bottom:2px solid var(--ink3);transform:rotate(45deg);transition:transform .2s}
.faq details[open] summary:after{transform:rotate(225deg)}
.faq details p{color:var(--ink2);margin:12px 0 0;max-width:62ch}
@media (max-width:900px){.faq{grid-template-columns:1fr}}
/* cta band */
.band{position:relative;color:#fff;background:#0b1020;overflow:hidden;padding-block:clamp(80px,10vw,140px)}
.band img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.band .dim{position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,8,16,.92),rgba(6,8,16,.6) 55%,rgba(6,8,16,.25))}
.band .wrap{position:relative}
.band h2{max-width:14ch}
.band p{color:rgba(255,255,255,.8);max-width:46ch;font-size:19px;margin:18px 0 30px}
.cmp2 td.us,.cmp2 th:nth-child(2){background:var(--signal-soft)}
.cmp2 td:first-child{font-weight:500;color:var(--ink2)}
.hlb{display:inline-block;background:var(--signal);color:#0C0C0D;padding:.02em .12em .06em;border-radius:.1em;line-height:1;transform:rotate(-1.5deg)}
