.lava-lounge{--lava-wax:#eaa04d;--lava-liquid:#431d50;--lava-size:1;--lava-brightness:.85;box-sizing:border-box;max-width:1360px;margin:24px auto;padding:26px;color:#ece5d4;background:#1b211e;border:1px solid #8c79514d;border-radius:8px;font:14px/1.6 system-ui}.lava-heading{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-bottom:24px}.lava-kicker{font:9px system-ui;letter-spacing:2px;color:#c4b181}.lava-heading h2{font:normal clamp(34px,4vw,54px)/1.1 Georgia;margin:14px 0;color:#f0e6cf}.lava-heading p{color:#b6bfaf;margin:10px 0}.lava-lounge button,.lava-choose{min-height:44px;padding:10px 14px;border:1px solid #807356;border-radius:4px;background:#2c342d;color:#ece4cd;font:12px system-ui;cursor:pointer}.lava-lounge button:focus-visible,.lava-lounge input:focus-visible,.lava-choose:focus-visible{outline:3px solid #eac981;outline-offset:3px}.lava-lounge button[aria-pressed=true],#lava-enter{background:#ddc28b;color:#222c24}.lava-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(270px,1fr);gap:28px}.lava-stage{position:relative;min-height:470px;height:min(62svh,620px);overflow:hidden;isolation:isolate;border:1px solid #a7925c33;border-radius:8px;background:radial-gradient(ellipse at 50% 80%,#29302b,#0d1311 70%);display:grid;place-items:center}.lava-aura{position:absolute;inset:15%;border-radius:50%;background:radial-gradient(ellipse,var(--lava-wax),transparent 65%);opacity:calc(var(--lava-brightness)*.15);filter:blur(40px);transform:scale(1.3)}.lava-object{position:relative;height:76%;max-height:600px;aspect-ratio:180/460;transform:scale(var(--lava-size));filter:brightness(var(--lava-brightness)) drop-shadow(0 16px 20px #0007);transform-origin:center 70%;transition:filter .3s,transform .4s}.lava-glass{position:absolute;top:12%;left:0;width:100%;height:65%;overflow:visible}.lava-liquid{fill:var(--lava-liquid)}.lava-wax{fill:var(--lava-wax)}.lava-cap,.lava-base{position:absolute;z-index:2;left:22%;width:56%;background:linear-gradient(95deg,#333a38,#a7aaa2 30%,#e2dfce 46%,#777f7c 68%,#2c3432);box-shadow:inset 0 2px 2px #fff4}.lava-cap{top:1%;height:13%;clip-path:polygon(28% 0,72% 0,87% 100%,13% 100%);border-radius:15px 15px 0 0}.lava-base{top:76%;height:20%;left:10%;width:80%;clip-path:polygon(10% 0,90% 0,75% 100%,25% 100%);display:flex;align-items:center;justify-content:center}.lava-base span{font:6px system-ui;letter-spacing:2px;color:#202c25;text-shadow:0 1px #fff8}.lava-foot{position:absolute;bottom:2%;height:3%;left:26%;width:48%;border-radius:50%;background:linear-gradient(#76807a,#1b2420);box-shadow:0 6px 12px #0009}.lamp-column{aspect-ratio:150/460}.lamp-column .lava-cap{left:14%;width:72%;clip-path:none;height:9%;top:4%;border-radius:7px 7px 0 0}.lamp-column .lava-base{left:12%;width:76%;height:15%;clip-path:none;border-radius:0 0 8px 8px}.lamp-column .lava-foot{width:65%;left:17%}.lamp-orb{aspect-ratio:260/460}.lamp-orb .lava-glass{top:25%;height:48%}.lamp-orb .lava-cap{top:22%;height:5%;left:40%;width:20%;clip-path:none;border-radius:50% 50% 0 0}.lamp-orb .lava-base{top:72%;left:30%;width:40%;height:22%;clip-path:polygon(25% 0,75% 0,100% 100%,0 100%)}.lamp-orb .lava-foot{left:28%;width:44%;bottom:3%}.lava-settings{display:flex;flex-direction:column;gap:14px;min-width:0}.lava-settings fieldset{padding:0;border:0;margin:0}.lava-settings legend{font:10px system-ui;letter-spacing:1.4px;text-transform:uppercase;color:#b8c0ad;margin-bottom:10px}.lava-shapes{display:flex;gap:6px;flex-wrap:wrap}.lava-palettes{display:grid;grid-template-columns:1fr 1fr;gap:6px}.lava-palettes button{text-align:left;font-size:11px;display:flex;gap:8px;align-items:center}.lava-palettes button:before{content:"";width:18px;height:18px;border-radius:50%;background:radial-gradient(circle at 35% 45%,var(--swatch-wax) 0 34%,var(--swatch-liquid) 40%);border:1px solid #ffffff44;flex-shrink:0}.lava-settings label{display:grid;grid-template-columns:1fr auto;gap:7px;color:#d5dccb;font-size:11px}.lava-settings input{grid-row:2;grid-column:1/-1;width:100%;min-height:26px;accent-color:#d8be84}.lava-settings output{grid-row:1;grid-column:2;color:#e2cb98}.lava-small{font-size:10px;line-height:1.65;color:#a8b29f;margin:0}.lava-choose{text-align:center;text-decoration:none}.lava-immersive-controls{display:none}.lava-lounge.lava-immersive{position:fixed;inset:0;max-width:none;margin:0;padding:0;border:0;border-radius:0;z-index:5000}.lava-immersive .lava-heading,.lava-immersive .lava-settings,.lava-immersive>#lava-status{display:none}.lava-immersive .lava-layout{display:block;height:100%}.lava-immersive .lava-stage{height:100dvh;min-height:0;border:0;border-radius:0}.lava-immersive .lava-object{max-height:none;height:76%}.lava-immersive .lava-immersive-controls{position:absolute;bottom:max(24px,env(safe-area-inset-bottom));left:5%;right:5%;display:flex;align-items:center;gap:12px;background:#18221be6;padding:16px;border:1px solid #a9956555;border-radius:6px;z-index:5;transition:opacity .8s}.lava-immersive-controls>div{flex:1;min-width:0}.lava-immersive-controls strong{display:block;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font:normal 18px Georgia;margin-top:7px}.lava-controls-resting .lava-immersive-controls{opacity:0;pointer-events:none}#lava-wake{position:absolute;top:max(16px,env(safe-area-inset-top));right:16px;z-index:6;background:#15241ccc;color:#dbcda8;font-size:10px;border-color:#9c8c664d}#lava-wake[hidden]{display:none}.lava-immersive-open{overflow:hidden}.lava-immersive-open>#inn-guide,.lava-immersive-open>footer{visibility:hidden}.lava-lounge button:disabled{opacity:.45;cursor:default}@media(max-width:700px){.lava-lounge{padding:18px;margin:14px 10px}.lava-heading{align-items:flex-start;flex-direction:column}.lava-heading h2{font-size:36px}.lava-layout{grid-template-columns:1fr;gap:20px}.lava-stage{min-height:360px;height:45svh}.lava-shapes button{flex:1}.lava-immersive-controls{flex-wrap:wrap}.lava-immersive-controls>div{flex-basis:100%}.lava-immersive-controls button{flex:1}.lava-immersive .lava-object{height:65%;transform-origin:center 60%}.lava-immersive .lava-stage{padding-bottom:80px;box-sizing:border-box}}@media(prefers-reduced-motion:reduce){.lava-object,.lava-immersive-controls{transition:none}}

body[data-site-room] main>section.lava-lounge.lava-immersive{padding:0!important;width:100%;height:100dvh}body[data-site-room] main>section.lava-lounge{padding-left:26px;padding-right:26px}@media(max-width:700px){body[data-site-room] main>section.lava-lounge{padding-left:18px;padding-right:18px}}

/* Machined finishes, curved glass reflections and a warm pool of light. */
.lava-stage{background:radial-gradient(ellipse at 50% 57%,#30352e88,transparent 48%),linear-gradient(#111713 0 65%,#181d17 80%,#0d120e);perspective:900px}
.lava-stage:before{content:"";position:absolute;left:-10%;right:-10%;bottom:0;height:28%;background:radial-gradient(ellipse at 50% 20%,#a8a77b0d,transparent 60%);border-top:1px solid #d9c99405;pointer-events:none}
.lava-aura{inset:7% 14%;opacity:calc(var(--lava-brightness)*.19);filter:blur(55px)}
.lava-object{filter:brightness(var(--lava-brightness)) drop-shadow(10px 18px 14px #0009)}
.lava-object:before{content:"";position:absolute;left:-40%;right:-40%;bottom:-3%;height:9%;border-radius:50%;background:radial-gradient(ellipse,#000c 0 25%,#0006 45%,transparent 72%);filter:blur(7px);z-index:-1}
.lava-object:after{content:"";position:absolute;left:17%;right:17%;top:74%;height:9%;border-radius:50%;background:var(--lava-wax);filter:blur(18px);opacity:.35;mix-blend-mode:screen;pointer-events:none}
.lava-glass{filter:drop-shadow(0 0 1px #e2f4df55)}
.lava-cap,.lava-base{background:repeating-linear-gradient(0deg,#ffffff0b 0 .5px,#00000008 1px,transparent 1.7px 2.8px),linear-gradient(95deg,#282a25 0%,#777967 13%,#d5d1b6 29%,#f0ead1 37%,#9b9b84 47%,#727764 58%,#b9baa1 73%,#5f6556 88%,#292f28 100%);box-shadow:inset 0 2px 1px #fff7,inset 0 -3px 4px #0008}
.lava-cap{border-radius:40% 40% 5% 5%/12% 12% 4% 4%;clip-path:polygon(28% 0,72% 0,88% 99%,12% 99%)}
.lava-cap:before{content:"";position:absolute;top:0;left:27%;right:27%;height:5%;border-radius:50%;background:linear-gradient(90deg,#5b6153,#dfdbc1,#575e51);border-bottom:1px solid #ffffff3b}
.lava-cap:after{content:"";position:absolute;bottom:3%;left:9%;right:9%;height:2%;background:#252d27;box-shadow:0 -1px #f1edc06b}
.lava-base:before{content:"";position:absolute;top:0;left:8%;right:8%;height:5%;border-radius:50%;background:linear-gradient(#f3ecd3,#5a6253);box-shadow:0 2px 3px #0b100cb3}
.lava-base:after{content:"";position:absolute;bottom:9%;left:22%;right:22%;height:1%;background:#121e1655;box-shadow:0 1px #faf5da44}
.lava-base span{font:500 5px system-ui;letter-spacing:1.7px;color:#27312a;position:relative;padding:5px 6px;border:1px solid #3a48302e;border-radius:1px;background:#e8e6cd17;text-shadow:0 1px #fff6}
.lava-foot{height:3.5%;background:linear-gradient(#111b13,#4b5545 20%,#10180f 75%);border-bottom:1px solid #000;box-shadow:0 4px 4px #000c}
.lamp-orb .lava-cap{background:linear-gradient(90deg,#252620,#9d987b 26%,#d2c29a 43%,#5f624d 70%,#1f2920);border-radius:50% 50% 0 0;box-shadow:inset 0 2px 1px #f5e6b58a}
.lamp-orb .lava-base{background:repeating-linear-gradient(0deg,#ffffff06 0 1px,transparent 1px 3px),linear-gradient(90deg,#0b1510,#334439 20%,#71816b 38%,#273a2e 55%,#526952 76%,#0a150d);clip-path:polygon(30% 0,70% 0,74% 25%,98% 96%,100% 100%,0 100%,2% 96%,26% 25%);border-radius:5%}
.lamp-orb .lava-base span{color:#c8c39f;border-color:#b4c0a940;text-shadow:0 1px #000;background:#101b1470}
.lamp-orb .lava-foot{height:4%;bottom:2%;left:27%;width:46%;background:linear-gradient(#728069,#1e2d21 35%,#0a130d);border-radius:50%}
.lamp-column .lava-cap,.lamp-column .lava-base{background:repeating-linear-gradient(0deg,#ffcfa512 0 .5px,transparent 1px 2px),linear-gradient(95deg,#38271d,#9f6143 17%,#ecc1a0 34%,#aa7455 47%,#c3926c 66%,#694630 88%,#332a21)}
.lamp-column .lava-cap{border-radius:8px 8px 2px 2px;border-top:3px solid #313329}
.lamp-column .lava-base{border-radius:2px 2px 12px 12px;border-bottom:3px solid #2d3026}
.lamp-column .lava-base:after{bottom:14%;height:14%;left:0;right:0;background:repeating-linear-gradient(90deg,#1d281947 0 1px,transparent 1px 3px);box-shadow:none}
.lamp-column .lava-base span{color:#362d20;border-color:#4c342d44;background:#f2d3ad1c}
.lava-immersive .lava-object{transform-origin:center}
@media(prefers-reduced-motion:reduce){.lava-glass{filter:none}}

.lamp-orb .lava-glass{top:20%;height:56%}.lamp-orb .lava-cap{top:17%;height:4%}.lamp-orb .lava-base{top:75%;height:19%}

/* A quiet hearth behind the lamp, with no added audio. */
.lava-stage{background:radial-gradient(ellipse at 50% 77%,#6d341e66,transparent 58%),linear-gradient(#17120f,#24170f 65%,#130f0c)}
.lava-hearth{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:-1;background:radial-gradient(ellipse at 50% 66%,#b15d2f28,transparent 66%)}
.lava-firebox{position:absolute;width:78%;height:52%;left:11%;bottom:9%;border:12px solid #201b16;border-radius:48% 48% 4% 4%/22% 22% 3% 3%;background:radial-gradient(ellipse at 50% 95%,#9b45243d,#140e0b 65%);box-shadow:0 0 0 3px #76604922,0 0 0 25px #352b223d,inset 0 0 30px #000;filter:blur(2px);opacity:.85}
.lava-firebox:before{content:"";position:absolute;bottom:1%;left:7%;right:7%;height:22%;border-radius:50%;background:radial-gradient(ellipse,#ffb75966,#9f35172e 45%,transparent 72%);filter:blur(14px);animation:hearth-glow 5s ease-in-out infinite alternate}
.lava-fire-log{position:absolute;bottom:5%;left:13%;width:74%;height:10%;border-radius:20px;transform:rotate(-7deg);background:repeating-linear-gradient(4deg,#3b2116 0 4px,#1c120e 5px 8px,#75472a 9px 10px);box-shadow:0 3px 8px #000,inset 0 1px #ce7c3855}
.lava-fire-log.second{transform:rotate(9deg);bottom:8%;left:18%;width:65%;opacity:.85}
.lava-flame{position:absolute;bottom:11%;left:var(--fire-x);width:var(--fire-w);height:var(--fire-h);border-radius:80% 0 65% 35%/80% 25% 75% 20%;transform-origin:50% 100%;background:radial-gradient(ellipse at 45% 95%,#ffe6aa 0,#e9a34988 30%,#bd562577 58%,#6b291500 78%);filter:blur(6px);mix-blend-mode:screen;opacity:.6;animation:hearth-flame var(--fire-time) ease-in-out infinite alternate;animation-delay:var(--fire-delay)}
.lava-flame:after{content:"";position:absolute;left:28%;bottom:0;width:45%;height:65%;border-radius:90% 10% 70% 30%;background:linear-gradient(0deg,#fff5bb88,#e8ac4e55,transparent);filter:blur(3px)}
.lava-hearth-vignette{position:absolute;inset:0;background:linear-gradient(#0e110c55,transparent 55%,#0a0c0866),radial-gradient(ellipse at center,transparent 15%,#0b100b99 85%)}
.lava-object{z-index:1}.lava-aura{z-index:0}.lava-immersive-controls,#lava-wake{z-index:6}
@keyframes hearth-flame{0%{transform:scale(.85,.75) rotate(-7deg);opacity:.38}45%{transform:scale(1.05,1.05) rotate(3deg);opacity:.6}100%{transform:scale(.9,1.18) rotate(7deg);opacity:.48}}
@keyframes hearth-glow{to{opacity:.6;transform:scale(1.15,.9)}}
.lava-lounge:has(#lava-motion[aria-pressed=false]) .lava-hearth *{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){.lava-hearth *{animation:none!important}}

/* Detailed hearth photograph; restrained light changes preserve the real textures. */
.lava-hearth{background:#17100c;opacity:1}
.lava-hearth-photo,.lava-hearth-firelight{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 60%;filter:brightness(.72) saturate(.85)}
.lava-hearth-firelight{background-image:url('assets/lounge-hearth-v2.webp');background-size:cover;background-position:center 60%;clip-path:inset(27% 9% 22% 9%);mix-blend-mode:screen;opacity:.09;filter:saturate(.85);animation:hearth-photo-light 7s ease-in-out infinite alternate}
.lava-hearth-vignette{background:linear-gradient(#080c0855,transparent 40%,#090d0755),radial-gradient(ellipse at 50% 55%,transparent 25%,#090d0866 100%)}
.lava-stage:before{display:none}
.lava-aura{opacity:calc(var(--lava-brightness)*.09)}
@keyframes hearth-photo-light{0%{opacity:.05}35%{opacity:.11}60%{opacity:.07}100%{opacity:.13}}
@media(prefers-reduced-motion:reduce){.lava-hearth-firelight{animation:none!important;opacity:.07}}

.lava-hearth-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;filter:brightness(.8) saturate(.85);background:#100d08}
.lava-video-credit{font:10px/1.6 system-ui;color:#aeb8a4;margin:0}.lava-video-credit a{color:#d5c79c;text-decoration:underline;text-underline-offset:3px}#lava-fire-start[hidden]{display:none}

/* A matched pair flanks the hearth; the centre remains open to the fire. */
.lava-object{position:absolute;left:5%;top:17%;height:65%;max-height:520px;transform-origin:center bottom}
.lava-object.lava-companion{left:auto;right:5%}
.lava-aura{inset:15% 0;background:radial-gradient(ellipse at 12% 65%,var(--lava-wax),transparent 28%),radial-gradient(ellipse at 88% 65%,var(--lava-wax),transparent 28%)}
.lava-immersive .lava-object{position:absolute;left:4%;top:18%;height:64%;transform-origin:center bottom}
.lava-immersive .lava-object.lava-companion{left:auto;right:4%}
@media(max-width:700px){.lava-object{left:2%;top:26%;height:51%}.lava-object.lava-companion{right:2%}.lava-immersive .lava-object{left:2%;top:27%;height:47%}.lava-immersive .lava-object.lava-companion{right:2%}}

.lava-companion .lava-wax{filter:url(#lava-merge-right)}
