:root{--ch-font-heading:'Cormorant Garamond',Georgia,serif;--ch-font-body:'Inter',-apple-system,sans-serif;--ch-font-size-base:16px;--ch-font-size-small:14px;--ch-font-size-h1:2.5rem;--ch-font-size-h2:2rem;--ch-font-size-h3:1.5rem;--ch-line-height-body:1.7;--ch-line-height-heading:1.2;--ch-letter-spacing-heading:0.02em;--ch-letter-spacing-wide:0.08em;--ch-font-weight-normal:400;--ch-font-weight-medium:500;--ch-font-weight-semibold:600;--ch-font-weight-bold:700}
input[type="text"],input[type="email"],input[type="tel"],input[type="number"],input[type="password"],textarea,select{font-size:16px!important}@media(max-width:768px){.ch-nav{padding:0 16px!important;height:64px!important}.ch-nav .nav-links{display:none!important}.ch-hamburger{display:flex!important}.ch-hero,.hero-section{min-height:60vh!important}.ch-section-title{font-size:1.75rem!important}}@media(max-width:480px){.ch-hero,.hero-section{min-height:50vh!important}.ch-section-title{font-size:1.5rem!important}body{-webkit-text-size-adjust:100%}}
.ch-auto-link{color:#C5A55A;text-decoration:underline;text-underline-offset:2px}.ch-auto-link:hover{color:#d4b76a}
img:is([sizes=auto i],[sizes^="auto," i]){contain-intrinsic-size:3000px 1500px}
.ch-related-content{margin:48px 0;padding:32px 0;border-top:2px solid #e0e0e0}.ch-related-content h3{font-size:1.3rem;margin-bottom:16px;color:#2C2418}.ch-related-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.ch-related-list li{margin:0}.ch-related-list a{display:block;padding:12px 16px;background:#f9f7f4;border-radius:8px;color:#2C2418;text-decoration:none;transition:all 0.2s}.ch-related-list a:hover{background:#f0ece5;color:#C5A55A}
.ch-official-bar{background:#1A2332;color:#fff;padding:8px 16px;font-size:13px;text-align:center;position:relative;z-index:1001;letter-spacing:0.02em}.ch-official-bar a{color:#C5A55A;text-decoration:none}.ch-official-bar a:hover{text-decoration:underline}
.ch-contact-chars{min-height:1.5em;display:inline-block}.ch-char{will-change:transform,opacity}.site-footer .ch-char{display:inline-block}
.ch-hero, .hero-section { position: relative; min-height: 80vh; display: flex; align-items: center; justify-content: center; overflow: hidden; background: #0D1B2A; } .ch-hero video, .hero-video { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; } .ch-hero__content { position: relative; z-index: 2; text-align: center; color: #fff; max-width: 800px; padding: 0 24px; } .ch-hero h1, .ch-hero__title { font-family: "Cormorant Garamond", serif; font-size: clamp(32px, 5vw, 56px); font-weight: 700; color: #fff; margin: 0 0 16px; line-height: 1.15; }  img, video { max-width: 100%; height: auto; } .ch-apt-card img, .apartment-card img { aspect-ratio: 4/3; object-fit: cover; width: 100%; } .ch-blog-card img, .blog-card img { aspect-ratio: 16/9; object-fit: cover; width: 100%; }  .ch-hero img { aspect-ratio: 16/9; object-fit: cover; width: 100%; } iframe[src*="google.com/maps"] { aspect-ratio: 16/9; width: 100%; border: 0; } iframe[src*="siteminder"] { aspect-ratio: 4/3; width: 100%; min-height: 500px; border: 0; } .ch-faq-item, .ch-apt-faq-item { contain: content; } .ch-faq-answer, .ch-apt-faq-a { contain: content; } .ch-distance-cards { contain: layout style; min-height: 250px; } .ch-distance-card { contain: content; } .ch-cta-soft { contain: layout style; min-height: 280px; } .ch-intro, .ch-amenities, .ch-highlights { contain: layout style; } .ch-stats { contain: layout style; min-height: 60px; } .ch-landing-hero { contain: layout style; } .ch-landing-apt-card { contain: content; } .ch-landing-apt-card-img { aspect-ratio: 4/3; } .ch-landing-apt-card-img img { aspect-ratio: 4/3; object-fit: cover; } .ch-apt-sticky { position: fixed; bottom: 0; left: 0; right: 0; z-index: 999; transform: translateY(100%); transition: transform .3s ease; contain: layout style; } .ch-apt-sticky.is-visible { transform: translateY(0); } .ch-hero-video { opacity: 1; transition: opacity 0.5s ease; }
/* ===== FIX 1: Restore dark header on homepage =====
ch-luxury-header-v2 forces white bg, conflicting with cinema hero */
.header,
header.header,
#header.header {
background: rgba(10, 22, 40, 0.85) !important;
backdrop-filter: blur(20px) !important;
-webkit-backdrop-filter: blur(20px) !important;
border: none !important;
box-shadow: none !important;
animation: none !important;
}
.header::before,
.header::after,
header.header::before,
header.header::after {
display: none !important;
}
.header.scrolled,
#header.scrolled {
background: rgba(10, 22, 40, 0.97) !important;
box-shadow: 0 10px 50px rgba(0,0,0,0.3) !important;
}
.header .nav a,
#header .nav a {
color: rgba(255,255,255,0.85) !important;
}
.header .nav a:hover,
#header .nav a:hover {
color: #fff !important;
}
.header .logo,
#header .logo {
color: var(--ch-gold, #C5A55A) !important;
}
.header .nav .nav-cta,
#header .nav .nav-cta {
background: linear-gradient(135deg, var(--ch-gold, #C5A55A), #D4B76A) !important;
color: var(--ch-navy, #0D1B2A) !important;
}
.header .lang-switch a,
#header .lang-switch a {
color: rgba(255,255,255,0.7) !important;
}
.header .lang-switch a.active,
#header .lang-switch a.active {
background: var(--ch-gold, #C5A55A) !important;
color: var(--ch-navy, #0D1B2A) !important;
}/* ===== FIX 2: Ensure hero is full viewport ===== */
.hero {
height: 100vh !important;
min-height: 700px !important;
}/* ===== FIX 3: Official bar absolute on hero ===== */
.ch-official-bar {
position: absolute !important;
top: 0; left: 0; right: 0;
z-index: 1001;
background: rgba(10, 22, 40, 0.9) !important;
}/* ===== FIX 4: Force booking bar hidden (backup) ===== */
.lux, #lux, aside.lux {
display: none !important;
}

/* ===== FIX 5: Nav flex fallback (inline critical CSS not present on all templates) ===== */
.ch-nav__container{display:flex;align-items:center;justify-content:space-between}
.ch-nav__menu{display:flex;align-items:center;gap:32px}

/* ===== FIX 6: Hide mobile overlay & hamburger on desktop (mobile-nav.css only loads at ≤768px) ===== */
.ch-nav__mobile-overlay{display:none}
.ch-nav__hamburger{display:none}
@media(max-width:768px){.ch-nav__hamburger{display:flex}}

/* ===== FIX 7: Nav link colors (critical-css style block missing on some templates) ===== */
.ch-nav{position:fixed;top:0;left:0;right:0;z-index:1000;height:80px;padding:0 40px;background:rgba(13,27,42,0.85);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.ch-nav--scrolled{height:64px;background-color:rgba(13,27,42,0.97);box-shadow:0 4px 30px rgba(0,0,0,0.15)}
.ch-nav__logo{display:flex;align-items:center;gap:0.5rem;color:white;text-decoration:none}
.ch-nav__logo-text{font-family:"Cormorant Garamond",Georgia,serif;font-size:1.4rem;font-weight:600;letter-spacing:0.03em;color:white}
.ch-nav__link{color:rgba(255,255,255,0.85);font-family:"Inter",sans-serif;font-size:0.85rem;font-weight:500;letter-spacing:0.08em;text-transform:uppercase;text-decoration:none;transition:color 0.3s}
.ch-nav__link:hover,.ch-nav__link:focus{color:white}
.ch-nav__lang-switcher{display:flex;gap:6px;align-items:center;margin-left:15px;font-size:12px}
.ch-nav__lang-switcher a{color:rgba(248,241,233,.82);text-decoration:none;letter-spacing:1px;transition:color .3s}
.ch-nav__lang-switcher a.active,.ch-nav__lang-switcher a:hover{color:#E5C778}
.ch-nav__lang-separator{color:rgba(248,241,233,.58)}
.ch-nav__cta{display:inline-flex;align-items:center;padding:0.6rem 1.25rem;background:linear-gradient(135deg,#C5A55A,#d4b56a);color:#0D1B2A;font-family:Cinzel,serif;font-size:0.75rem;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;border-radius:4px;transition:all 0.3s ease;text-decoration:none}
.ch-nav__cta:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(197,165,90,0.4)}

/* ===== FIX 8: Hide hero poster once video plays (sibling combinator fails when poster precedes video in DOM) ===== */
.hero:has(.hero-video.playing) .hero-poster-img{opacity:0!important;transition:opacity 1s ease}
