:root{--wine:#7e201d;--wine2:#651715;--gold:#d5a74e;--ink:#1f1b18;--cream:#f8f3e9;--paper:#fffdf9;--muted:#756f68;--line:#e6ded0;--shadow:0 18px 50px rgba(46,31,20,.14)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Montserrat,Arial,sans-serif;color:var(--ink);background:var(--paper);font-size:15px;line-height:1.7}a{color:inherit;text-decoration:none}img{width:100%;display:block}.container{width:min(1180px,90%);margin:auto}.container-wide{width:min(1400px,94%);margin:auto}.narrow{max-width:920px}.center{text-align:center}.section-pad{padding:88px 0}.soft-bg{background:#f4f5f2}.eyebrow{font-size:11px;letter-spacing:.28em;text-transform:uppercase;font-weight:700;margin:0 0 14px}.eyebrow.gold{color:#b5852d}h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;margin-top:0}h2{font-size:48px;line-height:1.1;margin-bottom:20px;font-weight:600;letter-spacing:.03em}.lead{color:#67615b;max-width:900px;margin:0 auto 32px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 24px;font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;border:1px solid transparent;transition:.25s}.btn-gold{background:var(--gold);color:#261a0a}.btn-gold:hover{background:#e5ba67}.btn-outline{border-color:rgba(255,255,255,.7);color:#fff}.btn-outline:hover{background:#fff;color:#222}.btn-dark{background:#24201d;color:#fff}.btn-dark:hover{background:var(--wine)}
.site-header{position:fixed;top:0;left:0;right:0;z-index:50;transition:.3s;background:linear-gradient(180deg,rgba(0,0,0,.65),transparent)}.site-header.scrolled{background:rgba(24,20,17,.96);box-shadow:0 8px 30px rgba(0,0,0,.12)}.header-inner{height:82px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px;color:#fff}.brand-mark{width:42px;height:42px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--gold);font-family:'Cormorant Garamond';font-size:17px;font-weight:700}.brand-copy{display:flex;flex-direction:column;line-height:1}.brand-copy strong{font-family:'Cormorant Garamond';font-size:25px;letter-spacing:.02em}.brand-copy small{text-transform:uppercase;letter-spacing:.26em;font-size:8px;margin-top:6px;color:#d9c7a3}.header-actions{display:flex;align-items:center;gap:24px}.header-mini{font-size:11px;color:#f3dfb7;letter-spacing:.08em}.menu-toggle{width:42px;height:42px;border:0;background:transparent;display:flex;flex-direction:column;justify-content:center;gap:5px;cursor:pointer}.menu-toggle span{height:2px;background:var(--gold);width:29px;display:block}.drawer{position:fixed;right:20px;top:78px;width:250px;background:#201b17;color:#fff;padding:12px;display:flex;flex-direction:column;opacity:0;transform:translateY(-10px);pointer-events:none;transition:.2s;box-shadow:var(--shadow)}.drawer.open{opacity:1;transform:none;pointer-events:auto}.drawer a{padding:13px 16px;border-bottom:1px solid rgba(255,255,255,.08);font-size:12px;text-transform:uppercase;letter-spacing:.09em}.drawer a.active,.drawer a:hover{color:var(--gold)}.enquire-tab{position:fixed;right:0;top:42%;z-index:40;background:var(--wine);color:#fff;padding:15px 8px;writing-mode:vertical-rl;font-size:10px;font-weight:700;letter-spacing:.15em}
.hero{min-height:720px;position:relative;display:flex;align-items:center;background-size:cover;background-position:center}.hero-home{background-image:url('../images/hero.webp')}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(17,11,8,.74) 0%,rgba(20,13,9,.36) 52%,rgba(0,0,0,.12) 100%)}.hero-content{position:relative;z-index:2;color:#fff;padding-top:70px}.hero h1{font-size:68px;line-height:1.02;text-transform:uppercase;letter-spacing:.03em;font-weight:500;margin-bottom:30px;max-width:820px}.hero h1 span{color:#f0c56e}.hero-buttons{display:flex;gap:12px;flex-wrap:wrap}.hero-note{position:absolute;left:0;bottom:0;z-index:2;background:rgba(121,30,27,.88);color:#fff;width:min(430px,90%);padding:24px 34px}.hero-note strong{font-family:'Cormorant Garamond';font-size:22px}.hero-note ul{margin:10px 0 0;padding-left:20px;font-size:12px;line-height:1.8}
.booking-strip{background:var(--wine);color:#fff;position:relative;z-index:5}.booking-grid{display:grid;grid-template-columns:1fr 1fr 1fr 1fr 1.2fr}.booking-grid label{padding:14px 18px;border-right:1px solid rgba(255,255,255,.22)}.booking-grid label span{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:#dfbd93;margin-bottom:3px}.booking-grid input,.booking-grid select{width:100%;border:0;background:transparent;color:#fff;font:inherit;font-size:13px;outline:none}.booking-grid select option{color:#222}.booking-grid button{border:0;background:var(--gold);font-weight:700;letter-spacing:.1em;font-size:10px;cursor:pointer}.intro{background:#f7fbfb}.trinity{display:flex;justify-content:center;gap:90px;margin-top:44px;color:var(--wine);font-family:'Cormorant Garamond';font-size:22px;letter-spacing:.2em;text-transform:uppercase}.section-heading{margin-bottom:40px}.section-heading>p:last-child{color:var(--muted);max-width:700px}.center.section-heading>p:last-child{margin-left:auto;margin-right:auto}.amenity-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.amenity-grid article{padding:30px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff;min-height:180px}.amenity-grid b{font-family:'Cormorant Garamond';font-size:32px;color:#d2b277}.amenity-grid h3{font-size:27px;margin:4px 0}.amenity-grid p{color:var(--muted);margin:0}.room-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.room-card{background:#fff;box-shadow:0 10px 30px rgba(0,0,0,.08);overflow:hidden}.room-card img{height:260px;object-fit:cover;transition:.35s}.room-card:hover img{transform:scale(1.04)}.room-card-copy{padding:24px}.room-card-copy span{font-size:10px;color:var(--wine);font-weight:700;letter-spacing:.14em;text-transform:uppercase}.room-card h3{font-size:29px;margin:7px 0}.room-card p{font-size:13px;color:var(--muted);min-height:66px}.room-card a{font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--wine)}.offer{background:#faf7f1}.offer-box{display:grid;grid-template-columns:1fr 1fr;min-height:420px;box-shadow:var(--shadow)}.offer-image img{height:100%;object-fit:cover}.offer-copy{background:var(--wine);color:#fff;padding:55px}.offer-copy h2{color:#f6d99b}.offer-copy ul{padding-left:19px;margin:20px 0 30px}.location{position:relative;background:#c99f56;overflow:hidden}.location-bg{position:absolute;inset:0;background:linear-gradient(rgba(138,91,28,.75),rgba(138,91,28,.75)),url('../images/valley.webp') center/cover;filter:saturate(.8)}.location-content{position:relative;color:#fff;padding:40px 0}.location-content p{max-width:760px;margin:0 auto 28px}.quote{font-family:'Cormorant Garamond';font-size:27px;font-style:italic;color:#544c44;margin-top:26px}
.inner-hero{height:520px;background:url('../images/hero.webp') center/cover;position:relative;display:flex;align-items:flex-end}.inner-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(22,14,9,.78),rgba(22,14,9,.15))}.inner-hero-content{position:relative;color:#fff;padding-bottom:75px}.inner-hero h1{font-size:64px;line-height:1}.inner-hero p:last-child{max-width:600px}.room-detail{display:grid;grid-template-columns:1.08fr .92fr;align-items:stretch;margin:0 0 55px;box-shadow:var(--shadow);background:#fff}.room-detail.reverse{grid-template-columns:.92fr 1.08fr}.room-detail.reverse .room-photo{order:2}.room-detail.reverse .room-info{order:1}.room-photo{position:relative;min-height:430px}.room-photo img{height:100%;object-fit:cover}.room-count{position:absolute;left:18px;bottom:18px;background:var(--wine);color:#fff;padding:8px 12px;font-size:10px;text-transform:uppercase;letter-spacing:.1em}.room-info{padding:58px}.room-info h2{font-size:44px}.room-info p{color:var(--muted)}.room-features{display:flex;flex-wrap:wrap;gap:8px;margin:25px 0}.room-features span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;background:var(--cream);padding:8px 10px}.icon-list{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.icon-list span{background:#fff;border:1px solid var(--line);padding:24px;text-align:center;font-family:'Cormorant Garamond';font-size:22px}.cta-banner{background:#241d18;color:#fff;padding:52px 0}.cta-banner .container{display:flex;align-items:center;justify-content:space-between;gap:30px}.cta-banner h2{margin:0}.cta-banner .btn{margin-left:8px}
.site-footer{background:#171411;color:#d3ccc5;padding-top:65px}.footer-grid{display:grid;grid-template-columns:1.5fr .75fr 1fr;gap:60px}.footer-brand{margin-bottom:18px}.site-footer p{color:#958d86;max-width:480px}.site-footer h4{font-family:'Cormorant Garamond';font-size:24px;color:#fff;margin:0 0 14px}.site-footer> .container a:not(.brand){display:block;margin:8px 0;color:#c7bfb7;font-size:13px}.footer-bottom{border-top:1px solid rgba(255,255,255,.08);margin-top:45px;padding:18px;text-align:center;font-size:10px;color:#837d78}.floating-actions{position:fixed;right:18px;bottom:18px;z-index:45;display:flex;gap:8px}.floating-actions a{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--wine);color:#fff;font-weight:800;font-size:12px;box-shadow:0 8px 20px rgba(0,0,0,.25)}.floating-actions a:last-child{background:#1b9c56}
@media(max-width:980px){h2{font-size:40px}.hero{min-height:650px}.hero h1{font-size:52px}.booking-grid{grid-template-columns:repeat(2,1fr)}.booking-grid button{min-height:58px;grid-column:span 2}.amenity-grid{grid-template-columns:repeat(2,1fr)}.room-grid{grid-template-columns:repeat(2,1fr)}.offer-box{grid-template-columns:1fr}.offer-image img{height:340px}.room-detail,.room-detail.reverse{grid-template-columns:1fr}.room-detail.reverse .room-photo,.room-detail.reverse .room-info{order:initial}.icon-list{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:span 2}}
@media(max-width:650px){body{font-size:14px}.section-pad{padding:64px 0}.header-inner{height:70px}.header-mini{display:none}.brand-copy strong{font-size:21px}.brand-mark{width:37px;height:37px}.hero{min-height:620px;background-position:62% center}.hero-content{padding-top:110px}.hero h1{font-size:40px}.hero-note{padding:18px 22px}.booking-grid{grid-template-columns:1fr 1fr}.booking-grid label{padding:12px}.intro h2,h2{font-size:35px}.trinity{gap:18px;justify-content:space-between;font-size:15px;letter-spacing:.1em}.amenity-grid{grid-template-columns:1fr}.room-grid{grid-template-columns:1fr}.room-card img{height:240px}.offer-copy{padding:36px 28px}.inner-hero{height:430px}.inner-hero h1{font-size:44px}.room-photo{min-height:300px}.room-info{padding:34px 26px}.room-info h2{font-size:36px}.icon-list{grid-template-columns:1fr 1fr}.cta-banner .container{flex-direction:column;align-items:flex-start}.cta-banner .btn{margin:7px 6px 0 0}.footer-grid{grid-template-columns:1fr;gap:28px}.footer-grid>div:first-child{grid-column:auto}.enquire-tab{display:none}.floating-actions a{width:44px;height:44px}}

/* Real property photography */
.property-gallery{overflow:hidden}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:230px;gap:12px}.gallery-grid figure{margin:0;overflow:hidden;background:#eee}.gallery-grid .gallery-wide{grid-column:span 2}.gallery-grid img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.gallery-grid figure:hover img{transform:scale(1.035)}
@media(max-width:900px){.gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:220px}.gallery-grid .gallery-wide{grid-column:span 2}}
@media(max-width:650px){.gallery-grid{grid-template-columns:1fr;grid-auto-rows:220px}.gallery-grid .gallery-wide{grid-column:auto}.gallery-grid figure:first-child{grid-row:span 1}}

/* 2026 room type update */
.three-room-grid{grid-template-columns:repeat(3,1fr);max-width:1180px;margin:0 auto}.three-room-grid .room-card img{height:310px}.rooms-inner-hero{background-image:linear-gradient(0deg,rgba(22,14,9,.38),rgba(22,14,9,.08)),url('../images/rooms/premium-3.webp')}.room-gallery{display:flex;flex-direction:column;background:#f3efe8}.room-gallery .gallery-main{width:100%;height:370px;object-fit:cover;display:block}.room-thumbs{display:grid;grid-template-columns:repeat(5,1fr);gap:5px;padding:7px;background:#fff}.room-thumbs button{border:2px solid transparent;padding:0;background:none;cursor:pointer;min-width:0;opacity:.78}.room-thumbs button.active,.room-thumbs button:hover{border-color:var(--gold);opacity:1}.room-thumbs img{display:block;width:100%;height:62px;object-fit:cover}.room-specs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:22px 0}.room-specs span{border:1px solid var(--line);background:#faf7f1;padding:13px 14px}.room-specs b,.room-specs small{display:block}.room-specs b{font-size:13px;color:var(--wine)}.room-specs small{font-size:10px;color:var(--muted);margin-top:3px}.facility-groups{display:grid;grid-template-columns:1fr 1fr;gap:18px}.facility-group{background:#fff;border:1px solid var(--line);padding:28px;box-shadow:0 8px 22px rgba(0,0,0,.035)}.facility-group h3{font-size:28px;margin:0 0 18px;color:var(--wine)}.facility-list{display:grid;grid-template-columns:1fr 1fr;gap:12px 18px}.facility-list span{position:relative;padding-left:22px;color:#4f4943}.facility-list span:before{content:'✓';position:absolute;left:0;top:0;color:var(--gold);font-weight:700}.facility-list small{display:block;font-size:10px;color:var(--muted);margin-top:2px}.room-features span{line-height:1.35}
@media(max-width:980px){.three-room-grid{grid-template-columns:repeat(2,1fr)}.three-room-grid .room-card:last-child{grid-column:1/-1;max-width:560px;justify-self:center}.facility-groups{grid-template-columns:1fr}.room-gallery .gallery-main{height:400px}}
@media(max-width:650px){.three-room-grid{grid-template-columns:1fr}.three-room-grid .room-card:last-child{grid-column:auto;max-width:none}.three-room-grid .room-card img{height:250px}.room-gallery .gallery-main{height:285px}.room-thumbs img{height:48px}.room-specs{grid-template-columns:1fr 1fr}.facility-group{padding:22px 18px}.facility-list{grid-template-columns:1fr}.rooms-inner-hero{background-position:center}}


/* Amenity and social icon enhancements */
.amenity-icon{width:68px;height:68px;border:1.5px solid #d5a74e;border-radius:18px;display:inline-flex;align-items:center;justify-content:center;margin-bottom:18px;color:#9d741f;background:linear-gradient(145deg,#fffdf7,#f7ecd6);position:relative;box-shadow:0 8px 18px rgba(87,61,22,.08)}
.amenity-icon svg{width:38px;height:38px;fill:none;stroke:currentColor;stroke-width:2.25;stroke-linecap:round;stroke-linejoin:round}
.amenity-icon small{position:absolute;right:-8px;bottom:-7px;background:var(--wine);color:#fff;border:2px solid #fff;border-radius:999px;padding:2px 7px;font:700 8px/1.3 Montserrat,Arial,sans-serif;letter-spacing:.08em}
.amenity-grid article{transition:transform .25s ease,box-shadow .25s ease}
.amenity-grid article:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(53,42,24,.08);position:relative;z-index:1}
.amenity-grid article:hover .amenity-icon{background:var(--gold);color:#fff;border-color:var(--gold);box-shadow:0 10px 22px rgba(181,133,45,.24)}
.footer-socials{display:flex;gap:10px;margin-top:16px}
.site-footer .footer-socials a{width:42px;height:42px;border:1px solid rgba(255,255,255,.25);border-radius:50%;display:inline-flex!important;align-items:center;justify-content:center;color:#fff;margin:0!important;transition:.25s}
.site-footer .footer-socials a:hover{background:#c99f56;border-color:#c99f56;color:#1e1a16;transform:translateY(-2px)}
.footer-socials svg{width:20px;height:20px;fill:currentColor}
.footer-socials .google-icon svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:650px){.amenity-icon{width:60px;height:60px;border-radius:16px}.amenity-icon svg{width:33px;height:33px}}

/* Facility image showcase */
.facility-showcase{background:linear-gradient(180deg,#fffdf9 0%,#f7f1e7 100%)}
.facility-card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.facility-card{background:#fff;border:1px solid var(--line);box-shadow:0 18px 38px rgba(35,27,18,.08);overflow:hidden;transition:transform .28s ease,box-shadow .28s ease;height:100%}
.facility-card:hover{transform:translateY(-6px);box-shadow:0 22px 48px rgba(35,27,18,.14)}
.facility-card img{height:240px;object-fit:cover}
.facility-card-copy{padding:24px 22px 26px}
.facility-card-copy h3{font-size:30px;margin:0 0 10px;color:var(--wine);line-height:1.05}
.facility-card-copy p{margin:0;color:var(--muted)}
@media(max-width:1100px){.facility-card-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:850px){.facility-card-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.facility-card-grid{grid-template-columns:1fr;gap:18px}.facility-card img{height:220px}.facility-card-copy h3{font-size:26px}}

/* Compact premium facilities section - final sizing override */
.facility-showcase{padding:72px 0!important}
.facility-showcase .section-heading{margin-bottom:30px!important}
.facility-showcase .facility-card-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:16px!important;
  align-items:stretch!important;
}
.facility-showcase .facility-card{
  width:100%!important;
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
}
.facility-showcase .facility-card>img{
  width:100%!important;
  height:155px!important;
  min-height:155px!important;
  max-height:155px!important;
  object-fit:cover!important;
  object-position:center!important;
}
.facility-showcase .facility-card-copy{padding:18px 18px 20px!important}
.facility-showcase .facility-card-copy h3{font-size:25px!important;margin:0 0 7px!important}
.facility-showcase .facility-card-copy p{font-size:13px!important;line-height:1.6!important}
@media(max-width:1100px){
  .facility-showcase .facility-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .facility-showcase .facility-card>img{height:150px!important;min-height:150px!important;max-height:150px!important}
}
@media(max-width:820px){
  .facility-showcase .facility-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .facility-showcase .facility-card>img{height:165px!important;min-height:165px!important;max-height:165px!important}
}
@media(max-width:520px){
  .facility-showcase{padding:55px 0!important}
  .facility-showcase .facility-card-grid{grid-template-columns:1fr!important;gap:14px!important}
  .facility-showcase .facility-card>img{height:180px!important;min-height:180px!important;max-height:180px!important}
  .facility-showcase .facility-card-copy{padding:16px 16px 18px!important}
  .facility-showcase .facility-card-copy h3{font-size:24px!important}
}
