@font-face{font-family:AnimaSerif;src:local("Baskerville"),local("Palatino Linotype");font-display:swap}
:root{color-scheme:dark;--ivory:#f1e6d0;--gold:#cfac78;--ink:#16110b;--progress:0;font-family:Georgia,"Times New Roman",serif;font-synthesis:none;background:var(--ink);color:var(--ivory)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;overflow-x:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button{background:none;border:0}button:focus-visible,a:focus-visible{outline:2px solid var(--gold);outline-offset:8px}button[hidden]{display:none}
.skip-link{position:fixed;z-index:10;left:20px;top:-70px;background:var(--ink);padding:16px}.skip-link:focus{top:20px}
.stage{position:fixed;inset:0;z-index:0;overflow:hidden;background:#16110b}.stage canvas,.fallback-image,.fallback-image img{display:block;width:100%;height:100%;object-fit:cover}.stage canvas{position:absolute;inset:0;opacity:0;transition:opacity 1.3s}.is-ready .stage canvas{opacity:1}.fallback-image{position:absolute;inset:0;opacity:.5;transition:opacity .7s}.is-ready .fallback-image{opacity:0}.is-fallback .fallback-image{opacity:1}.stage-vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(10,7,4,.27),transparent 24%,transparent 75%,rgba(10,7,4,.36)),linear-gradient(90deg,rgba(10,7,4,.14),transparent 40%)}
.site-header{position:fixed;top:0;left:0;width:100%;padding:34px 6.8%;display:flex;justify-content:space-between;align-items:center;gap:30px;z-index:5;font-size:14px;text-shadow:0 1px 9px #130d06}.scene-nav{display:flex;gap:28px}.scene-nav button{padding:8px 0;position:relative;opacity:.65;transition:opacity .25s}.scene-nav button[aria-current]{opacity:1}.scene-nav button:after{content:"";position:absolute;bottom:1px;left:0;right:0;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .4s}.scene-nav button[aria-current]:after{transform:scaleX(1)}.standard-link{display:flex;gap:18px;align-items:center;letter-spacing:.02em}.standard-link span{color:var(--gold);font-size:21px}
main{position:relative;z-index:1;pointer-events:none}main a,main button{pointer-events:auto}.hero{height:100svh;min-height:620px;position:relative}.brand{position:absolute;top:9%;left:50%;transform:translateX(-50%);width:min(36vw,430px);text-align:center;opacity:calc(1 - var(--progress)*5);transition:opacity .1s}.brand img{display:block;width:100%;height:auto;max-height:190px;object-fit:contain;filter:brightness(1.13)}.brand p{font:10px/1.5 Arial,sans-serif;text-transform:uppercase;letter-spacing:.43em;margin:4px -40px 0}.hero-copy{position:absolute;left:6.8%;top:42%;max-width:330px;text-shadow:0 2px 22px rgba(0,0,0,.42);opacity:calc(1 - var(--progress)*5)}.eyebrow{font:10px/1.7 Arial,sans-serif;letter-spacing:.29em;text-transform:uppercase;color:var(--gold)}h1{font-weight:400;font-size:clamp(36px,3.1vw,60px);line-height:.99;letter-spacing:-.035em;margin:21px 0 0}h2{font-weight:400;font-size:clamp(45px,6vw,90px);line-height:1;letter-spacing:-.04em;margin:20px 0 30px}.discover{position:absolute;bottom:66px;left:50%;transform:translateX(-50%);display:grid;gap:13px;text-align:center;white-space:nowrap;font:10px/1.5 Arial,sans-serif;letter-spacing:.29em;text-transform:uppercase;opacity:calc(1 - var(--progress)*5)}.discover-arrow{font:30px/1 Georgia,serif;animation:invitation 2.5s ease-in-out infinite}.journey-space{height:170svh}.menu-content{height:80svh;min-height:360px;padding:10svh 9% 20svh;margin-left:61%;width:39%;text-shadow:0 2px 15px #171008}.menu-link{font-size:16px;padding:14px 0;border-bottom:1px solid #bfa77d;display:inline-flex;align-items:center;gap:40px}.menu-link span{color:var(--gold)}.scene-markers{position:fixed;z-index:3;right:3%;top:46%;display:grid;justify-items:center;gap:14px;font:11px Arial,sans-serif}.marker-line{width:1px;height:60px;background:#8c765340}.marker-room,.marker-menu{opacity:.4}.marker-room{opacity:calc(1 - var(--progress)*.6)}.marker-menu{opacity:calc(.4 + var(--progress)*.6)}.study-status{position:fixed;bottom:18px;left:6.8%;right:6.8%;z-index:4;display:flex;gap:20px;align-items:center;justify-content:space-between;font:9px/1.5 Arial,sans-serif;text-transform:uppercase;letter-spacing:.15em;color:#d7c7a7a8}.study-status button{text-transform:none;letter-spacing:0;border-bottom:1px solid var(--gold);padding:5px 0}.study-status #view-status{margin-left:auto}.is-ready #view-status{opacity:0}.is-fallback .journey-space{height:50svh}.is-fallback .menu-content{margin-left:0;width:100%;height:auto;min-height:80svh;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;background:linear-gradient(transparent,rgba(15,10,5,.65))}.is-reduced .discover-arrow{animation:none}
@keyframes invitation{0%,100%{transform:translateY(0)}50%{transform:translateY(6px)}}
@media(max-width:900px){.brand{top:13%;width:43vw}.hero-copy{top:43%;max-width:250px}.eyebrow{font-size:9px}.menu-content{margin-left:55%;width:45%;padding-right:7%}.site-header{padding-top:27px}}
@media(max-width:650px){.site-header{padding:20px 7%;font-size:12px;gap:10px}.scene-nav{gap:20px}.standard-link{gap:8px;font-size:11px}.hero{min-height:650px}.brand{top:11%;width:68vw;max-width:330px}.brand img{max-height:145px}.brand p{font-size:8px;letter-spacing:.3em;margin:-3px 0 0}.hero-copy{left:7%;top:35%;max-width:250px}.hero-copy .eyebrow{display:none}h1{font-size:34px;line-height:1.02}.discover{bottom:73px;font-size:9px;gap:9px}.scene-markers{right:4%;top:46%;font-size:9px}.marker-line{height:40px}.study-status{left:7%;right:7%;bottom:16px;gap:12px;font-size:8px;letter-spacing:.09em;flex-wrap:wrap}.study-status #view-status{max-width:55%;text-align:right}.journey-space{height:160svh}.menu-content{margin-left:0;width:100%;height:85svh;padding:44svh 7% 16svh;min-height:520px;background:linear-gradient(180deg,transparent 35%,rgba(12,8,4,.55))}.menu-content h2{font-size:46px;margin:12px 0 20px}.menu-link{font-size:14px}.menu-content .eyebrow{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

.is-at-menu .menu-content{color:#33271b;text-shadow:none}.is-at-menu .menu-content h2,.is-at-menu .menu-content a{text-shadow:none}.is-at-menu .menu-content .eyebrow{color:#73522e}.is-at-menu .site-header,.is-at-menu .study-status,.is-at-menu .scene-markers{color:#493722;text-shadow:none}.is-at-menu .menu-link{border-color:#927149}@media(max-width:650px){.is-at-menu .menu-content{background:none}}
