/* =========================================================================
   The Physical Root — site.css
   Dark materiality: stone / brass / verde / walnut. Homepage is stone end to end (JK, Oct 2026);
   the --page / --ink tokens remain for article reading surfaces and printed objects.
   Mark: Flower of Life medallion (JK, Oct 2026), drawn from one <symbol id="mk">.
   Sections:  1 Tokens · 2 Base · 3 Material · 4 Strata & rail · 5 Nav
              6 Hero · 7 Pillars · 8 Free reading · 9 Pricing · 10 Footer
              11 Motion · 12 Responsive
   Craft layer: premium-web-design checklist (8px grid, single CTA per section,
   asymmetric grids, no zero-chroma greys, reduced motion honoured).
   ========================================================================= */

/* 1 ─ Tokens ───────────────────────────────────────────────────────────── */
:root{
  --void:#15181B; --stone:#22252A; --stone-2:#2A2E34; --stone-3:#343941;
  --brass:#C9A66B; --brass-lit:#E0C48E; --brass-deep:#8E7444; --brass-wash:rgba(201,166,107,.14);
  --verde:#8FAE72; --verde-deep:#4E6B44;
  --walnut:#634637; --walnut-lit:#8A6544;
  --bone:#F2EDE3; --bone-soft:#BDB7AC; --bone-faint:#948F86;
  --rule:rgba(242,237,227,.10); --rule-strong:rgba(242,237,227,.20);
  --page:#F4F1EA; --page-2:#E8E3D8; --ink:#23262A; --ink-soft:#565A52; --ink-brass:#7A5F2C;
  --ink-rule:rgba(35,38,42,.14);

  --font-display:'Fraunces',Georgia,serif;
  --font-body:'Inter',system-ui,-apple-system,sans-serif;

  --text-2xs:.75rem; --text-xs:.8125rem; --text-sm:.9375rem; --text-base:1.0625rem;
  --text-lg:clamp(1.1875rem,.4vw + 1.1rem,1.3125rem);
  --text-xl:clamp(1.375rem,.7vw + 1.2rem,1.625rem);
  --text-2xl:clamp(1.625rem,1.2vw + 1.3rem,2.125rem);
  --text-3xl:clamp(2rem,2vw + 1.5rem,2.875rem);
  --text-4xl:clamp(2.5rem,3.4vw + 1.6rem,4rem);
  --text-5xl:clamp(2.75rem,5.6vw + 1.2rem,5.75rem);

  --space-2xs:.25rem; --space-xs:.5rem; --space-sm:.75rem; --space-md:1.25rem;
  --space-lg:2rem; --space-xl:3.25rem; --space-2xl:5.25rem;
  --space-section:clamp(4.5rem,9vw,9.5rem);
  --gutter:clamp(1.25rem,5vw,3.5rem);
  --wrapw:min(1180px,100% - (2 * var(--gutter)));
  --spine:clamp(24px,7vw,104px);          /* the root's column */
  --mk-hero:calc(var(--spine) - 8px);     /* masthead medallion always fits its column */
  --mk-inner:min(88px, calc(var(--spine) - 14px));
  --measure:64ch;

  --lift-1:inset 0 1px 0 rgba(255,255,255,.05),0 1px 2px rgba(0,0,0,.28);
  --lift-2:inset 0 1px 0 rgba(255,255,255,.07),0 2px 5px rgba(0,0,0,.30),0 8px 18px rgba(0,0,0,.20);
  --lift-3:inset 0 1px 0 rgba(255,255,255,.09),0 6px 14px rgba(0,0,0,.34),0 18px 40px rgba(0,0,0,.26);
  --edge-brass:inset 0 1px 0 rgba(255,240,210,.45),inset 0 -1px 0 rgba(90,64,26,.35);

  --ease-out:cubic-bezier(.22,1,.36,1); --ease-inout:cubic-bezier(.76,0,.24,1); --ease-soft:cubic-bezier(.33,1,.68,1);
  --dur-micro:160ms; --dur-fast:260ms; --dur-med:440ms; --dur-slow:820ms; --stagger:70ms;

  --radius-xs:2px; --radius-sm:6px; --radius-md:14px; --radius-lg:28px; --radius-leaf:28px 28px 28px 4px;
}

/* 2 ─ Base ─────────────────────────────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:88px}
body{
  margin:0;background:var(--stone);color:var(--bone-soft);
  font:400 var(--text-base)/1.62 var(--font-body);letter-spacing:.005em;
  font-kerning:normal;font-optical-sizing:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;
  overflow-x:hidden;
}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration-thickness:1px;text-underline-offset:.18em}
h1,h2,h3{margin:0;color:var(--bone);font-family:var(--font-display);font-weight:550;text-wrap:balance}
p,li{text-wrap:pretty}
p{margin:0}
ul{margin:0;padding:0;list-style:none}
::selection{background:var(--brass);color:var(--void)}
:focus-visible{outline:2px solid var(--brass);outline-offset:3px;border-radius:var(--radius-xs)}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:1rem;top:-3rem;z-index:200;background:var(--brass);color:var(--void);padding:.6rem 1rem;border-radius:var(--radius-sm);font-weight:600}
.skip:focus{top:1rem}

.wrap{width:var(--wrapw);margin-inline:auto;padding-left:var(--spine);position:relative}

.eyebrow{display:block;font:600 var(--text-2xs)/1.3 var(--font-body);letter-spacing:.13em;text-transform:uppercase;color:var(--brass)}
.h2{font-size:var(--text-3xl);line-height:1.08;letter-spacing:-.025em;
  font-variation-settings:'SOFT' 30,'WONK' 0,'opsz' 96;margin-top:var(--space-sm)}
.lede{color:var(--bone-soft);max-width:48ch;margin-top:var(--space-md)}

/* Buttons — four designed states each */
.btn{display:inline-flex;align-items:center;gap:.6em;min-height:48px;padding:.85rem 1.5rem;border-radius:var(--radius-sm);
  font:600 var(--text-sm)/1 var(--font-body);letter-spacing:.01em;text-decoration:none;cursor:pointer;border:0;
  background:var(--brass);color:#1C1A16;box-shadow:var(--edge-brass),0 1px 2px rgba(0,0,0,.35),0 6px 18px rgba(0,0,0,.22);
  transition:transform var(--dur-micro) var(--ease-soft),background-color var(--dur-micro) var(--ease-soft),box-shadow var(--dur-micro) var(--ease-soft)}
.btn:hover{background:var(--brass-lit);transform:translateY(-1px)}
.btn:active{background:var(--brass-deep);transform:translateY(0) scale(.985);transition-duration:80ms}
.btn .arr{transition:transform var(--dur-micro) var(--ease-soft)}
.btn:hover .arr{transform:translateX(3px)}
.btn--ghost{background:transparent;color:var(--bone);box-shadow:inset 0 0 0 1px var(--rule-strong)}
.btn--ghost:hover{background:rgba(242,237,227,.06);box-shadow:inset 0 0 0 1px rgba(242,237,227,.34)}
.btn--ghost:active{background:rgba(242,237,227,.03)}

.link{color:var(--bone);text-decoration:none;font-weight:500;
  background:linear-gradient(var(--brass),var(--brass)) 0 100%/100% 1px no-repeat;padding-bottom:3px;
  transition:background-size var(--dur-fast) var(--ease-out),color var(--dur-micro) var(--ease-soft)}
.link:hover{color:var(--brass-lit);background-size:0 1px;background-position:100% 100%}
.link .arr{display:inline-block;transition:transform var(--dur-micro) var(--ease-soft)}
.link:hover .arr{transform:translateX(3px)}

/* 3 ─ Material: stone, veining, grain ───────────────────────────────────── */
.stone{background-color:var(--stone);
  background-image:url(/assets/vein.svg),
    radial-gradient(60% 52% at 16% 38%,rgba(233,238,244,.05),transparent 100%),
    radial-gradient(48% 44% at 86% 58%,rgba(233,238,244,.028),transparent 100%),
    radial-gradient(70% 40% at 50% 50%,rgba(0,0,0,.10),transparent 100%);
  background-size:1600px auto,auto,auto,auto;background-position:0 0,0 0,0 0,0 0;background-repeat:repeat-y,no-repeat,no-repeat,no-repeat}
.stone--b{background-position:-520px -380px,0 0,0 0,0 0}
.stone--c{background-position:-960px -140px,0 0,0 0,0 0}
.stone--d{background-position:-300px -820px,0 0,0 0,0 0}
.stone--void{background-color:var(--void);background-position:-240px -700px,0 0,0 0,0 0}
.stone .vein-dim{opacity:.6}
/* grain — one layer, whole page */
body::after{content:"";position:fixed;inset:0;z-index:150;pointer-events:none;opacity:.055;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}

/* 4 ─ Strata & the root rail ───────────────────────────────────────────── */
.stratum{position:relative;padding-block:var(--space-section);--hz-fill:var(--stone)}
.hz{position:absolute;left:0;top:-59px;width:100%;height:60px;z-index:2;pointer-events:none;overflow:visible}
.hz__fill{fill:var(--hz-fill)}
.hz__edge{fill:none;stroke:var(--walnut-lit);stroke-width:2.5;vector-effect:non-scaling-stroke;opacity:.9}
.hz__edge--2{stroke:var(--walnut);stroke-width:1;opacity:.8;transform:translateY(5px)}

.rail{position:absolute;z-index:3;pointer-events:none;width:24px;top:-30px;bottom:30px;
  left:calc((100% - var(--wrapw)) / 2 + var(--spine) / 2 - 12px)}
.rail svg{width:100%;height:100%}
.rail path{fill:var(--brass);opacity:.62}

.branch{position:absolute;pointer-events:none;width:calc(var(--spine) / 2 - 8px);aspect-ratio:60/40;
  left:calc(var(--spine) / -2);top:calc(.65em - (var(--spine) / 2 - 8px) * .5)}
.branch path{fill:var(--brass);opacity:.62}
.head{position:relative}

/* 5 ─ Navigation ───────────────────────────────────────────────────────── */
.nav{position:fixed;inset:0 0 auto;z-index:100;padding-top:env(safe-area-inset-top,0px);transition:background-color var(--dur-fast) var(--ease-soft),box-shadow var(--dur-fast) var(--ease-soft)}
.nav__in{width:min(1180px,100% - 2 * var(--gutter));margin-inline:auto;height:76px;display:flex;align-items:center;justify-content:space-between;gap:var(--space-lg)}
.nav.is-scrolled{background:rgba(34,37,42,.97);box-shadow:inset 0 -1px 0 var(--rule),0 8px 24px rgba(0,0,0,.25)}
.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none;color:var(--bone);min-height:44px}
.brand svg{height:40px;width:40px;flex:none;--mk-w:26;--mk-fine:0}
.brand span{font:550 1.1875rem/1 var(--font-display);font-variation-settings:'SOFT' 30,'WONK' 0,'opsz' 24;letter-spacing:-.01em}
.nav__links{display:flex;align-items:center;gap:clamp(1rem,2vw,2rem)}
.nav__links a:not(.btn){font-size:var(--text-sm);color:var(--bone-soft);text-decoration:none;padding:.75rem 0;position:relative;transition:color var(--dur-micro) var(--ease-soft)}
.nav__links a:not(.btn)::after{content:"";position:absolute;left:0;right:0;bottom:.45rem;height:1px;background:var(--brass);transform:scaleX(0);transform-origin:right;transition:transform var(--dur-fast) var(--ease-out)}
.nav__links a:not(.btn):hover{color:var(--bone)}
.nav__links a:not(.btn):hover::after{transform:scaleX(1);transform-origin:left}
.nav__links .btn{min-height:42px;padding:.7rem 1.1rem;font-size:var(--text-xs)}
.nav__toggle{display:none;align-items:center;gap:.6rem;min-height:44px;padding:0 .25rem;background:none;border:0;color:var(--bone);font:500 var(--text-sm)/1 var(--font-body);cursor:pointer}
.nav__bars{position:relative;width:20px;height:12px}
.nav__bars i{position:absolute;left:0;width:100%;height:1.5px;background:currentColor;transition:transform var(--dur-fast) var(--ease-out),opacity var(--dur-micro)}
.nav__bars i:nth-child(1){top:0}.nav__bars i:nth-child(2){top:5px}.nav__bars i:nth-child(3){top:10px}
.nav__toggle[aria-expanded="true"] .nav__bars i:nth-child(1){transform:translateY(5px) rotate(45deg)}
.nav__toggle[aria-expanded="true"] .nav__bars i:nth-child(2){opacity:0}
.nav__toggle[aria-expanded="true"] .nav__bars i:nth-child(3){transform:translateY(-5px) rotate(-45deg)}

/* 6 ─ Hero ─────────────────────────────────────────────────────────────── */
.hero{position:relative;background-image:url(/assets/vein.svg),radial-gradient(70% 70% at 12% 0%,rgba(233,238,244,.06),transparent 100%),radial-gradient(50% 50% at 90% 30%,rgba(233,238,244,.03),transparent 100%);padding-top:clamp(8.5rem,14vw,12.5rem);padding-bottom:clamp(7rem,12vw,11rem);overflow:hidden}
.hero .wrap{z-index:4}
.hero__mark{position:absolute;top:-.35rem;width:var(--mk-hero);height:var(--mk-hero);left:4px;--mk-w:12;--mk-fine:.5}
.rail--hero{top:calc(clamp(8.5rem,14vw,12.5rem) - .35rem + var(--mk-hero) + 8px)}
.hero h1{font-size:var(--text-5xl);line-height:.98;letter-spacing:-.038em;max-width:13.5ch;
  font-variation-settings:'SOFT' 30,'WONK' 1,'opsz' 144;margin-top:var(--space-md)}
.hero h1 em{font-style:italic;font-weight:500;color:var(--brass-lit);font-variation-settings:'SOFT' 60,'WONK' 1,'opsz' 144;padding-right:.04em}
.hero__sub{font-size:var(--text-lg);line-height:1.6;max-width:46ch;margin-top:var(--space-lg);color:var(--bone-soft)}
.hero__act{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-md) var(--space-lg);margin-top:var(--space-xl)}
.creds{display:flex;flex-wrap:wrap;gap:.35rem 0;margin-top:var(--space-xl);padding-top:var(--space-md);max-width:720px;
  border-top:1px solid var(--rule);font-size:var(--text-xs);color:var(--bone-soft);letter-spacing:.01em}
.creds li{display:flex;align-items:center}
.creds li+li::before{content:"";width:3px;height:3px;border-radius:50%;background:var(--brass);margin:0 .85rem;opacity:.8}
.creds strong{color:var(--bone);font-weight:600}
.hero__roots{position:absolute;z-index:1;pointer-events:none;width:min(1060px,78vw);aspect-ratio:1000/460;
  left:calc((100% - var(--wrapw)) / 2 + var(--spine) / 2);bottom:-40px}
.hero__roots path{fill:var(--brass);opacity:.15}

/* 7 ─ Pillars ──────────────────────────────────────────────────────────── */
.pillars,.reads-zone,.pricing{--hz-fill:var(--stone)}
.pillars__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--space-xl) clamp(2rem,5vw,5rem);margin-top:var(--space-xl);align-items:start}
.lead{position:relative;background:var(--stone-3);border-radius:var(--radius-md);padding:clamp(1.5rem,3vw,2.5rem);box-shadow:var(--lift-2);
  background-image:linear-gradient(180deg,rgba(255,255,255,.025),transparent 40%)}
.lead::before{content:"";position:absolute;left:var(--radius-md);right:var(--radius-md);top:0;height:2px;border-radius:0 0 2px 2px;
  background:linear-gradient(90deg,var(--walnut),var(--walnut-lit) 22%,var(--walnut) 46%,#4E372A 64%,var(--walnut-lit) 82%,var(--walnut))}
.lead__top{display:flex;justify-content:space-between;align-items:baseline;gap:1rem}
.tag{display:inline-block;font:600 var(--text-2xs)/1 var(--font-body);letter-spacing:.1em;text-transform:uppercase;padding:.42rem .55rem;border-radius:var(--radius-xs)}
.tag--free{color:var(--verde);background:rgba(143,174,114,.12);box-shadow:inset 0 0 0 1px rgba(143,174,114,.28)}
.lead h3{font-size:var(--text-2xl);line-height:1.1;letter-spacing:-.02em;font-variation-settings:'SOFT' 30,'WONK' 0,'opsz' 48}
.lead>p{margin-top:var(--space-sm);color:var(--bone-soft)}
.plist{margin-top:var(--space-lg);border-top:1px solid var(--rule)}
.plist a{display:flex;justify-content:space-between;align-items:center;gap:1rem;min-height:48px;padding:.7rem 0;border-bottom:1px solid var(--rule);
  color:var(--bone);text-decoration:none;font-size:var(--text-sm);transition:color var(--dur-micro) var(--ease-soft),padding var(--dur-fast) var(--ease-out)}
.plist a span{color:var(--bone-soft);opacity:.85;font-size:var(--text-xs);white-space:nowrap}
.plist a:hover{color:var(--brass-lit);padding-left:.35rem}
.lead .link{display:inline-block;margin-top:var(--space-lg);font-size:var(--text-sm)}

.index li{display:grid;grid-template-columns:minmax(0,15rem) minmax(0,1fr);gap:.5rem 2rem;padding:1.6rem 0;border-top:1px solid var(--rule)}
.index li:last-child{border-bottom:1px solid var(--rule)}
.index h3{font-size:var(--text-xl);line-height:1.15;letter-spacing:-.015em;font-variation-settings:'SOFT' 30,'WONK' 0,'opsz' 36}
.index p{color:var(--bone-soft);font-size:var(--text-sm);line-height:1.6}

/* 8 ─ Free reading ─────────────────────────────────────────────────── */
.reads{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(2rem,4vw,4rem);margin-top:var(--space-xl);align-items:start}
.feature{display:flex;flex-direction:column;padding-top:var(--space-lg);border-top:2px solid var(--rule-strong)}
.meta{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .75rem;font-size:var(--text-xs);color:var(--bone-soft)}
.meta .tag{color:var(--verde);background:rgba(143,174,114,.12);box-shadow:inset 0 0 0 1px rgba(143,174,114,.28)}
.feature h3{font-size:var(--text-3xl);line-height:1.06;letter-spacing:-.028em;margin-top:var(--space-md);font-variation-settings:'SOFT' 30,'WONK' 1,'opsz' 96}
.feature h3 a{text-decoration:none;color:inherit;background:linear-gradient(var(--brass),var(--brass)) 0 92%/0 1.5px no-repeat;transition:background-size var(--dur-med) var(--ease-out)}
.feature h3 a:hover{background-size:100% 1.5px}
.feature p{margin-top:var(--space-md);max-width:58ch;font-size:var(--text-base);line-height:1.65;color:var(--bone-soft)}
.feature .link{margin-top:var(--space-lg);align-self:flex-start;background-position:0 100%}

.guide{display:grid;grid-template-rows:auto 1fr;gap:var(--space-lg);padding-top:var(--space-lg);border-top:1px solid var(--rule)}
.sheet{position:relative;aspect-ratio:8.5/6.2;margin-inline:6% 10%;filter:brightness(.86) saturate(.9)}
.sheet::before,.sheet::after{content:"";position:absolute;inset:0;background:var(--page-2);border-radius:3px;box-shadow:0 1px 2px rgba(35,38,42,.08)}
.sheet::before{transform:rotate(-3.2deg) translate(-10px,8px)}
.sheet::after{transform:rotate(1.6deg) translate(8px,4px);background:#EDE8DE}
.sheet__face{position:relative;z-index:1;height:100%;background:#FBF9F4;border-radius:3px;padding:8% 9%;display:flex;flex-direction:column;
  box-shadow:0 1px 1px rgba(0,0,0,.2),0 10px 24px rgba(0,0,0,.35),0 28px 50px rgba(0,0,0,.3);
  transition:transform var(--dur-med) var(--ease-out)}
.guide:hover .sheet__face{transform:translateY(-4px) rotate(-.6deg)}
.sheet__k{font:600 .5625rem/1 var(--font-body);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-brass)}
.sheet__t{font:600 clamp(1rem,1.6vw,1.375rem)/1.08 var(--font-display);letter-spacing:-.02em;color:var(--ink);margin-top:.7rem;max-width:15ch;font-variation-settings:'SOFT' 30,'WONK' 0,'opsz' 48}
.sheet__rule{margin-top:auto;height:1px;background:var(--ink-rule)}
.sheet__by{margin-top:.55rem;font-size:.625rem;color:var(--ink-soft)}
.guide h3{font-size:var(--text-xl);line-height:1.15;letter-spacing:-.015em;margin-top:var(--space-sm);font-variation-settings:'SOFT' 30,'WONK' 0,'opsz' 36}
.guide p{margin-top:var(--space-sm);font-size:var(--text-sm);line-height:1.6}
.guide .link{display:inline-block;margin-top:var(--space-md);font-size:var(--text-sm)}

.quote{margin:var(--space-section) 0 0;position:relative}
.quote blockquote{margin:0}
.quote p{max-width:19ch}
.quote p{font:italic 400 var(--text-4xl)/1.08 var(--font-display);letter-spacing:-.025em;color:var(--bone);font-variation-settings:'SOFT' 60,'WONK' 1,'opsz' 144;text-wrap:balance}
.quote p::before{content:"\201C";position:absolute;margin-left:-.48em;color:var(--brass)}
.quote footer{margin-top:var(--space-lg);font-size:var(--text-xs);letter-spacing:.13em;text-transform:uppercase;color:var(--bone-soft);font-weight:600}

.bio{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:clamp(2rem,5vw,5.5rem);margin-top:var(--space-section);align-items:start}
.bio__photo{margin:0;position:relative}
.bio__photo img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;border-radius:var(--radius-leaf);
  box-shadow:0 0 0 1px var(--rule-strong),0 18px 40px rgba(0,0,0,.35);filter:brightness(.95)}
.bio__photo figcaption{margin-top:var(--space-sm);font-size:var(--text-xs);color:var(--bone-soft)}
.bio h2{font-size:var(--text-3xl);line-height:1.08;letter-spacing:-.025em;font-variation-settings:'SOFT' 30,'WONK' 0,'opsz' 96;margin-top:var(--space-sm)}
.bio__body p{margin-top:var(--space-md);max-width:var(--measure);line-height:1.68;color:var(--bone-soft)}
.cv{margin-top:var(--space-xl);border-top:1px solid var(--rule)}
.cv div{display:grid;grid-template-columns:minmax(0,14rem) minmax(0,1fr);gap:.25rem 1.5rem;padding:.95rem 0;border-bottom:1px solid var(--rule)}
.cv dt{font-weight:600;color:var(--bone);font-size:var(--text-sm)}
.cv dd{margin:0;font-size:var(--text-sm);color:var(--bone-soft)}
.bio .link{display:inline-block;margin-top:var(--space-lg)}

/* 9 ─ Pricing ──────────────────────────────────────────────────────────── */

.price__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:var(--space-xl) clamp(2rem,6vw,6rem);align-items:center}
.incl{margin-top:var(--space-lg);display:grid;gap:.15rem}
.incl li{display:flex;gap:.75rem;align-items:baseline;padding:.45rem 0;color:var(--bone-soft);font-size:var(--text-sm)}
.incl li::before{content:"";flex:none;width:10px;height:6px;border-left:1.5px solid var(--verde);border-bottom:1.5px solid var(--verde);transform:translateY(-3px) rotate(-45deg)}
.plan{background:var(--stone-2);border-radius:var(--radius-md);box-shadow:var(--lift-3);overflow:hidden;position:relative}
.plan::before{content:"";position:absolute;inset:0 0 auto;height:3px;
  background:linear-gradient(90deg,var(--walnut),var(--walnut-lit) 18%,var(--walnut) 34%,#4E372A 52%,var(--walnut-lit) 71%,var(--walnut) 88%,#4E372A)}
.plan__row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem 1.5rem;padding:clamp(1.5rem,3vw,2.25rem)}
.plan__row+.plan__row{border-top:1px solid var(--rule)}
.plan__name{display:flex;align-items:center;gap:.6rem;font:600 var(--text-2xs)/1 var(--font-body);letter-spacing:.13em;text-transform:uppercase;color:var(--bone-soft)}
.plan__save{color:var(--verde);letter-spacing:.08em}
.plan__amt{display:flex;align-items:baseline;gap:.35rem;margin-top:.6rem;color:var(--bone);font:500 var(--text-4xl)/1 var(--font-display);
  font-variation-settings:'SOFT' 30,'WONK' 0,'opsz' 144;letter-spacing:-.035em;font-variant-numeric:lining-nums tabular-nums}
.plan__amt small{font:400 var(--text-sm)/1 var(--font-body);letter-spacing:0;color:var(--bone-soft)}
.plan__row--best{background:linear-gradient(180deg,rgba(201,166,107,.07),transparent 70%)}
.plan__row:not(.plan__row--best) .plan__amt{font-size:var(--text-3xl)}
.plan__note{margin-top:var(--space-md);font-size:var(--text-xs);color:var(--bone-soft);display:flex;gap:.5rem;align-items:center}
.plan__note svg{width:14px;height:14px;flex:none}

/* 10 ─ Footer ──────────────────────────────────────────────────────────── */
.ft{--hz-fill:var(--void);position:relative;padding-block:var(--space-2xl) var(--space-lg)}
.ft__grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) minmax(0,1fr);gap:var(--space-xl)}
.lockup{display:flex;align-items:flex-start;gap:1.1rem;text-decoration:none}
.lockup svg{height:96px;width:96px;flex:none;--mk-w:13;--mk-fine:.4}
.lockup b{display:block;font:550 1.5rem/1.05 var(--font-display);color:var(--bone);letter-spacing:-.015em;font-variation-settings:'SOFT' 30,'WONK' 0,'opsz' 36;margin-top:.4rem}
.lockup i{display:block;font-style:normal;margin-top:.55rem;font-size:var(--text-2xs);letter-spacing:.16em;text-transform:uppercase;color:var(--brass)}
.ft__tag{margin-top:var(--space-md);max-width:34ch;font-size:var(--text-sm);color:var(--bone-faint)}
.ft h2{font:600 var(--text-2xs)/1 var(--font-body);letter-spacing:.13em;text-transform:uppercase;color:var(--bone-faint);margin-bottom:var(--space-md)}
.ft ul a{display:inline-block;padding:.4rem 0;color:var(--bone-soft);text-decoration:none;font-size:var(--text-sm);transition:color var(--dur-micro) var(--ease-soft)}
.ft ul a:hover{color:var(--brass-lit)}
.ft__base{display:flex;justify-content:space-between;gap:1rem 3rem;flex-wrap:wrap;margin-top:var(--space-2xl);padding-top:var(--space-md);border-top:1px solid var(--rule);font-size:var(--text-xs);color:var(--bone-faint)}
.ft__base p:last-child{max-width:60ch}
.rail--foot{bottom:auto;height:calc(100% - var(--space-lg) - 3rem)}

/* 11 ─ Motion ──────────────────────────────────────────────────────────── */
@keyframes rise{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@keyframes grow{from{transform:scaleY(0)}to{transform:scaleY(1)}}
@keyframes spread{from{opacity:0;clip-path:inset(0 100% 0 0)}to{opacity:1;clip-path:inset(0 0 0 0)}}
@keyframes settle{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
.js .hero__mark{animation:settle var(--dur-slow) var(--ease-out) both}
.js .rail--hero{transform-origin:top;animation:grow 1.3s var(--ease-out) 260ms both}
.js .hero__roots{animation:spread 1.6s var(--ease-out) 700ms both}
.js .hero [data-seq]{animation:rise var(--dur-slow) var(--ease-out) both;animation-delay:calc(140ms + var(--i) * var(--stagger))}
.js [data-reveal]{opacity:0;transform:translateY(18px);transition:opacity var(--dur-med) var(--ease-out),transform var(--dur-med) var(--ease-out)}
.js [data-reveal].is-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-delay:0ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .js [data-reveal]{opacity:1;transform:none}
}

/* 12 ─ Responsive ──────────────────────────────────────────────────────── */
@media (max-width:1020px){
  .nav__toggle{display:inline-flex}
  .nav__links{position:absolute;top:76px;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;padding:.5rem var(--gutter) 1.5rem;
    background:var(--stone);box-shadow:inset 0 1px 0 var(--rule),0 24px 40px rgba(0,0,0,.4);
    opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out),visibility 0s linear var(--dur-fast)}
  .nav__links.is-open{opacity:1;visibility:visible;transform:none;transition-delay:0s}
  .nav__links a:not(.btn){padding:1rem 0;border-bottom:1px solid var(--rule);font-size:var(--text-base)}
  .nav__links a:not(.btn)::after{display:none}
  .nav__links .btn{margin-top:1.25rem;justify-content:center;min-height:48px;font-size:var(--text-sm)}
  .nav.is-open{background:var(--stone)}
  .pillars__grid,.reads,.price__grid{grid-template-columns:1fr}
  .bio{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}
}
@media (max-width:720px){
  :root{--spine:22px}
  .branch{display:none}
  .rail{width:14px;left:calc(var(--gutter) / 2 - 7px)}
  .wrap{padding-left:0}
  .hero__mark{position:static;width:88px;height:88px;margin-bottom:var(--space-md);--mk-w:13}
  .rail--hero{top:calc(clamp(8.5rem,14vw,12.5rem) + 96px)}
  .phero__mark{position:static;width:64px;height:64px;margin-bottom:var(--space-md);--mk-w:17;--mk-fine:0}
  .rail--top{top:calc(clamp(7.5rem,12vw,10rem) + 72px)}
  .hero__roots{width:150vw;left:calc(var(--gutter) / 2);bottom:-20px}
  .creds{flex-direction:column}
  .creds li+li::before{display:none}
  .index li,.cv div{grid-template-columns:1fr}
  .bio{grid-template-columns:1fr}
  .bio__photo{max-width:260px}
  .plan__row{grid-template-columns:1fr}
  .plan__row .btn{width:100%;justify-content:center}
  .ft__grid{grid-template-columns:1fr 1fr}
  .ft__grid>div:first-child{grid-column:1/-1}
  .quote p::before{position:static;margin:0}
}

/* 13 ─ Inner pages ──────────────────────────────────────────────────────
   Same grammar as the homepage: stone strata, walnut horizons, the root in
   the spine column. Inner heroes are shorter and lead with the page's own
   headline; the masthead mark stays a homepage-only moment.            */
.rail--top{top:calc(clamp(7.5rem,12vw,10rem) - .25rem + var(--mk-inner) + 8px)}
.phero__mark{position:absolute;top:-.25rem;width:var(--mk-inner);height:var(--mk-inner);left:calc(var(--spine) / 2 - var(--mk-inner) / 2);--mk-w:13;--mk-fine:.45}
.js .phero__mark{animation:settle var(--dur-slow) var(--ease-out) both}
.phero{position:relative;padding-top:clamp(7.5rem,12vw,10rem);padding-bottom:clamp(4.5rem,8vw,7rem);
  background-image:url(/assets/vein.svg),radial-gradient(70% 70% at 12% 0%,rgba(233,238,244,.06),transparent 100%),radial-gradient(50% 50% at 90% 30%,rgba(233,238,244,.03),transparent 100%)}
.crumb{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .6rem;font-size:var(--text-xs);color:var(--bone-soft);margin-bottom:var(--space-lg)}
.crumb a{color:var(--bone-soft);text-decoration:none;transition:color var(--dur-micro) var(--ease-soft)}
.crumb a:hover{color:var(--brass-lit)}
.crumb span[aria-hidden]{color:var(--bone-faint)}
.phero h1{font-size:var(--text-4xl);line-height:1.02;letter-spacing:-.032em;max-width:19ch;margin-top:var(--space-sm);
  font-variation-settings:'SOFT' 30,'WONK' 1,'opsz' 144}
.phero h1 em{font-style:italic;font-weight:500;color:var(--brass-lit);font-variation-settings:'SOFT' 60,'WONK' 1,'opsz' 144}
.phero .lede{font-size:var(--text-lg);max-width:56ch;margin-top:var(--space-lg)}
.freenote{display:inline-flex;align-items:center;gap:.6rem;margin-top:var(--space-lg);font-size:var(--text-sm);color:var(--verde)}
.freenote::before{content:"";width:10px;height:6px;border-left:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(-45deg)}
.phero__grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:var(--space-xl) clamp(2rem,5vw,5rem);align-items:end}
.stratum--tight{padding-block:clamp(3.5rem,6vw,5.5rem)}

/* Slab — the one raised surface style for cards on inner pages */
.slab{position:relative;background:var(--stone-2);border-radius:var(--radius-md);box-shadow:var(--lift-2);padding:clamp(1.5rem,3vw,2.5rem);
  background-image:linear-gradient(180deg,rgba(255,255,255,.022),transparent 40%)}
.slab::before{content:"";position:absolute;left:var(--radius-md);right:var(--radius-md);top:0;height:2px;border-radius:0 0 2px 2px;
  background:linear-gradient(90deg,var(--walnut),var(--walnut-lit) 22%,var(--walnut) 46%,#4E372A 64%,var(--walnut-lit) 82%,var(--walnut))}
.tags{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}
.tag--quiet{color:var(--bone-soft);box-shadow:inset 0 0 0 1px var(--rule-strong)}
.tag--member{color:var(--brass);box-shadow:inset 0 0 0 1px rgba(201,166,107,.35);background:rgba(201,166,107,.08)}

/* Long-form prose on stone: weight stays 400, measure 64ch, generous leading */
.prose{max-width:var(--measure);font-size:clamp(1.0625rem,.25vw + 1rem,1.1875rem);line-height:1.76;color:var(--bone-soft)}
.prose>*+*{margin-top:1.15em}
.prose h2{font-size:var(--text-2xl);line-height:1.15;letter-spacing:-.02em;margin-top:2.4em;font-variation-settings:'SOFT' 30,'WONK' 0,'opsz' 48}
.prose h2+*{margin-top:.8em}
.prose h3{font-size:var(--text-xl);line-height:1.2;letter-spacing:-.012em;margin-top:2em;font-variation-settings:'SOFT' 30,'WONK' 0,'opsz' 36}
.prose strong{color:var(--bone);font-weight:600}
.prose em{color:var(--bone)}
.prose a{color:var(--bone);text-decoration-color:var(--brass)}
.prose a:hover{color:var(--brass-lit)}
.prose ul{display:grid;gap:.5em;padding:0}
.prose ul li{position:relative;padding-left:1.4em}
.prose ul li::before{content:"";position:absolute;left:.2em;top:.72em;width:5px;height:5px;border-radius:50%;background:var(--brass)}
.prose blockquote{margin:2.2em 0;padding:0}
.prose blockquote p{font:italic 400 var(--text-2xl)/1.25 var(--font-display);letter-spacing:-.015em;color:var(--bone);font-variation-settings:'SOFT' 60,'WONK' 1,'opsz' 96;text-wrap:balance}
.prose blockquote p::before{content:"\201C";color:var(--brass);margin-left:-.45em;padding-right:.05em}
.callout{position:relative;background:var(--stone-2);border-radius:var(--radius-md);box-shadow:var(--lift-1);padding:1.5rem 1.75rem;font-size:.95em}
.callout::before{content:"";position:absolute;left:var(--radius-md);right:var(--radius-md);top:0;height:2px;
  background:linear-gradient(90deg,var(--walnut),var(--walnut-lit) 30%,var(--walnut) 60%,#4E372A)}
.callout>*+*{margin-top:.8em}
.callout .eyebrow{margin-bottom:.2em}
.prose .callout,.prose .faq{margin-top:2em}

.faq{border-top:1px solid var(--rule)}
.faq div{padding:1.4rem 0;border-bottom:1px solid var(--rule)}
.faq dt{font:550 var(--text-lg)/1.3 var(--font-display);color:var(--bone);letter-spacing:-.01em;font-variation-settings:'SOFT' 30,'WONK' 0,'opsz' 36}
.faq dd{margin:.6rem 0 0;color:var(--bone-soft);font-size:var(--text-base);line-height:1.68;max-width:68ch}
.faq dd a{color:var(--bone);text-decoration-color:var(--brass)}

/* Two-column ledger list (principles, pillars, checklists) */
.ledger li{display:grid;grid-template-columns:minmax(0,17rem) minmax(0,1fr);gap:.5rem 2.5rem;padding:1.6rem 0;border-top:1px solid var(--rule)}
.ledger li:last-child{border-bottom:1px solid var(--rule)}
.ledger h3{font-size:var(--text-xl);line-height:1.15;letter-spacing:-.015em;font-variation-settings:'SOFT' 30,'WONK' 0,'opsz' 36}
.ledger p{color:var(--bone-soft);font-size:var(--text-base);line-height:1.65;max-width:62ch}

/* Section CTA band */
.band{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:var(--space-lg) var(--space-xl);align-items:end}
.band p{margin-top:var(--space-md);max-width:56ch}
.band__act{display:flex;flex-wrap:wrap;gap:var(--space-md) var(--space-lg);align-items:center;justify-content:flex-start}
.band small{display:block;margin-top:var(--space-sm);font-size:var(--text-xs);color:var(--bone-soft)}

/* Downloads */
.dl{display:inline-flex;align-items:center;gap:.55rem}
.dl svg{width:15px;height:15px}
.docs{margin-top:var(--space-lg);border-top:1px solid var(--rule)}
.docs>div{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1.5rem;padding:1rem 0;border-bottom:1px solid var(--rule)}
.docs b{display:block;font-weight:600;color:var(--bone);font-size:var(--text-sm)}
.docs span{display:block;margin-top:.2rem;font-size:var(--text-xs);color:var(--bone-soft)}
.docs .btn{min-height:44px;padding:.7rem 1.1rem;font-size:var(--text-xs)}

/* Protocol / guide slabs */
.stack{display:grid;gap:clamp(1.5rem,3vw,2.25rem)}
.slab h3{font-size:var(--text-2xl);line-height:1.12;letter-spacing:-.02em;margin-top:var(--space-md);font-variation-settings:'SOFT' 30,'WONK' 0,'opsz' 48}
.slab__sub{margin-top:.5rem;color:var(--brass-lit);font-size:var(--text-sm)}
.slab__desc{margin-top:var(--space-md);max-width:70ch;line-height:1.7}
.inside{margin-top:var(--space-lg)}
.inside ul{display:grid;gap:.15rem}
.inside .eyebrow{margin-bottom:.6rem;color:var(--bone-soft)}
.inside li{display:flex;gap:.75rem;align-items:baseline;padding:.3rem 0;font-size:var(--text-sm);color:var(--bone-soft);line-height:1.55}
.inside li::before{content:"";flex:none;width:10px;height:6px;border-left:1.5px solid var(--verde);border-bottom:1.5px solid var(--verde);transform:translateY(-3px) rotate(-45deg)}
.slab__foot{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-top:var(--space-lg);padding-top:var(--space-md);border-top:1px solid var(--rule)}
.slab__foot .meta{font-size:var(--text-xs)}

.jump{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;margin-top:var(--space-xl)}
.jump>span{font-size:var(--text-2xs);letter-spacing:.13em;text-transform:uppercase;color:var(--bone-soft);font-weight:600;margin-right:.4rem}
.jump a{display:inline-flex;align-items:center;gap:.5rem;min-height:40px;padding:.5rem .9rem;border-radius:var(--radius-sm);box-shadow:inset 0 0 0 1px var(--rule-strong);
  color:var(--bone);text-decoration:none;font-size:var(--text-sm);transition:background-color var(--dur-micro) var(--ease-soft),box-shadow var(--dur-micro) var(--ease-soft)}
.jump a:hover{background:rgba(242,237,227,.05);box-shadow:inset 0 0 0 1px var(--brass)}
.jump a i{font-style:normal;font-size:var(--text-xs);color:var(--brass)}
.region{scroll-margin-top:96px}
.region+.region{margin-top:var(--space-2xl)}
.region__head{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;padding-bottom:var(--space-md);margin-bottom:var(--space-lg);border-bottom:1px solid var(--rule-strong)}
.region__head h2{font-size:var(--text-3xl);letter-spacing:-.025em;font-variation-settings:'SOFT' 30,'WONK' 1,'opsz' 96}
.region__head span{font-size:var(--text-xs);color:var(--bone-soft)}

/* Methodology — the four-layer process is a real sequence, so it is numbered */
.steps{counter-reset:step;margin-top:var(--space-xl)}
.steps>li{display:grid;grid-template-columns:4.5rem minmax(0,1fr);gap:0 1.5rem;padding:2rem 0;border-top:1px solid var(--rule)}
.steps>li:last-child{border-bottom:1px solid var(--rule)}
.steps>li::before{counter-increment:step;content:counter(step);font:400 var(--text-4xl)/.9 var(--font-display);color:var(--brass);font-variation-settings:'SOFT' 30,'WONK' 0,'opsz' 144;letter-spacing:-.04em}
.steps h3{font-size:var(--text-xl);line-height:1.2;letter-spacing:-.012em;font-variation-settings:'SOFT' 30,'WONK' 0,'opsz' 36}
.steps p{margin-top:.75rem;max-width:68ch;line-height:1.7}
.chips{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:1rem}
.chips span{font-size:var(--text-xs);padding:.32rem .6rem;border-radius:var(--radius-xs);box-shadow:inset 0 0 0 1px var(--rule-strong);color:var(--bone-soft)}

/* Systems — stacked layers */
.layers>li{display:grid;grid-template-columns:minmax(0,15rem) minmax(0,1fr);gap:1rem 3rem;padding:2.25rem 0;border-top:1px solid var(--rule)}
.layers>li:last-child{border-bottom:1px solid var(--rule)}
.layers h3{font-size:var(--text-xl);line-height:1.18;letter-spacing:-.015em;font-variation-settings:'SOFT' 30,'WONK' 0,'opsz' 36}
.layers p{line-height:1.7;max-width:66ch}
.layers p+p,.layers .eyebrow+p{margin-top:.6rem}
.layers .eyebrow{margin-top:1.25rem;color:var(--brass)}
.signal{margin-top:1.25rem;padding:1rem 1.25rem;background:var(--stone-2);border-radius:var(--radius-sm);box-shadow:var(--lift-1);font-size:var(--text-sm);line-height:1.6;max-width:66ch}
.signal strong{color:var(--bone);font-weight:600}

.isnt{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-xl) clamp(2rem,5vw,5rem)}
.isnt h2{font-size:var(--text-2xl);letter-spacing:-.02em}
.isnt>div>p{margin-top:.75rem}
.marks{margin-top:var(--space-lg);border-top:1px solid var(--rule)}
.marks li{display:flex;gap:.9rem;align-items:baseline;padding:.9rem 0;border-bottom:1px solid var(--rule);line-height:1.55}
.marks li::before{flex:none;width:1.1rem;text-align:center;font-weight:600}
.marks--yes li::before{content:"\2713";color:var(--verde)}
.marks--no li::before{content:"\2715";color:var(--bone-faint)}

.tiers{margin-top:var(--space-lg);display:grid;gap:1rem}
.tiers li{display:grid;grid-template-columns:minmax(0,13rem) minmax(0,1fr);gap:.75rem 2rem;align-items:baseline;padding:1.25rem 0;border-top:1px solid var(--rule)}
.tiers li:last-child{border-bottom:1px solid var(--rule)}
.tier{justify-self:start}
.tier--strong{color:var(--verde);background:rgba(143,174,114,.12);box-shadow:inset 0 0 0 1px rgba(143,174,114,.3)}
.tier--moderate{color:var(--brass);background:rgba(201,166,107,.1);box-shadow:inset 0 0 0 1px rgba(201,166,107,.3)}
.tier--emerging{color:var(--bone-soft);box-shadow:inset 0 0 0 1px var(--rule-strong)}

/* About */
.cvcard{position:relative}
.cvcard figure{margin:0 0 var(--space-lg)}
.cvcard img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;border-radius:var(--radius-leaf);box-shadow:0 0 0 1px var(--rule-strong),0 18px 40px rgba(0,0,0,.35);filter:brightness(.95)}
.cvcard .cv{margin-top:0}
.cvcard .cv div{grid-template-columns:1fr;gap:.2rem}
.highlight{margin:2.2em 0}

/* Coming soon list */
.coming li{display:grid;grid-template-columns:minmax(0,12rem) minmax(0,1fr) auto;gap:.5rem 2rem;align-items:baseline;padding:1.35rem 0;border-top:1px solid var(--rule)}
.coming li:last-child{border-bottom:1px solid var(--rule)}
.coming .t{font:550 var(--text-lg)/1.3 var(--font-display);color:var(--bone);letter-spacing:-.01em;font-variation-settings:'SOFT' 30,'WONK' 0,'opsz' 36}
.coming .p{font-size:var(--text-xs);color:var(--brass);letter-spacing:.1em;text-transform:uppercase;font-weight:600}
.coming .s{font-size:var(--text-xs);color:var(--bone-soft);white-space:nowrap}

/* Pricing page */
.feats{display:grid;gap:0;margin-top:var(--space-lg);border-top:1px solid var(--rule)}
.feats li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.2rem .9rem;padding:.9rem 0;border-bottom:1px solid var(--rule)}
.feats li::before{content:"";grid-row:span 2;width:10px;height:6px;margin-top:.45rem;border-left:1.5px solid var(--verde);border-bottom:1.5px solid var(--verde);transform:rotate(-45deg)}
.feats b{color:var(--bone);font-weight:600;font-size:var(--text-sm)}
.feats span{font-size:var(--text-sm);color:var(--bone-soft)}
.plan__per{display:block;margin-top:.55rem;font-size:var(--text-xs);color:var(--bone-soft)}
.plan__per strong{color:var(--bone);font-weight:600}
.astrip{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:1.5rem 2rem;align-items:center}
.astrip img{width:88px;height:88px;object-fit:cover;object-position:50% 25%;border-radius:var(--radius-md);box-shadow:0 0 0 1px var(--rule-strong)}
.astrip h2{font-size:var(--text-xl);letter-spacing:-.015em}
.astrip p{margin-top:.4rem;max-width:62ch;font-size:var(--text-sm)}

/* Auth / checkout cards */
.authwrap{max-width:680px}
.authwrap .slab>*+*{margin-top:var(--space-md)}
.authwrap h1{font-size:var(--text-3xl);line-height:1.06;letter-spacing:-.025em;font-variation-settings:'SOFT' 30,'WONK' 1,'opsz' 96}
.authwrap h2{font-size:var(--text-xl);letter-spacing:-.012em;margin-top:var(--space-xl)}
.notice{padding:1.1rem 1.25rem;border-radius:var(--radius-sm);background:rgba(143,174,114,.08);box-shadow:inset 0 0 0 1px rgba(143,174,114,.25)}
.notice b{display:block;color:var(--verde);font-weight:600;margin-bottom:.35rem}
.notice p{font-size:var(--text-sm);line-height:1.6}
.helper{font-size:var(--text-sm);line-height:1.8;padding-top:var(--space-md);border-top:1px solid var(--rule)}
.helper a{color:var(--bone);text-decoration-color:var(--brass)}
.choose{display:grid;gap:.75rem}
.choose a{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.1rem 1.25rem;border-radius:var(--radius-sm);text-decoration:none;
  background:var(--stone-3);box-shadow:var(--lift-1);color:var(--bone);transition:background-color var(--dur-micro) var(--ease-soft),transform var(--dur-micro) var(--ease-soft)}
.choose a:hover{background:#3B4048;transform:translateY(-1px)}
.choose a small{display:block;margin-top:.2rem;color:var(--bone-soft);font-size:var(--text-xs)}
.choose a .save{color:var(--verde);font-size:var(--text-xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase}
.spinner{width:28px;height:28px;border-radius:50%;border:2px solid var(--rule-strong);border-top-color:var(--brass);animation:spin 900ms linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}

@media (max-width:1020px){
  .phero__grid,.band,.isnt{grid-template-columns:1fr}
}
@media (max-width:720px){
  .ledger li,.layers>li,.tiers li,.coming li{grid-template-columns:1fr}
  .steps>li{grid-template-columns:3rem minmax(0,1fr);gap:0 1rem}
  .steps>li::before{font-size:var(--text-3xl)}
  .astrip{grid-template-columns:auto minmax(0,1fr)}
  .astrip>div:last-child{grid-column:1/-1}
  .docs .btn{width:100%;justify-content:center}
  .coming .s{white-space:normal}
}
.js .phero [data-seq]{animation:rise var(--dur-slow) var(--ease-out) both;animation-delay:calc(80ms + var(--i,0) * var(--stagger))}
.js .phero .rail--top{transform-origin:top;animation:grow 1.2s var(--ease-out) 120ms both}
@media (min-width:1021px){.cvcard{position:sticky;top:104px}}
.authwrap .slab>h2{margin-top:var(--space-xl)}
.authwrap .slab>.helper{margin-top:var(--space-xl)}
.prose--article>h2:first-child{margin-top:0}
.prose--article>h2:first-child+p{font-size:1.18em;color:var(--bone);line-height:1.6}

/* Article contents rail — fills the right column on long reads, sticky on desktop */
.article-grid{display:grid;grid-template-columns:minmax(0,var(--measure)) minmax(0,15rem);gap:clamp(2rem,6vw,6rem);align-items:start}
.toc{position:sticky;top:104px;font-size:var(--text-sm)}
.toc .eyebrow{color:var(--bone-soft);margin-bottom:.75rem}
.toc ol{list-style:none;margin:0;padding:0;border-left:1px solid var(--rule)}
.toc a{display:block;padding:.45rem 0 .45rem 1rem;margin-left:-1px;border-left:1px solid transparent;color:var(--bone-soft);text-decoration:none;line-height:1.4;
  transition:color var(--dur-micro) var(--ease-soft),border-color var(--dur-micro) var(--ease-soft)}
.toc a:hover,.toc a[aria-current="true"]{color:var(--bone);border-left-color:var(--brass)}
.prose h2[id]{scroll-margin-top:100px}
@media (max-width:1020px){.article-grid{grid-template-columns:1fr}.toc{display:none}}
