/* Pseudo Spoon — "Old World / New Machine" (retro classical meets tech)
   Palette "Mission": deep space navy, bone, signal orange, jade. Display: Cormorant Garamond. Body: EB Garamond. UI: Inter. Data: JetBrains Mono. */
/* Self-hosted fonts (SIL OFL 1.1, see fonts/OFL.txt). Latin subset, variable weight where available. */
@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:400 600;font-display:swap;src:url(fonts/cormorant-garamond-roman.woff2) format("woff2")}
@font-face{font-family:"Cormorant Garamond";font-style:italic;font-weight:400 500;font-display:swap;src:url(fonts/cormorant-garamond-italic.woff2) format("woff2")}
@font-face{font-family:"EB Garamond";font-style:normal;font-weight:400 500;font-display:swap;src:url(fonts/eb-garamond-roman.woff2) format("woff2")}
@font-face{font-family:"EB Garamond";font-style:italic;font-weight:400;font-display:swap;src:url(fonts/eb-garamond-italic.woff2) format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-weight:400 600;font-display:swap;src:url(fonts/inter.woff2) format("woff2")}
@font-face{font-family:"JetBrains Mono";font-style:normal;font-weight:400 500;font-display:swap;src:url(fonts/jetbrains-mono.woff2) format("woff2")}
:root{
  /* Mission: deep space navy, bone white, signal orange (primary), jade (secondary) */
  --ink:#0a0f1c; --ink-2:#111829; --ink-3:#192136;
  --bone:#ece6d8; --muted:#b4afa3; --dim:#8f8b83;
  --line:rgba(var(--bone-rgb),.14); --line-2:rgba(var(--bone-rgb),.26);
  --ink-rgb:10,15,28; --bone-rgb:236,230,216; --gold-rgb:255,106,43; --ox-rgb:212,87,42; --p-ink-rgb:16,23,42;
  --ox-text:#ffd2bf; --err:#ffa08f; --img-ink:url(#tint-ink); --img-paper:url(#tint-paper);
  --gold:#ff6a2b; --gold-2:#ff9461; --gold-ink:#1c0900;
  --ox:#b23f17; --ox-2:#d4572a;
  --jade:#3fa88a; --jade-2:#6fd0b0; --jade-deep:#17694f; --jade-rgb:63,168,138;
  --paper:#ece6d8; --paper-2:#e1dacb; --p-ink:#10172a; --p-muted:#4e4c47; --p-line:rgba(var(--p-ink-rgb),.18);
  --disp:"Cormorant Garamond","EB Garamond",Garamond,"Times New Roman",serif;
  --serif:"EB Garamond",Garamond,Georgia,serif;
  --ui:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --mono:"JetBrains Mono",ui-monospace,Menlo,Consolas,monospace;
  --wrap:1180px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--ink);color:var(--bone);font:400 19px/1.6 var(--serif);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit}
::selection{background:var(--gold);color:var(--gold-ink)}
:focus-visible{outline:2px solid var(--gold-2);outline-offset:3px}
.skip{position:absolute;left:-9999px;top:8px;z-index:100;background:var(--gold);color:var(--gold-ink);padding:10px 14px;font:600 14px var(--ui)}
.skip:focus{left:8px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.mono{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 28px}
.center{text-align:center}

/* paper grain + fine rule grid (decorative) */
.grain{position:fixed;inset:0;pointer-events:none;z-index:1;opacity:.05;mix-blend-mode:screen;
  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='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}

/* ---------- NAV ---------- */
.nav{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:22px;padding:14px 28px;background:rgba(var(--ink-rgb),.86);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;font:600 22px/1 var(--disp);letter-spacing:.02em}
.logo img{width:24px;height:24px}
.logo b{font-weight:600;font-style:italic;color:var(--gold)}
.nav-status{color:var(--dim);display:flex;align-items:center;gap:8px;white-space:nowrap}
.dot{width:6px;height:6px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 3px rgba(var(--gold-rgb),.18);display:inline-block}
.nav nav{margin-left:auto;display:flex;align-items:center;gap:26px}
.nav nav a{font:500 14px var(--ui);text-decoration:none;color:var(--muted);letter-spacing:.01em}
.nav nav a:hover,.nav nav a[aria-current]{color:var(--bone)}
.nav-toggle{display:none;margin-left:auto;background:none;border:1px solid var(--line-2);color:var(--bone);font:500 11px var(--mono);letter-spacing:.16em;padding:9px 12px;cursor:pointer}

/* ---------- BUTTONS ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 22px;background:var(--gold);color:var(--gold-ink)!important;border:1px solid var(--gold);font:600 14px/1 var(--ui);letter-spacing:.04em;text-decoration:none;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.btn:hover{background:var(--gold-2);border-color:var(--gold-2)}
.btn::after{content:"→";font-family:var(--mono);font-weight:400}
.btn-ghost{background:transparent;color:var(--bone)!important;border-color:var(--line-2)}
.btn-ghost:hover{background:rgba(var(--bone-rgb),.06);border-color:var(--bone)}
.btn-sm{padding:10px 15px;font-size:13px}
.btn-sm::after{display:none}
.btn-block{width:100%}
.btn[disabled],.btn[aria-disabled=true]{background:transparent;border:1px dashed var(--line-2);color:var(--dim)!important;cursor:not-allowed}
.btn[disabled]::after{content:none}
.nav .btn{color:var(--gold-ink)!important}

/* ---------- SECTION HEADS ---------- */
.section{position:relative;z-index:2;padding:120px 0}
.sec-head{display:flex;align-items:center;gap:16px;margin-bottom:28px;color:var(--dim)}
.sec-head .num{color:var(--gold)}
.sec-head .rule{flex:1;height:1px;background:linear-gradient(90deg,var(--line-2),transparent)}
h1,h2,h3{font-family:var(--disp);font-weight:500;line-height:1.02;letter-spacing:-.01em;margin:0}
h2{font-size:clamp(40px,5.6vw,72px)}
h2 em,h1 em{font-style:italic;color:var(--gold)}
h3{font-size:30px;line-height:1.1}
.intro{max-width:720px;font-size:21px;color:var(--muted);margin:22px 0 0}
.lede-vision{font-family:var(--disp);font-style:italic;font-size:24px;color:var(--gold-2);margin:14px 0 0}
p{margin:0 0 14px}
.small{font-size:15px}
.muted{color:var(--muted)}
.fineprint{font:400 12.5px/1.6 var(--ui);color:var(--dim)}

/* ---------- HERO ---------- */
.hero{position:relative;z-index:2;padding:72px 0 88px;border-bottom:1px solid var(--line);overflow:hidden}
.hero .wrap{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:64px;align-items:center}
.hero-meta{display:flex;flex-wrap:wrap;gap:6px 28px;color:var(--dim);margin-bottom:46px}
.hero-meta span:first-child{color:var(--gold)}
.eyebrow{display:flex;align-items:center;gap:10px;color:var(--muted);margin:0 0 26px}
.hero h1{font-size:clamp(56px,8.4vw,118px);line-height:.92;letter-spacing:-.025em}
.hero h1 span{display:block}
.hero h1 em{font-weight:400}
.hero-sub{font-size:23px;line-height:1.5;color:var(--bone);max-width:560px;margin:30px 0 0}
.motto{display:flex;align-items:center;gap:14px;margin:26px 0 0;color:var(--gold)}
.motto::before{content:"";width:36px;height:1px;background:var(--gold)}
.ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:36px}
.hero-note{font-size:16px;color:var(--muted);max-width:520px;margin-top:28px}
.plate{position:relative;margin:0;border:1px solid var(--line-2);padding:14px;background:var(--ink-2)}
.plate::before{content:"";position:absolute;inset:6px;border:1px solid var(--line);pointer-events:none}
.plate img{width:100%;height:auto;filter:contrast(1.04)}
.plate figcaption{display:flex;justify-content:space-between;gap:12px;margin-top:12px;color:var(--dim);font:400 10.5px/1.4 var(--mono);letter-spacing:.12em;text-transform:uppercase}
.plate .tick{position:absolute;width:14px;height:14px;border-color:var(--gold);border-style:solid;border-width:0}
.plate .t1{top:-1px;left:-1px;border-top-width:1px;border-left-width:1px}
.plate .t2{top:-1px;right:-1px;border-top-width:1px;border-right-width:1px}
.plate .t3{bottom:-1px;left:-1px;border-bottom-width:1px;border-left-width:1px}
.plate .t4{bottom:-1px;right:-1px;border-bottom-width:1px;border-right-width:1px}
.hero-plate{position:relative}
.hero-plate .plate img{aspect-ratio:4/5;object-fit:cover;object-position:50% 35%}
.readout{position:absolute;left:-36px;bottom:64px;width:250px;background:rgba(var(--ink-rgb),.92);border:1px solid var(--line-2);padding:14px 16px;backdrop-filter:blur(6px)}
.readout .rh{display:flex;justify-content:space-between;color:var(--gold);margin-bottom:10px;padding-bottom:9px;border-bottom:1px solid var(--line)}
.readout dl{margin:0;display:grid;gap:7px}
.readout dl div{display:flex;justify-content:space-between;gap:10px}
.readout dt{color:var(--dim)}
.readout dd{margin:0;color:var(--bone)}
.readout dd.g{color:var(--gold-2)}
.coord{position:absolute;right:-8px;top:18px;writing-mode:vertical-rl;color:var(--dim)}
.scan{position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(var(--gold-rgb),.45),transparent);animation:scan 9s linear infinite;pointer-events:none;z-index:3}
@keyframes scan{0%{transform:translateY(0)}100%{transform:translateY(900px)}}

/* ---------- TICKER ---------- */
.ticker{position:relative;z-index:2;display:flex;align-items:stretch;background:var(--ink-2);border-bottom:1px solid var(--line)}
.ticker-label{flex:none;display:flex;align-items:center;gap:14px;padding:0 20px;background:var(--ox);color:var(--bone)}
.ticker-toggle{background:none;border:1px solid rgba(var(--bone-rgb),.6);color:var(--bone);font:500 10px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;padding:6px 8px;min-height:28px;cursor:pointer}
.ticker-toggle:hover{background:rgba(var(--bone-rgb),.14)}
.ticker-toggle:focus-visible{outline:2px solid var(--bone);outline-offset:2px}
.ticker-window{flex:1;overflow:hidden;padding:17px 0}
.ticker-track{display:flex;width:max-content;animation:tick 60s linear infinite}
.ticker:hover .ticker-track,.ticker:focus-within .ticker-track,.ticker.paused .ticker-track{animation-play-state:paused}
.ticker ul{display:flex;list-style:none;margin:0;padding:0}
.ticker li{white-space:nowrap;padding:0 28px;font:italic 400 20px/1.3 var(--disp);color:var(--bone)}
.ticker li::after{content:"✦";font-style:normal;color:var(--gold);font-size:12px;margin-left:56px;vertical-align:middle}
@keyframes tick{to{transform:translateX(-50%)}}

/* ---------- MANIFESTO ---------- */
.manifesto .wrap{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:72px;align-items:start}
.manifesto h2{font-size:clamp(44px,5.4vw,76px)}
.manifesto-body .big{font-family:var(--disp);font-size:clamp(26px,2.6vw,34px);line-height:1.28;color:var(--bone);margin:0 0 28px}
.manifesto-body .big em{color:var(--gold-2)}
.pillars{list-style:none;margin:40px 0 0;padding:0;border-top:1px solid var(--line)}
.pillars li{display:grid;grid-template-columns:64px 1fr;gap:18px;padding:24px 0;border-bottom:1px solid var(--line)}
.pillars .rn{font:500 30px/1 var(--disp);color:var(--gold);font-style:italic}
.pillars h3{font-size:26px;margin-bottom:6px}
.pillars p{color:var(--muted);margin:0;font-size:18px}
.cities{display:flex;flex-wrap:wrap;gap:8px 0;margin:14px 0 0;color:var(--dim)}
.cities span{padding-right:14px;margin-right:14px;border-right:1px solid var(--line-2)}
.cities span:last-child{border:0}
.note-target{display:inline-block;margin-top:8px;color:var(--gold);border:1px solid rgba(var(--gold-rgb),.4);padding:3px 7px}

/* ---------- PRINCIPLES STRIP ---------- */
.principles{position:relative;z-index:2;background:var(--paper);color:var(--p-ink);padding:74px 0}
.principles .sec-head{color:var(--p-muted)}
.principles .sec-head .num{color:var(--ox)}
.principles .sec-head .rule{background:linear-gradient(90deg,var(--p-line),transparent)}
.principles h2{font-size:clamp(34px,4vw,52px);margin-bottom:36px}
.principles h2 em{color:var(--ox)}
.pr-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-top:1px solid var(--p-ink)}
.pr-grid article{padding:22px 20px 6px 0;border-right:1px solid var(--p-line);margin-right:20px}
.pr-grid article:last-child{border-right:0;margin-right:0}
.pr-grid .mono{color:var(--ox);display:block;margin-bottom:12px}
.pr-grid h3{font-size:25px;margin-bottom:10px}
.pr-grid p{font-size:16.5px;line-height:1.5;color:var(--p-muted)}

/* ---------- REALMS ---------- */
.realms-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--line-2);margin-top:44px}
.realm{padding:40px;position:relative}
.realm+.realm{border-left:1px solid var(--line-2)}
.realm .card-meta{display:flex;justify-content:space-between;gap:12px;color:var(--dim);margin-bottom:28px}
.realm h3{font-size:38px;margin-bottom:12px}
.realm p{color:var(--muted)}
.tag{display:inline-block;padding:4px 8px;font:500 10px/1.2 var(--mono);letter-spacing:.14em;text-transform:uppercase;border:1px solid var(--gold);color:var(--gold)}
.tag-ox{border-color:var(--ox-2);color:var(--ox-text)}
.ticks{list-style:none;padding:0;margin:20px 0 0;display:grid;gap:8px}
.ticks li{display:flex;gap:12px;font-size:17px}
.ticks li::before{content:"—";color:var(--gold)}

/* ---------- SHOP PREVIEW ---------- */
.shop-state{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;margin:40px 0 26px;padding:16px 20px;border:1px solid var(--line-2);background:var(--ink-2)}
.shop-state .st{display:flex;align-items:center;gap:12px;color:var(--bone)}
.shop-state .st .dot{background:var(--ox-2);box-shadow:0 0 0 3px rgba(var(--ox-rgb),.25)}
.shop-state .mono{color:var(--dim)}
.listings{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.listing{display:flex;flex-direction:column;background:var(--ink-2);border:1px solid var(--line);transition:border-color .25s,transform .25s}
.listing:hover{border-color:var(--line-2);transform:translateY(-3px)}
.ph-art{position:relative;aspect-ratio:4/5;background:var(--paper);overflow:hidden;border-bottom:1px solid var(--line)}
.ph-art svg{width:100%;height:100%;display:block}
.ph-label{position:absolute;left:10px;top:10px;background:var(--ink);color:var(--bone);padding:5px 8px;font:500 9.5px/1 var(--mono);letter-spacing:.16em}
.listing-body{padding:18px 18px 20px;display:flex;flex-direction:column;flex:1}
.listing .lid{color:var(--dim);margin-bottom:10px;display:flex;justify-content:space-between}
.listing h3{font-size:25px;margin-bottom:8px}
.listing dl{margin:6px 0 16px;display:grid;gap:5px;font:400 11px/1.3 var(--mono);letter-spacing:.1em;text-transform:uppercase}
.listing dl div{display:flex;justify-content:space-between;border-bottom:1px dotted var(--line);padding-bottom:5px}
.listing dt{color:var(--dim)}.listing dd{margin:0;color:var(--bone)}
.listing dd.price{color:var(--gold-2)}
.listing .btn{margin-top:auto}
.shop-foot{margin-top:24px;color:var(--dim)}

/* modal */
dialog.buy{max-width:860px;width:calc(100% - 32px);padding:0;border:1px solid var(--line-2);background:var(--ink-2);color:var(--bone)}
dialog.buy::backdrop{background:rgba(var(--ink-rgb),.8);backdrop-filter:blur(3px)}
.buy-grid{display:grid;grid-template-columns:.9fr 1.1fr}
.buy-grid .ph-art{border:0;border-right:1px solid var(--line);aspect-ratio:auto;min-height:100%}
.buy-body{padding:30px}
.buy-body h3{font-size:36px;margin:8px 0 10px}
.buy-close{position:absolute;right:12px;top:12px;background:var(--ink);border:1px solid var(--line-2);color:var(--bone);width:38px;height:38px;cursor:pointer;font:400 20px/1 var(--ui);z-index:2}
.preview-flag{display:block;margin:0 48px 16px 0;padding:10px 12px;border:1px solid rgba(var(--ox-rgb),.6);background:rgba(var(--ox-rgb),.18);color:var(--ox-text);font:500 11px/1.5 var(--mono);letter-spacing:.1em;text-transform:uppercase}

.buy-confirm{margin:6px 0 18px;padding:12px 14px;border:1px dashed var(--line-2);font:400 13px/1.55 var(--ui);color:var(--muted)}
.buy-confirm p{margin:0 0 6px;color:var(--bone);font-weight:500}
.buy-confirm ul{margin:0;padding-left:18px}
.buy-confirm a{color:var(--gold-2)}
/* ---------- INTERLUDE (rhinoceros) ---------- */
.interlude{position:relative;z-index:2;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:96px 0;background:var(--ink-2)}
.interlude .wrap{display:grid;grid-template-columns:1.25fr .75fr;gap:56px;align-items:center}
.interlude blockquote{margin:0;font:italic 400 clamp(30px,3.2vw,44px)/1.18 var(--disp)}
.interlude blockquote b{font-style:normal;font-weight:500;color:var(--gold)}
.interlude p{color:var(--muted);margin-top:18px}

/* ---------- STEPS ---------- */
.steps{list-style:none;padding:0;margin:44px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line-2)}
.steps li{padding:30px 30px 10px 0;border-right:1px solid var(--line);margin-right:30px}
.steps li:last-child{border:0;margin:0}
.steps .n{font:italic 500 56px/1 var(--disp);color:var(--gold);display:block;margin-bottom:14px}
.steps h3{font-size:28px;margin-bottom:10px}
.steps p{color:var(--muted);font-size:18px}

/* ---------- ROADMAP ---------- */
.roadmap{list-style:none;padding:0;margin:48px 0 0;display:grid;grid-template-columns:repeat(3,1fr);position:relative}
.roadmap::before{content:"";position:absolute;left:0;right:0;top:9px;height:1px;background:var(--line-2)}
.roadmap li{position:relative;padding:40px 32px 0 0}
.roadmap li::before{content:"";position:absolute;left:0;top:3px;width:13px;height:13px;border:1px solid var(--gold);background:var(--ink);transform:rotate(45deg)}
.roadmap li.now::before{background:var(--gold)}
.roadmap .when{color:var(--gold);display:block;margin-bottom:10px}
.roadmap h3{font-size:32px;margin-bottom:10px}
.roadmap p{color:var(--muted);font-size:18px}

/* ---------- GALLERIES (parchment) ---------- */
.galleries{background:var(--paper);color:var(--p-ink)}
.galleries .sec-head{color:var(--p-muted)}
.galleries .sec-head .num{color:var(--ox)}
.galleries .sec-head .rule{background:linear-gradient(90deg,var(--p-line),transparent)}
.galleries h2 em{color:var(--ox)}
.gal-banner{position:relative;margin:0 0 56px;border:1px solid var(--p-line);padding:10px;background:var(--paper-2)}
.gal-banner img{width:100%;height:min(46vw,460px);object-fit:cover;object-position:50% 55%;mix-blend-mode:multiply}
.gal-banner figcaption{margin-top:10px;color:var(--p-muted);font:400 10.5px/1.4 var(--mono);letter-spacing:.12em;text-transform:uppercase}
.gal-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:64px}
.galleries .big{font-family:var(--disp);font-size:clamp(25px,2.4vw,32px);line-height:1.3;margin:24px 0 22px}
.galleries p{color:var(--p-ink)}
.galleries .muted,.galleries .small{color:var(--p-muted)}
.gal-realms{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--p-ink);margin:28px 0}
.gal-realms div{padding:20px 20px 4px 0}
.gal-realms div+div{border-left:1px solid var(--p-line);padding-left:20px}
.gal-realms .mono{color:var(--ox)}
.gal-realms h3{font-size:26px;margin:8px 0 6px}
.gal-realms p{color:var(--p-muted);font-size:17px}
.seek-line{border-left:2px solid var(--gold);padding:4px 0 4px 18px;font-style:italic}
.galleries .seek-line{border-color:var(--ox)}
.galleries .tag{border-color:var(--ox);color:var(--ox)}
.galleries .btn{background:var(--p-ink);border-color:var(--p-ink);color:var(--paper)!important}
.galleries .btn:hover{background:var(--ox);border-color:var(--ox)}
.galleries .btn-ghost{background:transparent;color:var(--p-ink)!important;border-color:var(--p-line)}
.galleries .btn-ghost:hover{background:rgba(var(--p-ink-rgb),.06);border-color:var(--p-ink)}
.gal-side .plate{background:var(--paper-2);border-color:var(--p-line)}
.gal-side .plate::before{border-color:var(--p-line)}
.gal-side .plate img{mix-blend-mode:multiply}
.gal-side .plate figcaption{color:var(--p-muted)}

/* ---------- CREATORS CTA ---------- */
.creators-cta .wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:64px;align-items:center}
.creators-cta .plate{background:var(--paper)}
.creators-cta .plate img{mix-blend-mode:multiply}
.creators-cta ul{margin:22px 0 0}

/* ---------- FORMS ---------- */
.forms{display:grid;grid-template-columns:1.1fr .9fr;gap:24px;margin-top:10px}
.form-card{background:var(--ink-2);border:1px solid var(--line-2);padding:38px;position:relative}
.form-card .card-meta{display:flex;justify-content:space-between;gap:10px;color:var(--dim);margin:0 0 22px;flex-wrap:wrap}
.form-card h2{font-size:clamp(34px,3.6vw,48px);margin-bottom:14px}
.form-card>p{color:var(--muted)}
form{margin-top:22px}
label,.label{display:block;font:500 13px/1.3 var(--ui);color:var(--bone);margin:18px 0 8px;letter-spacing:.01em}
label .req,.label .req{color:var(--gold-2)}
label .opt,.label .opt{color:var(--dim);font-weight:400}
.hint{display:block;font:400 13px/1.5 var(--ui);color:var(--dim);margin:-2px 0 8px}
input[type=text],input[type=email],input[type=url],select,textarea{width:100%;background:var(--ink);border:1px solid var(--line-2);color:var(--bone);padding:13px 14px;font:400 15px/1.4 var(--ui);border-radius:0}
input[type=file]{width:100%;font:400 14px var(--ui);color:var(--muted);padding:10px;border:1px dashed var(--line-2);background:var(--ink)}
textarea{resize:vertical}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(var(--gold-rgb),.18)}
[aria-invalid=true]{border-color:var(--err)!important}
.check{display:flex;gap:12px;align-items:flex-start;font:400 14px/1.5 var(--ui);color:var(--muted);margin:18px 0}
.check input{margin-top:3px;width:17px;height:17px;flex:none;accent-color:var(--gold)}
.radios{display:flex;gap:22px;margin:0 0 6px}
.radios label{display:flex;align-items:center;gap:8px;margin:0;font-weight:400;color:var(--muted)}
.radios input{accent-color:var(--gold);width:16px;height:16px}
fieldset{border:0;padding:0;margin:0}
legend{padding:0}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
.form-msg{min-height:1.4em;font:500 14px/1.4 var(--ui);margin:12px 0 0}
.form-msg.ok{color:var(--gold-2)}.form-msg.err{color:var(--err)}
.accent-line{color:var(--gold-2)!important;font-style:italic}

/* ---------- FOOTER ---------- */
.footer{position:relative;z-index:2;border-top:1px solid var(--line);padding:72px 0 44px;background:var(--ink)}
.foot-top{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap;padding-bottom:28px;border-bottom:1px solid var(--line);margin-bottom:28px}
.foot-motto{font:italic 400 clamp(32px,4.4vw,56px)/1.05 var(--disp);margin:0}
.foot-motto em{color:var(--gold)}
.foot-vision{color:var(--muted);max-width:640px;margin:14px 0 0;font-size:18px}
.foot-nav{display:flex;gap:22px;flex-wrap:wrap;font:500 13px var(--ui)}
.foot-nav a{color:var(--muted);text-decoration:none}.foot-nav a:hover{color:var(--bone)}
.fine{font:400 12.5px/1.65 var(--ui);color:var(--dim);max-width:980px}
.credits{font:400 11.5px/1.6 var(--ui);color:var(--dim);margin-top:18px;padding-top:18px;border-top:1px dotted var(--line)}
.credits a{color:var(--muted)}
.foot-meta{color:var(--dim)}

/* ---------- CREATOR PAGE ---------- */
.page-hero{position:relative;z-index:2;padding:72px 0 56px;border-bottom:1px solid var(--line)}
.page-hero .wrap{display:grid;grid-template-columns:1.2fr .8fr;gap:56px;align-items:end}
.page-hero h1{font-size:clamp(52px,7vw,96px);line-height:.95}
.page-hero .plate img{aspect-ratio:5/4;object-fit:cover;object-position:50% 40%;mix-blend-mode:multiply}
.page-hero .plate{background:var(--paper)}
.app-wrap{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:48px;align-items:start}
.app-aside{position:sticky;top:96px;border:1px solid var(--line-2);padding:26px;background:var(--ink-2)}
.app-aside h3{font-size:24px;margin-bottom:12px}
.app-aside ul{padding-left:18px;margin:0 0 12px;color:var(--muted);font-size:16px}
.app-aside li{margin-bottom:6px}
.qnum{font:500 11px var(--mono);color:var(--gold);letter-spacing:.14em;margin-right:8px}
.q{padding:6px 0 18px;border-bottom:1px solid var(--line)}
.q:last-of-type{border-bottom:0}
.cond{margin-top:6px}

/* ---------- REVEAL ---------- */
.js .rv{opacity:0;transform:translateY(18px);transition:opacity .9s ease,transform .9s ease}
.js .rv.in{opacity:1;transform:none}

/* ---------- RESPONSIVE ---------- */
@media (max-width:1060px){
  .listings{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pr-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0}
  .pr-grid article{border-right:0;margin-right:0;padding-right:20px;border-bottom:1px solid var(--p-line)}
  .nav-status{display:none}
}
@media (max-width:860px){
  body{font-size:18px}
  .section{padding:84px 0}
  .wrap{padding:0 20px}
  .nav{padding:12px 20px}
  .nav-toggle{display:block}
  .nav nav{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;align-items:stretch;gap:0;background:var(--ink);border-bottom:1px solid var(--line);padding:8px 20px 18px}
  .nav.open nav{display:flex}
  .nav nav a{padding:13px 0;border-bottom:1px solid var(--line);font-size:16px}
  .nav nav a.btn{margin-top:14px;border-bottom:0}
  .hero{padding:44px 0 64px}
  .hero .wrap,.manifesto .wrap,.interlude .wrap,.gal-grid,.creators-cta .wrap,.forms,.page-hero .wrap,.app-wrap{grid-template-columns:1fr;gap:40px}
  .hero-meta{margin-bottom:30px}
  .readout{left:12px;bottom:58px;width:220px}
  .realms-grid{grid-template-columns:1fr}
  .realm+.realm{border-left:0;border-top:1px solid var(--line-2)}
  .realm{padding:28px}
  .steps,.roadmap{grid-template-columns:1fr}
  .steps li{border-right:0;margin-right:0;border-bottom:1px solid var(--line);padding:24px 0}
  .roadmap::before{left:6px;right:auto;top:0;bottom:0;width:1px;height:auto}
  .roadmap li{padding:0 0 36px 40px}
  .roadmap li::before{top:6px}
  .buy-grid{grid-template-columns:1fr}
  .buy-grid .ph-art{border-right:0;border-bottom:1px solid var(--line);aspect-ratio:16/10}
  .app-aside{position:static}
  .form-card{padding:26px 20px}
}
@media (max-width:560px){
  .listings,.pr-grid{grid-template-columns:1fr}
  .gal-realms{grid-template-columns:1fr}
  .gal-realms div+div{border-left:0;padding-left:0;border-top:1px solid var(--p-line)}
  .row2{grid-template-columns:1fr}
  .ctas .btn{width:100%}
  .ticker-label{padding:0 12px}
  .ticker li{font-size:18px}
  .coord{display:none}
}

/* ---------- REDUCED MOTION ---------- */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
  .scan{display:none}
  .js .rv{opacity:1;transform:none}
  .ticker-track{width:auto}
  .ticker ul[aria-hidden]{display:none}
  .ticker ul{flex-wrap:wrap;row-gap:8px}
  .ticker li{white-space:normal}
  .ticker-toggle{display:none}
}
section[id],[id=partner]{scroll-margin-top:72px}
@media (max-width:560px){.listing .ph-art{aspect-ratio:1/1}}

/* engraving duotone (Mission navy/bone); alternate palettes archived in _archive-pre-retro/alt-palettes/ */
img[src*="-ink"]{filter:var(--img-ink)}
img[src*="-paper"]{filter:var(--img-paper)}
/* placeholder SVG art follows the theme */
svg [fill="#ece4d1"]{fill:var(--paper)}
svg [fill="#1d1913"]{fill:var(--p-ink)}
svg [stroke="#1d1913"]{stroke:var(--p-ink)}
/* ================= JADE (secondary accent; orange stays primary) ================= */
:focus-visible{outline-color:var(--jade-2)}
input:focus,select:focus,textarea:focus{border-color:var(--jade);box-shadow:0 0 0 3px rgba(var(--jade-rgb),.22)}
.dot{background:var(--jade);box-shadow:0 0 0 3px rgba(var(--jade-rgb),.2)}
.sec-head .rule{background:linear-gradient(90deg,rgba(var(--jade-rgb),.55),transparent)}
.principles .sec-head .rule,.galleries .sec-head .rule{background:linear-gradient(90deg,rgba(23,105,79,.5),transparent)}
.readout .rh{border-bottom-color:rgba(var(--jade-rgb),.35)}
.readout dt,.listing dl dt,.card-meta>span:first-child,.qnum{color:var(--jade)}
.readout dd.g{color:var(--jade-2)}
.plate .tick{border-color:var(--jade)}
.scan{background:linear-gradient(90deg,transparent,rgba(var(--jade-rgb),.5),transparent)}
.nav nav a{position:relative}
.nav nav a:hover,.nav nav a[aria-current]{color:var(--jade-2)}
.foot-nav a:hover{color:var(--jade-2)}
.btn-ghost:hover{border-color:var(--jade);color:var(--jade-2)!important;background:rgba(var(--jade-rgb),.08)}
.listing:hover{border-color:rgba(var(--jade-rgb),.6)}
.listing dl div{border-bottom-color:rgba(var(--jade-rgb),.22)}
.pillars,.pillars li{border-color:rgba(var(--jade-rgb),.2)}
/* physical / vault vertical */
.tag-jade{border-color:var(--jade);color:var(--jade-2)}
.galleries .tag{border-color:var(--jade-deep);color:var(--jade-deep)}
.galleries h2 em,.gal-realms .mono.phys{color:var(--jade-deep)}
.galleries .btn:hover{background:var(--jade-deep);border-color:var(--jade-deep)}
.galleries .btn-ghost:hover{border-color:var(--jade-deep);color:var(--jade-deep)!important;background:rgba(23,105,79,.06)}
.roadmap li.vault::before{border-color:var(--jade)}
.roadmap li.vault .when{color:var(--jade)}
/* headline accent words in jade (one or two only) */
h2 em.j,h1 em.j{color:var(--jade)}
/* city route: hairline path, "and beyond" in jade */
.cities{align-items:center}
.cities span{border-right-color:rgba(var(--jade-rgb),.35)}
.cities .beyond{color:var(--jade);display:inline-flex;align-items:center;gap:10px}
.cities .beyond::before{content:"";width:42px;height:1px;background:repeating-linear-gradient(90deg,var(--jade) 0 4px,transparent 4px 8px)}
.cities .beyond::after{content:"\2192";font-family:var(--ui);letter-spacing:0}
.cities span:has(+ .beyond){border-right:0}
.realm:first-child .card-meta>span:first-child{color:var(--gold)}

/* ================= Pre-launch fixes (Nov 2026) ================= */
/* #7 focus ring on parchment sections: jade-deep (5.3:1 on paper) */
.galleries :focus-visible,.principles :focus-visible{outline-color:var(--jade-deep)}
/* #9 figcaptions on parchment-backed plates */
.creators-cta .plate figcaption,.page-hero .plate figcaption{color:var(--p-muted)}
/* #41 input/select/textarea boundaries >= 3:1 on navy */
input[type=text],input[type=email],input[type=url],select,textarea,input[type=file]{border-color:rgba(var(--bone-rgb),.42)}
/* honeypot: off-screen, not display:none so naive bots still fill it */
.hp{position:absolute!important;left:-10000px!important;top:auto;width:1px;height:1px;overflow:hidden}
/* form consent note + sending state */
.form-note{font:400 12.5px/1.6 var(--ui);color:var(--dim);margin:12px 0 0}
.form-note a,.foot-legal a{color:var(--muted)}
.btn[aria-busy=true]{opacity:.75;cursor:progress}
.btn[aria-busy=true]::after{content:none}
.foot-legal{font:400 12.5px/1.65 var(--ui);color:var(--muted);margin:0 0 10px}
/* legal pages */
.legal-wrap{max-width:820px}
.legal h2{font-size:clamp(28px,3.2vw,38px);margin:44px 0 14px}
.legal h3{font-size:24px;margin:26px 0 10px}
.legal p,.legal li{font-size:18px;color:var(--muted)}
.legal strong{color:var(--bone);font-weight:500}
.legal ul,.legal ol{padding-left:22px;margin:0 0 14px}
.legal li{margin-bottom:6px}
.legal a{color:var(--gold-2)}
.legal table{width:100%;border-collapse:collapse;margin:10px 0 18px;font:400 14px/1.5 var(--ui)}
.legal th,.legal td{text-align:left;vertical-align:top;padding:10px 12px;border-bottom:1px solid var(--line);color:var(--muted)}
.legal th{color:var(--bone);font-weight:600;border-bottom-color:var(--line-2)}
.legal .table-scroll{overflow-x:auto}
.draft-banner{margin:0 0 28px;padding:12px 14px;border:1px solid rgba(var(--ox-rgb),.6);background:rgba(var(--ox-rgb),.16);color:var(--ox-text);font:500 12px/1.5 var(--mono);letter-spacing:.08em;text-transform:uppercase}
mark.ph{background:rgba(var(--gold-rgb),.16);color:var(--gold-2);padding:0 3px;font:inherit}
.legal-toc{columns:2;column-gap:32px;font:400 14px/1.7 var(--ui);padding-left:0;list-style:none}
.legal-toc a{color:var(--muted)}
@media (max-width:560px){.legal-toc{columns:1}}
.motion-paused .scan{animation-play-state:paused}
.nw{white-space:nowrap}

/* ===== v3: consulting / RWA reposition (copy-level additions, same palette) ===== */
.hero-body{font-size:18px;line-height:1.6;color:var(--muted);max-width:560px;margin:20px 0 0}
.services h2{margin-bottom:10px}
.sv-sub{font-family:var(--disp);font-style:italic;font-size:24px;color:var(--p-muted);margin:0 0 34px}
.sv-label{color:var(--p-ink);font-weight:600;margin:0 0 14px;font-size:12px}
.pr-grid.pr-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.gal-realms.gal-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.gal-realms.gal-3 div+div{border-left:1px solid var(--p-line);padding-left:20px}
.forms.forms-one{grid-template-columns:minmax(0,720px)}
.form-card a{color:var(--gold-2)}
.foot-cols{display:grid;grid-template-columns:repeat(3,minmax(0,220px));gap:24px;margin:0 0 30px;padding-bottom:28px;border-bottom:1px solid var(--line)}
.foot-cols nav{display:flex;flex-direction:column;gap:8px;font:500 14px var(--ui)}
.foot-cols .mono{color:var(--dim);margin:0 0 6px}
.foot-cols a{color:var(--bone);text-decoration:none}
.foot-cols a:hover{color:var(--gold-2);text-decoration:underline}
.who-body{max-width:760px;margin-top:28px}
.who-body p{color:var(--muted)}
@media (max-width:1060px){.pr-grid.pr-4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:860px){
  .gal-realms.gal-3{grid-template-columns:1fr}
  .gal-realms.gal-3 div+div{border-left:0;padding-left:0;border-top:1px solid var(--p-line)}
  .foot-cols{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:560px){.pr-grid.pr-4{grid-template-columns:1fr}.foot-cols{grid-template-columns:1fr}}
.services+.galleries{border-top:1px solid var(--p-line)}

/* X profile link */
.x-link{display:inline-flex;align-items:center;gap:7px;white-space:nowrap}
.x-link .x-icon{flex:none;width:14px;height:14px}
.foot-cols a.x-link:hover{text-decoration:none}
.foot-cols a.x-link:hover span{text-decoration:underline}
.x-follow{margin-top:-4px}
.x-follow .x-link{color:var(--gold-2);vertical-align:-2px}
.x-follow .x-link:hover{color:var(--jade-2)}

/* ===== Mobile QA pass (Nov 2 2026) ===== */
/* iOS zooms on focus when inputs are < 16px */
input[type=text],input[type=email],input[type=url],select,textarea{font-size:16px}
/* X contact: quiet outline button + profile fallback */
.x-contact{margin:6px 0 4px}
.btn-x{min-height:48px;gap:10px;font-weight:500;letter-spacing:.03em;border-color:rgba(var(--bone-rgb),.42)}
.btn-x .x-icon{width:15px;height:15px;flex:none}
.btn-x::after{content:"\2197"}
.x-fallback{margin:8px 0 0}
.x-fallback a{display:inline-flex;align-items:center;min-height:44px}
.foot-cols a.x-dm,.foot-nav a.x-dm{color:var(--muted)}
@media (max-width:860px){
  .logo{min-height:44px}
  .nav-toggle{min-height:44px;min-width:56px;padding:0 14px}
  section[id]{scroll-margin-top:80px}
  .ticker-toggle{min-height:44px;min-width:44px}
  .foot-cols nav{gap:0}
  .foot-cols nav a{display:flex;align-items:center;min-height:44px}
  .foot-cols .mono{margin:0 0 2px}
  .foot-nav{gap:0 22px}
  .foot-nav a{display:inline-flex;align-items:center;min-height:44px}
}
@media (max-width:560px){.btn-x{width:100%}}
/* submit button was flush against the select */
.js-form .btn-block{margin-top:24px}

/* Vault concept band (full-bleed, top of #galleries) */
.vision-band{margin:0 0 56px;background:var(--ink)}
.vision-band picture,.vision-band img{display:block;width:100%;height:auto}
.vision-band img{aspect-ratio:16/9;object-fit:cover}
.vision-band figcaption{background:var(--paper);padding-top:12px}
.vision-band-cap{display:block;max-width:var(--wrap);margin:0 auto;padding:0 28px;color:var(--p-muted);font:400 10.5px/1.5 var(--mono);letter-spacing:.12em;text-transform:uppercase}
@media (max-width:600px){.vision-band{margin-bottom:40px}.vision-band img{aspect-ratio:4/3}.vision-band-cap{padding:0 20px;font-size:11px}}
