:root{color:#fff8ed;background:#07040e;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:geometricPrecision}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0;overflow:hidden;background:#07040e}body{overscroll-behavior:none}button,input{font:inherit}button{color:inherit}.experience{position:relative;width:100%;height:100%;height:100svh;isolation:isolate;cursor:crosshair}#journey-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none}.vignette{position:absolute;inset:0;z-index:2;pointer-events:none;background:radial-gradient(circle at 50% 48%,transparent 42%,rgba(2,0,8,.18) 72%,rgba(2,0,8,.68) 112%),linear-gradient(180deg,rgba(2,0,8,.1),transparent 30%,transparent 70%,rgba(2,0,8,.22));mix-blend-mode:multiply}.grain{position:absolute;inset:-50%;z-index:3;width:200%;height:200%;opacity:.055;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E");animation:grain .23s steps(2) infinite}@keyframes grain{0%{transform:translate3d(-2%,1%,0)}25%{transform:translate3d(1%,-2%,0)}50%{transform:translate3d(2%,2%,0)}75%{transform:translate3d(-1%,-1%,0)}}.poster{position:absolute;inset:0;z-index:10;display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,31vw);align-items:end;gap:4vw;padding:clamp(24px,5vw,76px);background:linear-gradient(90deg,#04020bd1,#04020b52 54%,#04020b9e),linear-gradient(0deg,rgba(4,2,11,.74),transparent 45%);transition:opacity 1.4s cubic-bezier(.22,1,.36,1),visibility 1.4s;cursor:default}.poster.is-hidden{opacity:0;visibility:hidden;pointer-events:none}.eyebrow,.hud__phase,.poster__warning-label{margin:0 0 14px;font-size:10px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:#ffcb99}.poster h1{max-width:900px;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(52px,9.7vw,154px);font-weight:400;line-height:.78;letter-spacing:-.072em;text-wrap:balance;text-shadow:0 0 50px rgba(255,119,75,.12)}.poster h1 span{display:block;padding-left:.42em;color:transparent;-webkit-text-stroke:1px rgba(255,244,225,.62)}.poster__lede{max-width:530px;margin:26px 0 0;font-size:clamp(15px,1.35vw,20px);line-height:1.5;color:#fff8edb8}.poster__aside{align-self:end;padding-bottom:8px}.poster__warning{margin:0 0 28px;padding-top:18px;border-top:1px solid rgba(255,248,237,.22);font-size:12px;line-height:1.65;color:#fff8ed99}.poster__warning-label{display:block;margin-bottom:7px;color:#fff1d9}.fullscreen-choice{display:flex;align-items:center;gap:10px;width:max-content;margin-bottom:18px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#fff8edb8;cursor:pointer}.fullscreen-choice input{width:14px;height:14px;margin:0;accent-color:#ffb277}.begin-button,.replay-button{position:relative;width:100%;min-height:58px;border:1px solid rgba(255,244,225,.44);background:#fff4e114;color:#fff9ed;font-size:12px;font-weight:700;letter-spacing:.24em;text-transform:uppercase;cursor:pointer;overflow:hidden;transition:color .35s,border-color .35s,transform .35s}.begin-button:before,.replay-button:before{content:"";position:absolute;inset:0;z-index:-1;background:#fff0dc;transform:translate(-102%);transition:transform .55s cubic-bezier(.22,1,.36,1)}.begin-button:hover,.replay-button:hover{color:#160912;border-color:#fff0dc;transform:translateY(-2px)}.begin-button:hover:before,.replay-button:hover:before{transform:translate(0)}.poster__meta{display:flex;justify-content:space-between;margin:13px 0 0;font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:#fff8ed61}.hud{position:absolute;inset:0;z-index:5;pointer-events:none;opacity:0;transition:opacity .7s}.hud.is-visible{opacity:1}.hud__status{position:absolute;top:max(22px,env(safe-area-inset-top));left:max(22px,env(safe-area-inset-left));transition:opacity .8s}.hud__phase{margin:0 0 6px;color:#ffefd3b8}.hud__time{font-size:11px;letter-spacing:.13em;color:#ffffff7a}.hud__controls{position:absolute;top:max(18px,env(safe-area-inset-top));right:max(18px,env(safe-area-inset-right));display:flex;gap:8px;pointer-events:auto}.icon-button{width:42px;height:42px;border:1px solid rgba(255,255,255,.18);border-radius:50%;background:#06030e40;color:#ffffffc7;backdrop-filter:blur(12px);cursor:pointer;transition:background .25s,transform .25s,border-color .25s}.icon-button:hover{background:#ffffff1f;border-color:#ffffff6b;transform:scale(1.05)}.pause-screen,.ending{position:absolute;inset:0;z-index:8;display:grid;place-items:center;padding:28px;background:#04020b7a;backdrop-filter:blur(14px);opacity:0;visibility:hidden;transition:opacity .7s,visibility .7s;cursor:default}.pause-screen.is-visible,.ending.is-visible{opacity:1;visibility:visible}.pause-screen__content,.ending__content{width:min(520px,100%);text-align:center}.pause-screen h2,.ending h2{margin:0 0 16px;font:400 clamp(38px,7vw,78px)/.95 Georgia,serif;letter-spacing:-.045em}.pause-screen p,.ending p{margin:0 auto 28px;color:#fff9;line-height:1.6}.replay-button{width:min(300px,100%);z-index:0}.unsupported{position:absolute;inset:0;display:grid;place-items:center;padding:32px;background:radial-gradient(circle at 50% 30%,#2b1037,#07040e 70%);text-align:center}.unsupported h1{margin:0 0 12px;font:400 clamp(42px,8vw,84px)/1 Georgia,serif}.unsupported p{max-width:520px;color:#ffffffa6;line-height:1.6}@media(max-width:760px){.poster{grid-template-columns:1fr;align-content:end;gap:30px;padding:max(24px,env(safe-area-inset-top)) max(22px,env(safe-area-inset-right)) max(26px,env(safe-area-inset-bottom)) max(22px,env(safe-area-inset-left))}.poster h1{font-size:clamp(43px,13.5vw,68px);line-height:.84;letter-spacing:-.064em}.poster h1 span{padding-left:.2em}.poster__lede{margin-top:18px;font-size:14px}.poster__warning{margin-bottom:18px;font-size:11px}.poster__meta{display:none}.begin-button{min-height:54px}.hud__status{top:max(18px,env(safe-area-inset-top));left:max(16px,env(safe-area-inset-left))}.hud__controls{top:auto;bottom:max(18px,env(safe-area-inset-bottom))}.icon-button{width:46px;height:46px}}@media(prefers-reduced-motion:reduce){.grain{animation:none}}
