
/* Homepage organization and supplied hero video. */
.hero{position:relative;isolation:isolate}.hero-bg{z-index:-2;object-fit:cover;object-position:50% 48%;filter:saturate(.92) contrast(1.02) brightness(.86)}.hero::before{z-index:-1}.hero-content{position:relative;z-index:1}#hero-video-toggle{position:absolute;right:18px;bottom:18px;z-index:2;padding:8px 12px;border:1px solid #8f7340;background:rgba(251,251,249,.88);color:#1f2b2e;font:600 .72rem Montserrat,sans-serif;cursor:pointer}#hero-video-toggle:focus-visible,.header-actions a:focus-visible,.mobile-contact-bar a:focus-visible{outline:2px solid #8f7340;outline-offset:3px}
header{flex-wrap:nowrap;gap:16px}.header-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}.header-actions .cta{font-size:.7rem;letter-spacing:.2px;padding:10px 13px;text-align:center;white-space:normal}.header-whatsapp{display:inline-flex!important}.header-availability{color:#1f2b2e!important;border-color:#8f7340!important}.booking-process{max-width:1000px;margin:34px auto 0;padding:0}.booking-process h3{font-size:1.25rem;margin-bottom:12px;color:#1f2b2e}.booking-process>p{color:#5d676b;line-height:1.7}.booking-important{margin:18px 0 0;padding:14px 18px;border-color:#ddd6c6}.booking-important summary{color:#7d6334!important}.mobile-contact-bar{display:none}
@media(max-width:1100px){header{gap:10px}.header-actions{gap:5px}.header-actions .cta{padding:9px 9px;font-size:.64rem}nav ul{gap:10px}nav a{font-size:.66rem}}
@media(max-width:700px){header{display:grid;grid-template-columns:50px minmax(0,1fr);gap:8px 10px;padding-bottom:12px}header .brand{grid-column:1;grid-row:1}header .hr{grid-column:2;grid-row:1;justify-content:flex-end}header nav{display:none}.header-actions{grid-column:1/-1;grid-row:2;display:grid;grid-template-columns:1fr 1fr}.header-actions .cta{font-size:.72rem;padding:9px 8px}.header-whatsapp{display:inline-flex!important}.hero-bg{object-position:45% 45%}.mobile-contact-bar{position:fixed;display:grid;grid-template-columns:1fr 1fr;gap:8px;left:0;right:0;bottom:0;z-index:13;padding:10px max(12px,env(safe-area-inset-right)) calc(10px + env(safe-area-inset-bottom,0px)) max(12px,env(safe-area-inset-left));background:rgba(251,251,249,.97);border-top:1px solid #ddd6c6}.mobile-contact-bar .cta{display:flex;justify-content:center;align-items:center;min-height:44px;font-size:.75rem}.mobile-contact-bar .contact-secondary{color:#1f2b2e!important;border-color:#8f7340!important}#ckb{bottom:calc(72px + env(safe-area-inset-bottom,0px))}body.ck-open #mobile-contact-bar{transform:translateY(0)}footer{padding-bottom:90px}}

/* Recovery card crop: show both faces and remove the original embedded banner. */
#wellness .ph.photo img{height:100%;transform:none;object-fit:cover;object-position:center;max-height:none}

/* Match all three experience images at 3:2; the taller Arrival frame gives the image more presence. */
#services .experience-grid .ph.photo{aspect-ratio:3/2}
#arrival .ph.photo img{height:100%;transform:none;object-fit:cover;object-position:66% center;max-height:none}

/* Mountain and Table: the supplied Aspen dining photo fills the matching 3:2 card. */
#mountain-table .ph.photo{background:#101a28}
#mountain-table .ph.photo:before{display:none}
#mountain-table .ph.photo:after{display:none}
#mountain-table .ph.photo img{position:relative;z-index:1;width:100%;height:100%;transform:none;object-fit:cover;object-position:center;max-height:none}
