:root{--forest:#173128;--forest2:#21473b;--gold:#e1b866;--cream:#f7f3e8;--serif:'Cormorant Garamond',serif;--sans:'Montserrat',sans-serif}
.room-detail-hero{height:90vh;min-height:680px;position:relative;display:flex;align-items:flex-end;color:#fff;background-position:center;background-size:cover}.room-detail-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,25,19,.28),rgba(7,25,19,.15) 38%,rgba(7,25,19,.82))}.room-detail-hero .hero-inner{position:relative;z-index:2;padding:0 0 110px}.room-detail-hero .crumb{font-size:9px;letter-spacing:3px;color:#f0d39d;text-transform:uppercase}.room-detail-hero h1{font:500 clamp(78px,10vw,160px)/.72 var(--serif);margin:18px 0 24px;max-width:1100px}.room-detail-hero h1 em{display:block;color:var(--gold);font-weight:500}.room-detail-hero p{max-width:720px;font-size:13px;line-height:1.8;color:rgba(255,255,255,.8)}.hero-cta{margin-top:30px;display:flex;gap:16px;flex-wrap:wrap}.outline-light{display:inline-flex;padding:13px 22px;border:1px solid rgba(255,255,255,.5);font-size:10px;letter-spacing:1.6px;text-transform:uppercase}.detail-wave{position:absolute;z-index:3;bottom:-1px;left:-4%;width:108%;height:95px;background:var(--cream);border-radius:50% 50% 0 0/90% 90% 0 0;transform:translateY(52%)}
.room-overview{padding:120px 0 95px}.overview-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:9vw;align-items:start}.overview-grid h2{font:500 clamp(58px,6vw,94px)/.86 var(--serif);color:var(--forest);margin:12px 0}.overview-grid h2 em{color:#b88d49;font-weight:500}.overview-copy>p{font-size:14px;line-height:1.9;color:#69736e;max-width:760px}.spec-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:38px;border-top:1px solid #ddd3c3;border-bottom:1px solid #ddd3c3}.spec{padding:24px 18px;border-right:1px solid #ddd3c3}.spec:last-child{border-right:0}.spec strong{display:block;font:500 26px var(--serif);color:var(--forest)}.spec span{font-size:9px;letter-spacing:1.5px;text-transform:uppercase;color:#8b948f}
.room-gallery{padding:0 0 110px}.gallery-grid-premium{display:grid;grid-template-columns:1.45fr .7fr .7fr;grid-template-rows:330px 330px;gap:12px}.gallery-grid-premium button{position:relative;border:0;padding:0;cursor:pointer;overflow:hidden;background:#ddd}.gallery-grid-premium button:first-child{grid-row:1/3}.gallery-grid-premium img{width:100%;height:100%;object-fit:cover;transition:.55s}.gallery-grid-premium button:hover img{transform:scale(1.04)}.gallery-grid-premium span{position:absolute;left:18px;bottom:16px;color:#fff;font:italic 19px var(--serif);text-shadow:0 2px 10px rgba(0,0,0,.35)}
.amenities-detail{background:var(--forest);color:#fff;padding:100px 0}.amenities-top{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;margin-bottom:55px}.amenities-top h2{font:500 clamp(55px,5.8vw,90px)/.86 var(--serif);margin:12px 0}.amenities-top h2 em{display:block;color:var(--gold);font-weight:500}.amenities-top p{color:rgba(255,255,255,.6);font-size:13px;line-height:1.9;max-width:700px}.amenity-list{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(225,184,102,.25);border-left:1px solid rgba(225,184,102,.25)}.amenity-item{min-height:175px;padding:28px;border-right:1px solid rgba(225,184,102,.25);border-bottom:1px solid rgba(225,184,102,.25)}.amenity-item b{display:block;font:500 22px var(--serif);margin:35px 0 7px}.amenity-item small{color:var(--gold);font-size:9px;letter-spacing:2px}.amenity-item p{font-size:10px;line-height:1.7;color:rgba(255,255,255,.55);margin:0}
.room-story{display:grid;grid-template-columns:1.1fr .9fr;min-height:690px}.story-image{background-position:center;background-size:cover}.story-copy{padding:clamp(55px,7vw,115px);background:#fff;display:flex;flex-direction:column;justify-content:center}.story-copy h2{font:500 clamp(58px,5.5vw,88px)/.85 var(--serif);color:var(--forest);margin:18px 0 28px}.story-copy h2 em{display:block;color:#b88d49;font-weight:500}.story-copy p{font-size:13px;line-height:1.9;color:#6c7671}.story-points{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:28px 0}.story-point{padding:16px;border:1px solid #e6dfd3;font-size:10px;color:#4d5b54}
.booking-panel{padding:100px 0;background:linear-gradient(120deg,#173128,#244a3e);color:#fff}.booking-panel-grid{display:grid;grid-template-columns:1fr .9fr;gap:9vw;align-items:center}.booking-panel h2{font:500 clamp(58px,6vw,95px)/.84 var(--serif);margin:14px 0}.booking-panel h2 em{display:block;color:var(--gold);font-weight:500}.booking-card{background:#fff;color:var(--forest);padding:38px}.booking-card h3{font:500 34px var(--serif);margin:0 0 8px}.booking-card p{font-size:11px;color:#748078;line-height:1.7}.booking-card .btn{width:100%;margin-top:18px}.booking-note{display:flex;justify-content:space-between;border-top:1px solid #eee5d7;margin-top:24px;padding-top:18px;font-size:9px;letter-spacing:1px;color:#7e8983}.other-rooms{padding:100px 0}.other-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:35px}.other-heading h2{font:500 clamp(45px,4.5vw,70px)/.9 var(--serif);color:var(--forest);margin:0}.other-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.other-card{height:420px;position:relative;overflow:hidden;background-position:center;background-size:cover}.other-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(8,29,22,.8))}.other-card-content{position:absolute;z-index:2;left:28px;right:28px;bottom:26px;color:#fff}.other-card h3{font:500 42px var(--serif);margin:0}.other-card a{font-size:9px;letter-spacing:2px;text-transform:uppercase;color:var(--gold)}
.detail-lightbox{position:fixed;inset:0;z-index:1000;background:rgba(4,20,15,.96);display:none;align-items:center;justify-content:center;padding:35px}.detail-lightbox.open{display:flex}.detail-lightbox img{max-width:94vw;max-height:90vh;object-fit:contain}.detail-lightbox button{position:absolute;right:25px;top:15px;background:none;border:0;color:#fff;font-size:45px;cursor:pointer}
@media(max-width:950px){.overview-grid,.amenities-top,.room-story,.booking-panel-grid{grid-template-columns:1fr}.gallery-grid-premium{grid-template-columns:1fr 1fr;grid-template-rows:400px 250px 250px}.gallery-grid-premium button:first-child{grid-column:1/3;grid-row:auto}.amenity-list{grid-template-columns:1fr 1fr}.story-image{min-height:500px}.spec-grid{grid-template-columns:1fr 1fr}.other-grid{grid-template-columns:1fr}.room-detail-hero h1{font-size:94px}}
@media(max-width:600px){.room-detail-hero{min-height:620px;height:82vh}.room-detail-hero .hero-inner{padding-bottom:85px}.room-detail-hero h1{font-size:68px}.overview-grid h2,.amenities-top h2,.story-copy h2,.booking-panel h2{font-size:55px}.spec-grid,.amenity-list,.story-points{grid-template-columns:1fr}.spec{border-right:0;border-bottom:1px solid #ddd3c3}.gallery-grid-premium{display:grid;grid-template-columns:1fr;grid-template-rows:360px repeat(4,220px)}.gallery-grid-premium button:first-child{grid-column:auto}.other-card{height:340px}.other-heading{display:block}.other-heading a{display:inline-block;margin-top:15px}}
