/* Maluti Backpackers refresh: existing selectors and media stay compatible. */
:root{--font-display:'Cinzel',Georgia,serif;--font-head:'Cinzel',Georgia,serif;--font-body:'Figtree',Arial,sans-serif;--text-muted:#bfa98d;--surface:#29150d;--button-gold:#c9a84c;--line:rgba(201,168,76,.22);--radius:18px;--container:1240px}
[data-theme="light"]{--dark:#fbf7ef;--dark-2:#fffdf8;--mahogany:#f0e7d7;--surface:#f3edde;--text-muted:#725c49;--line:rgba(92,45,14,.14);--glass-bg:rgba(255,253,248,.95);--glass-border:rgba(92,45,14,.14)}
html{scroll-padding-top:112px}body{font-size:16px;line-height:1.75}body.has-dialog{overflow:hidden}
h1,h2,h3,h4{line-height:1.25;text-wrap:balance}p{overflow-wrap:anywhere}
a,button,input,select,textarea{touch-action:manipulation}button,input,select,textarea{font:inherit}
button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}[hidden]{display:none!important}
:focus-visible{outline:3px solid var(--gold);outline-offset:5px}
.skip-link{position:fixed;top:8px;left:12px;z-index:4000;padding:12px 20px;background:var(--dark-2);color:var(--text-cream);transform:translateY(-160%);border-radius:8px}.skip-link:focus{transform:none}
.container{padding-inline:32px}.section-pad-std{padding:88px 0}.section-pad-lg{padding:104px 0}
.section-tag{font-family:var(--font-body);font-size:11px;letter-spacing:2.7px;font-weight:700}
.section-title{font-size:clamp(27px,3.6vw,43px);font-weight:500;line-height:1.25;margin-bottom:20px;letter-spacing:-.025em}
.section-intro{max-width:760px;margin:0 auto 40px}.section-intro p{font-size:17px;max-width:580px;margin-inline:auto}
.btn{font-family:var(--font-body);font-size:14px;letter-spacing:.1px;min-height:46px;border-radius:7px;gap:12px;padding:12px 23px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;line-height:1.35;text-align:center}
.btn-gold{background:var(--button-gold);border-color:var(--button-gold);color:#2c180b;box-shadow:0 4px 12px rgba(0,0,0,.08)}.btn-gold:hover{background:#e1bd61;color:#261408;transform:translateY(-2px)}
.btn-outline{border:1px solid var(--line);background:transparent;color:var(--text-cream)}.btn-outline:hover{background:var(--surface);color:var(--text-cream);border-color:var(--gold)}
.btn-lg{font-size:15px;padding:16px 28px;min-height:54px}.btn-sm{font-size:13px;padding:11px 16px}
.navbar,.navbar.scrolled{background:var(--dark-2);border-bottom:1px solid var(--line);backdrop-filter:blur(18px);padding:16px 0;color:var(--text-cream)}.navbar.scrolled{padding:11px 0;box-shadow:0 6px 28px rgba(0,0,0,.07)}
.nav-container{max-width:var(--container);padding-inline:32px;gap:20px}.nav-logo{gap:12px;flex-shrink:0}.nav-logo img,.nav-logo-fallback{width:48px;height:48px;object-fit:contain}.nav-logo-text{font-size:18px;line-height:1.25;letter-spacing:1px}.nav-logo-text small{display:block;font:10px var(--font-body);letter-spacing:2.4px;text-transform:uppercase;margin-top:4px}.nav-links{gap:25px}.nav-links a{font-family:var(--font-body);font-size:13px;font-weight:500;letter-spacing:0}.nav-links a[aria-current]{color:var(--gold)}.nav-actions{gap:12px}.theme-toggle,.qr-btn{width:40px;height:40px;border:1px solid var(--line);border-radius:50%;font-size:15px;display:flex;align-items:center;justify-content:center}.nav-book{min-height:44px;padding:12px 18px;font-size:13px}
dialog{color:var(--text-cream);border:1px solid var(--line);background:var(--dark-2);padding:0}dialog::backdrop{background:rgba(24,13,7,.72);backdrop-filter:blur(7px)}
.mobile-menu{position:fixed;inset:0 0 0 auto;right:0;margin:0;width:min(360px,92vw);max-width:92vw;height:100dvh;max-height:100dvh;padding:30px 24px;transition:none;overflow-y:auto;border:0;border-left:1px solid var(--line);display:none}.mobile-menu[open]{display:flex}.mobile-menu-head{font:500 20px var(--font-head);margin-bottom:38px}.mobile-close{min-width:44px;min-height:44px}.mobile-links{gap:4px}.mobile-links a{font:500 17px var(--font-body);padding:16px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.mobile-links .btn{margin-top:26px;justify-content:center;padding:16px}.mobile-menu-note{font-size:13px;color:var(--text-muted);margin-top:auto;padding-top:40px}
.qr-modal{position:fixed;inset:0;margin:auto;width:min(390px,calc(100vw - 36px));height:fit-content;max-height:90dvh;display:none;border-radius:20px;overflow:auto}.qr-modal[open]{display:block}.qr-modal-inner{border:0;padding:42px 32px;max-width:none;background:none}.qr-modal-inner h2{font-family:var(--font-head);font-size:26px}.qr-modal-inner p{margin:12px 0 24px}.qr-close{width:44px;height:44px}.qr-modal img{width:220px;height:220px;background:#fff;border:10px solid #fff}
.hero{min-height:740px;height:min(900px,95svh);text-align:left;padding:160px 0 110px;color:#fff5df;--text-cream:#fff5df;--text-muted:#e0d0b9;--gold:#e7c46a;--gold-light:#efda9f;--line:rgba(239,218,159,.45)}
.hero-bg{background-image:radial-gradient(ellipse at 85% 30%,#62442c,#2c0f0f 70%)}.hero-bg.has-image{background-position:55% 50%}
.hero-bg-tint,[data-theme="light"] .hero-bg-tint{background:linear-gradient(90deg,rgba(29,14,7,.86) 0%,rgba(29,14,7,.63) 45%,rgba(29,14,7,.23) 100%),linear-gradient(0deg,rgba(29,14,7,.5),transparent 55%)}
.hero-content{width:100%;max-width:var(--container);margin:0 auto;padding:0 32px}.hero-eyebrow{font:600 11px var(--font-body);letter-spacing:3.5px;text-transform:uppercase;color:#efda9f;margin-bottom:26px}.hero-title{font-size:clamp(38px,5.7vw,78px);font-weight:500;line-height:1.16;letter-spacing:-2px;max-width:760px;margin-bottom:22px}.hero-title .gold{display:block}.hero-tagline{font:500 clamp(18px,2vw,23px) var(--font-body);margin-bottom:12px;max-width:580px}.hero-subtitle{font-size:16px;max-width:510px;color:#e0d0b9;margin-bottom:28px}.hero-actions{justify-content:flex-start;gap:12px}.hero .btn-outline:hover{background:rgba(255,255,255,.12);color:#fff5df}.hero-badge{font:500 11px var(--font-body);padding:9px 14px;letter-spacing:.4px;background:rgba(255,255,255,.06);border-color:rgba(239,218,159,.35);margin-bottom:24px;backdrop-filter:none}.hero-rating{justify-content:flex-start;font-size:12px;margin:22px 0 0;gap:12px}.scroll-indicator{bottom:30px;left:auto;right:42px}.hero-location{position:absolute;bottom:30px;left:max(32px,calc((100vw - 1176px)/2));font-size:12px;letter-spacing:.8px;color:#e0d0b9;z-index:3}
.stay-highlights{border-bottom:1px solid var(--line);background:var(--dark-2)}.stay-highlights .container{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding-block:25px}.stay-highlight{display:flex;gap:13px;align-items:center;font-size:13px;line-height:1.5}.stay-highlight i{color:var(--gold);font-size:20px}.stay-highlight strong{display:block;font-weight:600}.stay-highlight span{color:var(--text-muted);font-size:11px}
.about-grid{gap:70px;grid-template-columns:1.1fr .9fr}.about-text p{font-size:15px}.about-image-frame{border-radius:160px 160px 14px 14px;border:0;aspect-ratio:4/5}.corner{display:none}.award-overlay{background:#2c180b;color:#efda9f;border:1px solid rgba(201,168,76,.3);font:500 11px var(--font-body);border-radius:6px;bottom:22px;left:22px;right:22px;justify-content:center}.stat-grid{gap:12px}.stat-box{background:none;border:0;border-top:1px solid var(--line);border-radius:0;padding:20px 0 0}.stat-num{font-size:27px;font-weight:500}.stat-label{font-size:10px}
.booking-options,.nearby,.gallery-page{background:var(--surface)}
.room-cards-grid,.rooms-grid{gap:25px}.room-premium-card,.room-listing-card{border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 5px 18px rgba(38,20,8,.04)}.room-premium-card:hover,.room-listing-card:hover{transform:translateY(-4px);box-shadow:0 15px 35px rgba(38,20,8,.12)}
.rpc-media{aspect-ratio:4/3;background:var(--surface)}.rpc-slide img{filter:none;animation:none!important}.rpc-overlay{background:linear-gradient(transparent 50%,rgba(23,13,7,.28));opacity:1}.rpc-overlay span{display:none}.rpc-dots{z-index:4;bottom:15px;gap:4px;background:rgba(29,14,7,.55);padding:2px 7px;border-radius:20px}.rpc-dot{width:24px;height:26px;background:transparent;border:0;border-radius:0;position:relative}.rpc-dot::after{content:'';display:block;width:5px;height:5px;border-radius:10px;background:#eee3d0;margin:auto}.rpc-dot.active{width:24px;background:none}.rpc-dot.active::after{width:14px;background:#e7c46a}.rpc-count{font-size:11px;top:15px;right:15px;background:rgba(29,14,7,.72)}.rpc-body,.room-listing-body{padding:25px 25px 0}.rpc-body h3,.room-listing-body h3{font-size:21px;font-weight:500}.rpc-price{font-family:var(--font-body);font-size:23px}.rpc-price span{font-size:12px}.rpc-meta{font-size:12px;margin-bottom:18px}.rpc-foot{padding:22px 25px 25px;gap:10px}.room-listing-meta{font-size:12px;gap:14px;flex-wrap:wrap}.room-listing-price{font:600 18px var(--font-body)}.room-listing-desc{font-size:14px}.amenity-tag{font-size:10px;padding:4px 10px}
.amenities-grid{gap:15px}.amenity-item{background:transparent;border:1px solid var(--line);border-radius:12px;padding:25px 18px}.amenity-icon{font-size:24px;margin-bottom:15px}.amenity-item h4{font-family:var(--font-body);font-size:14px}.amenity-item p{font-size:12px;line-height:1.6}.nearby-grid{gap:12px}.nearby-card{background:var(--dark-2);border-color:var(--line);padding:18px;border-radius:10px}.nearby-info h4{font:600 12px var(--font-body)}.nearby-cat,.nearby-dist{font-size:10px}.nearby-icon{font-size:20px}
.services-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.service-card{border:1px solid var(--line);border-radius:16px;min-height:300px}.service-card-inner{padding:36px}.service-card h3{font-size:22px;font-weight:500;margin-bottom:16px}.service-card p{font-size:14px}.service-card.has-bg{color:#fff5df;--text-muted:#e3d3bb;--gold:#e7c46a}.service-card.has-bg .service-card-inner{background:linear-gradient(0deg,rgba(29,14,7,.9),rgba(29,14,7,.38))}
.gallery-preview .section-intro{margin-bottom:32px}.gallery-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:32px}.gallery-heading .section-title{margin-bottom:0}.gallery-heading p{max-width:420px;color:var(--text-muted);font-size:14px}
.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:235px;gap:18px}.photo-card{position:relative;display:block;overflow:hidden;border-radius:14px;background:var(--dark);isolation:isolate}.photo-card:first-child{grid-column:span 2;grid-row:span 2}.photo-card img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease}.photo-card:hover img{transform:scale(1.035)}.photo-card::after{content:'';position:absolute;inset:20% 0 0;background:linear-gradient(transparent,rgba(22,12,6,.84));z-index:1}.photo-caption{position:absolute;left:23px;right:23px;bottom:22px;z-index:2;color:#fff5df}.photo-caption strong{display:block;font-family:var(--font-head);font-size:17px;font-weight:500}.photo-caption small{display:block;font-size:11px;color:#e1d3c1;margin-top:5px;max-width:550px}.photo-expand{position:absolute;top:17px;right:17px;z-index:2;width:34px;height:34px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.45);border-radius:50%;color:#fff;background:rgba(22,12,6,.3);font-size:12px}
.gallery-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px;color:var(--text-muted);font-size:13px}.gallery-toolbar strong{color:var(--text-cream);font-weight:600}.gallery-toolbar i{color:var(--gold);margin-right:8px}.gallery-preview .gallery-more{margin-top:30px;text-align:center}
.awards-row{gap:24px}.award-box{border-color:var(--line);border-radius:14px;background:var(--dark-2);padding:32px}.award-box h3{font-size:22px}.award-box p,.external-booking p{font-size:14px}
.cta{background:#2c0f0f;--text-cream:#fff5df;--text-muted:#e0d0b9;--gold:#e7c46a;--line:rgba(239,218,159,.4);position:relative}.cta .btn-outline:hover{background:rgba(255,255,255,.08)}.cta-inner{max-width:800px}
.contact-grid{gap:60px}.contact-card{background:none;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:17px 0}.contact-card h4{font:600 12px var(--font-body);color:var(--text-cream)}.contact-card p{font-size:13px}.contact-map{border-radius:18px;border-color:var(--line);min-width:0}
.page-hero{padding:166px 32px 74px}.page-hero-bg{background-image:var(--page-image,radial-gradient(ellipse at top,var(--mahogany),var(--dark)))}.page-hero-tint,[data-theme="light"] .page-hero-tint{background:linear-gradient(180deg,rgba(26,8,0,.7),rgba(26,8,0,.8))}.page-hero{color:#fff5df;--text-cream:#fff5df;--text-muted:#e0d0b9;--gold:#e7c46a}.page-hero-title{font-size:clamp(30px,4.4vw,55px);font-weight:500;letter-spacing:-1px}.page-hero-content p{font-size:15px}.breadcrumb{font-family:var(--font-body);font-size:11px;flex-wrap:wrap;justify-content:center;gap:10px}.breadcrumb a{color:#e0d0b9}
.room-detail-layout{grid-template-columns:minmax(0,1.6fr) minmax(300px,.9fr);gap:60px}.room-gallery-grid{grid-template-columns:1.5fr 1fr;gap:14px;margin-bottom:55px}.rgg-main,.rgg-thumb{border:0;padding:0;position:relative;background:var(--surface);overflow:hidden;display:block;border-radius:13px;min-width:0}.rgg-main{aspect-ratio:4/3}.rgg-main img,.rgg-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.rgg-main:hover img,.rgg-thumb:hover img{transform:scale(1.025)}.rgg-thumbs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.rgg-thumb{aspect-ratio:auto}.rgg-zoom,.rgg-more{color:#fff5df;background:rgba(29,14,7,.68);border-radius:6px}.rgg-zoom{position:absolute;bottom:20px;right:20px;padding:10px 15px;font-size:12px;display:flex;align-items:center;gap:8px}.room-gallery-grid[data-image-count="1"]{grid-template-columns:1fr}.room-gallery-grid[data-image-count="1"] .rgg-thumbs{display:none}.room-gallery-grid[data-image-count="2"] .rgg-thumbs{grid-template-columns:1fr}.room-detail-desc{font-size:15px}.room-sub-head{font-size:20px;font-weight:500;margin-top:35px}.amenity-detail-item,.gtk-item{font-size:13px;border-color:var(--line);border-radius:10px}.gtk-item strong{font:600 13px var(--font-body)}.gtk-item span{font-size:11px}.booking-sidebar-card{background:var(--dark-2);border-color:var(--line);padding:32px;box-shadow:0 10px 35px rgba(38,20,8,.07)}.bsc-price{font-family:var(--font-body);font-size:30px}.bsc-price span{font-size:12px}.bsc-contact a,.bsc-note{font-size:12px}.price-table-wrap{border:1px solid var(--line);border-radius:16px;padding:30px;margin-top:54px;overflow-x:auto}.price-table-wrap h3{font-size:23px;font-weight:500;margin-bottom:22px}.price-table{font-size:14px;min-width:380px}.price-table th{font-family:var(--font-body);font-size:11px;text-transform:uppercase;letter-spacing:1px}.ready-block .section-title{font-size:30px}
.booking-container{max-width:1180px;grid-template-columns:minmax(0,1.55fr) minmax(280px,.8fr);gap:30px;align-items:start}.booking-form-wrap{padding:38px;border-radius:18px;border-color:var(--line);min-width:0}.form-head p{font-size:14px}.booking-guide{background:var(--surface);padding:32px;border:1px solid var(--line);border-radius:18px;position:sticky;top:110px}.booking-guide h3{font-size:24px;font-weight:500;margin-bottom:24px}.booking-steps{list-style:none;counter-reset:steps;display:grid;gap:23px}.booking-steps li{position:relative;padding-left:40px;font-size:13px;counter-increment:steps;color:var(--text-muted)}.booking-steps li::before{content:counter(steps);position:absolute;left:0;top:0;width:27px;height:27px;border:1px solid var(--line);border-radius:50%;color:var(--gold);text-align:center;line-height:25px}.booking-steps strong{display:block;color:var(--text-cream);font-size:14px;margin-bottom:5px}.stay-summary{padding:20px 0;margin-top:25px;border-block:1px solid var(--line);font-size:13px}.stay-summary span{display:block;text-transform:uppercase;letter-spacing:1.5px;font-size:10px;color:var(--text-muted);margin-bottom:6px}.booking-guide-note{margin-top:20px;font-size:12px;color:var(--text-muted)}.booking-contact-cards{grid-column:1/-1;gap:15px}.mini-card{border-color:var(--line);border-radius:12px;padding:25px 15px;min-width:0}.mini-card h4{font-family:var(--font-body);font-size:14px}.mini-card p{font-size:12px;overflow-wrap:anywhere}.form-group label{font:600 12px var(--font-body);margin-bottom:8px}.form-group input,.form-group select,.form-group textarea{background:var(--dark);border:1px solid var(--line);border-radius:7px;padding:12px 14px;font:14px var(--font-body);color:var(--text-cream);min-height:48px;width:100%;min-width:0;max-width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--gold);outline:2px solid var(--gold-dim);outline-offset:1px}.form-row{gap:16px}.form-feedback{font-size:13px;border-radius:8px}.form-feedback.info{background:var(--surface);color:var(--text-muted);border:1px solid var(--line)}.form-feedback.error{color:#f4b0a6;background:rgba(185,50,37,.12);border-color:rgba(185,50,37,.35)}[data-theme="light"] .form-feedback.error{color:#922920}.field-note{font-size:11px;color:var(--text-muted);margin-top:7px}.hp-field{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.standalone-page{background:radial-gradient(ellipse at top,var(--mahogany),var(--dark));min-height:100svh}.standalone-wrap{padding:40px 20px}.standalone-card,.success-container{background:var(--dark-2);border:1px solid var(--line);border-radius:20px;padding:42px;box-shadow:0 20px 70px rgba(38,20,8,.08)}.standalone-card h1,.success-container h1{font-size:28px;font-weight:500;font-family:var(--font-head)}.standalone-card p,.success-container p{font-size:14px}.standalone-logo{font:600 24px var(--font-head);border-color:var(--line)}.pay-summary{border-color:var(--line);padding:20px;background:var(--dark)}.pay-row{gap:18px;font-size:12px;border-color:var(--line)}.pay-row strong{text-align:right;overflow-wrap:anywhere}.pay-total strong{font-family:var(--font-body);font-size:21px}.pay-secure-note{font-size:11px!important}.success-section{padding-top:165px}
.site-footer{padding:0 32px;background:var(--dark-2);border-top:1px solid var(--line)}.footer-topline{max-width:1176px;margin:0 auto;padding:50px 0;display:flex;justify-content:space-between;align-items:center;gap:25px;border-bottom:1px solid var(--line)}.footer-topline h2{font-size:29px;font-family:var(--font-head);font-weight:500}.footer-topline .section-tag{margin-bottom:10px}.footer-grid{max-width:1176px;padding:55px 0;grid-template-columns:1.3fr .75fr 1fr 1.15fr;gap:40px}.footer-col{min-width:0}.footer-col h3{font:500 19px var(--font-head);margin:16px 0}.footer-col h4{font:600 12px var(--font-body);letter-spacing:1.5px;text-transform:uppercase;margin-bottom:22px;color:var(--gold)}.footer-col p,.footer-col li,.footer-col a{font-size:12px;color:var(--text-muted);overflow-wrap:anywhere}.footer-col li{margin-bottom:10px}.footer-social a{width:36px;height:36px;border-color:var(--line);color:var(--gold);font-size:14px}.footer-bottom{max-width:1176px;margin:0 auto;border-color:var(--line);padding:22px 0;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:10px;color:var(--text-muted)}.footer-bottom p{font-size:10px}.footer-logo-circle{width:50px;height:50px;font-size:20px;border-color:var(--gold)}
.whatsapp-float{width:48px;height:48px;bottom:22px;right:22px;font-size:25px;background:#276b47;border:1px solid rgba(255,255,255,.4);box-shadow:0 5px 20px rgba(0,0,0,.18)}.scroll-top{right:26px;bottom:83px;width:40px;height:40px;border-radius:50%;font-size:13px}
.photo-viewer{position:fixed;inset:0;margin:auto;width:min(1120px,calc(100vw - 48px));max-width:none;max-height:94dvh;height:auto;border-radius:16px;background:#20130d;color:#f5ecd7;border-color:rgba(201,168,76,.28);overflow:auto;padding:22px 26px;--text-cream:#f5ecd7;--text-muted:#c3ad91;--gold:#e7c46a}.photo-viewer::backdrop{background:rgba(15,8,4,.93)}.pv-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.pv-head .section-tag{font-size:9px;margin:0 0 6px}.pv-head h2{font:500 22px var(--font-head)}.pv-close,.pv-prev,.pv-next{border:1px solid rgba(201,168,76,.3);background:#2e1c12;color:#f5ecd7;border-radius:50%;min-width:44px;height:44px;display:flex;align-items:center;justify-content:center;font-size:16px}.pv-stage{position:relative;display:flex;align-items:center;justify-content:center;background:#140d09;min-height:220px;height:min(55dvh,620px);border-radius:9px;padding:10px 58px;overflow:hidden}.pv-image{width:100%;height:100%;object-fit:contain;max-width:100%}.pv-prev,.pv-next{position:absolute;top:50%;transform:translateY(-50%);z-index:2}.pv-prev{left:10px}.pv-next{right:10px}.pv-loading{display:none;color:#c3ad91;font-size:13px;position:absolute;max-width:70%;text-align:center}.is-loading .pv-loading{display:block}.is-loading .pv-image{opacity:.18}.pv-caption{display:flex;justify-content:space-between;align-items:start;gap:25px;padding:17px 0 12px}.pv-title{font-size:14px;font-weight:600}.pv-description{font-size:12px;color:#c3ad91}.pv-count{font-size:11px;color:#c3ad91;white-space:nowrap}.pv-thumbs{display:flex;gap:8px;overflow-x:auto;padding:5px 2px 12px}.pv-thumb{width:68px;height:50px;flex:0 0 auto;border:2px solid transparent;border-radius:5px;overflow:hidden;background:#140d09;padding:0}.pv-thumb img{width:100%;height:100%;object-fit:cover}.pv-thumb[aria-current="true"]{border-color:#e7c46a}.pv-foot{border-top:1px solid rgba(201,168,76,.2);padding-top:16px;display:flex;align-items:center;justify-content:space-between;gap:20px}.pv-price{font-size:12px;color:#c3ad91}
@media(min-width:1101px){.hamburger{display:none}}
@media(max-width:1100px){.nav-links{display:none}.hamburger{display:flex}.nav-book{display:inline-flex}.room-cards-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.room-detail-layout{gap:30px}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nearby-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){.container,.nav-container{padding-inline:24px}.section-pad-std{padding:65px 0}.section-pad-lg{padding:74px 0}.hero{min-height:690px;height:auto;padding:165px 0 95px}.hero-content{padding-inline:24px}.hero-bg-tint,[data-theme="light"] .hero-bg-tint{background:linear-gradient(90deg,rgba(29,14,7,.83),rgba(29,14,7,.45))}.hero-title{font-size:clamp(37px,7.8vw,60px)}.hero-location{left:24px;font-size:10px}.stay-highlights .container{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.about-grid,.contact-grid,.room-detail-layout{grid-template-columns:1fr;gap:35px}.about-image-wrap{max-width:470px;justify-self:center;width:100%}.about-image-frame{aspect-ratio:5/4;border-radius:120px 120px 14px 14px}.room-cards-grid,.rooms-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.amenities-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.services-grid{gap:18px}.service-card-inner{padding:26px}.service-card h3{font-size:19px}.photo-grid{grid-auto-rows:185px;gap:12px}.photo-caption{left:16px;right:16px;bottom:16px}.photo-caption strong{font-size:14px}.photo-caption small{display:none}.gallery-heading{align-items:start;flex-direction:column;gap:15px}.booking-container{grid-template-columns:1fr;max-width:800px}.booking-guide{position:static}.booking-contact-cards{grid-column:auto}.room-gallery-grid{grid-template-columns:1.5fr 1fr}.booking-sidebar-card{position:static}.footer-topline h2{font-size:25px}}
@media(max-width:560px){.container,.nav-container{padding-inline:20px}.navbar,.navbar.scrolled{padding:12px 0}.nav-container{gap:10px}.nav-logo{gap:8px}.nav-logo img,.nav-logo-fallback{width:38px;height:38px}.nav-logo-text{font-size:14px;letter-spacing:.3px}.nav-logo-text small{font-size:8px;letter-spacing:1.6px}.nav-actions{gap:7px}.nav-book{display:none}.qr-btn{display:none}.theme-toggle{width:36px;height:36px}.hamburger{width:36px;min-height:40px}.hero{min-height:680px;padding:135px 0 90px}.hero-content{padding-inline:20px}.hero-eyebrow{font-size:9px;letter-spacing:2.6px;margin-bottom:22px}.hero-badge{font-size:9px;padding:9px 10px;gap:6px;margin-bottom:22px}.hero-title{font-size:clamp(32px,9vw,47px);letter-spacing:-1px;overflow-wrap:normal}.hero-tagline{font-size:19px}.hero-subtitle{font-size:13px;margin-bottom:25px}.hero-actions{gap:10px}.hero-actions .btn{width:auto;padding:13px 19px;font-size:12px;min-height:48px}.hero-rating{font-size:10px;gap:10px;flex-wrap:wrap}.hero-location{left:20px;max-width:260px;font-size:9px}.scroll-indicator{right:24px;bottom:27px;width:23px;height:38px}.stay-highlight{gap:10px;font-size:11px}.stay-highlight i{font-size:17px}.stay-highlight span{font-size:9px}.stay-highlights .container{gap:18px;padding-block:22px}.section-title{font-size:27px}.section-intro{margin-bottom:28px}.section-intro p{font-size:13px}.stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.stat-num{font-size:23px}.stat-label{font-size:9px}.tgcsa-badge{font-size:10px;padding:8px 13px}.room-cards-grid,.rooms-grid{grid-template-columns:1fr;gap:23px}.rpc-body,.room-listing-body{padding:23px 23px 0}.rpc-foot{padding:21px 23px 23px}.amenities-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.amenity-item{padding:22px 14px}.amenity-item h4{font-size:12px}.amenity-item p{font-size:10px}.nearby-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.nearby-card{padding:13px;gap:9px;align-items:start;flex-wrap:wrap}.nearby-info{flex:1;min-width:0}.nearby-info h4{font-size:10px}.nearby-dist{margin-left:29px;font-size:9px}.services-grid{grid-template-columns:1fr}.service-card{min-height:260px}.service-card h3{font-size:21px}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:160px;gap:10px}.photo-card:first-child{grid-column:span 2;grid-row:span 2}.photo-caption strong{font-size:13px}.photo-expand{width:28px;height:28px;top:12px;right:12px;font-size:10px}.gallery-toolbar{font-size:10px;align-items:start}.gallery-toolbar span:last-child{max-width:145px;text-align:right}.awards-row{flex-direction:column;gap:14px}.award-box{width:100%;padding:26px}.external-links{gap:10px;flex-wrap:wrap}.external-links .btn{font-size:12px}.cta-actions .btn{width:auto}.contact-map{min-height:300px}.page-hero{padding:130px 20px 55px}.page-hero-title{font-size:31px}.page-hero-content p{font-size:12px}.room-gallery-grid{grid-template-columns:1fr;gap:10px;margin-bottom:35px}.rgg-thumbs{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.rgg-thumb{aspect-ratio:1}.room-gallery-grid[data-image-count="2"] .rgg-thumbs{grid-template-columns:repeat(4,minmax(0,1fr))}.rgg-zoom{font-size:10px;padding:8px 12px;right:15px;bottom:15px}.rgg-more{font-size:15px}.amenity-detail-grid,.good-to-know-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.booking-form-wrap{padding:25px 20px}.form-row{grid-template-columns:1fr;gap:0}.form-row-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.form-row-3 .form-group label{font-size:11px}.form-head .section-title{font-size:25px}.form-head p{font-size:12px}.booking-guide{padding:26px}.booking-contact-cards{grid-template-columns:1fr;gap:10px}.mini-card{padding:20px}.mini-card p{font-size:12px}.standalone-card,.success-container{padding:32px 22px}.standalone-card h1,.success-container h1{font-size:24px}.pay-summary{padding:16px}.pay-row{font-size:11px}.standalone-actions{flex-wrap:wrap;gap:10px}.success-section{padding-top:120px}.site-footer{padding:0 20px}.footer-topline{padding:35px 0;flex-direction:column;align-items:start;gap:22px}.footer-topline h2{font-size:25px}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 18px;padding:35px 0}.footer-brand{grid-column:1/-1}.footer-grid .footer-col:last-child{grid-column:1/-1}.footer-bottom{align-items:start;flex-direction:column;gap:6px;font-size:9px}.footer-bottom p{font-size:9px}.photo-viewer{width:calc(100vw - 20px);max-height:95dvh;padding:17px 14px;border-radius:12px}.pv-head{margin-bottom:14px;gap:10px}.pv-head h2{font-size:16px}.pv-head .section-tag{font-size:8px}.pv-stage{height:48dvh;min-height:200px;padding:0}.pv-prev,.pv-next{width:36px;min-width:36px;height:36px;font-size:12px;background:rgba(29,14,7,.75)}.pv-prev{left:6px}.pv-next{right:6px}.pv-caption{gap:12px;padding:13px 0 8px}.pv-title{font-size:12px}.pv-description{font-size:10px}.pv-thumb{width:56px;height:43px}.pv-foot{gap:10px;align-items:start}.pv-price{font-size:10px;max-width:45%;padding-top:6px}.pv-foot .btn{font-size:11px;min-height:40px;padding:10px 14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.photo-card:hover img,.room-premium-card:hover,.room-listing-card:hover,.btn:hover{transform:none}}

/* Keep the room collage proportionate for mixed portrait and landscape uploads. */
@media(min-width:561px){.room-gallery-grid{height:clamp(330px,40vw,530px)}.rgg-main{height:100%;aspect-ratio:auto;min-height:0}.rgg-thumbs{height:100%;min-height:0;grid-template-rows:repeat(2,minmax(0,1fr))}.rgg-thumb{min-height:0}.room-gallery-grid[data-image-count="1"] .rgg-main{aspect-ratio:auto}.room-gallery-grid[data-image-count="2"] .rgg-thumbs,.room-gallery-grid[data-image-count="3"] .rgg-thumbs{grid-template-rows:1fr}}
.rgg-zoom{width:auto;height:auto;max-width:calc(100% - 40px);white-space:nowrap}
@media(max-width:560px){.room-gallery-grid{height:auto}.rgg-main{height:auto;aspect-ratio:4/3}.rgg-thumbs{height:auto;grid-template-rows:auto}.rgg-thumb{height:auto;min-height:0}}

.photo-viewer{height:fit-content}.pv-thumbs::-webkit-scrollbar{height:5px}.pv-thumbs::-webkit-scrollbar-track,.photo-viewer::-webkit-scrollbar-track{background:#20130d}.pv-thumbs::-webkit-scrollbar-thumb{background:#70552e}
