/* Casa Luna 2026 — Pass 12 Full-site polish */
:root{
  --cl-night:#111914;
  --cl-forest:#202c21;
  --cl-olive:#61704a;
  --cl-olive-soft:#87916f;
  --cl-gold:#caa363;
  --cl-gold-soft:#dfc184;
  --cl-stone:#e8dfcf;
  --cl-paper:#f7f1e6;
  --cl-cream:#fbf7ef;
  --cl-ink:#182018;
  --cl-mist:#d8dde0;
}
html,body{background:var(--cl-paper)!important;color:var(--cl-ink)!important;}
body{overflow-x:hidden!important;}
/* Header: no clipping, consistent across pages */
.lux-nav--pass12,
.lux-nav{
  height:104px!important;
  padding:24px 30px 12px!important;
  align-items:start!important;
  overflow:visible!important;
  z-index:999!important;
  background:linear-gradient(180deg,rgba(10,16,14,.42),rgba(10,16,14,0))!important;
}
.lux-brand{min-height:74px!important;overflow:visible!important;padding:0!important;margin:0!important;line-height:1!important;}
.lux-brand-name{display:block!important;font-size:clamp(31px,2.65vw,42px)!important;line-height:1!important;letter-spacing:.085em!important;margin:0 0 8px!important;white-space:nowrap!important;text-shadow:0 8px 24px rgba(0,0,0,.34)!important;}
.lux-brand-sub{display:block!important;margin-left:58px!important;margin-top:0!important;font-size:12px!important;line-height:1!important;letter-spacing:.24em!important;text-shadow:0 6px 18px rgba(0,0,0,.30)!important;}
.lux-brand-place{display:block!important;margin-left:15px!important;margin-top:10px!important;font-size:12px!important;line-height:1!important;letter-spacing:.24em!important;text-shadow:0 6px 18px rgba(0,0,0,.30)!important;}
.lux-links{padding-top:3px!important;}
.lux-links a{color:rgba(255,255,255,.94)!important;text-shadow:0 5px 18px rgba(0,0,0,.45)!important;}
.lux-links a.active{color:var(--cl-gold-soft)!important;}
.lux-book{border-color:rgba(223,193,132,.75)!important;background:rgba(17,25,20,.10)!important;}
.lux-nav.is-scrolled{height:84px!important;padding:17px 30px 10px!important;background:rgba(247,241,230,.96)!important;box-shadow:0 16px 50px rgba(18,24,18,.15)!important;}
.lux-nav.is-scrolled .lux-brand-name{font-size:30px!important;color:var(--cl-ink)!important;text-shadow:none!important;}
.lux-nav.is-scrolled .lux-brand-sub,.lux-nav.is-scrolled .lux-brand-place{color:rgba(24,32,24,.72)!important;text-shadow:none!important;}
.lux-nav.is-scrolled .lux-links a{color:var(--cl-ink)!important;text-shadow:none!important;}
.lux-nav.is-scrolled .lux-links a.active{color:var(--cl-gold)!important;}
/* Language toggle stays on screen */
.lang-switcher{position:relative!important;z-index:1001!important;margin-left:8px!important;align-self:start!important;}
.lang-btn{background:rgba(17,25,20,.18)!important;border:1px solid rgba(255,255,255,.28)!important;color:#fff!important;height:42px!important;min-width:112px!important;border-radius:2px!important;}
.lang-dropdown{right:0!important;left:auto!important;max-width:220px!important;min-width:210px!important;transform:none!important;z-index:1002!important;}
.lux-nav.is-scrolled .lang-btn{background:rgba(255,255,255,.58)!important;color:var(--cl-ink)!important;border-color:rgba(202,163,99,.38)!important;}
/* Hero/page hero readability & uniform palette */
.page-hero{min-height:70vh!important;background:var(--cl-night)!important;}
.ph-bg::after,.ph-overlay{background:linear-gradient(90deg,rgba(6,10,8,.70) 0%,rgba(6,10,8,.44) 42%,rgba(6,10,8,.58) 100%)!important;}
.ph-content{max-width:980px!important;}
.ph-content .section-label,.ph-content .eyebrow{color:var(--cl-cream)!important;text-shadow:0 4px 22px rgba(0,0,0,.72)!important;letter-spacing:.32em!important;font-weight:800!important;}
.ph-title{color:var(--cl-cream)!important;text-shadow:0 8px 40px rgba(0,0,0,.72)!important;}
.ph-title em{color:var(--cl-gold-soft)!important;text-shadow:0 8px 40px rgba(0,0,0,.72)!important;}
.ph-sub{color:rgba(255,255,255,.90)!important;text-shadow:0 4px 20px rgba(0,0,0,.64)!important;max-width:760px!important;}
/* Explore hero specifically: avoid green/black on tree */
body.explore-page .ph-content{margin-left:max(8vw,90px)!important;background:linear-gradient(90deg,rgba(9,14,12,.44),rgba(9,14,12,.12))!important;padding:34px 40px 38px!important;border-left:1px solid rgba(223,193,132,.38)!important;backdrop-filter:blur(1px)!important;}
body.explore-page .ph-title{font-size:clamp(58px,8.8vw,122px)!important;line-height:.86!important;letter-spacing:.045em!important;}
body.explore-page .ph-title em{font-style:italic!important;}
body.explore-page .section-label{color:var(--cl-cream)!important;}
/* Amenity callout */
.amenities-snapshot{background:linear-gradient(135deg,var(--cl-paper),#fffaf0)!important;border-top:1px solid rgba(202,163,99,.18)!important;border-bottom:1px solid rgba(202,163,99,.18)!important;padding:64px 0!important;}
.amenities-snapshot .lux-wrap{max-width:1220px;margin:0 auto;padding:0 32px;}
.amenities-kicker{font-family:var(--font-ui);font-size:11px;font-weight:800;letter-spacing:.24em;text-transform:uppercase;color:var(--cl-gold);margin-bottom:14px;display:block;}
.amenities-snapshot h2{font-family:var(--font-display);font-size:clamp(38px,5vw,70px);font-weight:400;line-height:.95;letter-spacing:.04em;text-transform:uppercase;color:var(--cl-ink);margin:0 0 26px;}
.amenities-snapshot h2 em{font-style:italic;color:var(--cl-gold);}
.amenities-list{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(202,163,99,.24);border:1px solid rgba(202,163,99,.24);}
.amenities-list div{background:rgba(255,250,240,.92);padding:24px 22px;}
.amenities-list strong{display:block;font-family:var(--font-ui);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--cl-ink);margin-bottom:8px;}
.amenities-list span{font-family:var(--font-ui);font-size:14px;line-height:1.55;color:rgba(24,32,24,.72);}
/* Remove cheap emoji look on amenities */
.estate-body h3{font-family:var(--font-display)!important;font-size:clamp(26px,2.7vw,38px)!important;letter-spacing:.04em!important;text-transform:uppercase!important;color:var(--cl-ink)!important;}
.estate-body h3::before{content:"";display:block;width:44px;height:1px;background:var(--cl-gold);margin:0 0 14px;}
/* Interactive guide resize */
.guide-map-grid--experience{grid-template-columns:minmax(310px,.39fr) minmax(560px,.61fr)!important;gap:26px!important;}
.guide-detail{min-height:560px!important;max-height:720px!important;overflow:auto!important;}
.guide-detail__media{height:190px!important;}
.guide-detail__body{padding:24px 26px 28px!important;}
.guide-detail h3{font-size:clamp(28px,3.1vw,42px)!important;line-height:.96!important;margin-bottom:12px!important;}
.guide-detail p{font-size:13.5px!important;line-height:1.62!important;margin-bottom:15px!important;}
.guide-facts{grid-template-columns:1fr!important;margin:16px 0!important;}
.guide-facts div{padding:12px 14px!important;}
.guide-recs{padding-top:15px!important;}
.guide-recs li{font-size:12.8px!important;line-height:1.5!important;margin-bottom:7px!important;}
.guide-actions{margin-top:18px!important;}
.guide-action{min-height:38px!important;padding:10px 14px!important;font-size:10px!important;}
.vmap-card{max-width:300px!important;padding:18px!important;}
.vmap-card h4{font-size:24px!important;line-height:1!important;margin-bottom:8px!important;}
.vmap-card p{font-size:12.5px!important;line-height:1.48!important;}
.mapboxgl-popup-content{background:rgba(247,241,230,.97)!important;border:1px solid rgba(202,163,99,.35)!important;color:var(--cl-ink)!important;box-shadow:0 18px 44px rgba(0,0,0,.24)!important;border-radius:3px!important;max-width:280px!important;padding:15px!important;}
.mapboxgl-popup-content h3,.mapboxgl-popup-content h4{font-family:var(--font-display)!important;font-size:22px!important;line-height:1!important;text-transform:uppercase!important;letter-spacing:.04em!important;margin:0 0 8px!important;}
.mapboxgl-popup-content p{font-family:var(--font-ui)!important;font-size:12px!important;line-height:1.45!important;margin:0!important;}
/* Curated experiences: editorial, cohesive colors */
.act-heading,.exc-content h3,.exc-card h3{color:var(--cl-ink)!important;}
.act-card-new{background:rgba(255,250,240,.92)!important;border:1px solid rgba(202,163,99,.22)!important;border-top:2px solid rgba(202,163,99,.52)!important;box-shadow:0 20px 50px rgba(24,32,24,.06)!important;}
.act-card-new h4{font-family:var(--font-display)!important;color:var(--cl-ink)!important;text-transform:uppercase!important;letter-spacing:.045em!important;}
.act-card-new p,.act-card-new li{color:rgba(24,32,24,.72)!important;}
.exc-card{background:rgba(255,250,240,.94)!important;border:1px solid rgba(202,163,99,.22)!important;box-shadow:0 20px 50px rgba(24,32,24,.06)!important;}
.exc-icon{font-family:var(--font-ui)!important;color:var(--cl-gold)!important;border-color:rgba(202,163,99,.36)!important;background:transparent!important;}
.exc-vendor-btn{background:var(--cl-ink)!important;color:#fff!important;border-color:var(--cl-ink)!important;}
.exc-vendor-secondary{background:transparent!important;color:var(--cl-ink)!important;border-color:rgba(202,163,99,.48)!important;}
/* Gallery and other page hero labels */
body:not(.home-cinematic) .section-label{color:var(--cl-gold)!important;}
/* Mobile */
@media(max-width:1180px){
  .lux-nav{height:88px!important;padding:18px 20px 10px!important;grid-template-columns:minmax(210px,1fr) auto auto!important;}
  .lux-brand-name{font-size:30px!important;}
  .lux-brand-sub,.lux-brand-place{display:none!important;}
  .lux-links{background:rgba(17,25,20,.985)!important;}
  .lang-switcher{margin-right:54px!important;}
  .guide-map-grid--experience{grid-template-columns:1fr!important;}
  .guide-detail{max-height:none!important;}
}
@media(max-width:760px){
  .lux-nav{height:76px!important;padding:16px 16px 8px!important;}
  .lux-brand-name{font-size:26px!important;letter-spacing:.07em!important;}
  .lang-switcher{display:none!important;}
  body.explore-page .ph-content{margin:0 18px!important;padding:24px 22px!important;}
  .amenities-list{grid-template-columns:1fr!important;}
  .guide-detail__media{height:210px!important;}
  .vmap-card{left:12px!important;right:12px!important;max-width:none!important;}
}
