/* Sub-pages: hero, evidence, pricing, company, trust/prose, credits, solutions. */
.page-hero{padding-top:clamp(40px,6vw,90px)}
.ph{font-family:var(--display);font-size:clamp(3rem,8vw,6.6rem);line-height:.95;letter-spacing:-.005em}
.page-hero .lede{font-size:clamp(1.15rem,1.6vw,1.45rem);max-width:44ch}
.page-cta{margin-top:clamp(80px,9vw,130px)}
.page-cta .pilot{gap:20px;align-items:flex-start}
.napper-svg{width:100%;height:auto;display:block}
.access .letter svg{width:100%;height:auto}
.nf{width:clamp(160px,18vw,260px);margin:0 auto 20px}.nf svg{width:100%;height:auto}

/* evidence */
.ev{margin-top:clamp(28px,3vw,44px)}
.ev-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(32px,5vw,80px);align-items:start}
.cite-tv .set{padding:12px 12px 46px;border-radius:30px;background:var(--tomato);position:relative;box-shadow:var(--clay),var(--lift)}
.cite-tv .screen{position:relative;aspect-ratio:16/9;border-radius:20px;overflow:hidden;background:#0d1512}
.claims{list-style:none;margin:26px 0 0;padding:0;display:grid;gap:10px;counter-reset:c}
.claims li{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;padding:14px 16px;border-radius:18px;background:var(--paper);box-shadow:inset 0 -4px 0 rgba(60,40,15,.07);cursor:pointer;transition:transform .35s var(--spring),background .2s}
.claims li:hover{transform:translateY(-2px)}
.claims li.on{background:var(--butter)}
.claims time{font:700 .82rem var(--body);color:var(--ink-2);padding-top:3px;font-variant-numeric:tabular-nums}
.claims li b{font-weight:600;line-height:1.35}
.claims li small{grid-column:2;color:var(--ink-2);font-weight:600}
.sheet{position:relative;width:100%;background:#fff;border-radius:10px;box-shadow:var(--lift);overflow:hidden}
.sheet .inner{position:absolute;left:0;top:0;width:1920px;height:1080px;transform-origin:0 0}
.src-note{margin-top:16px;color:var(--ink-2)}
.src-note a{text-decoration:underline}
@media (max-width:900px){.ev-grid{grid-template-columns:1fr}}

/* pricing */
.billing{display:inline-flex;gap:6px;padding:6px;border-radius:18px;background:var(--putty-2);box-shadow:inset 0 3px 6px rgba(60,40,15,.1);margin:10px 0 30px}
.billing button{font:600 .98rem var(--body);height:42px;padding:0 20px;border:0;border-radius:13px;background:none;color:var(--ink-2);cursor:pointer;transition:background .2s,transform .3s var(--spring)}
.billing button[aria-pressed=true]{background:var(--ink);color:var(--paper);box-shadow:inset 0 -3px 0 rgba(0,0,0,.35)}
.billing em{font-style:normal;color:var(--green);font-weight:700;margin-left:6px}
.billing button[aria-pressed=true] em{color:var(--mint)}
.plans{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,1.8vw,24px)}
.plan{display:flex;flex-direction:column;gap:14px;padding:clamp(22px,2.2vw,32px);border-radius:28px;background:var(--c);box-shadow:var(--clay),var(--lift);transition:transform .4s var(--spring)}
.plan:hover{transform:translateY(-6px) rotate(-.4deg)}
.plan.pop{transform:translateY(-8px)}
.plan h3{font-family:var(--display);font-weight:400;font-size:1.7rem}
.plan .amt{display:flex;align-items:baseline;gap:8px}
.plan .amt b{font-family:var(--display);font-weight:400;font-size:clamp(2.2rem,3.6vw,3.2rem);line-height:1}
.plan .amt span{color:var(--ink-2);font-weight:600}
.plan .sub{color:var(--ink-2);font-weight:600;min-height:3em}
.plan ul{list-style:none;margin:6px 0 10px;padding:0;display:grid;gap:10px;flex:1}
.plan li{display:flex;gap:10px;align-items:flex-start;font-weight:500;line-height:1.35}
.plan li::before{content:"";flex:0 0 14px;height:14px;margin-top:4px;border-radius:5px;background:var(--green);box-shadow:inset 0 -2px 0 rgba(0,0,0,.25)}
.plan .btn{align-self:stretch}
.beta-note{margin-top:22px;color:var(--ink-2)}
@media (max-width:1080px){.plans{grid-template-columns:repeat(2,minmax(0,1fr))}.plan.pop{transform:none}}
@media (max-width:620px){.plans{grid-template-columns:1fr}}

/* about */
.about{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,6vw,100px);align-items:center;margin-top:clamp(30px,4vw,60px)}
.about-art svg{width:100%;height:auto}
.about .name{font-size:clamp(2.2rem,4vw,3.6rem)}
.about .role{color:var(--green-deep);font-weight:700;font-size:1.15rem;margin:6px 0 18px}
.about p{color:var(--ink-2);font-size:1.12rem;max-width:56ch;margin-top:12px;font-weight:500}
.facts{display:flex;flex-wrap:wrap;gap:12px 36px;margin:28px 0 0}
.facts div{display:grid;gap:2px}.facts dt{font-weight:700;font-size:.85rem;color:var(--ink-2);text-transform:uppercase;letter-spacing:.08em}.facts dd{margin:0;font-weight:600}
.facts a{text-decoration:underline;text-underline-offset:3px}
@media (max-width:860px){.about{grid-template-columns:1fr}.about-art{max-width:280px}}

/* prose (trust, legal, credits) */
.prose-wrap{display:grid;grid-template-columns:minmax(0,220px) minmax(0,1fr);gap:clamp(30px,5vw,80px);margin-top:clamp(50px,6vw,90px);align-items:start}
.page-hero + .prose-wrap,.page-hero + section.prose-wrap{margin-top:clamp(30px,4vw,60px)}
.toc{position:sticky;top:100px;display:grid;gap:8px;font-weight:600}
.toc b{font-size:.85rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-2);margin-bottom:4px}
.toc a{color:var(--ink-2);text-decoration:none}.toc a:hover{color:var(--ink)}
.prose{max-width:70ch;grid-column:2}
.prose:only-child,.prose-wrap > .prose:first-child{grid-column:1/-1}
.prose h2{font-family:var(--display);font-size:clamp(1.7rem,2.6vw,2.3rem);line-height:1.05;margin:2em 0 .5em;scroll-margin-top:100px}
.prose h2:first-child{margin-top:0}
.prose p,.prose li{color:var(--ink-2);font-size:1.08rem;font-weight:500;margin-top:.8em}
.prose p b,.prose li b{color:var(--ink)}
.prose ul{padding-left:1.2em}.prose a{color:var(--green-deep);text-decoration:underline;text-underline-offset:3px}
@media (max-width:860px){.prose-wrap{grid-template-columns:1fr}.toc{position:static}.prose{grid-column:1}}

/* solutions */
.sol{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(30px,5vw,80px);align-items:center;margin-top:clamp(30px,4vw,60px)}
.sol-art svg{width:100%;height:auto;overflow:visible}
.sol-points{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.sol-points li{display:grid;gap:6px;padding:22px 26px;border-radius:24px;background:var(--paper);box-shadow:var(--clay),var(--lift)}
.sol-points b{font-family:var(--display);font-weight:400;font-size:1.5rem}
.sol-points span{color:var(--ink-2);font-weight:500}
@media (max-width:860px){.sol{grid-template-columns:1fr}.sol-art{max-width:360px}}
