:root{color-scheme:dark;--ivory:#f3e7d4;--muted:#c7bba6;--gold:#c5a573;--line:rgba(222,201,167,.23);font-family:Arial,Helvetica,sans-serif;background:#171615;color:var(--ivory)}
*{box-sizing:border-box}body{margin:0;min-height:100svh;overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:default;opacity:.45}a{color:inherit}button:focus-visible,a:focus-visible{outline:2px solid #f3d7a4;outline-offset:6px}button[hidden]{display:none}
.room,.poster,#scene,.vignette{position:fixed;inset:0;width:100%;height:100%}.room{background:#171615 url('./hero2.png') center/cover no-repeat}.poster{object-fit:cover;object-position:center;transition:opacity 1.6s ease}#scene{display:block;opacity:0;transition:opacity 1.6s ease}.is-ready #scene{opacity:1}.is-ready .poster{opacity:0}.vignette{pointer-events:none;background:linear-gradient(180deg,rgba(12,14,16,.55),transparent 22%,transparent 49%,rgba(13,13,15,.78) 100%),linear-gradient(90deg,rgba(14,14,16,.5),transparent 53%);box-shadow:inset 0 0 150px #0d0d1038}
.masthead{position:fixed;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:32px 42px;gap:24px}.wordmark{display:flex;align-items:center;gap:13px;text-decoration:none;font-size:10px;letter-spacing:2.3px;line-height:1.7;font-weight:500}.wordmark img{opacity:.95}.edition{display:flex;align-items:center;gap:17px;font-size:9px;letter-spacing:2px;color:var(--muted)}.tiny-star{font-size:22px;color:var(--gold)}.edition-rule{width:30px;height:1px;background:var(--line)}.motion{display:flex;align-items:center;gap:11px;border:1px solid var(--line);border-radius:30px;background:#18171626;padding:12px 17px;font-size:11px;letter-spacing:.3px;backdrop-filter:blur(12px)}.motion:hover{background:#d2b18012;border-color:#d2b18066}.motion[aria-pressed=true] svg{transform:rotate(90deg)}
.intro{position:fixed;bottom:164px;left:6%;pointer-events:none;max-width:440px}.eyebrow{font-size:9px;letter-spacing:2.8px;display:flex;gap:12px;align-items:center;color:var(--gold);margin:0 0 23px}.eyebrow span{width:23px;height:1px;background:var(--gold)}h1{font:400 clamp(54px,5.5vw,88px)/.99 Georgia,'Times New Roman',serif;letter-spacing:-2.8px;margin:0;text-shadow:0 3px 35px #0003}h1 em{font-weight:400;color:#dec69e}.description{font:13px/1.85 Arial,Helvetica,sans-serif;letter-spacing:.15px;color:var(--muted);margin:23px 0 0}.room-note{position:fixed;right:43px;top:48%;writing-mode:vertical-rl;display:flex;align-items:center;gap:22px;color:#d1bd9fa6;font:italic 13px Georgia,serif;letter-spacing:.4px}.note-line{height:58px;width:1px;background:var(--line)}
.footer{position:fixed;left:42px;right:42px;bottom:max(30px,env(safe-area-inset-bottom));border-top:1px solid var(--line);padding-top:24px;display:flex;align-items:center;justify-content:space-between;gap:24px}.view-meta{display:flex;align-items:center;gap:10px;color:#aa9d89;font-size:10px;letter-spacing:1px}.view-meta>span:first-child{color:var(--ivory)}.meta-line{width:24px;height:1px;background:var(--line)}.explore-label{font-size:8px;letter-spacing:1.7px;margin-left:13px}.views{display:flex;padding:5px;border:1px solid var(--line);border-radius:50px;background:#17181970;backdrop-filter:blur(18px);gap:2px}.views button{display:flex;align-items:center;gap:9px;white-space:nowrap;border:0;border-radius:30px;background:none;padding:13px 18px;font-size:11px;color:var(--muted);transition:background .25s,color .25s}.views button:hover{background:#c9af8210;color:var(--ivory)}.views button[aria-pressed=true]{background:#c5a57323;color:var(--ivory)}.view-dot{display:inline-block;width:4px;height:4px;border-radius:50%;background:#a28e6b;opacity:.5}.views button[aria-pressed=true] .view-dot{background:#eacb96;opacity:1;box-shadow:0 0 8px #eacb9666}.interaction-hint{display:flex;gap:10px;align-items:center;color:#c7bba690;font-size:10px;letter-spacing:.3px}.interaction-hint svg{opacity:.7}
.load-status{position:fixed;bottom:121px;right:43px;display:flex;align-items:center;gap:10px;font-size:10px;letter-spacing:.5px;color:var(--muted);max-width:330px;transition:opacity .4s}.load-status.complete{opacity:0;pointer-events:none}.status-dot{width:4px;height:4px;border-radius:100%;background:var(--gold);animation:breathe 2s ease-in-out infinite}.load-status.failed{background:#171615ed;border:1px solid var(--line);padding:14px 16px;line-height:1.6}.failed .status-dot{animation:none;flex-shrink:0}.load-status button{background:none;border:0;border-bottom:1px solid var(--gold);white-space:nowrap;font-size:11px;padding:4px 0;margin-left:5px}.no-script{position:fixed;bottom:100px;right:42px;font-size:11px;max-width:260px;color:var(--muted);line-height:1.7}
@keyframes breathe{50%{opacity:.2}}
@media(min-width:1600px){.intro{bottom:190px}.footer{bottom:40px;padding-top:28px}}
@media(max-width:1100px){.interaction-hint{display:none}.intro{left:42px}.edition{font-size:8px;letter-spacing:1.5px}.footer{gap:14px}.explore-label{display:none}}
@media(max-width:650px){.masthead{padding:23px 22px}.wordmark{font-size:8px;letter-spacing:1.6px;gap:9px}.wordmark img{width:29px;height:36px}.edition,.room-note{display:none}.motion{padding:11px 13px;font-size:10px}.intro{left:27px;bottom:180px;max-width:310px}.eyebrow{font-size:8px;letter-spacing:2px;margin-bottom:18px}h1{font-size:61px;letter-spacing:-2px}.description{font-size:12px;margin-top:17px;line-height:1.7}.footer{left:22px;right:22px;bottom:max(24px,env(safe-area-inset-bottom));padding-top:18px;flex-direction:column;gap:15px}.view-meta{align-self:flex-start;font-size:9px}.explore-label{display:inline;font-size:7px}.views{width:100%;justify-content:space-between}.views button{flex:1;justify-content:center;padding:12px 8px;font-size:10px;gap:6px}.load-status{bottom:145px;right:24px;left:24px;max-width:none;font-size:9px;justify-content:flex-end}.load-status.failed{bottom:145px}.vignette{background:linear-gradient(180deg,#0d10135c,transparent 27%,transparent 43%,#0d0d10ed 100%),linear-gradient(90deg,#10101344,transparent 90%)}.no-script{bottom:143px;left:24px;right:24px;font-size:10px;max-width:none}}
@media(max-height:650px) and (min-width:651px){.masthead{padding-top:20px}.intro{bottom:130px}h1{font-size:54px}.eyebrow{margin-bottom:15px}.description{margin-top:13px}.footer{bottom:20px;padding-top:16px}.load-status{bottom:105px}}
@media(max-height:620px) and (max-width:650px){.intro{bottom:160px}h1{font-size:42px}.description{display:none}.eyebrow{margin-bottom:12px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
