@font-face{font-family:Instrument Serif;src:url(/fonts/instrument-serif-latin-400-normal.woff2)format("woff2");font-weight:400;font-style:normal;font-display:block}@font-face{font-family:Instrument Serif;src:url(/fonts/instrument-serif-latin-400-italic.woff2)format("woff2");font-weight:400;font-style:italic;font-display:block}@property --pulse{syntax:"<number>";inherits:true;initial-value:0}:root{--void:#140a10;--soil:#1d0d13;--crimson:#8a2436;--rose:#d4586d;--amber:#e8a04c;--peach:#f4c78f;--cream:#f6e8dc;--serif:"Instrument Serif", "Iowan Old Style", Georgia, serif}html,body{height:100%}body{overscroll-behavior:none;background:radial-gradient(120% 90% at 50% 72%, var(--soil), var(--void) 72%);color:var(--cream);font-family:var(--serif);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;overflow:hidden}#gl{opacity:0;touch-action:none;width:100%;height:100%;transition:opacity 1.2s;position:fixed;inset:0}#gl.on{opacity:1}#vrm{opacity:0;pointer-events:none;width:100%;height:100%;transition:opacity 2.4s;position:fixed;inset:0}#vrm.on{opacity:1}.stage{text-align:center;pointer-events:none;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);place-content:center;justify-items:center;display:grid;position:fixed;inset:0}.wordmark{letter-spacing:.01em;text-shadow:0 2px 26px #10080ca6,0 0 8px #10080c59;margin:0;font-size:clamp(3rem,10vw,6.8rem);font-weight:400;line-height:1.05}.letters{padding-bottom:.14em;display:inline-flex;overflow:clip}.wordmark [data-rise]{animation:1.15s cubic-bezier(.19,1,.22,1) forwards rise;display:inline-block;transform:translateY(115%)}.wordmark [data-rise]:first-child{animation-delay:.25s}.wordmark [data-rise]:nth-child(2){animation-delay:.3s}.wordmark [data-rise]:nth-child(3){animation-delay:.35s}.wordmark [data-rise]:nth-child(4){animation-delay:.4s}.wordmark [data-rise]:nth-child(5){animation-delay:.45s}.wordmark [data-rise]:nth-child(6){animation-delay:.5s}.wordmark [data-rise]:nth-child(7){animation-delay:.55s}.wordmark [data-rise]:nth-child(8){animation-delay:.68s}.wordmark [data-rise]:nth-child(9){animation-delay:.82s}@keyframes rise{to{transform:translateY(0)}}.dot{color:var(--rose)}.you{color:var(--peach);margin-left:.03em;padding-right:.06em;font-style:italic;position:relative}.you:after{content:attr(data-text);padding-right:inherit;color:var(--amber);filter:blur(.18em);z-index:-1;opacity:calc(.3 + var(--pulse) * .55);animation:4.2s ease-in-out infinite idle-beat;position:absolute;inset:0}body.js-pulse .you:after{animation:none}@keyframes idle-beat{0%,to{opacity:.3}50%{opacity:.55}}.whisper{letter-spacing:.02em;color:color-mix(in oklab, var(--cream) 84%, transparent);text-wrap:balance;text-shadow:0 1px 14px #10080c99;max-width:min(80vw,34ch);min-height:1.7em;margin:1.5em 0 0;font-size:clamp(1.05rem,2.2vw,1.45rem);font-style:italic}.sound{right:max(16px, env(safe-area-inset-right));bottom:max(16px, env(safe-area-inset-bottom));cursor:pointer;width:44px;height:44px;color:color-mix(in oklab, var(--cream) 45%, transparent);background:0 0;border:0;place-items:center;padding:0;transition:color .35s,transform .35s;display:grid;position:fixed}.sound:hover{color:color-mix(in oklab, var(--cream) 80%, transparent)}.sound:active{transform:scale(.92)}.sound:focus-visible{outline:2px solid var(--peach);outline-offset:4px;border-radius:999px}.sound .heart-fill{opacity:0;transition:opacity .35s}.sound[aria-pressed=true]{color:var(--rose)}.sound[aria-pressed=true] .heart-fill{opacity:1}body.fallback #gl{display:none}body.fallback:before{content:"";pointer-events:none;filter:blur(48px);background:radial-gradient(38% 30% at 50% 66%,#d4586d38,#0000 70%),radial-gradient(26% 22% at 32% 44%,#e8a04c1f,#0000 70%),radial-gradient(30% 26% at 68% 52%,#8a243640,#0000 70%);animation:5.5s ease-in-out infinite alternate fallback-breathe;position:fixed;inset:-25%}body.fallback:after{content:"";pointer-events:none;z-index:-1;opacity:.45;mix-blend-mode:screen;background:url(/presence.jpg) 70%/auto 100% no-repeat;animation:7s ease-in-out infinite alternate fallback-breathe;position:fixed;inset:0}@keyframes fallback-breathe{0%{opacity:.55;transform:scale(.985)}to{opacity:1;transform:scale(1.015)}}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){.wordmark [data-rise]{animation-duration:10ms;animation-delay:0s}.you:after,body.fallback:before{animation-duration:12s}#gl{transition-duration:2.5s}}
