/* Full-bleed photography on its own 3D plane; copy and actions never move. */
.hero-immersive{isolation:isolate;position:relative;display:flex;align-items:center;width:100%;height:clamp(680px,83svh,900px);min-height:680px;max-height:none;overflow:clip;background:#2c2021;color:#fff5e9;padding:70px 7% 90px;perspective:1800px;touch-action:pan-y}
.hero-lens{position:absolute;inset:-3%;z-index:-4;transform:rotateX(var(--hero-rx,0deg)) rotateY(var(--hero-ry,0deg)) translate3d(var(--hero-px,0px),var(--hero-py,0px),0);transition:transform 1s cubic-bezier(.16,.8,.2,1);will-change:transform;pointer-events:none}
.hero-slide{position:absolute;inset:0;margin:0;opacity:0;visibility:hidden;transition:opacity 1.9s ease,visibility 1.9s;backface-visibility:hidden;transform:translateZ(0)}.hero-slide.is-active{opacity:1;visibility:visible}.hero-slide img{display:block;width:100%;height:100%;object-fit:cover;object-position:64% 52%;transform:scale(1.075) rotateY(-.6deg);transition:transform 9s cubic-bezier(.2,.5,.3,1)}.hero-slide.is-active img{transform:scale(1.015) rotateY(.45deg)}.hero-immersive[data-running=false] .hero-slide img{transition:none}
.hero-immersive .hero-shade{position:absolute;inset:0;z-index:-3;background:linear-gradient(90deg,#201019ec 0%,#25151ac4 33%,#1c11185c 63%,#1c111830 100%),linear-gradient(0deg,#170e16b8,transparent 30%,transparent 70%,#140b1530);pointer-events:none}
.hero-orbit{position:absolute;width:clamp(150px,24vw,350px);height:auto;right:2%;bottom:35px;opacity:.42;z-index:-1;pointer-events:none;transform:translate3d(calc(var(--hero-px,0px)*-1.3),calc(var(--hero-py,0px)*-1.3),0) rotate(-12deg);transition:transform 1.2s;filter:drop-shadow(0 14px 15px #0005)}
.hero-immersive .hero-content{position:relative;padding:0;margin:0;max-width:690px;z-index:1;transform:none!important;animation:none!important;opacity:1!important}.hero-hotel-name{display:flex;gap:20px;align-items:center;font:25px var(--serif);letter-spacing:.15em;margin:0 0 38px;color:#f4dfbc}.hero-hotel-name>span{font:8px var(--sans);letter-spacing:.21em;padding-left:20px;border-left:1px solid #e3c49770;color:#e4cdae}.hero-immersive .hero-intro{font-size:9px;letter-spacing:.22em;color:#ead1a7;margin-bottom:24px;animation:none!important;opacity:1!important}.hero-immersive h1{font-size:clamp(76px,7.5vw,118px);font-weight:400;line-height:.98;letter-spacing:-.04em;margin:0 0 25px;animation:none!important;opacity:1!important;transform:none!important}.hero-immersive h1 em{font-weight:400;color:#f0ce94}.hero-immersive .hero-sub{font-size:17px;color:#f1e2d9;line-height:1.7;margin-bottom:13px;animation:none!important;opacity:1!important}.hero-immersive .hero-description{font-size:13px;line-height:1.9;max-width:420px;color:#e6d8d0;margin-bottom:30px;animation:none!important;opacity:1!important}.hero-booking-actions{display:flex;gap:15px;align-items:center;flex-wrap:wrap}.hero-immersive .hero-booking-actions .button{min-width:188px;min-height:56px;font-size:12px;animation:none!important;opacity:1!important;transform:translateY(0)}
.button-depth{position:relative;border-radius:4px;box-shadow:0 4px 0 #51351f,0 13px 24px #12091052,inset 0 1px 0 #ffffff8f;transition:box-shadow .22s,transform .22s,background .22s;overflow:hidden}.button-depth:before{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(120deg,#fff3,transparent 45%,#fff0);border-radius:inherit}.button-gold{background:linear-gradient(160deg,#f3dab0,#dab780);color:#332119;border:1px solid #f9e4bc}.button-gold:hover{background:linear-gradient(160deg,#ffe6c0,#e5c28b);color:#24160f}.button-glass{background:#39242c9c;color:#fff1de;border:1px solid #e4c89d80;box-shadow:0 4px 0 #1f141d,0 13px 24px #12091052,inset 0 1px 0 #ffffff30}.button-glass:hover{background:#513441d9;color:#fff3e1}.hero-immersive .button-depth:hover{transform:translateY(-2px);box-shadow:0 6px 0 #51351f,0 18px 28px #12091066,inset 0 1px 0 #ffffff8f}.hero-immersive .button-depth:active{transform:translateY(3px);box-shadow:0 1px 0 #51351f,0 5px 12px #12091040,inset 0 1px 0 #ffffff5f}
.hero-trust{display:flex;align-items:center;gap:13px;margin-top:28px;color:#e5d6c7;font-size:10px;letter-spacing:.035em}.hero-trust i{color:#d8b77f;font-style:normal}.hero-immersive .hero-bottom{position:absolute;left:7%;right:7%;bottom:24px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:8px;letter-spacing:.15em;border-top:1px solid #e3ccab3d;padding-top:16px;color:#edddc6}.hero-photo-credit{font-size:7px;color:#ddc7af}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.hero-immersive[data-quality=lite] .hero-orbit{display:none}.hero-immersive[data-quality=lite] .hero-lens{will-change:auto}.hero-immersive[data-depth=off] .hero-lens,.reduce-motion .hero-lens{transform:none!important;will-change:auto}.reduce-motion .hero-immersive .hero-slide img,.hero-immersive[data-reduced=true] .hero-slide img{transform:none!important;transition:none!important}.reduce-motion .hero-immersive .hero-slide,.hero-immersive[data-reduced=true] .hero-slide{transition:none!important}.reduce-motion .hero-orbit{transform:none!important}
.stays .room-image img{object-position:center}.stays .room-image{aspect-ratio:4/3}.room-image .small-image-note{max-width:90%;font-size:9px}
@media(min-width:1000px) and (min-height:700px){.stays .room-stack .room-image{aspect-ratio:4/3;min-height:390px}.stays .room-stack .room-image img{object-fit:cover}}
@media(max-width:850px){.hero-immersive{height:auto;min-height:720px;padding:58px 6% 90px}.hero-immersive .hero-content{max-width:620px}.hero-immersive h1{font-size:clamp(76px,10vw,100px)}.hero-immersive .hero-shade{background:linear-gradient(90deg,#201019e8,#21141ab8 55%,#1f151a60),linear-gradient(0deg,#170e1690,transparent 50%)}.hero-hotel-name{margin-bottom:35px}.hero-orbit{right:-30px;bottom:50px;width:210px;opacity:.3}.hero-immersive .hero-bottom{left:6%;right:6%}}
@media(max-width:600px){.hero-immersive{min-height:690px;height:calc(100svh - 105px);max-height:900px;padding:43px 7% 78px;align-items:center}.hero-lens{inset:-4%}.hero-slide img{object-position:60% 50%}.hero-slide:nth-child(2) img{object-position:56% 50%}.hero-slide:nth-child(3) img{object-position:67% 50%}.hero-immersive .hero-shade{background:linear-gradient(90deg,#21121ae8,#21121ab8 58%,#21121a78),linear-gradient(0deg,#170e169e,transparent 45%,#21111a20)}.hero-hotel-name{display:block;font-size:22px;letter-spacing:.14em;margin-bottom:32px}.hero-hotel-name>span{display:block;margin-top:10px;border-left:0;padding-left:0;font-size:7px;letter-spacing:.26em}.hero-immersive .hero-intro{font-size:8px;margin-bottom:20px}.hero-immersive h1{font-size:clamp(70px,18vw,91px);margin-bottom:22px}.hero-immersive .hero-sub{font-size:15px;margin-bottom:12px}.hero-immersive .hero-description{font-size:12px;max-width:280px;margin-bottom:26px}.hero-booking-actions{gap:12px}.hero-immersive .hero-booking-actions .button{min-width:0;min-height:54px;padding:14px 17px;gap:24px;font-size:11px;flex:1;white-space:nowrap;justify-content:space-between}.hero-trust{font-size:9px;gap:10px;margin-top:26px;flex-wrap:wrap}.hero-immersive .hero-bottom{bottom:21px;left:7%;right:7%;font-size:7px;letter-spacing:.09em;padding-top:14px;display:block}.hero-photo-credit{display:block;font-size:6px;margin-top:7px;letter-spacing:.13em}.hero-orbit{width:160px;bottom:36px;right:-20px;opacity:.25}.stays .room-image{aspect-ratio:4/3}.room-image .small-image-note{font-size:8px}}
@media(max-width:360px){.hero-immersive{padding-left:6%;padding-right:6%;min-height:720px}.hero-immersive h1{font-size:68px}.hero-booking-actions{flex-direction:column;align-items:stretch;max-width:235px}.hero-immersive .hero-booking-actions .button{flex:auto;min-height:50px}.hero-hotel-name{margin-bottom:26px}.hero-trust{font-size:8px;gap:8px}.hero-immersive .hero-description{margin-bottom:22px}}
@media(prefers-reduced-motion:reduce){.hero-immersive .hero-lens,.hero-immersive .hero-slide img,.hero-orbit{transform:none!important;will-change:auto}.hero-immersive .hero-slide{transition:none!important}.button-depth{transition:none!important}}
@media(max-width:360px){.hero-booking-actions{max-width:calc(100% - 70px)}}
@media(min-width:601px){.hero-immersive .hero-bottom{right:max(7%,190px)}}
