:root{
  --ink:#0B1220; --green:#10B981; --deep:#0A9D6C; --slate:#2B2F3A;
  --mint:#F3FBF7; --mintb:#CDE9DC; --muted:#6B7280; --line:#E9EDEB;
  --amber:#E0A400; --red:#E5484D; --maxw:1120px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Poppins',system-ui,sans-serif;color:var(--ink);background:#fff;line-height:1.5;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}
section{position:relative}
.eyebrow{font-weight:600;font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--deep)}
h2.title{font-weight:700;font-size:clamp(28px,4vw,42px);letter-spacing:-1px;line-height:1.12}
.lead{font-size:17px;color:var(--muted);line-height:1.6}
.btn{display:inline-block;font-weight:600;font-size:15px;padding:13px 22px;border-radius:12px;transition:.15s}
.btn.primary{background:var(--green);color:#fff}
.btn.primary:hover{background:var(--deep)}
.btn.ghost{border:1.5px solid var(--ink);color:var(--ink)}
.btn.ghost:hover{background:var(--ink);color:#fff}
.btn.light{background:#fff;color:var(--ink)}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}
.reveal.in{opacity:1;transform:none}

/* NAV — transparent at top, solid on scroll */
nav{position:fixed;top:0;left:0;right:0;z-index:50;background:transparent;border-bottom:1px solid transparent;transition:background .25s ease,border-color .25s ease,box-shadow .25s ease}
nav.scrolled{background:rgba(255,255,255,.85);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);box-shadow:0 4px 20px rgba(11,18,32,.05)}
nav .wrap{display:flex;align-items:center;justify-content:space-between;height:66px}
nav img{height:26px;display:block}
.navlinks{display:flex;gap:28px;align-items:center;font-size:14.5px;font-weight:500;color:var(--slate)}
.navlinks a:hover{color:var(--ink)}
.navcta{display:flex;align-items:center;gap:18px}
.navcta .signin{color:var(--muted);font-weight:500;font-size:14.5px}
.navcta .signin:hover{color:var(--ink)}
@media(max-width:820px){.navlinks{display:none}.navcta .signin{display:none}}

/* HERO */
.hero{background:linear-gradient(180deg,var(--mint),#fff);padding:120px 0 48px;overflow:hidden;min-height:100vh;display:flex;align-items:center}
.hero .wrap{width:100%}
.hero .grid{display:grid;grid-template-columns:1.05fr .95fr;gap:50px;align-items:center}
.hero h1{font-weight:700;font-size:clamp(38px,5.4vw,60px);line-height:1.04;letter-spacing:-1.8px;margin:16px 0 20px}
.hero .lead{max-width:520px}
.hcta{display:flex;gap:14px;margin:28px 0 22px;flex-wrap:wrap}
.ticks{display:flex;gap:20px;flex-wrap:wrap;font-size:13px;color:var(--slate);font-weight:500}
.ticks span{display:flex;align-items:center;gap:7px}
.ticks .d{width:16px;height:16px;border-radius:50%;background:var(--mint);border:1px solid var(--mintb);color:var(--deep);font-size:9px;font-weight:800;display:flex;align-items:center;justify-content:center}
.herologos{margin-top:56px;padding-top:34px;border-top:1px solid var(--line)}
.herologos .lbl{font-size:11.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);text-align:center;margin-bottom:20px}
.hlrow{display:flex;gap:34px;justify-content:center;align-items:center;flex-wrap:wrap}
.hlogo{height:46px;min-width:104px;padding:0 14px;display:flex;align-items:center;justify-content:center;text-align:center;color:var(--slate);font-weight:700;font-size:12.5px;letter-spacing:.01em;border:1px dashed var(--mintb);border-radius:10px;background:var(--mint)}
@media(max-width:820px){.hero{min-height:auto;padding:96px 0 40px}.hero .grid{grid-template-columns:1fr;gap:38px}.hlrow{gap:18px}}

/* review card (signature) */
.frame{background:var(--ink);border-radius:26px;padding:14px;box-shadow:0 30px 70px rgba(11,18,32,.28)}
.card{background:#fff;border-radius:16px;overflow:hidden;position:relative}
.card .ch{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--line)}
.card .ch .t{font-weight:600;font-size:13.5px}
.card .ch .badge{font-size:10.5px;font-weight:700;color:var(--deep);background:var(--mint);border:1px solid var(--mintb);border-radius:20px;padding:3px 10px}
.rows{padding:8px 0;position:relative}
.row{display:flex;align-items:center;justify-content:space-between;padding:11px 18px;font-size:13px}
.row .l{color:var(--slate)}
.row .l b{color:var(--ink);font-weight:600}
.pill{font-size:10.5px;font-weight:700;padding:3px 10px;border-radius:20px;opacity:0;transform:translateX(6px);transition:.35s}
.row.done .pill{opacity:1;transform:none}
.pill.ok{background:#E7F6EF;color:#0A6E4A} .pill.chk{background:#FBF1DC;color:#8A5A00} .pill.flag{background:#FBE7E7;color:#A32D2D}
.scan{position:absolute;left:0;right:0;height:44px;top:0;background:linear-gradient(180deg,rgba(16,185,129,0),rgba(16,185,129,.16));border-bottom:2px solid var(--green);opacity:0;pointer-events:none}
.scanning .scan{animation:scan 3s ease-in-out}
@keyframes scan{0%{opacity:1;top:0}92%{opacity:1}100%{opacity:0;top:calc(100% - 44px)}}
.card .cf{border-top:1px solid var(--line);padding:13px 18px;display:flex;align-items:center;gap:9px;font-size:12.5px;color:var(--slate)}
.card .cf b{color:var(--ink)}
.cf .dot{width:9px;height:9px;border-radius:50%;background:var(--green)}

/* STAT STRIP */
.stats{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}
.stats .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
.stat{padding:30px 22px;text-align:center;border-right:1px solid var(--line)}
.stat:last-child{border-right:none}
.stat .n{font-weight:700;font-size:30px;letter-spacing:-1px;color:var(--ink)}
.stat .l{font-size:12.5px;color:var(--muted);margin-top:5px;line-height:1.35}
@media(max-width:820px){.stats .wrap{grid-template-columns:1fr 1fr}.stat:nth-child(2){border-right:none}.stat{border-bottom:1px solid var(--line)}}

/* generic section spacing */
.sec{padding:84px 0}
.center{text-align:center;max-width:680px;margin:0 auto}

/* PROBLEM */
.problem{background:var(--mint)}
.bigfig{font-weight:700;font-size:clamp(52px,8vw,88px);color:var(--deep);letter-spacing:-3px;line-height:1}

/* HOW */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:44px}
.step{background:#fff;border:1px solid var(--line);border-radius:18px;padding:26px 24px}
.step .num{width:40px;height:40px;border-radius:12px;background:var(--ink);color:#fff;font-weight:700;font-size:17px;display:flex;align-items:center;justify-content:center;margin-bottom:16px}
.step h3{font-size:18px;font-weight:600;margin-bottom:7px}
.step p{font-size:14px;color:var(--muted);line-height:1.55}
@media(max-width:820px){.steps{grid-template-columns:1fr}}

/* DARK SCENE */
.dark{background:var(--ink);color:#fff}
.dark .eyebrow{color:#5FE3B4}
.dark h2.title{color:#fff}
.dark .lead{color:#AEB8B5}
.legend{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px}
.leg{display:flex;align-items:center;gap:9px;font-size:13.5px;color:#DDE4E1;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.09);padding:9px 15px;border-radius:12px}
.leg .c{width:11px;height:11px;border-radius:50%}
.hr{height:1px;background:rgba(255,255,255,.12);margin:48px 0}
.chips{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.chip{font-weight:600;font-size:14px;color:#fff;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:11px 18px}
.chip small{display:block;font-weight:400;font-size:11px;color:#8FA09B;margin-top:2px}

/* ASSURANCE */
.assure{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:44px}
.acard{border:1px solid var(--line);border-radius:16px;padding:24px 22px;background:#fff}
.acard .ic{width:42px;height:42px;border-radius:12px;background:var(--mint);border:1px solid var(--mintb);display:flex;align-items:center;justify-content:center;margin-bottom:15px;font-size:19px}
.acard h3{font-size:15.5px;font-weight:600;margin-bottom:6px}
.acard p{font-size:13px;color:var(--muted);line-height:1.5}
@media(max-width:820px){.assure{grid-template-columns:1fr 1fr}}

/* FOUNDER */
.founder .grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}
.founder .quote{font-family:'Poppins';font-weight:500;font-size:clamp(22px,3vw,30px);line-height:1.35;letter-spacing:-.5px}
.founder .who{margin-top:22px;color:#AEB8B5;font-size:14px}
.founder .who b{color:#fff}
.fcard{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:30px}
.fcard .k{font-size:12px;color:#8FA09B;text-transform:uppercase;letter-spacing:.1em;font-weight:600}
.fcard .big{font-weight:700;font-size:40px;letter-spacing:-1px;margin:6px 0 2px}
@media(max-width:820px){.founder .grid{grid-template-columns:1fr;gap:32px}}

/* TESTIMONIAL */
.testi{background:var(--mint)}
.tquote{font-weight:500;font-size:clamp(22px,3.2vw,32px);line-height:1.4;letter-spacing:-.5px;color:var(--ink)}
.tphold{color:var(--muted);font-style:italic}
.twho{margin-top:22px;font-size:14px;color:var(--muted)}

/* FIRMS BAR */
.firms{text-align:center;padding:56px 0;border-top:1px solid var(--line)}
.firms p{font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.frow{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;margin-top:24px}
.fpill{border:1px dashed var(--mintb);border-radius:12px;padding:14px 24px;color:var(--muted);font-size:13px;background:var(--mint)}

/* FINAL CTA */
.final{background:var(--ink);text-align:center;padding:90px 0}
.final h2{font-weight:700;font-size:clamp(32px,5vw,50px);color:#fff;letter-spacing:-1.4px;line-height:1.1}
.final p{color:#AEB8B5;font-size:16px;margin:16px auto 30px;max-width:520px}
.final .sub-link{display:block;margin-top:18px;font-size:13.5px;color:#8FA09B}
.final .sub-link a{color:#AEB8B5;text-decoration:underline;text-underline-offset:3px}
.final .sub-link a:hover{color:#fff}

/* FOOTER */
footer{background:#070C16;color:#9AA6A2;padding:52px 0 30px;font-size:13.5px}
.fgrid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:30px;padding-bottom:34px;border-bottom:1px solid rgba(255,255,255,.09)}
.fwm{font-weight:700;font-size:20px;color:#fff}
.fwm span{color:var(--green)}
footer h4{color:#fff;font-size:12px;letter-spacing:.08em;text-transform:uppercase;margin-bottom:14px}
footer a{display:block;margin-bottom:9px;color:#9AA6A2}
footer a:hover{color:#fff}
.fbot{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding-top:22px;font-size:11.5px;color:#6C7671;line-height:1.6}
@media(max-width:820px){.fgrid{grid-template-columns:1fr}}

/* SUBPAGE HEADER + PROSE (added for interior pages) */
.pagehead{background:linear-gradient(180deg,var(--mint),#fff);padding:120px 0 20px}
.pagehead h1{font-weight:700;font-size:clamp(32px,5vw,54px);letter-spacing:-1.6px;line-height:1.05;margin:14px 0 18px}
.pagehead .lead{max-width:600px}
.prose{max-width:720px}
.prose p{font-size:16.5px;color:var(--muted);line-height:1.7;margin-bottom:18px}
.prose h3{font-size:20px;font-weight:600;color:var(--ink);margin:30px 0 10px}
.prose b{color:var(--ink)}

/* PRICING */
.pricing{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:44px;align-items:stretch}
.pcard{border:1px solid var(--line);border-radius:18px;padding:30px 26px;background:#fff;display:flex;flex-direction:column}
.pcard.feature{border:2px solid var(--green);position:relative}
.pcard .tag{position:absolute;top:-12px;left:26px;background:var(--green);color:#fff;font-size:11px;font-weight:700;letter-spacing:.04em;padding:4px 12px;border-radius:20px}
.pcard .pname{font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--deep)}
.pcard .price{font-weight:700;font-size:44px;letter-spacing:-1.5px;margin:14px 0 2px;line-height:1}
.pcard .price small{font-size:15px;font-weight:500;color:var(--muted);letter-spacing:0}
.pcard .punit{font-size:13.5px;color:var(--muted);margin-bottom:22px}
.pcard ul{list-style:none;margin:0 0 24px;padding:0;flex:1}
.pcard li{font-size:14px;color:var(--slate);padding:8px 0 8px 26px;position:relative;line-height:1.45}
.pcard li:before{content:"✓";position:absolute;left:0;color:var(--green);font-weight:800;font-size:13px}
.pcard .btn{text-align:center}
.pricenote{text-align:center;font-size:13px;color:var(--muted);margin:30px auto 0;max-width:660px;line-height:1.6}
@media(max-width:820px){.pricing{grid-template-columns:1fr}}
