/* Header-above-hero layout applies only to inner pages; preserve the homepage. */
body:not(.home) #page .site-header-frame { height:162px; padding:20px 24px 0; box-sizing:border-box; width:100%; max-width:1898px; margin:0 auto; }
body:not(.home) #page .header.template-classic-header:not(.scrolled) { position:relative !important; inset:auto !important; width:100% !important; max-width:none !important; margin:0 !important; padding:0 !important; transform:none !important; border:0 !important; background:transparent !important; pointer-events:auto !important; }
body:not(.home) #page .header.template-classic-header:not(.scrolled) .template-header-shell { border-radius:24px 24px 0 0 !important; border:1px solid rgba(var(--brand-gold-light-rgb),.18) !important; box-shadow:none !important; }
body:not(.home) #page .header.template-classic-header:not(.scrolled) .template-header-meta { display:flex !important; min-height:44px !important; height:44px !important; padding:6px 28px !important; box-sizing:border-box; }
body:not(.home) #page .header.template-classic-header:not(.scrolled) .template-meta-pill { min-height:30px !important; padding:5px 12px !important; font-size:11px !important; line-height:18px !important; }
body:not(.home) #page .header.template-classic-header:not(.scrolled) .template-header-main { display:grid !important; grid-template-columns:270px minmax(0,1fr) !important; height:96px !important; min-height:96px !important; padding:14px 28px !important; gap:20px !important; box-sizing:border-box; }
body:not(.home) #page .header.template-classic-header:not(.scrolled) .template-header-brand { width:240px !important; }
body:not(.home) #page .header.template-classic-header:not(.scrolled) .template-brand-mark { width:42px !important; height:42px !important; font-size:18px !important; }
body:not(.home) #page .header.template-classic-header:not(.scrolled) .template-brand-name { font-size:22px !important; }
body:not(.home) #page .header.template-classic-header:not(.scrolled) .template-brand-tagline { display:block !important; font-size:10px !important; }
body:not(.home) #page .header.template-classic-header:not(.scrolled) .template-header-nav { gap:14px !important; }
body:not(.home) #page .header.template-classic-header:not(.scrolled) .template-header-nav a { font-size:14px !important; padding:8px 10px !important; min-height:38px !important; }
body:not(.home) #page .header.template-classic-header:not(.scrolled) .template-header-nav .template-nav-cta { min-height:46px !important; padding-inline:24px !important; }
body:not(.home) #page .header.template-classic-header.scrolled { position:fixed !important; top:0 !important; left:0 !important; right:0 !important; width:100% !important; max-width:none !important; margin:0 !important; padding:0 !important; transform:none !important; background:transparent !important; z-index:99; }
body:not(.home) #page .header.template-classic-header.scrolled .template-header-shell { border-radius:0 !important; }
body:not(.home) #page .header.template-classic-header.scrolled .template-header-meta { display:none !important; }
body:not(.home) #page .header.template-classic-header.scrolled .template-header-main { min-height:72px !important; height:72px !important; padding:10px 28px !important; box-sizing:border-box; }
body:not(.home) #page :is(.home-hero-section.template-classic-hero,.hotel-hero-section,.about-header-image,.about-template-hero) { width:calc(100% - 48px) !important; max-width:1850px !important; margin:0 auto 20px !important; border-top-left-radius:0 !important; border-top-right-radius:0 !important; }
body:not(.home) #page .hotel-hero-section { min-height:280px !important; padding-top:46px !important; padding-bottom:46px !important; box-sizing:border-box; }
body:not(.home) #page .about-header-image { min-height:150px !important; height:150px !important; padding:0 !important; }
body:not(.home) #page .about-template-hero { padding-top:48px !important; padding-bottom:48px !important; }
body:not(.home) #page .about-header-image.package-cover-banner { height:auto !important; min-height:220px !important; padding:42px 0 !important; }
body:not(.home) #page .package-cover-copy { max-width:780px; }
@media(min-width:768px) and (max-width:1100px) {
    body:not(.home) #page .header.template-classic-header:not(.scrolled) .template-header-main { grid-template-columns:220px minmax(0,1fr) !important; padding-inline:18px !important; gap:12px !important; }
    body:not(.home) #page .header.template-classic-header:not(.scrolled) .template-header-brand { width:210px !important; }
    body:not(.home) #page .header.template-classic-header:not(.scrolled) .template-brand-name { font-size:19px !important; }
    body:not(.home) #page .header.template-classic-header:not(.scrolled) .template-header-nav { gap:4px !important; }
    body:not(.home) #page .header.template-classic-header:not(.scrolled) .template-header-nav a { font-size:11px !important; padding-inline:6px !important; }
    body:not(.home) #page .header.template-classic-header:not(.scrolled) .template-header-nav .template-nav-cta { padding-inline:14px !important; }
}
@media(max-width:767px) {
    body:not(.home) #page .site-header-frame { height:80px; padding:10px 12px 0; }
    body:not(.home) #page .header.template-classic-header:not(.scrolled) .template-header-shell { border-radius:18px 18px 0 0 !important; }
    body:not(.home) #page .header.template-classic-header:not(.scrolled) .template-header-meta { display:none !important; }
    body:not(.home) #page .header.template-classic-header:not(.scrolled) .template-header-main,
    body:not(.home) #page .header.template-classic-header.scrolled .template-header-main { display:flex !important; height:68px !important; min-height:68px !important; padding:10px 14px !important; justify-content:space-between !important; }
    body:not(.home) #page .header.template-classic-header:not(.scrolled) .template-header-brand { width:210px !important; }
    body:not(.home) #page .header.template-classic-header:not(.scrolled) .template-brand-name { font-size:18px !important; }
    body:not(.home) #page .header.template-classic-header:not(.scrolled) .template-brand-mark { width:36px !important; height:36px !important; font-size:15px !important; }
    body:not(.home) #page .header.template-classic-header:not(.scrolled) .template-brand-tagline { font-size:9px !important; }
    body:not(.home) #page .header.template-classic-header .template-header-nav { display:none !important; }
    body:not(.home) #page :is(.home-hero-section.template-classic-hero,.hotel-hero-section,.about-header-image,.about-template-hero) { width:calc(100% - 24px) !important; margin-top:0 !important; }
    body:not(.home) #page .hotel-hero-section { min-height:0 !important; padding-top:32px !important; padding-bottom:32px !important; }
    body:not(.home) #page .about-template-hero { padding-top:32px !important; padding-bottom:32px !important; }
    body:not(.home) #page .about-header-image { min-height:90px !important; height:90px !important; }
    body:not(.home) #page .about-header-image.package-cover-banner { height:auto !important; min-height:180px !important; padding:30px 0 !important; }
}
/* Full-bleed inner-page hero images start below the header and preserve their top edge. */
body:not(.home) #page :is(.hotel-hero-section,.about-header-image) { background-size:cover !important; background-position:center top !important; background-repeat:no-repeat !important; background-color:var(--brand-primary) !important; }
body:not(.home) #page .about-header-image.package-cover-banner { background-size:cover,cover !important; background-position:center,center top !important; }
/* Floating pill header while scrolling, shared by desktop and mobile. */
body:is(.home,:not(.home)) #page .header.template-classic-header.scrolled {
    position:fixed !important; top:12px !important; left:50% !important; right:auto !important;
    width:calc(100% - 48px) !important; max-width:1320px !important;
    margin:0 !important; padding:0 !important; transform:translateX(-50%) !important;
    background:transparent !important; border:0 !important; z-index:99;
}
body:is(.home,:not(.home)) #page .header.template-classic-header.scrolled .template-header-shell {
    border-radius:16px !important; overflow:hidden !important;
    border:1px solid rgba(var(--brand-gold-light-rgb),.2) !important;
    box-shadow:0 12px 32px rgba(5,25,25,.2) !important;
}
body:is(.home,:not(.home)) #page .header.template-classic-header.scrolled .template-header-meta { display:none !important; }
body:is(.home,:not(.home)) #page .header.template-classic-header.scrolled .template-header-main { min-height:72px !important; height:72px !important; padding:10px 28px !important; box-sizing:border-box; }
@media(max-width:767px) {
    body:is(.home,:not(.home)) #page .header.template-classic-header.scrolled { top:10px !important; width:calc(100% - 24px) !important; }
    body:is(.home,:not(.home)) #page .header.template-classic-header.scrolled .template-header-shell { border-radius:14px !important; }
    body:is(.home,:not(.home)) #page .header.template-classic-header.scrolled .template-header-main { display:flex !important; min-height:68px !important; height:68px !important; padding:10px 16px !important; justify-content:space-between !important; }
}

/* Softer rectangular corners for header pills and navigation controls. */
body #page .header.template-classic-header .template-meta-pill { border-radius:8px !important; }
body #page .header.template-classic-header .template-header-nav a { border-radius:8px !important; }
body #page .template-mobile-whatsapp { border-radius:8px !important; }
