:root{--paper:#f5efe2;--paper2:#ece4d2;--ink:#2a2620;--ink-soft:#6b6353;--rose:#c96f6f;--leaf:#6e9358;--marigold:#d9a03f;--serif:"Palatino","Palatino Linotype","Book Antiqua",Georgia,serif;--sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box;margin:0;padding:0}[hidden]{display:none!important}html,body{background:var(--paper);color:var(--ink);font-family:var(--serif);-webkit-font-smoothing:antialiased;line-height:1.6}h1,h2,h3{letter-spacing:-.01em;font-weight:500;line-height:1.08}.eyebrow{font-family:var(--sans);text-transform:uppercase;letter-spacing:.22em;color:var(--rose);margin-bottom:1rem;font-size:.68rem}.lede{color:var(--ink-soft);max-width:30rem;font-size:1.1rem;font-style:italic}.fine{color:var(--ink-soft);font-size:.75rem;font-family:var(--sans);margin-top:1rem}.btn{border:2px solid var(--ink);color:#fff;font-size:1rem;font-weight:600;font-family:var(--sans);cursor:pointer;box-shadow:3px 3px 0 var(--ink);background:#a84f4f;border-radius:999px;justify-content:center;align-items:center;padding:.75rem 1.8rem;text-decoration:none;transition:transform .12s,box-shadow .12s;display:inline-flex}.btn:hover{box-shadow:5px 5px 0 var(--ink);transform:translate(-1px,-1px)}.btn:active{box-shadow:1px 1px 0 var(--ink);transform:translate(2px,2px)}.btn-small{padding:.42rem 1.1rem;font-size:.86rem}.btn-big{padding:.95rem 2.3rem;font-size:1.1rem}#loader{z-index:200;background:var(--paper);place-items:center;transition:opacity .9s;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}#loader.done{opacity:0;pointer-events:none}.loader-inner{text-align:center}.loader-brand{font-size:3rem;font-style:italic}.loader-sub{font-family:var(--sans);text-transform:uppercase;letter-spacing:.3em;color:var(--rose);margin:.1rem 0 1.6rem;font-size:.68rem}.loader-bar{background:#2a262026;border-radius:2px;width:180px;height:3px;margin:0 auto;overflow:hidden}.loader-bar i{background:var(--ink);width:0%;height:100%;transition:width .3s;display:block}.loader-hint{color:var(--ink-soft);font-size:.75rem;font-family:var(--sans);margin-top:1.2rem}#world{width:100%;height:100%;display:block;position:fixed;top:0;bottom:0;left:0;right:0}#scroll-space{pointer-events:none;width:1px;position:absolute;top:0;left:0}#hud{z-index:60;justify-content:space-between;align-items:center;padding:1rem clamp(1rem,3.5vw,2.5rem);display:flex;position:fixed;top:0;left:0;right:0}.hud-brand{font-size:1.5rem;font-style:italic}.hud-right{align-items:center;gap:1.1rem;display:flex}.hud-progress{background:#2a262026;border-radius:2px;width:110px;height:3px;overflow:hidden}.hud-progress i{background:var(--ink);width:0%;height:100%;display:block}@media (max-width:640px){.hud-progress{display:none}}#scroll-cue{z-index:60;font-family:var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft);font-size:.78rem;transition:opacity .6s;position:fixed;bottom:2rem;left:50%;transform:translate(-50%)}#scroll-cue.gone{opacity:0}.cue-arrow{text-align:center;animation:1.6s ease-in-out infinite cue;display:block}@keyframes cue{0%,to{transform:translateY(0)}50%{transform:translateY(6px)}}.chapter{z-index:50;opacity:0;pointer-events:none;filter:blur(6px);max-width:34rem;transition:opacity .7s,transform .7s cubic-bezier(.22,1,.36,1),filter .7s;position:fixed;top:50%;left:clamp(1.2rem,6vw,6rem);transform:translateY(calc(26px - 50%))rotate(-.4deg)}.chapter[data-side=right]{left:auto;right:clamp(1.2rem,6vw,6rem);transform:translateY(calc(26px - 50%))rotate(.4deg)}.chapter.on{opacity:1;pointer-events:auto;filter:blur();transform:translateY(-50%)rotate(-.4deg)}.chapter[data-side=right].on{transform:translateY(-50%)rotate(.4deg)}.chapter h1{margin-bottom:1rem;font-size:clamp(2.6rem,6.5vw,4.8rem);font-style:italic}.chapter h2{margin-bottom:1rem;font-size:clamp(2rem,4.6vw,3.2rem);font-style:italic}.chapter-final{text-align:center;left:50%;right:auto;transform:translate(-50%,calc(26px - 50%))}.chapter-final.on{transform:translate(-50%,-50%)}.chapter-final .lede{margin:0 auto 1.4rem}@media (max-width:700px){.chapter{max-width:none;left:1.2rem;right:1.2rem}.chapter[data-side=right]{left:1.2rem;right:1.2rem}.chapter-final{left:50%;right:auto}}#fallback{z-index:80;background:var(--paper);place-items:center;padding:2rem;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.fb-copy{text-align:center;max-width:36rem}.fb-copy h1{margin-bottom:1rem;font-size:clamp(2.4rem,6vw,4.2rem);font-style:italic}.fb-copy .lede{margin:0 auto 1.6rem}.drawer{z-index:100;position:fixed;top:0;bottom:0;left:0;right:0}.drawer-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#2a262047;position:absolute;top:0;bottom:0;left:0;right:0}.drawer-panel{background:var(--paper);border-left:2px solid var(--ink);z-index:1;width:min(460px,100%);padding:1.8rem;animation:.35s cubic-bezier(.22,1,.36,1) slide;position:absolute;top:0;bottom:0;right:0;overflow:auto;box-shadow:-8px 0 #2a26201f}@keyframes slide{0%{opacity:0;transform:translate(60px)}to{opacity:1;transform:none}}.drawer-x{color:var(--ink-soft);cursor:pointer;background:0 0;border:0;font-size:1.7rem;position:absolute;top:.7rem;right:1rem}.drawer-panel h3{margin-bottom:1rem;font-size:1.6rem;font-style:italic}.q-label{font-family:var(--sans);text-transform:uppercase;letter-spacing:.2em;color:var(--rose);margin:1.2rem 0 .6rem;font-size:.68rem}.chip-row{flex-wrap:wrap;gap:.5rem;display:flex}.chip{border:2px solid var(--ink);background:var(--paper);color:var(--ink);cursor:pointer;font-size:.92rem;font-family:var(--serif);border-radius:10px;padding:.5rem 1rem;box-shadow:2px 2px #2a262040}.chip.sel{background:var(--rose);color:var(--paper)}.q-form{gap:.9rem;margin-top:1rem;display:grid}.q-form label{font-family:var(--sans);color:var(--ink-soft);gap:.3rem;font-size:.82rem;display:grid}.q-form input{font:inherit;border:2px solid var(--ink);background:#fff;border-radius:10px;padding:.65rem .9rem}.q-form input:focus{outline:3px solid #c96f6f66}.q-err{color:#a33;font-size:.85rem;font-family:var(--sans)}.confirm{text-align:center;padding:1.4rem 0}.confirm .ref{color:var(--rose);letter-spacing:.06em;margin:.8rem 0;font-size:2rem;font-style:italic}.confirm p{color:var(--ink-soft)}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
