@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=DM+Sans:wght@400;500;600;700&display=swap');
.altar-image{object-fit:fill!important}.tv-signal{left:5.9%!important;top:44%!important;width:10.5%!important;height:12%!important;transform:rotate(0)!important}.tv-signal img{animation:transmission 9s infinite alternate}.votive{position:absolute;width:12px;height:18px;border-radius:3px;background:linear-gradient(90deg,#a0854f,#e6d6a9,#a0854f);box-shadow:0 4px 8px #0006}.votive .flame{left:2px;top:-14px}.offering{position:absolute;font-size:20px;text-shadow:0 3px 5px #000}.wine-vision .scene{filter:hue-rotate(20deg) saturate(1.4)}.beckon{animation:beckon .5s infinite alternate}.chamber-page{max-width:760px;min-height:70vh;margin:55px auto;padding:0 25px}.chamber-page>a{display:block;font-size:12px;color:#c6aa72;margin-bottom:55px}.chamber-page>p{color:#aaa28e;line-height:1.9;margin:15px 0 25px;max-width:500px}.chamber-page h2{font:32px 'Cormorant Garamond',serif;margin-top:50px}.journal{border-top:1px solid #ffffff20;margin-top:20px;color:#aaa28e}.journal p{padding:18px 0;border-bottom:1px solid #ffffff20;line-height:1.8}.journal small{display:inline-block;min-width:75px;color:#c6aa72}.chamber-page .storage-note{font-size:10px}.media-note{font-size:10px!important;opacity:.7}.tv-signal[hidden]{display:none}@keyframes transmission{0%{transform:scale(1);filter:sepia(.4) hue-rotate(18deg) contrast(1.25)}50%{transform:scale(1.08) translateX(1px);filter:sepia(.1) hue-rotate(90deg) contrast(1.4)}100%{transform:scale(1.02);filter:sepia(.5) hue-rotate(-25deg) contrast(1.1)}}@keyframes beckon{to{transform:rotate(15deg) scale(1.15)}}
:root{--bg:#13130f;--cream:#e9dfc8;--gold:#c6aa72;--muted:#aaa28e;--line:#ffffff20}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--bg);color:var(--cream);font:14px 'DM Sans',sans-serif}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid var(--gold);outline-offset:6px}header{height:100px;max-width:1540px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:0 5%;border-bottom:1px solid var(--line)}.wordmark{font:600 20px 'Cormorant Garamond',serif;letter-spacing:3px}.wordmark span{padding-left:16px;color:var(--gold)}nav{display:flex;gap:36px;color:#c8c2b2;font-size:12px}nav a:hover{color:var(--gold)}.quiet{background:none;border:0;color:var(--muted);font-size:11px}.quiet span{margin-right:8px}.intro{text-align:center;padding:55px 20px 33px}.eyebrow{font-size:9px;font-weight:500;letter-spacing:2.1px;color:var(--gold)}.live{display:inline-block;width:5px;height:5px;border-radius:50%;background:#b9c291;margin:0 7px 2px 0;box-shadow:0 0 8px #b9c255}h1,h2,p{margin:0}h1{font:400 clamp(44px,4.6vw,72px)/1.18 'Cormorant Garamond',serif;margin:14px 0 11px;letter-spacing:-1.5px}.intro p{color:var(--muted);font-size:12px}.coordinates{display:flex;align-items:center;justify-content:center;gap:15px;font-size:8px;letter-spacing:1.7px;color:#817b68;margin-top:27px}.coordinates span{font-size:14px;color:var(--gold)}.altar-wrap{margin:0 3.4%}.scene{position:relative;aspect-ratio:1.9;overflow:hidden;border:1px solid #a38a4d42;background:#19120c}.altar-image{width:100%;height:100%;object-fit:cover;object-position:center 57%;filter:brightness(.88)}.vignette{position:absolute;inset:0;background:linear-gradient(#0006,transparent 23%,transparent 70%,#000b);pointer-events:none}.scene-caption,.scene-bottom{position:absolute;left:29px;right:29px;display:flex;justify-content:space-between;align-items:center;z-index:3}.scene-caption{top:23px;font-size:9px;letter-spacing:1.5px;color:#d6c6a3}.scene-caption span+span{letter-spacing:0;color:#b8ab91;font:italic 16px 'Cormorant Garamond',serif}.scene-bottom{bottom:20px;color:#bcae91;font-size:10px}.hotspot{position:absolute;z-index:4;background:#19150eaa;color:#e9dfc8;border:1px solid #c6aa7277;border-radius:30px;padding:9px 13px;display:flex;align-items:center;gap:9px;font-size:10px;backdrop-filter:blur(12px);transition:background .2s,transform .2s;white-space:nowrap;transform:translate(-50%,-50%)}.hotspot:hover,.hotspot:focus-visible{background:#41341b;transform:translate(-50%,-55%);border-color:var(--gold)}.hotspot i{font-style:normal;color:#e2bf78;font-size:13px}.hotspot:before{content:'';position:absolute;width:5px;height:5px;border-radius:50%;background:#e8c580;top:-14px;left:50%;box-shadow:0 0 0 4px #e8c58022,0 0 16px #e8c58099}.altar-foot{display:flex;justify-content:space-between;padding:19px 2px;border-bottom:1px solid var(--line);font-size:8px;letter-spacing:1.3px;color:#8c8674}.altar-foot span:nth-child(2){letter-spacing:.3px;color:var(--gold)}.rituals{max-width:1280px;margin:74px auto;padding:0 6%}.section-top{display:flex;justify-content:space-between;align-items:end;margin-bottom:34px}.section-top h2{font:400 40px 'Cormorant Garamond',serif;margin-top:12px}.section-top p{color:var(--muted);font-size:11px;line-height:1.9}.ritual-list{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.ritual-card{border:0;border-bottom:1px solid var(--line);border-right:1px solid var(--line);background:none;text-align:left;color:var(--cream);padding:24px 22px;min-height:178px;transition:background .2s}.ritual-card:hover{background:#c6aa7209}.card-top{display:flex;justify-content:space-between;align-items:center;color:var(--gold);font-size:21px}.card-top small{font-size:9px;color:#787462}.ritual-card h3{font:400 24px 'Cormorant Garamond',serif;margin:17px 0 7px}.ritual-card p{color:var(--muted);font-size:11px;line-height:1.8}.ritual-card .arrow{float:right;color:var(--gold)}.ritual-note{display:flex;align-items:center;justify-content:center;font:italic 20px 'Cormorant Garamond',serif;color:#827a63;text-align:center;border-bottom:1px solid var(--line);border-right:1px solid var(--line);padding:20px}.about{text-align:center;border-top:1px solid var(--line);padding:64px 20px 70px}.ornament{font-size:39px;color:var(--gold);display:block;margin-bottom:26px}.about h2{font:400 52px/1.05 'Cormorant Garamond',serif;margin:21px 0}.about p{max-width:470px;margin:auto;font-size:12px;line-height:2;color:var(--muted)}.about a{display:inline-block;font-size:11px;margin-top:26px;border-bottom:1px solid #a38a4d77;padding-bottom:9px}.about a span{margin-left:22px}footer{padding:31px 5%;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}footer .wordmark{font-size:14px}footer>span{font-size:8px;letter-spacing:1.6px;color:#817b68}footer>a:last-child{font-size:10px;color:var(--muted)}dialog{background:#1b1b14;color:var(--cream);border:1px solid #b89a5655;padding:46px;width:min(470px,calc(100% - 32px));text-align:center;box-shadow:0 20px 100px #000b}dialog::backdrop{background:#080906c9;backdrop-filter:blur(8px)}#close{position:absolute;top:10px;right:15px;background:none;border:0;color:var(--muted);font-size:26px}.modal-symbol{font-size:43px;color:var(--gold);margin:24px 0 10px}dialog h2{font:400 39px 'Cormorant Garamond',serif}dialog p{font-size:12px;line-height:1.9;color:var(--muted);margin:15px 0}#ritual-content{margin-top:24px}.action,.choice{background:#bd9f63;color:#17160f;border:1px solid #bd9f63;padding:12px 18px;font-size:11px;letter-spacing:.4px}.choice{background:transparent;color:var(--cream);margin:4px;padding:10px 13px;border-color:#8d794e77}.choice:hover{background:#bd9f6322}.action:disabled{opacity:.5;cursor:wait}input{display:block;width:100%;background:#11120e;border:1px solid #73644288;color:var(--cream);padding:13px;margin:0 0 16px;font:12px 'DM Sans',sans-serif}
/* One look for every dropdown: dark field, thin brass border, cream text, brass arrow (no OS chrome). */
select{-webkit-appearance:none;appearance:none;background-color:#11120e;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%23c6aa72'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:10px 6px;border:1px solid #73644288;border-radius:0;color:var(--cream);font:12px 'DM Sans',sans-serif;padding:8px 30px 8px 10px;cursor:pointer;max-width:100%}
select:hover{border-color:#b9a16d99}select:focus-visible{outline:1px solid #d8bd7a;outline-offset:1px}select:disabled{opacity:.5;cursor:default}select option{background:#211c14;color:#eadfc6}
.chamber-link{font-size:10px;color:var(--gold);display:block;margin-top:25px}#result{min-height:23px;color:#e0c48b}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%) translateY(100px);transition:transform .3s;background:#302c1e;border:1px solid #917646;padding:14px 25px;color:var(--cream);font-size:12px;z-index:20;max-width:90vw}.toast.show{transform:translateX(-50%) translateY(0)}.flame{position:absolute;width:8px;height:17px;background:radial-gradient(ellipse at 50% 75%,#fffce4 0%,#ffd279 35%,#ff9200 65%,transparent 75%);border-radius:50% 50% 40% 40%;filter:drop-shadow(0 0 9px #ffb249);animation:flicker 1.1s infinite alternate;pointer-events:none;mix-blend-mode:screen}.aura{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 50% 75%,#ffb23b0f,transparent 70%);mix-blend-mode:screen;animation:breathe 5s infinite alternate}.smoke{position:absolute;left:61%;bottom:33%;width:35px;height:180px;border-radius:50%;background:linear-gradient(transparent,#e9d9c222,transparent);filter:blur(10px);animation:smoke 8s infinite;pointer-events:none}.ripple{position:absolute;left:26%;top:72%;border:2px solid #b8efe388;border-radius:50%;width:40px;height:15px;animation:ripple 2s forwards;pointer-events:none}.tv-signal{position:absolute;left:9%;top:41%;width:16%;height:18%;z-index:2;overflow:hidden;transform:rotate(-2deg);border-radius:12px;background:#6e8e64}.tv-signal img{width:100%;height:100%;object-fit:cover;filter:sepia(.4) hue-rotate(18deg) contrast(1.25)}.tv-signal:after{content:'';position:absolute;inset:0;background:repeating-linear-gradient(transparent 0px,transparent 2px,#0005 3px);pointer-events:none}.tv-signal span{position:absolute;top:10%;left:7%;font:8px monospace;color:#d7fbc5}.reels{display:flex;justify-content:center;gap:8px;font-size:34px;margin:20px}.reels span{background:#0f100c;border:1px solid #aa8c46;padding:12px}.fortune{font:italic 26px 'Cormorant Garamond',serif;color:var(--gold);padding:20px;border:1px solid #b89a5655;margin:16px 0}.roulette{height:125px;width:125px;border:8px solid #ae8842;border-radius:50%;margin:20px auto;background:repeating-conic-gradient(#601c17 0deg 10deg,#1c2219 10deg 20deg);position:relative;transition:transform 1.5s cubic-bezier(.15,.65,.16,1)}.roulette:after{content:'✧';position:absolute;inset:30px;background:#aa8c46;border-radius:50%;padding-top:9px;color:#251d0e;font-size:24px}@keyframes flicker{to{transform:scaleX(.75) scaleY(1.12) skewX(5deg);opacity:.75}}@keyframes breathe{to{opacity:.5}}@keyframes smoke{to{transform:translate(25px,-120px) scale(2) rotate(-20deg);opacity:0}}@keyframes ripple{to{transform:scale(6);opacity:0}}@media(dynamic-range:high){.flame{filter:drop-shadow(0 0 12px color(display-p3 1 .65 .15))}.aura{background:radial-gradient(ellipse at 50% 75%,color(display-p3 1 .55 .05 / .08),transparent 70%)}}@media(max-width:800px){header{height:77px;padding:0 5%}.wordmark{font-size:17px}nav{gap:18px}nav a:last-child{display:none}.intro{padding-top:39px}.scene{aspect-ratio:1.35}.altar-image{object-fit:fill}.hotspot{font-size:9px;padding:8px 9px;gap:5px}.scene-caption{left:15px;right:15px;top:16px}.scene-bottom{left:15px;right:15px;bottom:12px}.altar-foot span:last-child{display:none}.rituals{margin:50px auto}.ritual-list{grid-template-columns:repeat(2,1fr)}.section-top h2{font-size:32px}.section-top p{display:none}.about h2{font-size:43px}footer>span{display:none}.tv-signal{left:9%;top:41%}}@media(max-width:480px){header nav{display:none}.intro p{font-size:11px}.scene{aspect-ratio:.95}.hotspot{font-size:8px;padding:8px 8px}.scene-caption span+span{font-size:12px}.altar-foot{font-size:7px;gap:10px}.scene-bottom{font-size:8px}.scene-bottom .quiet{font-size:8px}.ritual-card{padding:20px 15px}.ritual-card h3{font-size:23px}dialog{padding:35px 22px}.coordinates{font-size:7px}.ritual-note{font-size:18px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

.photo-gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:24px;margin-top:24px}.photo-gallery-grid figure{margin:0}.photo-gallery-grid canvas{width:100%;height:auto;max-height:500px;object-fit:contain}.photo-gallery-grid figcaption{font-size:.8rem;opacity:.65;margin-top:6px}
.candle-picker fieldset{border:0;padding:0;margin:18px 0}.candle-picker legend{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--gold,#c8ad6e);margin-bottom:9px}.ritual-options,.shelf-items{display:flex;flex-wrap:wrap;gap:7px}.ritual-options button,.shelf-items button{padding:9px 12px;border:1px solid #8d74414d;border-radius:4px;background:#201a1266;color:inherit;font:inherit;cursor:pointer}.ritual-options button[aria-pressed=true]{background:#a1853d30;border-color:#c3a96a;color:#fff0c0}.candle-picker>.action{width:100%;margin:10px 0 14px}.candle-ledger{margin-top:20px;border-top:1px solid #8d74414d;padding-top:12px}.shelf-categories{margin-bottom:18px}.shelf-items{margin:12px 0}.table-shelf details{margin-top:16px}.table-shelf summary{cursor:pointer;color:#ccb87f;font-size:.85rem}.table-shelf details label{display:flex;flex-direction:column;gap:8px;margin:12px 0}.custom-object-form{display:grid;gap:12px;margin-top:15px}.custom-object-form input{max-width:100%;min-width:0}.candle-picker .storage-note{font-size:.8rem;opacity:.7;line-height:1.5}
.object-actions{display:flex;flex-wrap:wrap;gap:7px;width:100%;margin-top:12px}.table-shelf-body>p,.table-shelf-body>label,.table-shelf-body>.object-advanced,.table-shelf-body>details,.table-shelf>p,.table-shelf>label,.table-shelf>.object-advanced,.table-shelf>details{width:100%;flex-basis:100%;clear:both;box-sizing:border-box}.table-shelf-body>.object-advanced,.table-shelf>.object-advanced{display:block;align-self:stretch;margin-top:18px;padding-top:12px;border-top:1px solid #8d74414d}.table-delete-zone{position:absolute;left:50%;bottom:35px;transform:translateX(-50%);width:48px;height:48px;border:1px solid #b6a47b66;border-radius:50%;color:#c1b38b;display:grid;place-items:center;font-size:27px;font-weight:200;opacity:0;pointer-events:none;transition:opacity .5s,background .25s,border-color .25s}.table-delete-zone.available{opacity:.22}.table-delete-zone.hot{opacity:.9;background:#75402c88;border-color:#f4c386}.shrine-mobile-view .table-ui,.shrine-mobile-view .table-switch,.shrine-mobile-view .immersive-toggle{display:none!important}.shrine-mobile-view .table-canvas{touch-action:none}.ambiance-panel label{box-sizing:border-box}.personal-panel{min-width:250px}
.light-controls #glow{display:none!important}.shrine-mobile-view #hotspots{pointer-events:none!important}

/* Sprite shrine boot cover: hides the photo fallback until the sprite shrine is ready (removed by table-scene.js). */
.sprite-boot #scene::after{content:"";position:absolute;inset:0;z-index:8;background:#0b0a08 url(assets/sprites/room-plate-wide.webp) center/cover no-repeat;pointer-events:none}.sprite-boot #hotspots,.sprite-boot .tv-signal{visibility:hidden}
