:root{
  /* Design typography tokens: Bebas Neue, Spectral, IBM Plex Mono** from Google Fonts for prompts. */
  --deep:#2A0712;
  --wine:#5B1025;
  --cream:#F4E6C8;
  --vellum:#FFF2D6;
  --rose:#FF3D7F;
  --amber:#F0B65A;
  --mauve:#B78AA0;
  --display:"Bebas Neue", Impact, "Arial Narrow", sans-serif;
  --mono:"IBM Plex Mono", "SFMono-Regular", Consolas, monospace;
  --poem:"Spectral", Georgia, serif;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--deep)}
body{margin:0;min-height:100vh;color:var(--cream);font-family:var(--poem);overflow-x:hidden;background:radial-gradient(circle at 18% 8%,rgba(255,61,127,.24),transparent 28rem),radial-gradient(circle at 81% 31%,rgba(240,182,90,.14),transparent 30rem),linear-gradient(135deg,var(--deep),#160309 52%,var(--wine));}
.grain,.scanlines,.neon-dust{position:fixed;inset:0;pointer-events:none;z-index:10}.grain{opacity:.28;background-image:radial-gradient(var(--vellum) .7px,transparent .8px);background-size:4px 4px;mix-blend-mode:soft-light}.scanlines{opacity:.17;background:repeating-linear-gradient(180deg,transparent 0 7px,rgba(255,242,214,.08) 8px)}.neon-dust{background:radial-gradient(circle at var(--mx,50%) var(--my,50%),rgba(255,61,127,.32),transparent 12rem);mix-blend-mode:screen;transition:background .4s ease}
.command-rail{position:fixed;right:1.4rem;top:50%;transform:translateY(-50%);z-index:20;display:flex;flex-direction:column;gap:.8rem;font-family:var(--mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.18em}.command-rail a{color:var(--amber);text-decoration:none;padding:.55rem .7rem;border:1px solid rgba(240,182,90,.27);border-radius:999px;background:rgba(42,7,18,.55);box-shadow:0 0 22px rgba(255,61,127,.14)}
.font-token{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.chamber{position:relative;min-height:100vh;padding:8vh 8vw;display:flex;flex-direction:column;justify-content:center}.hero{overflow:hidden}.membrane{background:linear-gradient(135deg,rgba(255,242,214,.2),rgba(244,230,200,.07));border:1px solid rgba(244,230,200,.24);box-shadow:0 0 42px rgba(255,61,127,.16),inset 0 0 36px rgba(255,242,214,.06);backdrop-filter:blur(10px);border-radius:42% 58% 49% 51%/35% 43% 57% 65%}.command-altar{width:min(620px,78vw);padding:1.35rem 1.6rem;margin-bottom:2rem;transform:rotate(-2deg)}.terminal-row{font-family:var(--mono);color:var(--vellum);font-size:clamp(1rem,2vw,1.45rem)}.caret,.cursor{color:var(--amber);text-shadow:0 0 14px var(--amber)}.cursor{display:inline-block;width:.62em;height:1.05em;margin-left:.15em;vertical-align:-.18em;background:var(--amber);animation:blink .9s steps(2) infinite}.caption,.sigil{font-family:var(--mono);color:var(--mauve);letter-spacing:.2em;text-transform:uppercase;font-size:.76rem}.wordmark{font-family:var(--display);font-size:clamp(5rem,18vw,18rem);line-height:.78;margin:0;letter-spacing:.035em;color:var(--vellum);text-shadow:0 0 10px rgba(255,242,214,.35),0 0 48px rgba(255,61,127,.34);max-width:11ch}.wordmark span{color:var(--rose)}.hero-poem{max-width:630px;font-size:clamp(1.2rem,2vw,1.85rem);color:var(--cream);margin:1.4rem 0 0 6vw}.trail{position:absolute;inset:auto -8vw -3vh 0;width:105vw;height:70vh;opacity:.86;z-index:-1}.s-curve{fill:none;stroke:var(--amber);stroke-width:2;stroke-dasharray:12 18;opacity:.65}.morph-print{fill:rgba(255,61,127,.35);stroke:var(--rose);stroke-width:3;transform-origin:center;animation:morph 8s ease-in-out infinite}.p2{animation-delay:-1.5s}.p3{animation-delay:-3s}.p4{animation-delay:-4.5s}.p5{animation-delay:-6s}
.river{align-items:flex-start}.river-copy{max-width:650px;margin-left:8vw}.river h2,.ledger h2,.horizon h2{font-family:var(--display);font-size:clamp(3.8rem,9vw,9rem);line-height:.86;margin:.2rem 0 1rem;color:var(--vellum);letter-spacing:.03em}.river p:not(.sigil),.horizon>p:not(.sigil):not(.closing-command){font-size:clamp(1.1rem,1.7vw,1.55rem);max-width:650px;color:rgba(244,230,200,.84)}.floating-prompts{position:absolute;right:10vw;bottom:16vh;display:grid;gap:1.1rem;font-family:var(--mono);color:var(--amber)}.floating-prompts span{padding:.8rem 1rem;border-radius:50px;background:rgba(91,16,37,.5);box-shadow:0 0 24px rgba(255,61,127,.15);animation:float 5s ease-in-out infinite}.floating-prompts span:nth-child(2){animation-delay:-1.7s}.floating-prompts span:nth-child(3){animation-delay:-3.4s}.contours{position:absolute;right:-8vw;top:4vh;width:min(70vw,900px);height:auto;opacity:.55;z-index:-1}.contours path{fill:none;stroke:var(--rose);stroke-width:2;filter:drop-shadow(0 0 12px var(--rose));animation:draw 11s ease-in-out infinite alternate}
.ledger{align-items:center}.ledger-shell{width:min(980px,86vw);padding:clamp(2rem,5vw,5rem);border-radius:32% 68% 56% 44%/47% 34% 66% 53%;background:linear-gradient(145deg,rgba(255,242,214,.86),rgba(244,230,200,.58));color:var(--deep);transform:rotate(1.5deg);animation:breathe 7s ease-in-out infinite}.ledger-shell h2{color:var(--wine);font-size:clamp(3.2rem,7vw,7rem)}.ledger-rows{font-family:var(--mono);display:grid;gap:.75rem}.ledger-rows div{display:grid;grid-template-columns:1fr 2fr 1fr;gap:1rem;border-bottom:1px dashed rgba(91,16,37,.38);padding:.9rem 0}.ledger-rows span{color:var(--rose)}.ledger-rows em{font-style:normal;color:var(--wine);text-align:right}.receipt-ribbon{font-family:var(--mono);color:var(--amber);margin-top:2rem;max-width:760px;text-align:center;letter-spacing:.12em;text-transform:uppercase;text-shadow:0 0 18px rgba(240,182,90,.5)}
.horizon{text-align:center;align-items:center;overflow:hidden}.horizon-orb{width:min(560px,76vw);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,rgba(255,61,127,.16),rgba(91,16,37,.26) 48%,transparent 70%);box-shadow:0 0 90px rgba(255,61,127,.24)}.horizon-orb svg{width:86%;overflow:visible}.final-route{fill:none;stroke:var(--amber);stroke-width:5;stroke-dasharray:18 14;filter:drop-shadow(0 0 16px var(--amber));animation:pulseRoute 4s ease-in-out infinite}.stamp{fill:rgba(255,61,127,.22);stroke:var(--rose);stroke-width:5;filter:drop-shadow(0 0 24px var(--rose));animation:morph 6s ease-in-out infinite}.closing-command{font-family:var(--mono);font-size:1.1rem;color:var(--vellum);margin-top:2rem}.closing-command i{display:inline-block;width:.6em;height:1em;background:var(--amber);vertical-align:-.15em;animation:blink .9s steps(2) infinite}
@keyframes blink{50%{opacity:0}}@keyframes morph{0%,100%{d:path("M146 473c43-22 84-5 89 35 4 36-31 67-74 54-48-14-61-65-15-89z");transform:scale(1) rotate(0deg)}50%{d:path("M128 506c35-55 111-65 154-17 38 43 18 112-46 136-73 27-145-47-108-119z");transform:scale(1.08) rotate(5deg)}}@keyframes float{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-18px) rotate(2deg)}}@keyframes draw{to{stroke-dasharray:8 26;transform:translateX(-24px) scale(1.03)}}@keyframes breathe{0%,100%{border-radius:32% 68% 56% 44%/47% 34% 66% 53%;transform:rotate(1.5deg) scale(1)}50%{border-radius:55% 45% 35% 65%/35% 56% 44% 65%;transform:rotate(-1deg) scale(1.025)}}@keyframes pulseRoute{50%{stroke-width:8;filter:drop-shadow(0 0 32px var(--amber))}}
@media (max-width:760px){.command-rail{right:auto;left:1rem;top:auto;bottom:1rem;transform:none;flex-direction:row;gap:.35rem;font-size:.58rem}.command-rail a{padding:.45rem}.chamber{padding:7vh 6vw}.hero-poem{margin-left:0}.floating-prompts{position:relative;right:auto;bottom:auto;margin-top:3rem}.ledger-rows div{grid-template-columns:1fr}.ledger-rows em{text-align:left}.trail{height:48vh}}
