
/* ═══ Native Tongue token layer (brand-v3, ratified 2026-07-02) ═══
   Scoped to this page: overrides the shared tokens AFTER injection.
   The other sites keep the shipped system. */
:root{
  --limewash:#F2EDE2; --chalk:#FAFAF7; --charcoal:#23201A; --driftwood:#423F38;
  --spruce:#1C3A38; --seaglass:#93A89F; --terracotta:#C9573C; --terracotta-ink:#A8442E;
  /* remap the shared plumbing (nav, footer, reveal) into the new materials */
  --forest:var(--spruce); --fr:28,58,56;
  --parchment:var(--limewash); --pr:242,237,226;
  --white:var(--chalk); --wr:250,250,247;
  --gold:var(--terracotta-ink); --gr:168,68,46;
  --slate:var(--driftwood); --stone:var(--seaglass); --sr:147,168,159;
  --dark:var(--charcoal); --dr:35,32,26;
  --heading:'Fraunces',Georgia,serif;
  --body:'DM Sans',-apple-system,sans-serif;
  --mono:'DM Mono',ui-monospace,monospace;
}
@media (prefers-color-scheme: dark){
  :root{
    --limewash:#15201D; --chalk:#1C2A26; --charcoal:#ECE6D9; --driftwood:#CFC8BA;
    --parchment:var(--limewash); --pr:21,32,29;
    --white:var(--chalk);
    --dark:var(--charcoal); --slate:var(--driftwood);
    --forest:#ECE3D4;
  }
}

/* ═══ base ═══ */
body{background:var(--limewash);color:var(--driftwood);font-family:var(--body);font-size:17px;line-height:1.65}
h1,h2,h3{font-family:var(--heading);font-variation-settings:'opsz' 96,'SOFT' 0,'WONK' 0;color:var(--charcoal);letter-spacing:-0.01em;text-wrap:balance}
section{padding:104px 52px 88px}
.inner{max-width:1080px;margin:0 auto}

/* the mono eyebrow: sea-glass ground-rule above a lowercase mono label */
.nt-label{display:block;margin-bottom:26px;font-family:var(--mono);font-size:0.72rem;font-weight:500;letter-spacing:0.12em;color:var(--driftwood);opacity:0.85}
.nt-label::before{content:'';display:block;width:28px;height:2px;background:var(--seaglass);margin-bottom:14px}

/* actions: one terracotta act per page; everything else is quiet */
.btn-act{display:inline-block;font-family:var(--body);font-weight:600;font-size:0.95rem;letter-spacing:0.01em;background:var(--terracotta-ink);color:#F6F1E7;padding:16px 34px;border-radius:999px;text-decoration:none;transition:transform .25s ease,background .25s ease}
.btn-act:hover{transform:translateY(-1px);background:#963C28}
.link-quiet{font-family:var(--body);font-weight:500;font-size:0.95rem;color:var(--charcoal);text-decoration:none;border-bottom:1px solid rgba(35,32,26,0.3);padding-bottom:2px;transition:border-color .25s}
.link-quiet:hover{border-color:var(--charcoal)}
.link-mono{font-family:var(--mono);font-size:0.8rem;color:var(--charcoal);text-decoration:none;border-bottom:1px solid rgba(35,32,26,0.3);padding-bottom:2px}
.link-mono:hover{border-color:var(--charcoal)}

/* ═══ nav, composite choreography ═══
   Desktop: chrome is earned by interest - the nav is veiled at the top and
   arrives on first scroll (focus-within keeps it reachable by keyboard).
   Mobile: the nav is a basecamp bar at the bottom, thumb-native. */
.nav{display:flex;align-items:center;justify-content:space-between;padding:20px 52px}
.nav .wordmark{display:flex;align-items:center;gap:12px;text-decoration:none}
.nav .wordmark img{width:30px;height:30px;display:block}
.nav .wordmark .wm-text{font-family:var(--body);font-weight:500;font-size:1.02rem;letter-spacing:0.02em;color:var(--charcoal);text-transform:lowercase}
.nav:not(.solid){background:transparent}
.nav:not(.solid)::before{display:none}
.nav:not(.solid) .nav-links a{color:var(--driftwood);text-shadow:none}
.nav .cta-link{background:transparent;border:1px solid rgba(35,32,26,0.35);color:var(--charcoal);border-radius:999px;padding:9px 20px}
.nav.solid .nav-links a.cta-link{background:transparent;border:1px solid rgba(35,32,26,0.35);color:var(--charcoal)}
.nav{opacity:0;transform:translateY(-12px);pointer-events:none}
.nav.solid,.nav:focus-within{opacity:1;transform:none;pointer-events:auto}
.nav:focus-within:not(.solid){background:rgba(242,237,226,0.94);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}

.basecamp{display:none;position:fixed;bottom:0;left:0;right:0;z-index:1000;align-items:center;justify-content:space-between;padding:12px 24px;background:rgba(242,237,226,0.92);backdrop-filter:blur(18px) saturate(1.2);-webkit-backdrop-filter:blur(18px) saturate(1.2);border-top:1px solid rgba(35,32,26,0.14)}
.basecamp .wordmark{display:flex;align-items:center;gap:11px;text-decoration:none}
.basecamp .wordmark img{width:26px;height:26px;display:block}
.basecamp .wordmark .wm-text{font-family:var(--body);font-weight:500;font-size:0.98rem;letter-spacing:0.02em;color:var(--charcoal);text-transform:lowercase}
.basecamp .burger{display:flex;cursor:pointer;flex-direction:column;gap:6px}
.basecamp .burger span{background:var(--charcoal);width:26px;height:1.5px}
.basecamp .nav-links{display:none}
.basecamp .nav-links.show{display:flex;position:absolute;top:auto;bottom:100%;left:0;right:0;background:rgba(242,237,226,0.97);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);flex-direction:column;padding:28px 24px;gap:20px;border-top:1px solid rgba(35,32,26,0.1)}
.basecamp .nav-links.show a{color:var(--driftwood);text-shadow:none}
.basecamp .nav-links.show a.cta-link{background:transparent;border:1px solid rgba(35,32,26,0.35);color:var(--charcoal);border-radius:999px;padding:9px 20px;align-self:flex-start}

@media (max-width:1040px){
  .nav{display:none}
  .basecamp{display:flex}
  body{padding-bottom:72px}
}
@media (prefers-color-scheme: dark){
  .nav:focus-within:not(.solid){background:rgba(21,32,29,0.94)}
  .basecamp{background:rgba(21,32,29,0.92);border-top-color:rgba(236,230,217,0.16)}
  .basecamp .nav-links.show{background:rgba(21,32,29,0.97)}
  .basecamp .nav-links.show a.cta-link{border-color:rgba(236,230,217,0.4)}
}

/* ═══ the greeting: the sorting sentence alone, no chrome ═══ */
.greet{min-height:100svh;display:flex;flex-direction:column;justify-content:center;padding:0 52px;position:relative}
.greet .g-inner{width:100%}
.greet p{font-family:var(--heading);font-variation-settings:'opsz' 96,'SOFT' 0,'WONK' 0;font-size:clamp(1.9rem,3.7vw,3rem);line-height:1.32;font-weight:500;color:var(--charcoal);max-width:24ch}
.greet p::before{content:'';display:block;width:28px;height:2px;background:var(--seaglass);margin-bottom:30px}
.greet .cue{position:absolute;bottom:40px;left:50%;width:1.5px;height:56px;background:var(--seaglass);transform-origin:top}
@media (prefers-reduced-motion: no-preference){
  .greet .cue{animation:cue 2.6s cubic-bezier(.45,0,.55,1) infinite}
  @keyframes cue{0%,100%{transform:scaleY(.45)}50%{transform:scaleY(1)}}
}
/* the sorting sentence rotates: one line per visit, chosen + faded in by JS.
   Hidden only when JS is present, so no-JS visitors keep the hardcoded line. */
.js .greet p{opacity:0}
.js .greet p.shown{opacity:1}
@media (prefers-reduced-motion: no-preference){
  .js .greet p{transition:opacity .85s cubic-bezier(.45,0,.55,1)}
}

/* ═══ hero: oversized, arrives mid-thought on the scroll ═══ */
.nt-hero{min-height:82vh;display:flex;align-items:flex-start;padding:44px 52px 90px;background:var(--limewash)}
.nt-hero h1{font-size:clamp(2.3rem,5vw,4.2rem);line-height:1.08;font-weight:560;max-width:26ch;color:var(--charcoal);letter-spacing:-0.015em}
.nt-hero .ai-voice{font-family:var(--mono);font-weight:500;font-size:0.82em;letter-spacing:0.01em}
.nt-hero .wild-voice{font-style:italic;font-variation-settings:'opsz' 144,'SOFT' 0,'WONK' 0}
.nt-hero h1 .l1,.nt-hero h1 .l2{display:block;text-wrap:balance}
.nt-hero h1 .l2{margin-top:0.5em}
.nt-hero .sub{font-size:1.18rem;line-height:1.6;max-width:34em;margin:34px 0 40px;color:var(--driftwood)}
.nt-hero .acts{display:flex;align-items:center;gap:30px;flex-wrap:wrap}

/* ═══ sorter ═══ */
.sorter{padding:34px 52px;border-top:1px solid rgba(35,32,26,0.12);border-bottom:1px solid rgba(35,32,26,0.12)}
.sorter p{font-family:var(--mono);font-size:0.92rem;letter-spacing:0.02em;color:var(--charcoal);text-align:center}

/* ═══ felt ═══ */
.felt .lines{font-size:1.35rem;line-height:1.55;font-family:var(--heading);font-variation-settings:'opsz' 40;color:var(--charcoal);max-width:30em}
.felt .cta{margin-top:30px}

/* ═══ statement band: everything left over ═══
   The horizontal figure is gone: the page line itself carries the argument
   through this band. The caption becomes the statement. */
.leftover{background:var(--spruce);padding:110px 52px}
.leftover .nt-label{color:rgba(242,237,226,0.75)}
.leftover .big{font-family:var(--heading);font-variation-settings:'opsz' 96,'SOFT' 0,'WONK' 0;font-size:clamp(1.8rem,3.6vw,2.9rem);line-height:1.28;font-weight:530;color:#F2EDE2;max-width:20ch;margin:6px 0}
.leftover .cta{margin-top:30px}
.leftover .link-mono{color:#F2EDE2;border-color:rgba(242,237,226,0.35)}
.leftover .link-mono:hover{border-color:#F2EDE2}

/* ═══ the turn ═══ */
.turn .mark{width:120px;margin-bottom:34px}
.turn p{font-size:1.14rem;max-width:36em;color:var(--driftwood)}
.turn .cta{margin-top:26px}

/* ═══ where you are: the doors as terrain, not cards ═══
   Stages as places along the route, the trail underneath. The line breaks
   terracotta as this section appears; each door is a station on it. */
.route{position:relative;background:linear-gradient(rgba(242,237,226,0.95),rgba(242,237,226,0.9) 55%,rgba(242,237,226,0.97)),url('assets/photos/trail-scurve-toward-peak.jpg') center/cover no-repeat}
.route .station{max-width:30em;padding:6px 0}
.route .frame{max-width:34em;margin-bottom:72px}
.route .frame p{font-size:1.15rem;line-height:1.55;color:var(--charcoal);margin-bottom:16px}
.route .frame strong{font-weight:600}
.route .station+.station{margin-top:76px}
.route .station h3{font-size:1.5rem;font-weight:560;margin-bottom:10px}
.route .station p{font-size:1rem;color:var(--driftwood);margin-bottom:14px}
.route .s2{margin-left:min(7vw,84px)}
.route .s3{margin-left:min(14vw,168px)}
.route .quiet-line{margin-top:84px;font-size:0.98rem;color:var(--driftwood)}

/* ═══ inside ═══ */
.inside{background:var(--chalk)}
.inside p{font-size:1.14rem;max-width:36em;color:var(--driftwood)}
.inside .cta{margin-top:26px}

/* ═══ founders ═══ */
.people .split{display:grid;grid-template-columns:1.05fr 1fr;gap:60px;align-items:center}
.people img{width:100%;height:460px;object-fit:cover;display:block}
.people p{font-size:1.08rem;color:var(--driftwood)}
.people .cta{margin-top:24px}

/* ═══ frequency ═══ */
.freq p.stand{font-size:1.08rem;color:var(--driftwood);margin-bottom:26px}
.freq .essays{display:flex;flex-direction:column;gap:14px;margin-bottom:30px}
.freq .essays a{display:flex;gap:22px;align-items:baseline;text-decoration:none}
.freq .essays .t{font-family:var(--heading);font-size:1.3rem;color:var(--charcoal);border-bottom:1px solid transparent;transition:border-color .25s}
.freq .essays a:hover .t{border-color:var(--charcoal)}
.freq .essays .d{font-family:var(--mono);font-size:0.75rem;color:var(--driftwood);opacity:0.8;white-space:nowrap}
.freq .acts{display:flex;gap:28px;align-items:center}

/* ═══ ground photo band ═══ */
.ground{padding:0;font-size:0;line-height:0}
.ground img{width:100%;height:64vh;object-fit:cover;display:block}

/* ═══ close ═══ */
.close-band{background:var(--spruce);padding:130px 52px;text-align:center}
.close-band h2{font-size:clamp(2.2rem,4.5vw,3.6rem);color:#F2EDE2;font-weight:540;margin-bottom:36px}
.close-band .acts{display:flex;gap:30px;justify-content:center}
.close-band .link-quiet{color:#F2EDE2;border-color:rgba(242,237,226,0.35)}
.close-band .link-quiet:hover{border-color:#F2EDE2}

/* ═══ V2: the page draws the turn (structure session 2026-07-02) ═══ */
/* the whole page hangs off the line: content is anchored right of the rail */
.inner{max-width:860px;margin:0 0 0 clamp(72px,11vw,170px)}
.people .inner{max-width:1000px}
.people img{height:400px}
.close-band{text-align:left}
.close-band .acts{justify-content:flex-start}

/* the page line: one life, one line, drawn as you scroll.
   stasis = the calm boring sine (us, conserving energy);
   the W = the mark's frequency, terracotta, at the practice;
   the trail = meandering authored travel, never a flatline;
   grounding = the gradient into seaglass (joining the relationships). */
.pageline{position:absolute;top:0;left:0;right:0;z-index:40;pointer-events:none}
.pageline svg{overflow:visible}
.pl-steady{stroke:var(--seaglass);opacity:0.6}
.pl-break{stroke:var(--terracotta)}
.pl-trail,.pl-dash{stroke:var(--seaglass);opacity:0.9}
.pl-trailg{opacity:0.9}
.pageline .g0{stop-color:var(--seaglass)}
.pageline .g1{stop-color:var(--seaglass)}
.pl-node{fill:var(--terracotta);opacity:0;transition:opacity .6s ease .15s}
.pl-node.on{opacity:1}

.skip{position:fixed;top:12px;left:12px;z-index:2000;background:var(--charcoal);color:var(--limewash);padding:10px 18px;border-radius:6px;font-family:var(--body);font-size:.9rem;font-weight:500;text-decoration:none;transform:translateY(-250%);transition:transform .2s}
.skip:focus{transform:none}

/* variant switcher: session scaffolding, not shipped design */
.vswitch{position:fixed;bottom:14px;right:14px;z-index:1500;font-family:var(--mono);font-size:.68rem;letter-spacing:.06em;background:rgba(250,250,247,.85);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(35,32,26,.18);border-radius:999px;padding:7px 14px;display:flex;gap:12px}
.vswitch a{color:var(--driftwood);text-decoration:none}
.vswitch a:hover{color:var(--charcoal)}
.vswitch a[aria-current]{color:var(--terracotta-ink);font-weight:500}
@media (max-width:1040px){
  /* keep the session chip clear of the basecamp bar */
  .vswitch{bottom:86px}
}
@media (prefers-color-scheme: dark){
  .vswitch{background:rgba(28,42,38,.85);border-color:rgba(236,230,217,.2)}
  .route{background:linear-gradient(rgba(21,32,29,0.95),rgba(21,32,29,0.92) 55%,rgba(21,32,29,0.97)),url('assets/photos/trail-scurve-toward-peak.jpg') center/cover no-repeat}
}

/* ═══ responsive ═══ */
@media (max-width:900px){
  section{padding:72px 24px 60px}
  .nt-hero{padding:130px 24px 60px;min-height:70vh}
  .sorter{padding:26px 24px}
  .inner{margin:0 0 0 36px;max-width:none}
  .people .split{grid-template-columns:1fr;gap:34px}
  .people img{height:320px}
  .nav{padding:16px 24px}
  .leftover{padding:80px 24px}
  .close-band{padding:90px 24px}
  .ground img{height:44vh}
  .route .s2,.route .s3{margin-left:0}
}

/* ── prototype-only chrome ── */
.proto{position:sticky;top:0;z-index:99;background:#23201A;color:#F2EDE2;font-family:var(--mono);font-size:.72rem;letter-spacing:.08em;padding:9px 20px;display:flex;gap:18px;align-items:center;flex-wrap:wrap}
.proto b{color:#C9573C;font-weight:500}
.proto a{color:#F2EDE2;text-decoration:none;border-bottom:1px solid rgba(242,237,226,.35);padding-bottom:1px;cursor:pointer}
.proto a.on{color:#C9573C;border-color:#C9573C}
.nt-hero h1.plain{font-variation-settings:'opsz' 144,'SOFT' 0,'WONK' 0;font-weight:520;font-size:clamp(2.2rem,4.6vw,3.9rem);max-width:22ch}
.nt-hero h1.plain em{font-style:italic}
.nt-hero [data-hero]{display:none}.nt-hero [data-hero].on{display:block}
.moves .move{max-width:36em;padding:34px 0;border-top:1px solid rgba(35,32,26,.12)}
.moves .move:last-of-type{border-bottom:1px solid rgba(35,32,26,.12)}
.moves .move h3{font-size:1.55rem;font-weight:560;margin-bottom:10px}
.moves .move p{font-size:1.05rem;color:var(--driftwood)}
.moves .n{font-family:var(--mono);font-size:.72rem;letter-spacing:.12em;color:var(--seaglass);display:block;margin-bottom:8px}
.compare{background:var(--chalk)}
.compare .lines{font-size:1.3rem;line-height:1.55;font-family:var(--heading);font-variation-settings:'opsz' 40;color:var(--charcoal);max-width:32em}
.compare .after{max-width:36em;margin-top:26px;font-size:1.08rem;color:var(--driftwood)}
.route .station h3{max-width:20ch;text-wrap:balance}
@media (prefers-color-scheme: dark){.moves .move{border-color:rgba(236,230,217,.14)}}

/* ── v2 bands ── */
.nt-hero{min-height:0;padding:120px 52px 70px}
.nt-hero h1.plain{max-width:20ch}
.nt-hero .sub{max-width:38em}
.trust{padding:0 52px 70px;background:var(--limewash)}
.trust .inner{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;border-top:1px solid rgba(35,32,26,.12);padding-top:26px}
.trust p{font-size:.92rem;color:var(--driftwood);margin:0;padding-left:16px;border-left:2px solid var(--seaglass)}
.get{background:var(--chalk)}
.get .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:44px}
.get h3{font-size:1.5rem;font-weight:560;margin-bottom:12px;text-wrap:balance}
.get .k{font-family:var(--mono);font-size:.72rem;letter-spacing:.12em;color:var(--terracotta-ink);display:block;margin-bottom:12px}
.get p{font-size:1rem;color:var(--driftwood)}
.diff .lead{font-size:1.15rem;color:var(--charcoal);max-width:36em;margin-bottom:40px}
.diff table{width:100%;border-collapse:collapse;font-size:.98rem}
.diff th,.diff td{text-align:left;vertical-align:top;padding:16px 18px 16px 0;border-bottom:1px solid rgba(35,32,26,.12)}
.diff th{font-family:var(--mono);font-size:.72rem;letter-spacing:.12em;font-weight:500;color:var(--driftwood);padding-bottom:12px}
.diff td:first-child{font-weight:600;color:var(--charcoal);width:22%}
.diff td.us{color:var(--charcoal);font-weight:500}
.diff th.us{color:var(--terracotta-ink)}
.diff .wrap{overflow-x:auto}
.steps .grid{display:grid;grid-template-columns:repeat(4,1fr);gap:36px}
.steps .n{font-family:var(--mono);font-size:.72rem;letter-spacing:.12em;color:var(--seaglass);display:block;margin-bottom:10px}
.steps h3{font-size:1.3rem;font-weight:560;margin-bottom:8px}
.steps .t{font-family:var(--mono);font-size:.74rem;color:var(--driftwood);display:block;margin-bottom:10px}
.steps p{font-size:.98rem;color:var(--driftwood)}
.steps .rule{margin-top:44px;font-size:1rem;color:var(--charcoal)}
.route .frame{margin-bottom:56px}
.route .station .out{font-size:.98rem;color:var(--charcoal);margin-bottom:6px}
.co{padding:40px 52px;background:var(--limewash)}
.co p{font-family:var(--mono);font-size:.74rem;letter-spacing:.08em;color:var(--driftwood);text-align:center;margin:0}
@media (max-width:900px){.trust .inner,.get .grid,.steps .grid{grid-template-columns:1fr}}
@media (prefers-color-scheme: dark){.trust .inner,.diff th,.diff td{border-color:rgba(236,230,217,.14)}}

/* ── v3: the OIT type system ── */
:root{--heading:'Newsreader',Georgia,serif;--body:'IBM Plex Sans',-apple-system,sans-serif;--mono:'IBM Plex Mono',ui-monospace,monospace}
h1,h2,h3,.greet p,.felt .lines,.compare .lines{font-variation-settings:'opsz' 72;letter-spacing:-0.005em}
.nt-hero h1.plain{font-variation-settings:'opsz' 72;font-weight:500;letter-spacing:-0.01em;line-height:1.06}
body{font-size:16.5px}
.nt-label,.get .k,.steps .n,.steps .t,.diff th,.co p,.proto{letter-spacing:.1em}
/* ── one path, three scales ── */
.path{background:var(--limewash)}
.path .lead{font-size:1.2rem;line-height:1.55;color:var(--charcoal);max-width:36em;margin-bottom:14px}
.path .lead2{font-size:1.02rem;color:var(--driftwood);max-width:38em;margin-bottom:56px}
.path .scales{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid rgba(35,32,26,.14)}
.path .scale{padding:34px 34px 34px 0;position:relative}
.path .scale+.scale{padding-left:34px;border-left:1px solid rgba(35,32,26,.14)}
.path .step{font-family:var(--mono);font-size:.72rem;letter-spacing:.12em;color:var(--seaglass);display:block;margin-bottom:14px}
.path h3{font-size:1.45rem;font-weight:500;margin-bottom:10px}
.path .what{font-size:.98rem;color:var(--driftwood);margin-bottom:16px}
.path .wild{font-size:.95rem;color:var(--charcoal);padding-top:14px;border-top:1px dashed rgba(35,32,26,.2)}
.path .wild b{font-family:var(--mono);font-weight:500;font-size:.7rem;letter-spacing:.12em;color:var(--terracotta-ink);display:block;margin-bottom:6px}
.path .scale a{display:inline-block;margin-top:18px}
.path .quiet-line{margin-top:44px;font-size:.98rem;color:var(--driftwood);max-width:40em}
@media (max-width:900px){.path .scales{grid-template-columns:1fr}.path .scale+.scale{padding-left:0;border-left:0;border-top:1px solid rgba(35,32,26,.14)}}
@media (prefers-color-scheme: dark){.path .scales,.path .scale+.scale,.path .wild{border-color:rgba(236,230,217,.16)}}

.nt-hero .quiet{font-size:.95rem;color:var(--driftwood);max-width:38em;margin-top:26px}
.nt-hero .quiet a{color:var(--charcoal)}
.grow{background:var(--chalk)}
.grow .lead{font-size:1.3rem;line-height:1.5;font-family:var(--heading);font-variation-settings:'opsz' 40;color:var(--charcoal);max-width:30em;margin-bottom:48px}
.grow .grid{display:grid;grid-template-columns:repeat(2,1fr);gap:36px 56px;max-width:56em}
.grow h3{font-size:1.35rem;font-weight:500;margin-bottom:8px}
.grow p{font-size:.98rem;color:var(--driftwood)}
.grow .close{margin-top:48px;font-size:1.05rem;color:var(--charcoal)}
@media (max-width:900px){.grow .grid{grid-template-columns:1fr}}

/* ── v5: tells removed, contrast fixed, measure capped ── */
:root{--faint:#5E5A50}
body{letter-spacing:0}
p,li,td,.nt-hero .sub,.nt-hero .quiet{letter-spacing:0;max-width:62ch}
.nt-label{font-family:var(--mono);font-size:.78rem;font-weight:500;letter-spacing:.04em;text-transform:none;color:var(--faint);opacity:1}
.nt-label::before{background:var(--seaglass)}
.proto{letter-spacing:.02em}
.nt-hero .inner{display:grid;grid-template-columns:1.25fr .75fr;gap:56px;align-items:center}
.nt-hero .fig{width:100%;max-width:420px;justify-self:end}
.nt-hero .quiet{color:var(--faint)}
.trust .inner{gap:40px;padding-top:22px}
.trust p{border-left:0;padding-left:0;color:var(--charcoal);font-size:.95rem;max-width:none}
.you{background:var(--chalk)}
.you .top{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:end;margin-bottom:56px}
.you h2{font-size:clamp(2rem,3.6vw,3rem);font-weight:500;line-height:1.08;margin-bottom:18px}
.you .top p{font-size:1.1rem;color:var(--driftwood)}
.you .fig{width:100%;max-width:520px}
.you .gets{display:grid;grid-template-columns:repeat(2,1fr);gap:28px 56px;max-width:60em}
.you .gets h3{font-size:1.25rem;font-weight:500;margin-bottom:6px}
.you .gets p{font-size:.98rem;color:var(--driftwood)}
.you .gets .t{display:block;font-family:var(--mono);font-size:.78rem;color:var(--faint);margin-bottom:8px}
.you .next{margin-top:64px;padding-top:36px;border-top:1px solid rgba(35,32,26,.14);max-width:60em}
.you .next h3{font-size:1.15rem;font-weight:500;margin-bottom:22px;color:var(--charcoal)}
.you .next .row{display:grid;grid-template-columns:1fr 1fr;gap:48px}
.you .next h4{font-family:var(--heading);font-size:1.35rem;font-weight:500;margin-bottom:6px}
.you .next p{font-size:.98rem;color:var(--driftwood);margin-bottom:10px}
.grow .lead{max-width:34em}
.how .step{display:grid;grid-template-columns:14rem 1fr;gap:32px;padding:26px 0;border-top:1px solid rgba(35,32,26,.14);max-width:60em}
.how .step:last-of-type{border-bottom:1px solid rgba(35,32,26,.14)}
.how .step h3{font-size:1.3rem;font-weight:500;margin-bottom:4px}
.how .step .t{font-family:var(--mono);font-size:.78rem;color:var(--faint)}
.how .step p{font-size:1rem;color:var(--driftwood);margin:0}
.how .rule{margin-top:34px;font-size:1rem;color:var(--charcoal)}
.diff th{color:var(--faint);letter-spacing:.03em;font-size:.8rem;text-transform:none}
.diff td{color:var(--driftwood)}
.who p{font-size:1.08rem;color:var(--driftwood);max-width:60ch}
.who p+p{margin-top:16px}
.who .cta{margin-top:26px}
@media (max-width:900px){.nt-hero .inner,.you .top,.you .gets,.you .next .row{grid-template-columns:1fr}.nt-hero .fig{display:none}.how .step{grid-template-columns:1fr;gap:8px}}
@media (prefers-color-scheme: dark){:root{--faint:#B9B1A2}.you .next,.how .step{border-color:rgba(236,230,217,.16)}}

/* ── v6 ── */
.nt-hero .inner{grid-template-columns:1fr;max-width:1080px}
.nt-hero h1.plain{max-width:18ch}
.nt-hero .micro{font-family:var(--mono);font-size:.78rem;color:var(--faint);margin-top:12px}
.seq .intro{font-size:1.1rem;color:var(--driftwood);max-width:60ch;margin-bottom:44px}
.seq .group{font-family:var(--heading);font-size:1.25rem;color:var(--charcoal);margin:44px 0 6px;max-width:60ch}
.seq .item{display:grid;grid-template-columns:15rem 1fr;gap:28px;padding:26px 0;border-top:1px solid rgba(35,32,26,.14);max-width:64em}
.seq .item:last-of-type{border-bottom:1px solid rgba(35,32,26,.14)}
.seq .item h3{font-size:1.35rem;font-weight:500;margin-bottom:6px}
.seq .item .t{font-family:var(--mono);font-size:.78rem;color:var(--faint);display:block}
.seq .item p{font-size:1rem;color:var(--driftwood);margin:0 0 8px}
.seq .item p b{font-weight:600;color:var(--charcoal)}
.seq .item .act{margin-top:12px}
.seq .next{margin-top:56px;max-width:64em}
.seq .next h3{font-family:var(--heading);font-size:1.25rem;font-weight:500;margin-bottom:20px}
.seq .next .row{display:grid;grid-template-columns:1fr 1fr;gap:48px}
.seq .next h4{font-family:var(--heading);font-size:1.3rem;font-weight:500;margin-bottom:6px}
.seq .next p{font-size:.98rem;color:var(--driftwood);margin-bottom:10px}
.diff2 .lead{font-size:1.15rem;color:var(--charcoal);max-width:60ch;margin-bottom:36px}
.diff2 .opt{display:grid;grid-template-columns:15rem 1fr;gap:28px;padding:20px 0;border-top:1px solid rgba(35,32,26,.14);max-width:64em}
.diff2 .opt:last-of-type{border-bottom:1px solid rgba(35,32,26,.14)}
.diff2 .opt h3{font-size:1.15rem;font-weight:500}
.diff2 .opt p{font-size:1rem;color:var(--driftwood);margin:0}
.diff2 .qs{margin-top:64px;max-width:64em}
.diff2 .qs h3{font-family:var(--heading);font-size:1.5rem;font-weight:500;margin-bottom:8px;max-width:30ch}
.diff2 .qs .sub{font-size:1.02rem;color:var(--driftwood);max-width:60ch;margin-bottom:28px}
.diff2 .q{display:grid;grid-template-columns:1fr 1fr;gap:28px;padding:18px 0;border-top:1px solid rgba(35,32,26,.14)}
.diff2 .q:last-of-type{border-bottom:1px solid rgba(35,32,26,.14)}
.diff2 .q .ask{font-family:var(--heading);font-size:1.2rem;color:var(--charcoal)}
.diff2 .q .ans{font-size:1rem;color:var(--driftwood)}
.diff2 .q .ans b{color:var(--charcoal);font-weight:600}
.tech{background:var(--chalk)}
.tech .lead{font-size:1.1rem;color:var(--driftwood);max-width:60ch;margin-bottom:22px}
.tech button{font-family:var(--body);font-size:.95rem;font-weight:500;color:var(--charcoal);background:none;border:1px solid rgba(35,32,26,.35);border-radius:999px;padding:12px 22px;cursor:pointer}
.tech button:hover{border-color:var(--charcoal)}
.tech .body{display:none;margin-top:36px;max-width:64em}
.tech .body.on{display:block}
.tech .body .row{display:grid;grid-template-columns:15rem 1fr;gap:28px;padding:18px 0;border-top:1px solid rgba(35,32,26,.14)}
.tech .body .row:last-of-type{border-bottom:1px solid rgba(35,32,26,.14)}
.tech .body h4{font-family:var(--heading);font-size:1.15rem;font-weight:500}
.tech .body p{font-size:.98rem;color:var(--driftwood);margin:0}
.tech .body .more{margin-top:24px;font-size:.98rem;color:var(--driftwood)}
.who .facts{display:grid;grid-template-columns:1fr 1fr;gap:12px 48px;max-width:64em;margin-top:28px}
.who .facts p{font-size:1rem;color:var(--driftwood);margin:0;padding:14px 0;border-top:1px solid rgba(35,32,26,.14)}
.who .facts p b{color:var(--charcoal);font-weight:600}
@media (max-width:900px){.seq .item,.seq .next .row,.diff2 .opt,.diff2 .q,.tech .body .row,.who .facts{grid-template-columns:1fr;gap:8px}}
@media (prefers-color-scheme: dark){.seq .item,.seq .next,.diff2 .opt,.diff2 .q,.tech .body .row,.who .facts p{border-color:rgba(236,230,217,.16)}}

/* ── v7: the kept features. left-anchored frame, the page line, the mountains, the greeting ── */
.inner{max-width:860px;margin:0 0 0 clamp(72px,11vw,170px)}
.close-band{text-align:left}.close-band .acts{justify-content:flex-start}
.greet p{font-family:var(--heading);font-variation-settings:'opsz' 72;font-weight:500;letter-spacing:-.005em}
.seq{position:relative;background:linear-gradient(rgba(242,237,226,.94),rgba(242,237,226,.9) 55%,rgba(242,237,226,.97)),url('assets/photos/trail-scurve-toward-peak.jpg') center/cover no-repeat}
.pageline{position:absolute;top:0;left:0;right:0;z-index:40;pointer-events:none}
.pageline svg{overflow:visible}
.pl-steady{stroke:var(--seaglass);opacity:.6}.pl-break{stroke:var(--terracotta)}.pl-trail,.pl-dash{stroke:var(--seaglass);opacity:.9}.pl-trailg{opacity:.9}
.pageline .g0,.pageline .g1{stop-color:var(--seaglass)}
.pl-node{fill:var(--terracotta);opacity:0;transition:opacity .6s ease .15s}.pl-node.on{opacity:1}
@media (prefers-color-scheme: dark){.seq{background:linear-gradient(rgba(21,32,29,.95),rgba(21,32,29,.92) 55%,rgba(21,32,29,.97)),url('assets/photos/trail-scurve-toward-peak.jpg') center/cover no-repeat}}
@media (max-width:900px){.inner{margin:0 auto}.pageline{display:none}}
