
:root{
  --v15-ink:#171b16;
  --v15-green:#14251b;
  --v15-green-2:#1f3a2b;
  --v15-gold:#b98551;
  --v15-ivory:#fbf4e8;
  --v15-card:#fffaf0;
  --v15-muted:#6d675d;
  --v15-line:rgba(42,35,24,.12);
  --v15-shadow:0 28px 70px rgba(19,28,20,.18);
}
html{background:var(--v15-ivory);}
body{background:linear-gradient(180deg,#fbf4e8 0%,#f4ead9 56%,#efe3cf 100%) !important;color:var(--v15-ink) !important;}
.site-header{position:sticky !important;top:0 !important;z-index:999 !important;margin:0 !important;padding:10px 14px !important;width:100% !important;border-radius:0 !important;background:linear-gradient(135deg,rgba(17,32,23,.96),rgba(32,48,34,.92)) !important;border:0 !important;border-bottom:1px solid rgba(255,255,255,.10) !important;box-shadow:0 14px 38px rgba(0,0,0,.20) !important;backdrop-filter:blur(16px) saturate(130%) !important;min-height:66px !important;}
.brand{gap:10px !important;min-width:0 !important;}
.brand-logo-wrap{width:46px !important;height:46px !important;border-radius:16px !important;background:#fff !important;box-shadow:0 10px 25px rgba(0,0,0,.18) !important;padding:5px !important;flex:0 0 auto !important;}
.brand-logo{width:100% !important;height:100% !important;object-fit:contain !important;border-radius:11px !important;}
.brand-text{color:#fff !important;font-size:16px !important;letter-spacing:.01em !important;line-height:1 !important;}
.brand-sub{color:rgba(255,244,226,.72) !important;font-size:11px !important;letter-spacing:.10em !important;text-transform:uppercase !important;}
.header-actions{gap:8px !important;}
.header-phone{display:none !important;}
.nav-cta,.button.primary,.button.secondary,.room-content a:first-of-type,.room-side-card .button.primary{background:linear-gradient(135deg,#b77948,#d0a06a) !important;color:#fff !important;border:0 !important;border-radius:999px !important;box-shadow:0 18px 32px rgba(151,90,49,.28) !important;text-decoration:none !important;font-weight:850 !important;letter-spacing:-.01em !important;}
.nav-cta{padding:13px 20px !important;font-size:15px !important;min-height:46px !important;background:#fff5e6 !important;color:#17241a !important;box-shadow:none !important;}
.button.ghost,.room-page-link,.room-content a.room-page-link,.room-cta-row .button.ghost{background:transparent !important;color:var(--v15-green) !important;border:1px solid rgba(20,37,27,.22) !important;border-radius:999px !important;text-decoration:none !important;box-shadow:none !important;font-weight:850 !important;}
.hero{min-height:86svh !important;}
.hero-content{padding-top:72px !important;}
.hero h1{font-size:clamp(50px,13vw,94px) !important;line-height:.87 !important;letter-spacing:-.055em !important;max-width:900px !important;}
.lead{font-size:clamp(18px,4.8vw,24px) !important;line-height:1.42 !important;color:rgba(255,246,232,.92) !important;}
.eyebrow{letter-spacing:.22em !important;font-size:12px !important;color:var(--v15-gold) !important;font-weight:900 !important;}
.section-pad{padding:64px 20px !important;}
.section-head{gap:20px !important;align-items:end !important;}
.section-head h2,.story-copy h2,.restaurant-copy h2,.booking-card h2{font-size:clamp(38px,9vw,72px) !important;line-height:.92 !important;letter-spacing:-.05em !important;color:var(--v15-ink) !important;}
.intro{background:#fbf4e8 !important;}
.intro-copy p,.story-copy p,.room-content p,.restaurant-copy p,.section-head p{font-size:17px !important;line-height:1.58 !important;color:var(--v15-muted) !important;}
.room-grid{gap:28px !important;}
.room-card{background:rgba(255,250,240,.88) !important;border:1px solid var(--v15-line) !important;border-radius:34px !important;box-shadow:var(--v15-shadow) !important;overflow:hidden !important;}
.room-media{border-radius:28px 28px 0 0 !important;overflow:hidden !important;background:#1b261c !important;}
.room-main{height:310px !important;object-fit:cover !important;filter:saturate(1.04) contrast(1.02) !important;}
.room-thumbs{display:grid !important;grid-template-columns:1fr 1fr !important;gap:8px !important;padding:8px !important;background:rgba(20,37,27,.06) !important;}
.room-thumbs img{height:118px !important;object-fit:cover !important;border-radius:18px !important;}
.room-content{padding:26px !important;}
.room-label{display:none !important;}
.room-content h3{font-size:clamp(30px,8vw,48px) !important;line-height:1 !important;letter-spacing:-.04em !important;color:var(--v15-ink) !important;margin-bottom:12px !important;}
.room-facts{display:flex !important;flex-wrap:wrap !important;gap:10px !important;margin:22px 0 !important;padding:0 !important;}
.room-facts li{list-style:none !important;background:#f3e7d8 !important;border:1px solid rgba(185,133,81,.12) !important;color:#241e18 !important;border-radius:999px !important;padding:10px 14px !important;font-size:14px !important;font-weight:850 !important;line-height:1 !important;}
.room-content a{display:inline-flex !important;align-items:center !important;justify-content:center !important;min-height:52px !important;padding:14px 18px !important;margin:4px 8px 0 0 !important;font-size:16px !important;}
.room-content a:first-of-type::after,.room-side-card .button.primary::after,.nav-cta::after{content:" →";font-weight:900;}
.room-content a.room-page-link::after{content:"";}
.included-grid article,.why-grid article,.review-grid blockquote,.booking-card{border-radius:30px !important;background:rgba(255,250,240,.92) !important;border:1px solid var(--v15-line) !important;box-shadow:0 18px 48px rgba(19,28,20,.10) !important;}
.booking{background:linear-gradient(135deg,#13241a,#263a28) !important;}
.booking-card{background:rgba(255,250,240,.08) !important;border-color:rgba(255,255,255,.14) !important;color:#fff !important;box-shadow:0 30px 80px rgba(0,0,0,.28) !important;}
.booking-card h2,.booking-card .eyebrow{color:#fff !important;}
.booking-form{background:#fffaf0 !important;border-radius:28px !important;padding:18px !important;}
.form-field input,.form-field select{border-radius:18px !important;border:1px solid rgba(42,35,24,.16) !important;background:#fff !important;min-height:54px !important;font-size:16px !important;}
.category-hero{padding:96px 20px 50px !important;background:radial-gradient(circle at 20% 0%,rgba(196,140,83,.20),transparent 34%),linear-gradient(135deg,#111f16,#243823) !important;color:#fff !important;}
.category-hero h1{font-size:clamp(44px,11vw,88px) !important;line-height:.9 !important;letter-spacing:-.055em !important;color:#fff !important;}
.category-hero p{font-size:18px !important;line-height:1.48 !important;color:rgba(255,246,232,.86) !important;max-width:780px !important;}
.room-page-grid{gap:28px !important;}
.category-gallery{gap:10px !important;}
.category-gallery img{border-radius:24px !important;box-shadow:0 18px 42px rgba(19,28,20,.14) !important;}
.category-gallery img:first-child{height:430px !important;}
.room-side-card{border-radius:34px !important;background:rgba(255,250,240,.94) !important;border:1px solid var(--v15-line) !important;box-shadow:var(--v15-shadow) !important;}
.room-side-card h2{font-size:30px !important;line-height:1 !important;color:var(--v15-green) !important;}
.clean-list li{font-size:17px !important;line-height:1.38 !important;margin-bottom:12px !important;color:#29241e !important;}
.clean-list li::marker{color:var(--v15-gold) !important;}
.direct-link-box{display:none !important;}
.room-cta-row{display:flex !important;gap:12px !important;flex-wrap:wrap !important;margin-top:24px !important;}
.room-cta-row .button{min-height:54px !important;padding:15px 20px !important;}
@media (max-width:760px){
  .site-header{min-height:62px !important;padding:8px 10px !important;}
  .brand-text{display:none !important;}
  .brand-sub{display:none !important;}
  .brand-logo-wrap{width:44px !important;height:44px !important;border-radius:15px !important;}
  .nav-cta{font-size:14px !important;padding:12px 17px !important;}
  .hero-card{display:none !important;}
  .hero-actions{display:grid !important;grid-template-columns:1fr !important;gap:10px !important;}
  .button,.room-content a{width:100% !important;margin-right:0 !important;}
  .room-content{padding:24px 22px 26px !important;}
  .room-main{height:285px !important;}
  .room-thumbs img{height:104px !important;}
  .section-pad{padding-left:20px !important;padding-right:20px !important;}
  .category-hero{padding-top:86px !important;}
  .category-gallery{grid-template-columns:1fr 1fr !important;}
  .category-gallery img:first-child{height:360px !important;}
  .room-side-card{padding:24px 22px !important;}
  footer{padding-bottom:28px !important;}
}
