@charset "UTF-8";
:root{color-scheme:dark;font-family:Arial,sans-serif;color:#f8e4b7;background:#071126}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid #ffe5a0;outline-offset:4px}[hidden]{display:none!important}.sr-only,.gate span,.project-cta span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.skip-link{position:fixed;top:-80px;z-index:20;padding:12px;background:#071126}.skip-link:focus{top:8px}
#castle{position:relative;width:100%;height:100svh;isolation:isolate;overflow:clip;background:#09152b}.backdrop{position:absolute;inset:-3%;background:url('./assets/hall-v5.webp') center/cover;filter:blur(14px) brightness(.42);transform:scale(1.03);pointer-events:none}.viewport{position:absolute;inset:0;overflow:clip;perspective:1800px;touch-action:none}.camera{position:absolute;inset:0;transform-style:preserve-3d;will-change:transform}.scene{position:absolute;left:50%;top:50%;width:var(--scene-w);height:var(--scene-h);transform:translate(-50%,-50%);user-select:none;transform-style:preserve-3d}.hall,canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.hall{object-fit:fill}#world{opacity:0}#castle[data-renderer="webgl"] #world{opacity:1}#actors{z-index:3}#effects{z-index:2}.fallback-hero{position:absolute;left:15%;top:52%;width:26%;height:46%;background:url('./assets/adventurer-v2.webp') 0 0/400% 200%;pointer-events:none}#castle[data-renderer="webgl"] .fallback-hero{display:none}
#destinations{position:absolute;inset:0;z-index:2;pointer-events:none}.gate{position:absolute;pointer-events:auto;border-radius:42% 42% 7% 7%;transition:box-shadow .7s ease;background:transparent}.gate:after{content:"";position:absolute;inset:2%;border-radius:inherit;background:radial-gradient(ellipse at 50% 90%,#ffd78624,transparent 70%);opacity:var(--lit,0);pointer-events:none}.works{left:13.6%;top:24%;width:15%;height:39%}.price{left:34.3%;top:28%;width:12.5%;height:34%}.about{left:53.5%;top:28%;width:13%;height:34%}.reviews{left:72%;top:24%;width:13.5%;height:39%}.project-cta{position:absolute;z-index:4;left:78.6%;top:86%;width:18.6%;height:8%;border-radius:8px;transition:box-shadow .7s}.project-cta:hover,.project-cta:focus-visible{box-shadow:0 0 20px #e9bd6f55,inset 0 0 20px #e9bd6f11}.cabinet{position:absolute;z-index:7;right:14px;top:12px;padding:7px 10px;font-size:10px;background:#07112688;border:1px solid #d0ad603d;backdrop-filter:blur(4px)}.cursor-light{position:absolute;z-index:6;left:0;top:0;width:24px;height:24px;border:1px solid #ffe2a44d;border-radius:50%;pointer-events:none;opacity:0;will-change:transform;transition:opacity .6s}#castle.pointer-inside .cursor-light{opacity:.65}.mobile-brand{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden}.mobile-nav{display:none}.veil{position:absolute;inset:0;background:#081226;opacity:0;pointer-events:none;z-index:9;transition:opacity .65s}.entering .veil{opacity:1;transition-delay:1.25s}.entering .cabinet,.entering .mobile-nav{opacity:0;transition:opacity .35s}
#room-dialog{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;border:0;padding:24px;background:#081226;color:#f4dfb8;overflow:auto}#room-dialog::backdrop{background:#081226}.room-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.room-toolbar button{color:inherit;border:1px solid #ab894c;background:#101e34;padding:12px 18px}.room-toolbar span{font-size:11px;text-transform:uppercase;letter-spacing:.13em;color:#bea779}#room-title{font:normal clamp(28px,3vw,44px) Georgia;text-align:center;margin:24px 0 10px}.room-note{text-align:center;font-size:12px;color:#aeb8c9;margin-bottom:24px}#room-art{display:block;max-width:1400px;width:100%;height:auto;margin:auto}.noscript{position:fixed;bottom:0;background:#081226;padding:12px;z-index:10}
@media(max-width:760px){.cabinet{font-size:9px;top:10px;right:10px}.mobile-brand{clip-path:none;overflow:visible;width:100%;height:auto;top:58px;left:0;text-align:center;z-index:5;pointer-events:none;text-shadow:0 2px 12px #000;background:linear-gradient(transparent,#08122688,transparent)}.mobile-brand h1{font:normal 27px Georgia;margin:0 0 8px}.mobile-brand p{font-size:10px;letter-spacing:.24em;text-transform:uppercase;margin:0}.mobile-nav{position:absolute;display:grid;grid-template-columns:repeat(4,1fr);gap:5px;bottom:16px;left:12px;right:12px;z-index:7}.mobile-nav a{font-size:11px;text-align:center;padding:12px 2px;border:1px solid #c5a26888;background:#081226df;backdrop-filter:blur(8px)}.mobile-nav .mobile-contact{grid-column:1/-1;font:18px Georgia;padding:14px}.cursor-light{display:none}.room-toolbar span{font-size:9px}.room-note{line-height:1.6}#room-dialog{padding:16px}.project-cta{pointer-events:none}}

@media(max-width:760px){.mobile-brand{clip-path:inset(50%);width:1px;height:1px;overflow:hidden}}

.fallback-mark{position:absolute;left:45.5%;top:1.5%;width:9.1%;height:13.3%;filter:invert(1) sepia(1);mix-blend-mode:screen;pointer-events:none}#castle[data-renderer="webgl"] .fallback-mark{display:none}

/* v6: no decorative cursor; stronger local doorway light, never moving screen edges. */
.cursor-light{display:block}.gate:after{background:radial-gradient(ellipse at 50% 80%,#ffd78655,transparent 74%);box-shadow:inset 0 0 22px #ffce792b,0 0 26px #ffce7924}.backdrop{display:none}

#room-life{z-index:1}.entering .veil{transition-delay:1.30s}@media(max-width:760px){.cursor-light{display:none}}

#foreground{z-index:3;pointer-events:none}

/* v8: observer and foreground stay fixed; the distant hall carries the projection. */
.hall-depth{position:absolute;inset:0;transform-origin:0 0;will-change:transform}#destinations{transform-origin:0 0}

#castle[data-renderer="webgl"] #room-life{opacity:0}

#throw-hand{z-index:5;pointer-events:none}.entering .veil{transition-delay:2.10s;transition-duration:.55s}

/* Rooms: the visitor looks into the room; no avatar or hand layer exists here. */
#room-dialog{padding:0;overflow:hidden;background:#09152b}#room-title{margin:0}.chamber-stage{position:absolute;inset:0;container-type:size;overflow:hidden}#room-art{position:absolute;inset:0;max-width:none;width:100%;height:100%;object-fit:fill}#chamber-world{opacity:0}.chamber-stage[data-ready=true] #chamber-world{opacity:1}
.chamber-toolbar{position:absolute;inset:0;pointer-events:none;z-index:5}.chamber-toolbar button,.chamber-brand{pointer-events:auto;position:absolute;background:#08172cf5;border:2px solid #bb9452;box-shadow:0 0 0 4px #071225,0 0 0 5px #b39458;color:#ffe0a2}.chamber-toolbar button{right:3%;top:4.5%;padding:1.1% 2%;font:clamp(14px,1.7vw,27px) Georgia}.chamber-brand{left:2.8%;top:2%;width:21%;height:10.5%;display:flex;align-items:center;gap:4%;border:0;box-shadow:none;font:clamp(13px,1.55vw,26px) Georgia}.chamber-brand svg{width:27%;height:95%;filter:invert(1) sepia(1);mix-blend-mode:screen}
#chamber-content{position:absolute;inset:0;pointer-events:none;font:clamp(14px,1.5vw,25px) Georgia}#chamber-content section,#chamber-content form,#chamber-content button{pointer-events:auto}#chamber-content h2{font:normal 3.6cqw Georgia;margin:0 0 1.2cqh}#chamber-content h3{font:normal 2cqw Georgia;margin:2cqh 0}#chamber-content p{line-height:1.45}.parchment{color:#35200d;background:radial-gradient(ellipse at 35% 30%,#f4dba9,#dcb675);box-shadow:inset 0 0 25px #86572040}.room-action{color:#ffe4b2;background:linear-gradient(#14294b,#09162d);border:2px solid #c79b51;padding:1.3cqh 2cqw;font:1.8cqw Georgia;box-shadow:0 0 0 3px #182239,0 0 0 4px #cda15e;transition:filter .35s,box-shadow .35s}.room-action:hover{filter:brightness(1.25);box-shadow:0 0 18px #ffcd7255}.fine{font:1.05cqw/1.5 Arial!important}.price-content{position:absolute;left:19%;top:16%;width:54%;height:65%;padding:1.4cqh 3cqw;text-align:center}.site-types,.site-extras{display:flex;gap:1cqw;justify-content:center}.type-choice{background:#f0d19a;border:1px solid #906331;color:#3a250e;font:1.3cqw Georgia;padding:2cqh 1cqw;flex:1}.type-choice[aria-pressed=true]{background:#143151;color:#ffe3ad;box-shadow:0 0 0 2px #b17f3a}.site-extras{flex-wrap:wrap;font:1.1cqw Arial}.site-extras label{display:flex;align-items:center;gap:.5cqw;padding:1cqh 0}.site-extras input{accent-color:#173754;width:1.2cqw;height:1.2cqw}.estimate{font-size:1.3cqw;min-height:6cqh;border-block:1px solid #9e773d;padding:1.5cqh}.about-content{position:absolute;left:48%;top:9%;width:34%;height:67%;background:#071426;padding:2cqh 2cqw;text-align:center}.about-content h3{font-size:2.7cqw!important}.subtitle{letter-spacing:.35em;font-size:1.3cqw}.principles{display:flex;justify-content:space-between;margin:6cqh 0;font-size:1.4cqw}.steps{font-size:1cqw;margin:4cqh 0}.reviews-content{position:absolute;left:33%;top:34%;width:33%;height:31%;padding:2cqh 1cqw;text-align:center}.reviews-content h2{font-size:2.1cqw!important}.reviews-content p{font-size:1.35cqw}.quote{font-size:5cqw;line-height:.8;color:#92602c}.reviews-content .room-action{position:absolute;top:151%;left:6%;width:88%}
.contact-content{position:absolute;left:54%;top:17%;width:31%;height:62%;padding:2cqh 2cqw;text-align:center}.contact-content h2{font-size:2.8cqw!important}.contact-content>p{font-size:1.3cqw;margin:1.5cqh 0}.contact-content label{display:block}.contact-content input,.contact-content textarea{width:100%;color:#38250f;border:1px solid #987444;background:#f6ddb044;padding:1.4cqh 1cqw;margin:.7cqh 0;font:1.2cqw Georgia}.contact-content textarea{height:10cqh;resize:none}.contact-content .room-action{width:100%;font-size:1.5cqw;margin:1.5cqh 0}.contact-content .form-status{font-size:1cqw;margin:0}.chamber-stage[data-room=contact]~.chamber-toolbar .chamber-brand{left:auto;right:2.8%;width:20%}.chamber-stage[data-room=contact]~.chamber-toolbar button{right:auto;left:3%}.chamber-stage[data-room=about]~.chamber-toolbar button{right:auto;left:3%;top:auto;bottom:6%}
.gallery-tabs{position:absolute;left:29%;top:24%;width:42%;height:5.8%;display:grid;place-items:center;background:#0a1c34;color:#ffe4ae;border:1px solid #b98c44;font-size:1.55cqw}.gallery-preview{position:absolute;left:29%;top:34%;width:42%;height:36%;background-image:url('./assets/room-works-clean-v12.webp');background-repeat:no-repeat;background-size:238% 278%;background-position:50% 51%;transition:opacity .5s}.gallery-preview.left{background-size:500% 278%;background-position:2% 56%}.gallery-preview.right{background-size:500% 278%;background-position:99% 56%}.gallery-label{position:absolute;left:39%;top:70.9%;width:22%;height:4%;background:#0a192e;text-align:center;font-size:1.8cqw;margin:0}.gallery-caption{position:absolute;left:39%;top:75%;width:22%;height:3.6%;background:#0a192e;text-align:center;font: .85cqw Arial!important;margin:0}.gallery-prev,.gallery-next{position:absolute;top:48.8%;width:3.2%;height:7%;font:2.5cqw Georgia;color:#ffd889;background:#0b1b31;border:1px solid #c9a15f}.gallery-prev{left:23.2%}.gallery-next{left:73.8%}.gallery-cta{position:absolute;left:40.5%;top:82%;width:19%;font-size:1.3cqw}#room-error{position:absolute;bottom:10%;left:15%;right:15%;background:#081226;padding:20px;z-index:8}
@media(max-width:760px){#room-dialog{overflow-y:auto}.chamber-stage{position:relative;width:100%;height:100svh;min-height:700px}#room-art,#chamber-world{height:100%;object-fit:cover}.chamber-toolbar button{position:fixed;top:16px!important;bottom:auto!important;left:16px!important;right:auto!important;font-size:14px;padding:10px 12px}.chamber-brand{display:none}.price-content,.about-content,.reviews-content,.contact-content{left:5%;top:19%;width:90%;height:auto;min-height:56%;padding:24px 20px;border:2px solid #b99152}#chamber-content h2,.contact-content h2,.reviews-content h2{font-size:30px!important}#chamber-content h3,.about-content h3{font-size:23px!important}#chamber-content p,.contact-content>p,.reviews-content p{font-size:16px}.room-action,.contact-content .room-action{font-size:18px;padding:14px 12px}.fine{font-size:12px!important}.site-types{flex-direction:column}.type-choice{font-size:17px;padding:12px}.site-extras{font-size:14px;justify-content:flex-start}.site-extras input{width:18px;height:18px}.contact-content input,.contact-content textarea{font-size:17px;padding:13px}.contact-content textarea{height:110px}.contact-content .form-status{font-size:13px}.principles{font-size:16px;margin:28px 0}.subtitle{letter-spacing:.1em}.steps{margin:28px 0}.reviews-content .room-action{position:static;width:95%;margin-top:25px}.quote{font-size:80px}.gallery-tabs{left:5%;top:19%;width:90%;font-size:16px}.gallery-preview{left:5%;top:29%;width:90%;height:30%}.gallery-label{left:10%;top:62%;width:80%;height:6%;font-size:23px}.gallery-caption{left:10%;top:68%;width:80%;height:6%;font-size:13px!important}.gallery-prev,.gallery-next{top:44%;width:10%;height:7%;font-size:30px}.gallery-prev{left:5%}.gallery-next{left:85%}.gallery-cta{left:10%;top:79%;width:80%;font-size:18px}}

/* Clean plates retain the approved material and frames underneath live text. */
.parchment,.about-content{background:transparent;box-shadow:none}.chamber-brand{background:#09182b;border:0;border-radius:3px}.chamber-brand svg{filter:invert(.88) sepia(.8) saturate(1.6)}
.price-content{height:65%;padding-top:1cqh}.price-content>.room-action{position:absolute;left:36%;top:102%;width:38%;font-size:1.65cqw;padding:.9cqh 0;background:transparent;border:0;box-shadow:none}
.gallery-controls>h2{position:absolute;left:29%;top:10%;width:42%;height:12%;overflow:visible;clip-path:none;text-align:center;background:linear-gradient(90deg,#08172baa,#08172bee,#08172baa);padding:2cqh 0;color:#ffe0a0}
.gallery-label,.gallery-caption{background:#09182bf5}.gallery-cta{left:38%;width:24%}.gallery-tabs{background:#09182bef}
.contact-content{height:64%}.contact-content .fine{font-size:1cqw!important}.about-content{padding-top:4cqh}.principles span{border-top:1px solid #b99b5c;padding-top:2cqh}
@media(max-width:760px){.parchment{background:radial-gradient(ellipse at 35% 30%,#f4dba9,#dcb675)}.about-content{background:#09172bea}.price-content>.room-action{position:static;width:100%;font-size:18px;background:#10233f;border:1px solid #bd9656;padding:14px;margin-top:20px}.gallery-controls>h2{left:5%;top:11%;width:90%;height:7%;font-size:28px!important;padding:8px}.gallery-cta{left:10%;width:80%}.contact-content .fine{font-size:12px!important}.contact-content{height:auto}}

.contact-content .room-action{position:absolute;top:71%;left:10%;width:80%;height:10%;background:transparent;box-shadow:none;border:0;margin:0}.contact-content>.fine{position:absolute;top:84%;left:8%;width:84%}.contact-content .form-status{position:absolute;top:94%;left:8%;width:84%}
@media(max-width:760px){.contact-content .room-action{position:static;height:auto;background:#0c213a;border:1px solid #b58c49;width:100%;margin:15px 0}.contact-content>.fine,.contact-content .form-status{position:static;width:100%}}

.chamber-brand svg{filter:none;mix-blend-mode:normal}.chamber-brand{background:linear-gradient(90deg,#09182bf5,#09182be8);padding:4px 8px}.room-action,.chamber-toolbar button,.gallery-prev,.gallery-next,.type-choice{clip-path:polygon(8px 0,calc(100% - 8px) 0,100% 8px,100% calc(100% - 8px),calc(100% - 8px) 100%,8px 100%,0 calc(100% - 8px),0 8px)}
.gallery-controls>h2{border-block:1px solid #b48d4c66;border-radius:0 0 18% 18%}.gallery-label{width:28%;left:36%;font-size:1.7cqw}.gallery-caption{left:36%;width:28%;padding-top:.4cqh}.gallery-preview{top:34.2%;height:36.3%;background-position:50% 51%;}
@media(max-width:760px){.gallery-label{left:10%;width:80%;font-size:23px}.gallery-caption{left:10%;width:80%}.gallery-preview{top:29%;height:30%}}

.reviews-heading{position:absolute;left:38%;top:9%;width:23%;text-align:center;font:5cqw Georgia;color:#ffe3ad;text-shadow:0 3px 8px #0009}
@media(max-width:760px){.reviews-heading{display:none}.price-content{padding-bottom:28px}.chamber-stage #chamber-world{object-fit:cover}}

/* v13: fixed rooms and a shared navy/gold stepped frame matching the hall CTA. */
.room-action,.chamber-toolbar button,.gallery-prev,.gallery-next{border:0;clip-path:none;border-radius:0;background:transparent url('./assets/ui-frame.svg') center/100% 100% no-repeat;box-shadow:none;color:#ffe4b3;font-weight:normal;text-shadow:0 2px 2px #020a19;padding:1.8cqh 2cqw;transition:filter .35s ease;}
.room-action:hover,.chamber-toolbar button:hover,.gallery-prev:hover,.gallery-next:hover{filter:brightness(1.2);box-shadow:none}.room-action:focus-visible,.chamber-toolbar button:focus-visible{outline:2px solid #ffe4ad;outline-offset:5px}
.chamber-toolbar button{font:normal clamp(14px,1.65vw,28px) Georgia;min-height:7.8%;width:16.4%;padding:1% 1.2%;right:2.8%;top:4%}
.chamber-brand{background:transparent;padding:0;width:21%;height:10.5%;text-shadow:0 2px 6px #030a17}.chamber-brand svg{width:24%}
.price-content{left:21%;top:17%;width:50%;height:63%;padding:0 1cqw;text-align:left}.price-content h2{text-align:center;font-size:3.7cqw!important;margin-bottom:3cqh!important}.price-content h3{font-size:2cqw!important;margin:2.5cqh 0!important}.site-types{gap:1.1cqw}.type-choice{min-height:15cqh;background:#edcd9433;border:1px solid #926733;box-shadow:inset 0 0 0 4px #e9c89155;clip-path:polygon(6px 0,calc(100% - 6px) 0,100% 6px,100% calc(100% - 6px),calc(100% - 6px) 100%,6px 100%,0 calc(100% - 6px),0 6px);font:1.5cqw Georgia;}
.type-choice[aria-pressed=true]{background:#102744;color:#ffe1a2;box-shadow:inset 0 0 0 2px #ba924e,inset 0 0 0 5px #102744,inset 0 0 0 6px #a88144}.site-extras{justify-content:space-between;gap:.6cqw}.site-extras label{border:1px solid #a88042;padding:1.3cqh .6cqw;font:1cqw Georgia;background:#f8e4b32b}.site-extras input{appearance:none;background:transparent;border:1px solid #76542c;width:1.15cqw;height:1.15cqw;margin:0;display:grid;place-items:center}.site-extras input:checked:after{content:'✓';font:bold 1cqw Arial;color:#30210e}.estimate{font-size:1.25cqw;min-height:7cqh;display:flex;align-items:center;border:1px solid #a5804c;padding:1cqh 1cqw;margin-top:3cqh}.price-content>.fine{text-align:center}.price-content>.room-action{left:35%;top:102%;width:43%;height:10%;padding:0;background:none;border:0;box-shadow:none;font-size:1.7cqw}
.about-content{left:48%;top:10%;width:34%;height:66%;padding:1cqh 2cqw}.about-content h2{font-size:2cqw!important;margin:1cqh 0 5cqh!important}.about-content h3{font-size:2.9cqw!important;margin:0!important}.about-content>.subtitle{font-size:1.5cqw;margin:1cqh 0 5cqh}.about-content>p:not(.subtitle):not(.steps){font-size:1.9cqw}.principles{margin:4cqh 0 3cqh;font-size:1.4cqw;gap:1cqw}.principles span{flex:1;border-top:0;padding:0}.principles span:before{display:block;margin:0 auto 1.5cqh;font-size:2.4cqw;color:#f4c779;line-height:1.7;width:4.6cqw;height:4.6cqw;background:url('./assets/ui-frame.svg') center/100% 100% no-repeat}.principles span:nth-child(1):before{content:'▤'}.principles span:nth-child(2):before{content:'…'}.principles span:nth-child(3):before{content:'⚙'}.steps{font:1cqw Georgia;border-block:1px solid #b5904e55;padding:1.1cqh 0;margin:2cqh 0!important}.about-content>.room-action{width:70%;font-size:1.7cqw;margin-top:1.5cqh;min-height:8cqh}
.reviews-content{left:33%;top:35%;width:33%;height:30%;padding:1cqh 1cqw}.reviews-content .room-action{top:150%;left:7%;width:86%;height:9cqh;padding:1cqh;font-size:1.8cqw}.reviews-heading{font-size:5.2cqw;top:9%;left:38%;width:24%}
.gallery-controls>h2{background:linear-gradient(90deg,transparent,#081b36ee 15%,#081b36ee 85%,transparent);border:0;border-bottom:1px solid #d0a75d80;border-radius:0;top:10%;height:12%;font-size:3.9cqw!important}.gallery-tabs{background:transparent;border:0;font:1.2cqw Georgia;letter-spacing:.12em;top:24.5%;height:4%}.gallery-label{left:36%;top:72%;width:28%;height:4.5%;font-size:1.9cqw;background:#0a1b33f5}.gallery-caption{left:36%;top:76.5%;width:28%;height:3.5%;background:#0a1b33f5;font-size:.8cqw!important;letter-spacing:.06em}.gallery-prev,.gallery-next{font-size:2.5cqw;width:4%;height:8%;padding:0;top:48%}.gallery-prev{left:22.7%}.gallery-next{left:73.4%}.gallery-cta{top:83%;left:39%;width:22%;height:7.2%;padding:0;font-size:1.3cqw}
.contact-content{left:54.5%;top:18.5%;width:30%;height:61%;padding:0 1.5cqw}.contact-content h2{font-size:2.7cqw!important;margin:1cqh 0 1.5cqh!important}.contact-content>p{font-size:1.5cqw;margin-bottom:3cqh}.contact-content input,.contact-content textarea{border:1px solid #a0804c;background:#fae8bc18;box-shadow:inset 0 0 0 3px #ecd09c55;font:1.25cqw Georgia;padding:1.5cqh 1cqw;margin:1cqh 0}.contact-content textarea{height:11cqh}.contact-content .room-action{top:73%;height:10%;left:10%;width:80%;background:none;box-shadow:none;border:0;padding:0;font-size:1.55cqw}.contact-content>.fine{top:88%;font-size:.95cqw!important}.contact-content .form-status{top:96%}
@media(max-width:760px){.chamber-toolbar button{width:auto;min-height:44px;padding:12px 20px;font-size:14px}.price-content,.about-content,.reviews-content,.contact-content{left:5%;top:17%;width:90%;height:auto;padding:24px 20px}.price-content h2,.about-content h2,.contact-content h2{font-size:29px!important;margin:0 0 20px!important}.price-content h3{font-size:21px!important;margin:18px 0!important}.type-choice{font-size:18px;min-height:58px}.site-extras{justify-content:flex-start;gap:8px}.site-extras label{font-size:14px;padding:10px}.site-extras input{width:17px;height:17px}.site-extras input:checked:after{font-size:15px}.estimate{font-size:15px;min-height:75px;padding:10px;margin-top:18px}.price-content>.room-action,.contact-content .room-action{position:static;width:100%;height:auto;min-height:60px;background:transparent url('./assets/ui-frame.svg') center/100% 100% no-repeat;font-size:18px;padding:14px;margin:15px 0}.about-content h3{font-size:26px!important}.about-content>.subtitle{font-size:15px;margin:10px 0 24px}.about-content>p:not(.subtitle):not(.steps){font-size:19px}.principles{font-size:14px;margin:25px 0}.principles span:before{font-size:25px;width:46px;height:46px;margin:0 auto 12px}.steps{font-size:13px;padding:12px 0}.about-content>.room-action{width:100%;font-size:18px;min-height:60px}.reviews-content .room-action{position:static;height:auto;width:100%;font-size:18px;padding:18px}.gallery-controls>h2{font-size:29px!important;left:5%;top:11%;width:90%;height:8%}.gallery-tabs{left:5%;width:90%;top:22%;font-size:12px}.gallery-label{left:10%;width:80%;top:62%;height:6%;font-size:23px}.gallery-caption{left:10%;width:80%;top:68%;height:7%;font-size:12px!important}.gallery-prev,.gallery-next{top:43%;width:12%;height:8%;font-size:30px}.gallery-prev{left:4%}.gallery-next{left:84%}.gallery-cta{left:10%;width:80%;top:80%;height:8%;font-size:18px}.contact-content>p{font-size:16px;margin-bottom:20px}.contact-content input,.contact-content textarea{font-size:16px;padding:14px;margin:8px 0}.contact-content textarea{height:110px}.contact-content>.fine{font-size:12px!important}}

.about-content>.room-action{position:absolute;left:24%;top:88%;width:62%;height:10%;min-height:0;margin:0;padding:0}.about-content>.subtitle{margin-bottom:3cqh}.principles{margin-top:3cqh;margin-bottom:2cqh}
@media(max-width:760px){.about-content>.room-action{position:static;width:100%;height:auto;min-height:60px;margin-top:20px}.about-content>.subtitle{margin-bottom:24px}.principles{margin:24px 0}}

.principles span:before,.gallery-prev,.gallery-next{background-image:url('./assets/ui-square.svg')}.gallery-label{height:8.5%;padding-top:.6cqh;background:transparent url('./assets/ui-frame.svg') center/100% 100% no-repeat}.gallery-caption{background:transparent}
@media(max-width:760px){.gallery-label{height:13%;padding-top:12px}.gallery-caption{top:68.5%}}

@media(max-width:760px){.chamber-stage[data-room=price]{min-height:900px}}

/* Portrait layout shows the complete hall, with readable navigation below it. */
@media(max-width:760px){
 #castle{min-height:100svh;height:auto;background:radial-gradient(ellipse at 50% 20%,#233951,#09152b 75%);padding:108px 0 30px;display:flex;flex-direction:column}
 .viewport{position:relative;inset:auto;width:100%;height:56.28vw;flex:none;touch-action:pan-y}
 .mobile-brand{position:absolute;clip-path:none;width:100%;height:auto;overflow:visible;top:51px;background:none}
 .mobile-brand h1{font-size:23px;margin-bottom:6px}.mobile-brand p{font-size:9px}
 .mobile-nav{position:relative;inset:auto;margin:24px 18px 0;grid-template-columns:repeat(2,1fr);gap:12px}
 .mobile-nav a{min-height:58px;display:grid;place-items:center;font:17px Georgia;background:#0b1c32 url('./assets/ui-frame.svg') center/100% 100% no-repeat;border:0;padding:15px 7px}
 .mobile-nav .mobile-contact{min-height:60px;font-size:19px}
}

/* Pointer glow and a short, shader-based air wake. */
.cursor-light{border-color:#ffe3a9b8;box-shadow:0 0 9px #ffdf9b66,inset 0 0 7px #fff1cb35;background:radial-gradient(circle,#fff3d514,transparent 70%)}
#castle.pointer-inside .cursor-light{opacity:.92}


#room-dialog .room-cursor{position:fixed;z-index:20;left:0;top:0;pointer-events:none}
@media(pointer:coarse){#room-dialog .room-cursor{display:none}}
