/* DSR Combined CSS v3.1 — 62 files merged */

/* ── animations.css (11,796b) ── */
/* ==========================================================================
   ANIMATIONS CSS - Dhulikhel Sunrise Resort
   GPU-accelerated, reduced-motion aware
   ========================================================================== */

/* ==========================================================================
   REVEAL ANIMATIONS (Intersection Observer triggered)
   ========================================================================== */
[data-reveal] {
    opacity: 0;
    transition-property: opacity, transform;
    transition-timing-function: var(--ease-smooth);
    transition-duration: 0.7s;
    will-change: opacity, transform;
}

[data-reveal].revealed {
    opacity: 1;
    transform: none !important;
}

/* Fade Up (default) */
[data-reveal="fade-up"],
[data-reveal] {
    transform: translateY(30px);
}

/* Fade Down */
[data-reveal="fade-down"] {
    transform: translateY(-30px);
}

/* Fade Left */
[data-reveal="fade-left"] {
    transform: translateX(40px);
}

/* Fade Right */
[data-reveal="fade-right"] {
    transform: translateX(-40px);
}

/* Scale In */
[data-reveal="scale-in"] {
    transform: scale(0.9);
}

/* Zoom In */
[data-reveal="zoom-in"] {
    transform: scale(0.85) translateY(20px);
}

/* Clip Top */
[data-reveal="clip-top"] {
    clip-path: inset(100% 0 0 0);
    transform: none;
    transition-property: opacity, clip-path;
}

[data-reveal="clip-top"].revealed {
    clip-path: inset(0 0 0 0);
}

/* Stagger delays */
[data-delay="100"] { transition-delay: 0.1s; }
[data-delay="200"] { transition-delay: 0.2s; }
[data-delay="300"] { transition-delay: 0.3s; }
[data-delay="400"] { transition-delay: 0.4s; }
[data-delay="500"] { transition-delay: 0.5s; }
[data-delay="600"] { transition-delay: 0.6s; }
[data-delay="700"] { transition-delay: 0.7s; }
[data-delay="800"] { transition-delay: 0.8s; }

/* ==========================================================================
   HERO ENTRANCE ANIMATIONS
   ========================================================================== */
@keyframes hero-fade-up {
    from {
        opacity: 0;
        transform: translateY(32px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes hero-fade-in {
    from { opacity: 0; }
    to   { opacity: 1; }
}

@keyframes gold-line-expand {
    from { transform: scaleX(0); }
    to   { transform: scaleX(1); }
}

.hero-animate .hero-eyebrow {
    animation: hero-fade-up 0.8s var(--ease-smooth) 0.2s both;
}

.hero-animate .hero-title {
    animation: hero-fade-up 0.9s var(--ease-smooth) 0.4s both;
}

.hero-animate .hero-subtitle {
    animation: hero-fade-up 0.8s var(--ease-smooth) 0.6s both;
}

.hero-animate .hero-ctas {
    animation: hero-fade-up 0.8s var(--ease-smooth) 0.75s both;
}

.hero-animate .scroll-indicator {
    animation: hero-fade-in 1s var(--ease-smooth) 1.2s both;
}

/* ==========================================================================
   KENBURNS & PARALLAX
   ========================================================================== */
@keyframes ken-burns {
    from { transform: scale(1.05); }
    to   { transform: scale(1.15); }
}

.hero-bg.ken-burns img {
    animation: ken-burns 10s ease-out forwards;
}

/* Parallax layers */
.parallax-layer {
    will-change: transform;
    transform: translateZ(0);
}

/* ==========================================================================
   FLOATING ELEMENTS
   ========================================================================== */
@keyframes float-gentle {
    0%, 100% { transform: translateY(0px); }
    50%       { transform: translateY(-12px); }
}

@keyframes float-slow {
    0%, 100% { transform: translateY(0px) rotate(0deg); }
    50%       { transform: translateY(-8px) rotate(2deg); }
}

.float-element {
    animation: float-gentle 6s ease-in-out infinite;
}

.float-element--slow {
    animation: float-slow 8s ease-in-out infinite;
}

/* ==========================================================================
   SPINNING & ROTATING
   ========================================================================== */
@keyframes spin-slow {
    from { transform: rotate(0deg); }
    to   { transform: rotate(360deg); }
}

@keyframes pulse-ring {
    0% {
        transform: scale(1);
        opacity: 1;
    }
    100% {
        transform: scale(2);
        opacity: 0;
    }
}

.spin-slow {
    animation: spin-slow 20s linear infinite;
}

/* Play button pulse ring */
.play-btn-pulse::before,
.play-btn-pulse::after {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: 50%;
    border: 2px solid var(--color-accent);
    animation: pulse-ring 2.5s ease-out infinite;
}

.play-btn-pulse::after {
    animation-delay: 1.25s;
}

/* ==========================================================================
   UNDERLINE DRAW ANIMATION
   ========================================================================== */
.underline-draw {
    position: relative;
    display: inline-block;
}

.underline-draw::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 100%;
    height: 1px;
    background: var(--color-accent);
    transform-origin: left;
    transform: scaleX(0);
    transition: transform 0.4s var(--ease-smooth);
}

.underline-draw:hover::after {
    transform: scaleX(1);
}

/* Underline from center */
.underline-center::after {
    transform-origin: center;
}

/* ==========================================================================
   SHIMMER EFFECT
   ========================================================================== */
@keyframes shimmer {
    0%   { background-position: -1000px 0; }
    100% { background-position: 1000px 0; }
}

.shimmer {
    background: linear-gradient(
        90deg,
        transparent 0%,
        rgba(255, 255, 255, 0.4) 50%,
        transparent 100%
    );
    background-size: 1000px 100%;
    animation: shimmer 2.5s infinite;
}

/* ==========================================================================
   COUNTER ANIMATION
   ========================================================================== */
.stat-number {
    transition: all 0.5s var(--ease-smooth);
}

/* ==========================================================================
   TESTIMONIAL CAROUSEL
   ========================================================================== */
.testimonial-carousel {
    overflow: hidden;
    position: relative;
}

.testimonial-track {
    display: flex;
    gap: var(--space-xl);
    transition: transform 0.6s var(--ease-smooth);
}

.testimonial-track.no-transition {
    transition: none;
}

/* ==========================================================================
   BUTTON MICRO-INTERACTIONS
   ========================================================================== */
.btn {
    position: relative;
    overflow: hidden;
}

.btn-ripple {
    position: absolute;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.3);
    transform: scale(0);
    animation: ripple 0.6s linear;
    pointer-events: none;
}

@keyframes ripple {
    to {
        transform: scale(4);
        opacity: 0;
    }
}

/* ==========================================================================
   CARD 3D TILT PREPARATION
   ========================================================================== */
.tilt-card {
    transform-style: preserve-3d;
    transition: transform 0.15s ease-out;
    will-change: transform;
}

.tilt-card-content {
    transform: translateZ(20px);
}

/* ==========================================================================
   GRADIENT TEXT
   ========================================================================== */
.gradient-text {
    background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-accent) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.gradient-text-gold {
    background: linear-gradient(135deg, var(--color-accent-dark) 0%, var(--color-accent-light) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* ==========================================================================
   GLASSMORPHISM CARD
   ========================================================================== */
.glass-card {
    background: var(--glass-bg);
    backdrop-filter: var(--glass-blur);
    -webkit-backdrop-filter: var(--glass-blur);
    border: 1px solid var(--glass-border);
    border-radius: var(--radius-lg);
    transition: all var(--transition-base);
}

.glass-card:hover {
    background: rgba(255, 255, 255, 0.18);
    border-color: rgba(255, 255, 255, 0.3);
    transform: translateY(-4px);
    box-shadow: var(--shadow-xl);
}

/* ==========================================================================
   ACCORDION ANIMATION
   ========================================================================== */
.accordion-content {
    transition: max-height 0.4s var(--ease-smooth);
}

/* ==========================================================================
   NAVBAR LOGO ENTRANCE
   ========================================================================== */
@keyframes logo-reveal {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.site-logo {
    animation: logo-reveal 0.6s var(--ease-smooth) 0.1s both;
}

/* ==========================================================================
   SECTION BORDER DECOR
   ========================================================================== */
.section-decor {
    position: absolute;
    pointer-events: none;
    z-index: 0;
}

.section-decor--circle {
    border-radius: 50%;
    border: 1px solid rgba(212, 175, 55, 0.12);
}

/* ==========================================================================
   IMAGE REVEAL ANIMATION
   ========================================================================== */
@keyframes image-reveal {
    0% {
        clip-path: inset(0 100% 0 0);
        transform: scale(1.1);
    }
    100% {
        clip-path: inset(0 0 0 0);
        transform: scale(1);
    }
}

.image-reveal.revealed {
    animation: image-reveal 0.9s var(--ease-smooth) both;
}

/* ==========================================================================
   LOADING ANIMATION
   ========================================================================== */
@keyframes dot-pulse {
    0%, 80%, 100% { transform: scale(0); opacity: 0; }
    40%           { transform: scale(1); opacity: 1; }
}

.loading-dots span {
    display: inline-block;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--color-accent);
    animation: dot-pulse 1.4s ease-in-out infinite;
}

.loading-dots span:nth-child(2) { animation-delay: 0.2s; }
.loading-dots span:nth-child(3) { animation-delay: 0.4s; }

/* ==========================================================================
   ACCESSIBILITY: REDUCED MOTION
   ========================================================================== */
@media (prefers-reduced-motion: reduce) {
    [data-reveal] {
        opacity: 1 !important;
        transform: none !important;
        transition: none !important;
    }

    .hero-animate .hero-eyebrow,
    .hero-animate .hero-title,
    .hero-animate .hero-subtitle,
    .hero-animate .hero-ctas,
    .hero-animate .scroll-indicator {
        animation: none !important;
        opacity: 1 !important;
        transform: none !important;
    }

    .float-element,
    .float-element--slow,
    .spin-slow {
        animation: none !important;
    }

    .awards-track {
        animation: none !important;
    }

    .hero-bg.ken-burns img {
        animation: none !important;
    }
}

/* ── premium-v4.css (36,809b) ── */
/* ============================================================
   DHULIKHEL SUNRISE RESORT — v4 Premium Overrides
   Hero Cinematic · 3D Nav · Logo Fix · Gallery · Mobile
   ============================================================ */

/* ============================================================
   1. LOGO — Fixed responsive size
   ============================================================ */

.site-logo {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    text-decoration: none;
    z-index: 2;
    max-width: var(--logo-max-width, 180px);
}

/* Force logo image to fixed controllable height */
.site-logo img,
.site-logo .custom-logo,
.site-logo .custom-logo-link img {
    height: var(--logo-height, 44px) !important;
    max-height: var(--logo-height, 44px) !important;
    width: auto !important;
    max-width: var(--logo-max-width, 180px) !important;
    object-fit: contain !important;
    display: block !important;
    transition: height 0.3s ease, opacity 0.3s ease !important;
}

.header--scrolled .site-logo img,
.header--scrolled .site-logo .custom-logo,
.header--scrolled .site-logo .custom-logo-link img {
    height: calc(var(--logo-height, 44px) * 0.78) !important;
    max-height: calc(var(--logo-height, 44px) * 0.78) !important;
}

/* Text fallback logo */
.site-logo .logo-text { display: flex; flex-direction: column; }
.logo-name {
    font-family: var(--font-heading);
    font-size: clamp(0.9rem, 1.5vw, 1.2rem);
    font-weight: 700;
    color: var(--color-white);
    line-height: 1.1;
    transition: color 0.3s;
    white-space: nowrap;
}
.logo-tagline {
    font-size: 0.55rem;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--color-accent);
    font-weight: 500;
    white-space: nowrap;
}
.header--scrolled .logo-name { color: var(--color-primary); }

/* Mobile logo */
@media (max-width: 768px) {
    .site-logo img,
    .site-logo .custom-logo,
    .site-logo .custom-logo-link img {
        height: 36px !important;
        max-height: 36px !important;
        max-width: 140px !important;
    }
    .logo-name { font-size: 0.85rem; }
}
@media (max-width: 480px) {
    .site-logo img,
    .site-logo .custom-logo,
    .site-logo .custom-logo-link img {
        height: 30px !important;
        max-height: 30px !important;
        max-width: 120px !important;
    }
}

/* ============================================================
   2. PREMIUM 3D NAV — Ultra luxury look
   ============================================================ */

.site-header {
    position: fixed;
    top: 0; left: 0; right: 0;
    z-index: var(--z-header, 1000);
    transition: background 0.4s ease, box-shadow 0.4s ease, padding 0.4s ease;
    padding: 0;
}

.header--transparent {
    background: transparent;
    box-shadow: none;
}

.header--scrolled {
    background: rgba(255,255,255,0.96);
    backdrop-filter: saturate(180%) blur(20px);
    -webkit-backdrop-filter: saturate(180%) blur(20px);
    box-shadow: 0 2px 40px rgba(26,58,92,0.12);
}

.header-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
    height: var(--header-height, 80px);
    padding: 0;
}

/* Nav menu — desktop */
.main-nav { display: flex; align-items: center; }

.nav-menu {
    display: flex;
    align-items: center;
    list-style: none;
    gap: 0;
    margin: 0;
    padding: 0;
}

.nav-menu > .menu-item {
    position: relative;
}

.nav-menu > .menu-item > a {
    display: flex;
    align-items: center;
    gap: 0.3rem;
    padding: 0.5rem 0.95rem;
    font-size: 0.72rem;
    font-weight: 600;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: rgba(255,255,255,0.92);
    text-decoration: none;
    position: relative;
    transition: color 0.25s ease;
    white-space: nowrap;
}

/* Animated underline */
.nav-menu > .menu-item > a::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 50%;
    right: 50%;
    height: 2px;
    background: var(--color-accent);
    transition: left 0.3s ease, right 0.3s ease;
    border-radius: 2px;
}
.nav-menu > .menu-item > a:hover::after,
.nav-menu > .menu-item.current-menu-item > a::after,
.nav-menu > .menu-item.current-page-ancestor > a::after {
    left: 0.95rem;
    right: 0.95rem;
}
.nav-menu > .menu-item > a:hover,
.nav-menu > .menu-item.current-menu-item > a {
    color: var(--color-accent);
}

.header--scrolled .nav-menu > .menu-item > a { color: var(--color-primary); }
.header--scrolled .nav-menu > .menu-item > a:hover { color: var(--color-accent); }

/* Nav arrow for dropdowns */
.nav-arrow {
    display: inline-flex;
    transition: transform 0.25s ease;
    margin-left: 0.2rem;
}
.menu-item-has-children:hover > a .nav-arrow,
.menu-item-has-children.sub-open > a .nav-arrow {
    transform: rotate(180deg);
}

/* ── DROPDOWN — 3D premium ── */
.nav-menu .sub-menu {
    position: absolute;
    top: calc(100% + 12px);
    left: 50%;
    transform: translateX(-50%) translateY(-8px) perspective(600px) rotateX(-6deg);
    min-width: 220px;
    background: rgba(255,255,255,0.98);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(26,58,92,0.08);
    border-radius: 12px;
    box-shadow: 0 20px 60px rgba(26,58,92,0.18), 0 4px 16px rgba(26,58,92,0.1);
    padding: 0.5rem;
    list-style: none;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.25s ease, transform 0.3s cubic-bezier(.34,1.56,.64,1), visibility 0.25s;
    transform-origin: top center;
    z-index: 999;
}

/* Gold top accent on dropdown */
.nav-menu .sub-menu::before {
    content: '';
    position: absolute;
    top: 0; left: 1.5rem; right: 1.5rem;
    height: 2px;
    background: linear-gradient(90deg, transparent, var(--color-accent), transparent);
    border-radius: 0 0 2px 2px;
}

.nav-menu .menu-item-has-children:hover > .sub-menu {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateX(-50%) translateY(0) perspective(600px) rotateX(0);
}

.nav-menu .sub-menu .menu-item > a {
    display: block;
    padding: 0.65rem 1rem;
    font-size: 0.78rem;
    font-weight: 500;
    letter-spacing: 0.05em;
    color: var(--color-primary);
    text-decoration: none;
    border-radius: 8px;
    transition: background 0.2s, color 0.2s, transform 0.2s;
    position: relative;
}
.nav-menu .sub-menu .menu-item > a:hover {
    background: rgba(26,58,92,0.06);
    color: var(--color-accent);
    transform: translateX(4px);
}

/* Book Now button in header */
.header-book-btn {
    background: var(--color-accent);
    color: var(--color-primary) !important;
    padding: 0.55rem 1.3rem;
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    border-radius: 6px;
    text-decoration: none;
    white-space: nowrap;
    transition: all 0.25s ease;
    box-shadow: 0 4px 14px rgba(212,175,55,0.3);
    position: relative;
    overflow: hidden;
}
.header-book-btn::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(255,255,255,0.2), transparent);
    opacity: 0;
    transition: opacity 0.25s;
}
.header-book-btn:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(212,175,55,0.4); }
.header-book-btn:hover::before { opacity: 1; }

/* ============================================================
   3. MOBILE MENU — items actually visible
   ============================================================ */

/* Hamburger button */
.mobile-menu-toggle {
    display: none;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 5px;
    width: 44px;
    height: 44px;
    background: rgba(255,255,255,0.12);
    border: 1.5px solid rgba(255,255,255,0.3);
    border-radius: 10px;
    cursor: pointer;
    padding: 0;
    z-index: 9999;
    transition: background 0.25s, border-color 0.25s;
    flex-shrink: 0;
}
.header--scrolled .mobile-menu-toggle {
    background: rgba(26,58,92,0.07);
    border-color: rgba(26,58,92,0.2);
}
.mobile-menu-toggle span {
    display: block;
    width: 20px;
    height: 2px;
    background: #fff;
    border-radius: 2px;
    transition: transform 0.3s ease, opacity 0.3s ease, width 0.3s ease;
    transform-origin: center;
}
.header--scrolled .mobile-menu-toggle span { background: var(--color-primary); }
.mobile-menu-toggle.is-active span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.mobile-menu-toggle.is-active span:nth-child(2) { opacity: 0; width: 0; }
.mobile-menu-toggle.is-active span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

@media (max-width: 768px) {
    .mobile-menu-toggle { display: flex !important; }
    .header-book-btn { display: none !important; }
    body.nav-open { overflow: hidden; }
}

/* Mobile nav panel */
@media (max-width: 768px) {
    .main-nav {
        display: block !important;
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        width: 100% !important;
        height: 100% !important;
        background: var(--color-primary, #1a3a5c) !important;
        z-index: 9990 !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch !important;
        padding: 80px 0 2rem !important;
        /* Hidden by default */
        opacity: 0 !important;
        pointer-events: none !important;
        transform: translateX(100%) !important;
        transition: transform 0.4s cubic-bezier(.4,0,.2,1), opacity 0.35s ease !important;
    }

    .main-nav.is-open {
        opacity: 1 !important;
        pointer-events: auto !important;
        transform: translateX(0%) !important;
    }

    /* Nav menu list — vertical */
    .main-nav .nav-menu {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 0 !important;
        padding: 0 1.5rem !important;
        width: 100% !important;
    }

    /* Top border on first item */
    .main-nav .nav-menu > .menu-item:first-child {
        border-top: 1px solid rgba(255,255,255,0.1);
    }

    .main-nav .nav-menu > .menu-item {
        border-bottom: 1px solid rgba(255,255,255,0.08);
        position: relative;
    }

    .main-nav .nav-menu > .menu-item > a {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        padding: 1rem 0 !important;
        font-size: 1rem !important;
        letter-spacing: 0.06em !important;
        color: rgba(255,255,255,0.9) !important;
        font-weight: 500 !important;
        text-transform: uppercase !important;
        text-decoration: none !important;
    }

    .main-nav .nav-menu > .menu-item > a::after { display: none !important; }

    .main-nav .nav-menu > .menu-item > a:hover,
    .main-nav .nav-menu > .menu-item.current-menu-item > a {
        color: var(--color-accent) !important;
    }

    /* Sub-menu on mobile */
    .main-nav .nav-menu .sub-menu {
        position: static !important;
        opacity: 1 !important;
        visibility: hidden !important;
        transform: none !important;
        box-shadow: none !important;
        background: rgba(0,0,0,0.2) !important;
        border-radius: 8px !important;
        border: none !important;
        padding: 0.5rem 0 !important;
        max-height: 0 !important;
        overflow: hidden !important;
        transition: max-height 0.35s ease, visibility 0.35s !important;
        pointer-events: none !important;
        backdrop-filter: none !important;
    }
    .main-nav .nav-menu .sub-menu::before { display: none !important; }

    .main-nav .nav-menu .menu-item-has-children.sub-open > .sub-menu {
        visibility: visible !important;
        max-height: 400px !important;
        pointer-events: auto !important;
        margin-bottom: 0.5rem !important;
    }

    .main-nav .nav-menu .sub-menu .menu-item > a {
        color: rgba(255,255,255,0.75) !important;
        padding: 0.65rem 1rem !important;
        font-size: 0.85rem !important;
        transform: none !important;
        border-radius: 0 !important;
    }
    .main-nav .nav-menu .sub-menu .menu-item > a:hover {
        color: var(--color-accent) !important;
        background: rgba(255,255,255,0.06) !important;
        transform: none !important;
    }

    /* Close button in mobile nav */
    .mobile-nav-close {
        display: flex !important;
        position: fixed;
        top: 1rem;
        right: 1rem;
        width: 44px;
        height: 44px;
        background: rgba(255,255,255,0.1);
        border: 1.5px solid rgba(255,255,255,0.25);
        border-radius: 50%;
        color: #fff;
        font-size: 1.2rem;
        cursor: pointer;
        align-items: center;
        justify-content: center;
        z-index: 9999;
        transition: background 0.2s;
    }
    .mobile-nav-close:hover { background: rgba(255,255,255,0.2); }
}

/* Mobile overlay */
.mobile-overlay {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.5);
    z-index: 9985;
    opacity: 0;
    transition: opacity 0.35s ease;
}
.mobile-overlay.is-active {
    display: block;
    opacity: 1;
}

/* ============================================================
   4. HERO CINEMATIC — 3D Ken Burns, Particles, Transitions
   ============================================================ */

.hero-cinematic {
    position: relative;
    width: 100%;
    min-height: 100svh;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: center;
    isolation: isolate;
}

/* Particle canvas */
.hero-particles {
    position: absolute;
    inset: 0;
    z-index: 3;
    pointer-events: none;
    opacity: 0.6;
}

/* Slide stack */
.hero-slides {
    position: absolute;
    inset: 0;
    z-index: 1;
}

.hero-slide {
    position: absolute;
    inset: 0;
    overflow: hidden;
    opacity: 0;
    transition: opacity 0s;
    will-change: opacity, transform;
}

.hero-slide-inner {
    position: absolute;
    inset: -5%;
    will-change: transform;
    transition: none;
}

.hero-slide-inner img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
    will-change: transform;
}

/* Active slide — visible */
.hero-slide.is-active {
    opacity: 1;
    z-index: 2;
}

/* ── 3D Cinematic transition ── */
.hero-slide.is-entering {
    z-index: 3;
    animation: slideEnter 1.1s cubic-bezier(.4,0,.2,1) forwards;
}

.hero-slide.is-leaving {
    z-index: 2;
    animation: slideLeave 1.1s cubic-bezier(.4,0,.2,1) forwards;
}

@keyframes slideEnter {
    0%   { opacity: 0; clip-path: polygon(0 0, 0 0, 0 100%, 0 100%); }
    30%  { opacity: 1; }
    100% { opacity: 1; clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%); }
}

@keyframes slideLeave {
    0%   { opacity: 1; }
    60%  { opacity: 0.4; }
    100% { opacity: 0; }
}

/* Overlays */
.hero-overlay { position: absolute; inset: 0; pointer-events: none; }

.hero-overlay--gradient {
    z-index: 4;
    background: linear-gradient(
        175deg,
        rgba(5,15,30,0.15) 0%,
        rgba(5,15,30,0.50) 40%,
        rgba(5,15,30,0.78) 100%
    );
}

.hero-overlay--vignette {
    z-index: 4;
    background: radial-gradient(ellipse at center, transparent 40%, rgba(5,15,30,0.55) 100%);
}

.hero-noise {
    position: absolute;
    inset: 0;
    z-index: 5;
    pointer-events: none;
    opacity: 0.025;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='1'/%3E%3C/svg%3E");
    background-size: 150px;
}

/* Content */
.hero-content {
    position: relative;
    z-index: 6;
    width: 100%;
    padding-top: calc(var(--header-height, 80px) + 2rem);
    padding-bottom: 10rem;
}

.hero-inner { max-width: 860px; }

/* Eyebrow */
.hero-eyebrow-wrap {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 1.5rem;
}
.hero-eyebrow-line {
    flex: 1;
    max-width: 60px;
    height: 1px;
    background: var(--color-accent);
    opacity: 0.7;
}
.hero-eyebrow {
    font-size: 0.7rem;
    font-weight: 600;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: var(--color-accent);
    margin: 0;
    white-space: nowrap;
}

/* Title */
.hero-title {
    font-family: var(--font-heading);
    font-size: clamp(2.4rem, 6vw, 5rem);
    font-weight: 700;
    color: #fff;
    line-height: 1.1;
    letter-spacing: -0.02em;
    margin: 0 0 0.5rem;
    text-shadow: 0 2px 20px rgba(0,0,0,0.3);
}

/* Gold rule */
.hero-rule {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin: 1.25rem 0 1.5rem;
}
.hero-rule-line {
    flex: 1;
    max-width: 80px;
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--color-accent));
}
.hero-rule-line:last-child { background: linear-gradient(90deg, var(--color-accent), transparent); }
.hero-rule-diamond {
    color: var(--color-accent);
    font-size: 0.6rem;
    opacity: 0.9;
}

/* Subtitle */
.hero-subtitle {
    font-size: clamp(0.95rem, 1.5vw, 1.15rem);
    color: rgba(255,255,255,0.82);
    line-height: 1.75;
    max-width: 600px;
    margin: 0 0 2rem;
    text-shadow: 0 1px 8px rgba(0,0,0,0.25);
}

/* CTA Buttons */
.hero-ctas {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
    margin-bottom: 2.5rem;
}

.btn-hero {
    display: inline-flex;
    align-items: center;
    gap: 0.6rem;
    padding: 0.9rem 2.2rem;
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    text-decoration: none;
    border-radius: 8px;
    position: relative;
    overflow: hidden;
    transition: transform 0.25s ease, box-shadow 0.25s ease;
    cursor: pointer;
    border: none;
}

.btn-hero--primary {
    background: var(--color-accent);
    color: var(--color-primary);
    box-shadow: 0 8px 32px rgba(212,175,55,0.35);
}
.btn-hero__bg {
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(255,255,255,0.25), transparent);
    opacity: 0;
    transition: opacity 0.3s;
}
.btn-hero--primary:hover { transform: translateY(-3px); box-shadow: 0 16px 48px rgba(212,175,55,0.45); }
.btn-hero--primary:hover .btn-hero__bg { opacity: 1; }
.btn-hero__text { position: relative; z-index: 1; }

.btn-hero--ghost {
    background: rgba(255,255,255,0.1);
    color: #fff;
    border: 1.5px solid rgba(255,255,255,0.4);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}
.btn-hero--ghost:hover {
    background: rgba(255,255,255,0.18);
    border-color: rgba(255,255,255,0.65);
    transform: translateY(-2px);
}

/* Stats bar */
.hero-stats {
    display: flex;
    gap: 2rem;
    flex-wrap: wrap;
    border-top: 1px solid rgba(255,255,255,0.15);
    padding-top: 1.5rem;
}
.hero-stat { }
.hero-stat__val {
    display: block;
    font-family: var(--font-heading);
    font-size: 1.3rem;
    font-weight: 700;
    color: var(--color-accent);
    line-height: 1.1;
}
.hero-stat__lbl {
    display: block;
    font-size: 0.65rem;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: rgba(255,255,255,0.55);
    margin-top: 0.15rem;
}

/* Slide controls */
.hero-controls {
    position: absolute;
    bottom: 3rem;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
    display: flex;
    align-items: center;
    gap: 1rem;
}

.hero-arrow {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border: 1.5px solid rgba(255,255,255,0.3);
    background: rgba(255,255,255,0.08);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border-radius: 50%;
    color: #fff;
    cursor: pointer;
    transition: all 0.25s ease;
    flex-shrink: 0;
    padding: 0;
}
.hero-arrow svg { width: 18px; height: 18px; }
.hero-arrow:hover { background: var(--color-accent); border-color: var(--color-accent); color: var(--color-primary); transform: scale(1.1); }

/* Progress dots */
.hero-progress-dots { display: flex; gap: 0.5rem; align-items: center; }

.hero-pdot {
    background: none;
    border: none;
    padding: 4px 0;
    cursor: pointer;
    position: relative;
    width: 32px;
    transition: width 0.35s ease;
}
.hero-pdot.is-active { width: 52px; }

.hero-pdot__bar {
    display: block;
    height: 3px;
    background: rgba(255,255,255,0.35);
    border-radius: 3px;
    position: relative;
    overflow: hidden;
    transition: background 0.3s;
}
.hero-pdot.is-active .hero-pdot__bar { background: rgba(255,255,255,0.5); }

/* Progress fill animation on active dot */
.hero-pdot.is-active .hero-pdot__bar::after {
    content: '';
    position: absolute;
    inset: 0;
    background: var(--color-accent);
    transform-origin: left;
    animation: dotProgress 6.5s linear forwards;
}
@keyframes dotProgress { from { transform: scaleX(0); } to { transform: scaleX(1); } }

/* Counter */
.hero-counter {
    position: absolute;
    bottom: 3.5rem;
    right: 2.5rem;
    z-index: 10;
    display: flex;
    align-items: baseline;
    gap: 0.2rem;
    font-family: var(--font-heading);
}
.hero-counter__cur { font-size: 2.2rem; font-weight: 700; color: var(--color-accent); line-height: 1; }
.hero-counter__sep { font-size: 0.9rem; color: rgba(255,255,255,0.4); margin: 0 0.2rem; }
.hero-counter__tot { font-size: 1rem; color: rgba(255,255,255,0.5); }

/* Caption bar */
.hero-caption-bar {
    position: absolute;
    bottom: 3.5rem;
    left: 2.5rem;
    z-index: 10;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}
.hero-caption-icon { color: var(--color-accent); font-size: 0.5rem; opacity: 0.8; }
.hero-caption-text {
    font-size: 0.68rem;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: rgba(255,255,255,0.7);
    transition: opacity 0.3s ease;
}
.hero-caption-text.cap-out { opacity: 0; }

/* Scroll cue */
.hero-scroll-cue {
    position: absolute;
    bottom: 1.5rem;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.4rem;
    background: none;
    border: none;
    cursor: pointer;
    color: rgba(255,255,255,0.6);
    padding: 0;
    transition: opacity 0.3s;
}
.hero-scroll-cue__mouse {
    width: 22px;
    height: 34px;
    border: 2px solid rgba(255,255,255,0.4);
    border-radius: 12px;
    display: flex;
    justify-content: center;
    padding-top: 5px;
}
.hero-scroll-cue__wheel {
    width: 3px;
    height: 8px;
    background: var(--color-accent);
    border-radius: 2px;
    animation: scrollWheel 1.8s ease infinite;
}
@keyframes scrollWheel {
    0%,100% { transform: translateY(0); opacity: 1; }
    60%      { transform: translateY(10px); opacity: 0; }
}
.hero-scroll-cue__label {
    font-size: 0.58rem;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

/* Mobile hero */
@media (max-width: 768px) {
    .hero-title { font-size: clamp(1.8rem, 8vw, 2.8rem); }
    .hero-subtitle { font-size: 0.9rem; }
    .hero-ctas { flex-direction: column; }
    .btn-hero { width: 100%; max-width: 320px; justify-content: center; }
    .hero-stats { gap: 1.25rem; }
    .hero-stat__val { font-size: 1.1rem; }
    .hero-counter { display: none; }
    .hero-caption-bar { left: 1rem; }
    .hero-controls { bottom: 2rem; gap: 0.75rem; }
    .hero-arrow { width: 36px; height: 36px; }
    .hero-pdot { width: 24px; }
    .hero-pdot.is-active { width: 40px; }
    .hero-scroll-cue { bottom: 5.5rem; }
    .hero-content { padding-top: calc(var(--header-height, 80px) + 1.5rem); padding-bottom: 8rem; }
}

@media (max-width: 480px) {
    .hero-eyebrow-wrap { gap: 0.5rem; }
    .hero-eyebrow-line { max-width: 30px; }
    .hero-stats { display: none; }
    .hero-rule-line { max-width: 40px; }
    .hero-caption-bar { display: none; }
}

/* ============================================================
   5. GALLERY MASONRY + LIGHTBOX
   ============================================================ */

.gallery-masonry {
    columns: 4;
    column-gap: 0.75rem;
}

.gallery-item {
    break-inside: avoid;
    margin-bottom: 0.75rem;
    border-radius: 10px;
    overflow: hidden;
    position: relative;
    cursor: pointer;
    display: block;
    transition: opacity 0.35s ease, transform 0.35s ease;
}

.gallery-item.gallery-hidden { opacity: 0; transform: scale(0.95); }
.gallery-item.gallery-visible { opacity: 1; transform: scale(1); }

.gallery-item__img-wrap { position: relative; display: block; }
.gallery-item__img-wrap img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 10px;
    transition: transform 0.5s ease;
}
.gallery-item:hover .gallery-item__img-wrap img { transform: scale(1.04); }

.gallery-item__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(10,24,44,0.7) 0%, transparent 50%);
    opacity: 0;
    transition: opacity 0.35s ease;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 1rem;
    border-radius: 10px;
}
.gallery-item:hover .gallery-item__overlay,
.gallery-item:focus-visible .gallery-item__overlay { opacity: 1; }

.gallery-item__zoom {
    width: 40px;
    height: 40px;
    background: rgba(255,255,255,0.15);
    border: 1.5px solid rgba(255,255,255,0.4);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    backdrop-filter: blur(6px);
    align-self: flex-end;
    margin-bottom: 0.5rem;
}

.gallery-item__caption {
    font-size: 0.72rem;
    color: rgba(255,255,255,0.85);
    margin: 0;
    line-height: 1.4;
}

@media (max-width: 1024px) { .gallery-masonry { columns: 3; } }
@media (max-width: 640px)  { .gallery-masonry { columns: 2; column-gap: 0.5rem; } .gallery-item { margin-bottom: 0.5rem; } }
@media (max-width: 360px)  { .gallery-masonry { columns: 1; } }

/* Lightbox */
.dsr-lightbox {
    position: fixed;
    inset: 0;
    z-index: 99999;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 1rem;
}
.dsr-lightbox__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(5,10,20,0.95);
    backdrop-filter: blur(8px);
    cursor: pointer;
}
.dsr-lightbox.is-open .dsr-lightbox__stage { animation: lbFadeIn 0.35s ease forwards; }
@keyframes lbFadeIn { from { opacity:0; transform:scale(0.95); } to { opacity:1; transform:scale(1); } }

.dsr-lightbox__stage {
    position: relative;
    z-index: 2;
    max-width: min(92vw, 1200px);
    max-height: 80vh;
    display: flex;
    align-items: center;
    justify-content: center;
}
.dsr-lightbox__img {
    max-width: 100%;
    max-height: 78vh;
    object-fit: contain;
    border-radius: 8px;
    box-shadow: 0 40px 80px rgba(0,0,0,0.6);
    display: block;
}
.dsr-lightbox__loader {
    width: 40px; height: 40px;
    border: 3px solid rgba(255,255,255,0.15);
    border-top-color: var(--color-accent);
    border-radius: 50%;
    animation: lbSpin 0.8s linear infinite;
    position: absolute;
}
@keyframes lbSpin { to { transform: rotate(360deg); } }

.dsr-lightbox__close,
.dsr-lightbox__prev,
.dsr-lightbox__next {
    position: absolute;
    z-index: 5;
    background: rgba(255,255,255,0.1);
    border: 1.5px solid rgba(255,255,255,0.25);
    border-radius: 50%;
    color: #fff;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.2s, transform 0.2s;
    padding: 0;
    backdrop-filter: blur(8px);
}
.dsr-lightbox__close { top: 1.25rem; right: 1.25rem; width: 44px; height: 44px; }
.dsr-lightbox__prev  { left: 1.25rem;  top: 50%; transform: translateY(-50%); width: 48px; height: 48px; }
.dsr-lightbox__next  { right: 1.25rem; top: 50%; transform: translateY(-50%); width: 48px; height: 48px; }
.dsr-lightbox__prev svg, .dsr-lightbox__next svg { width: 20px; height: 20px; }
.dsr-lightbox__close:hover,
.dsr-lightbox__prev:hover,
.dsr-lightbox__next:hover { background: var(--color-accent); border-color: var(--color-accent); color: var(--color-primary); }
.dsr-lightbox__prev:hover { transform: translateY(-50%) scale(1.08); }
.dsr-lightbox__next:hover { transform: translateY(-50%) scale(1.08); }

.dsr-lightbox__info {
    position: relative;
    z-index: 2;
    text-align: center;
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
}
.dsr-lightbox__caption { font-size: 0.82rem; color: rgba(255,255,255,0.7); margin: 0; }
.dsr-lightbox__counter { font-size: 0.72rem; color: rgba(255,255,255,0.4); letter-spacing: 0.1em; }

@media (max-width: 640px) {
    .dsr-lightbox__prev { left: 0.5rem; }
    .dsr-lightbox__next { right: 0.5rem; }
    .dsr-lightbox__img { max-height: 70vh; }
}

/* ============================================================
   6. MOBILE 100% RESPONSIVE
   ============================================================ */

@media (min-width: 769px) {
    .main-nav { display: flex !important; }
    .mobile-menu-toggle { display: none !important; }
    .mobile-overlay { display: none !important; }
    .mobile-book-bar { display: none !important; }
    body { padding-bottom: 0 !important; }
}

@media (max-width: 768px) {
    .container { padding: 0 1.25rem; }
    .section { padding: 2.5rem 0; }
    .section-title { font-size: clamp(1.5rem, 5.5vw, 2rem); }

    /* Grids stack */
    .grid-2, .grid-3, .grid-4 { grid-template-columns: 1fr !important; gap: 1.25rem !important; }
    .about-snippet { grid-template-columns: 1fr !important; gap: 2rem !important; }
    .dining-split { grid-template-columns: 1fr !important; gap: 2rem !important; }
    .amenities-grid { grid-template-columns: repeat(2,1fr) !important; gap: 1rem !important; }
    .stats-grid { grid-template-columns: repeat(2,1fr) !important; gap: 1rem !important; }
    .home-gallery-grid { grid-template-columns: repeat(2,1fr) !important; grid-template-rows: auto !important; }
    .home-gallery-item--tall { grid-row: span 1 !important; }
    .home-gallery-item { aspect-ratio: 4/3; }
    .newsletter-inner { flex-direction: column !important; gap: 2rem; }

    /* Sticky badge hide */
    .about-snippet__badge { bottom: 1rem !important; right: 1rem !important; }

    /* Mobile sticky book bar */
    body { padding-bottom: calc(64px + env(safe-area-inset-bottom, 0px)); }
    .mobile-book-bar {
        display: flex;
        position: fixed;
        bottom: 0; left: 0; right: 0;
        z-index: 9980;
        background: var(--color-primary);
        padding: 0.875rem 1.25rem calc(0.875rem + env(safe-area-inset-bottom,0px));
        gap: 0.75rem;
        align-items: center;
        box-shadow: 0 -4px 24px rgba(0,0,0,0.25);
        border-top: 2px solid var(--color-accent);
    }
    .mobile-book-bar a:first-child {
        flex: 1;
        text-align: center;
        background: var(--color-accent);
        color: var(--color-primary) !important;
        font-weight: 700;
        font-size: 0.9rem;
        padding: 0.75rem 1rem;
        border-radius: 8px;
        text-decoration: none;
    }
    .mobile-book-bar-phone {
        color: rgba(255,255,255,0.75);
        font-size: 0.75rem;
        text-align: center;
    }
    .mobile-book-bar-phone a { color: inherit; text-decoration: none; }

    /* Gallery filters scroll */
    .gallery-filters {
        overflow-x: auto;
        flex-wrap: nowrap !important;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        padding-bottom: 0.5rem;
        gap: 0.5rem !important;
    }
    .gallery-filters::-webkit-scrollbar { display: none; }
    .gallery-filter-btn { white-space: nowrap; flex-shrink: 0; }

    /* Page hero */
    .page-hero { min-height: 320px !important; }
    .page-hero-title { font-size: clamp(1.5rem, 6vw, 2.2rem) !important; }

    /* Booking page */
    .booking-page-layout { grid-template-columns: 1fr !important; }
    .booking-page-sidebar { position: static !important; }

    /* Dining absolute badge hide */
    [style*="position:absolute;bottom:-1.5rem"] { display: none !important; }
    [style*="grid-template-columns:1fr 1fr"], [style*="grid-template-columns:2fr 1fr"], [style*="grid-template-columns:1fr 1.5fr"] {
        grid-template-columns: 1fr !important;
        gap: 2rem !important;
    }

    /* Rooms page sticky sidebar */
    [style*="position:sticky"] { position: static !important; }

    /* iframe map */
    iframe[src*="google.com/maps"] { height: 250px !important; }
}

@media (max-width: 480px) {
    .amenities-grid { grid-template-columns: repeat(2,1fr) !important; gap: 0.75rem !important; }
    .amenity-card { padding: 1rem 0.75rem !important; }
    .amenity-icon { font-size: 1.6rem !important; }
    .about-snippet__badge { display: none !important; }
    .stats-grid { gap: 0.75rem !important; }
    .stat-number { font-size: 1.75rem !important; }
    .hero-ctas .btn-hero { max-width: 100%; }
}

@media (max-width: 360px) {
    .hero-title { font-size: 1.5rem; }
    .section-title { font-size: 1.3rem; }
    .mobile-book-bar a:first-child { font-size: 0.8rem; padding: 0.65rem 0.75rem; }
}

/* Safe area support */
@supports (padding: env(safe-area-inset-left)) {
    .container {
        padding-left: max(1.25rem, env(safe-area-inset-left));
        padding-right: max(1.25rem, env(safe-area-inset-right));
    }
    @media (max-width: 768px) {
        .site-header .header-inner {
            padding-left: max(1rem, env(safe-area-inset-left));
            padding-right: max(1rem, env(safe-area-inset-right));
        }
    }
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration: 0.01ms !important;
        transition-duration: 0.01ms !important;
    }
    .hero-slide-inner { transform: none !important; }
    .hero-pdot.is-active .hero-pdot__bar::after { animation: none; }
    .hero-scroll-cue__wheel { animation: none; }
}

/* Landscape phone */
@media (max-height: 500px) and (orientation: landscape) {
    .hero-cinematic { min-height: 100vw; }
    .hero-title { font-size: 1.4rem; }
    .hero-subtitle { display: none; }
    .hero-stats { display: none; }
    .hero-content { padding-bottom: 6rem; }
}

/* Focus visible */
:focus-visible { outline: 2px solid var(--color-accent); outline-offset: 3px; border-radius: 3px; }

/* ============================================================
   7. EXTRA 3D / SHADOW / ANIMATION ENHANCEMENTS
   ============================================================ */

/* Room card 3D hover */
.room-card {
    transition: transform 0.4s cubic-bezier(.34,1.56,.64,1), box-shadow 0.4s ease;
    transform-style: preserve-3d;
}
.room-card:hover {
    transform: translateY(-8px) scale(1.01);
    box-shadow: 0 32px 64px rgba(26,58,92,0.18), 0 8px 20px rgba(26,58,92,0.1);
}

/* Amenity card 3D */
.amenity-card {
    transform-style: preserve-3d;
    transition: transform 0.4s cubic-bezier(.34,1.56,.64,1), box-shadow 0.4s ease;
}
.amenity-card:hover {
    transform: translateY(-6px) rotateX(2deg);
    box-shadow: 0 20px 40px rgba(26,58,92,0.12);
}

/* Pillar card glow on hover */
[data-reveal="fade-up"][style*="border-bottom:3px solid var(--color-accent)"] {
    transition: transform 0.4s ease, box-shadow 0.4s ease !important;
}
[data-reveal="fade-up"][style*="border-bottom:3px solid var(--color-accent)"]:hover {
    transform: translateY(-6px) !important;
    box-shadow: 0 24px 48px rgba(26,58,92,0.14) !important;
}

/* Gallery item scale */
.home-gallery-item {
    transition: transform 0.4s cubic-bezier(.34,1.56,.64,1), box-shadow 0.4s ease;
}
.home-gallery-item:hover {
    transform: scale(1.02);
    box-shadow: 0 16px 40px rgba(26,58,92,0.2);
    z-index: 2;
}

/* Testimonial card depth */
.testimonial-card {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.testimonial-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 20px 40px rgba(26,58,92,0.12);
}

/* Gold shimmer on btn--primary hover */
.btn--primary {
    position: relative;
    overflow: hidden;
}
.btn--primary::after {
    content: '';
    position: absolute;
    top: -50%;
    left: -75%;
    width: 50%;
    height: 200%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
    transform: skewX(-20deg);
    transition: left 0.5s ease;
}
.btn--primary:hover::after { left: 125%; }

/* Section reveal — extra depth */
[data-reveal].revealed {
    filter: none;
}

/* ── responsive.css (19,184b) ── */
/**
 * responsive.css — Dhulikhel Sunrise Resort
 * Full mobile-first responsive overrides
 * Breakpoints: 1280 | 1024 | 768 | 640 | 480 | 360
 */

/* ==========================================================================
   LARGE DESKTOP  (≤ 1280px)
   ========================================================================== */
@media (max-width: 1280px) {
    .container { max-width: 100%; padding: 0 2rem; }
    .grid-4 { grid-template-columns: repeat(2, 1fr); }
    .hero-title { font-size: clamp(2.4rem, 5vw, 3.8rem); }
}

/* ==========================================================================
   TABLET LANDSCAPE  (≤ 1024px)
   ========================================================================== */
@media (max-width: 1024px) {
    /* Typography scale down */
    .hero-title   { font-size: clamp(2rem, 5.5vw, 3rem); }
    .section-title { font-size: clamp(1.6rem, 3.5vw, 2.2rem); }

    /* Grids → 2 col */
    .grid-3 { grid-template-columns: repeat(2, 1fr); }

    /* Dining section: stack vertically */
    [style*="grid-template-columns:1fr 1fr"] {
        grid-template-columns: 1fr !important;
        gap: 2rem !important;
    }

    /* Dining badge reposition */
    [style*="position:absolute;bottom:-1.5rem;left:-1.5rem"] {
        bottom: 1rem !important;
        left: 1rem !important;
    }

    /* Header nav spacing */
    .nav-menu .menu-item > a { padding: 0.5rem 0.75rem; font-size: 0.85rem; }

    /* Hero controls closer to bottom */
    .hero-controls { bottom: 2.5rem; }

    /* Footer grid */
    .footer-grid { grid-template-columns: repeat(2, 1fr); }

    /* Stats grid */
    .stats-grid { grid-template-columns: repeat(2, 1fr); }
}

/* ==========================================================================
   TABLET PORTRAIT  (≤ 768px)
   ========================================================================== */
@media (max-width: 768px) {
    /* ── Base ── */
    .container { padding: 0 1.25rem; }
    body { font-size: 15px; }

    /* ── Header ── */
    .site-header .header-inner {
        position: relative;
        padding: 0.75rem 0;
    }

    /* Hide primary nav on tablet/mobile — JS opens mobile panel */
    .main-nav {
        display: none;
        position: fixed;
        inset: 0;
        z-index: 9998;
        background: var(--color-primary, #1a3a5c);
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 0;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
    }
    .main-nav.is-open { display: flex; }

    .main-nav .nav-menu {
        flex-direction: column;
        align-items: center;
        gap: 0;
        width: 100%;
        padding: 2rem 0;
    }
    .main-nav .menu-item { width: 100%; text-align: center; border-bottom: 1px solid rgba(255,255,255,0.08); }
    .main-nav .menu-item:first-child { border-top: 1px solid rgba(255,255,255,0.08); }
    .main-nav .menu-item > a {
        display: block;
        padding: 1rem 2rem;
        color: #fff !important;
        font-size: 1.05rem;
        font-weight: 500;
        letter-spacing: 0.04em;
    }
    .main-nav .menu-item > a:hover,
    .main-nav .menu-item.current-menu-item > a {
        background: rgba(212,175,55,0.15);
        color: var(--color-accent, #d4af37) !important;
    }

    /* Sub-menus in mobile */
    .main-nav .sub-menu {
        position: static;
        opacity: 1;
        visibility: visible;
        background: rgba(0,0,0,0.2);
        box-shadow: none;
        transform: none;
    }
    .main-nav .sub-menu .menu-item > a { padding: 0.75rem 3rem; font-size: 0.9rem; }

    /* Show hamburger */
    .mobile-menu-toggle { display: flex !important; }

    /* Book Now button — smaller */
    .header-book-btn {
        padding: 0.5rem 1rem;
        font-size: 0.8rem;
        display: none; /* hidden on mobile — use sticky bar instead */
    }

    /* ── Logo ── */
    .site-logo img,
    .site-logo .custom-logo {
        height: 38px !important;
        max-height: 38px !important;
        max-width: 160px !important;
    }

    /* ── Hero ── */
    .hero--full { min-height: 100svh; }

    .hero-title {
        font-size: clamp(1.75rem, 7vw, 2.5rem);
        line-height: 1.2;
    }
    .hero-subtitle {
        font-size: 0.95rem;
        line-height: 1.7;
    }
    .hero-eyebrow { font-size: 0.7rem; }
    .hero-gold-line { margin: 1rem 0 1.2rem; }

    .hero-ctas {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.75rem;
    }
    .hero-ctas .btn { width: 100%; justify-content: center; max-width: 320px; }

    .hero-booking-teaser { display: none; } /* Use floating widget below hero */

    .hero-controls {
        bottom: 1.5rem;
        gap: 0.75rem;
        padding: 0.5rem 1rem;
    }
    .hero-caption { display: none; }

    /* ── Sections ── */
    .section { padding: 3rem 0; }
    .section-header { margin-bottom: 2rem; }
    .section-title { font-size: clamp(1.5rem, 5vw, 2rem); }

    /* ── Grids → single column ── */
    .grid-2,
    .grid-3,
    .grid-4 { grid-template-columns: 1fr !important; gap: 1.5rem !important; }

    /* Value pillars: single col */
    .grid-3 > div { max-width: 100%; }

    /* ── Stats grid ── */
    .stats-grid { grid-template-columns: repeat(2, 1fr); gap: 1.5rem; }
    .stat-number { font-size: 2.5rem; }

    /* ── Booking widget float ── */
    .booking-widget-float {
        padding: 1.5rem !important;
        border-radius: var(--radius-lg) !important;
    }
    .booking-widget-float > div > div:first-child > div:last-child {
        display: none !important; /* hide badge pills on small screens */
    }

    /* HSR booking form: stack fields */
    .hsr-booking-form,
    .hsr-form-row,
    [class*="hsr-form"] {
        flex-direction: column !important;
        gap: 0.75rem !important;
    }
    .hsr-booking-form input,
    .hsr-booking-form select,
    .hsr-booking-form button,
    [class*="hsr-form"] input,
    [class*="hsr-form"] select,
    [class*="hsr-form"] button {
        width: 100% !important;
        min-width: 0 !important;
    }

    /* ── Room cards ── */
    .room-card { max-width: 100%; }

    /* ── Testimonials ── */
    .testimonial-track { gap: 1.25rem; }
    .testimonial-card { padding: 1.5rem; }
    .testimonial-text { font-size: 0.9rem; }

    /* ── Dining section ── */
    #dining-heading { text-align: center; }
    .gold-divider { margin-left: auto; margin-right: auto; }

    /* ── Footer ── */
    .footer-grid {
        grid-template-columns: 1fr !important;
        gap: 2rem;
    }
    .footer-bottom-inner {
        flex-direction: column;
        gap: 1rem;
        text-align: center;
    }
    .footer-legal { justify-content: center; }

    /* ── Scroll progress / cursor ── */
    .custom-cursor,
    .custom-cursor-ring { display: none !important; }

    /* ── Mobile sticky book bar ── */
    .mobile-book-bar {
        display: flex !important;
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        z-index: 9990;
        background: var(--color-primary, #1a3a5c);
        padding: 0.875rem 1.25rem;
        gap: 0.75rem;
        align-items: center;
        box-shadow: 0 -4px 20px rgba(0,0,0,0.25);
        border-top: 2px solid var(--color-accent, #d4af37);
        safe-area-inset-bottom: env(safe-area-inset-bottom);
        padding-bottom: calc(0.875rem + env(safe-area-inset-bottom, 0px));
    }
    .mobile-book-bar a {
        flex: 1;
        text-align: center;
        background: var(--color-accent, #d4af37);
        color: var(--color-primary, #1a3a5c) !important;
        font-weight: 700;
        font-size: 0.95rem;
        padding: 0.75rem 1rem;
        border-radius: var(--radius-md, 8px);
        text-decoration: none;
        letter-spacing: 0.04em;
    }
    .mobile-book-bar-phone {
        color: rgba(255,255,255,0.85);
        font-size: 0.78rem;
        text-align: center;
        flex-shrink: 0;
    }
    .mobile-book-bar-phone a { color: inherit; text-decoration: none; }

    /* Push page content above sticky bar */
    body { padding-bottom: calc(60px + env(safe-area-inset-bottom, 0px)); }
    .site-footer { margin-bottom: 0; }

    /* ── Gallery grid ── */
    .gallery-grid { columns: 1 !important; }

    /* ── Experience cards ── */
    .experience-card { min-height: 280px; }
}

/* ==========================================================================
   MOBILE  (≤ 640px)
   ========================================================================== */
@media (max-width: 640px) {
    /* ── Typography ── */
    .hero-title  { font-size: clamp(1.6rem, 8vw, 2.2rem); }
    .section-title { font-size: clamp(1.35rem, 5.5vw, 1.75rem); }

    /* ── Header ── */
    .header-inner { min-height: 60px; }
    .site-logo img, .site-logo .custom-logo {
        height: 34px !important;
        max-height: 34px !important;
        max-width: 140px !important;
    }

    /* ── Hero ── */
    .hero-inner { padding: 0 0.25rem; }
    .hero-controls {
        bottom: 1rem;
        padding: 0.4rem 0.75rem;
        gap: 0.6rem;
    }
    .hero-arrow { width: 26px; height: 26px; }
    .hero-dot   { width: 6px; height: 6px; }
    .hero-dot.is-active { width: 16px; }

    /* ── Booking form ── */
    .booking-widget-float { padding: 1.25rem !important; }

    /* ── Stats ── */
    .stats-grid { grid-template-columns: repeat(2, 1fr); gap: 1rem; }
    .stat-number { font-size: 2rem; }
    .stat-label  { font-size: 0.75rem; }

    /* ── Badges row ── */
    [style*="justify-content:center;gap:2rem"] {
        gap: 0.75rem !important;
    }

    /* ── Scroll indicator ── */
    .scroll-indicator { bottom: 5rem; }

    /* ── Buttons ── */
    .btn--lg { padding: 0.875rem 1.5rem; font-size: 0.9rem; }
    .btn { min-height: 44px; } /* touch target */

    /* ── Virtual tour section ── */
    .virtual-tour-content { padding: 2rem 1.25rem; }
    .virtual-tour-content h2 { font-size: 1.75rem !important; }
    .virtual-tour-btn { padding: 0.875rem 1.5rem; font-size: 0.9rem; }

    /* ── Awards ticker ── */
    .award-item { font-size: 0.78rem; padding: 0 1rem; }

    /* ── Newsletter ── */
    .newsletter-inner { flex-direction: column; gap: 2rem; }
    .newsletter-form { flex-direction: column; }
    .newsletter-form input,
    .newsletter-form button { width: 100%; }

    /* ── Footer ── */
    .footer-brand { text-align: center; }
    .footer-social { justify-content: center !important; }
    .footer-copyright { font-size: 0.78rem; }

    /* ── Room card ── */
    .room-card-meta { flex-wrap: wrap; gap: 0.5rem; }
    .room-card-amenities { flex-wrap: wrap; }

    /* ── Page hero (inner pages) ── */
    .page-hero-title { font-size: clamp(1.5rem, 7vw, 2rem); }

    /* ── Testimonial ── */
    .testimonial-card { padding: 1.25rem; }

    /* ── Hide decorative floating elements ── */
    .hero-booking-teaser,
    .glass-card { display: none; }
}

/* ==========================================================================
   SMALL MOBILE  (≤ 480px)
   ========================================================================== */
@media (max-width: 480px) {
    .container { padding: 0 1rem; }

    .hero-title { font-size: clamp(1.45rem, 8.5vw, 2rem); line-height: 1.18; }
    .hero-eyebrow { font-size: 0.65rem; letter-spacing: 0.1em; }
    .hero-subtitle { font-size: 0.875rem; }

    .section { padding: 2.25rem 0; }

    /* Stats → 2×2 compact */
    .stats-grid { gap: 0.75rem; }
    .stat-number { font-size: 1.75rem; }

    /* Booking widget wrap */
    .booking-widget-wrap { padding: 1rem; }

    /* Buttons full width on small screens */
    .hero-ctas .btn { max-width: 100%; }

    /* Mobile book bar font */
    .mobile-book-bar a { font-size: 0.875rem; padding: 0.7rem 0.75rem; }

    /* Footer columns — tighten */
    .footer-col h3 { font-size: 0.85rem; }
    .footer-col li,
    .footer-col a { font-size: 0.82rem; }

    /* Remove absolute positioned badge on dining */
    [style*="position:absolute;bottom:-1.5rem"] { display: none !important; }

    /* Experience card text */
    .experience-card-title { font-size: 1rem; }
    .experience-card-category { font-size: 0.65rem; }
}

/* ==========================================================================
   TINY MOBILE  (≤ 360px)
   ========================================================================== */
@media (max-width: 360px) {
    .hero-title { font-size: 1.35rem; }
    .hero-ctas { gap: 0.6rem; }
    .btn--lg { padding: 0.75rem 1.1rem; font-size: 0.82rem; }

    .stats-grid { grid-template-columns: repeat(2, 1fr); gap: 0.5rem; }
    .stat-number { font-size: 1.5rem; }

    .mobile-book-bar { padding: 0.65rem 1rem; }
    .mobile-book-bar a { font-size: 0.82rem; }

    .hero-controls { padding: 0.35rem 0.6rem; gap: 0.5rem; }
    .hero-arrow { width: 22px; height: 22px; }
}

/* ==========================================================================
   PRINT
   ========================================================================== */
@media print {
    .site-header,
    .mobile-book-bar,
    .hero-controls,
    .scroll-indicator,
    .awards-bar,
    .newsletter-section,
    .mobile-overlay,
    .custom-cursor,
    .custom-cursor-ring,
    .scroll-progress { display: none !important; }

    .hero { min-height: auto; height: 300px; }
    .section { padding: 1.5rem 0; }
    a { color: inherit; text-decoration: none; }
}

/* ==========================================================================
   SAFE AREA — iPhone notch / Dynamic Island
   ========================================================================== */
@supports (padding: env(safe-area-inset-left)) {
    .container {
        padding-left:  max(1.25rem, env(safe-area-inset-left));
        padding-right: max(1.25rem, env(safe-area-inset-right));
    }
    @media (max-width: 768px) {
        .container {
            padding-left:  max(1.25rem, env(safe-area-inset-left));
            padding-right: max(1.25rem, env(safe-area-inset-right));
        }
        .site-header .header-inner {
            padding-left:  max(1rem, env(safe-area-inset-left));
            padding-right: max(1rem, env(safe-area-inset-right));
        }
    }
}

/* ==========================================================================
   LANDSCAPE PHONE  (short viewport)
   ========================================================================== */
@media (max-height: 500px) and (orientation: landscape) {
    .hero--full { min-height: 100vw; }
    .hero-title { font-size: clamp(1.3rem, 4vw, 1.8rem); }
    .hero-subtitle { display: none; }
    .hero-gold-line { margin: 0.6rem 0; }
    .hero-ctas { margin-top: 0.75rem; }
    .hero-controls { bottom: 0.6rem; }
    .scroll-indicator { display: none; }
}

/* ==========================================================================
   HIGH DPI (Retina)
   ========================================================================== */
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .hero-slide img { image-rendering: -webkit-optimize-contrast; }
}

/* ==========================================================================
   REDUCED MOTION — respect user preference
   ========================================================================== */
@media (prefers-reduced-motion: reduce) {
    .hero-slide,
    .hero-slide img,
    [data-hero-anim],
    .hero-arrow,
    .btn,
    .nav-menu .menu-item > a,
    .room-card,
    .experience-card,
    * {
        transition-duration: 0.01ms !important;
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
    }
    .hero-slide img { transform: none !important; }
}

/* ==========================================================================
   FOCUS VISIBLE — keyboard navigation
   ========================================================================== */
:focus-visible {
    outline: 3px solid var(--color-accent, #d4af37);
    outline-offset: 3px;
    border-radius: 3px;
}

button:focus-visible,
a:focus-visible { outline: 3px solid var(--color-accent, #d4af37); }

/* ==========================================================================
   PAGE TEMPLATES — rooms, contact, about, dining inner pages
   ========================================================================== */

/* Page hero responsive */
@media (max-width: 768px) {
    .page-hero { min-height: 320px !important; }
    .page-hero-title { font-size: clamp(1.5rem, 6vw, 2.25rem) !important; }
    .page-hero-subtitle { font-size: 0.9rem !important; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
}

/* Rooms page — sticky sidebar becomes normal flow on mobile */
@media (max-width: 1024px) {
    .page-rooms-grid,
    [style*="grid-template-columns:2fr 1fr"],
    [style*="grid-template-columns: 2fr 1fr"] {
        grid-template-columns: 1fr !important;
    }
    [style*="position:sticky;top:calc"] {
        position: static !important;
    }
}

/* Gallery filters scroll on mobile */
@media (max-width: 640px) {
    .gallery-filters {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        flex-wrap: nowrap !important;
        padding-bottom: 0.5rem;
        scrollbar-width: none;
        gap: 0.5rem !important;
    }
    .gallery-filters::-webkit-scrollbar { display: none; }
    .gallery-filter-btn {
        white-space: nowrap;
        flex-shrink: 0;
        padding: 0.5rem 1rem !important;
        font-size: 0.78rem !important;
    }
}

/* Contact page grid */
@media (max-width: 768px) {
    [style*="grid-template-columns:1fr 1.5fr"],
    [style*="grid-template-columns: 1fr 1.5fr"] {
        grid-template-columns: 1fr !important;
    }
    /* Map iframe responsive */
    iframe[src*="google.com/maps"] {
        height: 280px !important;
    }
}

/* "All Rooms Include" grid on rooms page */
@media (max-width: 640px) {
    .grid-2[style*="gap:1rem"] {
        grid-template-columns: 1fr !important;
    }
}

/* ==========================================================================
   HEADER — desktop show nav / mobile hide
   ========================================================================== */

@media (min-width: 769px) {
    .main-nav { display: flex !important; }
    .mobile-menu-toggle { display: none !important; }
    .mobile-book-bar { display: none !important; }
    .mobile-nav-close { display: none !important; }
    body { padding-bottom: 0 !important; }
}

/* ==========================================================================
   ROOM CARD — grid on rooms page single col mobile
   ========================================================================== */

@media (max-width: 640px) {
    .grid-3[style*="gap:2rem"] {
        grid-template-columns: 1fr !important;
        gap: 1.25rem !important;
    }
}

/* ── main.css (3,085b) ── */
/**
 * Main CSS — Dhulikhel Sunrise Resort
 * @package dhulikhel-resort
 */

.mobile-overlay{display:none;position:fixed;inset:0;background:rgba(10,24,44,0.6);z-index:calc(var(--z-overlay) - 1);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);transition:opacity var(--transition-base);opacity:0;}
.mobile-overlay.active{display:block;opacity:1;}
.pagination{display:flex;gap:.5rem;justify-content:center;flex-wrap:wrap;margin-top:2rem;}
.pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1.5px solid var(--color-mid-gray);border-radius:var(--radius-md);font-size:.9rem;font-weight:500;color:var(--color-text);text-decoration:none;transition:all var(--transition-base);}
.pagination .page-numbers:hover,.pagination .page-numbers.current{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-white);}
.search-form{display:flex;gap:.5rem;max-width:400px;margin:0 auto;}
.search-field{flex:1;padding:.75rem 1rem;border:1.5px solid var(--color-mid-gray);border-radius:var(--radius-md);font-family:var(--font-body);font-size:var(--font-size-md);outline:none;transition:border-color var(--transition-base);}
.search-field:focus{border-color:var(--color-primary);}
.search-submit{padding:.75rem 1.5rem;background:var(--color-primary);color:white;border:none;border-radius:var(--radius-md);cursor:pointer;font-family:var(--font-body);font-weight:600;font-size:.85rem;transition:background var(--transition-base);}
.search-submit:hover{background:var(--color-primary-dark);}
.skip-link{position:absolute;top:-100px;left:1rem;background:var(--color-primary);color:white;padding:.5rem 1rem;border-radius:0 0 var(--radius-md) var(--radius-md);font-size:.875rem;font-weight:600;z-index:9999;transition:top .2s;text-decoration:none;}
.skip-link:focus{top:0;}
.hero--full{min-height:100vh;}
.hero--large{min-height:80vh;}
.hero--medium{min-height:60vh;}
.admin-bar .site-header{top:32px;}
@media(max-width:782px){.admin-bar .site-header{top:46px;}}
.comments-area{margin-top:3rem;padding-top:3rem;border-top:1px solid var(--color-mid-gray);}
.comment-form .form-submit input{padding:.875rem 2rem;background:var(--color-primary);color:white;border:none;border-radius:var(--radius-md);font-family:var(--font-body);font-weight:600;cursor:pointer;}
.comment-form input[type=text],.comment-form input[type=email],.comment-form input[type=url],.comment-form textarea{width:100%;padding:.75rem 1rem;border:1.5px solid var(--color-mid-gray);border-radius:var(--radius-md);font-family:var(--font-body);font-size:var(--font-size-md);margin-bottom:.5rem;outline:none;transition:border-color var(--transition-base);}
.comment-form input:focus,.comment-form textarea:focus{border-color:var(--color-primary);}
.widget{margin-bottom:2rem;}
.widget-title{font-family:var(--font-heading);font-size:1.1rem;color:var(--color-primary);margin-bottom:1rem;padding-bottom:.5rem;border-bottom:2px solid var(--color-accent);display:inline-block;}
.testimonial-dot.active{background:var(--color-primary) !important;}

/* ── design-v5.css (55,538b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v5
   Luxury Himalayan Boutique · High Conversion · Premium UX
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   DESIGN TOKENS v5
───────────────────────────────────────────────────────────── */
:root {
  --v5-navy:          #0d2137;
  --v5-navy-mid:      #1a3a5c;
  --v5-gold:          #c9a84c;
  --v5-gold-light:    #e0c97a;
  --v5-gold-dark:     #a07828;
  --v5-cream:         #faf7f2;
  --v5-warm-white:    #fffef9;
  --v5-charcoal:      #2c2c2c;
  --v5-mist:          #f0ede8;
  --v5-stone:         #8a8078;

  --v5-radius-card:   20px;
  --v5-radius-pill:   999px;
  --v5-radius-sm:     10px;

  --v5-shadow-card:   0 8px 40px rgba(13,33,55,0.12), 0 2px 8px rgba(13,33,55,0.06);
  --v5-shadow-hover:  0 24px 64px rgba(13,33,55,0.2), 0 8px 20px rgba(13,33,55,0.1);
  --v5-shadow-gold:   0 8px 32px rgba(201,168,76,0.35);
  --v5-shadow-float:  0 20px 60px rgba(13,33,55,0.25);

  --v5-ease-spring:   cubic-bezier(0.34, 1.56, 0.64, 1);
  --v5-ease-luxury:   cubic-bezier(0.25, 0.1, 0.25, 1);
  --v5-duration:      380ms;
  --v5-duration-slow: 700ms;

  --v5-section-pad:   clamp(5rem, 9vw, 9rem);
  --v5-section-pad-sm: clamp(3rem, 5vw, 5rem);
}

/* ─────────────────────────────────────────────────────────────
   BASE TYPOGRAPHY
───────────────────────────────────────────────────────────── */
body {
  font-family: 'Inter', 'Helvetica Neue', system-ui, sans-serif;
  color: var(--v5-charcoal);
  background: var(--v5-warm-white);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

h1,h2,h3,h4 {
  font-family: 'Playfair Display', Georgia, serif;
  color: var(--v5-navy);
  line-height: 1.15;
}

/* Section header system */
.section-label {
  display: inline-block;
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--v5-gold);
  margin-bottom: 0.75rem;
  position: relative;
}

.section-title {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: clamp(1.8rem, 3.5vw, 2.8rem);
  font-weight: 700;
  color: var(--v5-navy);
  line-height: 1.2;
  margin-bottom: 1rem;
}

.section-subtitle {
  font-size: 1rem;
  color: var(--v5-stone);
  line-height: 1.8;
  max-width: 620px;
}

.section-header.centered {
  text-align: center;
}
.section-header.centered .section-subtitle {
  margin-left: auto;
  margin-right: auto;
}

/* Gold divider */
.gold-divider {
  width: 50px;
  height: 2px;
  background: linear-gradient(90deg, var(--v5-gold-dark), var(--v5-gold-light));
  margin: 1rem 0 1.5rem;
  border-radius: 2px;
}
.gold-divider.centered { margin-left: auto; margin-right: auto; }

/* Sections */
.section { padding: var(--v5-section-pad) 0; }
.section--alt { background: var(--v5-cream); }
.section--dark { background: var(--v5-navy); }

/* Container */
.container { max-width: 1280px; margin: 0 auto; padding: 0 2rem; }
@media (max-width: 768px) { .container { padding: 0 1.25rem; } }

/* ─────────────────────────────────────────────────────────────
   BUTTONS v5
───────────────────────────────────────────────────────────── */
.btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-decoration: none;
  padding: 0.875rem 2rem;
  border-radius: var(--v5-radius-sm);
  border: 2px solid transparent;
  cursor: pointer;
  transition: all var(--v5-duration) var(--v5-ease-luxury);
  position: relative;
  overflow: hidden;
  white-space: nowrap;
}

/* Shimmer effect on all buttons */
.btn::before {
  content: '';
  position: absolute;
  top: 0; left: -100%;
  width: 60%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.18), transparent);
  transform: skewX(-20deg);
  transition: left 0.55s ease;
  pointer-events: none;
}
.btn:hover::before { left: 150%; }

.btn--primary {
  background: linear-gradient(135deg, var(--v5-gold), var(--v5-gold-dark));
  color: var(--v5-navy) !important;
  border-color: transparent;
  box-shadow: var(--v5-shadow-gold);
}
.btn--primary:hover {
  transform: translateY(-3px);
  box-shadow: 0 16px 48px rgba(201,168,76,0.45);
}

.btn--secondary {
  background: transparent;
  color: var(--v5-navy) !important;
  border-color: var(--v5-navy);
}
.btn--secondary:hover {
  background: var(--v5-navy);
  color: #fff !important;
  transform: translateY(-2px);
}

.btn--outline-white {
  background: rgba(255,255,255,0.08);
  color: #fff !important;
  border-color: rgba(255,255,255,0.5);
  backdrop-filter: blur(8px);
}
.btn--outline-white:hover {
  background: rgba(255,255,255,0.18);
  border-color: #fff;
  transform: translateY(-2px);
}

.btn--outline {
  background: transparent;
  color: var(--v5-navy) !important;
  border-color: currentColor;
}
.btn--outline:hover { background: var(--v5-navy); color: #fff !important; transform: translateY(-2px); }

.btn--lg { padding: 1rem 2.5rem; font-size: 0.82rem; }
.btn--sm { padding: 0.6rem 1.25rem; font-size: 0.72rem; }

/* ─────────────────────────────────────────────────────────────
   HEADER v5 — Glassy scroll behaviour
───────────────────────────────────────────────────────────── */
.site-header {
  position: fixed;
  top: 0; left: 0; right: 0;
  z-index: 1000;
  transition: background var(--v5-duration-slow) ease,
              backdrop-filter var(--v5-duration-slow) ease,
              box-shadow var(--v5-duration) ease,
              padding var(--v5-duration) ease;
}

.header--transparent {
  background: linear-gradient(180deg, rgba(13,33,55,0.55) 0%, transparent 100%);
  backdrop-filter: none;
  box-shadow: none;
}

.header--scrolled {
  background: rgba(255,255,255,0.97);
  backdrop-filter: saturate(200%) blur(24px);
  -webkit-backdrop-filter: saturate(200%) blur(24px);
  box-shadow: 0 1px 0 rgba(13,33,55,0.07), 0 4px 24px rgba(13,33,55,0.08);
}

.header-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
  height: 76px;
}

/* Navigation links */
.nav-menu > .menu-item > a {
  font-size: 0.73rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 0.5rem 0.9rem;
  color: rgba(255,255,255,0.92);
  transition: color var(--v5-duration) ease;
  position: relative;
}
.nav-menu > .menu-item > a::after {
  content: '';
  position: absolute;
  bottom: -1px; left: 0.9rem; right: 0.9rem;
  height: 1.5px;
  background: var(--v5-gold);
  transform: scaleX(0);
  transform-origin: center;
  transition: transform var(--v5-duration) var(--v5-ease-spring);
  border-radius: 2px;
}
.nav-menu > .menu-item > a:hover,
.nav-menu > .menu-item.current-menu-item > a { color: var(--v5-gold); }
.nav-menu > .menu-item > a:hover::after,
.nav-menu > .menu-item.current-menu-item > a::after { transform: scaleX(1); }

.header--scrolled .nav-menu > .menu-item > a { color: var(--v5-navy); }
.header--scrolled .nav-menu > .menu-item > a:hover { color: var(--v5-gold-dark); }

/* Book Now button */
.header-book-btn {
  background: linear-gradient(135deg, var(--v5-gold), var(--v5-gold-dark));
  color: var(--v5-navy) !important;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 0.6rem 1.4rem;
  border-radius: var(--v5-radius-sm);
  text-decoration: none;
  box-shadow: 0 4px 16px rgba(201,168,76,0.4);
  transition: all var(--v5-duration) var(--v5-ease-luxury);
  white-space: nowrap;
  position: relative;
  overflow: hidden;
}
.header-book-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 28px rgba(201,168,76,0.5);
}

/* Dropdown */
.nav-menu .sub-menu {
  position: absolute;
  top: calc(100% + 10px);
  left: 50%;
  transform: translateX(-50%) translateY(-6px);
  min-width: 210px;
  background: rgba(255,255,255,0.99);
  border-radius: 14px;
  box-shadow: 0 24px 64px rgba(13,33,55,0.18);
  border: 1px solid rgba(13,33,55,0.06);
  padding: 0.6rem;
  list-style: none;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.25s ease, transform 0.3s var(--v5-ease-spring), visibility 0.25s;
  transform-origin: top center;
  z-index: 999;
  overflow: hidden;
}
.nav-menu .sub-menu::before {
  content: '';
  display: block;
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--v5-gold), transparent);
  margin-bottom: 0.3rem;
  border-radius: 2px;
}
.nav-menu .menu-item-has-children:hover > .sub-menu {
  opacity: 1; visibility: visible; pointer-events: auto;
  transform: translateX(-50%) translateY(0);
}
.nav-menu .sub-menu .menu-item > a {
  display: block;
  padding: 0.6rem 0.875rem;
  font-size: 0.78rem;
  font-weight: 500;
  color: var(--v5-navy);
  border-radius: 8px;
  transition: background var(--v5-duration) ease, color var(--v5-duration) ease, padding-left var(--v5-duration) ease;
  letter-spacing: 0.04em;
}
.nav-menu .sub-menu .menu-item > a:hover {
  background: var(--v5-cream);
  color: var(--v5-gold-dark);
  padding-left: 1.25rem;
}

/* ─────────────────────────────────────────────────────────────
   HERO v5 — Cinematic with video-feel overlay
───────────────────────────────────────────────────────────── */
.hero-cinematic {
  min-height: 100svh;
  position: relative;
  display: flex;
  align-items: center;
  overflow: hidden;
  isolation: isolate;
}

/* Multi-layer cinematic overlay */
.hero-overlay--gradient {
  background: linear-gradient(
    165deg,
    rgba(13,33,55,0.10) 0%,
    rgba(13,33,55,0.48) 35%,
    rgba(13,33,55,0.78) 75%,
    rgba(13,33,55,0.88) 100%
  );
}

/* Content */
.hero-content { padding-top: calc(76px + 3rem); padding-bottom: 12rem; }
.hero-inner { max-width: 880px; }

.hero-title {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: clamp(2.6rem, 6.5vw, 5.5rem);
  font-weight: 800;
  color: #fff;
  line-height: 1.08;
  letter-spacing: -0.02em;
  text-shadow: 0 4px 30px rgba(0,0,0,0.3);
}

.hero-subtitle {
  font-size: clamp(1rem, 1.6vw, 1.2rem);
  color: rgba(255,255,255,0.85);
  line-height: 1.8;
  max-width: 580px;
  text-shadow: 0 1px 10px rgba(0,0,0,0.2);
}

/* Gold decorative rule */
.hero-rule-diamond { color: var(--v5-gold); }
.hero-rule-line { background: linear-gradient(90deg, var(--v5-gold-dark), var(--v5-gold-light)); opacity: 0.8; }

/* Hero stats */
.hero-stats {
  border-top: 1px solid rgba(255,255,255,0.12);
  padding-top: 1.75rem;
  margin-top: 2rem;
  display: flex;
  gap: 2.5rem;
}
.hero-stat__val {
  font-size: 1.4rem;
  color: var(--v5-gold-light);
  font-weight: 700;
}
.hero-stat__lbl { color: rgba(255,255,255,0.5); font-size: 0.62rem; letter-spacing: 0.14em; }

/* CTA buttons in hero */
.hero-ctas { gap: 0.875rem; }

.btn-hero--primary {
  background: linear-gradient(135deg, var(--v5-gold), var(--v5-gold-dark));
  color: var(--v5-navy);
  box-shadow: 0 8px 32px rgba(201,168,76,0.4);
  border-radius: var(--v5-radius-sm);
}
.btn-hero--primary:hover {
  box-shadow: 0 16px 48px rgba(201,168,76,0.55);
  transform: translateY(-3px);
}

.btn-hero--ghost {
  background: rgba(255,255,255,0.08);
  border: 1.5px solid rgba(255,255,255,0.45);
  backdrop-filter: blur(10px);
  border-radius: var(--v5-radius-sm);
}
.btn-hero--ghost:hover {
  background: rgba(255,255,255,0.16);
  border-color: rgba(255,255,255,0.7);
}

/* Progress dots */
.hero-pdot__bar { background: rgba(255,255,255,0.25); }
.hero-pdot.is-active .hero-pdot__bar { background: rgba(255,255,255,0.4); }
.hero-pdot.is-active .hero-pdot__bar::after { background: var(--v5-gold); }

/* Arrows */
.hero-arrow:hover { background: var(--v5-gold); border-color: var(--v5-gold); color: var(--v5-navy); }

/* Counter & caption */
.hero-counter__cur { color: var(--v5-gold-light); }
.hero-caption-icon { color: var(--v5-gold); }

/* ─────────────────────────────────────────────────────────────
   AVAILABILITY BANNER v5
───────────────────────────────────────────────────────────── */
.availability-banner {
  padding: 0 !important;
  position: relative;
  z-index: 10;
  margin-top: -3px;
}

.availability-banner__inner {
  background: var(--v5-navy);
  border-radius: 0 0 28px 28px;
  padding: 1.75rem 2.5rem;
  display: flex;
  align-items: center;
  gap: 2rem;
  flex-wrap: wrap;
  box-shadow: 0 20px 60px rgba(13,33,55,0.25);
  position: relative;
  overflow: hidden;
}

/* Subtle gold shimmer bar at top */
.availability-banner__inner::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent 0%, var(--v5-gold) 30%, var(--v5-gold-light) 50%, var(--v5-gold) 70%, transparent 100%);
}

.availability-banner__title {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 1.35rem;
  color: #fff;
  margin: 0 0 0.2rem;
}
.availability-banner__sub {
  font-size: 0.78rem;
  color: rgba(255,255,255,0.55);
  margin: 0;
  letter-spacing: 0.03em;
}

.avail-badge {
  font-size: 0.72rem;
  font-weight: 700;
  padding: 0.4rem 1rem;
  border-radius: var(--v5-radius-pill);
  letter-spacing: 0.04em;
}
.avail-badge--blue {
  background: rgba(255,255,255,0.08);
  color: rgba(255,255,255,0.85);
  border: 1px solid rgba(255,255,255,0.12);
}
.avail-badge--gold {
  background: rgba(201,168,76,0.18);
  color: var(--v5-gold-light);
  border: 1px solid rgba(201,168,76,0.3);
}

.availability-banner__btn {
  margin-left: auto;
  flex-shrink: 0;
  padding: 0.875rem 2.25rem;
  border-radius: var(--v5-radius-sm);
  background: linear-gradient(135deg, var(--v5-gold), var(--v5-gold-dark));
  color: var(--v5-navy) !important;
  font-weight: 800;
  box-shadow: var(--v5-shadow-gold);
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  text-decoration: none;
  font-size: 0.78rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  transition: all var(--v5-duration) var(--v5-ease-luxury);
}
.availability-banner__btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 36px rgba(201,168,76,0.55);
}

@media (max-width: 768px) {
  .availability-banner__inner { padding: 1.5rem; flex-direction: column; align-items: flex-start; gap: 1rem; border-radius: 0 0 20px 20px; }
  .availability-banner__btn { width: 100%; justify-content: center; margin-left: 0; }
  .availability-banner__badges { display: flex; gap: 0.5rem; }
}

/* ─────────────────────────────────────────────────────────────
   VALUE PILLARS v5
───────────────────────────────────────────────────────────── */
/* Override inline styles — luxury card treatment */
.section [data-reveal="fade-up"][style*="border-bottom:3px solid var(--color-accent)"] {
  border: none !important;
  border-radius: var(--v5-radius-card) !important;
  box-shadow: var(--v5-shadow-card) !important;
  padding: 3rem 2.25rem !important;
  position: relative;
  overflow: hidden;
  transition: transform var(--v5-duration) var(--v5-ease-spring), box-shadow var(--v5-duration) ease !important;
}
.section [data-reveal="fade-up"][style*="border-bottom:3px solid var(--color-accent)"]::after {
  content: '';
  position: absolute;
  bottom: 0; left: 0; right: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--v5-gold-dark), var(--v5-gold-light));
}
.section [data-reveal="fade-up"][style*="border-bottom:3px solid var(--color-accent)"]:hover {
  transform: translateY(-10px) !important;
  box-shadow: var(--v5-shadow-hover) !important;
}

/* Icon circles */
.section [data-reveal="fade-up"] > div[style*="border-radius:50%"] {
  width: 80px !important;
  height: 80px !important;
  box-shadow: 0 8px 24px rgba(13,33,55,0.25) !important;
}

/* ─────────────────────────────────────────────────────────────
   ROOMS CARDS v5 — Luxury grid
───────────────────────────────────────────────────────────── */
.room-card {
  background: var(--v5-warm-white);
  border-radius: var(--v5-radius-card);
  overflow: hidden;
  box-shadow: var(--v5-shadow-card);
  transition: transform var(--v5-duration) var(--v5-ease-spring),
              box-shadow var(--v5-duration) ease;
  display: flex;
  flex-direction: column;
  border: 1px solid rgba(13,33,55,0.05);
}
.room-card:hover {
  transform: translateY(-12px);
  box-shadow: var(--v5-shadow-hover);
}

.room-card__image {
  position: relative;
  aspect-ratio: 4/3;
  overflow: hidden;
}
.room-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.65s var(--v5-ease-luxury);
}
.room-card:hover .room-card__image img { transform: scale(1.07); }

/* Badge */
.room-card__badge {
  position: absolute;
  top: 1rem; right: 1rem;
  background: linear-gradient(135deg, var(--v5-gold), var(--v5-gold-dark));
  color: var(--v5-navy);
  font-size: 0.65rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 0.35rem 0.875rem;
  border-radius: var(--v5-radius-pill);
  box-shadow: 0 4px 14px rgba(201,168,76,0.4);
}

/* "View Details" overlay on hover */
.room-card__image::after {
  content: 'View Details →';
  position: absolute;
  bottom: 0; left: 0; right: 0;
  background: linear-gradient(to top, rgba(13,33,55,0.92), transparent);
  color: rgba(255,255,255,0.92);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  padding: 2rem 1.25rem 1rem;
  opacity: 0;
  transform: translateY(8px);
  transition: opacity 0.35s ease, transform 0.35s ease;
  pointer-events: none;
}
.room-card:hover .room-card__image::after { opacity: 1; transform: translateY(0); }

.room-card__body {
  padding: 1.75rem;
  display: flex;
  flex-direction: column;
  flex: 1;
}
.room-card__category {
  font-size: 0.62rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--v5-gold-dark);
  margin-bottom: 0.4rem;
}
.room-card__title {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 1.25rem;
  color: var(--v5-navy);
  margin-bottom: 0.6rem;
  line-height: 1.25;
}
.room-card__title a { color: inherit; text-decoration: none; }
.room-card__desc {
  font-size: 0.875rem;
  color: var(--v5-stone);
  line-height: 1.75;
  flex: 1;
  margin-bottom: 1rem;
}
.room-amenity-tag {
  background: var(--v5-cream);
  color: var(--v5-navy);
  font-size: 0.65rem;
  font-weight: 600;
  padding: 0.25rem 0.65rem;
  border-radius: var(--v5-radius-pill);
  border: 1px solid rgba(13,33,55,0.07);
  letter-spacing: 0.04em;
}
.room-card__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: 1rem;
  border-top: 1px solid rgba(13,33,55,0.06);
  gap: 1rem;
  flex-wrap: wrap;
  margin-top: auto;
}
.room-card__price-amount {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 1.6rem;
  font-weight: 700;
  color: var(--v5-navy);
}
.room-card__price-unit {
  font-size: 0.72rem;
  color: var(--v5-stone);
  letter-spacing: 0.04em;
}
.room-card__footer .btn--primary {
  padding: 0.6rem 1.35rem;
  font-size: 0.72rem;
}

/* ─────────────────────────────────────────────────────────────
   STATS v5 — Elevated number display
───────────────────────────────────────────────────────────── */
.stats-grid {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 0;
  background: var(--v5-navy);
  border-radius: var(--v5-radius-card);
  overflow: hidden;
  box-shadow: var(--v5-shadow-float);
}
.stat-item {
  padding: 2.5rem 2rem;
  text-align: center;
  position: relative;
  border-right: 1px solid rgba(255,255,255,0.07);
  transition: background var(--v5-duration) ease;
}
.stat-item:last-child { border-right: none; }
.stat-item:hover { background: rgba(255,255,255,0.04); }
.stat-item::before {
  content: '';
  position: absolute;
  bottom: 0; left: 25%; right: 25%;
  height: 2px;
  background: var(--v5-gold);
  opacity: 0;
  transition: opacity var(--v5-duration) ease;
}
.stat-item:hover::before { opacity: 1; }
.stat-number {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: clamp(2rem, 3.5vw, 3rem);
  font-weight: 800;
  color: var(--v5-gold-light);
  line-height: 1;
  margin-bottom: 0.5rem;
}
.stat-label {
  font-size: 0.65rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.45);
  font-weight: 600;
}
@media (max-width: 640px) {
  .stats-grid { grid-template-columns: repeat(2,1fr); border-radius: 16px; }
  .stat-item { border-right: 1px solid rgba(255,255,255,0.07); border-bottom: 1px solid rgba(255,255,255,0.07); }
  .stat-item:nth-child(2n) { border-right: none; }
  .stat-item:nth-last-child(-n+2) { border-bottom: none; }
}

/* ─────────────────────────────────────────────────────────────
   AMENITIES GRID v5 — Icon card grid
───────────────────────────────────────────────────────────── */
.amenities-grid {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 1.25rem;
}
.amenity-card {
  background: var(--v5-warm-white);
  border-radius: var(--v5-radius-card);
  padding: 2rem 1.5rem;
  text-align: center;
  box-shadow: var(--v5-shadow-card);
  border: 1px solid rgba(13,33,55,0.05);
  transition: transform var(--v5-duration) var(--v5-ease-spring),
              box-shadow var(--v5-duration) ease,
              border-color var(--v5-duration) ease;
  position: relative;
  overflow: hidden;
}
.amenity-card::after {
  content: '';
  position: absolute;
  bottom: 0; left: 0; right: 0;
  height: 2px;
  background: linear-gradient(90deg, var(--v5-gold-dark), var(--v5-gold-light));
  transform: scaleX(0);
  transition: transform var(--v5-duration) var(--v5-ease-spring);
  transform-origin: center;
}
.amenity-card:hover { transform: translateY(-8px); box-shadow: var(--v5-shadow-hover); border-color: rgba(201,168,76,0.2); }
.amenity-card:hover::after { transform: scaleX(1); }
.amenity-icon { font-size: 2.4rem; margin-bottom: 1rem; display: block; }
.amenity-name { font-family: 'Playfair Display', Georgia, serif; font-size: 0.95rem; color: var(--v5-navy); font-weight: 600; margin-bottom: 0.4rem; }
.amenity-desc { font-size: 0.78rem; color: var(--v5-stone); line-height: 1.6; margin: 0; }

@media (max-width: 1024px) { .amenities-grid { grid-template-columns: repeat(3,1fr); } }
@media (max-width: 640px)  { .amenities-grid { grid-template-columns: repeat(2,1fr); gap: 0.875rem; } }
@media (max-width: 380px)  { .amenities-grid { grid-template-columns: 1fr 1fr; gap: 0.75rem; } .amenity-card { padding: 1.25rem 1rem; } }

/* ─────────────────────────────────────────────────────────────
   ABOUT SNIPPET v5 — Split storytelling
───────────────────────────────────────────────────────────── */
.about-snippet {
  display: grid;
  grid-template-columns: 1.05fr 1fr;
  gap: 5rem;
  align-items: center;
}
.about-snippet__image {
  position: relative;
  border-radius: var(--v5-radius-card);
}
.about-snippet__image img {
  width: 100%;
  border-radius: var(--v5-radius-card);
  box-shadow: var(--v5-shadow-float);
  object-fit: cover;
  display: block;
}
/* Decorative frame */
.about-snippet__image::before {
  content: '';
  position: absolute;
  inset: -12px;
  border: 1px solid rgba(201,168,76,0.3);
  border-radius: calc(var(--v5-radius-card) + 8px);
  pointer-events: none;
  z-index: -1;
}
.about-snippet__badge {
  position: absolute;
  bottom: -1.5rem; right: -1.5rem;
  background: linear-gradient(135deg, var(--v5-navy), var(--v5-navy-mid));
  border: 2px solid var(--v5-gold);
  border-radius: 16px;
  padding: 1.25rem 1.5rem;
  text-align: center;
  box-shadow: var(--v5-shadow-float);
}
.about-badge-year { display: block; font-size: 0.6rem; letter-spacing: 0.2em; text-transform: uppercase; color: var(--v5-gold); font-weight: 700; }
.about-badge-num  { display: block; font-family: 'Playfair Display', Georgia, serif; font-size: 2.2rem; font-weight: 800; color: #fff; line-height: 1.1; }
.about-snippet__content { }
.about-snippet__content p { color: var(--v5-stone); line-height: 1.9; }

@media (max-width: 900px) {
  .about-snippet { grid-template-columns: 1fr; gap: 3rem; }
  .about-snippet__image::before { display: none; }
  .about-snippet__badge { bottom: 1rem; right: 1rem; }
}

/* ─────────────────────────────────────────────────────────────
   EXPERIENCES v5 — Elegant dark section
───────────────────────────────────────────────────────────── */
.section--dark .section-header { padding-bottom: 0.5rem; }
.experience-card {
  position: relative;
  border-radius: var(--v5-radius-card);
  overflow: hidden;
  min-height: 380px;
  display: flex;
  align-items: flex-end;
  box-shadow: var(--v5-shadow-card);
  transition: transform var(--v5-duration) var(--v5-ease-spring);
}
.experience-card:hover { transform: scale(1.02); }
.experience-card img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.65s var(--v5-ease-luxury);
}
.experience-card:hover img { transform: scale(1.06); }
.experience-card-content {
  position: relative;
  z-index: 2;
  width: 100%;
  padding: 2rem 1.75rem 1.75rem;
  background: linear-gradient(to top, rgba(13,33,55,0.95) 0%, rgba(13,33,55,0.5) 60%, transparent 100%);
}
.experience-card-category {
  font-size: 0.62rem;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--v5-gold-light);
  font-weight: 700;
  display: block;
  margin-bottom: 0.4rem;
}
.experience-card-title {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 1.2rem;
  color: #fff;
  font-weight: 700;
  margin-bottom: 0.6rem;
}
.experience-card-desc { font-size: 0.82rem; color: rgba(255,255,255,0.72); line-height: 1.6; margin: 0; }
.experience-card a.btn-hero--ghost,
.experience-card a.btn-hero,
.experience-card a.btn--glass {
  margin-top: 1rem;
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--v5-gold-light) !important;
  text-decoration: none;
  border-bottom: 1px solid rgba(201,168,76,0.4);
  padding-bottom: 0.1rem;
  transition: color var(--v5-duration) ease, border-color var(--v5-duration) ease;
}
.experience-card a:hover { color: var(--v5-gold) !important; border-color: var(--v5-gold); }

/* ─────────────────────────────────────────────────────────────
   GALLERY GRID v5
───────────────────────────────────────────────────────────── */
.home-gallery-grid {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  grid-template-rows: 260px 260px;
  gap: 1rem;
}
.home-gallery-item {
  border-radius: 16px;
  overflow: hidden;
  position: relative;
  display: block;
  box-shadow: var(--v5-shadow-card);
}
.home-gallery-item--tall { grid-row: span 2; }
.home-gallery-item img {
  width: 100%; height: 100%;
  object-fit: cover;
  transition: transform 0.6s var(--v5-ease-luxury);
  display: block;
}
.home-gallery-item:hover img { transform: scale(1.06); }
.home-gallery-item__overlay {
  position: absolute; inset: 0;
  background: linear-gradient(to top, rgba(13,33,55,0.6) 0%, transparent 50%);
  opacity: 0;
  display: flex; align-items: flex-end; justify-content: flex-end;
  padding: 1rem;
  transition: opacity 0.35s ease;
}
.home-gallery-item__overlay svg { filter: drop-shadow(0 2px 4px rgba(0,0,0,0.4)); }
.home-gallery-item:hover .home-gallery-item__overlay { opacity: 1; }
@media (max-width: 640px) {
  .home-gallery-grid { grid-template-columns: repeat(2,1fr); grid-template-rows: auto; }
  .home-gallery-item--tall { grid-row: span 1; }
  .home-gallery-item { aspect-ratio: 4/3; }
}

/* Full gallery masonry */
.gallery-masonry { columns: 4; column-gap: 0.875rem; }
.gallery-item { break-inside: avoid; margin-bottom: 0.875rem; border-radius: 14px; overflow: hidden; position: relative; cursor: pointer; transition: transform 0.35s ease, opacity 0.35s ease; }
.gallery-item__img-wrap img { width: 100%; height: auto; display: block; border-radius: 14px; transition: transform 0.5s var(--v5-ease-luxury); }
.gallery-item:hover .gallery-item__img-wrap img { transform: scale(1.04); }
.gallery-item__overlay { position: absolute; inset: 0; background: linear-gradient(to top, rgba(13,33,55,0.75), transparent 55%); opacity: 0; display: flex; flex-direction: column; justify-content: flex-end; padding: 1.25rem; border-radius: 14px; transition: opacity 0.35s ease; }
.gallery-item:hover .gallery-item__overlay { opacity: 1; }
.gallery-item__zoom { width: 42px; height: 42px; background: rgba(255,255,255,0.12); border: 1.5px solid rgba(255,255,255,0.35); border-radius: 50%; display: flex; align-items: center; justify-content: center; backdrop-filter: blur(6px); align-self: flex-end; margin-bottom: 0.5rem; }
.gallery-item__caption { font-size: 0.72rem; color: rgba(255,255,255,0.85); margin: 0; line-height: 1.4; }
@media (max-width: 1024px) { .gallery-masonry { columns: 3; } }
@media (max-width: 640px)  { .gallery-masonry { columns: 2; column-gap: 0.5rem; } .gallery-item { margin-bottom: 0.5rem; } }

/* Filter buttons */
.gallery-filters { display: flex; gap: 0.75rem; flex-wrap: wrap; margin-bottom: 3rem; }
.gallery-filter-btn {
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 0.6rem 1.35rem;
  border-radius: var(--v5-radius-pill);
  border: 1.5px solid rgba(13,33,55,0.15);
  background: var(--v5-warm-white);
  color: var(--v5-stone);
  cursor: pointer;
  transition: all var(--v5-duration) var(--v5-ease-luxury);
}
.gallery-filter-btn:hover { border-color: var(--v5-navy); color: var(--v5-navy); }
.gallery-filter-btn.active {
  background: var(--v5-navy);
  color: #fff;
  border-color: var(--v5-navy);
  box-shadow: 0 4px 16px rgba(13,33,55,0.2);
}

/* ─────────────────────────────────────────────────────────────
   VIRTUAL TOUR v5
───────────────────────────────────────────────────────────── */
.virtual-tour-section { position: relative; overflow: hidden; min-height: 520px; display: flex; align-items: center; justify-content: center; }
.virtual-tour-bg { position: absolute; inset: 0; z-index: 0; }
.virtual-tour-bg::after { content: ''; position: absolute; inset: 0; background: linear-gradient(to bottom, rgba(13,33,55,0.65), rgba(13,33,55,0.82)); z-index: 1; }
.virtual-tour-bg img { width: 100%; height: 100%; object-fit: cover; }
.virtual-tour-content { position: relative; z-index: 2; text-align: center; padding: 5rem 2rem; max-width: 700px; }
.virtual-tour-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.875rem;
  background: linear-gradient(135deg, var(--v5-gold), var(--v5-gold-dark));
  color: var(--v5-navy);
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 1rem 2.25rem;
  border-radius: var(--v5-radius-sm);
  text-decoration: none;
  box-shadow: var(--v5-shadow-gold);
  transition: all var(--v5-duration) var(--v5-ease-spring);
}
.virtual-tour-btn:hover { transform: translateY(-3px) scale(1.02); box-shadow: 0 16px 48px rgba(201,168,76,0.5); }
.virtual-tour-play { font-size: 1.1rem; }

/* ─────────────────────────────────────────────────────────────
   DINING SPLIT v5
───────────────────────────────────────────────────────────── */
.dining-split {
  display: grid;
  grid-template-columns: 1fr 1.05fr;
  gap: 5rem;
  align-items: center;
}
@media (max-width: 900px) { .dining-split { grid-template-columns: 1fr; gap: 3rem; } }

/* Dining list items */
.dining-split li svg,
.dining-split li [aria-hidden] { color: var(--v5-gold); }

/* ─────────────────────────────────────────────────────────────
   TESTIMONIALS v5 — Emotional slider
───────────────────────────────────────────────────────────── */
.section--alt .testimonial-carousel { overflow: hidden; }
.testimonial-track { display: flex; gap: 1.5rem; transition: transform 0.55s cubic-bezier(.4,0,.2,1); will-change: transform; }
.testimonial-card {
  flex: 0 0 calc(33.333% - 1rem);
  background: var(--v5-warm-white);
  border-radius: var(--v5-radius-card);
  padding: 2.25rem 2rem;
  box-shadow: var(--v5-shadow-card);
  border: 1px solid rgba(13,33,55,0.05);
  transition: transform var(--v5-duration) var(--v5-ease-spring), box-shadow var(--v5-duration) ease;
  position: relative;
  overflow: hidden;
}
.testimonial-card::before {
  content: '\201C';
  position: absolute;
  top: 1rem; right: 1.5rem;
  font-family: Georgia, serif;
  font-size: 6rem;
  line-height: 1;
  color: rgba(201,168,76,0.1);
  pointer-events: none;
  font-weight: 900;
}
.testimonial-card:hover { transform: translateY(-6px); box-shadow: var(--v5-shadow-hover); }
.testimonial-rating .star { color: var(--v5-gold); font-size: 0.9rem; }
.testimonial-text { font-size: 0.9rem; line-height: 1.8; color: var(--v5-stone); font-style: italic; margin: 1rem 0 1.5rem; }
.testimonial-name { font-family: 'Playfair Display', Georgia, serif; font-size: 0.95rem; color: var(--v5-navy); font-weight: 700; }
.testimonial-meta { font-size: 0.72rem; color: var(--v5-stone); letter-spacing: 0.04em; }
.testimonial-avatar { width: 48px; height: 48px; border-radius: 50%; overflow: hidden; border: 2px solid rgba(201,168,76,0.3); flex-shrink: 0; }

/* Carousel dots */
.testimonial-dot.active { background: var(--v5-navy) !important; transform: scale(1.4) !important; }

/* Review platform badges */
.section--alt [style*="border-radius:var(--radius-full)"] {
  border-radius: 12px !important;
  padding: 1rem 1.5rem !important;
  border: 1px solid rgba(13,33,55,0.06) !important;
  box-shadow: var(--v5-shadow-card) !important;
  background: var(--v5-warm-white) !important;
}

@media (max-width: 1024px) { .testimonial-card { flex: 0 0 calc(50% - 0.75rem); } }
@media (max-width: 640px)  { .testimonial-card { flex: 0 0 100%; } }

/* ─────────────────────────────────────────────────────────────
   AWARDS TICKER v5
───────────────────────────────────────────────────────────── */
.awards-bar {
  background: var(--v5-cream);
  border-top: 1px solid rgba(13,33,55,0.06);
  border-bottom: 1px solid rgba(13,33,55,0.06);
  padding: 1rem 0;
  overflow: hidden;
}
.award-item { color: var(--v5-stone); font-size: 0.75rem; font-weight: 600; letter-spacing: 0.06em; white-space: nowrap; display: flex; align-items: center; gap: 0.5rem; padding: 0 2rem; }
.award-item-icon { font-size: 1rem; }

/* ─────────────────────────────────────────────────────────────
   NEWSLETTER v5
───────────────────────────────────────────────────────────── */
.newsletter-section {
  background: linear-gradient(135deg, var(--v5-navy) 0%, #0a1e33 100%);
  position: relative;
  overflow: hidden;
}
.newsletter-section::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--v5-gold), transparent);
}
.newsletter-section::after {
  content: '';
  position: absolute;
  bottom: -80px; right: -80px;
  width: 300px; height: 300px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(201,168,76,0.08) 0%, transparent 70%);
  pointer-events: none;
}
.newsletter-inner { display: flex; align-items: center; gap: 4rem; flex-wrap: wrap; padding: var(--v5-section-pad-sm) 0; }
.newsletter-input {
  flex: 1;
  min-width: 240px;
  padding: 0.875rem 1.25rem;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.15);
  border-radius: var(--v5-radius-sm);
  color: #fff;
  font-size: 0.875rem;
  transition: border-color var(--v5-duration) ease, background var(--v5-duration) ease;
  outline: none;
}
.newsletter-input::placeholder { color: rgba(255,255,255,0.35); }
.newsletter-input:focus { border-color: var(--v5-gold); background: rgba(255,255,255,0.08); }

/* ─────────────────────────────────────────────────────────────
   FINAL CTA SECTION v5
───────────────────────────────────────────────────────────── */
.final-cta-section {
  background: linear-gradient(135deg, var(--v5-cream) 0%, #fff 100%);
  border-top: 1px solid rgba(13,33,55,0.06);
  text-align: center;
}

/* ─────────────────────────────────────────────────────────────
   FOOTER v5 — Luxury dark
───────────────────────────────────────────────────────────── */
.site-footer { background: var(--v5-navy); color: rgba(255,255,255,0.65); }
.footer-top { padding: var(--v5-section-pad) 0 4rem; }
.footer-grid { display: grid; grid-template-columns: 2fr 1fr 1fr 1.2fr; gap: 3rem; }
.footer-col-title {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 1rem;
  color: #fff;
  font-weight: 600;
  margin-bottom: 1.25rem;
  letter-spacing: 0.02em;
  position: relative;
  padding-bottom: 0.75rem;
}
.footer-col-title::after {
  content: '';
  position: absolute;
  bottom: 0; left: 0;
  width: 30px; height: 1.5px;
  background: var(--v5-gold);
  border-radius: 2px;
}
.footer-menu { list-style: none; }
.footer-menu li { margin-bottom: 0.625rem; }
.footer-menu a {
  font-size: 0.82rem;
  color: rgba(255,255,255,0.55);
  text-decoration: none;
  transition: color var(--v5-duration) ease, padding-left var(--v5-duration) ease;
  display: inline-block;
}
.footer-menu a:hover { color: var(--v5-gold-light); padding-left: 4px; }
.footer-about { font-size: 0.82rem; line-height: 1.8; color: rgba(255,255,255,0.5); margin: 1.25rem 0; }
.footer-social { display: flex; gap: 0.75rem; }
.footer-social a {
  width: 38px; height: 38px;
  border-radius: 50%;
  background: rgba(255,255,255,0.07);
  border: 1px solid rgba(255,255,255,0.1);
  display: flex; align-items: center; justify-content: center;
  color: rgba(255,255,255,0.6);
  transition: all var(--v5-duration) ease;
}
.footer-social a:hover { background: var(--v5-gold); border-color: var(--v5-gold); color: var(--v5-navy); transform: translateY(-3px); }
.footer-bottom {
  display: flex; align-items: center; justify-content: space-between;
  gap: 1rem; flex-wrap: wrap;
  padding: 1.5rem 0;
  border-top: 1px solid rgba(255,255,255,0.06);
}
.footer-copyright { font-size: 0.75rem; color: rgba(255,255,255,0.35); }
.footer-bottom-links { display: flex; gap: 1.5rem; }
.footer-bottom-links a { font-size: 0.72rem; color: rgba(255,255,255,0.35); text-decoration: none; transition: color var(--v5-duration) ease; }
.footer-bottom-links a:hover { color: var(--v5-gold-light); }
.footer-contact-item { display: flex; gap: 0.625rem; align-items: flex-start; margin-bottom: 0.875rem; font-size: 0.82rem; }
.footer-contact-icon { flex-shrink: 0; margin-top: 0.1rem; }
.footer-contact-link { transition: color var(--v5-duration) ease; }
.footer-contact-link:hover { color: var(--v5-gold-light) !important; }

@media (max-width: 1024px) { .footer-grid { grid-template-columns: 1fr 1fr; gap: 2.5rem; } }
@media (max-width: 640px)  { .footer-grid { grid-template-columns: 1fr; gap: 2rem; } .footer-top { padding-top: 3rem; } }

/* ─────────────────────────────────────────────────────────────
   MOBILE BOOKING BAR v5 — Call | WhatsApp | Book Now
───────────────────────────────────────────────────────────── */
.mobile-book-bar {
  display: none;
  position: fixed;
  bottom: 0; left: 0; right: 0;
  z-index: 9980;
  background: var(--v5-navy);
  padding: 0.75rem 1rem;
  padding-bottom: calc(0.75rem + env(safe-area-inset-bottom, 0px));
  gap: 0.625rem;
  align-items: center;
  box-shadow: 0 -4px 24px rgba(13,33,55,0.3);
  border-top: 1px solid rgba(201,168,76,0.25);
}

/* Three-button mobile bar */
.mobile-book-bar-phone a,
.mobile-book-bar > a {
  flex: 1;
  display: flex !important;
  align-items: center;
  justify-content: center;
  gap: 0.375rem;
  border-radius: 10px;
  text-decoration: none;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  padding: 0.7rem 0.5rem;
  transition: all 0.2s ease;
}

.mobile-book-bar > a:first-child {
  background: linear-gradient(135deg, var(--v5-gold), var(--v5-gold-dark));
  color: var(--v5-navy) !important;
  box-shadow: 0 4px 16px rgba(201,168,76,0.35);
}

.mobile-book-bar-phone {
  display: flex;
  flex: 1;
}
.mobile-book-bar-phone a {
  background: rgba(255,255,255,0.08);
  color: rgba(255,255,255,0.88) !important;
  border: 1px solid rgba(255,255,255,0.12);
}

@media (max-width: 768px) {
  .mobile-book-bar { display: flex !important; }
  body { padding-bottom: calc(62px + env(safe-area-inset-bottom, 0px)); }
}

/* ─────────────────────────────────────────────────────────────
   WHATSAPP FLOAT BUTTON v5
───────────────────────────────────────────────────────────── */
.whatsapp-float {
  position: fixed;
  bottom: 5.5rem;
  right: 1.5rem;
  z-index: 9970;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 0.5rem;
}

.whatsapp-tooltip {
  background: var(--v5-navy);
  color: #fff;
  font-size: 0.72rem;
  font-weight: 600;
  padding: 0.4rem 0.875rem;
  border-radius: var(--v5-radius-pill);
  white-space: nowrap;
  opacity: 0;
  transform: translateX(8px);
  transition: opacity 0.25s ease, transform 0.25s ease;
  pointer-events: none;
  box-shadow: var(--v5-shadow-card);
}

.whatsapp-float:hover .whatsapp-tooltip {
  opacity: 1;
  transform: translateX(0);
}

.whatsapp-float-btn {
  width: 56px;
  height: 56px;
  background: #25D366;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 6px 24px rgba(37,211,102,0.45);
  transition: all var(--v5-duration) var(--v5-ease-spring);
  animation: waPulse 3s ease-in-out infinite;
}
.whatsapp-float-btn:hover { transform: scale(1.12); box-shadow: 0 10px 36px rgba(37,211,102,0.55); animation: none; }

@keyframes waPulse {
  0%,100% { box-shadow: 0 6px 24px rgba(37,211,102,0.45), 0 0 0 0 rgba(37,211,102,0.3); }
  50%      { box-shadow: 0 6px 24px rgba(37,211,102,0.45), 0 0 0 12px rgba(37,211,102,0); }
}

@media (max-width: 768px) {
  .whatsapp-float { bottom: 5rem; right: 1rem; }
  .whatsapp-float-btn { width: 50px; height: 50px; }
}

/* ─────────────────────────────────────────────────────────────
   FLOATING CALL BUTTON v5 (mobile only)
───────────────────────────────────────────────────────────── */
.float-call-btn {
  display: none;
  position: fixed;
  bottom: 5rem;
  left: 1.5rem;
  z-index: 9970;
  width: 52px;
  height: 52px;
  background: var(--v5-navy);
  border-radius: 50%;
  align-items: center;
  justify-content: center;
  box-shadow: var(--v5-shadow-float);
  border: 2px solid rgba(201,168,76,0.3);
  text-decoration: none;
  color: var(--v5-gold-light);
  font-size: 1.4rem;
  transition: all var(--v5-duration) var(--v5-ease-spring);
}
.float-call-btn:hover { transform: scale(1.1); border-color: var(--v5-gold); }

@media (max-width: 768px) { .float-call-btn { display: flex !important; } }

/* ─────────────────────────────────────────────────────────────
   SCROLL PROGRESS BAR v5
───────────────────────────────────────────────────────────── */
.scroll-progress {
  position: fixed;
  top: 0; left: 0; right: 0;
  height: 2.5px;
  z-index: 9999;
  background: rgba(255,255,255,0.1);
}
.scroll-progress-bar {
  height: 100%;
  background: linear-gradient(90deg, var(--v5-gold-dark), var(--v5-gold-light), var(--v5-gold-dark));
  background-size: 200% 100%;
  animation: progressShimmer 2s linear infinite;
  width: 0%;
  transition: width 0.1s linear;
  border-radius: 0 2px 2px 0;
}
@keyframes progressShimmer { 0% { background-position: 200% 0; } 100% { background-position: 0% 0; } }

/* ─────────────────────────────────────────────────────────────
   PAGE HERO (inner pages) v5
───────────────────────────────────────────────────────────── */
.page-hero {
  position: relative;
  min-height: 480px;
  display: flex;
  align-items: flex-end;
  overflow: hidden;
}
.page-hero-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.page-hero-bg img { width: 100%; height: 100%; object-fit: cover; }
.page-hero-bg::after {
  content: '';
  position: absolute; inset: 0;
  background: linear-gradient(to top, rgba(13,33,55,0.88) 0%, rgba(13,33,55,0.45) 50%, rgba(13,33,55,0.2) 100%);
}
.page-hero-content {
  position: relative;
  z-index: 2;
  padding: 5rem 0 4rem;
}
.page-hero-title { font-family: 'Playfair Display', Georgia, serif; font-size: clamp(2rem, 5vw, 3.5rem); color: #fff; font-weight: 800; margin: 0.5rem 0; text-shadow: 0 2px 20px rgba(0,0,0,0.3); }
.page-hero-subtitle { font-size: 1rem; color: rgba(255,255,255,0.75); line-height: 1.7; margin-top: 0.75rem; max-width: 560px; }

/* ─────────────────────────────────────────────────────────────
   BOOKING PAGE v5
───────────────────────────────────────────────────────────── */
.booking-page-layout { display: grid; grid-template-columns: 1fr 380px; gap: 3rem; align-items: start; }
.booking-page-sidebar { position: sticky; top: calc(76px + 1.5rem); }
.booking-sidebar-card {
  background: var(--v5-warm-white);
  border-radius: var(--v5-radius-card);
  padding: 1.75rem;
  box-shadow: var(--v5-shadow-card);
  border: 1px solid rgba(13,33,55,0.06);
  margin-bottom: 1.5rem;
}
.booking-sidebar-card__title {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 1.1rem;
  color: var(--v5-navy);
  margin-bottom: 1rem;
  padding-bottom: 0.75rem;
  border-bottom: 1.5px solid var(--v5-gold);
}
@media (max-width: 1024px) { .booking-page-layout { grid-template-columns: 1fr; } .booking-page-sidebar { position: static; } }

/* ─────────────────────────────────────────────────────────────
   CONTACT PAGE v5 — Split map layout
───────────────────────────────────────────────────────────── */
iframe[src*="google.com/maps"] {
  border-radius: 16px;
  width: 100%;
  min-height: 380px;
  display: block;
  border: none;
  box-shadow: var(--v5-shadow-card);
}

/* ─────────────────────────────────────────────────────────────
   MOBILE v5 — Full responsive
───────────────────────────────────────────────────────────── */
@media (min-width: 769px) {
  .main-nav { display: flex !important; }
  .mobile-menu-toggle { display: none !important; }
  .mobile-book-bar { display: none !important; }
  .float-call-btn { display: none !important; }
  body { padding-bottom: 0 !important; }
}

@media (max-width: 768px) {
  .section { padding: 3rem 0; }
  .section--dark .section { padding: 3rem 0; }
  .grid-2, .grid-3, .grid-4 { grid-template-columns: 1fr !important; gap: 1.25rem !important; }
  .stats-grid { grid-template-columns: repeat(2,1fr) !important; }
  .about-snippet { grid-template-columns: 1fr !important; gap: 2rem !important; }
  .dining-split { grid-template-columns: 1fr !important; gap: 2rem !important; }
  .newsletter-inner { flex-direction: column !important; gap: 2rem !important; }
  .newsletter-form { flex-direction: column; }
  .newsletter-input { min-width: 0; width: 100%; }
  .footer-grid { grid-template-columns: 1fr !important; gap: 2rem !important; }
  .footer-bottom { flex-direction: column; text-align: center; }
  .footer-legal, .footer-bottom-links { justify-content: center; }
  [style*="grid-template-columns:1fr 1fr"],
  [style*="grid-template-columns:2fr 1fr"],
  [style*="grid-template-columns:1fr 1.5fr"] {
    grid-template-columns: 1fr !important;
    gap: 2rem !important;
  }
  [style*="position:sticky"] { position: static !important; }
  .booking-page-layout { grid-template-columns: 1fr !important; }
  .page-hero { min-height: 340px; }
  .page-hero-title { font-size: clamp(1.5rem, 6vw, 2.25rem) !important; }
  .gallery-filter-btn { font-size: 0.68rem; padding: 0.5rem 0.875rem; }
  .btn--lg { padding: 0.875rem 1.75rem; font-size: 0.78rem; }
  .hero-stats { gap: 1.5rem; }
  .hero-title { font-size: clamp(1.8rem, 8vw, 2.8rem); }
}

@media (max-width: 480px) {
  .amenity-card { padding: 1.25rem 1rem !important; }
  .amenity-icon { font-size: 1.75rem !important; }
  .room-card__body { padding: 1.25rem; }
  .stat-number { font-size: 1.75rem !important; }
}

/* Safe area support */
@supports (padding: env(safe-area-inset-bottom)) {
  .mobile-book-bar { padding-bottom: calc(0.75rem + env(safe-area-inset-bottom)); }
  @media (max-width: 768px) { body { padding-bottom: calc(62px + env(safe-area-inset-bottom)); } }
}

/* Focus states */
:focus-visible { outline: 2px solid var(--v5-gold); outline-offset: 3px; border-radius: 4px; }
button:focus-visible, a:focus-visible { outline: 2px solid var(--v5-gold); }

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: 0.01ms !important; transition-duration: 0.1ms !important; }
  .whatsapp-float-btn { animation: none; }
  .scroll-progress-bar { animation: none; }
}

/* Landscape phone */
@media (max-height: 500px) and (orientation: landscape) {
  .hero-cinematic { min-height: 100vw; }
  .hero-title { font-size: 1.5rem; }
  .hero-subtitle { display: none; }
  .hero-stats { display: none; }
  .hero-content { padding-bottom: 7rem; }
}

/* ── design-v6.css (31,877b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v6
   Reviews · Room Cards · Packages · Events · Mobile Menu Fix
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   CUSTOMIZER-CONTROLLED BUTTON & ACCENT COLORS
   These cascade from CSS vars set in functions.php inline style
───────────────────────────────────────────────────────────── */
:root {
  /* v6 override — inherits from customizer CSS vars */
  --v6-btn-bg:       var(--color-accent, #d4af37);
  --v6-btn-text:     var(--color-primary, #1a3a5c);
  --v6-btn-hover:    var(--color-accent-dark, #b8960f);
  --v6-primary:      var(--color-primary, #1a3a5c);
  --v6-accent:       var(--color-accent, #d4af37);
  --v6-accent-light: var(--color-accent-light, #e8cb5a);

  --v6-shadow-review: 0 4px 24px rgba(0,0,0,0.08);
  --v6-radius-review: 16px;
}

/* ─────────────────────────────────────────────────────────────
   MOBILE MENU — FIXED (blur/transparent issue resolved)
   Hard override: nav must be SOLID dark on mobile, no blur
───────────────────────────────────────────────────────────── */

/* Desktop: always show nav normally */
@media (min-width: 769px) {
  .main-nav {
    display: flex !important;
    position: static !important;
    background: none !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    transform: none !important;
    padding: 0 !important;
    overflow: visible !important;
    height: auto !important;
    width: auto !important;
  }

  .mobile-menu-toggle { display: none !important; }
  .mobile-overlay     { display: none !important; }
  .mobile-book-bar    { display: none !important; }
  .float-call-btn     { display: none !important; }
  body                { padding-bottom: 0 !important; }
}

/* Mobile: solid full-screen panel — NO blur, NO transparency */
@media (max-width: 768px) {
  .main-nav {
    /* Position */
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    height: 100dvh !important;

    /* SOLID background — no backdrop-filter, no transparency */
    background: #0d2137 !important;
    background: var(--v6-primary, #1a3a5c) !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;

    /* Stack above everything */
    z-index: 9995 !important;

    /* Hidden state */
    opacity: 0 !important;
    pointer-events: none !important;
    transform: translateX(-100%) !important;
    transition: transform 0.38s cubic-bezier(0.4,0,0.2,1),
                opacity 0.3s ease !important;

    /* Layout */
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    padding: 5rem 2rem 3rem !important;
  }

  /* OPEN state */
  .main-nav.is-open {
    opacity: 1 !important;
    pointer-events: auto !important;
    transform: translateX(0%) !important;
  }

  /* Nav list */
  .main-nav .nav-menu {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 320px !important;
    gap: 0 !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  .main-nav .nav-menu > .menu-item {
    width: 100% !important;
    border-bottom: 1px solid rgba(255,255,255,0.08) !important;
    position: relative !important;
  }
  .main-nav .nav-menu > .menu-item:first-child {
    border-top: 1px solid rgba(255,255,255,0.08) !important;
  }

  .main-nav .nav-menu > .menu-item > a {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 1rem 0 !important;
    font-size: 1.05rem !important;
    font-weight: 600 !important;
    letter-spacing: 0.06em !important;
    text-transform: uppercase !important;
    color: rgba(255,255,255,0.92) !important;
    text-decoration: none !important;
    width: 100% !important;
    transition: color 0.2s !important;
  }

  .main-nav .nav-menu > .menu-item > a::after {
    display: none !important;
  }

  .main-nav .nav-menu > .menu-item > a:hover,
  .main-nav .nav-menu > .menu-item.current-menu-item > a {
    color: var(--v6-accent, #d4af37) !important;
  }

  /* Sub-menu: hidden by default, expand on .sub-open */
  .main-nav .nav-menu .sub-menu {
    position: static !important;
    opacity: 1 !important;
    visibility: hidden !important;
    transform: none !important;
    pointer-events: none !important;
    box-shadow: none !important;
    background: rgba(255,255,255,0.04) !important;
    border-radius: 8px !important;
    padding: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    transition: max-height 0.35s ease, visibility 0.35s, padding 0.25s !important;
    backdrop-filter: none !important;
    border: none !important;
    width: 100% !important;
    left: 0 !important;
  }
  .main-nav .nav-menu .sub-menu::before { display: none !important; }

  .main-nav .nav-menu .menu-item-has-children.sub-open > .sub-menu {
    visibility: visible !important;
    max-height: 500px !important;
    pointer-events: auto !important;
    padding: 0.5rem 0 !important;
    margin-bottom: 0.5rem !important;
  }

  .main-nav .nav-menu .sub-menu .menu-item > a {
    color: rgba(255,255,255,0.7) !important;
    padding: 0.65rem 1rem !important;
    font-size: 0.875rem !important;
    letter-spacing: 0.04em !important;
    border-radius: 0 !important;
    display: block !important;
  }
  .main-nav .nav-menu .sub-menu .menu-item > a:hover {
    color: var(--v6-accent, #d4af37) !important;
    background: rgba(255,255,255,0.05) !important;
    padding-left: 1.5rem !important;
  }

  /* Mobile close button */
  .mobile-nav-close {
    display: flex !important;
    position: fixed !important;
    top: 1rem !important;
    right: 1rem !important;
    z-index: 9999 !important;
    width: 44px !important;
    height: 44px !important;
    background: rgba(255,255,255,0.1) !important;
    border: 1.5px solid rgba(255,255,255,0.2) !important;
    border-radius: 50% !important;
    color: #fff !important;
    font-size: 1.1rem !important;
    cursor: pointer !important;
    align-items: center !important;
    justify-content: center !important;
    transition: background 0.2s !important;
  }
  .mobile-nav-close:hover { background: rgba(255,255,255,0.2) !important; }

  /* Mobile overlay */
  .mobile-overlay {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.6);
    z-index: 9990;
    opacity: 0;
    transition: opacity 0.3s ease;
  }
  .mobile-overlay.is-active { display: block; opacity: 1; }

  /* Mobile bar */
  .mobile-book-bar { display: flex !important; }
  body { padding-bottom: calc(64px + env(safe-area-inset-bottom,0px)); }
}

/* ─────────────────────────────────────────────────────────────
   ROOM CARD v6 — NPR price badge + feature icons
───────────────────────────────────────────────────────────── */

/* NPR price badge top-left */
.room-card__price-badge {
  position: absolute;
  top: 0.875rem;
  left: 0.875rem;
  background: rgba(13,33,55,0.88);
  backdrop-filter: blur(8px);
  color: #fff;
  border-radius: 8px;
  padding: 0.4rem 0.75rem;
  display: flex;
  flex-direction: column;
  gap: 0.05rem;
  z-index: 2;
  border: 1px solid rgba(201,168,76,0.3);
  line-height: 1.2;
}
.room-card__price-badge span:first-child { font-size: 0.58rem; opacity: 0.7; letter-spacing: 0.08em; text-transform: uppercase; }
.room-card__price-badge strong { font-size: 0.95rem; color: var(--v6-accent-light, #e8cb5a); font-weight: 800; }
.room-card__price-badge span:last-child { font-size: 0.58rem; opacity: 0.7; }

/* Hover overlay */
.room-card__hover-overlay {
  position: absolute;
  inset: 0;
  background: rgba(13,33,55,0);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.35s ease;
  z-index: 3;
}
.rco-link {
  background: rgba(201,168,76,0.92);
  color: #0d2137;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 0.6rem 1.25rem;
  border-radius: 8px;
  text-decoration: none;
  opacity: 0;
  transform: translateY(8px);
  transition: opacity 0.3s ease, transform 0.3s ease;
}
.room-card:hover .room-card__hover-overlay { background: rgba(13,33,55,0.35); }
.room-card:hover .rco-link { opacity: 1; transform: translateY(0); }

/* Feature icons */
.room-card__features {
  display: flex;
  gap: 0.5rem;
  flex-wrap: wrap;
  margin-bottom: 1rem;
}
.rcf-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.2rem;
  background: var(--v5-cream, #faf7f2);
  border-radius: 10px;
  padding: 0.5rem 0.65rem;
  min-width: 58px;
  flex: 1;
  max-width: 80px;
  border: 1px solid rgba(13,33,55,0.06);
  transition: background 0.2s, border-color 0.2s;
}
.rcf-item:hover { background: rgba(201,168,76,0.1); border-color: rgba(201,168,76,0.3); }
.rcf-icon { font-size: 1.15rem; line-height: 1; }
.rcf-label { font-size: 0.58rem; font-weight: 600; letter-spacing: 0.04em; text-align: center; color: var(--v6-primary, #1a3a5c); line-height: 1.2; }

/* ─────────────────────────────────────────────────────────────
   GOOGLE-STYLE REVIEWS SECTION
───────────────────────────────────────────────────────────── */

.reviews-section { background: var(--v5-cream, #faf7f2); }

/* Overall score block */
.reviews-overall {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  justify-content: center;
  margin: 1.75rem 0 2.5rem;
  background: #fff;
  display: inline-flex;
  padding: 1.25rem 2rem;
  border-radius: 16px;
  box-shadow: 0 4px 20px rgba(0,0,0,0.08);
  border: 1px solid rgba(0,0,0,0.05);
}
.reviews-score {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 3.5rem;
  font-weight: 800;
  color: var(--v6-primary, #1a3a5c);
  line-height: 1;
}
.reviews-score-right { display: flex; flex-direction: column; gap: 0.3rem; }
.reviews-stars { font-size: 1.25rem; letter-spacing: 0.08em; color: #f4a83a; }
.reviews-count { font-size: 0.78rem; color: #666; }
.reviews-platforms { display: flex; gap: 0.75rem; font-size: 0.72rem; font-weight: 600; color: #888; }

/* Rating breakdown bars */
.reviews-breakdown {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.875rem;
  margin-bottom: 3rem;
  max-width: 860px;
  margin-left: auto;
  margin-right: auto;
}
.rbd-item {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  background: #fff;
  padding: 0.75rem 1rem;
  border-radius: 10px;
  box-shadow: 0 2px 10px rgba(0,0,0,0.05);
}
.rbd-label { font-size: 0.72rem; font-weight: 600; color: var(--v6-primary, #1a3a5c); min-width: 70px; }
.rbd-bar { flex: 1; height: 6px; background: #e8e8e8; border-radius: 3px; overflow: hidden; }
.rbd-fill { height: 100%; background: linear-gradient(90deg, #c9a84c, #e0c97a); border-radius: 3px; transition: width 1.2s ease; }
.rbd-score { font-size: 0.78rem; font-weight: 700; color: var(--v6-primary, #1a3a5c); min-width: 28px; text-align: right; }

@media (max-width: 640px) { .reviews-breakdown { grid-template-columns: 1fr 1fr; } }
@media (max-width: 480px) { .reviews-breakdown { grid-template-columns: 1fr; } }

/* Review cards grid */
.reviews-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.25rem;
  margin-bottom: 3rem;
}
@media (max-width: 1024px) { .reviews-grid { grid-template-columns: repeat(2,1fr); } }
@media (max-width: 640px)  { .reviews-grid { grid-template-columns: 1fr; } }

.review-card {
  background: #fff;
  border-radius: var(--v6-radius-review);
  padding: 1.5rem;
  box-shadow: var(--v6-shadow-review);
  border: 1px solid rgba(0,0,0,0.05);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  position: relative;
  overflow: hidden;
}
.review-card::before {
  content: '"';
  position: absolute;
  top: 0.5rem; right: 1rem;
  font-family: Georgia, serif;
  font-size: 5rem;
  line-height: 1;
  color: rgba(201,168,76,0.1);
  font-weight: 900;
  pointer-events: none;
}
.review-card:hover { transform: translateY(-5px); box-shadow: 0 12px 36px rgba(0,0,0,0.1); }

.review-card__header {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin-bottom: 0.75rem;
}
.review-avatar {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-weight: 800;
  font-size: 1rem;
  flex-shrink: 0;
  font-family: 'Inter', sans-serif;
}
.review-meta { flex: 1; }
.review-name { display: block; font-size: 0.88rem; font-weight: 700; color: #222; }
.review-loc  { display: block; font-size: 0.72rem; color: #888; margin-top: 0.1rem; }

/* Source badges */
.review-source-badge {
  font-size: 0.65rem;
  font-weight: 700;
  padding: 0.25rem 0.6rem;
  border-radius: 999px;
  flex-shrink: 0;
  letter-spacing: 0.04em;
}
.review-src--google      { background: #e8f0fe; color: #1a73e8; }
.review-src--tripadvisor { background: #e6f7ef; color: #00af87; }
.review-src--bookingcom  { background: #e8f0fe; color: #003580; }

.review-stars { color: #f4a83a; font-size: 0.85rem; letter-spacing: 0.05em; margin-bottom: 0.6rem; }
.review-text  { font-size: 0.85rem; color: #555; line-height: 1.75; margin-bottom: 0.75rem; font-style: italic; }
.review-date  { font-size: 0.7rem; color: #aaa; }

/* Trust footer */
.reviews-footer {
  display: flex;
  justify-content: center;
  gap: 2rem;
  flex-wrap: wrap;
  background: var(--v6-primary, #1a3a5c);
  border-radius: 16px;
  padding: 2rem;
}
.reviews-trust-badge { text-align: center; }
.rtb-num { display: block; font-family: 'Playfair Display', Georgia, serif; font-size: 2rem; font-weight: 800; color: #e0c97a; line-height: 1; }
.rtb-lbl { display: block; font-size: 0.68rem; letter-spacing: 0.12em; text-transform: uppercase; color: rgba(255,255,255,0.55); margin-top: 0.35rem; font-weight: 600; }

/* ─────────────────────────────────────────────────────────────
   PACKAGES PAGE v6
───────────────────────────────────────────────────────────── */

/* Filter tabs */
.pkg-filter-tabs {
  display: flex;
  gap: 0.75rem;
  flex-wrap: wrap;
  padding: 1.5rem 0;
  border-bottom: 1px solid rgba(13,33,55,0.08);
  margin-bottom: 0;
}
.pkg-filter-btn {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.6rem 1.25rem;
  border-radius: 999px;
  border: 1.5px solid rgba(13,33,55,0.15);
  background: #fff;
  color: #666;
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.05em;
  cursor: pointer;
  transition: all 0.25s ease;
}
.pkg-filter-btn:hover { border-color: var(--v6-primary,#1a3a5c); color: var(--v6-primary,#1a3a5c); }
.pkg-filter-btn.active {
  background: var(--v6-primary, #1a3a5c);
  color: #fff;
  border-color: var(--v6-primary, #1a3a5c);
  box-shadow: 0 4px 14px rgba(13,33,55,0.2);
}

/* Package cards grid */
.pkg-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
  padding-top: 2.5rem;
}
@media (max-width: 1024px) { .pkg-grid { grid-template-columns: repeat(2,1fr); } }
@media (max-width: 640px)  { .pkg-grid { grid-template-columns: 1fr; } }

.pkg-card {
  background: #fff;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 4px 24px rgba(0,0,0,0.09);
  border: 1px solid rgba(0,0,0,0.05);
  transition: transform 0.35s cubic-bezier(0.34,1.56,0.64,1), box-shadow 0.35s ease;
  display: flex;
  flex-direction: column;
}
.pkg-card:hover { transform: translateY(-8px); box-shadow: 0 20px 52px rgba(0,0,0,0.14); }

.pkg-card__img {
  position: relative;
  height: 220px;
  overflow: hidden;
}
.pkg-card__img img {
  width: 100%; height: 100%;
  object-fit: cover;
  transition: transform 0.6s ease;
  display: block;
}
.pkg-card:hover .pkg-card__img img { transform: scale(1.06); }

/* Tag (top-left) */
.pkg-card__tag {
  position: absolute;
  top: 0.875rem; left: 0.875rem;
  color: #fff;
  font-size: 0.7rem;
  font-weight: 700;
  padding: 0.3rem 0.75rem;
  border-radius: 999px;
  z-index: 2;
  letter-spacing: 0.05em;
}

/* Badge (top-right) */
.pkg-card__badge {
  position: absolute;
  top: 0.875rem; right: 0.875rem;
  background: #c9a84c;
  color: #0d2137;
  font-size: 0.65rem;
  font-weight: 800;
  padding: 0.25rem 0.7rem;
  border-radius: 999px;
  z-index: 2;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

/* Nights badge (bottom-right) */
.pkg-card__nights {
  position: absolute;
  bottom: 0.875rem; right: 0.875rem;
  background: rgba(13,33,55,0.82);
  color: #fff;
  font-size: 0.7rem;
  font-weight: 700;
  padding: 0.3rem 0.75rem;
  border-radius: 999px;
  backdrop-filter: blur(6px);
  z-index: 2;
}

.pkg-card__body {
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  flex: 1;
}
.pkg-card__title {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 1.2rem;
  color: #0d2137;
  margin-bottom: 0.3rem;
  font-weight: 700;
  line-height: 1.25;
}
.pkg-card__subtitle { font-size: 0.8rem; color: #888; margin-bottom: 1.1rem; }

/* Includes list */
.pkg-card__includes {
  list-style: none;
  margin: 0 0 1.5rem;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.45rem;
  flex: 1;
}
.pkg-card__includes li {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  font-size: 0.8rem;
  color: #555;
  line-height: 1.4;
}
.pkg-check {
  color: #27ae60;
  font-weight: 700;
  font-size: 0.85rem;
  flex-shrink: 0;
  margin-top: 0.05rem;
}

.pkg-card__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  border-top: 1px solid rgba(0,0,0,0.06);
  padding-top: 1rem;
  flex-wrap: wrap;
}
.pkg-price-amount {
  display: block;
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 1.25rem;
  font-weight: 800;
  color: #0d2137;
  line-height: 1.1;
}
.pkg-price-per { font-size: 0.7rem; color: #aaa; }

/* Packages CTA section */
.pkg-cta-section {
  background: linear-gradient(135deg, #0d2137 0%, #1a3a5c 100%);
  padding: 4rem 0;
  position: relative;
  overflow: hidden;
}
.pkg-cta-section::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, #c9a84c, transparent);
}
.pkg-cta-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  flex-wrap: wrap;
}
@media (max-width: 768px) { .pkg-cta-inner { flex-direction: column; text-align: center; } }

/* ─────────────────────────────────────────────────────────────
   EVENTS & VENUES PAGE v6
───────────────────────────────────────────────────────────── */

/* Quick nav pills */
.venue-quick-nav {
  background: #fff;
  border-bottom: 1px solid rgba(0,0,0,0.07);
  padding: 0.875rem 0;
  position: sticky;
  top: 76px;
  z-index: 500;
  box-shadow: 0 2px 10px rgba(0,0,0,0.06);
}
.venue-quick-nav__inner {
  display: flex;
  gap: 0.625rem;
  flex-wrap: wrap;
  align-items: center;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}
.venue-quick-nav__inner::-webkit-scrollbar { display: none; }
.venue-nav-pill {
  display: flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.45rem 1rem;
  border-radius: 999px;
  background: rgba(13,33,55,0.06);
  color: #1a3a5c;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-decoration: none;
  white-space: nowrap;
  transition: all 0.2s ease;
  border: 1px solid transparent;
}
.venue-nav-pill:hover {
  background: #1a3a5c;
  color: #fff;
  border-color: #1a3a5c;
}

/* Why grid */
.venue-why-grid {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 1.25rem;
  margin-top: 2rem;
}
@media (max-width: 768px) { .venue-why-grid { grid-template-columns: repeat(2,1fr); } }
@media (max-width: 480px) { .venue-why-grid { grid-template-columns: 1fr; } }

.venue-why-card {
  background: #fff;
  border-radius: 16px;
  padding: 1.75rem 1.5rem;
  box-shadow: 0 4px 20px rgba(0,0,0,0.07);
  border: 1px solid rgba(0,0,0,0.05);
  text-align: center;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.venue-why-card:hover { transform: translateY(-5px); box-shadow: 0 14px 40px rgba(0,0,0,0.1); }
.venue-why-icon { font-size: 2.25rem; margin-bottom: 0.875rem; display: block; }
.venue-why-card h3 { font-family: 'Playfair Display',Georgia,serif; font-size: 1rem; color: #0d2137; margin-bottom: 0.5rem; font-weight: 700; }
.venue-why-card p { font-size: 0.82rem; color: #666; line-height: 1.65; margin: 0; }

/* Event split section */
.event-section-split {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4.5rem;
  align-items: center;
}
.event-section-split--rev { direction: rtl; }
.event-section-split--rev > * { direction: ltr; }
@media (max-width: 900px) {
  .event-section-split, .event-section-split--rev {
    grid-template-columns: 1fr;
    direction: ltr;
    gap: 2.5rem;
  }
}

.event-section-img {
  position: relative;
  border-radius: 20px;
  overflow: visible;
}
.event-section-img img {
  width: 100%;
  border-radius: 20px;
  box-shadow: 0 20px 60px rgba(0,0,0,0.18);
  display: block;
  object-fit: cover;
}
.event-capacity-badge {
  position: absolute;
  bottom: -1.25rem; right: -1.25rem;
  background: #1a3a5c;
  border: 2px solid #c9a84c;
  border-radius: 14px;
  padding: 1rem 1.25rem;
  text-align: center;
  box-shadow: 0 10px 30px rgba(0,0,0,0.2);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.1rem;
}
.ecb-icon { font-size: 1.25rem; }
.ecb-num { font-family: 'Playfair Display',Georgia,serif; font-size: 1.75rem; font-weight: 800; color: #e0c97a; line-height: 1; }
.ecb-lbl { font-size: 0.6rem; letter-spacing: 0.12em; text-transform: uppercase; color: rgba(255,255,255,0.6); font-weight: 600; }

.event-section-content p { color: #666; line-height: 1.85; margin-bottom: 1.25rem; }

/* Feature list */
.event-feature-list { display: flex; flex-direction: column; gap: 0.5rem; margin: 1.25rem 0; }
.efl-item { display: flex; align-items: center; gap: 0.625rem; font-size: 0.875rem; color: #444; }
.efl-check { color: #27ae60; font-weight: 700; font-size: 1rem; flex-shrink: 0; }

/* Conference halls */
.conference-halls { display: flex; flex-direction: column; gap: 0.75rem; margin: 1.25rem 0; }
.conf-hall-card {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 0.875rem 1.25rem;
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 2px 10px rgba(0,0,0,0.07);
  border-left: 3px solid #c9a84c;
}
.conf-hall-icon { font-size: 1.5rem; flex-shrink: 0; }
.conf-hall-card strong { display: block; font-size: 0.9rem; font-weight: 700; color: #0d2137; margin-bottom: 0.15rem; }
.conf-hall-card span { font-size: 0.75rem; color: #888; }

/* Tech tags */
.event-tech-tags { display: flex; gap: 0.5rem; flex-wrap: wrap; margin-top: 1rem; }
.evt-tag {
  font-size: 0.7rem;
  font-weight: 600;
  padding: 0.3rem 0.75rem;
  border-radius: 999px;
  background: rgba(13,33,55,0.07);
  color: #1a3a5c;
  border: 1px solid rgba(13,33,55,0.1);
  letter-spacing: 0.04em;
}

/* Celebrations grid */
.celebration-grid {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: 1.5rem;
}
@media (max-width: 640px) { .celebration-grid { grid-template-columns: 1fr; } }

.cel-card {
  background: #fff;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 4px 24px rgba(0,0,0,0.09);
  transition: transform 0.35s ease, box-shadow 0.35s ease;
  display: flex;
  flex-direction: column;
}
.cel-card:hover { transform: translateY(-6px); box-shadow: 0 18px 48px rgba(0,0,0,0.13); }
.cel-card__img { position: relative; height: 200px; overflow: hidden; }
.cel-card__img img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s ease; display: block; }
.cel-card:hover .cel-card__img img { transform: scale(1.05); }
.cel-card__overlay { position: absolute; inset: 0; background: linear-gradient(to top, rgba(13,33,55,0.5), transparent 50%); }
.cel-icon-badge {
  position: absolute;
  top: 1rem; left: 1rem;
  width: 44px; height: 44px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.3rem;
  box-shadow: 0 4px 12px rgba(0,0,0,0.2);
  z-index: 2;
}
.cel-card__body { padding: 1.5rem; flex: 1; display: flex; flex-direction: column; }
.cel-card__title { font-family: 'Playfair Display',Georgia,serif; font-size: 1.15rem; color: #0d2137; font-weight: 700; margin-bottom: 0.5rem; }
.cel-card__desc { font-size: 0.82rem; color: #666; line-height: 1.7; flex: 1; margin-bottom: 1.25rem; }
.cel-card__footer { display: flex; align-items: center; justify-content: space-between; gap: 0.75rem; }
.cel-cap { font-size: 0.75rem; font-weight: 600; color: #888; }

/* Event enquiry section */
.event-enquiry-section {
  background: linear-gradient(135deg, #0d2137, #1a3a5c);
  padding: 5rem 0;
  position: relative;
}
.event-enquiry-section::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, #c9a84c, transparent);
}
.event-enquiry-inner {
  display: grid;
  grid-template-columns: 1fr 1.1fr;
  gap: 4rem;
  align-items: start;
}
@media (max-width: 900px) { .event-enquiry-inner { grid-template-columns: 1fr; gap: 2.5rem; } }

/* Form wrapper */
.event-enquiry-form-wrap {
  background: #fff;
  border-radius: 20px;
  padding: 2rem;
  box-shadow: 0 20px 60px rgba(0,0,0,0.2);
}
.event-enquiry-form { display: flex; flex-direction: column; gap: 1rem; }
.eqf-row { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
@media (max-width: 480px) { .eqf-row { grid-template-columns: 1fr; } }
.eqf-group { display: flex; flex-direction: column; gap: 0.4rem; }
.eqf-group label { font-size: 0.78rem; font-weight: 700; color: #1a3a5c; letter-spacing: 0.04em; }
.eqf-group input,
.eqf-group select,
.eqf-group textarea {
  padding: 0.75rem 1rem;
  border: 1.5px solid #e0e0e0;
  border-radius: 10px;
  font-size: 0.875rem;
  color: #333;
  background: #fafafa;
  transition: border-color 0.2s, background 0.2s;
  font-family: 'Inter', sans-serif;
  outline: none;
  width: 100%;
}
.eqf-group input:focus,
.eqf-group select:focus,
.eqf-group textarea:focus {
  border-color: #c9a84c;
  background: #fff;
}
.eqf-group textarea { resize: vertical; }

/* ─────────────────────────────────────────────────────────────
   FRONT-PAGE v6 — Reviews section spacing
───────────────────────────────────────────────────────────── */
.reviews-section .section-header.centered { margin-bottom: 0; }

/* Stats counter section on front-page — elevated dark card */
.stats-grid {
  border-radius: 20px;
  overflow: hidden;
}

/* ─────────────────────────────────────────────────────────────
   CUSTOMIZER EXTENDED — Button color overrides from vars
   These allow Customize → Colors to change button colors
───────────────────────────────────────────────────────────── */
.btn--primary,
.header-book-btn,
.btn-hero--primary,
.pkg-card__footer .btn--primary,
.cel-card__footer .btn--primary,
.availability-banner__btn {
  background: linear-gradient(135deg, var(--color-accent, #d4af37), var(--color-accent-dark, #b8960f)) !important;
  color: var(--color-primary, #1a3a5c) !important;
}
.btn--secondary {
  border-color: var(--color-primary, #1a3a5c) !important;
  color: var(--color-primary, #1a3a5c) !important;
}
.btn--secondary:hover {
  background: var(--color-primary, #1a3a5c) !important;
  color: #fff !important;
}

/* Site header uses primary color */
.site-header.header--transparent { 
  background: linear-gradient(180deg, rgba(var(--color-primary-rgb, 26,58,92), 0.55), transparent) !important;
}

/* ─────────────────────────────────────────────────────────────
   MOBILE FINAL OVERRIDES
───────────────────────────────────────────────────────────── */
@media (max-width: 768px) {
  /* Reviews */
  .reviews-overall { flex-direction: column; gap: 0.875rem; text-align: center; }
  .reviews-platforms { justify-content: center; }
  .reviews-footer { gap: 1.5rem; padding: 1.5rem; }

  /* Packages */
  .pkg-filter-tabs { gap: 0.5rem; overflow-x: auto; flex-wrap: nowrap; -webkit-overflow-scrolling: touch; scrollbar-width: none; padding: 1rem 0; }
  .pkg-filter-tabs::-webkit-scrollbar { display: none; }
  .pkg-filter-btn { flex-shrink: 0; font-size: 0.72rem; padding: 0.5rem 0.875rem; }

  /* Events */
  .venue-quick-nav { top: 60px; }
  .event-capacity-badge { bottom: 0.75rem; right: 0.75rem; }
  .event-enquiry-form-wrap { padding: 1.5rem; }

  /* Room card features */
  .room-card__features { gap: 0.375rem; }
  .rcf-item { min-width: 50px; padding: 0.4rem 0.5rem; }
  .rcf-label { font-size: 0.52rem; }

  /* Reviews breakdown */
  .rbd-item { padding: 0.6rem 0.75rem; }
  .rbd-label { min-width: 55px; font-size: 0.68rem; }

  /* Celebration grid */
  .celebration-grid { grid-template-columns: 1fr; }
}

@media (max-width: 480px) {
  .reviews-score { font-size: 2.75rem; }
  .rtb-num { font-size: 1.6rem; }
  .pkg-card__img { height: 180px; }
  .cel-card__img { height: 160px; }
  .venue-why-grid { grid-template-columns: 1fr 1fr; }
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
  .pkg-card, .cel-card, .review-card, .venue-why-card { transition: none !important; }
  .rbd-fill { transition: none !important; }
}

/* ── design-v7.css (71,749b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design System v7
   ══════════════════════════════════════════════════════════════
   Fixes: Design hierarchy · Spacing rhythm · Visual depth ·
   Micro-interactions · Mobile UX · Component system ·
   CTA strategy · Typography scale · Trust UI · Flow logic
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   DESIGN SYSTEM TOKENS v7
───────────────────────────────────────────────────────────── */
:root {
  /* Spacing Rhythm — 8pt grid */
  --sp-1:   0.5rem;   /*  8px */
  --sp-2:   1rem;     /* 16px */
  --sp-3:   1.5rem;   /* 24px */
  --sp-4:   2rem;     /* 32px */
  --sp-5:   2.5rem;   /* 40px */
  --sp-6:   3rem;     /* 48px */
  --sp-8:   4rem;     /* 64px */
  --sp-10:  5rem;     /* 80px */
  --sp-12:  6rem;     /* 96px */
  --sp-16:  8rem;     /* 128px */

  /* Section Spacing — Hierarchy System */
  --section-hero:    100vh;
  --section-xl:      clamp(6rem, 10vw, 10rem);
  --section-lg:      clamp(4.5rem, 7vw, 7rem);
  --section-md:      clamp(3rem, 5vw, 5rem);
  --section-sm:      clamp(2rem, 3vw, 3rem);
  --section-cta:     clamp(5rem, 8vw, 8rem);

  /* 12-column Grid */
  --grid-cols: 12;
  --grid-gutter: clamp(1rem, 2vw, 1.75rem);
  --container-max: 1320px;

  /* Elevation System */
  --elev-0: none;
  --elev-1: 0 1px 3px rgba(0,0,0,0.08), 0 1px 2px rgba(0,0,0,0.06);
  --elev-2: 0 4px 12px rgba(0,0,0,0.10), 0 2px 4px rgba(0,0,0,0.06);
  --elev-3: 0 10px 30px rgba(0,0,0,0.12), 0 4px 10px rgba(0,0,0,0.08);
  --elev-4: 0 20px 60px rgba(0,0,0,0.16), 0 8px 20px rgba(0,0,0,0.10);
  --elev-5: 0 32px 80px rgba(0,0,0,0.22), 0 12px 30px rgba(0,0,0,0.14);
  --elev-gold: 0 8px 32px rgba(201,168,76,0.40);
  --elev-gold-hover: 0 16px 48px rgba(201,168,76,0.55);

  /* Typography Scale — Modular (1.25 ratio) */
  --text-xs:   0.64rem;
  --text-sm:   0.8rem;
  --text-base: 1rem;
  --text-lg:   1.25rem;
  --text-xl:   1.563rem;
  --text-2xl:  1.953rem;
  --text-3xl:  2.441rem;
  --text-4xl:  3.052rem;
  --text-5xl:  3.815rem;
  --text-hero: clamp(2.5rem, 6.5vw, 5.5rem);

  /* Animation System */
  --dur-fast:   150ms;
  --dur-base:   300ms;
  --dur-slow:   500ms;
  --dur-xslow:  800ms;
  --ease-out:   cubic-bezier(0, 0, 0.2, 1);
  --ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
  --ease-luxury: cubic-bezier(0.25, 0.1, 0.25, 1);
  --ease-reveal: cubic-bezier(0.16, 1, 0.3, 1);

  /* Colors */
  --c-navy:    #0d2137;
  --c-navy-2:  #1a3a5c;
  --c-gold:    #c9a84c;
  --c-gold-lt: #e0c97a;
  --c-gold-dk: #a07828;
  --c-cream:   #faf7f2;
  --c-warm:    #fffef9;
  --c-stone:   #8a8078;
  --c-mist:    #f0ede8;
  --c-white:   #ffffff;
  --c-text:    #2c2c2c;
  --c-text-2:  #555;
  --c-text-3:  #888;

  /* Radius */
  --r-sm:   8px;
  --r-md:   14px;
  --r-lg:   20px;
  --r-xl:   28px;
  --r-pill: 999px;
}

/* ─────────────────────────────────────────────────────────────
   1. BASE RESET & TYPOGRAPHY SYSTEM
───────────────────────────────────────────────────────────── */
*, *::before, *::after { box-sizing: border-box; }

html {
  scroll-behavior: smooth;
  -webkit-text-size-adjust: 100%;
}

body {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  font-size: var(--text-base);
  line-height: 1.65;
  color: var(--c-text);
  background: var(--c-white);
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}

/* Heading scale */
h1 { font-size: clamp(2.2rem, 5vw, var(--text-5xl)); font-weight: 800; line-height: 1.08; }
h2 { font-size: clamp(1.75rem, 3.5vw, var(--text-3xl)); font-weight: 700; line-height: 1.15; }
h3 { font-size: clamp(1.2rem, 2vw, var(--text-xl)); font-weight: 700; line-height: 1.25; }
h4 { font-size: var(--text-lg); font-weight: 600; line-height: 1.3; }

h1, h2, h3, h4 {
  font-family: 'Playfair Display', Georgia, serif;
  color: var(--c-navy);
  margin-top: 0;
}

p { margin-top: 0; line-height: 1.8; color: var(--c-text-2); }
a { transition: color var(--dur-base) var(--ease-out); }

/* ─────────────────────────────────────────────────────────────
   2. LAYOUT & GRID SYSTEM
───────────────────────────────────────────────────────────── */
.container {
  width: 100%;
  max-width: var(--container-max);
  margin-left: auto;
  margin-right: auto;
  padding-left: clamp(1.25rem, 4vw, 2.5rem);
  padding-right: clamp(1.25rem, 4vw, 2.5rem);
}

.container--narrow  { max-width: 860px; }
.container--wide    { max-width: 1440px; }
.container--flush   { padding: 0; }

/* Section spacing rhythm */
.section          { padding: var(--section-lg) 0; }
.section--sm      { padding: var(--section-sm) 0; }
.section--cta     { padding: var(--section-cta) 0; }
.section--alt     { background: var(--c-cream); }
.section--dark    { background: var(--c-navy); }
.section--navy-2  { background: var(--c-navy-2); }
.section--mist    { background: var(--c-mist); }

/* Grid layouts */
.grid { display: grid; gap: var(--grid-gutter); }
.grid-1 { grid-template-columns: 1fr; }
.grid-2 { grid-template-columns: repeat(2, 1fr); }
.grid-3 { grid-template-columns: repeat(3, 1fr); }
.grid-4 { grid-template-columns: repeat(4, 1fr); }
.grid-2-1 { grid-template-columns: 2fr 1fr; }
.grid-1-2 { grid-template-columns: 1fr 2fr; }
.grid-split { grid-template-columns: 1fr 1fr; align-items: center; gap: clamp(3rem, 6vw, 6rem); }

/* Flex utilities */
.flex         { display: flex; }
.flex-center  { display: flex; align-items: center; justify-content: center; }
.flex-between { display: flex; align-items: center; justify-content: space-between; }
.flex-wrap    { flex-wrap: wrap; }
.gap-1 { gap: var(--sp-1); }
.gap-2 { gap: var(--sp-2); }
.gap-3 { gap: var(--sp-3); }
.gap-4 { gap: var(--sp-4); }

/* ─────────────────────────────────────────────────────────────
   3. TYPOGRAPHY SYSTEM — Headings, Labels, Dividers
───────────────────────────────────────────────────────────── */

/* Section label — eyebrow text */
.section-label {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-family: 'Inter', sans-serif;
  font-size: var(--text-xs);
  font-weight: 800;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--c-gold-dk);
  margin-bottom: var(--sp-2);
}
.section-label::before,
.section-label::after {
  content: '';
  display: inline-block;
  width: 24px;
  height: 1.5px;
  background: currentColor;
  opacity: 0.6;
}

.section-title {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: clamp(1.8rem, 3.5vw, 2.75rem);
  font-weight: 700;
  color: var(--c-navy);
  line-height: 1.18;
  margin-bottom: var(--sp-2);
}

.section-subtitle {
  font-size: clamp(0.9rem, 1.5vw, 1.05rem);
  color: var(--c-stone);
  line-height: 1.8;
  max-width: 600px;
}

/* Section header block */
.section-header { margin-bottom: var(--sp-8); }
.section-header.centered {
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.section-header.centered .section-subtitle { margin: 0 auto; }

/* Gold divider */
.gold-divider {
  width: 56px;
  height: 2.5px;
  background: linear-gradient(90deg, var(--c-gold-dk), var(--c-gold-lt));
  border-radius: var(--r-pill);
  margin: var(--sp-2) 0 var(--sp-3);
}
.gold-divider.centered { margin-left: auto; margin-right: auto; }

/* ─────────────────────────────────────────────────────────────
   4. BUTTON COMPONENT SYSTEM
───────────────────────────────────────────────────────────── */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  font-family: 'Inter', sans-serif;
  font-size: var(--text-xs);
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-decoration: none;
  border: 2px solid transparent;
  border-radius: var(--r-md);
  padding: 0.875rem 2rem;
  cursor: pointer;
  position: relative;
  overflow: hidden;
  white-space: nowrap;
  transition: transform var(--dur-base) var(--ease-spring),
              box-shadow var(--dur-base) var(--ease-out),
              background var(--dur-base) var(--ease-out),
              color var(--dur-base) var(--ease-out);
  will-change: transform;
}

/* Shimmer sweep on hover */
.btn::before {
  content: '';
  position: absolute;
  top: 0; left: -110%;
  width: 60%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.22), transparent);
  transform: skewX(-18deg);
  transition: left 0.55s ease;
  pointer-events: none;
}
.btn:hover::before { left: 150%; }

.btn--primary {
  background: linear-gradient(130deg, var(--c-gold-lt) 0%, var(--c-gold) 50%, var(--c-gold-dk) 100%);
  color: var(--c-navy) !important;
  box-shadow: var(--elev-gold);
}
.btn--primary:hover {
  transform: translateY(-3px) scale(1.01);
  box-shadow: var(--elev-gold-hover);
}
.btn--primary:active { transform: translateY(-1px); }

.btn--secondary {
  background: transparent;
  color: var(--c-navy) !important;
  border-color: var(--c-navy);
}
.btn--secondary:hover {
  background: var(--c-navy);
  color: var(--c-white) !important;
  transform: translateY(-2px);
  box-shadow: var(--elev-3);
}

.btn--ghost-white {
  background: rgba(255,255,255,0.09);
  color: var(--c-white) !important;
  border-color: rgba(255,255,255,0.5);
  backdrop-filter: blur(10px);
}
.btn--ghost-white:hover {
  background: rgba(255,255,255,0.18);
  border-color: var(--c-white);
  transform: translateY(-2px);
}

.btn--outline { background: transparent; border-color: currentColor; }
.btn--outline:hover { background: var(--c-navy); color: white !important; transform: translateY(-2px); }

.btn--sm  { padding: 0.6rem 1.25rem; font-size: 0.65rem; }
.btn--lg  { padding: 1.1rem 2.75rem; font-size: var(--text-sm); }
.btn--xl  { padding: 1.25rem 3.25rem; font-size: var(--text-sm); border-radius: var(--r-lg); }
.btn--pill { border-radius: var(--r-pill); }
.btn--full { width: 100%; }

/* ─────────────────────────────────────────────────────────────
   5. HERO SECTION — Immersive Redesign
───────────────────────────────────────────────────────────── */
.hero-cinematic {
  min-height: 100vh;
  min-height: 100svh;
  position: relative;
  display: flex;
  align-items: center;
  overflow: hidden;
}

/* Hero slide images — Ken Burns */
.hero-slide-inner {
  position: absolute;
  inset: -6%;
  will-change: transform;
}
.hero-slide-inner img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 30%;
}

/* Layered gradient overlays for depth */
.hero-overlay--gradient {
  background:
    linear-gradient(
      170deg,
      rgba(13,33,55,0.08) 0%,
      rgba(13,33,55,0.45) 35%,
      rgba(13,33,55,0.80) 70%,
      rgba(13,33,55,0.92) 100%
    );
}

/* Bottom vignette for text area */
.hero-cinematic::after {
  content: '';
  position: absolute;
  bottom: 0; left: 0; right: 0;
  height: 45%;
  background: linear-gradient(to top, rgba(13,33,55,0.88), transparent);
  z-index: 4;
  pointer-events: none;
}

/* Hero content sits above vignette */
.hero-content { position: relative; z-index: 6; }

/* Hero typography */
.hero-title {
  font-size: var(--text-hero);
  font-weight: 800;
  color: var(--c-white);
  letter-spacing: -0.025em;
  line-height: 1.07;
  text-shadow: 0 2px 40px rgba(0,0,0,0.4);
  margin-bottom: var(--sp-2);
}

.hero-subtitle {
  font-size: clamp(1rem, 1.8vw, 1.25rem);
  color: rgba(255,255,255,0.85);
  line-height: 1.75;
  text-shadow: 0 1px 12px rgba(0,0,0,0.3);
  margin-bottom: var(--sp-5);
}

/* Hero CTA group */
.hero-ctas {
  display: flex;
  gap: var(--sp-2);
  flex-wrap: wrap;
  margin-bottom: var(--sp-6);
}

.btn-hero--primary {
  background: linear-gradient(130deg, var(--c-gold-lt), var(--c-gold), var(--c-gold-dk));
  color: var(--c-navy);
  border-radius: var(--r-md);
  box-shadow: var(--elev-gold);
  font-family: 'Inter', sans-serif;
  font-size: var(--text-xs);
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 1rem 2.5rem;
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  text-decoration: none;
  white-space: nowrap;
  transition: transform var(--dur-base) var(--ease-spring), box-shadow var(--dur-base) ease;
}
.btn-hero--primary:hover { transform: translateY(-4px); box-shadow: var(--elev-gold-hover); }

.btn-hero--ghost {
  background: rgba(255,255,255,0.1);
  color: var(--c-white);
  border: 1.5px solid rgba(255,255,255,0.5);
  border-radius: var(--r-md);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  font-family: 'Inter', sans-serif;
  font-size: var(--text-xs);
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 1rem 2.5rem;
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  text-decoration: none;
  white-space: nowrap;
  transition: all var(--dur-base) ease;
}
.btn-hero--ghost:hover { background: rgba(255,255,255,0.18); border-color: rgba(255,255,255,0.8); transform: translateY(-2px); }

/* Hero stats — refined */
.hero-stats {
  display: flex;
  gap: var(--sp-5);
  flex-wrap: wrap;
  border-top: 1px solid rgba(255,255,255,0.14);
  padding-top: var(--sp-4);
}
.hero-stat__val { display: block; font-family: 'Playfair Display', serif; font-size: 1.5rem; font-weight: 800; color: var(--c-gold-lt); }
.hero-stat__lbl { display: block; font-size: 0.6rem; letter-spacing: 0.15em; text-transform: uppercase; color: rgba(255,255,255,0.48); margin-top: 0.15rem; }

/* Scroll cue — animated */
.hero-scroll-cue {
  position: absolute;
  bottom: 2rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: 10;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.4rem;
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
  animation: scrollCueFloat 2.5s ease-in-out infinite;
}
@keyframes scrollCueFloat {
  0%,100% { transform: translateX(-50%) translateY(0); opacity: 0.7; }
  50%      { transform: translateX(-50%) translateY(6px); opacity: 1; }
}
.hero-scroll-cue__mouse {
  width: 24px; height: 38px;
  border: 2px solid rgba(255,255,255,0.5);
  border-radius: 12px;
  display: flex;
  justify-content: center;
  padding-top: 6px;
}
.hero-scroll-cue__wheel {
  width: 3px; height: 8px;
  background: var(--c-gold-lt);
  border-radius: 2px;
  animation: scrollWheel 2s ease infinite;
}
@keyframes scrollWheel {
  0%,100% { transform: translateY(0); opacity: 1; }
  70%     { transform: translateY(12px); opacity: 0; }
}
.hero-scroll-cue__label { font-size: 0.55rem; letter-spacing: 0.2em; text-transform: uppercase; color: rgba(255,255,255,0.55); }

/* ─────────────────────────────────────────────────────────────
   6. SECTION FLOW — Psychological Journey Design
───────────────────────────────────────────────────────────── */

/* Availability banner — flows from hero bottom */
.availability-banner {
  position: relative;
  margin-top: -1px;
  padding: 0 !important;
  z-index: 20;
}

.availability-banner__inner {
  background: var(--c-navy);
  border-radius: 0 0 var(--r-xl) var(--r-xl);
  padding: var(--sp-5) clamp(1.5rem,4vw,3rem);
  display: flex;
  align-items: center;
  gap: var(--sp-4);
  flex-wrap: wrap;
  box-shadow: 0 24px 64px rgba(13,33,55,0.28);
  position: relative;
  overflow: hidden;
}
.availability-banner__inner::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent 0%, var(--c-gold) 30%, var(--c-gold-lt) 50%, var(--c-gold) 70%, transparent 100%);
}
/* Decorative circle */
.availability-banner__inner::after {
  content: '';
  position: absolute;
  right: -60px; top: -60px;
  width: 200px; height: 200px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(201,168,76,0.08), transparent 70%);
  pointer-events: none;
}

.availability-banner__title {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: clamp(1.1rem, 2vw, 1.4rem);
  color: var(--c-white);
  margin: 0 0 0.2rem;
  font-weight: 700;
}
.availability-banner__sub { font-size: var(--text-xs); color: rgba(255,255,255,0.52); margin: 0; letter-spacing: 0.04em; }

/* Pillars section — emphasis zone */
.section[aria-labelledby="pillars-heading"] {
  background: var(--c-warm);
  border-top: 1px solid rgba(13,33,55,0.05);
  border-bottom: 1px solid rgba(13,33,55,0.05);
}

/* ─────────────────────────────────────────────────────────────
   7. CARD COMPONENT SYSTEM — Elevation & Hover
───────────────────────────────────────────────────────────── */

/* Base card */
.card {
  background: var(--c-white);
  border-radius: var(--r-lg);
  box-shadow: var(--elev-2);
  border: 1px solid rgba(13,33,55,0.05);
  overflow: hidden;
  transition:
    transform var(--dur-slow) var(--ease-spring),
    box-shadow var(--dur-slow) var(--ease-out);
  will-change: transform, box-shadow;
}
.card:hover { transform: translateY(-10px); box-shadow: var(--elev-4); }

/* Pillar cards */
.section [data-reveal][style*="border-bottom:3px solid var(--color-accent)"] {
  background: var(--c-white) !important;
  border-radius: var(--r-lg) !important;
  border: none !important;
  box-shadow: var(--elev-2) !important;
  padding: var(--sp-8) var(--sp-5) !important;
  position: relative;
  overflow: hidden;
  transition: transform var(--dur-slow) var(--ease-spring), box-shadow var(--dur-slow) ease !important;
}
.section [data-reveal][style*="border-bottom:3px solid var(--color-accent)"]::after {
  content: '';
  position: absolute;
  bottom: 0; left: 0; right: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--c-gold-dk), var(--c-gold-lt));
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.5s var(--ease-spring);
}
.section [data-reveal][style*="border-bottom:3px solid var(--color-accent)"]:hover {
  transform: translateY(-12px) !important;
  box-shadow: var(--elev-5) !important;
}
.section [data-reveal][style*="border-bottom:3px solid var(--color-accent)"]:hover::after {
  transform: scaleX(1);
}

/* ─────────────────────────────────────────────────────────────
   8. ROOM CARDS — Luxury Booking-style
───────────────────────────────────────────────────────────── */
.room-card {
  background: var(--c-white);
  border-radius: var(--r-lg);
  box-shadow: var(--elev-2);
  border: 1px solid rgba(13,33,55,0.05);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition:
    transform var(--dur-slow) var(--ease-spring),
    box-shadow var(--dur-slow) var(--ease-out);
}
.room-card:hover { transform: translateY(-14px); box-shadow: var(--elev-5); }

.room-card__image {
  position: relative;
  aspect-ratio: 16/10;
  overflow: hidden;
}
.room-card__image img {
  width: 100%; height: 100%;
  object-fit: cover;
  transition: transform 0.7s var(--ease-luxury);
  display: block;
}
.room-card:hover .room-card__image img { transform: scale(1.08); }

.room-card__body { padding: var(--sp-4); display: flex; flex-direction: column; flex: 1; }
.room-card__category {
  font-size: var(--text-xs);
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--c-gold-dk);
  margin-bottom: 0.4rem;
}
.room-card__title { font-size: 1.2rem; font-weight: 700; color: var(--c-navy); margin-bottom: 0.5rem; line-height: 1.25; }
.room-card__title a { color: inherit; text-decoration: none; }
.room-card__desc { font-size: var(--text-sm); color: var(--c-stone); line-height: 1.7; flex: 1; margin-bottom: var(--sp-3); }

.room-card__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--sp-2);
  padding-top: var(--sp-3);
  border-top: 1px solid rgba(13,33,55,0.06);
  flex-wrap: wrap;
}
.room-card__price-amount {
  font-family: 'Playfair Display', serif;
  font-size: 1.65rem;
  font-weight: 800;
  color: var(--c-navy);
  line-height: 1;
}
.room-card__price-unit { font-size: var(--text-xs); color: var(--c-stone); display: block; margin-top: 2px; }

/* NPR badge */
.room-card__price-badge {
  position: absolute;
  top: 1rem; left: 1rem;
  background: rgba(13,33,55,0.88);
  backdrop-filter: blur(10px);
  color: var(--c-white);
  border-radius: var(--r-sm);
  padding: 0.4rem 0.75rem;
  z-index: 3;
  border: 1px solid rgba(201,168,76,0.3);
  line-height: 1.25;
}
.room-card__price-badge span:first-child { font-size: 0.55rem; opacity: 0.65; letter-spacing: 0.1em; text-transform: uppercase; }
.room-card__price-badge strong { font-size: 0.9rem; color: var(--c-gold-lt); font-weight: 800; display: block; }
.room-card__price-badge span:last-child { font-size: 0.55rem; opacity: 0.65; }

/* View details hover */
.room-card__hover-overlay {
  position: absolute; inset: 0;
  background: rgba(13,33,55,0);
  display: flex; align-items: center; justify-content: center;
  transition: background var(--dur-slow) ease;
  z-index: 2;
}
.rco-link {
  background: linear-gradient(135deg, var(--c-gold-lt), var(--c-gold), var(--c-gold-dk));
  color: var(--c-navy);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 0.6rem 1.5rem;
  border-radius: var(--r-sm);
  text-decoration: none;
  opacity: 0;
  transform: translateY(10px) scale(0.95);
  transition: opacity var(--dur-base) ease, transform var(--dur-base) var(--ease-spring);
}
.room-card:hover .room-card__hover-overlay { background: rgba(13,33,55,0.38); }
.room-card:hover .rco-link { opacity: 1; transform: translateY(0) scale(1); }

/* Feature icon chips */
.room-card__features { display: flex; gap: var(--sp-1); flex-wrap: wrap; margin-bottom: var(--sp-3); }
.rcf-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.2rem;
  background: var(--c-cream);
  border-radius: var(--r-sm);
  padding: 0.45rem 0.6rem;
  min-width: 55px;
  flex: 1;
  max-width: 72px;
  border: 1px solid rgba(13,33,55,0.06);
  transition: background var(--dur-base) ease, border-color var(--dur-base) ease, transform var(--dur-base) var(--ease-spring);
}
.rcf-item:hover { background: rgba(201,168,76,0.12); border-color: rgba(201,168,76,0.3); transform: translateY(-2px); }
.rcf-icon { font-size: 1.1rem; line-height: 1; }
.rcf-label { font-size: 0.54rem; font-weight: 600; text-align: center; color: var(--c-navy-2); line-height: 1.2; }

/* ─────────────────────────────────────────────────────────────
   9. AMENITIES — Icon Grid System
───────────────────────────────────────────────────────────── */
.amenities-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: var(--sp-3); }

.amenity-card {
  background: var(--c-white);
  border-radius: var(--r-lg);
  padding: var(--sp-5) var(--sp-3);
  text-align: center;
  box-shadow: var(--elev-2);
  border: 1px solid rgba(13,33,55,0.05);
  position: relative;
  overflow: hidden;
  transition:
    transform var(--dur-slow) var(--ease-spring),
    box-shadow var(--dur-slow) ease;
  cursor: default;
}
.amenity-card::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(201,168,76,0.04), transparent 60%);
  opacity: 0;
  transition: opacity var(--dur-base) ease;
}
.amenity-card::after {
  content: '';
  position: absolute;
  bottom: 0; left: 0; right: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--c-gold-dk), var(--c-gold-lt));
  transform: scaleX(0);
  transition: transform var(--dur-slow) var(--ease-spring);
  transform-origin: center;
}
.amenity-card:hover {
  transform: translateY(-8px) scale(1.01);
  box-shadow: var(--elev-4);
}
.amenity-card:hover::before { opacity: 1; }
.amenity-card:hover::after { transform: scaleX(1); }

.amenity-icon {
  display: block;
  font-size: 2.5rem;
  margin-bottom: var(--sp-2);
  transition: transform var(--dur-base) var(--ease-spring);
}
.amenity-card:hover .amenity-icon { transform: scale(1.15) translateY(-2px); }
.amenity-name { font-family: 'Playfair Display', serif; font-size: 0.95rem; font-weight: 700; color: var(--c-navy); margin-bottom: 0.4rem; }
.amenity-desc { font-size: 0.75rem; color: var(--c-stone); line-height: 1.6; margin: 0; }

@media (max-width: 1024px) { .amenities-grid { grid-template-columns: repeat(3,1fr); } }
@media (max-width: 640px)  { .amenities-grid { grid-template-columns: repeat(2,1fr); gap: var(--sp-2); } }

/* ─────────────────────────────────────────────────────────────
   10. STATS — Dark Display Band
───────────────────────────────────────────────────────────── */
.stats-grid {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  background: var(--c-navy);
  border-radius: var(--r-lg);
  overflow: hidden;
  box-shadow: var(--elev-4);
}
.stat-item {
  padding: var(--sp-8) var(--sp-4);
  text-align: center;
  border-right: 1px solid rgba(255,255,255,0.07);
  position: relative;
  overflow: hidden;
  transition: background var(--dur-base) ease;
}
.stat-item:last-child { border-right: none; }
.stat-item::before {
  content: '';
  position: absolute;
  bottom: 0; left: 20%; right: 20%;
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--c-gold), transparent);
  opacity: 0;
  transition: opacity var(--dur-base) ease;
}
.stat-item:hover { background: rgba(201,168,76,0.05); }
.stat-item:hover::before { opacity: 1; }
.stat-number {
  font-family: 'Playfair Display', serif;
  font-size: clamp(2rem, 3.5vw, 3.2rem);
  font-weight: 800;
  color: var(--c-gold-lt);
  line-height: 1;
  margin-bottom: 0.5rem;
}
.stat-label { font-size: 0.62rem; letter-spacing: 0.15em; text-transform: uppercase; color: rgba(255,255,255,0.42); font-weight: 600; }

@media (max-width: 640px) {
  .stats-grid { grid-template-columns: repeat(2,1fr); border-radius: var(--r-md); }
  .stat-item { border-bottom: 1px solid rgba(255,255,255,0.07); }
  .stat-item:nth-child(2n) { border-right: none; }
  .stat-item:nth-last-child(-n+2) { border-bottom: none; }
}

/* ─────────────────────────────────────────────────────────────
   11. GALLERY — Masonry with Lightbox
───────────────────────────────────────────────────────────── */
.gallery-masonry {
  columns: 4;
  column-gap: var(--sp-2);
}
.gallery-item {
  break-inside: avoid;
  margin-bottom: var(--sp-2);
  border-radius: var(--r-md);
  overflow: hidden;
  cursor: pointer;
  position: relative;
  transition: transform var(--dur-base) var(--ease-spring), opacity 0.35s ease;
}
.gallery-item.gallery-hidden { opacity: 0; transform: scale(0.93); pointer-events: none; }
.gallery-item.gallery-visible { opacity: 1; transform: scale(1); }
.gallery-item__img-wrap img {
  width: 100%; height: auto; display: block;
  border-radius: var(--r-md);
  transition: transform 0.55s var(--ease-luxury);
}
.gallery-item:hover .gallery-item__img-wrap img { transform: scale(1.05); }
.gallery-item__overlay {
  position: absolute; inset: 0;
  background: linear-gradient(to top, rgba(13,33,55,0.75), transparent 55%);
  opacity: 0;
  transition: opacity var(--dur-base) ease;
  border-radius: var(--r-md);
  display: flex; flex-direction: column; justify-content: flex-end; padding: 1.1rem;
}
.gallery-item:hover .gallery-item__overlay,
.gallery-item:focus-visible .gallery-item__overlay { opacity: 1; }
.gallery-item__zoom {
  width: 38px; height: 38px;
  background: rgba(255,255,255,0.14);
  border: 1.5px solid rgba(255,255,255,0.35);
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  backdrop-filter: blur(6px);
  align-self: flex-end;
  margin-bottom: 0.4rem;
  transition: background var(--dur-base) ease;
}
.gallery-item:hover .gallery-item__zoom { background: rgba(201,168,76,0.25); }
.gallery-item__caption { font-size: 0.7rem; color: rgba(255,255,255,0.85); margin: 0; line-height: 1.4; }

@media (max-width: 1024px) { .gallery-masonry { columns: 3; } }
@media (max-width: 640px)  { .gallery-masonry { columns: 2; column-gap: var(--sp-1); } .gallery-item { margin-bottom: var(--sp-1); } }
@media (max-width: 380px)  { .gallery-masonry { columns: 1; } }

/* Home gallery grid */
.home-gallery-grid {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  grid-template-rows: 270px 270px;
  gap: var(--sp-2);
}
.home-gallery-item { border-radius: var(--r-md); overflow: hidden; position: relative; display: block; transition: transform var(--dur-base) var(--ease-spring); }
.home-gallery-item--tall { grid-row: span 2; }
.home-gallery-item img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.6s var(--ease-luxury); display: block; }
.home-gallery-item:hover img { transform: scale(1.06); }
.home-gallery-item:hover { box-shadow: var(--elev-3); z-index: 2; }
.home-gallery-item__overlay {
  position: absolute; inset: 0;
  background: linear-gradient(to top, rgba(13,33,55,0.6), transparent 50%);
  opacity: 0;
  display: flex; align-items: flex-end; justify-content: flex-end; padding: var(--sp-2);
  transition: opacity var(--dur-base) ease;
}
.home-gallery-item:hover .home-gallery-item__overlay { opacity: 1; }

@media (max-width: 640px) {
  .home-gallery-grid { grid-template-columns: repeat(2,1fr); grid-template-rows: auto; }
  .home-gallery-item--tall { grid-row: span 1; }
  .home-gallery-item { aspect-ratio: 4/3; }
}

/* ─────────────────────────────────────────────────────────────
   12. ABOUT SNIPPET — Split storytelling
───────────────────────────────────────────────────────────── */
.about-snippet { display: grid; grid-template-columns: 1.05fr 1fr; gap: clamp(3rem,6vw,6rem); align-items: center; }
.about-snippet__image { position: relative; border-radius: var(--r-lg); }
.about-snippet__image img { width: 100%; border-radius: var(--r-lg); box-shadow: var(--elev-5); display: block; object-fit: cover; }
.about-snippet__image::before {
  content: '';
  position: absolute;
  inset: -14px;
  border: 1px solid rgba(201,168,76,0.25);
  border-radius: calc(var(--r-lg) + 10px);
  z-index: -1;
  pointer-events: none;
}
.about-snippet__badge {
  position: absolute;
  bottom: -1.5rem; right: -1.5rem;
  background: linear-gradient(135deg, var(--c-navy), var(--c-navy-2));
  border: 2px solid var(--c-gold);
  border-radius: var(--r-md);
  padding: 1.1rem 1.4rem;
  text-align: center;
  box-shadow: var(--elev-4);
}
.about-badge-year { display: block; font-size: 0.58rem; letter-spacing: 0.2em; text-transform: uppercase; color: var(--c-gold-lt); font-weight: 700; }
.about-badge-num { display: block; font-family: 'Playfair Display', serif; font-size: 2.25rem; font-weight: 800; color: var(--c-white); line-height: 1.1; }
.about-snippet__content p { color: var(--c-stone); line-height: 1.9; }

@media (max-width: 900px) {
  .about-snippet { grid-template-columns: 1fr; gap: var(--sp-8); }
  .about-snippet__image::before { display: none; }
  .about-snippet__badge { bottom: 1rem; right: 1rem; }
}

/* ─────────────────────────────────────────────────────────────
   13. EXPERIENCES — Dark immersive cards
───────────────────────────────────────────────────────────── */
.experience-card {
  position: relative;
  border-radius: var(--r-lg);
  overflow: hidden;
  min-height: 400px;
  display: flex;
  align-items: flex-end;
  box-shadow: var(--elev-3);
  transition: transform var(--dur-slow) var(--ease-spring), box-shadow var(--dur-slow) ease;
}
.experience-card:hover { transform: scale(1.025); box-shadow: var(--elev-5); }
.experience-card img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform 0.7s var(--ease-luxury); }
.experience-card:hover img { transform: scale(1.08); }
.experience-card-content {
  position: relative;
  z-index: 2;
  width: 100%;
  padding: var(--sp-5) var(--sp-4);
  background: linear-gradient(to top, rgba(13,33,55,0.96), rgba(13,33,55,0.5) 65%, transparent 100%);
}

/* ─────────────────────────────────────────────────────────────
   14. TESTIMONIALS — Emotional carousel
───────────────────────────────────────────────────────────── */
.testimonial-carousel { overflow: hidden; }
.testimonial-track { display: flex; gap: var(--sp-4); transition: transform 0.55s cubic-bezier(.4,0,.2,1); }
.testimonial-card {
  flex: 0 0 calc(33.333% - 1rem);
  background: var(--c-white);
  border-radius: var(--r-lg);
  padding: var(--sp-5) var(--sp-4);
  box-shadow: var(--elev-2);
  border: 1px solid rgba(13,33,55,0.05);
  position: relative;
  overflow: hidden;
  transition: transform var(--dur-slow) var(--ease-spring), box-shadow var(--dur-slow) ease;
}
.testimonial-card::before {
  content: '\201C';
  position: absolute;
  top: 0; right: var(--sp-3);
  font-family: 'Playfair Display', serif;
  font-size: 7rem;
  line-height: 1;
  color: rgba(201,168,76,0.1);
  font-weight: 900;
  pointer-events: none;
}
.testimonial-card:hover { transform: translateY(-6px); box-shadow: var(--elev-4); }
.testimonial-rating .star { color: #f4a83a; font-size: 0.9rem; }
.testimonial-text { font-size: 0.875rem; line-height: 1.8; color: var(--c-stone); font-style: italic; margin: var(--sp-2) 0 var(--sp-3); }
.testimonial-name { font-family: 'Playfair Display', serif; font-size: 0.95rem; color: var(--c-navy); font-weight: 700; }
.testimonial-meta { font-size: 0.7rem; color: var(--c-stone); }
.testimonial-avatar { width: 48px; height: 48px; border-radius: 50%; overflow: hidden; border: 2px solid rgba(201,168,76,0.35); flex-shrink: 0; }

@media (max-width: 1024px) { .testimonial-card { flex: 0 0 calc(50% - var(--sp-2)); } }
@media (max-width: 640px)  { .testimonial-card { flex: 0 0 100%; } }

/* ─────────────────────────────────────────────────────────────
   15. REVIEWS — Google-style trust section
───────────────────────────────────────────────────────────── */
.reviews-section { background: var(--c-cream); }
.reviews-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: var(--sp-3); margin-bottom: var(--sp-6); }
.review-card {
  background: var(--c-white);
  border-radius: var(--r-md);
  padding: var(--sp-4);
  box-shadow: var(--elev-1);
  border: 1px solid rgba(0,0,0,0.05);
  position: relative;
  overflow: hidden;
  transition: transform var(--dur-base) var(--ease-spring), box-shadow var(--dur-base) ease;
}
.review-card::before { content: '"'; position: absolute; top: 0; right: var(--sp-2); font-family: Georgia,serif; font-size: 5rem; line-height: 1; color: rgba(201,168,76,0.1); font-weight: 900; pointer-events: none; }
.review-card:hover { transform: translateY(-5px); box-shadow: var(--elev-3); }
.review-card__header { display: flex; align-items: center; gap: var(--sp-2); margin-bottom: var(--sp-2); }
.review-avatar { width: 42px; height: 42px; border-radius: 50%; display: flex; align-items: center; justify-content: center; color: #fff; font-weight: 800; font-size: 0.95rem; flex-shrink: 0; }
.review-name { display: block; font-size: 0.85rem; font-weight: 700; color: #222; }
.review-loc  { display: block; font-size: 0.68rem; color: #999; }
.review-meta { flex: 1; }
.review-source-badge { font-size: 0.62rem; font-weight: 800; padding: 0.2rem 0.6rem; border-radius: var(--r-pill); flex-shrink: 0; letter-spacing: 0.05em; }
.review-src--google      { background: #e8f0fe; color: #1a73e8; }
.review-src--tripadvisor { background: #e6f7ef; color: #00af87; }
.review-src--bookingcom  { background: #e8f4fd; color: #003580; }
.review-stars { color: #f4a83a; font-size: 0.82rem; margin-bottom: var(--sp-2); }
.review-text  { font-size: 0.82rem; color: #555; line-height: 1.75; font-style: italic; margin-bottom: var(--sp-2); }
.review-date  { font-size: 0.68rem; color: #aaa; }

.reviews-overall { display: inline-flex; align-items: center; gap: var(--sp-3); background: var(--c-white); padding: var(--sp-3) var(--sp-5); border-radius: var(--r-md); box-shadow: var(--elev-2); margin: var(--sp-4) 0 var(--sp-6); }
.reviews-score { font-family: 'Playfair Display', serif; font-size: 3.5rem; font-weight: 800; color: var(--c-navy); line-height: 1; }
.reviews-stars { color: #f4a83a; font-size: 1.2rem; }
.reviews-count { font-size: var(--text-xs); color: #666; }
.reviews-platforms { display: flex; gap: var(--sp-2); font-size: 0.7rem; font-weight: 600; color: #999; margin-top: 0.3rem; }

.reviews-breakdown { display: grid; grid-template-columns: repeat(3,1fr); gap: var(--sp-2); max-width: 860px; margin: 0 auto var(--sp-8); }
.rbd-item { display: flex; align-items: center; gap: var(--sp-2); background: var(--c-white); padding: 0.7rem 1rem; border-radius: var(--r-sm); box-shadow: var(--elev-1); }
.rbd-label { font-size: 0.7rem; font-weight: 700; color: var(--c-navy-2); min-width: 70px; }
.rbd-bar { flex: 1; height: 5px; background: #e8e8e8; border-radius: var(--r-pill); overflow: hidden; }
.rbd-fill { height: 100%; background: linear-gradient(90deg, var(--c-gold-dk), var(--c-gold-lt)); border-radius: var(--r-pill); transition: width 1.2s ease; }
.rbd-score { font-size: 0.75rem; font-weight: 700; color: var(--c-navy); min-width: 26px; text-align: right; }

.reviews-footer { display: flex; justify-content: center; gap: var(--sp-8); flex-wrap: wrap; background: var(--c-navy); border-radius: var(--r-lg); padding: var(--sp-6); }
.reviews-trust-badge { text-align: center; }
.rtb-num { display: block; font-family: 'Playfair Display', serif; font-size: 2.2rem; font-weight: 800; color: var(--c-gold-lt); line-height: 1; }
.rtb-lbl { display: block; font-size: 0.6rem; letter-spacing: 0.14em; text-transform: uppercase; color: rgba(255,255,255,0.5); margin-top: 0.3rem; font-weight: 600; }

@media (max-width: 1024px) { .reviews-grid { grid-template-columns: repeat(2,1fr); } }
@media (max-width: 640px)  { .reviews-grid { grid-template-columns: 1fr; } .reviews-breakdown { grid-template-columns: 1fr 1fr; } .reviews-footer { gap: var(--sp-4); padding: var(--sp-4); } }

/* ─────────────────────────────────────────────────────────────
   16. DINING SPLIT
───────────────────────────────────────────────────────────── */
.dining-split { display: grid; grid-template-columns: 1fr 1.05fr; gap: clamp(3rem,6vw,6rem); align-items: center; }
@media (max-width: 900px) { .dining-split { grid-template-columns: 1fr; gap: var(--sp-8); } }

/* ─────────────────────────────────────────────────────────────
   17. VIRTUAL TOUR CTA SECTION
───────────────────────────────────────────────────────────── */
.virtual-tour-section { position: relative; min-height: 540px; display: flex; align-items: center; justify-content: center; overflow: hidden; }
.virtual-tour-bg { position: absolute; inset: 0; z-index: 0; }
.virtual-tour-bg::after { content: ''; position: absolute; inset: 0; background: linear-gradient(to bottom, rgba(13,33,55,0.65), rgba(13,33,55,0.85)); z-index: 1; }
.virtual-tour-bg img { width: 100%; height: 100%; object-fit: cover; }
.virtual-tour-content { position: relative; z-index: 2; text-align: center; padding: var(--sp-10) var(--sp-4); max-width: 680px; }
.virtual-tour-btn {
  display: inline-flex; align-items: center; gap: var(--sp-2);
  background: linear-gradient(130deg, var(--c-gold-lt), var(--c-gold), var(--c-gold-dk));
  color: var(--c-navy); font-weight: 800; font-size: var(--text-xs);
  letter-spacing: 0.1em; text-transform: uppercase; text-decoration: none;
  padding: 1rem 2.5rem; border-radius: var(--r-md);
  box-shadow: var(--elev-gold);
  transition: transform var(--dur-base) var(--ease-spring), box-shadow var(--dur-base) ease;
}
.virtual-tour-btn:hover { transform: translateY(-3px) scale(1.02); box-shadow: var(--elev-gold-hover); }
.play-btn-pulse { animation: pulseBorder 2.5s ease-out infinite; }
@keyframes pulseBorder {
  0%,100% { box-shadow: var(--elev-gold); }
  50%      { box-shadow: var(--elev-gold), 0 0 0 10px rgba(201,168,76,0); }
}

/* ─────────────────────────────────────────────────────────────
   18. NEWSLETTER — Premium dark section
───────────────────────────────────────────────────────────── */
.newsletter-section {
  background: linear-gradient(135deg, var(--c-navy) 0%, #0a1e33 100%);
  position: relative;
  overflow: hidden;
}
.newsletter-section::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 2px; background: linear-gradient(90deg, transparent, var(--c-gold), transparent); }
.newsletter-section::after { content: ''; position: absolute; bottom: -80px; right: -80px; width: 300px; height: 300px; border-radius: 50%; background: radial-gradient(circle, rgba(201,168,76,0.07) 0%, transparent 70%); pointer-events: none; }
.newsletter-inner { display: flex; align-items: center; gap: var(--sp-10); flex-wrap: wrap; padding: var(--section-md) 0; }
.newsletter-input {
  flex: 1; min-width: 240px;
  padding: 0.9rem 1.25rem;
  background: rgba(255,255,255,0.07);
  border: 1.5px solid rgba(255,255,255,0.15);
  border-radius: var(--r-md);
  color: var(--c-white);
  font-size: 0.875rem;
  outline: none;
  transition: border-color var(--dur-base) ease, background var(--dur-base) ease;
}
.newsletter-input::placeholder { color: rgba(255,255,255,0.35); }
.newsletter-input:focus { border-color: var(--c-gold); background: rgba(255,255,255,0.09); }

/* ─────────────────────────────────────────────────────────────
   19. FOOTER v7
───────────────────────────────────────────────────────────── */
.site-footer { background: var(--c-navy); color: rgba(255,255,255,0.62); }
.footer-top { padding: var(--section-lg) 0 var(--sp-10); }
.footer-grid { display: grid; grid-template-columns: 2fr 1fr 1fr 1.2fr; gap: var(--sp-8); }
.footer-col-title {
  font-family: 'Playfair Display', serif;
  font-size: 1rem; color: var(--c-white); font-weight: 600;
  margin-bottom: var(--sp-3);
  padding-bottom: var(--sp-2);
  position: relative;
}
.footer-col-title::after {
  content: ''; position: absolute;
  bottom: 0; left: 0;
  width: 28px; height: 1.5px;
  background: var(--c-gold); border-radius: var(--r-pill);
}
.footer-menu { list-style: none; padding: 0; margin: 0; }
.footer-menu li { margin-bottom: 0.6rem; }
.footer-menu a { font-size: var(--text-sm); color: rgba(255,255,255,0.52); text-decoration: none; transition: color var(--dur-base) ease, padding-left var(--dur-base) ease; display: inline-block; }
.footer-menu a:hover { color: var(--c-gold-lt); padding-left: 4px; }
.footer-about { font-size: var(--text-sm); line-height: 1.8; color: rgba(255,255,255,0.48); margin: var(--sp-3) 0; }
.footer-social { display: flex; gap: var(--sp-2); flex-wrap: wrap; }
.footer-social a {
  width: 38px; height: 38px; border-radius: 50%;
  background: rgba(255,255,255,0.07);
  border: 1px solid rgba(255,255,255,0.1);
  display: flex; align-items: center; justify-content: center;
  color: rgba(255,255,255,0.58);
  transition: all var(--dur-base) var(--ease-spring);
}
.footer-social a:hover { background: var(--c-gold); border-color: var(--c-gold); color: var(--c-navy); transform: translateY(-3px); }
.footer-bottom { display: flex; align-items: center; justify-content: space-between; gap: var(--sp-2); flex-wrap: wrap; padding: var(--sp-4) 0; border-top: 1px solid rgba(255,255,255,0.06); }
.footer-copyright { font-size: 0.72rem; color: rgba(255,255,255,0.32); }
.footer-bottom-links { display: flex; gap: var(--sp-4); }
.footer-bottom-links a { font-size: 0.7rem; color: rgba(255,255,255,0.32); text-decoration: none; transition: color var(--dur-base) ease; }
.footer-bottom-links a:hover { color: var(--c-gold-lt); }

@media (max-width: 1024px) { .footer-grid { grid-template-columns: 1fr 1fr; gap: var(--sp-6); } }
@media (max-width: 640px)  { .footer-grid { grid-template-columns: 1fr; gap: var(--sp-5); } .footer-top { padding-top: var(--sp-8); } .footer-bottom { flex-direction: column; text-align: center; } }

/* ─────────────────────────────────────────────────────────────
   20. HEADER v7 — Glassy premium nav
───────────────────────────────────────────────────────────── */
.site-header {
  position: fixed; top: 0; left: 0; right: 0;
  z-index: 1000;
  transition: background var(--dur-xslow) var(--ease-out), box-shadow var(--dur-base) ease;
}
.header--transparent {
  background: linear-gradient(180deg, rgba(13,33,55,0.55) 0%, transparent 100%);
  backdrop-filter: none;
  box-shadow: none;
}
.header--scrolled {
  background: rgba(255,255,255,0.97);
  backdrop-filter: saturate(200%) blur(24px);
  -webkit-backdrop-filter: saturate(200%) blur(24px);
  box-shadow: 0 1px 0 rgba(13,33,55,0.07), 0 4px 24px rgba(13,33,55,0.07);
}
.header-inner { display: flex; align-items: center; justify-content: space-between; height: 76px; gap: var(--sp-4); }

/* Logo */
.site-logo { flex-shrink: 0; display: flex; align-items: center; text-decoration: none; }
.site-logo img, .site-logo .custom-logo { height: var(--logo-height, 44px) !important; max-height: var(--logo-height, 44px) !important; width: auto !important; max-width: var(--logo-max-width, 180px) !important; object-fit: contain !important; display: block !important; transition: height 0.3s ease !important; }
.header--scrolled .site-logo img, .header--scrolled .site-logo .custom-logo { height: calc(var(--logo-height, 44px) * 0.78) !important; }
.logo-name { font-family: 'Playfair Display', serif; font-size: clamp(0.875rem, 1.5vw, 1.1rem); font-weight: 700; color: var(--c-white); line-height: 1.1; white-space: nowrap; }
.logo-tagline { font-size: 0.52rem; letter-spacing: 0.18em; text-transform: uppercase; color: var(--c-gold-lt); font-weight: 600; white-space: nowrap; }
.header--scrolled .logo-name { color: var(--c-navy); }

/* Nav links */
.nav-menu > .menu-item > a {
  font-size: 0.72rem; font-weight: 600; letter-spacing: 0.09em;
  text-transform: uppercase; padding: 0.5rem 0.85rem;
  color: rgba(255,255,255,0.9); text-decoration: none;
  transition: color var(--dur-base) ease; position: relative; white-space: nowrap;
}
.nav-menu > .menu-item > a::after {
  content: ''; position: absolute;
  bottom: -1px; left: 0.85rem; right: 0.85rem;
  height: 1.5px; background: var(--c-gold);
  transform: scaleX(0); transform-origin: center;
  transition: transform var(--dur-base) var(--ease-spring);
}
.nav-menu > .menu-item > a:hover::after,
.nav-menu > .menu-item.current-menu-item > a::after { transform: scaleX(1); }
.nav-menu > .menu-item > a:hover { color: var(--c-gold-lt); }
.header--scrolled .nav-menu > .menu-item > a { color: var(--c-navy); }
.header--scrolled .nav-menu > .menu-item > a:hover { color: var(--c-gold-dk); }

/* Dropdown */
.nav-menu .sub-menu {
  position: absolute; top: calc(100% + 10px);
  left: 50%; transform: translateX(-50%) translateY(-6px);
  min-width: 210px;
  background: rgba(255,255,255,0.99);
  border-radius: var(--r-md);
  box-shadow: var(--elev-4);
  border: 1px solid rgba(13,33,55,0.06);
  padding: var(--sp-1);
  list-style: none;
  opacity: 0; visibility: hidden; pointer-events: none;
  transition: opacity 0.25s ease, transform 0.3s var(--ease-spring), visibility 0.25s;
  transform-origin: top center; z-index: 999; overflow: hidden;
}
.nav-menu .sub-menu::before { content: ''; display: block; height: 2px; background: linear-gradient(90deg, transparent, var(--c-gold), transparent); margin-bottom: 0.3rem; }
.nav-menu .menu-item-has-children:hover > .sub-menu { opacity: 1; visibility: visible; pointer-events: auto; transform: translateX(-50%) translateY(0); }
.nav-menu .sub-menu .menu-item > a { display: block; padding: 0.6rem 0.875rem; font-size: 0.78rem; font-weight: 500; color: var(--c-navy); border-radius: var(--r-sm); transition: background var(--dur-base) ease, color var(--dur-base) ease, padding-left var(--dur-base) ease; }
.nav-menu .sub-menu .menu-item > a:hover { background: var(--c-cream); color: var(--c-gold-dk); padding-left: 1.2rem; }

/* Book Now */
.header-book-btn {
  background: linear-gradient(130deg, var(--c-gold-lt), var(--c-gold), var(--c-gold-dk));
  color: var(--c-navy) !important; font-size: 0.7rem; font-weight: 800;
  letter-spacing: 0.1em; text-transform: uppercase;
  padding: 0.6rem 1.4rem; border-radius: var(--r-sm);
  text-decoration: none; white-space: nowrap;
  box-shadow: 0 4px 16px rgba(201,168,76,0.4);
  transition: all var(--dur-base) var(--ease-spring);
}
.header-book-btn:hover { transform: translateY(-2px); box-shadow: 0 8px 28px rgba(201,168,76,0.5); }

/* ─────────────────────────────────────────────────────────────
   21. MOBILE MENU — DEFINITIVE FIX (solid, no blur)
───────────────────────────────────────────────────────────── */
@media (min-width: 769px) {
  .main-nav { display: flex !important; position: static !important; background: none !important; opacity: 1 !important; pointer-events: auto !important; transform: none !important; padding: 0 !important; overflow: visible !important; height: auto !important; width: auto !important; backdrop-filter: none !important; }
  .mobile-menu-toggle { display: none !important; }
  .mobile-overlay { display: none !important; }
  .mobile-book-bar { display: none !important; }
  .float-call-btn { display: none !important; }
  body { padding-bottom: 0 !important; }
}

@media (max-width: 768px) {
  /* Hamburger */
  .mobile-menu-toggle {
    display: flex !important;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 5px;
    width: 44px; height: 44px;
    background: rgba(255,255,255,0.12);
    border: 1.5px solid rgba(255,255,255,0.3);
    border-radius: 10px;
    cursor: pointer; padding: 0;
    z-index: 9999; flex-shrink: 0;
    transition: background 0.2s, border-color 0.2s;
  }
  .header--scrolled .mobile-menu-toggle { background: rgba(13,33,55,0.07); border-color: rgba(13,33,55,0.2); }
  .mobile-menu-toggle span { display: block; width: 20px; height: 2px; background: #fff; border-radius: 2px; transition: transform 0.3s ease, opacity 0.3s ease, width 0.3s ease; transform-origin: center; }
  .header--scrolled .mobile-menu-toggle span { background: var(--c-navy); }
  .mobile-menu-toggle.is-active span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
  .mobile-menu-toggle.is-active span:nth-child(2) { opacity: 0; width: 0; }
  .mobile-menu-toggle.is-active span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

  /* SOLID mobile nav — zero blur, zero transparency */
  .main-nav {
    position: fixed !important;
    top: 0 !important; left: 0 !important; right: 0 !important; bottom: 0 !important;
    width: 100vw !important; height: 100vh !important; height: 100dvh !important;
    background: #0d2137 !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    z-index: 9995 !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transform: translateX(-100%) !important;
    transition: transform 0.38s cubic-bezier(0.4,0,0.2,1), opacity 0.3s ease !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    padding: 5rem 2rem 3rem !important;
  }
  .main-nav.is-open { opacity: 1 !important; pointer-events: auto !important; transform: translateX(0%) !important; }

  /* Nav menu — vertical center */
  .main-nav .nav-menu { display: flex !important; flex-direction: column !important; align-items: center !important; width: 100% !important; max-width: 300px !important; gap: 0 !important; list-style: none !important; padding: 0 !important; margin: 0 !important; }
  .main-nav .nav-menu > .menu-item { width: 100% !important; border-bottom: 1px solid rgba(255,255,255,0.08) !important; }
  .main-nav .nav-menu > .menu-item:first-child { border-top: 1px solid rgba(255,255,255,0.08) !important; }
  .main-nav .nav-menu > .menu-item > a { display: flex !important; align-items: center !important; justify-content: space-between !important; padding: 1.1rem 0 !important; font-size: 1rem !important; font-weight: 600 !important; letter-spacing: 0.06em !important; text-transform: uppercase !important; color: rgba(255,255,255,0.9) !important; width: 100% !important; }
  .main-nav .nav-menu > .menu-item > a::after { display: none !important; }
  .main-nav .nav-menu > .menu-item > a:hover { color: var(--c-gold-lt) !important; }
  .main-nav .nav-menu .sub-menu { position: static !important; opacity: 1 !important; visibility: hidden !important; transform: none !important; pointer-events: none !important; box-shadow: none !important; background: rgba(255,255,255,0.04) !important; border-radius: 8px !important; padding: 0 !important; max-height: 0 !important; overflow: hidden !important; transition: max-height 0.35s ease, visibility 0.35s, padding 0.25s !important; backdrop-filter: none !important; border: none !important; width: 100% !important; }
  .main-nav .nav-menu .sub-menu::before { display: none !important; }
  .main-nav .nav-menu .menu-item-has-children.sub-open > .sub-menu { visibility: visible !important; max-height: 500px !important; pointer-events: auto !important; padding: 0.5rem 0 !important; margin-bottom: 0.5rem !important; }
  .main-nav .nav-menu .sub-menu .menu-item > a { color: rgba(255,255,255,0.65) !important; padding: 0.65rem 1rem !important; font-size: 0.85rem !important; display: block !important; }
  .main-nav .nav-menu .sub-menu .menu-item > a:hover { color: var(--c-gold-lt) !important; background: rgba(255,255,255,0.06) !important; padding-left: 1.5rem !important; }

  /* Close btn */
  .mobile-nav-close { display: flex !important; position: fixed !important; top: 1rem !important; right: 1rem !important; z-index: 9999 !important; width: 44px !important; height: 44px !important; background: rgba(255,255,255,0.1) !important; border: 1.5px solid rgba(255,255,255,0.2) !important; border-radius: 50% !important; color: #fff !important; font-size: 1.1rem !important; cursor: pointer !important; align-items: center !important; justify-content: center !important; }
  .mobile-nav-close:hover { background: rgba(255,255,255,0.2) !important; }

  /* Overlay */
  .mobile-overlay { display: none; position: fixed; inset: 0; background: rgba(0,0,0,0.6); z-index: 9990; opacity: 0; transition: opacity 0.3s ease; }
  .mobile-overlay.is-active { display: block; opacity: 1; }

  /* Mobile bar */
  .mobile-book-bar { display: flex !important; }
  body { padding-bottom: calc(64px + env(safe-area-inset-bottom,0px)); }
  body.nav-open { overflow: hidden; }
}

/* ─────────────────────────────────────────────────────────────
   22. FLOATING ELEMENTS — WhatsApp, Call, Progress
───────────────────────────────────────────────────────────── */
/* Scroll progress */
.scroll-progress { position: fixed; top: 0; left: 0; right: 0; height: 3px; z-index: 9999; background: rgba(255,255,255,0.08); }
.scroll-progress-bar { height: 100%; background: linear-gradient(90deg, var(--c-gold-dk), var(--c-gold-lt), var(--c-gold-dk)); background-size: 200% 100%; animation: progressShimmer 2s linear infinite; width: 0; transition: width 0.1s linear; border-radius: 0 2px 2px 0; }
@keyframes progressShimmer { 0% { background-position: 200% 0; } 100% { background-position: 0 0; } }

/* WhatsApp */
.whatsapp-float { position: fixed; bottom: 5.5rem; right: 1.5rem; z-index: 9970; display: flex; flex-direction: column; align-items: flex-end; gap: 0.5rem; }
.whatsapp-tooltip { background: var(--c-navy); color: #fff; font-size: 0.7rem; font-weight: 600; padding: 0.4rem 0.875rem; border-radius: var(--r-pill); white-space: nowrap; opacity: 0; transform: translateX(8px); transition: opacity 0.25s ease, transform 0.25s ease; pointer-events: none; box-shadow: var(--elev-2); }
.whatsapp-float:hover .whatsapp-tooltip { opacity: 1; transform: translateX(0); }
.whatsapp-float-btn { width: 56px; height: 56px; background: #25D366; border-radius: 50%; display: flex; align-items: center; justify-content: center; box-shadow: 0 6px 24px rgba(37,211,102,0.45); transition: all var(--dur-base) var(--ease-spring); animation: waPulse 3s ease-in-out infinite; }
.whatsapp-float-btn:hover { transform: scale(1.12); box-shadow: 0 10px 36px rgba(37,211,102,0.55); animation: none; }
@keyframes waPulse { 0%,100% { box-shadow: 0 6px 24px rgba(37,211,102,0.45), 0 0 0 0 rgba(37,211,102,0.3); } 50% { box-shadow: 0 6px 24px rgba(37,211,102,0.45), 0 0 0 12px rgba(37,211,102,0); } }

/* Float call (mobile) */
.float-call-btn { display: none; position: fixed; bottom: 5rem; left: 1.5rem; z-index: 9970; width: 52px; height: 52px; background: var(--c-navy); border-radius: 50%; align-items: center; justify-content: center; box-shadow: var(--elev-3); border: 2px solid rgba(201,168,76,0.3); text-decoration: none; color: var(--c-gold-lt); font-size: 1.35rem; transition: all var(--dur-base) var(--ease-spring); }
.float-call-btn:hover { transform: scale(1.1); border-color: var(--c-gold); }
@media (max-width: 768px) { .float-call-btn { display: flex !important; } .whatsapp-float { bottom: 5rem; right: 1rem; } .whatsapp-float-btn { width: 50px; height: 50px; } }

/* Mobile book bar — 3 buttons */
.mobile-book-bar { display: none; position: fixed; bottom: 0; left: 0; right: 0; z-index: 9980; background: var(--c-navy); padding: 0.75rem 1rem; padding-bottom: calc(0.75rem + env(safe-area-inset-bottom,0px)); gap: 0.625rem; align-items: center; box-shadow: 0 -4px 24px rgba(13,33,55,0.3); border-top: 1px solid rgba(201,168,76,0.2); }
.mobile-book-bar > a:first-child { flex: 1; display: flex !important; align-items: center; justify-content: center; gap: 0.375rem; border-radius: var(--r-sm); text-decoration: none; font-size: 0.72rem; font-weight: 800; letter-spacing: 0.07em; text-transform: uppercase; padding: 0.7rem 0.5rem; background: linear-gradient(130deg, var(--c-gold-lt), var(--c-gold), var(--c-gold-dk)); color: var(--c-navy) !important; box-shadow: 0 4px 14px rgba(201,168,76,0.35); }
.mobile-book-bar-phone { display: flex; flex: 1; }
.mobile-book-bar-phone a { flex: 1; display: flex !important; align-items: center; justify-content: center; gap: 0.375rem; border-radius: var(--r-sm); text-decoration: none; font-size: 0.72rem; font-weight: 700; letter-spacing: 0.07em; text-transform: uppercase; padding: 0.7rem 0.5rem; background: rgba(255,255,255,0.08); color: rgba(255,255,255,0.88) !important; border: 1px solid rgba(255,255,255,0.12); }

/* ─────────────────────────────────────────────────────────────
   23. SCROLL REVEAL SYSTEM
───────────────────────────────────────────────────────────── */
[data-reveal] { opacity: 0; transition-property: opacity, transform, filter; transition-timing-function: var(--ease-reveal); transition-duration: 0.75s; will-change: opacity, transform; }
[data-reveal="fade-up"], [data-reveal] { transform: translateY(32px); }
[data-reveal="fade-down"] { transform: translateY(-32px); }
[data-reveal="fade-left"] { transform: translateX(40px); }
[data-reveal="fade-right"] { transform: translateX(-40px); }
[data-reveal="scale-in"] { transform: scale(0.9); }
[data-reveal].revealed { opacity: 1; transform: none !important; }

/* Staggered delays */
[data-delay="100"] { transition-delay: 0.1s; }
[data-delay="200"] { transition-delay: 0.2s; }
[data-delay="250"] { transition-delay: 0.25s; }
[data-delay="300"] { transition-delay: 0.3s; }
[data-delay="350"] { transition-delay: 0.35s; }
[data-delay="400"] { transition-delay: 0.4s; }

/* ─────────────────────────────────────────────────────────────
   24. PAGE HERO (inner pages)
───────────────────────────────────────────────────────────── */
.page-hero { position: relative; min-height: 480px; display: flex; align-items: flex-end; overflow: hidden; }
.page-hero-bg { position: absolute; inset: 0; z-index: 0; }
.page-hero-bg img { width: 100%; height: 100%; object-fit: cover; }
.page-hero-bg::after { content: ''; position: absolute; inset: 0; background: linear-gradient(to top, rgba(13,33,55,0.9) 0%, rgba(13,33,55,0.45) 50%, rgba(13,33,55,0.2) 100%); }
.page-hero-content { position: relative; z-index: 2; padding: var(--sp-10) 0 var(--sp-8); }
.page-hero-title { font-family: 'Playfair Display', serif; font-size: clamp(2rem, 5vw, 3.5rem); color: var(--c-white); font-weight: 800; margin: var(--sp-1) 0 0; text-shadow: 0 2px 20px rgba(0,0,0,0.3); }
.page-hero-subtitle { font-size: 1rem; color: rgba(255,255,255,0.72); line-height: 1.7; margin-top: var(--sp-2); max-width: 540px; }

/* ─────────────────────────────────────────────────────────────
   25. AWARDS TICKER
───────────────────────────────────────────────────────────── */
.awards-bar { background: var(--c-cream); border-top: 1px solid rgba(13,33,55,0.06); border-bottom: 1px solid rgba(13,33,55,0.06); padding: 0.875rem 0; overflow: hidden; }
.award-item { color: var(--c-stone); font-size: 0.73rem; font-weight: 600; letter-spacing: 0.05em; white-space: nowrap; display: flex; align-items: center; gap: 0.4rem; padding: 0 var(--sp-5); }

/* ─────────────────────────────────────────────────────────────
   26. MOBILE FULL RESPONSIVE
───────────────────────────────────────────────────────────── */
@media (max-width: 768px) {
  .section { padding: var(--section-md) 0; }
  .section-header { margin-bottom: var(--sp-6); }
  .section-title { font-size: clamp(1.5rem, 5.5vw, 2rem); }
  .grid-2, .grid-3, .grid-4 { grid-template-columns: 1fr !important; gap: var(--sp-3) !important; }
  .grid-split, .about-snippet, .dining-split, .event-section-split, .event-enquiry-inner { grid-template-columns: 1fr !important; gap: var(--sp-6) !important; }
  [style*="grid-template-columns:1fr 1fr"],[style*="grid-template-columns:2fr 1fr"],[style*="grid-template-columns:1fr 1.5fr"],[style*="grid-template-columns:1fr 2fr"] { grid-template-columns: 1fr !important; gap: var(--sp-5) !important; }
  [style*="position:sticky"] { position: static !important; }
  .newsletter-inner { flex-direction: column !important; gap: var(--sp-5) !important; }
  .newsletter-form { flex-direction: column; width: 100%; }
  .newsletter-input { min-width: 0; width: 100%; }
  .newsletter-form .btn { width: 100%; }
  .footer-bottom { flex-direction: column; text-align: center; }
  .hero-ctas { flex-direction: column; align-items: flex-start; gap: var(--sp-2); }
  .hero-ctas .btn-hero--primary, .hero-ctas .btn-hero--ghost { max-width: 300px; width: 100%; justify-content: center; }
  .availability-banner__inner { flex-direction: column; align-items: flex-start; gap: var(--sp-3); border-radius: 0 0 var(--r-lg) var(--r-lg); padding: var(--sp-4) var(--sp-3); }
  .availability-banner__btn { width: 100%; justify-content: center; }
  .reviews-grid { grid-template-columns: 1fr; }
  .reviews-breakdown { grid-template-columns: 1fr 1fr; }
  .reviews-overall { flex-direction: column; text-align: center; gap: var(--sp-2); padding: var(--sp-3); }
  .reviews-footer { gap: var(--sp-4); padding: var(--sp-4); }
  .home-gallery-grid { grid-template-columns: repeat(2,1fr) !important; grid-template-rows: auto !important; }
  .home-gallery-item--tall { grid-row: span 1 !important; }
  .home-gallery-item { aspect-ratio: 4/3; }
  .stats-grid { grid-template-columns: repeat(2,1fr) !important; }
  .amenities-grid { grid-template-columns: repeat(2,1fr) !important; gap: var(--sp-2) !important; }
  .page-hero { min-height: 340px; }
  .testimonial-card { flex: 0 0 100%; }
  .pkg-grid { grid-template-columns: 1fr !important; }
  .celebration-grid { grid-template-columns: 1fr !important; }
  .venue-why-grid { grid-template-columns: repeat(2,1fr) !important; }
  iframe[src*="google.com/maps"] { height: 260px !important; }
}

@media (max-width: 480px) {
  :root { --section-lg: 2.5rem; --section-md: 2rem; }
  .container { padding-left: 1rem; padding-right: 1rem; }
  .room-card__body { padding: var(--sp-3); }
  .amenity-card { padding: var(--sp-3) var(--sp-2) !important; }
  .amenity-icon { font-size: 1.8rem !important; }
  .stat-number { font-size: 1.8rem !important; }
  .hero-title { font-size: clamp(1.6rem, 8vw, 2.4rem); }
  .reviews-breakdown { grid-template-columns: 1fr; }
  .reviews-footer { flex-direction: column; align-items: center; gap: var(--sp-3); }
  .rtb-num { font-size: 1.75rem; }
  .about-snippet__badge { display: none; }
}

/* Safe area */
@supports (padding: env(safe-area-inset-bottom)) {
  .mobile-book-bar { padding-bottom: calc(0.75rem + env(safe-area-inset-bottom)); }
  @media (max-width: 768px) { body { padding-bottom: calc(64px + env(safe-area-inset-bottom)); } }
}

/* Landscape phone */
@media (max-height: 500px) and (orientation: landscape) {
  .hero-cinematic { min-height: 100vw; }
  .hero-title { font-size: 1.5rem; }
  .hero-subtitle { display: none; }
  .hero-stats { display: none; }
  .hero-content { padding-bottom: 7rem; }
  .hero-scroll-cue { display: none; }
}

/* Focus accessibility */
:focus-visible { outline: 2px solid var(--c-gold); outline-offset: 3px; border-radius: 4px; }

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: 0.01ms !important; transition-duration: 0.1ms !important; }
  [data-reveal] { opacity: 1 !important; transform: none !important; }
  .hero-scroll-cue { animation: none; }
  .hero-scroll-cue__wheel { animation: none; }
  .whatsapp-float-btn { animation: none; }
  .scroll-progress-bar { animation: none; }
}

/* ── design-v8.css (36,471b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v8
   All 10 Priority Fixes + PHP Error Fix
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   1. HERO v8 — Full-screen, centered, fixed background
───────────────────────────────────────────────────────────── */

/* Spacer pushes content below hero */
.v8-hero__spacer {
  height: 100vh;
  height: 100svh;
  pointer-events: none;
}

/* Hero wrapper */
.v8-hero {
  position: fixed;          /* FIXED: image never moves on scroll */
  top: 0; left: 0; right: 0; bottom: 0;
  width: 100%;
  height: 100vh;
  height: 100svh;
  z-index: 1;               /* behind all page content */
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Ensure page content sits ABOVE hero */
.site-header { z-index: 1000; }
.availability-banner { position: relative; z-index: 10; }
.section, footer, .awards-bar, .newsletter-section,
.wow-section, .virtual-tour-section { position: relative; z-index: 10; }

/* Make the spacer + all content render over the fixed hero */
main > *:not(.v8-hero):not(.v8-hero__spacer) { position: relative; z-index: 10; }

/* Background slide stack */
.v8-hero__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.v8-hero__slide {
  position: absolute;
  inset: 0;
  opacity: 0;
  transition: opacity 0s;
  overflow: hidden;
  will-change: opacity;
}
.v8-hero__slide.is-active  { opacity: 1; z-index: 2; }
.v8-hero__slide.is-entering { z-index: 3; animation: v8SlideIn 1.1s ease forwards; }
@keyframes v8SlideIn {
  0%   { opacity: 0; clip-path: polygon(0 0,0 0,0 100%,0 100%); }
  20%  { opacity: 1; }
  100% { opacity: 1; clip-path: polygon(0 0,100% 0,100% 100%,0 100%); }
}

.v8-hero__slide img {
  width: 100%; height: 100%;
  object-fit: cover;
  object-position: center 35%;
  display: block;
  transition: transform 7s cubic-bezier(0.25,0.46,0.45,0.94);
}

/* Overlays */
.v8-hero__overlay { position: absolute; inset: 0; pointer-events: none; z-index: 3; }
.v8-hero__overlay--dark {
  background: linear-gradient(170deg, rgba(5,15,30,0.18) 0%, rgba(5,15,30,0.52) 40%, rgba(5,15,30,0.80) 100%);
}
.v8-hero__overlay--bottom {
  background: linear-gradient(to top, rgba(5,15,30,0.88) 0%, transparent 55%);
}
.v8-hero__overlay--vignette {
  background: radial-gradient(ellipse at center, transparent 40%, rgba(5,15,30,0.55) 100%);
}

/* ── CENTERED CONTENT ── */
.v8-hero__content {
  position: relative;
  z-index: 5;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: calc(76px + 2rem) 2rem 10rem;
  text-align: center;
}
.v8-hero__inner { max-width: 820px; width: 100%; }

/* Eyebrow */
.v8-hero__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: #e0c97a;
  margin-bottom: 1.25rem;
}
.v8-eyebrow-dot { width: 4px; height: 4px; border-radius: 50%; background: currentColor; opacity: 0.7; }

/* Title */
.v8-hero__title {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: clamp(2.4rem, 6.5vw, 5.5rem);
  font-weight: 800;
  color: #fff;
  line-height: 1.08;
  letter-spacing: -0.02em;
  margin: 0 0 0.5rem;
  text-shadow: 0 4px 40px rgba(0,0,0,0.35);
}

/* Gold rule */
.v8-hero__rule {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  margin: 1.25rem auto 1.5rem;
}
.v8-rule-line { flex: 1; max-width: 80px; height: 1px; background: linear-gradient(90deg, transparent, #c9a84c); }
.v8-rule-line:last-child { background: linear-gradient(90deg, #c9a84c, transparent); }
.v8-rule-diamond { color: #c9a84c; font-size: 0.55rem; }

/* Subtitle */
.v8-hero__subtitle {
  font-size: clamp(0.95rem, 1.6vw, 1.2rem);
  color: rgba(255,255,255,0.84);
  line-height: 1.8;
  max-width: 580px;
  margin: 0 auto 2.25rem;
  text-shadow: 0 1px 10px rgba(0,0,0,0.2);
}

/* CTA Buttons */
.v8-hero__ctas {
  display: flex;
  gap: 1rem;
  justify-content: center;
  flex-wrap: wrap;
  margin-bottom: 2.5rem;
}
.v8-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
  font-family: 'Inter', sans-serif;
  font-size: 0.75rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-decoration: none;
  padding: 1rem 2.25rem;
  border-radius: 10px;
  border: none;
  cursor: pointer;
  position: relative;
  overflow: hidden;
  transition: transform 0.3s cubic-bezier(0.34,1.56,0.64,1), box-shadow 0.3s ease;
  white-space: nowrap;
}
.v8-btn::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(130deg,rgba(255,255,255,0.2),transparent);
  opacity: 0;
  transition: opacity 0.3s ease;
}
.v8-btn:hover::before { opacity: 1; }
.v8-btn--primary {
  background: linear-gradient(130deg, #e0c97a, #c9a84c, #a07828);
  color: #0d2137;
  box-shadow: 0 8px 32px rgba(201,168,76,0.4);
}
.v8-btn--primary:hover { transform: translateY(-4px); box-shadow: 0 16px 48px rgba(201,168,76,0.55); }
.v8-btn--ghost {
  background: rgba(255,255,255,0.1);
  color: #fff;
  border: 1.5px solid rgba(255,255,255,0.5);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}
.v8-btn--ghost:hover { background: rgba(255,255,255,0.18); border-color: rgba(255,255,255,0.75); transform: translateY(-2px); }

/* Trust bar */
.v8-hero__trust {
  display: inline-flex;
  align-items: center;
  gap: 0;
  background: rgba(255,255,255,0.08);
  border: 1px solid rgba(255,255,255,0.14);
  border-radius: 999px;
  padding: 0.625rem 1.5rem;
  backdrop-filter: blur(8px);
  gap: 0;
}
.v8-trust-item { text-align: center; padding: 0 1.25rem; }
.v8-trust-val { display: block; font-family: 'Playfair Display',serif; font-size: 1rem; font-weight: 800; color: #e0c97a; line-height: 1.1; }
.v8-trust-lbl { display: block; font-size: 0.55rem; letter-spacing: 0.12em; text-transform: uppercase; color: rgba(255,255,255,0.5); margin-top: 0.15rem; }
.v8-trust-sep { width: 1px; height: 28px; background: rgba(255,255,255,0.15); flex-shrink: 0; }

/* Slide controls */
.v8-hero__controls {
  position: absolute;
  bottom: 3rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: 6;
  display: flex;
  align-items: center;
  gap: 0.875rem;
}
.v8-hero__arrow {
  display: flex; align-items: center; justify-content: center;
  width: 40px; height: 40px;
  border-radius: 50%;
  border: 1.5px solid rgba(255,255,255,0.3);
  background: rgba(255,255,255,0.08);
  backdrop-filter: blur(10px);
  color: #fff; cursor: pointer; padding: 0;
  transition: all 0.25s ease;
  flex-shrink: 0;
}
.v8-hero__arrow svg { width: 18px; height: 18px; }
.v8-hero__arrow:hover { background: #c9a84c; border-color: #c9a84c; color: #0d2137; transform: scale(1.1); }
.v8-hero__dots { display: flex; gap: 0.5rem; align-items: center; }
.v8-dot {
  width: 28px; height: 2px; padding: 5px 0; background: none; border: none; cursor: pointer;
  position: relative; transition: width 0.35s ease;
}
.v8-dot.is-active { width: 46px; }
.v8-dot__bar {
  display: block; height: 2px; width: 100%;
  background: rgba(255,255,255,0.3); border-radius: 2px;
  overflow: hidden; position: relative;
}
.v8-dot.is-active .v8-dot__bar::after {
  content: '';
  position: absolute; inset: 0;
  background: #c9a84c;
  animation: v8DotFill 6.5s linear forwards;
}
@keyframes v8DotFill { from { transform: scaleX(0); } to { transform: scaleX(1); } }

/* Scroll indicator */
.v8-hero__scroll {
  position: absolute; bottom: 1.5rem; left: 50%; transform: translateX(-50%);
  z-index: 6; display: flex; flex-direction: column; align-items: center; gap: 0.4rem;
  background: none; border: none; cursor: pointer; color: rgba(255,255,255,0.6);
  padding: 0; animation: v8ScrollFloat 2.2s ease-in-out infinite;
}
@keyframes v8ScrollFloat { 0%,100%{transform:translateX(-50%) translateY(0);opacity:.7;} 55%{transform:translateX(-50%) translateY(7px);opacity:1;} }
.v8-scroll-mouse { width: 22px; height: 34px; border: 2px solid rgba(255,255,255,0.4); border-radius: 11px; display: flex; justify-content: center; padding-top: 5px; }
.v8-scroll-wheel { width: 3px; height: 7px; background: #e0c97a; border-radius: 2px; animation: v8Wheel 2s ease infinite; }
@keyframes v8Wheel { 0%,100%{transform:translateY(0);opacity:1;} 65%{transform:translateY(11px);opacity:0;} }
.v8-scroll-label { font-size: 0.52rem; letter-spacing: 0.2em; text-transform: uppercase; }

/* Mobile hero */
@media (max-width: 768px) {
  .v8-hero__title { font-size: clamp(1.75rem,8vw,2.8rem); }
  .v8-hero__subtitle { font-size: 0.9rem; }
  .v8-hero__ctas { flex-direction: column; align-items: center; gap: 0.75rem; }
  .v8-btn { width: 100%; max-width: 300px; justify-content: center; }
  .v8-hero__trust { flex-direction: column; border-radius: 16px; padding: 1rem 1.5rem; gap: 0.5rem; }
  .v8-trust-sep { width: 60px; height: 1px; }
  .v8-trust-item { padding: 0; }
  .v8-hero__scroll { display: none; }
  .v8-hero__controls { bottom: 1.5rem; gap: 0.625rem; }
  .v8-hero__arrow { width: 36px; height: 36px; }
  .v8-hero__spacer { height: 100vh; height: 100svh; }
}
@media (max-width: 480px) {
  .v8-hero__trust { display: none; }
}

/* ─────────────────────────────────────────────────────────────
   2. FLOATING "BOOK NOW" — Desktop bottom-right
───────────────────────────────────────────────────────────── */
.v8-float-book {
  position: fixed;
  bottom: 7rem;
  right: 1.5rem;
  z-index: 9960;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  background: linear-gradient(135deg, #C0392B 0%, #E8570A 45%, #FF9F43 70%, #E8570A 100%);
  background-size: 200% auto;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-family: 'Plus Jakarta Sans', 'DM Sans', sans-serif;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.10em;
  text-transform: uppercase;
  text-decoration: none;
  padding: 0.78rem 1.6rem;
  border-radius: 999px;
  box-shadow:
    0 8px 28px rgba(232,87,10,.50),
    0 0 0 3px rgba(232,87,10,.12),
    inset 0 1px 0 rgba(255,255,255,.22);
  transition: transform 0.3s cubic-bezier(0.34,1.56,0.64,1), box-shadow .28s ease;
  white-space: nowrap;
}
.v8-float-book svg {
  stroke: #fff !important;
  fill: none !important;
}
.v8-float-book:hover {
  transform: translateY(-4px) scale(1.06);
  box-shadow:
    0 16px 48px rgba(232,87,10,.60),
    0 0 60px rgba(232,87,10,.20),
    0 0 0 3px rgba(232,87,10,.25),
    inset 0 1px 0 rgba(255,255,255,.25);
}

/* Hide on mobile (mobile has sticky bar instead) */
@media (max-width: 768px) { .v8-float-book { display: none !important; } }

/* ─────────────────────────────────────────────────────────────
   3. ROOM CARDS v8 — Image-overlay style
───────────────────────────────────────────────────────────── */
.v8-room-card {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 8px 32px rgba(13,33,55,0.14);
  transition: transform 0.45s cubic-bezier(0.34,1.56,0.64,1), box-shadow 0.4s ease;
  cursor: pointer;
  display: block;
  min-height: 420px;
}
.v8-room-card:hover { transform: translateY(-12px); box-shadow: 0 28px 72px rgba(13,33,55,0.22); }

.v8-room-card__img {
  position: relative;
  width: 100%;
  height: 100%;
  min-height: 420px;
}
.v8-room-card__img > img {
  position: absolute;
  inset: 0;
  width: 100%; height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.65s cubic-bezier(0.25,0.46,0.45,0.94);
}
.v8-room-card:hover .v8-room-card__img > img { transform: scale(1.08); }

/* Badge chips */
.v8-room-card__badges {
  position: absolute;
  top: 1rem; left: 1rem;
  z-index: 3;
  display: flex;
  gap: 0.5rem;
  flex-wrap: wrap;
}
.v8-room-badge {
  font-size: 0.62rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 0.3rem 0.7rem;
  border-radius: 999px;
}
.v8-room-badge--cat { background: rgba(13,33,55,0.82); color: rgba(255,255,255,0.88); backdrop-filter: blur(8px); }
.v8-room-badge--featured { background: linear-gradient(135deg, #e0c97a, #c9a84c); color: #0d2137; box-shadow: 0 4px 12px rgba(201,168,76,0.4); }

/* NPR price badge */
.v8-room-card__npr {
  position: absolute;
  top: 1rem; right: 1rem;
  z-index: 3;
  background: rgba(255,255,255,0.92);
  border-radius: 10px;
  padding: 0.4rem 0.75rem;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  backdrop-filter: blur(8px);
  box-shadow: 0 4px 16px rgba(0,0,0,0.15);
}
.v8-npr-from { font-size: 0.5rem; color: #888; letter-spacing: 0.08em; text-transform: uppercase; line-height: 1; }
.v8-npr-val { font-size: 0.8rem; font-weight: 800; color: #0d2137; line-height: 1.2; }

/* Bottom overlay — full gradient, text sits over image */
.v8-room-card__overlay {
  position: absolute;
  bottom: 0; left: 0; right: 0;
  z-index: 4;
  padding: 3.5rem 1.5rem 1.5rem;
  background: linear-gradient(to top, rgba(5,15,30,0.97) 0%, rgba(5,15,30,0.75) 50%, transparent 100%);
  transform: translateY(0);
  transition: transform 0.4s ease;
}
.v8-room-card:hover .v8-room-card__overlay { transform: translateY(-6px); }

.v8-room-card__title {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 1.25rem;
  font-weight: 700;
  color: #fff;
  margin: 0 0 0.35rem;
  line-height: 1.25;
  text-shadow: 0 1px 8px rgba(0,0,0,0.3);
}
.v8-room-card__desc {
  font-size: 0.78rem;
  color: rgba(255,255,255,0.72);
  line-height: 1.6;
  margin: 0 0 0.875rem;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.v8-room-card__features {
  display: flex;
  gap: 0.375rem;
  flex-wrap: wrap;
  margin-bottom: 1rem;
}
.v8-rcf {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  font-size: 0.62rem;
  font-weight: 600;
  color: rgba(255,255,255,0.8);
  background: rgba(255,255,255,0.12);
  border: 1px solid rgba(255,255,255,0.2);
  border-radius: 999px;
  padding: 0.25rem 0.625rem;
  backdrop-filter: blur(6px);
  white-space: nowrap;
}
.v8-room-card__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  flex-wrap: wrap;
}
.v8-price-amount { font-family: 'Playfair Display',serif; font-size: 1.4rem; font-weight: 800; color: #e0c97a; }
.v8-price-night { font-size: 0.65rem; color: rgba(255,255,255,0.55); }
.v8-room-card__book {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  background: linear-gradient(130deg, #e0c97a, #c9a84c);
  color: #0d2137;
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  padding: 0.55rem 1.1rem;
  border-radius: 8px;
  transition: all 0.25s ease;
  box-shadow: 0 4px 14px rgba(201,168,76,0.4);
  white-space: nowrap;
}
.v8-room-card__book:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(201,168,76,0.55); }

/* Override grid to use new card */
.grid-3 .v8-room-card { min-height: 420px; }

/* ─────────────────────────────────────────────────────────────
   4. FACILITIES — Clean icon grid
───────────────────────────────────────────────────────────── */
/* Already handled in design-v7 amenity-card — enhance hover */
.amenity-card {
  background: #fff;
  border-radius: 20px;
  padding: 2rem 1.5rem;
  text-align: center;
  box-shadow: 0 4px 20px rgba(13,33,55,0.08);
  border: 1px solid rgba(13,33,55,0.05);
  position: relative;
  overflow: hidden;
  cursor: default;
  transition: transform 0.4s cubic-bezier(0.34,1.56,0.64,1), box-shadow 0.35s ease, border-color 0.3s ease;
}
.amenity-card::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 3px;
  background: linear-gradient(90deg, #a07828, #e0c97a);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.4s cubic-bezier(0.34,1.56,0.64,1);
}
.amenity-card:hover { transform: translateY(-8px); box-shadow: 0 20px 52px rgba(13,33,55,0.14); border-color: rgba(201,168,76,0.2); }
.amenity-card:hover::before { transform: scaleX(1); }
.amenity-icon { display: block; font-size: 2.4rem; margin-bottom: 0.875rem; transition: transform 0.3s cubic-bezier(0.34,1.56,0.64,1); }
.amenity-card:hover .amenity-icon { transform: scale(1.2) translateY(-3px); }

/* ─────────────────────────────────────────────────────────────
   5. GALLERY — Lightbox for home gallery + no redirect
───────────────────────────────────────────────────────────── */
/* Home gallery items as buttons */
.home-gallery-item {
  border-radius: 14px;
  overflow: hidden;
  position: relative;
  cursor: pointer;
  display: block;
  border: none;
  padding: 0;
  background: none;
  transition: transform 0.4s cubic-bezier(0.34,1.56,0.64,1), box-shadow 0.35s ease;
}
.home-gallery-item img {
  width: 100%; height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.6s cubic-bezier(0.25,0.46,0.45,0.94);
}
.home-gallery-item:hover img { transform: scale(1.07); }
.home-gallery-item:hover { box-shadow: 0 20px 50px rgba(13,33,55,0.2); z-index: 2; }
.home-gallery-item__overlay {
  position: absolute; inset: 0;
  background: linear-gradient(to top, rgba(13,33,55,0.7) 0%, rgba(13,33,55,0.1) 50%, transparent 100%);
  opacity: 0;
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  padding: 1rem;
  transition: opacity 0.35s ease;
}
.home-gallery-item:hover .home-gallery-item__overlay { opacity: 1; }

/* ── LIGHTBOX ── */
.v8-lightbox {
  position: fixed;
  inset: 0;
  z-index: 99999;
  display: none;
  align-items: center;
  justify-content: center;
}
.v8-lightbox.is-open { display: flex; }
.v8-lightbox__backdrop {
  position: absolute; inset: 0;
  background: rgba(5,10,20,0.96);
  backdrop-filter: blur(6px);
  cursor: pointer;
}
.v8-lightbox__stage {
  position: relative;
  z-index: 2;
  max-width: min(94vw, 1200px);
  max-height: 88vh;
  display: flex;
  align-items: center;
  justify-content: center;
  animation: v8LBFade 0.35s ease forwards;
}
@keyframes v8LBFade { from { opacity:0; transform:scale(0.93); } to { opacity:1; transform:scale(1); } }
.v8-lightbox__img {
  max-width: 100%;
  max-height: 80vh;
  object-fit: contain;
  border-radius: 10px;
  box-shadow: 0 40px 80px rgba(0,0,0,0.6);
  display: block;
}
.v8-lightbox__loader {
  width: 44px; height: 44px;
  border: 3px solid rgba(255,255,255,0.15);
  border-top-color: #c9a84c;
  border-radius: 50%;
  animation: v8Spin 0.75s linear infinite;
  position: absolute;
}
@keyframes v8Spin { to { transform: rotate(360deg); } }

/* Caption + counter below image */
.v8-lightbox__info {
  position: absolute;
  bottom: -3.5rem; left: 0; right: 0;
  text-align: center;
  z-index: 3;
}
.v8-lightbox__caption { font-size: 0.82rem; color: rgba(255,255,255,0.75); margin: 0 0 0.25rem; }
.v8-lightbox__counter { font-size: 0.7rem; color: rgba(255,255,255,0.4); letter-spacing: 0.1em; }

/* Close / prev / next */
.v8-lb-close, .v8-lb-prev, .v8-lb-next {
  position: fixed;
  z-index: 99999;
  width: 48px; height: 48px;
  border-radius: 50%;
  background: rgba(255,255,255,0.1);
  border: 1.5px solid rgba(255,255,255,0.25);
  color: #fff;
  cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  font-size: 1rem;
  transition: background 0.2s, transform 0.2s;
  backdrop-filter: blur(8px);
  padding: 0;
}
.v8-lb-close { top: 1.25rem; right: 1.25rem; font-size: 1.2rem; }
.v8-lb-prev  { left: 1.25rem; top: 50%; transform: translateY(-50%); }
.v8-lb-next  { right: 1.25rem; top: 50%; transform: translateY(-50%); }
.v8-lb-prev svg, .v8-lb-next svg { width: 20px; height: 20px; }
.v8-lb-close:hover, .v8-lb-prev:hover, .v8-lb-next:hover { background: #c9a84c; border-color: #c9a84c; color: #0d2137; }
.v8-lb-prev:hover { transform: translateY(-50%) scale(1.08); }
.v8-lb-next:hover { transform: translateY(-50%) scale(1.08); }

/* ─────────────────────────────────────────────────────────────
   6. SECTION VARIATION — Break template look
───────────────────────────────────────────────────────────── */
/* White sections */
.section { background: #fffef9; }

/* Alt sections: warm gray */
.section--alt { background: #f5f2ed; }

/* Dark sections */
.section--dark { background: #0d2137; }

/* Section backgrounds alternate */
main > section:nth-child(odd):not(.section--alt):not(.section--dark):not(.virtual-tour-section):not(.newsletter-section):not(.final-cta-section):not(.wow-section) {
  background: #fffef9;
}
main > section:nth-child(even):not(.section--dark):not(.virtual-tour-section):not(.newsletter-section):not(.wow-section) {
  background: #f5f2ed;
}

/* Split layouts alternate: about = image-right, dining = image-left (already handled via PHP) */
.about-snippet { gap: clamp(3rem,6vw,6rem); }
.dining-split { gap: clamp(3rem,6vw,6rem); }

/* ─────────────────────────────────────────────────────────────
   7. WOW SECTION — Standout full-width moment
───────────────────────────────────────────────────────────── */
.wow-section {
  position: relative;
  min-height: 560px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  isolation: isolate;
}

.wow-section__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.wow-section__bg img {
  width: 100%; height: 100%;
  object-fit: cover;
  object-position: center 30%;
  display: block;
  transition: transform 8s cubic-bezier(0.25,0.46,0.45,0.94);
}
.wow-section:hover .wow-section__bg img { transform: scale(1.05); }
.wow-section__overlay {
  position: absolute; inset: 0;
  background: linear-gradient(160deg, rgba(5,15,30,0.55) 0%, rgba(5,15,30,0.80) 100%);
}

/* Content */
.wow-section__content {
  position: relative;
  z-index: 2;
  text-align: center;
  padding: 5rem 2rem;
  max-width: 720px;
}

.wow-eyebrow {
  font-size: 0.65rem;
  font-weight: 800;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: #c9a84c;
  margin: 0 0 1rem;
}

.wow-title {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: clamp(2rem, 5vw, 4rem);
  font-weight: 800;
  color: #fff;
  line-height: 1.12;
  margin: 0 0 1.25rem;
  text-shadow: 0 4px 30px rgba(0,0,0,0.3);
}

.wow-rule {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  margin: 0 auto 1.5rem;
}
.wow-rule span:first-child,
.wow-rule span:last-child {
  display: block;
  width: 60px; height: 1px;
  background: linear-gradient(90deg, transparent, rgba(201,168,76,0.8));
}
.wow-rule span:last-child { background: linear-gradient(90deg, rgba(201,168,76,0.8), transparent); }
.wow-rule-diamond { color: #c9a84c; font-size: 0.55rem; }

.wow-text {
  font-size: clamp(0.95rem, 1.5vw, 1.1rem);
  color: rgba(255,255,255,0.78);
  line-height: 1.85;
  margin: 0 auto 2.5rem;
  max-width: 580px;
}

.wow-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.625rem;
  background: linear-gradient(130deg, #e0c97a, #c9a84c, #a07828);
  color: #0d2137;
  font-family: 'Inter', sans-serif;
  font-size: 0.75rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-decoration: none;
  padding: 1.1rem 2.75rem;
  border-radius: 10px;
  box-shadow: 0 8px 32px rgba(201,168,76,0.4);
  transition: transform 0.3s cubic-bezier(0.34,1.56,0.64,1), box-shadow 0.3s ease;
}
.wow-btn:hover { transform: translateY(-4px) scale(1.02); box-shadow: 0 16px 48px rgba(201,168,76,0.55); }

@media (max-width: 768px) {
  .wow-section { min-height: 420px; }
  .wow-title { font-size: clamp(1.75rem, 7vw, 2.5rem); }
  .wow-section__content { padding: 3.5rem 1.5rem; }
}

/* ─────────────────────────────────────────────────────────────
   8. INTERACTIONS — Scroll animations + hover effects
───────────────────────────────────────────────────────────── */
/* Scroll reveal (already in v7, reinforce) */
[data-reveal] { opacity: 0; transition-property: opacity, transform; transition-timing-function: cubic-bezier(0.16,1,0.3,1); transition-duration: 0.75s; will-change: opacity, transform; }
[data-reveal]:not([data-reveal="fade-down"]):not([data-reveal="fade-left"]):not([data-reveal="fade-right"]):not([data-reveal="scale-in"]) { transform: translateY(30px); }
[data-reveal="fade-down"]  { transform: translateY(-30px); }
[data-reveal="fade-left"]  { transform: translateX(36px); }
[data-reveal="fade-right"] { transform: translateX(-36px); }
[data-reveal="scale-in"]   { transform: scale(0.9); }
[data-reveal].revealed { opacity: 1; transform: none !important; }
[data-delay="100"]  { transition-delay: 0.1s; }
[data-delay="200"]  { transition-delay: 0.2s; }
[data-delay="250"]  { transition-delay: 0.25s; }
[data-delay="300"]  { transition-delay: 0.3s; }
[data-delay="350"]  { transition-delay: 0.35s; }
[data-delay="400"]  { transition-delay: 0.4s; }

/* Button micro-interactions */
.btn:active { transform: translateY(0) scale(0.98) !important; }
.v8-btn:active { transform: scale(0.97) !important; }

/* Link hover underline grow */
.footer-menu a::after { content: ''; display: block; height: 1.5px; background: #c9a84c; width: 0; transition: width 0.3s ease; }
.footer-menu a:hover::after { width: 100%; }

/* ─────────────────────────────────────────────────────────────
   9. SPACING SYSTEM v8 — Consistent rhythm
───────────────────────────────────────────────────────────── */
/* Section padding: large between major sections */
.section { padding: clamp(5rem,8vw,8rem) 0; }
.section--sm { padding: clamp(2.5rem,4vw,4rem) 0; }

/* Section header bottom margin */
.section-header { margin-bottom: clamp(2.5rem,4vw,4rem); }

/* Grid gap */
.grid-3 { gap: clamp(1.25rem,2vw,2rem); }
.grid-2 { gap: clamp(1.5rem,3vw,3rem); }
.grid-4 { gap: clamp(1rem,1.5vw,1.5rem); }

/* Container padding */
.container { padding-left: clamp(1.25rem,4vw,2.5rem); padding-right: clamp(1.25rem,4vw,2.5rem); }

/* ─────────────────────────────────────────────────────────────
   10. MOBILE v8 — Sticky bar, responsive, fixed hero scroll
───────────────────────────────────────────────────────────── */
@media (min-width: 769px) {
  .main-nav { display: flex !important; position: static !important; background: none !important; opacity: 1 !important; pointer-events: auto !important; transform: none !important; padding: 0 !important; overflow: visible !important; height: auto !important; width: auto !important; backdrop-filter: none !important; }
  .mobile-menu-toggle { display: none !important; }
  .mobile-overlay { display: none !important; }
  .mobile-book-bar { display: none !important; }
  .float-call-btn { display: none !important; }
  body { padding-bottom: 0 !important; }
}

@media (max-width: 768px) {
  /* ── MOBILE MENU: SOLID, NO BLUR, VISIBLE ── */
  .mobile-menu-toggle { display: flex !important; }

  .main-nav {
    position: fixed !important;
    top: 0 !important; left: 0 !important; right: 0 !important; bottom: 0 !important;
    width: 100vw !important; height: 100vh !important; height: 100dvh !important;
    background: #0d2137 !important;
    background-color: #0d2137 !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    z-index: 9995 !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transform: translateX(-100%) !important;
    transition: transform 0.38s cubic-bezier(0.4,0,0.2,1), opacity 0.3s ease !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    overflow-y: auto !important;
    padding: 5rem 2rem 3rem !important;
  }
  .main-nav.is-open {
    opacity: 1 !important;
    pointer-events: auto !important;
    transform: translateX(0%) !important;
  }
  .main-nav .nav-menu {
    display: flex !important; flex-direction: column !important;
    align-items: center !important; width: 100% !important;
    max-width: 300px !important; gap: 0 !important;
    list-style: none !important; padding: 0 !important; margin: 0 !important;
  }
  .main-nav .nav-menu > .menu-item { width: 100% !important; border-bottom: 1px solid rgba(255,255,255,0.08) !important; }
  .main-nav .nav-menu > .menu-item:first-child { border-top: 1px solid rgba(255,255,255,0.08) !important; }
  .main-nav .nav-menu > .menu-item > a {
    display: flex !important; align-items: center !important;
    justify-content: space-between !important;
    padding: 1.1rem 0 !important; font-size: 1rem !important;
    font-weight: 600 !important; letter-spacing: 0.06em !important;
    text-transform: uppercase !important; color: rgba(255,255,255,0.92) !important;
    width: 100% !important; text-decoration: none !important;
  }
  .main-nav .nav-menu > .menu-item > a::after { display: none !important; }
  .main-nav .nav-menu > .menu-item > a:hover { color: #e0c97a !important; }

  .main-nav .nav-menu .sub-menu {
    position: static !important; opacity: 1 !important;
    visibility: hidden !important; transform: none !important;
    pointer-events: none !important; box-shadow: none !important;
    background: rgba(255,255,255,0.04) !important;
    border-radius: 8px !important; padding: 0 !important;
    max-height: 0 !important; overflow: hidden !important;
    transition: max-height 0.35s ease, visibility 0.35s, padding 0.25s !important;
    backdrop-filter: none !important; border: none !important; width: 100% !important;
  }
  .main-nav .nav-menu .sub-menu::before { display: none !important; }
  .main-nav .nav-menu .menu-item-has-children.sub-open > .sub-menu {
    visibility: visible !important; max-height: 500px !important;
    pointer-events: auto !important; padding: 0.5rem 0 !important;
  }
  .main-nav .nav-menu .sub-menu .menu-item > a {
    color: rgba(255,255,255,0.65) !important; padding: 0.65rem 1rem !important;
    font-size: 0.85rem !important; display: block !important;
  }
  .main-nav .nav-menu .sub-menu .menu-item > a:hover {
    color: #e0c97a !important; background: rgba(255,255,255,0.06) !important; padding-left: 1.5rem !important;
  }

  .mobile-nav-close {
    display: flex !important; position: fixed !important;
    top: 1rem !important; right: 1rem !important; z-index: 9999 !important;
    width: 44px !important; height: 44px !important;
    background: rgba(255,255,255,0.1) !important;
    border: 1.5px solid rgba(255,255,255,0.2) !important;
    border-radius: 50% !important; color: #fff !important;
    cursor: pointer !important; align-items: center !important; justify-content: center !important;
    font-size: 1.1rem !important;
  }

  .mobile-overlay { display: none; position: fixed; inset: 0; background: rgba(0,0,0,0.6); z-index: 9990; opacity: 0; transition: opacity 0.3s; }
  .mobile-overlay.is-active { display: block; opacity: 1; }

  /* Mobile sticky bar */
  .mobile-book-bar { display: flex !important; }
  body { padding-bottom: calc(64px + env(safe-area-inset-bottom,0px)); }
  body.nav-open { overflow: hidden; }

  /* Section responsiveness */
  .section { padding: clamp(3rem,6vw,5rem) 0; }
  .grid-3, .grid-4 { grid-template-columns: 1fr !important; gap: 1.25rem !important; }
  .grid-2 { grid-template-columns: 1fr !important; gap: 1.5rem !important; }
  .about-snippet, .dining-split { grid-template-columns: 1fr !important; gap: 2.5rem !important; }
  [style*="grid-template-columns:1fr 1fr"],[style*="grid-template-columns:2fr 1fr"],[style*="grid-template-columns:1fr 1.5fr"] { grid-template-columns: 1fr !important; gap: 2rem !important; }
  .stats-grid { grid-template-columns: repeat(2,1fr) !important; }
  .amenities-grid { grid-template-columns: repeat(2,1fr) !important; gap: 1rem !important; }
  .home-gallery-grid { grid-template-columns: repeat(2,1fr) !important; grid-template-rows: auto !important; gap: 0.625rem !important; }
  .home-gallery-item--tall { grid-row: span 1 !important; }
  .home-gallery-item { aspect-ratio: 4/3; }
  .newsletter-inner { flex-direction: column !important; gap: 2rem !important; }
  .newsletter-form { flex-direction: column; width: 100%; }
  .newsletter-input { width: 100%; }
  .newsletter-form .btn { width: 100%; }
  .footer-grid { grid-template-columns: 1fr !important; gap: 2rem !important; }
  .footer-bottom { flex-direction: column; text-align: center; }
  .page-hero { min-height: 340px; }
  iframe[src*="google.com/maps"] { height: 260px !important; }

  /* Lightbox mobile */
  .v8-lb-prev { left: 0.5rem; }
  .v8-lb-next { right: 0.5rem; }
  .v8-lightbox__img { max-height: 70vh; }

  /* Room card mobile */
  .v8-room-card { min-height: 360px; }
  .v8-room-card__img { min-height: 360px; }
}

@media (max-width: 480px) {
  .v8-hero__ctas .v8-btn { max-width: 100%; }
  .amenities-grid { grid-template-columns: repeat(2,1fr) !important; gap: 0.75rem !important; }
  .amenity-card { padding: 1.25rem 1rem !important; }
  .amenity-icon { font-size: 1.8rem !important; }
}

/* Safe area */
@supports (padding: env(safe-area-inset-bottom)) {
  .mobile-book-bar { padding-bottom: calc(0.75rem + env(safe-area-inset-bottom)); }
  @media (max-width: 768px) { body { padding-bottom: calc(64px + env(safe-area-inset-bottom)); } }
}

/* Landscape phone */
@media (max-height: 500px) and (orientation: landscape) {
  .v8-hero__spacer { height: 100vw; }
  .v8-hero { height: 100vw; }
  .v8-hero__title { font-size: 1.5rem; }
  .v8-hero__subtitle { display: none; }
  .v8-hero__trust { display: none; }
}

/* Focus */
:focus-visible { outline: 2px solid #c9a84c; outline-offset: 3px; border-radius: 4px; }

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: 0.01ms !important; transition-duration: 0.1ms !important; }
  [data-reveal] { opacity: 1 !important; transform: none !important; }
  .v8-hero__scroll { animation: none; }
  .v8-scroll-wheel { animation: none; }
  .whatsapp-float-btn { animation: none; }
  .wow-section__bg img { transition: none; }
}

/* ── design-v91.css (21,239b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v9.1
   FIX 1: Mobile menu — items visible + clickable (screenshot fix)
   FIX 2: Room page category tabs — filter works correctly
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   FIX 1: MOBILE MENU — DEFINITIVE SOLUTION
   Problem from screenshot: menu opens but items are invisible
   (dark text on dark background / items not rendering properly)
───────────────────────────────────────────────────────────── */

/* ── Desktop: nav always visible, no special treatment ── */
@media (min-width: 769px) {
    .main-nav {
        display:         flex    !important;
        position:        static  !important;
        background:      none    !important;
        background-color:transparent !important;
        opacity:         1       !important;
        visibility:      visible !important;
        pointer-events:  auto    !important;
        transform:       none    !important;
        padding:         0       !important;
        overflow:        visible !important;
        height:          auto    !important;
        width:           auto    !important;
        backdrop-filter: none    !important;
        -webkit-backdrop-filter: none !important;
        z-index:         auto    !important;
    }
    .mobile-menu-toggle  { display: none   !important; }
    .mobile-overlay      { display: none   !important; }
    .mobile-book-bar     { display: none   !important; }
    .float-call-btn      { display: none   !important; }
    .v8-float-book       { display: flex   !important; }
    body                 { padding-bottom: 0 !important; }
}

/* ── Mobile: SOLID PANEL — zero transparency, zero blur ── */
@media (max-width: 768px) {

    /* Hamburger button */
    .mobile-menu-toggle {
        display:          flex             !important;
        flex-direction:   column          !important;
        justify-content:  center          !important;
        align-items:      center          !important;
        gap:              5px             !important;
        width:            44px            !important;
        height:           44px            !important;
        background:       rgba(255,255,255,0.15) !important;
        border:           1.5px solid rgba(255,255,255,0.35) !important;
        border-radius:    10px            !important;
        cursor:           pointer         !important;
        padding:          0               !important;
        z-index:          9999            !important;
        flex-shrink:      0               !important;
    }
    .header--scrolled .mobile-menu-toggle {
        background:  rgba(13,33,55,0.1)       !important;
        border-color: rgba(13,33,55,0.25)     !important;
    }
    .mobile-menu-toggle span {
        display:          block  !important;
        width:            20px   !important;
        height:           2px    !important;
        background:       #ffffff !important;
        border-radius:    2px    !important;
        transition:       transform 0.3s ease, opacity 0.3s ease !important;
        transform-origin: center !important;
    }
    .header--scrolled .mobile-menu-toggle span { background: #0d2137 !important; }
    .mobile-menu-toggle.is-active span:nth-child(1) { transform: translateY(7px) rotate(45deg)  !important; }
    .mobile-menu-toggle.is-active span:nth-child(2) { opacity: 0 !important; transform: scaleX(0) !important; }
    .mobile-menu-toggle.is-active span:nth-child(3) { transform: translateY(-7px) rotate(-45deg) !important; }

    /* ── NAV PANEL: SOLID #0d2137 — no blur, no transparency ── */
    .main-nav {
        /* Positioning */
        position:   fixed   !important;
        top:        0       !important;
        left:       0       !important;
        right:      0       !important;
        bottom:     0       !important;
        width:      100vw   !important;
        height:     100vh   !important;
        height:     100dvh  !important;

        /* SOLID background — the critical fix */
        background:       #0d2137 !important;
        background-color: #0d2137 !important;

        /* No blur or glass effects */
        backdrop-filter:          none !important;
        -webkit-backdrop-filter:  none !important;
        filter:                   none !important;

        /* Z-index above everything */
        z-index: 9995 !important;

        /* Hidden state */
        opacity:        0       !important;
        visibility:     hidden  !important;
        pointer-events: none    !important;
        transform:      translateX(-100%) !important;
        transition:     transform 0.38s cubic-bezier(0.4,0,0.2,1),
                        opacity   0.3s  ease,
                        visibility 0s   linear 0.38s !important;

        /* Layout */
        display:         flex            !important;
        flex-direction:  column          !important;
        justify-content: center          !important;
        align-items:     center          !important;
        overflow-y:      auto            !important;
        -webkit-overflow-scrolling: touch !important;
        padding:         5rem 2rem 3rem  !important;
    }

    /* OPEN STATE — slide in from left */
    .main-nav.is-open {
        opacity:        1    !important;
        visibility:     visible !important;
        pointer-events: auto !important;
        transform:      translateX(0%)   !important;
        transition:     transform 0.38s cubic-bezier(0.4,0,0.2,1),
                        opacity   0.3s  ease,
                        visibility 0s   linear 0s !important;
    }

    /* ── NAV MENU LIST ── */
    .main-nav .nav-menu {
        display:         flex           !important;
        flex-direction:  column         !important;
        align-items:     stretch        !important;
        list-style:      none           !important;
        padding:         0              !important;
        margin:          0              !important;
        gap:             0              !important;
        width:           100%           !important;
        max-width:       320px          !important;
    }

    /* ── NAV MENU ITEMS ── */
    .main-nav .nav-menu > .menu-item {
        border-bottom: 1px solid rgba(255,255,255,0.1) !important;
        width:         100% !important;
    }
    .main-nav .nav-menu > .menu-item:first-child {
        border-top: 1px solid rgba(255,255,255,0.1) !important;
    }

    /* ── NAV LINKS — WHITE, FULLY VISIBLE ── */
    .main-nav .nav-menu > .menu-item > a {
        display:         flex            !important;
        align-items:     center          !important;
        justify-content: space-between   !important;
        width:           100%            !important;
        padding:         1rem 0          !important;
        font-size:       1rem            !important;
        font-weight:     600             !important;
        letter-spacing:  0.06em          !important;
        text-transform:  uppercase       !important;

        /* WHITE TEXT — visible on dark bg */
        color:           #ffffff !important;
        opacity:         1       !important;
        visibility:      visible !important;

        text-decoration: none !important;
        line-height:     1.4  !important;
    }
    /* Remove underline animation that may clip text */
    .main-nav .nav-menu > .menu-item > a::after {
        display: none !important;
    }
    .main-nav .nav-menu > .menu-item > a:hover,
    .main-nav .nav-menu > .menu-item.current-menu-item > a {
        color: #e0c97a !important;
    }

    /* ── CLOSE BUTTON ── */
    .mobile-nav-close {
        display:         flex            !important;
        position:        fixed           !important;
        top:             1rem            !important;
        right:           1rem            !important;
        z-index:         9999            !important;
        width:           44px            !important;
        height:          44px            !important;
        background:      rgba(255,255,255,0.12) !important;
        border:          1.5px solid rgba(255,255,255,0.25) !important;
        border-radius:   50%             !important;
        color:           #ffffff         !important;
        font-size:       1.2rem          !important;
        cursor:          pointer         !important;
        align-items:     center          !important;
        justify-content: center          !important;
        transition:      background 0.2s !important;
        line-height:     1               !important;
    }
    .mobile-nav-close:hover {
        background: rgba(255,255,255,0.25) !important;
    }

    /* ── SUBMENUS on mobile ── */
    .main-nav .nav-menu .sub-menu {
        position:         static          !important;
        opacity:          1               !important;
        visibility:       hidden          !important;
        transform:        none            !important;
        pointer-events:   none            !important;
        box-shadow:       none            !important;
        background:       rgba(255,255,255,0.05) !important;
        border-radius:    8px             !important;
        padding:          0               !important;
        max-height:       0               !important;
        overflow:         hidden          !important;
        transition:       max-height 0.35s ease,
                          visibility     0.35s,
                          padding        0.25s !important;
        backdrop-filter:  none            !important;
        border:           none            !important;
        width:            100%            !important;
        left:             0               !important;
    }
    .main-nav .nav-menu .sub-menu::before { display: none !important; }

    .main-nav .nav-menu .menu-item-has-children.sub-open > .sub-menu {
        visibility:     visible !important;
        max-height:     500px   !important;
        pointer-events: auto    !important;
        padding:        0.5rem 0 !important;
        margin-bottom:  0.5rem   !important;
    }

    .main-nav .nav-menu .sub-menu .menu-item > a {
        color:       rgba(255,255,255,0.72) !important;
        padding:     0.65rem 1rem            !important;
        font-size:   0.85rem                 !important;
        display:     block                   !important;
        visibility:  visible                 !important;
        opacity:     1                       !important;
        text-decoration: none                !important;
    }
    .main-nav .nav-menu .sub-menu .menu-item > a:hover {
        color:            #e0c97a                   !important;
        background:       rgba(255,255,255,0.07)    !important;
        padding-left:     1.5rem                    !important;
    }

    /* ── OVERLAY ── */
    .mobile-overlay {
        position:   fixed       !important;
        inset:      0           !important;
        background: rgba(0,0,0,0.65) !important;
        z-index:    9990        !important;
        opacity:    0           !important;
        display:    none        !important;
        transition: opacity 0.3s ease !important;
    }
    .mobile-overlay.is-active {
        display: block   !important;
        opacity: 1       !important;
    }

    /* ── MOBILE STICKY BOOK BAR ── */
    .mobile-book-bar {
        display:      flex                                          !important;
        position:     fixed                                         !important;
        bottom:       0                                             !important;
        left:         0                                             !important;
        right:        0                                             !important;
        z-index:      9980                                          !important;
        background:   #0d2137                                       !important;
        padding:      0.75rem 1rem                                  !important;
        padding-bottom: calc(0.75rem + env(safe-area-inset-bottom,0px)) !important;
        gap:          0.625rem                                      !important;
        align-items:  center                                        !important;
        box-shadow:   0 -4px 24px rgba(13,33,55,0.3)               !important;
        border-top:   1px solid rgba(201,168,76,0.2)                !important;
    }
    body { padding-bottom: calc(64px + env(safe-area-inset-bottom,0px)); }
    body.nav-open { overflow: hidden !important; }

    /* Float call btn */
    .float-call-btn { display: flex !important; }
    .v8-float-book  { display: none !important; }
}

/* ─────────────────────────────────────────────────────────────
   FIX 2: ROOM FILTER TABS — v9.1 style + working
───────────────────────────────────────────────────────────── */

/* Filter tab row */
.v91-room-filters {
    display:     flex        !important;
    flex-wrap:   wrap        !important;
    gap:         0.625rem    !important;
    padding:     0           !important;
    margin-bottom: 0         !important;
}

/* Each filter button */
.v91-filter-btn {
    display:          inline-flex    !important;
    align-items:      center         !important;
    gap:              0.4rem         !important;
    padding:          0.6rem 1.25rem !important;
    border-radius:    999px          !important;
    border:           1.5px solid rgba(13,33,55,0.18) !important;
    background:       #ffffff        !important;
    color:            #666           !important;
    font-family:      'Inter', sans-serif !important;
    font-size:        0.78rem        !important;
    font-weight:      600            !important;
    letter-spacing:   0.05em        !important;
    cursor:           pointer        !important;
    white-space:      nowrap         !important;
    transition:       all 0.25s ease !important;
    outline:          none           !important;
    line-height:      1.4            !important;
}
.v91-filter-btn:hover {
    border-color: #0d2137  !important;
    color:        #0d2137  !important;
    background:   #f5f2ed  !important;
}
.v91-filter-btn.is-active {
    background:   #0d2137            !important;
    color:        #ffffff            !important;
    border-color: #0d2137            !important;
    box-shadow:   0 4px 16px rgba(13,33,55,0.22) !important;
}

/* Room items grid wrapper */
.v91-rooms-grid {
    display:               grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap:                   2rem !important;
}

/* Each room item wrapper */
.v91-room-item {
    transition: opacity 0.35s ease, transform 0.35s ease !important;
}

/* Mobile filter tabs */
@media (max-width: 768px) {
    .v91-room-filters {
        flex-wrap:                nowrap    !important;
        overflow-x:               auto      !important;
        -webkit-overflow-scrolling: touch   !important;
        scrollbar-width:          none      !important;
        padding-bottom:           0.5rem   !important;
        gap:                      0.5rem   !important;
    }
    .v91-room-filters::-webkit-scrollbar { display: none; }
    .v91-filter-btn {
        flex-shrink: 0 !important;
        font-size:   0.72rem !important;
        padding:     0.5rem 0.875rem !important;
    }
    .v91-rooms-grid {
        grid-template-columns: 1fr !important;
        gap: 1.25rem !important;
    }
}
@media (max-width: 1024px) and (min-width: 769px) {
    .v91-rooms-grid { grid-template-columns: repeat(2,1fr) !important; }
}

/* ─────────────────────────────────────────────────────────────
   HERO — Simpler, more impactful (keep v8 hero but polish)
───────────────────────────────────────────────────────────── */
/* Trust badges on hero — simplify on mobile */
@media (max-width: 480px) {
    .v8-hero__trust { display: none !important; }
    .v8-hero__title { font-size: clamp(1.6rem, 8vw, 2.2rem) !important; }
    .v8-hero__subtitle { font-size: 0.875rem !important; }
}

/* ─────────────────────────────────────────────────────────────
   GENERAL MOBILE POLISH v9.1
───────────────────────────────────────────────────────────── */
@media (max-width: 768px) {
    /* Stack all grids */
    .grid-2, .grid-3, .grid-4 {
        grid-template-columns: 1fr !important;
        gap: 1.25rem !important;
    }
    .about-snippet,
    .dining-split {
        grid-template-columns: 1fr !important;
        gap: 2.5rem !important;
    }
    [style*="grid-template-columns:2fr 1fr"],
    [style*="grid-template-columns:1fr 2fr"],
    [style*="grid-template-columns:1fr 1fr"] {
        grid-template-columns: 1fr !important;
        gap: 2rem !important;
    }

    /* Buttons full width */
    .btn--lg, .btn--xl { width: 100% !important; max-width: 340px !important; }

    /* Section padding tighter */
    .section { padding: 3rem 0 !important; }
    .section--alt { padding: 3rem 0 !important; }
    .section--dark { padding: 3rem 0 !important; }

    /* Amenities 2 col */
    .amenities-grid { grid-template-columns: repeat(2,1fr) !important; gap: 0.875rem !important; }

    /* Gallery grid responsive */
    .home-gallery-grid {
        grid-template-columns: repeat(2,1fr) !important;
        grid-template-rows: auto !important;
        gap: 0.625rem !important;
    }
    .home-gallery-item--tall { grid-row: span 1 !important; }
    .home-gallery-item { aspect-ratio: 4/3 !important; }

    /* Stats 2 col */
    .stats-grid { grid-template-columns: repeat(2,1fr) !important; }
    .stat-item { border-bottom: 1px solid rgba(255,255,255,0.07); }

    /* Page hero shorter */
    .page-hero { min-height: 340px !important; }
    .page-hero-title { font-size: clamp(1.5rem, 6vw, 2.2rem) !important; }

    /* Map iframe smaller */
    iframe[src*="google.com/maps"] { height: 250px !important; }

    /* Hide sticky sidebar on mobile */
    [style*="position:sticky"] { position: static !important; }

    /* Newsletter */
    .newsletter-inner { flex-direction: column !important; gap: 2rem !important; }
    .newsletter-form  { flex-direction: column !important; width: 100%; }
    .newsletter-input { width: 100% !important; min-width: 0 !important; }

    /* Footer */
    .footer-grid { grid-template-columns: 1fr !important; gap: 2rem !important; }
    .footer-bottom { flex-direction: column !important; text-align: center !important; }

    /* Reviews breakdown */
    .reviews-breakdown { grid-template-columns: 1fr 1fr !important; }
}
@media (max-width: 480px) {
    .amenities-grid { grid-template-columns: repeat(2,1fr) !important; gap: 0.75rem !important; }
    .amenity-card { padding: 1.25rem 0.875rem !important; }
    .amenity-icon { font-size: 1.75rem !important; }
    .stat-number { font-size: 1.8rem !important; }
}

/* ─────────────────────────────────────────────────────────────
   SAFE AREA + FOCUS
───────────────────────────────────────────────────────────── */
@supports (padding: env(safe-area-inset-bottom)) {
    .mobile-book-bar {
        padding-bottom: calc(0.75rem + env(safe-area-inset-bottom)) !important;
    }
    @media (max-width: 768px) {
        body { padding-bottom: calc(64px + env(safe-area-inset-bottom)); }
    }
}

:focus-visible {
    outline:        2px solid #c9a84c;
    outline-offset: 3px;
    border-radius:  4px;
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration:   0.01ms !important;
        transition-duration:  0.01ms !important;
    }
    [data-reveal] { opacity: 1 !important; transform: none !important; }
}

/* ── design-v101.css (25,530b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v10.1
   FIX 1: Mobile menu — items visible + all links navigate
   FIX 2: Gallery lightbox — images open correctly
   FIX 3: Full mobile responsive (no left/right overflow)
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   GLOBAL: Prevent horizontal scroll
───────────────────────────────────────────────────────────── */
html, body {
    overflow-x: hidden !important;
    max-width:  100vw  !important;
}
*, *::before, *::after { box-sizing: border-box; }
img { max-width: 100%; height: auto; }

/* ─────────────────────────────────────────────────────────────
   FIX 1: MOBILE MENU — Solid, Visible, Navigable
───────────────────────────────────────────────────────────── */

/* ── Desktop: Normal horizontal nav ── */
@media (min-width: 769px) {
    .main-nav {
        display:          flex     !important;
        position:         static  !important;
        background:       none    !important;
        background-color: transparent !important;
        opacity:          1       !important;
        visibility:       visible !important;
        pointer-events:   auto   !important;
        transform:        none   !important;
        padding:          0      !important;
        overflow:         visible !important;
        height:           auto   !important;
        width:            auto   !important;
        backdrop-filter:  none   !important;
        -webkit-backdrop-filter: none !important;
        z-index:          auto   !important;
        flex-direction:   row    !important;
        align-items:      center !important;
    }
    .mobile-menu-toggle { display: none   !important; }
    .mobile-overlay     { display: none   !important; }
    .mobile-book-bar    { display: none   !important; }
    body                { padding-bottom: 0 !important; }
}

/* ── Mobile: Full-screen solid panel ── */
@media (max-width: 768px) {

    /* Hamburger button */
    .mobile-menu-toggle {
        display:        flex            !important;
        flex-direction: column          !important;
        justify-content:center          !important;
        align-items:    center          !important;
        gap:            5px             !important;
        width:          44px            !important;
        height:         44px            !important;
        background:     rgba(255,255,255,0.18) !important;
        border:         2px solid rgba(255,255,255,0.45) !important;
        border-radius:  10px            !important;
        cursor:         pointer         !important;
        padding:        0               !important;
        z-index:        9999            !important;
        flex-shrink:    0               !important;
    }
    .header--scrolled .mobile-menu-toggle {
        background:   rgba(13,33,55,0.08) !important;
        border-color: rgba(13,33,55,0.3)  !important;
    }
    .mobile-menu-toggle span {
        display:         block  !important;
        width:           20px   !important;
        height:          2px    !important;
        background:      #fff   !important;
        border-radius:   2px    !important;
        transition:      all 0.28s ease !important;
        transform-origin:center !important;
    }
    .header--scrolled .mobile-menu-toggle span { background: #0d2137 !important; }
    .mobile-menu-toggle.is-active span:nth-child(1) { transform: translateY(7px) rotate(45deg)  !important; }
    .mobile-menu-toggle.is-active span:nth-child(2) { opacity:0 !important; transform: scaleX(0) !important; }
    .mobile-menu-toggle.is-active span:nth-child(3) { transform: translateY(-7px) rotate(-45deg) !important; }

    /* ── NAV PANEL: Solid navy, full screen ── */
    .main-nav {
        position:         fixed                   !important;
        top:              0                       !important;
        left:             0                       !important;
        right:            0                       !important;
        bottom:           0                       !important;
        width:            100vw                   !important;
        height:           100vh                   !important;
        height:           100dvh                  !important;

        /* SOLID background */
        background:       #0d2137                 !important;
        background-color: #0d2137                 !important;
        backdrop-filter:  none                    !important;
        -webkit-backdrop-filter: none             !important;

        z-index:          9990                    !important;
        opacity:          0                       !important;
        visibility:       hidden                  !important;
        pointer-events:   none                    !important;
        transform:        translateX(-100%)       !important;
        transition:       transform  0.36s cubic-bezier(0.4,0,0.2,1),
                          opacity    0.28s ease,
                          visibility 0s linear    0.36s !important;

        display:          flex                    !important;
        flex-direction:   column                  !important;
        justify-content:  center                  !important;
        align-items:      center                  !important;
        overflow-y:       auto                    !important;
        padding:          5rem 2rem 4rem          !important;
    }

    /* OPEN — slide in */
    .main-nav.is-open {
        opacity:        1                         !important;
        visibility:     visible                   !important;
        pointer-events: auto                      !important;
        transform:      translateX(0%)            !important;
        transition:     transform  0.36s cubic-bezier(0.4,0,0.2,1),
                        opacity    0.28s ease,
                        visibility 0s linear 0s   !important;
    }

    /* ── NAV LIST ── */
    .main-nav .nav-menu {
        display:        flex            !important;
        flex-direction: column          !important;
        align-items:    stretch         !important;
        list-style:     none            !important;
        padding:        0               !important;
        margin:         0               !important;
        gap:            0               !important;
        width:          100%            !important;
        max-width:      320px           !important;
    }
    .main-nav .nav-menu > .menu-item {
        border-bottom: 1px solid rgba(255,255,255,0.1) !important;
    }
    .main-nav .nav-menu > .menu-item:first-child {
        border-top: 1px solid rgba(255,255,255,0.1) !important;
    }

    /* ── NAV LINKS: White, visible, CLICKABLE ── */
    .main-nav .nav-menu > .menu-item > a {
        display:         flex           !important;
        align-items:     center         !important;
        justify-content: space-between  !important;
        width:           100%           !important;
        padding:         1rem 0         !important;

        /* WHITE TEXT — always visible on dark bg */
        color:           #ffffff        !important;
        opacity:         1              !important;
        visibility:      visible        !important;
        pointer-events:  auto           !important;  /* must be auto to click */

        font-size:       1rem           !important;
        font-weight:     600            !important;
        letter-spacing:  0.05em         !important;
        text-transform:  uppercase      !important;
        text-decoration: none           !important;
        line-height:     1.4            !important;
        background:      transparent    !important;
        cursor:          pointer        !important;
    }
    .main-nav .nav-menu > .menu-item > a::after { display: none !important; }
    .main-nav .nav-menu > .menu-item > a:hover  { color: #e0c97a !important; }
    .main-nav .nav-menu > .menu-item.current-menu-item > a { color: #e0c97a !important; }

    /* ── SUBMENUS ── */
    .main-nav .nav-menu .sub-menu {
        position:        static          !important;
        visibility:      hidden          !important;
        max-height:      0               !important;
        overflow:        hidden          !important;
        pointer-events:  none            !important;
        background:      rgba(255,255,255,0.06) !important;
        border-radius:   8px             !important;
        border:          none            !important;
        box-shadow:      none            !important;
        backdrop-filter: none            !important;
        transition:      max-height 0.35s ease, visibility 0.35s, padding 0.25s !important;
        width:           100%            !important;
    }
    .main-nav .nav-menu .sub-menu::before { display: none !important; }
    .main-nav .nav-menu .menu-item-has-children.sub-open > .sub-menu {
        visibility:     visible  !important;
        max-height:     600px    !important;
        pointer-events: auto     !important;
        padding:        0.5rem 0 !important;
        margin-bottom:  0.5rem   !important;
    }
    .main-nav .nav-menu .sub-menu .menu-item > a {
        display:         block                   !important;
        color:           rgba(255,255,255,0.72)  !important;
        padding:         0.65rem 1rem            !important;
        font-size:       0.875rem                !important;
        visibility:      visible                 !important;
        opacity:         1                       !important;
        pointer-events:  auto                    !important;
        text-decoration: none                    !important;
        cursor:          pointer                 !important;
    }
    .main-nav .nav-menu .sub-menu .menu-item > a:hover {
        color:        #e0c97a                  !important;
        background:   rgba(255,255,255,0.07)   !important;
        padding-left: 1.5rem                   !important;
    }

    /* ── CLOSE BTN ── */
    .mobile-nav-close {
        display:         flex                    !important;
        position:        fixed                   !important;
        top:             1rem                    !important;
        right:           1rem                    !important;
        z-index:         9999                    !important;
        width:           44px                    !important;
        height:          44px                    !important;
        background:      rgba(255,255,255,0.12)  !important;
        border:          1.5px solid rgba(255,255,255,0.3) !important;
        border-radius:   50%                     !important;
        color:           #fff                    !important;
        font-size:       1.2rem                  !important;
        cursor:          pointer                 !important;
        align-items:     center                  !important;
        justify-content: center                  !important;
        line-height:     1                       !important;
    }

    /* ── OVERLAY ── */
    .mobile-overlay {
        position:   fixed                !important;
        inset:      0                    !important;
        background: rgba(0,0,0,0.65)    !important;
        z-index:    9980                 !important;
        display:    none                 !important;
        opacity:    0                    !important;
        transition: opacity 0.28s ease  !important;
    }
    .mobile-overlay.is-active {
        display: block  !important;
        opacity: 1      !important;
    }

    /* body locked when menu open */
    body.nav-open { overflow: hidden !important; }

    /* Mobile sticky bar */
    .mobile-book-bar { display: flex !important; }
    body { padding-bottom: calc(64px + env(safe-area-inset-bottom, 0px)); }
}

/* ─────────────────────────────────────────────────────────────
   FIX 2: GALLERY LIGHTBOX — correct CSS for page-gallery.php
   The gallery page has its own HTML lightbox (#dsrLightbox)
   This CSS makes it display and style properly
───────────────────────────────────────────────────────────── */
.dsr-lightbox {
    position:       fixed          !important;
    inset:          0              !important;
    z-index:        99999          !important;
    /* display:flex set by JS when open */
    align-items:    center         !important;
    justify-content:center         !important;
    flex-direction: column         !important;
    gap:            1rem           !important;
    background:     rgba(5,10,20,0.97) !important;
    backdrop-filter:blur(4px)      !important;
    -webkit-backdrop-filter:blur(4px) !important;
}
.dsr-lightbox.is-open {
    animation: lbFadeIn 0.3s ease forwards !important;
}
@keyframes lbFadeIn {
    from { opacity: 0; }
    to   { opacity: 1; }
}

/* Stage + img */
.dsr-lightbox__stage {
    position:       relative !important;
    max-width:      min(94vw, 1200px) !important;
    max-height:     82vh     !important;
    display:        flex     !important;
    align-items:    center   !important;
    justify-content:center   !important;
}
.dsr-lightbox__img {
    max-width:   100%  !important;
    max-height:  80vh  !important;
    object-fit:  contain !important;
    display:     block !important;
    border-radius: 8px  !important;
    box-shadow:  0 32px 80px rgba(0,0,0,0.7) !important;
    transition:  opacity 0.3s ease !important;
}

/* Loader spinner */
.dsr-lightbox__loader {
    width:        44px     !important;
    height:       44px     !important;
    border:       3px solid rgba(255,255,255,0.15) !important;
    border-top-color: #c9a84c !important;
    border-radius:50%      !important;
    animation:    lbSpin 0.7s linear infinite !important;
    position:     absolute !important;
    display:      block    !important;
}
@keyframes lbSpin { to { transform: rotate(360deg); } }

/* Info bar */
.dsr-lightbox__info {
    text-align:  center      !important;
    z-index:     2           !important;
    padding:     0 1rem      !important;
}
.dsr-lightbox__caption {
    color:       rgba(255,255,255,0.72) !important;
    font-size:   0.82rem    !important;
    margin:      0 0 0.25rem !important;
}
.dsr-lightbox__counter {
    color:       rgba(255,255,255,0.38) !important;
    font-size:   0.7rem     !important;
    letter-spacing: 0.1em  !important;
}

/* Close / Prev / Next buttons */
.dsr-lightbox__close,
.dsr-lightbox__prev,
.dsr-lightbox__next {
    position:        fixed           !important;
    z-index:         99999           !important;
    width:           48px            !important;
    height:          48px            !important;
    border-radius:   50%             !important;
    background:      rgba(255,255,255,0.1) !important;
    border:          1.5px solid rgba(255,255,255,0.25) !important;
    color:           #fff            !important;
    cursor:          pointer         !important;
    display:         flex            !important;
    align-items:     center          !important;
    justify-content: center          !important;
    transition:      background 0.2s, transform 0.2s !important;
    backdrop-filter: blur(8px)       !important;
    padding:         0               !important;
}
.dsr-lightbox__close { top:  1.25rem !important; right: 1.25rem !important; font-size: 1rem !important; }
.dsr-lightbox__prev  { left: 1.25rem !important; top: 50% !important; transform: translateY(-50%) !important; }
.dsr-lightbox__next  { right:1.25rem !important; top: 50% !important; transform: translateY(-50%) !important; }
.dsr-lightbox__prev svg,
.dsr-lightbox__next svg { width: 20px !important; height: 20px !important; }
.dsr-lightbox__close:hover,
.dsr-lightbox__prev:hover,
.dsr-lightbox__next:hover { background: #c9a84c !important; border-color: #c9a84c !important; color: #0d2137 !important; }

/* Gallery item hover */
.gallery-item {
    cursor:     pointer !important;
    overflow:   hidden !important;
    position:   relative !important;
    border-radius: 10px !important;
    transition: transform 0.35s cubic-bezier(0.34,1.56,0.64,1), box-shadow 0.3s ease !important;
}
.gallery-item:hover { transform: scale(1.02) !important; box-shadow: 0 16px 48px rgba(13,33,55,0.2) !important; z-index: 2 !important; }
.gallery-item__img-wrap img { width: 100% !important; height: 100% !important; object-fit: cover !important; display: block !important; transition: transform 0.5s ease !important; }
.gallery-item:hover .gallery-item__img-wrap img { transform: scale(1.06) !important; }

/* ─────────────────────────────────────────────────────────────
   FIX 3: FULL MOBILE RESPONSIVE
───────────────────────────────────────────────────────────── */
@media (max-width: 768px) {

    /* ── Sections ── */
    .section, .section--alt, .section--dark { padding: 3rem 0 !important; }

    /* ── Container ── */
    .container {
        padding-left:  clamp(1rem, 4vw, 1.5rem) !important;
        padding-right: clamp(1rem, 4vw, 1.5rem) !important;
    }

    /* ── All grids → 1 col ── */
    .grid-2, .grid-3, .grid-4 {
        grid-template-columns: 1fr !important;
        gap: 1.25rem !important;
    }
    .amenities-grid {
        grid-template-columns: repeat(2,1fr) !important;
        gap: 0.875rem !important;
    }

    /* ── Split layouts ── */
    .about-snippet,
    .dining-split {
        grid-template-columns: 1fr !important;
        gap: 2.5rem !important;
    }

    /* ── Inline grid overrides ── */
    [style*="grid-template-columns:2fr 1fr"],
    [style*="grid-template-columns:1fr 2fr"],
    [style*="grid-template-columns:1fr 1fr"],
    [style*="grid-template-columns:1.5fr 1fr"],
    [style*="grid-template-columns:1fr 1.5fr"] {
        grid-template-columns: 1fr !important;
        gap: 2rem !important;
    }

    /* ── Section headers ── */
    .section-header { margin-bottom: 2rem !important; }
    .section-title  { font-size: clamp(1.5rem, 5.5vw, 2rem) !important; }

    /* ── Hero ── */
    .v8-hero__content {
        padding-top:    calc(76px + 1.5rem) !important;
        padding-bottom: 7rem !important;
        text-align:     center !important;
        padding-left:   1.25rem !important;
        padding-right:  1.25rem !important;
    }
    .v8-hero__inner { align-items: center !important; }
    .v8-hero__title { font-size: clamp(1.7rem, 7.5vw, 2.6rem) !important; }
    .v8-hero__subtitle { font-size: 0.9rem !important; }
    .v8-hero__ctas  { flex-direction: column !important; align-items: center !important; }
    .v8-btn { width: 100% !important; max-width: 300px !important; justify-content: center !important; }
    .v8-hero__trust { display: none !important; }

    /* ── Room cards ── */
    .v8-room-card__img { min-height: 360px !important; }
    .v8-room-card__img > img { min-height: 360px !important; }
    .v91-rooms-grid, [class*="rooms-grid"] { grid-template-columns: 1fr !important; gap: 1.25rem !important; }

    /* ── Gallery ── */
    .home-gallery-grid {
        grid-template-columns: repeat(2,1fr) !important;
        grid-template-rows:    auto !important;
        gap: 0.625rem !important;
    }
    .home-gallery-item--tall { grid-row: span 1 !important; }
    .home-gallery-item       { aspect-ratio: 4/3 !important; }
    .v9-gallery-masonry {
        grid-template-columns: repeat(2,1fr) !important;
        grid-template-rows:    auto !important;
        gap: 0.625rem !important;
    }
    .v9-gal-item, .v9-gal-item--tall { height: 180px !important; grid-row: span 1 !important; }

    /* Gallery page masonry */
    .gallery-masonry {
        columns: 2 !important;
        column-gap: 0.625rem !important;
        gap: 0.625rem !important;
    }
    .gallery-item { break-inside: avoid !important; margin-bottom: 0.625rem !important; }

    /* Lightbox on mobile */
    .dsr-lightbox__prev { left: 0.5rem !important; }
    .dsr-lightbox__next { right: 0.5rem !important; }
    .dsr-lightbox__img  { max-height: 72vh !important; }

    /* ── Stats ── */
    .stats-grid { grid-template-columns: repeat(2,1fr) !important; }
    .stat-item  { border-bottom: 1px solid rgba(255,255,255,0.07); }

    /* ── Page hero ── */
    .page-hero       { min-height: 300px !important; }
    .page-hero-title { font-size: clamp(1.4rem, 6vw, 2rem) !important; }

    /* ── Buttons ── */
    .btn--lg, .btn--xl {
        width:      100%   !important;
        max-width:  340px  !important;
        text-align: center !important;
        justify-content: center !important;
    }

    /* ── WOW section ── */
    .wow-section    { min-height: 380px !important; }
    .wow-title      { font-size: clamp(1.75rem, 7vw, 2.5rem) !important; }
    .wow-section__content { padding: 3rem 1.5rem !important; }

    /* ── Reviews ── */
    .v9-reviews-grid { grid-template-columns: 1fr !important; }
    .v9-rating-badge { flex-direction: column !important; text-align: center !important; padding: 1.25rem !important; gap: 0.75rem !important; }
    .v9-rating-platforms { justify-content: center !important; }
    .v9-trust-numbers { flex-wrap: wrap !important; }
    .v9-trust-num-item { flex: 1 0 50% !important; border-bottom: 1px solid rgba(255,255,255,0.07) !important; }

    /* ── Experience grid ── */
    .v9-exp-grid { grid-template-columns: 1fr !important; }
    .v9-exp-card { min-height: 300px !important; }

    /* ── Sticky sidebar → static ── */
    [style*="position:sticky"] { position: static !important; }

    /* ── Newsletter ── */
    .newsletter-inner { flex-direction: column !important; gap: 2rem !important; }
    .newsletter-form  { flex-direction: column !important; width: 100% !important; }
    .newsletter-input { width: 100% !important; min-width: 0 !important; }

    /* ── Footer ── */
    .footer-grid   { grid-template-columns: 1fr !important; gap: 2rem !important; }
    .footer-bottom { flex-direction: column !important; text-align: center !important; }

    /* ── Map ── */
    iframe[src*="google.com/maps"] { height: 240px !important; }

    /* ── Amenity cards ── */
    .amenity-card { padding: 1.5rem 1rem !important; }
    .amenity-icon { font-size: 2rem !important; }

    /* ── Awards ── */
    .awards-bar { overflow: hidden !important; }
}

@media (max-width: 480px) {
    .amenities-grid { grid-template-columns: repeat(2,1fr) !important; gap: 0.75rem !important; }
    .v9-gal-item    { height: 140px !important; }
    .container      { padding-left: 1rem !important; padding-right: 1rem !important; }
    .v8-btn         { font-size: 0.72rem !important; padding: 0.875rem 1.5rem !important; }
}

/* ─────────────────────────────────────────────────────────────
   SAFE AREA (notch/home bar)
───────────────────────────────────────────────────────────── */
@supports (padding: env(safe-area-inset-bottom)) {
    .mobile-book-bar {
        padding-bottom: calc(0.75rem + env(safe-area-inset-bottom)) !important;
    }
    @media (max-width: 768px) {
        body { padding-bottom: calc(64px + env(safe-area-inset-bottom)); }
    }
}

/* ─────────────────────────────────────────────────────────────
   ACCESSIBILITY
───────────────────────────────────────────────────────────── */
:focus-visible {
    outline:        2px solid #c9a84c !important;
    outline-offset: 3px !important;
    border-radius:  4px !important;
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration:  0.01ms !important;
        transition-duration: 0.01ms !important;
    }
    [data-reveal] { opacity: 1 !important; transform: none !important; }
}

/* ── design-v11.css (33,174b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v11
   ✅ Mobile menu: guaranteed visible + clickable
   ✅ Ultra premium modern visual design
   ✅ Full mobile responsive
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   GLOBAL RESET
───────────────────────────────────────────────────────────── */
html, body { overflow-x: hidden !important; max-width: 100vw !important; }
*, *::before, *::after { box-sizing: border-box; }
img { max-width: 100%; height: auto; display: block; }

/* ─────────────────────────────────────────────────────────────
   MOBILE MENU — GUARANTEED FIX
   Strategy: override ALL competing rules with maximum specificity
   JS sets inline style "display:flex!important" on open
   This CSS only handles the solid background and link colors
───────────────────────────────────────────────────────────── */

/* ── Desktop: undo everything ── */
@media (min-width: 769px) {
    #main-navigation {
        display:          flex     !important;
        position:         static  !important;
        background:       none    !important;
        background-color: transparent !important;
        opacity:          1       !important;
        visibility:       visible !important;
        pointer-events:   auto   !important;
        transform:        none   !important;
        padding:          0      !important;
        height:           auto   !important;
        width:            auto   !important;
        backdrop-filter:  none   !important;
        -webkit-backdrop-filter: none !important;
        z-index:          auto   !important;
        flex-direction:   row    !important;
        align-items:      center !important;
        overflow:         visible !important;
    }
    #mobileMenuToggle { display: none !important; }
    .mobile-overlay   { display: none !important; }
    .mobile-book-bar  { display: none !important; }
    body              { padding-bottom: 0 !important; }
}

/* ── Mobile ── */
@media (max-width: 768px) {

    /* Hamburger */
    #mobileMenuToggle {
        display:        flex           !important;
        flex-direction: column         !important;
        justify-content:center         !important;
        align-items:    center         !important;
        gap:            5px            !important;
        width:          44px           !important;
        height:         44px           !important;
        background:     rgba(255,255,255,0.18) !important;
        border:         2px solid rgba(255,255,255,0.5) !important;
        border-radius:  10px           !important;
        cursor:         pointer        !important;
        padding:        0              !important;
        z-index:        99999          !important;
        flex-shrink:    0              !important;
    }
    .header--scrolled #mobileMenuToggle {
        background:   rgba(13,33,55,0.1) !important;
        border-color: rgba(13,33,55,0.35) !important;
    }
    #mobileMenuToggle span {
        display:          block  !important;
        width:            20px   !important;
        height:           2px    !important;
        background:       #fff   !important;
        border-radius:    2px    !important;
        transition:       all 0.28s ease !important;
        transform-origin: center !important;
    }
    .header--scrolled #mobileMenuToggle span { background: #0d2137 !important; }
    #mobileMenuToggle.is-active span:nth-child(1) { transform: translateY(7px) rotate(45deg)  !important; }
    #mobileMenuToggle.is-active span:nth-child(2) { opacity: 0 !important; transform: scaleX(0) !important; }
    #mobileMenuToggle.is-active span:nth-child(3) { transform: translateY(-7px) rotate(-45deg) !important; }

    /* When nav is open (JS adds inline display:flex + is-open class) */
    #main-navigation.is-open {
        position:         fixed                   !important;
        top:              0 !important;
        left:             0 !important;
        right:            0 !important;
        bottom:           0 !important;
        width:            100vw                   !important;
        height:           100vh                   !important;
        height:           100dvh                  !important;
        background-color: #0d2137                 !important;
        background:       #0d2137                 !important;
        backdrop-filter:  none                    !important;
        -webkit-backdrop-filter: none             !important;
        z-index:          9990                    !important;
        opacity:          1                       !important;
        visibility:       visible                 !important;
        pointer-events:   auto                    !important;
        transform:        none                    !important;
        display:          flex                    !important;
        flex-direction:   column                  !important;
        justify-content:  center                  !important;
        align-items:      center                  !important;
        overflow-y:       auto                    !important;
        padding:          5rem 2rem 4rem          !important;
    }

    /* Nav menu list */
    #main-navigation.is-open .nav-menu {
        display:        flex      !important;
        flex-direction: column    !important;
        align-items:    stretch   !important;
        list-style:     none      !important;
        padding:        0         !important;
        margin:         0         !important;
        gap:            0         !important;
        width:          100%      !important;
        max-width:      320px     !important;
    }

    /* Menu items */
    #main-navigation.is-open .nav-menu > .menu-item {
        border-bottom: 1px solid rgba(255,255,255,0.1) !important;
        width:         100% !important;
    }
    #main-navigation.is-open .nav-menu > .menu-item:first-child {
        border-top: 1px solid rgba(255,255,255,0.1) !important;
    }

    /* ── LINKS: WHITE, VISIBLE, POINTER-EVENTS AUTO ── */
    #main-navigation.is-open .nav-menu > .menu-item > a {
        display:         flex           !important;
        align-items:     center         !important;
        justify-content: space-between  !important;
        width:           100%           !important;
        padding:         1rem 0         !important;
        color:           #ffffff        !important;
        opacity:         1              !important;
        visibility:      visible        !important;
        pointer-events:  auto           !important;
        font-size:       1rem           !important;
        font-weight:     600            !important;
        letter-spacing:  0.05em         !important;
        text-transform:  uppercase      !important;
        text-decoration: none           !important;
        line-height:     1.4            !important;
        background:      transparent    !important;
        cursor:          pointer        !important;
    }
    #main-navigation.is-open .nav-menu > .menu-item > a::after { display: none !important; }
    #main-navigation.is-open .nav-menu > .menu-item > a:hover,
    #main-navigation.is-open .nav-menu > .menu-item.current-menu-item > a {
        color: #e0c97a !important;
    }

    /* Submenus */
    #main-navigation.is-open .sub-menu {
        position:        static   !important;
        visibility:      hidden   !important;
        max-height:      0        !important;
        overflow:        hidden   !important;
        pointer-events:  none     !important;
        background:      rgba(255,255,255,0.06) !important;
        border-radius:   8px      !important;
        padding:         0        !important;
        margin:          0        !important;
        box-shadow:      none     !important;
        backdrop-filter: none     !important;
        transform:       none     !important;
        opacity:         1        !important;
        transition:      max-height 0.35s ease, visibility 0.35s, padding 0.25s !important;
        width:           100%     !important;
    }
    #main-navigation.is-open .sub-menu::before { display: none !important; }
    #main-navigation.is-open .menu-item-has-children.sub-open > .sub-menu {
        visibility:     visible  !important;
        max-height:     600px    !important;
        pointer-events: auto     !important;
        padding:        0.5rem 0 !important;
        margin-bottom:  0.5rem   !important;
    }
    #main-navigation.is-open .sub-menu .menu-item > a {
        display:         block                   !important;
        color:           rgba(255,255,255,0.78)  !important;
        padding:         0.65rem 1rem            !important;
        font-size:       0.875rem                !important;
        opacity:         1                       !important;
        visibility:      visible                 !important;
        pointer-events:  auto                    !important;
        text-decoration: none                    !important;
        cursor:          pointer                 !important;
    }
    #main-navigation.is-open .sub-menu .menu-item > a:hover {
        color:        #e0c97a                   !important;
        background:   rgba(255,255,255,0.07)    !important;
        padding-left: 1.5rem                    !important;
    }

    /* Close button */
    #mobileNavClose {
        display:         flex                    !important;
        position:        fixed                   !important;
        top:             1rem                    !important;
        right:           1rem                    !important;
        z-index:         99999                   !important;
        width:           44px                    !important;
        height:          44px                    !important;
        background:      rgba(255,255,255,0.12)  !important;
        border:          1.5px solid rgba(255,255,255,0.3) !important;
        border-radius:   50%                     !important;
        color:           #fff                    !important;
        font-size:       1.2rem                  !important;
        cursor:          pointer                 !important;
        align-items:     center                  !important;
        justify-content: center                  !important;
        line-height:     1                       !important;
    }

    /* Overlay */
    .mobile-overlay {
        position:   fixed            !important;
        inset:      0                !important;
        background: rgba(0,0,0,0.7)  !important;
        z-index:    9980             !important;
        display:    none             !important;
        opacity:    0                !important;
        transition: opacity 0.3s     !important;
    }
    .mobile-overlay.is-active {
        display: block !important;
        opacity: 1     !important;
    }

    /* Sticky bar + body padding */
    .mobile-book-bar { display: flex !important; }
    body { padding-bottom: calc(64px + env(safe-area-inset-bottom, 0px)); }
    body.nav-open { overflow: hidden !important; }
}

/* ─────────────────────────────────────────────────────────────
   ULTRA PREMIUM DESIGN — Section backgrounds & visual upgrades
───────────────────────────────────────────────────────────── */

/* ── Color tokens ── */
:root {
    --v11-navy:    #050f1e;
    --v11-deep:    #0a1929;
    --v11-mid:     #0d2137;
    --v11-gold:    #c9a84c;
    --v11-gold-lt: #e0c97a;
    --v11-cream:   #faf7f2;
    --v11-warm:    #f0ede6;
    --v11-white:   #ffffff;
    --v11-shadow:  0 24px 64px rgba(5,15,30,0.16);
    --v11-glow:    0 0 40px rgba(201,168,76,0.18);
}

/* ── Sophisticated section alternation ── */
main > section:nth-child(odd)  { background: var(--v11-white); }
main > section:nth-child(even) { background: var(--v11-cream); }

/* Dark sections stay dark */
.section--dark { background: var(--v11-deep) !important; }

/* ── Premium section dividers ── */
.section + .section::before,
.section--alt + .section::before {
    content: none;
}

/* ── Section label premium style ── */
.section-label {
    display:         inline-block !important;
    font-size:       0.62rem      !important;
    font-weight:     800          !important;
    letter-spacing:  0.22em       !important;
    text-transform:  uppercase    !important;
    color:           var(--v11-gold) !important;
    margin-bottom:   0.75rem      !important;
    position:        relative     !important;
    padding-left:    1.25rem      !important;
}
.section-label::before {
    content:    '';
    position:   absolute;
    left:       0;
    top:        50%;
    width:      10px;
    height:     1.5px;
    background: currentColor;
    transform:  translateY(-50%);
}
.section--dark .section-label,
.virtual-tour-section .section-label,
.newsletter-section .section-label { color: var(--v11-gold-lt) !important; }

/* ── Section title premium ── */
.section-title {
    font-family:    'Playfair Display', Georgia, serif !important;
    font-size:      clamp(2rem, 4vw, 3rem) !important;
    font-weight:    800 !important;
    letter-spacing: -0.02em !important;
    line-height:    1.1 !important;
    color:          var(--v11-mid) !important;
    margin-bottom:  0 !important;
}
.section--dark .section-title,
.virtual-tour-section .section-title { color: #fff !important; }

/* ── Gold divider ── */
.gold-divider {
    height:     2px !important;
    width:      60px !important;
    background: linear-gradient(90deg, var(--v11-gold), var(--v11-gold-lt)) !important;
    margin:     1.25rem 0 1.5rem !important;
    border:     none !important;
    border-radius: 2px !important;
}
.gold-divider.centered { margin-left: auto !important; margin-right: auto !important; }

/* ─────────────────────────────────────────────────────────────
   HEADER v11 — Glass morphism premium
───────────────────────────────────────────────────────────── */
.site-header {
    position:   fixed !important;
    top:        0     !important;
    left:       0     !important;
    right:      0     !important;
    z-index:    1000  !important;
    transition: all 0.5s cubic-bezier(0.4,0,0.2,1) !important;
}
.header--transparent {
    background:      linear-gradient(180deg, rgba(5,15,30,0.55) 0%, transparent 100%) !important;
    box-shadow:      none !important;
    backdrop-filter: none !important;
}
.header--scrolled {
    background:      rgba(255,255,255,0.95) !important;
    backdrop-filter: saturate(200%) blur(20px) !important;
    -webkit-backdrop-filter: saturate(200%) blur(20px) !important;
    box-shadow:      0 1px 0 rgba(13,33,55,0.07), 0 4px 30px rgba(13,33,55,0.08) !important;
}

/* Scroll progress */
.scroll-progress { background: rgba(0,0,0,0.06) !important; }
.scroll-progress-bar { background: linear-gradient(90deg, var(--v11-gold), var(--v11-gold-lt)) !important; }

/* ─────────────────────────────────────────────────────────────
   PILLARS SECTION v11 — 3D premium cards
───────────────────────────────────────────────────────────── */
.v10-pillar-card,
/* Fallback for inline-style cards in front-page.php */
.grid-3 > div[data-reveal] {
    background:    #fff !important;
    border-radius: 20px !important;
    padding:       2.5rem 2rem !important;
    box-shadow:    var(--v11-shadow) !important;
    border:        1px solid rgba(13,33,55,0.05) !important;
    position:      relative !important;
    overflow:      hidden !important;
    transition:    transform 0.45s cubic-bezier(0.34,1.56,0.64,1), box-shadow 0.35s ease !important;
}
.grid-3 > div[data-reveal]::before,
.v10-pillar-card::before {
    content:          '' !important;
    position:         absolute !important;
    top: 0; left: 0; right: 0 !important;
    height:           3px !important;
    background:       linear-gradient(90deg, var(--v11-gold), var(--v11-gold-lt)) !important;
    transform:        scaleX(0) !important;
    transform-origin: left !important;
    transition:       transform 0.45s cubic-bezier(0.34,1.56,0.64,1) !important;
}
.grid-3 > div[data-reveal]:hover::before,
.v10-pillar-card:hover::before { transform: scaleX(1) !important; }
.grid-3 > div[data-reveal]:hover,
.v10-pillar-card:hover {
    transform:  translateY(-12px) !important;
    box-shadow: 0 32px 72px rgba(13,33,55,0.18) !important;
}
/* Middle dark card */
.grid-3 > div[data-reveal][style*="background:var(--color-primary)"],
.v10-pillar-card--featured {
    background:  var(--v11-mid) !important;
    border-color:rgba(201,168,76,0.2) !important;
    box-shadow:  0 16px 48px rgba(5,15,30,0.25), var(--v11-glow) !important;
}
.grid-3 > div[data-reveal][style*="background:var(--color-primary)"] h3,
.v10-pillar-card--featured .v10-pillar-title { color: #fff !important; }
.grid-3 > div[data-reveal][style*="background:var(--color-primary)"] p,
.v10-pillar-card--featured .v10-pillar-text   { color: rgba(255,255,255,0.68) !important; }

/* ─────────────────────────────────────────────────────────────
   STATS v11 — High contrast dark band
───────────────────────────────────────────────────────────── */
.stats-grid, .v10-stats-grid {
    background:    linear-gradient(135deg, var(--v11-navy) 0%, var(--v11-mid) 100%) !important;
    padding:       0 !important;
    gap:           0 !important;
}
.stat-item, .v10-stat-card {
    padding:       3rem 2rem !important;
    border-right:  1px solid rgba(255,255,255,0.06) !important;
    position:      relative !important;
    transition:    background 0.3s !important;
}
.stat-item:hover, .v10-stat-card:hover { background: rgba(255,255,255,0.03) !important; }
.stat-number, .v10-stat-num {
    font-family: 'Playfair Display', Georgia, serif !important;
    font-size:   clamp(2.25rem, 4vw, 3.5rem) !important;
    font-weight: 800 !important;
    color:       var(--v11-gold-lt) !important;
    line-height: 1 !important;
    text-shadow: 0 2px 20px rgba(201,168,76,0.3) !important;
}
.stat-label, .v10-stat-label {
    font-size:      0.68rem !important;
    font-weight:    700 !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
    color:          rgba(255,255,255,0.5) !important;
    margin-top:     0.5rem !important;
}

/* ─────────────────────────────────────────────────────────────
   ROOM CARDS v11 — Ultra premium overlay
───────────────────────────────────────────────────────────── */
.v8-room-card {
    border-radius: 20px !important;
    overflow:      hidden !important;
    box-shadow:    0 8px 40px rgba(13,33,55,0.12) !important;
    transition:    transform 0.5s cubic-bezier(0.34,1.56,0.64,1), box-shadow 0.4s ease !important;
}
.v8-room-card:hover {
    transform:  translateY(-16px) !important;
    box-shadow: 0 32px 72px rgba(13,33,55,0.22) !important;
}
.v8-room-card__title {
    font-size: 1.3rem !important;
    text-shadow: 0 2px 12px rgba(0,0,0,0.3) !important;
}
.v8-price-amount { color: var(--v11-gold-lt) !important; }
.v8-room-card__book {
    background: linear-gradient(130deg, var(--v11-gold-lt), var(--v11-gold)) !important;
    color:      var(--v11-mid) !important;
    font-weight:800 !important;
}

/* ─────────────────────────────────────────────────────────────
   AMENITY CARDS v11
───────────────────────────────────────────────────────────── */
.amenity-card {
    background:    #fff !important;
    border-radius: 18px !important;
    padding:       2rem 1.5rem !important;
    text-align:    center !important;
    box-shadow:    0 4px 24px rgba(13,33,55,0.07) !important;
    border:        1px solid rgba(13,33,55,0.04) !important;
    position:      relative !important;
    overflow:      hidden !important;
    transition:    transform 0.4s cubic-bezier(0.34,1.56,0.64,1), box-shadow 0.35s ease !important;
}
.amenity-card::before {
    content:          '' !important;
    position:         absolute !important;
    bottom: 0; left: 0; right: 0 !important;
    height:           3px !important;
    background:       linear-gradient(90deg, var(--v11-gold), var(--v11-gold-lt)) !important;
    transform:        scaleX(0) !important;
    transform-origin: center !important;
    transition:       transform 0.4s ease !important;
}
.amenity-card:hover {
    transform:  translateY(-10px) !important;
    box-shadow: 0 20px 52px rgba(13,33,55,0.14) !important;
}
.amenity-card:hover::before { transform: scaleX(1) !important; }
.amenity-icon { font-size: 2.25rem !important; margin-bottom: 0.875rem !important; }
.amenity-name { font-size: 0.9rem !important; font-weight: 700 !important; color: var(--v11-mid) !important; margin: 0 0 0.375rem !important; }
.amenity-desc { font-size: 0.75rem !important; color: #888 !important; line-height: 1.65 !important; margin: 0 !important; }

/* ─────────────────────────────────────────────────────────────
   REVIEW CARDS v11
───────────────────────────────────────────────────────────── */
.v9-review-card {
    background:    #fff !important;
    border-radius: 18px !important;
    padding:       2rem !important;
    box-shadow:    0 4px 28px rgba(0,0,0,0.08) !important;
    border:        1px solid rgba(0,0,0,0.05) !important;
    transition:    transform 0.4s cubic-bezier(0.34,1.56,0.64,1), box-shadow 0.35s !important;
    position:      relative !important;
}
.v9-review-card:hover {
    transform:  translateY(-8px) !important;
    box-shadow: 0 20px 56px rgba(0,0,0,0.12) !important;
}
.v9-review-text { font-style: italic !important; color: #555 !important; line-height: 1.8 !important; }
.v9-review-stars { color: #f4a83a !important; font-size: 1rem !important; letter-spacing: 0.05em !important; }

/* ─────────────────────────────────────────────────────────────
   GALLERY v11 — Dynamic masonry with hover
───────────────────────────────────────────────────────────── */
.gallery-item {
    cursor:     pointer !important;
    overflow:   hidden !important;
    position:   relative !important;
    transition: transform 0.4s cubic-bezier(0.34,1.56,0.64,1), box-shadow 0.35s ease !important;
}
.gallery-item:hover { transform: scale(1.02) !important; box-shadow: 0 16px 48px rgba(13,33,55,0.2) !important; z-index: 2 !important; }
.gallery-item__img-wrap img { transition: transform 0.6s ease !important; }
.gallery-item:hover .gallery-item__img-wrap img { transform: scale(1.07) !important; }

/* ─────────────────────────────────────────────────────────────
   BUTTONS v11 — Consistent premium style
───────────────────────────────────────────────────────────── */
.btn--primary,
.header-book-btn,
.v8-btn--primary,
.wow-btn {
    background: linear-gradient(130deg, var(--v11-gold-lt) 0%, var(--v11-gold) 50%, #a07828 100%) !important;
    color:      var(--v11-mid) !important;
    font-weight:800 !important;
    box-shadow: 0 4px 20px rgba(201,168,76,0.3) !important;
    transition: transform 0.3s cubic-bezier(0.34,1.56,0.64,1), box-shadow 0.3s ease !important;
}
.btn--primary:hover,
.header-book-btn:hover,
.wow-btn:hover {
    transform:  translateY(-3px) !important;
    box-shadow: 0 10px 32px rgba(201,168,76,0.45) !important;
}
.btn--secondary {
    background:  transparent !important;
    border-color:var(--v11-mid) !important;
    color:       var(--v11-mid) !important;
    transition:  all 0.3s ease !important;
}
.btn--secondary:hover {
    background:  var(--v11-mid) !important;
    color:       #fff !important;
    transform:   translateY(-2px) !important;
}

/* Book Now button xl */
.btn--xl {
    padding:    1.1rem 2.75rem !important;
    font-size:  0.82rem !important;
    border-radius: 12px !important;
}

/* ─────────────────────────────────────────────────────────────
   AVAILABILITY BANNER v11
───────────────────────────────────────────────────────────── */
.availability-banner {
    background:    var(--v11-deep) !important;
    border-top:    2px solid var(--v11-gold) !important;
    box-shadow:    0 8px 32px rgba(5,15,30,0.2) !important;
}
.availability-banner__title { color: #fff !important; font-size: clamp(1.1rem,2.5vw,1.5rem) !important; }
.availability-banner__sub   { color: rgba(255,255,255,0.55) !important; font-size: 0.82rem !important; }

/* ─────────────────────────────────────────────────────────────
   FOOTER v11 — Deep premium dark
───────────────────────────────────────────────────────────── */
.site-footer {
    background: linear-gradient(180deg, var(--v11-navy) 0%, #020810 100%) !important;
    border-top: 2px solid rgba(201,168,76,0.2) !important;
}

/* ─────────────────────────────────────────────────────────────
   MOBILE RESPONSIVE v11
───────────────────────────────────────────────────────────── */
@media (max-width: 768px) {
    .section, .section--alt, .section--dark { padding: 3.5rem 0 !important; }
    .container { padding-left: 1.25rem !important; padding-right: 1.25rem !important; }
    .section-title { font-size: clamp(1.5rem, 5.5vw, 2.25rem) !important; }

    .grid-2, .grid-3, .grid-4 { grid-template-columns: 1fr !important; gap: 1.25rem !important; }
    .amenities-grid            { grid-template-columns: repeat(2,1fr) !important; gap: 0.875rem !important; }
    .stats-grid                { grid-template-columns: repeat(2,1fr) !important; }
    .v10-stats-grid            { grid-template-columns: repeat(2,1fr) !important; }

    .about-snippet, .dining-split { grid-template-columns: 1fr !important; gap: 2.5rem !important; }
    [style*="grid-template-columns:2fr 1fr"], [style*="grid-template-columns:1fr 2fr"],
    [style*="grid-template-columns:1fr 1fr"] { grid-template-columns: 1fr !important; gap: 1.5rem !important; }

    .v8-hero__content    { padding: calc(80px + 2rem) 1.25rem 8rem !important; text-align: center !important; }
    .v8-hero__ctas       { flex-direction: column !important; align-items: center !important; }
    .v8-btn              { width: 100% !important; max-width: 300px !important; justify-content: center !important; }
    .v8-hero__trust      { display: none !important; }

    .v91-rooms-grid      { grid-template-columns: 1fr !important; gap: 1.25rem !important; }
    .v9-reviews-grid     { grid-template-columns: 1fr !important; }
    .v9-exp-grid         { grid-template-columns: 1fr !important; }
    .v9-trust-numbers    { flex-wrap: wrap !important; }
    .v9-trust-num-item   { flex: 1 0 50% !important; }

    .home-gallery-grid   { grid-template-columns: repeat(2,1fr) !important; grid-template-rows: auto !important; gap: 0.625rem !important; }
    .home-gallery-item--tall { grid-row: span 1 !important; }
    .home-gallery-item   { aspect-ratio: 4/3 !important; }

    .v9-gallery-masonry  { grid-template-columns: repeat(2,1fr) !important; grid-template-rows: auto !important; }
    .v9-gal-item         { height: 170px !important; }
    .v9-gal-item--tall   { grid-row: span 1 !important; }

    .gallery-masonry     { columns: 2 !important; column-gap: 0.625rem !important; }
    .gallery-item        { break-inside: avoid !important; margin-bottom: 0.625rem !important; }

    .stat-item, .v10-stat-card { padding: 2rem 1rem !important; }
    .amenity-card   { padding: 1.5rem 1rem !important; }
    .amenity-icon   { font-size: 1.9rem !important; }

    .wow-section__content { padding: 3rem 1.5rem !important; }
    .wow-title { font-size: clamp(1.7rem, 7vw, 2.5rem) !important; }

    .v9-rating-badge { flex-direction: column !important; text-align: center !important; gap: 0.75rem !important; }
    .v9-rating-platforms { justify-content: center !important; }

    .newsletter-inner { flex-direction: column !important; gap: 2rem !important; }
    .newsletter-form  { flex-direction: column !important; width: 100% !important; }
    .newsletter-input { width: 100% !important; }

    .footer-grid   { grid-template-columns: 1fr !important; gap: 2rem !important; }
    .footer-bottom { flex-direction: column !important; text-align: center !important; }

    [style*="position:sticky"] { position: static !important; }
    iframe[src*="google.com/maps"] { height: 240px !important; }
    .page-hero { min-height: 300px !important; }

    .btn--lg, .btn--xl { width: 100% !important; max-width: 340px !important; justify-content: center !important; }
}

@media (max-width: 480px) {
    .container { padding-left: 1rem !important; padding-right: 1rem !important; }
    .amenities-grid { gap: 0.75rem !important; }
    .v9-gal-item, .gallery-item { transform: none !important; }
}

/* ─────────────────────────────────────────────────────────────
   SAFE AREA + ACCESSIBILITY
───────────────────────────────────────────────────────────── */
@supports (padding: env(safe-area-inset-bottom)) {
    .mobile-book-bar { padding-bottom: calc(0.75rem + env(safe-area-inset-bottom)) !important; }
    @media (max-width: 768px) { body { padding-bottom: calc(64px + env(safe-area-inset-bottom)); } }
}
:focus-visible { outline: 2px solid var(--v11-gold) !important; outline-offset: 3px !important; border-radius: 4px !important; }
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { animation-duration: 0.01ms !important; transition-duration: 0.1ms !important; }
    [data-reveal] { opacity: 1 !important; transform: none !important; }
}

/* ── design-v12.css (26,592b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v12
   ✦ Ultra-luxury Cormorant Garant + DM Sans typography
   ✦ All invisible text fixed
   ✦ Mobile menu guaranteed (style-tag injection in JS)
   ✦ Premium animations & depth
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   LUXURY TYPOGRAPHY SYSTEM
   Cormorant Garant — exquisite serif (used by Hermès, luxury brands)
   DM Sans — crisp geometric body text
───────────────────────────────────────────────────────────── */
:root {
    --font-display:  'Cormorant Garant', 'Playfair Display', Georgia, serif;
    --font-body:     'DM Sans', 'Inter', system-ui, -apple-system, sans-serif;

    /* Color system — hard-coded so CSS vars always resolve */
    --navy:          #080f1c;
    --navy-mid:      #0d2137;
    --navy-light:    #1a3a5c;
    --gold:          #c9a84c;
    --gold-light:    #e0c97a;
    --gold-pale:     #f5e9c0;
    --cream:         #faf7f0;
    --warm:          #f0ede4;
    --white:         #ffffff;
    --text:          #2c2c2c;
    --text-muted:    #6b6b6b;
    --text-light:    #8a8078;
    --border:        rgba(13,33,55,0.08);
}

/* Global overrides */
html, body { overflow-x: hidden !important; max-width: 100vw !important; }
*, *::before, *::after { box-sizing: border-box; }

/* ── Body: DM Sans for body, Cormorant for headings ── */
body {
    font-family: var(--font-body) !important;
    -webkit-font-smoothing:  antialiased !important;
    -moz-osx-font-smoothing: grayscale   !important;
    color: var(--text) !important;
}

h1, h2, h3, h4, h5, h6,
.section-title,
.v8-hero__title,
.logo-name,
.v8-room-card__title,
.v9-exp-title,
.v9-review-card strong,
.amenity-name,
.wow-title,
.page-hero-title,
.v10-pillar-title,
.testimonial-text {
    font-family: var(--font-display) !important;
    font-feature-settings: "liga" 1, "kern" 1 !important;
    letter-spacing: -0.01em !important;
}

/* Cormorant looks best at larger tracking for display text */
.section-title {
    font-size:      clamp(2.2rem, 4.5vw, 3.5rem) !important;
    font-weight:    600 !important;
    line-height:    1.1  !important;
    letter-spacing: -0.02em !important;
    color:          var(--navy-mid) !important;
}
.section--dark .section-title,
.virtual-tour-section .section-title { color: var(--white) !important; }

.section-subtitle {
    font-family: var(--font-body) !important;
    font-size:   clamp(0.9rem, 1.5vw, 1.05rem) !important;
    line-height: 1.85 !important;
    color:       var(--text-light) !important;
}
.section--dark .section-subtitle { color: rgba(255,255,255,0.62) !important; }

/* ─────────────────────────────────────────────────────────────
   FIX: INVISIBLE TEXT — Define all missing CSS vars
───────────────────────────────────────────────────────────── */
:root {
    /* Legacy var names used in front-page.php inline styles */
    --color-primary:       #0d2137;
    --color-primary-light: #1a3a5c;
    --color-primary-dark:  #060f1e;
    --color-accent:        #c9a84c;
    --color-accent-dark:   #a07828;
    --color-accent-light:  #e0c97a;
    --color-white:         #ffffff;
    --color-text:          #2c2c2c;
    --color-text-light:    #6b6b6b;
    --color-text-muted:    #8a8078;
    --color-bg:            #faf7f0;
    --color-bg-alt:        #f0ede4;
    --color-mid-gray:      rgba(13,33,55,0.15);
    --font-heading:        'Cormorant Garant', 'Playfair Display', Georgia, serif;
    --shadow-md:           0 4px 24px rgba(13,33,55,0.1);
    --shadow-xl:           0 24px 64px rgba(13,33,55,0.18);
    --shadow-gold:         0 8px 32px rgba(201,168,76,0.35);
    --radius-sm:           8px;
    --radius-md:           12px;
    --radius-lg:           18px;
    --radius-xl:           24px;
    --radius-full:         999px;
}

/* Hard-fix invisible text in about section */
.about-snippet__content p,
[style*="color:var(--color-text-light)"],
[style*="color: var(--color-text-light)"] {
    color: var(--text-muted) !important;
}
/* Hard-fix dining list items */
[style*="color:var(--color-text-light);font-size"] {
    color: var(--text-muted) !important;
}
/* Hard-fix any text on dark sections using old vars */
.section--dark [style*="color:rgba(255,255,255"] {
    color: rgba(255,255,255,0.72) !important;
}

/* ─────────────────────────────────────────────────────────────
   HEADER v12 — Luxury glass
───────────────────────────────────────────────────────────── */
.site-header {
    position:   fixed !important;
    top:        0 !important;
    left:       0 !important;
    right:      0 !important;
    z-index:    1000 !important;
    transition: background 0.6s cubic-bezier(0.4,0,0.2,1),
                box-shadow 0.4s ease,
                padding    0.4s ease !important;
}
.header--transparent {
    background:      linear-gradient(180deg, rgba(5,12,26,0.65) 0%, transparent 100%) !important;
    box-shadow:      none !important;
}
.header--scrolled {
    background:      rgba(255,255,255,0.96) !important;
    backdrop-filter: saturate(180%) blur(20px) !important;
    -webkit-backdrop-filter: saturate(180%) blur(20px) !important;
    box-shadow:      0 1px 0 rgba(13,33,55,0.06), 0 4px 32px rgba(13,33,55,0.07) !important;
}

/* Header logo font */
.logo-name {
    font-family:    var(--font-display) !important;
    font-size:      1.2rem !important;
    font-weight:    600 !important;
    letter-spacing: 0.05em !important;
}

/* ─────────────────────────────────────────────────────────────
   HERO v12 — Cinematic with parallax
───────────────────────────────────────────────────────────── */
.v8-hero__title {
    font-size:      clamp(2.8rem, 7vw, 6.5rem) !important;
    font-weight:    600 !important;
    line-height:    1.05 !important;
    letter-spacing: -0.03em !important;
    text-shadow:    0 4px 50px rgba(0,0,0,0.4) !important;
}
.v8-hero__subtitle {
    font-family:    var(--font-body) !important;
    font-size:      clamp(1rem, 1.8vw, 1.3rem) !important;
    font-weight:    300 !important;
    letter-spacing: 0.02em !important;
    line-height:    1.9 !important;
}
.v8-hero__eyebrow {
    font-family:    var(--font-body) !important;
    font-size:      0.65rem !important;
    font-weight:    500 !important;
    letter-spacing: 0.28em !important;
}

/* ─────────────────────────────────────────────────────────────
   SECTION LABELS v12
───────────────────────────────────────────────────────────── */
.section-label {
    font-family:    var(--font-body) !important;
    font-size:      0.62rem !important;
    font-weight:    600 !important;
    letter-spacing: 0.24em !important;
    text-transform: uppercase !important;
    color:          var(--gold) !important;
    display:        inline-block !important;
    position:       relative !important;
    padding-bottom: 0 !important;
}
.section--dark .section-label { color: var(--gold-light) !important; }

/* ─────────────────────────────────────────────────────────────
   PILLAR CARDS v12 — Premium 3D
───────────────────────────────────────────────────────────── */
.v10-pillar-card,
.grid-3 > div[data-reveal][style*="border-bottom:3px solid"] {
    border-radius:  22px !important;
    box-shadow:     0 8px 40px rgba(13,33,55,0.10) !important;
    transition:     transform 0.5s cubic-bezier(0.34,1.56,0.64,1),
                    box-shadow 0.4s ease !important;
    overflow:       hidden !important;
    position:       relative !important;
}
.v10-pillar-card:hover,
.grid-3 > div[data-reveal][style*="border-bottom"]:hover {
    transform:  translateY(-14px) !important;
    box-shadow: 0 32px 80px rgba(13,33,55,0.18) !important;
}
.v10-pillar-title,
.grid-3 > div[data-reveal] h3 {
    font-family: var(--font-display) !important;
    font-size:   1.55rem !important;
    font-weight: 600 !important;
    line-height: 1.25 !important;
}
.v10-pillar-text,
.grid-3 > div[data-reveal] p {
    font-family: var(--font-body) !important;
    font-size:   0.9rem !important;
    line-height: 1.85 !important;
    color:       var(--text-muted) !important;
}
/* Featured dark card text fix */
.v10-pillar-card--featured .v10-pillar-title,
.grid-3 > div[data-reveal][style*="background:var(--color-primary)"] h3 {
    color: var(--white) !important;
}
.v10-pillar-card--featured .v10-pillar-text,
.grid-3 > div[data-reveal][style*="background:var(--color-primary)"] p {
    color: rgba(255,255,255,0.68) !important;
}

/* ─────────────────────────────────────────────────────────────
   STATS BAND v12
───────────────────────────────────────────────────────────── */
.v10-stats-section,
.section:has(.stats-grid) {
    background: linear-gradient(135deg, var(--navy) 0%, var(--navy-mid) 100%) !important;
}
.stat-number span, .v10-stat-num span, .v10-stat-num {
    font-family: var(--font-display) !important;
    font-size:   clamp(2.5rem, 4.5vw, 4rem) !important;
    font-weight: 600 !important;
    color:       var(--gold-light) !important;
}
.stat-label, .v10-stat-label {
    font-family:    var(--font-body) !important;
    font-size:      0.65rem !important;
    font-weight:    600 !important;
    letter-spacing: 0.14em !important;
    text-transform: uppercase !important;
    color:          rgba(255,255,255,0.45) !important;
}

/* ─────────────────────────────────────────────────────────────
   ROOM CARDS v12
───────────────────────────────────────────────────────────── */
.v8-room-card {
    border-radius: 22px !important;
    box-shadow:    0 8px 40px rgba(13,33,55,0.12) !important;
    transition:    transform 0.5s cubic-bezier(0.34,1.56,0.64,1),
                   box-shadow 0.4s ease !important;
}
.v8-room-card:hover {
    transform:  translateY(-16px) !important;
    box-shadow: 0 36px 80px rgba(13,33,55,0.22) !important;
}
.v8-room-card__title {
    font-size:   1.35rem !important;
    font-weight: 600 !important;
}

/* ─────────────────────────────────────────────────────────────
   AMENITY CARDS v12
───────────────────────────────────────────────────────────── */
.amenity-card {
    border-radius: 18px !important;
    transition:    transform 0.5s cubic-bezier(0.34,1.56,0.64,1),
                   box-shadow 0.4s ease !important;
}
.amenity-card:hover { transform: translateY(-10px) !important; }
.amenity-name { font-family: var(--font-display) !important; font-size: 1.05rem !important; font-weight: 600 !important; color: var(--navy-mid) !important; }
.amenity-desc { font-family: var(--font-body) !important; color: var(--text-light) !important; }

/* ─────────────────────────────────────────────────────────────
   REVIEW CARDS v12
───────────────────────────────────────────────────────────── */
.v9-review-card { border-radius: 20px !important; }
.v9-review-text { font-family: var(--font-display) !important; font-size: 1.05rem !important; font-style: italic !important; line-height: 1.8 !important; color: var(--navy-mid) !important; }
.v9-review-who strong { font-family: var(--font-body) !important; }

/* ─────────────────────────────────────────────────────────────
   WOW SECTION v12
───────────────────────────────────────────────────────────── */
.wow-title {
    font-size:      clamp(2.5rem, 6vw, 5rem) !important;
    font-weight:    500 !important;
    letter-spacing: -0.03em !important;
    line-height:    1.08 !important;
}
.wow-text { font-family: var(--font-body) !important; }

/* ─────────────────────────────────────────────────────────────
   ABOUT + DINING TEXT FIX
───────────────────────────────────────────────────────────── */
.about-snippet__content p { color: var(--text-muted) !important; }
.dining-split p, .dining-split li { color: var(--text-muted) !important; }

/* ─────────────────────────────────────────────────────────────
   BUTTONS v12
───────────────────────────────────────────────────────────── */
.btn, button[class*="btn"], a[class*="btn"] {
    font-family: var(--font-body) !important;
    letter-spacing: 0.08em !important;
}
.btn--primary, .header-book-btn, .v8-btn--primary, .wow-btn {
    background: linear-gradient(130deg, var(--gold-light) 0%, var(--gold) 60%, #9a7222 100%) !important;
    color:      var(--navy-mid) !important;
    font-weight:700 !important;
    box-shadow: 0 4px 20px rgba(201,168,76,0.3) !important;
    transition: transform 0.35s cubic-bezier(0.34,1.56,0.64,1), box-shadow 0.3s ease !important;
}
.btn--primary:hover, .header-book-btn:hover, .wow-btn:hover {
    transform:  translateY(-3px) !important;
    box-shadow: 0 12px 36px rgba(201,168,76,0.45) !important;
}

/* ─────────────────────────────────────────────────────────────
   PREMIUM ANIMATIONS v12
───────────────────────────────────────────────────────────── */

/* ── Shimmer effect on gold elements ── */
@keyframes v12Shimmer {
    0%   { background-position: -200% center; }
    100% { background-position:  200% center; }
}
.gold-divider {
    background:          linear-gradient(90deg, var(--gold) 0%, var(--gold-light) 40%, var(--gold) 80%) !important;
    background-size:     200% auto !important;
    animation:           v12Shimmer 4s linear infinite !important;
    height:              1.5px !important;
    border-radius:       2px !important;
}

/* ── Floating animation for stat icons ── */
@keyframes v12Float {
    0%, 100% { transform: translateY(0); }
    50%       { transform: translateY(-6px); }
}
.v10-stat-icon { animation: v12Float 3s ease-in-out infinite; }
.v10-stat-icon:nth-child(2) { animation-delay: 0.5s; }
.v10-stat-icon:nth-child(3) { animation-delay: 1s; }
.v10-stat-icon:nth-child(4) { animation-delay: 1.5s; }

/* ── Pulse ring on CTA button ── */
@keyframes v12PulseRing {
    0%   { box-shadow: 0 0 0 0   rgba(201,168,76,0.4); }
    70%  { box-shadow: 0 0 0 16px rgba(201,168,76,0); }
    100% { box-shadow: 0 0 0 0   rgba(201,168,76,0); }
}
.wow-btn, .btn--primary.btn--lg, .btn--primary.btn--xl {
    animation: v12PulseRing 2.5s cubic-bezier(0.4,0,0.6,1) infinite !important;
}
.btn--primary:hover, .wow-btn:hover {
    animation: none !important;
}

/* ── Stagger entrance for cards ── */
@keyframes v12SlideUp {
    from { opacity: 0; transform: translateY(32px); }
    to   { opacity: 1; transform: translateY(0); }
}
.revealed.v8-room-card  { animation: v12SlideUp 0.65s cubic-bezier(0.16,1,0.3,1) both; }
.revealed.amenity-card  { animation: v12SlideUp 0.55s cubic-bezier(0.16,1,0.3,1) both; }
.revealed.v9-review-card{ animation: v12SlideUp 0.6s  cubic-bezier(0.16,1,0.3,1) both; }
.revealed.v9-exp-card   { animation: v12SlideUp 0.6s  cubic-bezier(0.16,1,0.3,1) both; }
[data-delay="100"].revealed  { animation-delay: 0.1s !important; }
[data-delay="200"].revealed  { animation-delay: 0.2s !important; }
[data-delay="250"].revealed  { animation-delay: 0.25s !important; }
[data-delay="300"].revealed  { animation-delay: 0.3s !important; }
[data-delay="400"].revealed  { animation-delay: 0.4s !important; }

/* ── Scroll progress bar shimmer ── */
@keyframes v12ProgressShimmer {
    from { background-position: -200% center; }
    to   { background-position:  200% center; }
}
.scroll-progress-bar {
    background:          linear-gradient(90deg, #a07828, var(--gold-light), #a07828) !important;
    background-size:     200% auto !important;
    animation:           v12ProgressShimmer 2s linear infinite !important;
}

/* ── Subtle hover glow on amenity cards ── */
.amenity-card:hover {
    box-shadow: 0 20px 52px rgba(13,33,55,0.14), 0 0 0 1px rgba(201,168,76,0.15) !important;
}

/* ── Trust strip items — slide-in ── */
@keyframes v12TrustIn {
    from { opacity: 0; transform: translateY(-8px); }
    to   { opacity: 1; transform: translateY(0); }
}
.v9-trust-item { animation: v12TrustIn 0.5s ease both; }
.v9-trust-item:nth-child(1) { animation-delay: 0.05s; }
.v9-trust-item:nth-child(2) { animation-delay: 0.1s; }
.v9-trust-item:nth-child(3) { animation-delay: 0.15s; }
.v9-trust-item:nth-child(4) { animation-delay: 0.2s; }
.v9-trust-item:nth-child(5) { animation-delay: 0.25s; }

/* ── Awards ticker ── */
.awards-track { animation-timing-function: linear !important; }

/* ── Page transition overlay ── */
body::before {
    content:    '';
    position:   fixed;
    inset:      0;
    background: var(--navy);
    z-index:    9999999;
    opacity:    0;
    pointer-events: none;
    transition: opacity 0.3s ease;
}
body.page-transitioning::before { opacity: 1; pointer-events: auto; }

/* ── WOW section parallax bg ── */
.wow-section__bg img {
    transition: transform 10s cubic-bezier(0.25,0.46,0.45,0.94) !important;
    will-change: transform !important;
}
.wow-section:hover .wow-section__bg img { transform: scale(1.06) !important; }

/* ── Gallery item reveal ── */
.gallery-item {
    transition: transform 0.4s cubic-bezier(0.34,1.56,0.64,1),
                box-shadow 0.35s ease !important;
}
.gallery-item:hover {
    transform:  scale(1.03) !important;
    box-shadow: 0 20px 56px rgba(13,33,55,0.2) !important;
    z-index:    2 !important;
}

/* ── Cursor trail (desktop) ── */
.custom-cursor      { background: rgba(201,168,76,0.8) !important; }
.custom-cursor-ring { border-color: rgba(201,168,76,0.5) !important; }

/* ── Nav desktop link hover — elegant underline ── */
@media (min-width: 769px) {
    .nav-menu > .menu-item > a {
        font-family: var(--font-body) !important;
        font-size:   0.8rem !important;
        font-weight: 500 !important;
        letter-spacing: 0.06em !important;
    }
    .nav-menu > .menu-item > a::after {
        background: var(--gold) !important;
        height:     1.5px !important;
    }
}

/* ─────────────────────────────────────────────────────────────
   MOBILE RESPONSIVE v12
───────────────────────────────────────────────────────────── */
@media (max-width: 768px) {
    .section, .section--alt, .section--dark { padding: 3.5rem 0 !important; }
    .section-title { font-size: clamp(1.9rem, 7vw, 2.8rem) !important; }
    .container { padding: 0 1.25rem !important; }

    .grid-2, .grid-3, .grid-4   { grid-template-columns: 1fr !important; gap: 1.25rem !important; }
    .amenities-grid              { grid-template-columns: repeat(2,1fr) !important; gap: 0.875rem !important; }
    .stats-grid, .v10-stats-grid { grid-template-columns: repeat(2,1fr) !important; }
    .about-snippet, .dining-split { grid-template-columns: 1fr !important; gap: 2.5rem !important; }
    [style*="grid-template-columns:2fr 1fr"],
    [style*="grid-template-columns:1fr 2fr"],
    [style*="grid-template-columns:1fr 1fr"] { grid-template-columns: 1fr !important; gap: 1.5rem !important; }

    .v8-hero__title    { font-size: clamp(2.2rem, 9vw, 3.5rem) !important; }
    .v8-hero__subtitle { font-size: 0.9rem !important; }
    .v8-hero__content  { padding: calc(80px + 2rem) 1.25rem 8rem !important; text-align: center !important; }
    .v8-hero__ctas     { flex-direction: column !important; align-items: center !important; }
    .v8-btn            { width: 100% !important; max-width: 300px !important; justify-content: center !important; }
    .v8-hero__trust    { display: none !important; }

    .v91-rooms-grid, [class*="rooms-grid"] { grid-template-columns: 1fr !important; gap: 1.25rem !important; }
    .v9-reviews-grid   { grid-template-columns: 1fr !important; }
    .v9-exp-grid       { grid-template-columns: 1fr !important; }
    .v9-trust-numbers  { flex-wrap: wrap !important; }
    .v9-trust-num-item { flex: 1 0 50% !important; }
    .v9-rating-badge   { flex-direction: column !important; text-align: center !important; gap: 0.75rem !important; }
    .v9-rating-platforms { justify-content: center !important; }

    .home-gallery-grid  { grid-template-columns: repeat(2,1fr) !important; grid-template-rows: auto !important; gap: 0.625rem !important; }
    .home-gallery-item--tall { grid-row: span 1 !important; }
    .home-gallery-item  { aspect-ratio: 4/3 !important; }
    .v9-gallery-masonry { grid-template-columns: repeat(2,1fr) !important; grid-template-rows: auto !important; }
    .v9-gal-item        { height: 170px !important; grid-row: span 1 !important; }
    .gallery-masonry    { columns: 2 !important; column-gap: 0.625rem !important; }
    .gallery-item       { break-inside: avoid !important; margin-bottom: 0.625rem !important; }

    .stat-item, .v10-stat-card { padding: 2rem 1rem !important; }
    .amenity-card  { padding: 1.5rem 1rem !important; }
    .amenity-icon  { font-size: 1.9rem !important; }

    .wow-title     { font-size: clamp(1.8rem, 8vw, 3rem) !important; }
    .wow-section__content { padding: 3rem 1.5rem !important; }

    .newsletter-inner { flex-direction: column !important; gap: 2rem !important; }
    .newsletter-form  { flex-direction: column !important; width: 100% !important; }
    .newsletter-input { width: 100% !important; }
    .footer-grid   { grid-template-columns: 1fr !important; gap: 2rem !important; }
    .footer-bottom { flex-direction: column !important; text-align: center !important; }
    [style*="position:sticky"] { position: static !important; }
    iframe[src*="google.com/maps"] { height: 240px !important; }
    .page-hero { min-height: 300px !important; }
    .page-hero-title { font-size: clamp(1.8rem, 7vw, 2.5rem) !important; }
    .btn--lg, .btn--xl { width: 100% !important; max-width: 340px !important; justify-content: center !important; }

    /* Stop pulse animation on mobile (battery) */
    .wow-btn, .btn--primary.btn--lg, .btn--primary.btn--xl { animation: none !important; }
    .v10-stat-icon { animation: none !important; }
}

@media (max-width: 480px) {
    .container { padding: 0 1rem !important; }
    .amenities-grid { gap: 0.75rem !important; }
    .v8-hero__title { font-size: clamp(1.9rem, 9vw, 2.8rem) !important; }
    .v9-gal-item { height: 140px !important; }
}

/* Safe area */
@supports (padding: env(safe-area-inset-bottom)) {
    .mobile-book-bar { padding-bottom: calc(0.75rem + env(safe-area-inset-bottom)) !important; }
    @media (max-width: 768px) { body { padding-bottom: calc(64px + env(safe-area-inset-bottom)); } }
}

/* Focus */
:focus-visible { outline: 2px solid var(--gold) !important; outline-offset: 3px !important; border-radius: 4px !important; }

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; }
    [data-reveal] { opacity: 1 !important; transform: none !important; }
    .gold-divider { animation: none !important; }
    .scroll-progress-bar { animation: none !important; }
}

/* ── design-v13.css (30,298b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v13
   Complete audit implementation — all issues resolved
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   AUDIT: Custom branded scrollbar
───────────────────────────────────────────────────────────── */
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: #080f1c; }
::-webkit-scrollbar-thumb {
    background: linear-gradient(180deg, #a07828, #c9a84c);
    border-radius: 3px;
}
::-webkit-scrollbar-thumb:hover { background: #e0c97a; }
* { scrollbar-width: thin; scrollbar-color: #c9a84c #080f1c; }

/* ─────────────────────────────────────────────────────────────
   AUDIT: Custom preloader — sunrise over mountain
───────────────────────────────────────────────────────────── */
.v13-preloader {
    position:       fixed;
    inset:          0;
    z-index:        9999999;
    background:     #080f1c;
    display:        flex;
    align-items:    center;
    justify-content:center;
    transition:     opacity 0.6s ease, visibility 0.6s ease;
}
.v13-preloader--done {
    opacity:         0;
    visibility:      hidden;
    pointer-events:  none;
}
.v13-preloader__inner {
    text-align: center;
    display:    flex;
    flex-direction: column;
    align-items:    center;
    gap:            1.5rem;
}
.v13-preloader__mountain {
    width:     160px;
    height:    auto;
    animation: v13MountainFade 0.8s ease forwards;
}
@keyframes v13MountainFade {
    from { opacity: 0; transform: translateY(10px); }
    to   { opacity: 1; transform: translateY(0); }
}
.v13-preloader__sun {
    animation: v13SunRise 1.8s cubic-bezier(0.34,1.56,0.64,1) 0.3s forwards;
    transform-origin: center;
    transform: translateY(20px);
    opacity: 0;
}
@keyframes v13SunRise {
    from { transform: translateY(20px); opacity: 0; }
    to   { transform: translateY(-28px); opacity: 1; }
}
.v13-preloader__text {
    font-family:    'Cormorant Garant', 'Playfair Display', Georgia, serif;
    font-size:      1.1rem;
    font-weight:    400;
    letter-spacing: 0.18em;
    color:          rgba(255,255,255,0.7);
    text-transform: uppercase;
    margin:         0;
    animation:      v13FadeIn 0.8s ease 0.5s both;
}
.v13-preloader__bar {
    width:        140px;
    height:       2px;
    background:   rgba(255,255,255,0.1);
    border-radius:2px;
    overflow:     hidden;
    animation:    v13FadeIn 0.5s ease 0.8s both;
}
.v13-preloader__fill {
    height:     100%;
    background: linear-gradient(90deg, #a07828, #e0c97a);
    border-radius: 2px;
    animation:  v13Load 1.6s ease 0.9s both;
}
@keyframes v13Load   { from { width: 0; }   to { width: 100%; } }
@keyframes v13FadeIn { from { opacity: 0; } to  { opacity: 1; } }

/* Page transition overlay */
body::after {
    content:    '';
    position:   fixed;
    inset:      0;
    background: #080f1c;
    z-index:    9999998;
    opacity:    0;
    pointer-events: none;
    transition: opacity 0.28s ease;
}
body.page-transitioning::after {
    opacity:        1;
    pointer-events: auto;
}

/* ─────────────────────────────────────────────────────────────
   AUDIT: Header dark gradient behind nav (readability fix)
───────────────────────────────────────────────────────────── */
.v13-header-gradient {
    position:   absolute;
    top:        0; left: 0; right: 0;
    height:     100%;
    z-index:    0;
    pointer-events: none;
    /* Dark gradient ensures text readable over bright sky */
    background: linear-gradient(180deg,
        rgba(5,12,26,0.75) 0%,
        rgba(5,12,26,0.45) 60%,
        transparent 100%);
    transition: opacity 0.5s ease;
}
.header--scrolled .v13-header-gradient { opacity: 0; }
.site-header .container { position: relative; z-index: 1; }

/* ─────────────────────────────────────────────────────────────
   AUDIT: Mobile hamburger 48×48px minimum
───────────────────────────────────────────────────────────── */
@media (max-width: 768px) {
    .mobile-menu-toggle {
        min-width:  48px !important;
        min-height: 48px !important;
        width:      48px !important;
        height:     48px !important;
    }
}

/* ─────────────────────────────────────────────────────────────
   AUDIT: Active nav page indicator
───────────────────────────────────────────────────────────── */
.nav-menu .current-menu-item > a,
.nav-menu .v13-active > a {
    color:          #c9a84c !important;
    position:       relative !important;
}
@media (min-width: 769px) {
    .nav-menu .current-menu-item > a::after,
    .nav-menu .v13-active > a::after {
        content:          '' !important;
        position:         absolute !important;
        bottom:           -4px !important;
        left:             0 !important;
        right:            0 !important;
        height:           2px !important;
        background:       #c9a84c !important;
        border-radius:    1px !important;
        transform:        scaleX(1) !important;
        width:            100% !important;
    }
}

/* ─────────────────────────────────────────────────────────────
   AUDIT: Nav link spacing — min 20px left/right padding
───────────────────────────────────────────────────────────── */
@media (min-width: 769px) {
    .nav-menu > .menu-item > a {
        padding-left:  1.25rem !important;
        padding-right: 1.25rem !important;
    }
}

/* ─────────────────────────────────────────────────────────────
   AUDIT: Max-width text containers (680px) for readability
───────────────────────────────────────────────────────────── */
.section-subtitle,
.section-body,
p.section-text {
    max-width: 680px !important;
}
.section-header.centered .section-subtitle { margin-left: auto; margin-right: auto; }

/* ─────────────────────────────────────────────────────────────
   AUDIT: Uniform image aspect ratios + object-fit:cover
───────────────────────────────────────────────────────────── */
/* Room card images — fixed 4:3 */
.v8-room-card__img,
.v8-room-card__img > img {
    aspect-ratio: 4 / 3 !important;
    object-fit:   cover !important;
    width:        100%  !important;
}
/* Gallery items — 4:3 */
.gallery-item,
.home-gallery-item,
.v9-gal-item {
    aspect-ratio: 4 / 3 !important;
    overflow:     hidden !important;
}
.gallery-item img,
.home-gallery-item img,
.v9-gal-item img {
    width:      100%    !important;
    height:     100%    !important;
    object-fit: cover   !important;
    display:    block   !important;
}
/* Tall items get portrait ratio */
.home-gallery-item--tall,
.v9-gal-item--tall { aspect-ratio: 3 / 4 !important; }

/* Image placeholder colour while loading */
img { background: #e8e2d9; }

/* ─────────────────────────────────────────────────────────────
   AUDIT: Off-white section backgrounds (break pure #fff)
───────────────────────────────────────────────────────────── */
body { background: #faf7f0 !important; }

/* Section bg alternation — warm tones, not pure white */
.section:not(.section--alt):not(.section--dark) { background: #ffffff; }
.section--alt { background: #f5f0e8 !important; }
.section--dark { background: linear-gradient(135deg, #080f1c 0%, #0d2137 100%) !important; }

/* ─────────────────────────────────────────────────────────────
   AUDIT: Varied spacing rhythm (not all equal)
───────────────────────────────────────────────────────────── */
/* Default: generous */
.section { padding: clamp(5rem,9vw,9rem) 0 !important; }
/* Tight sections */
.section--tight  { padding: clamp(2.5rem,4vw,4rem) 0 !important; }
/* Gallery: tighter top */
.v9-gallery, section:has(.gallery-masonry), section:has(.home-gallery-grid) {
    padding-top: clamp(3rem,5vw,5rem) !important;
}
/* Stats band: minimal vertical padding */
.v10-stats-section, section:has(.stats-grid), .v9-stats-band {
    padding: clamp(2.5rem,4vw,4rem) 0 !important;
}
/* Availability banner: compact */
.availability-banner { padding: 1.75rem 0 !important; }

/* ─────────────────────────────────────────────────────────────
   AUDIT: Organic / soft shapes
   Rounded corners on images, buttons, cards
───────────────────────────────────────────────────────────── */
/* Images — soft 12px */
.gallery-item,
.home-gallery-item,
.v9-gal-item,
.about-snippet__image img,
.dining-split img,
.page-hero-bg img,
.v9-exp-card__img img {
    border-radius: 12px !important;
    overflow: hidden !important;
}

/* Cards — softer 20px */
.v8-room-card,
.amenity-card,
.v9-review-card,
.v9-exp-card,
.v9-trust-num-item { border-radius: 20px !important; }

/* Buttons — PILL shape (50px) for CTAs */
.btn--primary, .btn--xl, .header-book-btn, .wow-btn, .v8-btn--primary {
    border-radius: 50px !important;
    padding-left:  2rem !important;
    padding-right: 2rem !important;
}
/* Buttons — outline/secondary: softer */
.btn--secondary, .btn--ghost, .v8-btn--ghost { border-radius: 50px !important; }
/* Input fields: tighter 6px */
input, textarea, select, .newsletter-input { border-radius: 6px !important; }

/* ─────────────────────────────────────────────────────────────
   AUDIT: Wave divider between hero and content
───────────────────────────────────────────────────────────── */
/* Wave is injected after v8-hero__spacer via CSS */
.v8-hero__spacer::after {
    content:     '';
    display:     block;
    height:      60px;
    background:  url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 60' preserveAspectRatio='none'%3E%3Cpath d='M0,30 C360,60 720,0 1080,30 C1260,45 1380,20 1440,30 L1440,60 L0,60 Z' fill='%23ffffff'/%3E%3C/svg%3E") no-repeat bottom;
    background-size: 100% 100%;
    position:    relative;
    z-index:     11;
    margin-top:  -60px;
}

/* ─────────────────────────────────────────────────────────────
   AUDIT: Overlapping elements — review card overlaps stats
───────────────────────────────────────────────────────────── */
/* Awards badge overlaps hero — already in hero section */
/* Review section: first card has slight upward overlap into gallery */
.v9-reviews {
    padding-top: 6rem !important;
    margin-top:  -2.5rem !important; /* overlap with previous section */
    position:    relative !important;
    z-index:     5 !important;
}
/* About badge floats out of image box */
.about-snippet__badge {
    position:   absolute !important;
    bottom:     -1.5rem !important;
    left:       -1.5rem !important;
    z-index:    2 !important;
}

/* ─────────────────────────────────────────────────────────────
   AUDIT: Asymmetrical alignment — vertical section text accent
───────────────────────────────────────────────────────────── */
/* Add rotated vertical label to experiences section */
.v9-experiences .section-header,
.section--dark .section-header {
    position: relative !important;
}
.v9-experiences .section-header::before {
    content:     'EXPERIENCES';
    position:    absolute;
    left:        -3.5rem;
    top:         50%;
    transform:   translateY(-50%) rotate(-90deg);
    transform-origin: center;
    font-size:   0.55rem;
    font-weight: 800;
    letter-spacing: 0.3em;
    color:       rgba(201,168,76,0.25);
    text-transform: uppercase;
    white-space: nowrap;
    pointer-events: none;
}
@media (max-width: 1100px) {
    .v9-experiences .section-header::before { display: none; }
}

/* ─────────────────────────────────────────────────────────────
   AUDIT: Room card — price and button always bottom-aligned
   Uses CSS Grid subgrid / flex column for alignment
───────────────────────────────────────────────────────────── */
.v8-room-card__overlay {
    display:        flex !important;
    flex-direction: column !important;
}
.v8-room-card__footer {
    margin-top: auto !important; /* push to bottom of flex container */
}
.v8-room-card__desc {
    flex: 1 !important;
}

/* ─────────────────────────────────────────────────────────────
   AUDIT: Pricing display — name left, price right, bold large
───────────────────────────────────────────────────────────── */
.v8-price-amount {
    font-family: 'Cormorant Garant', serif !important;
    font-size:   1.5rem !important;
    font-weight: 700 !important;
    line-height: 1 !important;
}
.v8-price-night { font-size: 0.65rem !important; opacity: 0.7 !important; }

/* ─────────────────────────────────────────────────────────────
   AUDIT: Inset grid — one section not full-width
───────────────────────────────────────────────────────────── */
.section--inset { padding-left: clamp(1.5rem,5vw,4rem) !important; padding-right: clamp(1.5rem,5vw,4rem) !important; }
/* Gallery snippet: contained, not edge-to-edge */
.v9-gallery .v9-gallery-masonry,
.v9-gallery .home-gallery-grid {
    max-width: 1200px !important;
    margin-left:  auto !important;
    margin-right: auto !important;
}

/* ─────────────────────────────────────────────────────────────
   AUDIT: Decorative watermark / mandala texture in sections
───────────────────────────────────────────────────────────── */
.section--alt::before {
    content:         '';
    position:        absolute;
    top:             50%;
    right:           3%;
    transform:       translateY(-50%);
    width:           300px;
    height:          300px;
    pointer-events:  none;
    opacity:         0.04;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Ccircle cx='100' cy='100' r='90' stroke='%23c9a84c' stroke-width='1' fill='none'/%3E%3Ccircle cx='100' cy='100' r='70' stroke='%23c9a84c' stroke-width='0.5' fill='none'/%3E%3Ccircle cx='100' cy='100' r='50' stroke='%23c9a84c' stroke-width='0.5' fill='none'/%3E%3Cline x1='10' y1='100' x2='190' y2='100' stroke='%23c9a84c' stroke-width='0.3'/%3E%3Cline x1='100' y1='10' x2='100' y2='190' stroke='%23c9a84c' stroke-width='0.3'/%3E%3Cline x1='36' y1='36' x2='164' y2='164' stroke='%23c9a84c' stroke-width='0.3'/%3E%3Cline x1='164' y1='36' x2='36' y2='164' stroke='%23c9a84c' stroke-width='0.3'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size:   contain;
    z-index:           0;
}
.section--alt { position: relative; overflow: hidden; }
.section--alt > * { position: relative; z-index: 1; }

/* ─────────────────────────────────────────────────────────────
   AUDIT: Footer — deep earth tone (not generic black)
───────────────────────────────────────────────────────────── */
.site-footer {
    background: linear-gradient(160deg, #080f1c 0%, #0d1f35 40%, #061018 100%) !important;
    border-top:  2px solid rgba(201,168,76,0.35) !important;
    padding-bottom: 2rem !important;
}
.footer-copyright,
.footer-bottom { padding-bottom: 20px !important; }

/* ─────────────────────────────────────────────────────────────
   AUDIT: Footer 4-column grid on desktop
───────────────────────────────────────────────────────────── */
@media (min-width: 769px) {
    .footer-grid {
        display:               grid !important;
        grid-template-columns: 1.5fr 1fr 1fr 1.2fr !important;
        gap:                   3rem !important;
    }
}

/* ─────────────────────────────────────────────────────────────
   AUDIT: Social media icons 24×24px minimum with padding
───────────────────────────────────────────────────────────── */
.footer-social a {
    display:         inline-flex !important;
    align-items:     center !important;
    justify-content: center !important;
    width:           40px !important;
    height:          40px !important;
    border-radius:   50% !important;
    background:      rgba(255,255,255,0.07) !important;
    border:          1px solid rgba(255,255,255,0.12) !important;
    transition:      all 0.3s ease !important;
}
.footer-social a svg { width: 18px !important; height: 18px !important; }
.footer-social a:hover { background: rgba(201,168,76,0.2) !important; border-color: #c9a84c !important; color: #e0c97a !important; }

/* ─────────────────────────────────────────────────────────────
   AUDIT: Google Maps section above footer
───────────────────────────────────────────────────────────── */
.v13-map-section {
    background:   #0d1f10;
    border-top:   1px solid rgba(201,168,76,0.1);
    overflow:     hidden;
}
.v13-map-header {
    padding:      1.5rem 0;
    background:   rgba(0,0,0,0.3);
}
.v13-map-embed { line-height: 0; }
.v13-map-embed iframe { display: block; width: 100%; height: 360px; border: none; }

/* ─────────────────────────────────────────────────────────────
   AUDIT: H2 / H3 visual hierarchy (H2 much larger than H3)
───────────────────────────────────────────────────────────── */
h2, .section-title {
    font-size:   clamp(2.2rem, 4.5vw, 3.5rem) !important;
    font-weight: 500 !important;
    line-height: 1.1 !important;
}
h3, .v9-exp-title, .v8-room-card__title, .amenity-name, .v10-pillar-title {
    font-size:   clamp(1.1rem, 2vw, 1.35rem) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
}

/* ─────────────────────────────────────────────────────────────
   AUDIT: Image fade-in placeholder (prevents layout shift)
───────────────────────────────────────────────────────────── */
@keyframes v13ImgFadeIn { from { opacity: 0; } to { opacity: 1; } }
img { animation: v13ImgFadeIn 0.4s ease forwards; }
img[src=""] { opacity: 0; animation: none; }

/* ─────────────────────────────────────────────────────────────
   AUDIT: Text on images — always has readable background
───────────────────────────────────────────────────────────── */
.v8-room-card__overlay {
    background: linear-gradient(to top,
        rgba(5,12,26,0.96) 0%,
        rgba(5,12,26,0.72) 55%,
        transparent 100%) !important;
}
.page-hero-content {
    text-shadow: 0 2px 20px rgba(0,0,0,0.5) !important;
}
/* All hero text */
.v8-hero__title, .v8-hero__subtitle, .v8-hero__eyebrow {
    text-shadow: 0 2px 30px rgba(0,0,0,0.45) !important;
}

/* ─────────────────────────────────────────────────────────────
   AUDIT: Tablet layout — 2-col feature lists (not single col)
───────────────────────────────────────────────────────────── */
@media (min-width: 641px) and (max-width: 1024px) {
    .amenities-grid { grid-template-columns: repeat(3,1fr) !important; }
    .v9-reviews-grid { grid-template-columns: repeat(2,1fr) !important; }
    .grid-3 { grid-template-columns: repeat(2,1fr) !important; }
    .v91-rooms-grid { grid-template-columns: repeat(2,1fr) !important; }
    .v9-exp-grid { grid-template-columns: repeat(2,1fr) !important; }
}

/* ─────────────────────────────────────────────────────────────
   AUDIT: Horizontal overflow fix
───────────────────────────────────────────────────────────── */
html, body { overflow-x: hidden !important; max-width: 100vw !important; }
img, video, iframe { max-width: 100% !important; }
.container { padding-left: clamp(1rem,4vw,2.5rem) !important; padding-right: clamp(1rem,4vw,2.5rem) !important; }

/* ─────────────────────────────────────────────────────────────
   AUDIT: Mobile — all grids 1col, larger buttons, sticky bar
───────────────────────────────────────────────────────────── */
@media (max-width: 768px) {
    .section { padding: 3.5rem 0 !important; }
    .grid-2, .grid-3, .grid-4 { grid-template-columns: 1fr !important; gap: 1.25rem !important; }
    .amenities-grid { grid-template-columns: repeat(2,1fr) !important; gap: 0.875rem !important; }
    .stats-grid, .v10-stats-grid { grid-template-columns: repeat(2,1fr) !important; }
    .about-snippet, .dining-split { grid-template-columns: 1fr !important; gap: 2.5rem !important; }
    [style*="grid-template-columns:2fr 1fr"],[style*="grid-template-columns:1fr 2fr"],
    [style*="grid-template-columns:1fr 1fr"] { grid-template-columns: 1fr !important; gap: 1.5rem !important; }

    .v8-hero__content { padding: calc(80px + 2rem) 1.25rem 8rem !important; text-align: center !important; }
    .v8-hero__ctas { flex-direction: column !important; align-items: center !important; }
    .v8-btn { width: 100% !important; max-width: 300px !important; justify-content: center !important; }
    .v8-hero__trust { display: none !important; }
    .v8-hero__title { font-size: clamp(2rem,9vw,3.2rem) !important; }

    .v91-rooms-grid,[class*="rooms-grid"] { grid-template-columns: 1fr !important; gap: 1.25rem !important; }
    .v9-reviews-grid { grid-template-columns: 1fr !important; }
    .v9-exp-grid { grid-template-columns: 1fr !important; }
    .v9-trust-numbers { flex-wrap: wrap !important; }
    .v9-trust-num-item { flex: 1 0 50% !important; }
    .v9-rating-badge { flex-direction: column !important; text-align: center !important; }
    .v9-rating-platforms { justify-content: center !important; }

    .gallery-masonry { columns: 2 !important; column-gap: 0.625rem !important; }
    .gallery-item { break-inside: avoid !important; margin-bottom: 0.625rem !important; }
    .home-gallery-grid { grid-template-columns: repeat(2,1fr) !important; grid-template-rows: auto !important; gap: 0.625rem !important; }
    .home-gallery-item--tall { grid-row: span 1 !important; }

    .btn--lg, .btn--xl { width: 100% !important; max-width: 340px !important; justify-content: center !important; padding: 1rem 1.75rem !important; }
    .btn--primary, .btn--xl, .wow-btn { font-size: 0.82rem !important; }

    .footer-grid { grid-template-columns: 1fr !important; gap: 2rem !important; }
    .footer-bottom { flex-direction: column !important; text-align: center !important; padding-bottom: 20px !important; }
    .newsletter-inner { flex-direction: column !important; gap: 2rem !important; }
    .newsletter-form  { flex-direction: column !important; width: 100% !important; }
    .newsletter-input { width: 100% !important; }
    .wow-section__content { padding: 3rem 1.5rem !important; }
    .wow-title { font-size: clamp(1.8rem,8vw,3rem) !important; }
    [style*="position:sticky"] { position: static !important; }
    iframe[src*="google.com/maps"], .v13-map-embed iframe { height: 240px !important; }
    .page-hero { min-height: 300px !important; }

    /* Disable parallax on mobile */
    * { background-attachment: scroll !important; }
    .v13-header-gradient { background: linear-gradient(180deg, rgba(5,12,26,0.85) 0%, transparent 100%) !important; }
}

@media (max-width: 480px) {
    .container { padding: 0 1rem !important; }
    .amenity-card { padding: 1.25rem 0.875rem !important; }
    .amenity-icon { font-size: 1.75rem !important; }
    .v8-hero__title { font-size: clamp(1.8rem,9vw,2.8rem) !important; }
}

/* Safe area */
@supports (padding: env(safe-area-inset-bottom)) {
    .mobile-book-bar { padding-bottom: calc(0.75rem + env(safe-area-inset-bottom)) !important; }
    @media (max-width: 768px) { body { padding-bottom: calc(64px + env(safe-area-inset-bottom)); } }
}

/* Accessibility */
:focus-visible { outline: 2px solid #c9a84c !important; outline-offset: 3px !important; border-radius: 4px !important; }

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { animation-duration: 0.01ms !important; transition-duration: 0.1ms !important; }
    [data-reveal] { opacity: 1 !important; transform: none !important; }
    .v13-preloader { display: none !important; }
}

/* ── design-v16.css (21,434b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v16
   Fixes: customizer, rooms responsive, fonts, mobile menu, animations
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   FIX 6: PREMIUM FONTS — Cormorant Garant everywhere on headings
   Force Cormorant Garant as the primary serif for all titles
───────────────────────────────────────────────────────────── */
:root {
    --font-heading-v16: 'Cormorant Garant', 'Cormorant', 'Playfair Display', Georgia, serif;
    --font-body-v16:    'DM Sans', 'Inter', system-ui, sans-serif;
    --letter-tight:     -0.02em;
    --letter-wide:      0.18em;
}

/* All heading elements get Cormorant Garant */
h1, h2, h3, h4, h5, h6,
.section-title, .page-hero-title, .wow-title,
.v8-hero__title, .v8-room-card__title,
.footer-col-title, .amenity-name,
.testimonial-name, .review-name,
.stat-number span, .about-snippet__content h2,
.timeline-title {
    font-family: var(--font-heading-v16) !important;
    letter-spacing: var(--letter-tight) !important;
}

/* Section titles: more editorial sizing */
.section-title, h2 {
    font-size:   clamp(2rem, 4vw, 3.25rem) !important;
    font-weight: 500 !important;
    line-height: 1.12 !important;
}
h3, .v8-room-card__title, .amenity-name, .timeline-title {
    font-size:   clamp(1.1rem, 2.2vw, 1.4rem) !important;
    font-weight: 600 !important;
}

/* Body text: DM Sans for clean readability */
body, p, li, input, textarea, select, button, a,
.section-subtitle, .amenity-desc, .review-text {
    font-family: var(--font-body-v16) !important;
}

/* Section labels: ultra tight tracking */
.section-label {
    font-family:    var(--font-body-v16) !important;
    font-size:      0.62rem !important;
    font-weight:    700 !important;
    letter-spacing: 0.24em !important;
    text-transform: uppercase !important;
}

/* Eyebrow text on hero */
.v8-hero__eyebrow span {
    font-family:    var(--font-body-v16) !important;
    letter-spacing: 0.2em !important;
    font-weight:    600 !important;
}

/* Stat numbers: large editorial numerals */
.stat-number span, .v8-trust-val {
    font-family: var(--font-heading-v16) !important;
    font-weight: 600 !important;
    font-size:   clamp(2.5rem, 5vw, 4rem) !important;
}

/* Gold dividers: shimmer */
.gold-divider {
    background: linear-gradient(90deg,
        transparent 0%, #a07828 20%, #e0c97a 50%, #c9a84c 80%, transparent 100%
    ) !important;
    height: 1.5px !important;
    border: none !important;
}

/* ─────────────────────────────────────────────────────────────
   FIX 4: ROOMS PAGE — Responsive 2-column grid, NO overflow
───────────────────────────────────────────────────────────── */
/* Override v91 3-column with proper responsive 2-col */
.v91-rooms-grid {
    display:               grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap:                   2rem !important;
    max-width:             100% !important;
    overflow:              hidden !important;
}
@media (max-width: 900px) {
    .v91-rooms-grid { grid-template-columns: 1fr !important; }
}
@media (min-width: 1300px) {
    .v91-rooms-grid { grid-template-columns: repeat(3, 1fr) !important; }
}

/* NEW v16 rooms grid */
.v16-rooms-grid {
    display:               grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap:                   2.5rem !important;
    width:                 100% !important;
    max-width:             100% !important;
    overflow:              hidden !important;
    box-sizing:            border-box !important;
}
@media (max-width: 960px) {
    .v16-rooms-grid { grid-template-columns: 1fr !important; }
}

.v16-room-card {
    background:    #fff;
    border-radius: 20px;
    overflow:      hidden;
    box-shadow:    0 8px 40px rgba(13,33,55,0.1);
    display:       flex;
    flex-direction:column;
    transition:    transform 0.5s cubic-bezier(0.34,1.56,0.64,1),
                   box-shadow 0.4s ease;
    max-width:     100%;
}
.v16-room-card:hover {
    transform:  translateY(-12px) scale(1.01);
    box-shadow: 0 28px 70px rgba(13,33,55,0.18);
}

.v16-room-img {
    position:    relative;
    overflow:    hidden;
    height:      280px;
    flex-shrink: 0;
}
.v16-room-img img {
    width:      100%;
    height:     100%;
    object-fit: cover;
    display:    block;
    transition: transform 0.7s cubic-bezier(0.25,0.46,0.45,0.94);
}
.v16-room-card:hover .v16-room-img img { transform: scale(1.08); }
.v16-room-img-overlay {
    position:   absolute;
    inset:      0;
    background: linear-gradient(to top, rgba(8,15,28,0.5) 0%, transparent 55%);
}
.v16-room-cat {
    position:      absolute;
    top:           1rem; left: 1rem;
    background:    rgba(8,15,28,0.75);
    backdrop-filter: blur(8px);
    border:        1px solid rgba(255,255,255,0.2);
    color:         rgba(255,255,255,0.9);
    font-size:     0.6rem;
    font-weight:   700;
    letter-spacing:0.14em;
    text-transform:uppercase;
    padding:       0.3rem 0.75rem;
    border-radius: 999px;
    font-family:   var(--font-body-v16);
}
.v16-room-badge {
    position:      absolute;
    top:           1rem; right: 1rem;
    background:    linear-gradient(130deg, #e0c97a, #c9a84c);
    color:         #0d2137;
    font-size:     0.6rem;
    font-weight:   800;
    letter-spacing:0.1em;
    text-transform:uppercase;
    padding:       0.3rem 0.75rem;
    border-radius: 999px;
    font-family:   var(--font-body-v16);
}
.v16-room-qty {
    position:      absolute;
    bottom:        1rem; left: 1rem;
    background:    rgba(201,168,76,0.15);
    border:        1px solid rgba(201,168,76,0.4);
    color:         #e0c97a;
    font-size:     0.62rem;
    font-weight:   600;
    padding:       0.25rem 0.65rem;
    border-radius: 999px;
    backdrop-filter: blur(6px);
    font-family:   var(--font-body-v16);
}
.v16-room-content {
    padding: 2rem;
    display: flex;
    flex-direction: column;
    gap: 0.875rem;
    flex: 1;
}
.v16-room-title {
    font-family: var(--font-heading-v16) !important;
    font-size:   1.5rem !important;
    font-weight: 600 !important;
    color:       #0d2137;
    margin:      0;
    line-height: 1.2;
}
.v16-room-specs {
    display:  flex;
    flex-wrap:wrap;
    gap:      0.4rem;
}
.v16-room-specs span {
    font-size:     0.7rem;
    color:         #555;
    background:    #faf7f0;
    border:        1px solid rgba(13,33,55,0.08);
    padding:       0.2rem 0.65rem;
    border-radius: 999px;
    white-space:   nowrap;
    font-family:   var(--font-body-v16);
}
.v16-room-desc {
    font-size:   0.875rem;
    color:       #6b6b6b;
    line-height: 1.82;
    margin:      0;
}
.v16-room-amen {
    list-style:   none;
    padding:      0;
    margin:       0;
    display:      grid;
    grid-template-columns: 1fr 1fr;
    gap:          0.3rem;
}
.v16-room-amen li {
    display:     flex;
    align-items: center;
    gap:         0.4rem;
    font-size:   0.76rem;
    color:       #555;
    font-family: var(--font-body-v16);
}
.v16-room-amen li span { color: #c9a84c; flex-shrink: 0; font-size: 0.7rem; }
.v16-room-footer {
    display:         flex;
    align-items:     center;
    justify-content: space-between;
    margin-top:      auto;
    padding-top:     1.25rem;
    border-top:      1px solid #f0ede4;
    flex-wrap:       wrap;
    gap:             0.75rem;
}
.v16-room-price { display:flex; align-items:baseline; gap:0.25rem; }
.v16-price-from { font-size:0.65rem; color:#aaa; font-family:var(--font-body-v16); }
.v16-price-val  { font-family:var(--font-heading-v16) !important; font-size:1.6rem !important; font-weight:700 !important; color:#0d2137; line-height:1; }
.v16-price-per  { font-size:0.65rem; color:#aaa; font-family:var(--font-body-v16); }
.v16-vat-note   { font-size:0.68rem; color:#bbb; margin:0; font-family:var(--font-body-v16); }

/* ─────────────────────────────────────────────────────────────
   FIX 3: INNER PAGE HERO — update image via customizer
   The page-hero-bg img needs object-fit and transition
───────────────────────────────────────────────────────────── */
.page-hero { position: relative; overflow: hidden; }
.page-hero-bg img {
    width:      100% !important;
    height:     100% !important;
    object-fit: cover !important;
    position:   absolute !important;
    inset:      0 !important;
    transition: src 0.01s; /* JS handles swap */
}

/* ─────────────────────────────────────────────────────────────
   FIX 7: MOBILE DROPDOWN TEXT — guaranteed white
───────────────────────────────────────────────────────────── */
/* These rules fire even before JS loads, ensuring text is never invisible */
@media (max-width: 768px) {
    .main-nav.is-open .sub-menu .menu-item a,
    .main-nav.is-open .sub-menu a,
    #main-navigation .sub-menu a {
        color: #ffffff !important;
        opacity: 1 !important;
        visibility: visible !important;
    }
    #main-navigation .nav-menu > .menu-item > a {
        color: #ffffff !important;
    }
}

/* ─────────────────────────────────────────────────────────────
   PREMIUM 3D ANIMATIONS & ULTRA MODERN EFFECTS
   Layout unchanged — only visual enhancements added
───────────────────────────────────────────────────────────── */

/* Scroll-triggered reveal: 3D lift */
[data-reveal] {
    opacity:   0;
    transform: translateY(40px) rotateX(4deg);
    transition:
        opacity   0.75s cubic-bezier(0.16,1,0.3,1),
        transform 0.75s cubic-bezier(0.16,1,0.3,1);
    transform-origin: top center;
    will-change: transform, opacity;
}
[data-reveal].revealed {
    opacity:   1 !important;
    transform: none !important;
}
[data-reveal="fade-right"]  { transform: translateX(-50px); }
[data-reveal="fade-right"].revealed { transform: none; }
[data-reveal="fade-left"]   { transform: translateX(50px); }
[data-reveal="fade-left"].revealed  { transform: none; }
[data-reveal="scale-in"]    { transform: scale(0.88); }
[data-reveal="scale-in"].revealed   { transform: none; }

/* Stagger delays */
[data-delay="100"] { transition-delay: 0.1s !important; }
[data-delay="150"] { transition-delay: 0.15s !important; }
[data-delay="200"] { transition-delay: 0.2s !important; }
[data-delay="250"] { transition-delay: 0.25s !important; }
[data-delay="300"] { transition-delay: 0.3s !important; }
[data-delay="350"] { transition-delay: 0.35s !important; }
[data-delay="400"] { transition-delay: 0.4s !important; }

/* Room card 3D hover — subtle perspective depth */
.v8-room-card {
    transition: transform 0.5s cubic-bezier(0.34,1.56,0.64,1), box-shadow 0.4s ease !important;
    transform-style: preserve-3d !important;
}
.v8-room-card:hover {
    transform:  translateY(-14px) scale(1.015) !important;
    box-shadow: 0 32px 80px rgba(13,33,55,0.2) !important;
}

/* Amenity cards 3D hover */
.amenity-card {
    transition: transform 0.45s cubic-bezier(0.34,1.56,0.64,1), box-shadow 0.35s ease !important;
    position: relative !important;
    overflow: hidden !important;
}
.amenity-card::before {
    content:    '';
    position:   absolute;
    inset:      0;
    background: linear-gradient(135deg, rgba(201,168,76,0.08), transparent);
    opacity:    0;
    transition: opacity 0.35s ease;
}
.amenity-card:hover {
    transform:  translateY(-12px) !important;
    box-shadow: 0 24px 60px rgba(13,33,55,0.14) !important;
}
.amenity-card:hover::before { opacity: 1 !important; }
.amenity-card:hover::after {
    content:  '';
    position: absolute;
    bottom:   0; left: 0; right: 0;
    height:   3px;
    background: linear-gradient(90deg, #c9a84c, #e0c97a);
    border-radius: 0 0 var(--radius-lg) var(--radius-lg);
}

/* Experience cards — cinematic zoom */
.v9-exp-card img {
    transition: transform 0.8s cubic-bezier(0.25,0.46,0.45,0.94) !important;
}
.v9-exp-card:hover img { transform: scale(1.09) !important; }
.v9-exp-card {
    transition: transform 0.5s cubic-bezier(0.34,1.56,0.64,1) !important;
}
.v9-exp-card:hover { transform: scale(1.025) !important; }

/* Gallery items */
.home-gallery-item img,
.gallery-item img {
    transition: transform 0.6s cubic-bezier(0.25,0.46,0.45,0.94) !important;
}
.home-gallery-item:hover img,
.gallery-item:hover img { transform: scale(1.06) !important; }

/* Hero slides — Ken Burns stays (already in hero JS) */

/* Stats counter — glow pulse */
@keyframes v16StatGlow {
    0%,100% { text-shadow: none; }
    50%      { text-shadow: 0 0 30px rgba(201,168,76,0.4); }
}
.stat-number span { animation: v16StatGlow 3.5s ease-in-out infinite; }

/* Section dividers — animated gold shimmer */
@keyframes v16GoldShimmer {
    0%   { background-position: 200% center; }
    100% { background-position: -200% center; }
}
.gold-divider {
    background-size:     300% auto !important;
    animation:           v16GoldShimmer 4s linear infinite !important;
    border-radius:       2px !important;
}

/* Awards bar ticker — smooth */
.awards-track { animation-timing-function: linear !important; }

/* Hero CTAs — gold glow pulse */
@keyframes v16CTAPulse {
    0%,100% { box-shadow: 0 6px 24px rgba(201,168,76,0.3); }
    50%      { box-shadow: 0 6px 40px rgba(201,168,76,0.6), 0 0 60px rgba(201,168,76,0.15); }
}
.v8-btn--primary, .wow-btn {
    animation: v16CTAPulse 2.5s ease-in-out infinite !important;
}
.v8-btn--primary:hover, .wow-btn:hover {
    animation: none !important;
    transform: translateY(-4px) !important;
    box-shadow: 0 12px 40px rgba(201,168,76,0.5) !important;
}

/* WOW section title — letter reveal */
.wow-title {
    background:          linear-gradient(135deg, #fff 0%, rgba(255,255,255,0.75) 50%, #e0c97a 100%);
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip:     text !important;
}

/* Review cards — 3D lift */
.review-card {
    transition: transform 0.45s cubic-bezier(0.34,1.56,0.64,1), box-shadow 0.35s !important;
}
.review-card:hover {
    transform:  translateY(-10px) !important;
    box-shadow: 0 24px 60px rgba(13,33,55,0.12) !important;
}

/* Floating buttons — 3D hover */
.v8-float-book, .whatsapp-float-btn {
    transition: transform 0.35s cubic-bezier(0.34,1.56,0.64,1), box-shadow 0.3s !important;
}
.v8-float-book:hover     { transform: translateY(-6px) scale(1.05) !important; }
.whatsapp-float-btn:hover{ transform: translateY(-6px) scale(1.05) !important; }

/* Header book button */
.header-book-btn {
    transition: all 0.35s cubic-bezier(0.34,1.56,0.64,1) !important;
}
.header-book-btn:hover {
    transform:  translateY(-2px) scale(1.04) !important;
    box-shadow: 0 8px 24px rgba(201,168,76,0.4) !important;
}

/* Page hero — parallax hint */
.page-hero-title {
    animation: v16HeroTitle 1s cubic-bezier(0.16,1,0.3,1) 0.2s both;
}
@keyframes v16HeroTitle {
    from { opacity:0; transform:translateY(30px); }
    to   { opacity:1; transform:translateY(0); }
}
.page-hero-subtitle {
    animation: v16HeroTitle 1s cubic-bezier(0.16,1,0.3,1) 0.4s both;
}
.section-label {
    animation: v16HeroTitle 0.8s cubic-bezier(0.16,1,0.3,1) 0.1s both;
}

/* Testimonial dots — animated */
.testimonial-dot.active {
    transform: scale(1.4) !important;
    transition: transform 0.3s ease !important;
}

/* About snippet badge — float animation */
@keyframes v16BadgeFloat {
    0%,100% { transform: translateY(0); }
    50%      { transform: translateY(-6px); }
}
.about-snippet__badge {
    animation: v16BadgeFloat 3.5s ease-in-out infinite !important;
}

/* Section entrance — stagger grid children */
.amenities-grid .amenity-card:nth-child(1) { transition-delay: 0.0s !important; }
.amenities-grid .amenity-card:nth-child(2) { transition-delay: 0.07s !important; }
.amenities-grid .amenity-card:nth-child(3) { transition-delay: 0.14s !important; }
.amenities-grid .amenity-card:nth-child(4) { transition-delay: 0.21s !important; }
.amenities-grid .amenity-card:nth-child(5) { transition-delay: 0.28s !important; }
.amenities-grid .amenity-card:nth-child(6) { transition-delay: 0.35s !important; }
.amenities-grid .amenity-card:nth-child(7) { transition-delay: 0.42s !important; }
.amenities-grid .amenity-card:nth-child(8) { transition-delay: 0.49s !important; }
.amenities-grid .amenity-card:nth-child(9) { transition-delay: 0.56s !important; }
.amenities-grid .amenity-card:nth-child(n+10) { transition-delay: 0.6s !important; }

/* ─────────────────────────────────────────────────────────────
   RESPONSIVE FIXES
───────────────────────────────────────────────────────────── */
html, body { overflow-x: hidden !important; }

@media (max-width: 768px) {
    .v16-room-card { border-radius: 16px !important; }
    .v16-room-img  { height: 220px !important; }
    .v16-room-content { padding: 1.5rem !important; }
    .v16-room-amen { grid-template-columns: 1fr !important; }
    .v16-room-footer { flex-direction: column !important; align-items: flex-start !important; }
    /* prevent sticky sidebar overflow on mobile */
    [style*="position:sticky"] { position: static !important; }
    /* rooms page sidebar stack */
    section .container > div[style*="grid-template-columns:1.5fr 1fr"] {
        grid-template-columns: 1fr !important;
        gap: 2rem !important;
    }
    /* contact grid */
    section .container > div[style*="grid-template-columns:1fr 1.5fr"] {
        grid-template-columns: 1fr !important;
        gap: 2rem !important;
    }
    /* events grid */
    section .container > div[style*="grid-template-columns:1fr 1fr"] {
        grid-template-columns: 1fr !important;
        gap: 1.5rem !important;
    }
    /* Dining split */
    .dining-split { grid-template-columns: 1fr !important; gap: 2.5rem !important; }
    /* About snippet */
    .about-snippet { grid-template-columns: 1fr !important; gap: 2.5rem !important; }
    /* Reduced motion: no 3D */
    [data-reveal] { transform: translateY(20px) !important; }
}

/* ─────────────────────────────────────────────────────────────
   SCROLLBAR — custom branded
───────────────────────────────────────────────────────────── */
::-webkit-scrollbar       { width: 5px; height: 5px; }
::-webkit-scrollbar-track { background: #080f1c; }
::-webkit-scrollbar-thumb { background: linear-gradient(180deg,#a07828,#c9a84c); border-radius: 3px; }
* { scrollbar-width: thin; scrollbar-color: #c9a84c #080f1c; }

/* ─────────────────────────────────────────────────────────────
   ACCESSIBILITY
───────────────────────────────────────────────────────────── */
:focus-visible {
    outline:        2px solid #c9a84c !important;
    outline-offset: 3px !important;
    border-radius:  4px !important;
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration:   0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration:  0.1ms !important;
    }
    [data-reveal] { opacity: 1 !important; transform: none !important; }
}

/* Safe area padding for mobile */
@supports (padding: env(safe-area-inset-bottom)) {
    .mobile-book-bar {
        padding-bottom: calc(0.75rem + env(safe-area-inset-bottom)) !important;
    }
}

/* ── design-v17.css (22,719b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v17
   • Inner page hero: cinematic parallax/Ken-Burns video-like effect
   • About section: 3D depth effect, floating badge modernized
   • Experience cards: improved attractive 4-col layout
   • Mobile nav: nuclear CSS guarantee
   • Customizer: CSS vars always applied
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   FIX 8: MOBILE NAVIGATION — Absolute nuclear guarantee
   These rules are loaded LAST (design-v17 is final CSS)
   so they override EVERYTHING
───────────────────────────────────────────────────────────── */

/* Desktop: always show nav */
@media (min-width: 769px) {
    #main-navigation,
    .main-nav {
        display:        flex !important;
        position:       static !important;
        background:     transparent !important;
        opacity:        1 !important;
        visibility:     visible !important;
        pointer-events: auto !important;
        transform:      none !important;
        height:         auto !important;
        width:          auto !important;
    }
}

/* Mobile hamburger: must be visible and tappable */
@media (max-width: 768px) {
    .mobile-menu-toggle {
        display:    flex !important;
        visibility: visible !important;
        opacity:    1 !important;
        pointer-events: auto !important;
        min-width:  48px !important;
        min-height: 48px !important;
        width:      48px !important;
        height:     48px !important;
        cursor:     pointer !important;
        z-index:    1001 !important;
        position:   relative !important;
    }
    .mobile-menu-toggle span {
        background: #ffffff !important;
        display:    block !important;
        visibility: visible !important;
        opacity:    1 !important;
    }
    /* When menu is closed, nav is hidden */
    #main-navigation:not(.is-open) {
        display:        none !important;
        opacity:        0 !important;
        pointer-events: none !important;
        visibility:     hidden !important;
    }
    /* When menu is open (class added by JS), show it */
    #main-navigation.is-open {
        display:        flex !important;
        position:       fixed !important;
        inset:          0 !important;
        width:          100vw !important;
        height:         100vh !important;
        background:     rgba(8,15,28,0.98) !important;
        z-index:        9999999 !important;
        flex-direction: column !important;
        align-items:    center !important;
        justify-content:center !important;
        overflow-y:     auto !important;
        padding:        5rem 2rem 3rem !important;
        opacity:        1 !important;
        visibility:     visible !important;
        pointer-events: auto !important;
    }
    /* Menu items */
    #main-navigation.is-open .nav-menu { display:flex !important; flex-direction:column !important; width:100% !important; max-width:320px !important; list-style:none !important; padding:0 !important; margin:0 !important; }
    #main-navigation.is-open .nav-menu .menu-item { display:block !important; border-bottom:1px solid rgba(255,255,255,0.08) !important; }
    #main-navigation.is-open .nav-menu > .menu-item > a,
    #main-navigation.is-open .nav-menu .menu-item a {
        display:         flex !important;
        align-items:     center !important;
        justify-content: space-between !important;
        width:           100% !important;
        padding:         0.9rem 0 !important;
        color:           #ffffff !important;
        font-size:       0.95rem !important;
        font-weight:     600 !important;
        letter-spacing:  0.06em !important;
        text-transform:  uppercase !important;
        text-decoration: none !important;
        background:      transparent !important;
        opacity:         1 !important;
        visibility:      visible !important;
        cursor:          pointer !important;
    }
    /* Sub-menus */
    #main-navigation.is-open .sub-menu { display:block !important; max-height:0; overflow:hidden; background:rgba(255,255,255,0.04) !important; transition:max-height .3s ease; padding:0 !important; margin:0 !important; list-style:none !important; }
    #main-navigation.is-open .menu-item-has-children.sub-open > .sub-menu { max-height:400px !important; padding:0.4rem 0 !important; }
    #main-navigation.is-open .sub-menu li a,
    #main-navigation.is-open .sub-menu a {
        color:       #ffffff !important;
        display:     block !important;
        padding:     0.6rem 1rem !important;
        font-size:   0.85rem !important;
        font-weight: 500 !important;
        opacity:     1 !important;
        visibility:  visible !important;
    }
    #main-navigation.is-open .sub-menu li a:hover { color: #e0c97a !important; }
}

/* ─────────────────────────────────────────────────────────────
   FIX 2: INNER PAGE HERO — Cinematic parallax / Ken Burns
   Makes the hero image move like a slow video pan
───────────────────────────────────────────────────────────── */
.page-hero {
    position:   relative !important;
    overflow:   hidden !important;
    min-height: 420px;
}
.page-hero-bg {
    position:   absolute !important;
    inset:      -10% -5% !important; /* Oversized to allow pan */
    z-index:    0 !important;
}
.page-hero-bg img {
    width:        100% !important;
    height:       100% !important;
    object-fit:   cover !important;
    object-position: center center !important;
    display:      block !important;
    animation:    v17HeroPan 18s ease-in-out infinite alternate !important;
    will-change:  transform !important;
    transform:    scale(1.12) !important;
}
@keyframes v17HeroPan {
    0%   { transform: scale(1.12) translate(0%,    0%);    }
    25%  { transform: scale(1.15) translate(-1.5%, -1%);   }
    50%  { transform: scale(1.12) translate(-0.5%, 0.5%);  }
    75%  { transform: scale(1.14) translate(1%,    -0.5%); }
    100% { transform: scale(1.12) translate(0.5%,  1%);    }
}
.page-hero-content {
    position:  relative !important;
    z-index:   2 !important;
}
/* Ensure overlay covers hero */
.page-hero > div[style*="background:linear-gradient"],
.page-hero > div[style*="background: linear-gradient"] {
    position: absolute !important;
    inset:    0 !important;
    z-index:  1 !important;
}

/* ─────────────────────────────────────────────────────────────
   FIX 5: ABOUT SECTION — 3D depth + modern Est. badge
───────────────────────────────────────────────────────────── */
.about-snippet__image {
    position:      relative !important;
    perspective:   1000px !important;
}
.about-snippet__image img {
    transition:    transform 0.8s cubic-bezier(0.25,0.46,0.45,0.94), box-shadow 0.6s ease !important;
    transform:     perspective(1000px) rotateY(-3deg) rotateX(1deg) !important;
    will-change:   transform !important;
    box-shadow:    -8px 16px 48px rgba(13,33,55,0.22), 8px 4px 24px rgba(13,33,55,0.1) !important;
}
.about-snippet:hover .about-snippet__image img {
    transform:  perspective(1000px) rotateY(0deg) rotateX(0deg) !important;
    box-shadow: 0 24px 64px rgba(13,33,55,0.2) !important;
}

/* Modern Est. badge with glassmorphism */
.about-snippet__badge,
div.about-snippet__badge {
    position:        absolute !important;
    bottom:          -1.5rem !important;
    left:            -1.5rem !important;
    background:      linear-gradient(135deg, #c9a84c, #e0c97a, #a07828) !important;
    color:           #0d2137 !important;
    padding:         1.25rem 1.75rem !important;
    border-radius:   16px !important;
    box-shadow:      0 16px 48px rgba(201,168,76,0.4), 0 4px 16px rgba(0,0,0,0.2) !important;
    font-family:     'Cormorant Garant', serif !important;
    text-align:      center !important;
    z-index:         3 !important;
    border:          2px solid rgba(255,255,255,0.3) !important;
    backdrop-filter: blur(4px) !important;
    animation:       v17BadgeFloat 4s ease-in-out infinite !important;
    min-width:       100px !important;
}
@keyframes v17BadgeFloat {
    0%,100% { transform: translateY(0) rotate(-1deg); }
    50%      { transform: translateY(-8px) rotate(0deg); }
}
.about-badge-year { display:block !important; font-size:0.7rem !important; font-weight:800 !important; letter-spacing:0.2em !important; text-transform:uppercase !important; margin-bottom:0.2rem !important; opacity:0.8 !important; }
.about-badge-num  { display:block !important; font-size:2.5rem !important; font-weight:700 !important; line-height:1 !important; }

/* ─────────────────────────────────────────────────────────────
   FIX 4: EXPERIENCE SECTION — Improved attractive layout
   Keep 4 columns (optimal for desktop), add carousel on mobile
───────────────────────────────────────────────────────────── */

/* Experience grid — 4 columns on desktop, carousel-like scroll on mobile */
.experience-card,
.tilt-card {
    position:   relative !important;
    overflow:   hidden !important;
    border-radius: 20px !important;
    min-height: 440px !important;
    cursor:     pointer !important;
    transition: transform 0.5s cubic-bezier(0.34,1.56,0.64,1), box-shadow 0.4s ease !important;
    display:    flex !important;
    flex-direction: column !important;
    justify-content: flex-end !important;
}
.experience-card:hover,
.tilt-card:hover {
    transform:  translateY(-12px) scale(1.02) !important;
    box-shadow: 0 32px 72px rgba(8,15,28,0.35) !important;
}

/* Image fills entire card */
.experience-card__image {
    position: absolute !important;
    inset:    0 !important;
    z-index:  0 !important;
}
.experience-card__image img {
    width:      100% !important;
    height:     100% !important;
    object-fit: cover !important;
    transition: transform 0.8s cubic-bezier(0.25,0.46,0.45,0.94) !important;
}
.experience-card:hover .experience-card__image img,
.tilt-card:hover .experience-card__image img {
    transform: scale(1.1) !important;
}

/* Gradient overlay — bottom up */
.experience-card__overlay {
    position:   absolute !important;
    inset:      0 !important;
    background: linear-gradient(to top, rgba(8,15,28,0.95) 0%, rgba(8,15,28,0.55) 45%, transparent 100%) !important;
    z-index:    1 !important;
    transition: background 0.4s ease !important;
}
.experience-card:hover .experience-card__overlay {
    background: linear-gradient(to top, rgba(8,15,28,0.98) 0%, rgba(8,15,28,0.65) 50%, rgba(8,15,28,0.1) 100%) !important;
}

/* Content */
.experience-card__content,
.tilt-card-content {
    position:   relative !important;
    z-index:    2 !important;
    padding:    2rem 1.75rem !important;
    transform:  translateY(0) !important;
    transition: transform 0.4s ease !important;
}
.experience-card__category {
    font-size:      0.6rem !important;
    font-weight:    800 !important;
    letter-spacing: 0.2em !important;
    text-transform: uppercase !important;
    color:          #e0c97a !important;
    margin:         0 0 0.5rem !important;
    font-family:    'DM Sans', sans-serif !important;
}
.experience-card__title {
    font-family: 'Cormorant Garant', serif !important;
    font-size:   1.35rem !important;
    font-weight: 600 !important;
    color:       #ffffff !important;
    margin:      0 0 0.625rem !important;
    line-height: 1.2 !important;
}
.experience-card__desc {
    font-size:   0.82rem !important;
    color:       rgba(255,255,255,0.72) !important;
    line-height: 1.7 !important;
    margin:      0 0 0.875rem !important;
    display:     -webkit-box !important;
    -webkit-line-clamp: 3 !important;
    -webkit-box-orient: vertical !important;
    overflow:    hidden !important;
}

/* Gold accent line on left */
.experience-card::before {
    content:    '' !important;
    position:   absolute !important;
    left:       0; top: 30%; bottom: 30%;
    width:      3px !important;
    background: linear-gradient(to bottom, transparent, #c9a84c, transparent) !important;
    z-index:    3 !important;
    opacity:    0 !important;
    transition: opacity 0.4s ease !important;
}
.experience-card:hover::before { opacity: 1 !important; }

/* Experience grid parent */
section.section--dark [style*="grid-template-columns:1fr 1fr"] {
    display:               grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap:                   1.25rem !important;
    margin-bottom:         0 !important;
}

/* Mobile: horizontal scroll carousel */
@media (max-width: 768px) {
    section.section--dark [style*="grid-template-columns:1fr 1fr"] {
        display:            flex !important;
        flex-wrap:          nowrap !important;
        overflow-x:         auto !important;
        gap:                1rem !important;
        scroll-snap-type:   x mandatory !important;
        -webkit-overflow-scrolling: touch !important;
        scrollbar-width:    none !important;
        padding-bottom:     1rem !important;
    }
    section.section--dark [style*="grid-template-columns:1fr 1fr"] > * {
        flex:           0 0 80vw !important;
        max-width:      300px !important;
        scroll-snap-align: start !important;
    }
    .experience-card { min-height: 360px !important; }
}
@media (max-width: 1100px) and (min-width: 769px) {
    section.section--dark [style*="grid-template-columns:1fr 1fr"] {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

/* ─────────────────────────────────────────────────────────────
   PREMIUM FONTS — reinforce Cormorant Garant
───────────────────────────────────────────────────────────── */
h1,h2,h3,h4,h5,h6,
.section-title,.page-hero-title,.wow-title,
.v8-hero__title,.v8-room-card__title,
.footer-col-title,.experience-card__title,
.about-snippet__content h2,.timeline-title {
    font-family: 'Cormorant Garant','Cormorant','Playfair Display',Georgia,serif !important;
}

/* ─────────────────────────────────────────────────────────────
   SCROLL REVEAL — refined 3D
───────────────────────────────────────────────────────────── */
[data-reveal] {
    opacity:         0;
    transform:       translateY(36px);
    transition:      opacity 0.7s cubic-bezier(0.16,1,0.3,1),
                     transform 0.7s cubic-bezier(0.16,1,0.3,1);
    will-change:     opacity, transform;
}
[data-reveal].revealed    { opacity:1 !important; transform:none !important; }
[data-reveal="fade-right"]{ transform: translateX(-48px); }
[data-reveal="fade-right"].revealed { transform: none; }
[data-reveal="fade-left"] { transform: translateX(48px); }
[data-reveal="fade-left"].revealed  { transform: none; }
[data-reveal="scale-in"]  { transform: scale(0.88); }
[data-reveal="scale-in"].revealed   { transform: none; }
[data-delay="100"] { transition-delay: 0.1s !important; }
[data-delay="150"] { transition-delay: 0.15s !important; }
[data-delay="200"] { transition-delay: 0.2s !important; }
[data-delay="250"] { transition-delay: 0.25s !important; }
[data-delay="300"] { transition-delay: 0.3s !important; }
[data-delay="350"] { transition-delay: 0.35s !important; }
[data-delay="400"] { transition-delay: 0.4s !important; }

/* ─────────────────────────────────────────────────────────────
   AMENITY CARDS — ultra premium hover
───────────────────────────────────────────────────────────── */
.amenity-card {
    position:   relative !important;
    overflow:   hidden !important;
    transition: transform 0.45s cubic-bezier(0.34,1.56,0.64,1), box-shadow 0.35s ease !important;
}
.amenity-card::after {
    content:          '' !important;
    position:         absolute !important;
    bottom: 0; left: 0; right: 0;
    height:           3px !important;
    background:       linear-gradient(90deg, #c9a84c, #e0c97a) !important;
    transform:        scaleX(0) !important;
    transform-origin: center !important;
    transition:       transform 0.35s ease !important;
    border-radius:    0 0 var(--radius-lg,12px) var(--radius-lg,12px) !important;
}
.amenity-card:hover { transform: translateY(-10px) !important; box-shadow: 0 20px 50px rgba(13,33,55,0.13) !important; }
.amenity-card:hover::after { transform: scaleX(1) !important; }

/* ─────────────────────────────────────────────────────────────
   BUTTONS — gold pulse CTA
───────────────────────────────────────────────────────────── */
@keyframes v17Pulse {
    0%,100% { box-shadow: 0 6px 24px rgba(201,168,76,0.3); }
    50%      { box-shadow: 0 6px 40px rgba(201,168,76,0.6), 0 0 60px rgba(201,168,76,0.15); }
}
.wow-btn, .v8-btn--primary {
    animation: v17Pulse 2.8s ease-in-out infinite !important;
}
.wow-btn:hover, .v8-btn--primary:hover {
    animation:  none !important;
    transform:  translateY(-4px) !important;
    box-shadow: 0 14px 44px rgba(201,168,76,0.55) !important;
}

/* ─────────────────────────────────────────────────────────────
   WOW TITLE — gradient text
───────────────────────────────────────────────────────────── */
.wow-title {
    background:              linear-gradient(135deg, #fff 0%, rgba(255,255,255,0.82) 40%, #e0c97a 100%);
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip:         text !important;
}

/* ─────────────────────────────────────────────────────────────
   GOLD DIVIDER — shimmer
───────────────────────────────────────────────────────────── */
@keyframes v17Shimmer { from{background-position:200% center} to{background-position:-200% center} }
.gold-divider {
    background:      linear-gradient(90deg,transparent,#a07828 20%,#e0c97a 50%,#c9a84c 80%,transparent) !important;
    background-size: 300% auto !important;
    animation:       v17Shimmer 4s linear infinite !important;
    height:          1.5px !important;
    border:          none !important;
    border-radius:   2px !important;
}

/* ─────────────────────────────────────────────────────────────
   CUSTOM SCROLLBAR
───────────────────────────────────────────────────────────── */
::-webkit-scrollbar       { width:5px; height:5px; }
::-webkit-scrollbar-track { background:#080f1c; }
::-webkit-scrollbar-thumb { background:linear-gradient(180deg,#a07828,#c9a84c); border-radius:3px; }
* { scrollbar-width:thin; scrollbar-color:#c9a84c #080f1c; }

/* ─────────────────────────────────────────────────────────────
   GENERAL RESPONSIVE SAFETY
───────────────────────────────────────────────────────────── */
html,body { overflow-x:hidden !important; }
img       { max-width:100% !important; }

@media (max-width:768px) {
    .page-hero-bg img { animation-duration:25s !important; } /* Slower pan on mobile */
    [style*="position:sticky"] { position:static !important; }
    .about-snippet__image img { transform:none !important; }
}

/* Accessibility */
:focus-visible { outline:2px solid #c9a84c !important; outline-offset:3px !important; border-radius:4px !important; }
@media (prefers-reduced-motion:reduce) {
    *,*::before,*::after { animation-duration:0.01ms !important; transition-duration:0.1ms !important; }
    [data-reveal] { opacity:1 !important; transform:none !important; }
    .page-hero-bg img { animation:none !important; transform:scale(1.05) !important; }
}

/* Safe area */
@supports (padding:env(safe-area-inset-bottom)) {
    .mobile-book-bar { padding-bottom:calc(0.75rem + env(safe-area-inset-bottom)) !important; }
    @media (max-width:768px) { body { padding-bottom:calc(64px + env(safe-area-inset-bottom)); } }
}

/* ── design-v18.css (27,395b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v18
   Gradient text · Premium buttons · Footer redesign · About 3D
   Mobile nav nuclear fix · Full customizer sync
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   FIX 4: MOBILE NAV — absolute final nuclear fix
   Uses .is-open class (set by JS) + CSS fallback
───────────────────────────────────────────────────────────── */
@media (min-width: 769px) {
    #main-navigation,
    .main-nav {
        display:        flex !important;
        position:       static !important;
        background:     transparent !important;
        opacity:        1 !important;
        visibility:     visible !important;
        pointer-events: auto !important;
        transform:      none !important;
        height:         auto !important;
        width:          auto !important;
        overflow:       visible !important;
    }
    .mobile-menu-toggle { display:none !important; }
}

@media (max-width: 768px) {
    /* Hide by default */
    #main-navigation:not(.is-open) {
        display:        none !important;
        opacity:        0 !important;
        pointer-events: none !important;
        visibility:     hidden !important;
    }

    /* Hamburger: large, visible, white bars */
    .mobile-menu-toggle {
        display:         flex !important;
        flex-direction:  column !important;
        align-items:     center !important;
        justify-content: center !important;
        gap:             5px !important;
        width:           48px !important;
        height:          48px !important;
        background:      transparent !important;
        border:          1.5px solid rgba(255,255,255,0.35) !important;
        border-radius:   10px !important;
        cursor:          pointer !important;
        padding:         8px !important;
        position:        relative !important;
        z-index:         1001 !important;
        visibility:      visible !important;
        opacity:         1 !important;
    }
    .mobile-menu-toggle span {
        display:       block !important;
        width:         22px !important;
        height:        2px !important;
        background:    #ffffff !important;
        border-radius: 2px !important;
        opacity:       1 !important;
        visibility:    visible !important;
        transition:    transform 0.3s ease, opacity 0.2s ease !important;
        flex-shrink:   0 !important;
    }
    .mobile-menu-toggle.is-active span:nth-child(1) { transform: rotate(45deg) translate(5px,5px) !important; }
    .mobile-menu-toggle.is-active span:nth-child(2) { opacity: 0 !important; }
    .mobile-menu-toggle.is-active span:nth-child(3) { transform: rotate(-45deg) translate(5px,-5px) !important; }

    /* OPEN STATE */
    #main-navigation.is-open {
        display:         flex !important;
        position:        fixed !important;
        inset:           0 !important;
        width:           100vw !important;
        height:          100vh !important;
        height:          100dvh !important;
        background:      rgba(6,12,22,0.97) !important;
        z-index:         9999999 !important;
        flex-direction:  column !important;
        align-items:     center !important;
        justify-content: center !important;
        overflow-y:      auto !important;
        padding:         4.5rem 2rem 3rem !important;
        opacity:         1 !important;
        visibility:      visible !important;
        pointer-events:  auto !important;
        transform:       none !important;
        backdrop-filter: blur(12px) !important;
        border:          none !important;
    }

    /* Nav menu list */
    #main-navigation.is-open .nav-menu,
    #main-navigation.is-open ul.nav-menu {
        display:        flex !important;
        flex-direction: column !important;
        width:          100% !important;
        max-width:      320px !important;
        list-style:     none !important;
        padding:        0 !important;
        margin:         0 !important;
        gap:            0 !important;
    }

    /* All menu items */
    #main-navigation.is-open .nav-menu .menu-item,
    #main-navigation.is-open .nav-menu li {
        display:       block !important;
        border-bottom: 1px solid rgba(255,255,255,0.07) !important;
        width:         100% !important;
    }
    #main-navigation.is-open .nav-menu > .menu-item:first-child {
        border-top: 1px solid rgba(255,255,255,0.07) !important;
    }

    /* ALL top-level links */
    #main-navigation.is-open .nav-menu > .menu-item > a,
    #main-navigation.is-open .nav-menu > li > a {
        display:         flex !important;
        align-items:     center !important;
        justify-content: space-between !important;
        width:           100% !important;
        padding:         1rem 0 !important;
        color:           #ffffff !important;
        font-size:       0.9rem !important;
        font-weight:     600 !important;
        letter-spacing:  0.08em !important;
        text-transform:  uppercase !important;
        text-decoration: none !important;
        background:      transparent !important;
        opacity:         1 !important;
        visibility:      visible !important;
        cursor:          pointer !important;
        font-family:     'DM Sans',system-ui,sans-serif !important;
        border:          none !important;
        outline:         none !important;
    }
    #main-navigation.is-open .nav-menu > .menu-item > a:hover {
        color: #e0c97a !important;
    }

    /* Sub-menus */
    #main-navigation.is-open .sub-menu,
    #main-navigation.is-open ul.sub-menu {
        display:     block !important;
        max-height:  0 !important;
        overflow:    hidden !important;
        transition:  max-height 0.3s ease !important;
        background:  rgba(255,255,255,0.04) !important;
        padding:     0 !important;
        margin:      0 !important;
        list-style:  none !important;
        box-shadow:  none !important;
        border:      none !important;
        position:    static !important;
        opacity:     1 !important;
        visibility:  visible !important;
        transform:   none !important;
    }
    #main-navigation.is-open .menu-item-has-children.sub-open > .sub-menu {
        max-height: 400px !important;
        padding:    0.4rem 0 !important;
    }

    /* Sub-menu links — GUARANTEED WHITE */
    #main-navigation.is-open .sub-menu a,
    #main-navigation.is-open .sub-menu li a,
    #main-navigation.is-open .sub-menu .menu-item a {
        display:         block !important;
        color:           #ffffff !important;
        padding:         0.625rem 1rem !important;
        font-size:       0.82rem !important;
        font-weight:     500 !important;
        letter-spacing:  0.04em !important;
        text-decoration: none !important;
        background:      transparent !important;
        opacity:         1 !important;
        visibility:      visible !important;
        cursor:          pointer !important;
    }
    #main-navigation.is-open .sub-menu a:hover { color: #e0c97a !important; background: rgba(255,255,255,0.05) !important; }

    /* Hide pseudo-elements that can break mobile links */
    #main-navigation.is-open .nav-menu a::before,
    #main-navigation.is-open .nav-menu a::after { display:none !important; }
}

/* ─────────────────────────────────────────────────────────────
   FIX 8: GRADIENT TEXT — Premium double-color headings
───────────────────────────────────────────────────────────── */
/* Main hero title — gold gradient */
.v8-hero__title {
    background:              linear-gradient(135deg, #ffffff 0%, #f5f0e0 40%, #e0c97a 75%, #c9a84c 100%) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip:         text !important;
    filter:                  drop-shadow(0 2px 20px rgba(201,168,76,0.25)) !important;
}

/* Section titles — subtle navy to midnight gradient */
.section-title {
    background:              linear-gradient(135deg, #0d2137 0%, #1a3a5c 60%, #0d2137 100%) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip:         text !important;
}
/* On dark sections, section titles should be white/gold */
.section--dark .section-title,
section[style*="background:linear-gradient"] .section-title,
section[style*="background: linear-gradient"] .section-title {
    background:              linear-gradient(135deg, #ffffff 0%, #f0e8c8 60%, #e0c97a 100%) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip:         text !important;
}

/* Page hero titles */
.page-hero-title {
    background:              linear-gradient(135deg, #ffffff 0%, #faf5e4 50%, #e0c97a 100%) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip:         text !important;
    filter:                  drop-shadow(0 3px 24px rgba(8,15,28,0.4)) !important;
}

/* WOW section title */
.wow-title {
    background:              linear-gradient(135deg, #ffffff 0%, rgba(255,255,255,0.9) 35%, #f0d882 70%, #c9a84c 100%) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip:         text !important;
}

/* Section labels — gold gradient */
.section-label {
    background:              linear-gradient(90deg, #a07828, #c9a84c, #e0c97a) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip:         text !important;
    font-weight:             700 !important;
}

/* Stats numbers — gold shimmer */
.stat-number span {
    background:              linear-gradient(135deg, #c9a84c, #e0c97a, #f5d787, #c9a84c) !important;
    background-size:         200% auto !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip:         text !important;
    animation:               v18StatShimmer 3s linear infinite !important;
}
@keyframes v18StatShimmer {
    0%   { background-position: 0% center; }
    100% { background-position: 200% center; }
}

/* ─────────────────────────────────────────────────────────────
   FIX 10: PREMIUM BUTTONS — 3D effect, shadow, attractive
───────────────────────────────────────────────────────────── */

/* Reset over-rounded from v13 */
.btn--primary, .btn--xl, .header-book-btn, .wow-btn, .v8-btn--primary,
.btn--secondary, .btn--ghost, .v8-btn--ghost,
.btn--outline, .btn--outline-white {
    border-radius: 10px !important; /* Clean modern pill-ish */
    font-family:   'DM Sans', sans-serif !important;
    font-weight:   700 !important;
    letter-spacing:0.06em !important;
    position:      relative !important;
    overflow:      hidden !important;
    transition:    transform 0.35s cubic-bezier(0.34,1.56,0.64,1),
                   box-shadow 0.3s ease,
                   background 0.25s ease !important;
}

/* Primary button — rich gold gradient + 3D shadow */
.btn--primary,
.v8-btn--primary,
.wow-btn,
.availability-banner__btn,
.header-book-btn {
    background: linear-gradient(135deg, #c9a84c 0%, #e0c97a 45%, #c9a84c 80%, #a07828 100%) !important;
    background-size: 200% auto !important;
    color:      #0d2137 !important;
    box-shadow: 0 4px 16px rgba(201,168,76,0.35),
                0 2px 4px rgba(201,168,76,0.2),
                inset 0 1px 0 rgba(255,255,255,0.3) !important;
    border:     1px solid rgba(201,168,76,0.4) !important;
    text-shadow:0 1px 2px rgba(255,255,255,0.2) !important;
}
.btn--primary:hover,
.v8-btn--primary:hover,
.wow-btn:hover,
.header-book-btn:hover {
    background-position: right center !important;
    transform:    translateY(-4px) !important;
    box-shadow:   0 12px 36px rgba(201,168,76,0.5),
                  0 4px 12px rgba(201,168,76,0.3),
                  inset 0 1px 0 rgba(255,255,255,0.4) !important;
}
.btn--primary:active,
.v8-btn--primary:active {
    transform:  translateY(-1px) !important;
    box-shadow: 0 4px 16px rgba(201,168,76,0.3) !important;
}

/* Shimmer sweep effect on primary buttons */
.btn--primary::before,
.v8-btn--primary::before,
.wow-btn::before {
    content:    '' !important;
    position:   absolute !important;
    top:        0 !important; left: -100% !important;
    width:      60% !important; height: 100% !important;
    background: linear-gradient(120deg, transparent, rgba(255,255,255,0.35), transparent) !important;
    transition: left 0.55s ease !important;
    pointer-events: none !important;
}
.btn--primary:hover::before,
.v8-btn--primary:hover::before,
.wow-btn:hover::before {
    left: 150% !important;
}

/* Secondary button — clean outline with 3D feel */
.btn--secondary,
.v8-btn--ghost {
    background: rgba(13,33,55,0.04) !important;
    color:      #0d2137 !important;
    border:     1.5px solid rgba(13,33,55,0.25) !important;
    box-shadow: 0 2px 8px rgba(13,33,55,0.08),
                inset 0 1px 0 rgba(255,255,255,0.6) !important;
}
.btn--secondary:hover,
.v8-btn--ghost:hover {
    background:  #0d2137 !important;
    color:       #ffffff !important;
    border-color:#0d2137 !important;
    transform:   translateY(-3px) !important;
    box-shadow:  0 10px 28px rgba(13,33,55,0.25) !important;
}

/* Ghost white button */
.btn--ghost, .btn--outline-white, .v8-btn--ghost[style*="white"],
.btn--outline-white {
    background:   rgba(255,255,255,0.08) !important;
    border:       1.5px solid rgba(255,255,255,0.35) !important;
    color:        #ffffff !important;
    backdrop-filter: blur(8px) !important;
    box-shadow:   0 4px 16px rgba(0,0,0,0.15),
                  inset 0 1px 0 rgba(255,255,255,0.15) !important;
}
.btn--ghost:hover, .btn--outline-white:hover {
    background:   rgba(255,255,255,0.18) !important;
    border-color: rgba(255,255,255,0.65) !important;
    transform:    translateY(-3px) !important;
}

/* Book Now pulse animation */
@keyframes v18BtnPulse {
    0%,100% { box-shadow: 0 4px 16px rgba(201,168,76,0.35), 0 0 0 0 rgba(201,168,76,0.3); }
    50%      { box-shadow: 0 4px 20px rgba(201,168,76,0.5), 0 0 0 10px rgba(201,168,76,0); }
}
.availability-banner__btn,
.wow-btn {
    animation: v18BtnPulse 2.5s ease-in-out infinite !important;
}
.availability-banner__btn:hover,
.wow-btn:hover { animation: none !important; }

/* ─────────────────────────────────────────────────────────────
   FIX 6: ABOUT US EST. BADGE — Ultra premium 3D glassmorphism
───────────────────────────────────────────────────────────── */
.about-snippet__badge {
    position:        absolute !important;
    bottom:          -1.75rem !important;
    left:            -1.75rem !important;
    z-index:         4 !important;
    background:      linear-gradient(135deg, rgba(201,168,76,0.15) 0%, rgba(224,201,122,0.08) 100%) !important;
    backdrop-filter: blur(20px) saturate(180%) !important;
    -webkit-backdrop-filter: blur(20px) saturate(180%) !important;
    border:          1.5px solid rgba(201,168,76,0.45) !important;
    border-radius:   20px !important;
    padding:         1.5rem 2rem !important;
    text-align:      center !important;
    box-shadow:      0 8px 32px rgba(201,168,76,0.25),
                     0 2px 8px rgba(0,0,0,0.15),
                     inset 0 1px 0 rgba(255,255,255,0.15) !important;
    animation:       v18BadgeFloat 4s ease-in-out infinite !important;
    min-width:       120px !important;
}
/* Inner content */
.about-snippet__badge .about-badge-year {
    display:         block !important;
    font-size:       0.6rem !important;
    font-weight:     800 !important;
    letter-spacing:  0.22em !important;
    text-transform:  uppercase !important;
    background:      linear-gradient(90deg, #a07828, #e0c97a) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
    margin-bottom:   0.35rem !important;
}
.about-snippet__badge .about-badge-num {
    display:         block !important;
    font-family:     'Cormorant Garant',serif !important;
    font-size:       2.75rem !important;
    font-weight:     700 !important;
    line-height:     1 !important;
    background:      linear-gradient(135deg, #c9a84c, #f5d787, #c9a84c) !important;
    background-size: 200% auto !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
    animation:       v18StatShimmer 3s linear infinite !important;
}
@keyframes v18BadgeFloat {
    0%,100% { transform: translateY(0) rotate(-0.5deg); }
    50%      { transform: translateY(-8px) rotate(0.5deg); }
}

/* About image — deep 3D tilt */
.about-snippet__image img {
    transition:  transform 0.7s cubic-bezier(0.25,0.46,0.45,0.94),
                 box-shadow 0.6s ease !important;
    transform:   perspective(1200px) rotateY(-4deg) rotateX(1.5deg) translateZ(0) !important;
    box-shadow:  -12px 20px 60px rgba(13,33,55,0.25),
                 12px 4px 24px rgba(13,33,55,0.08) !important;
    will-change: transform !important;
}
.about-snippet:hover .about-snippet__image img {
    transform:   perspective(1200px) rotateY(0deg) rotateX(0deg) translateZ(20px) !important;
    box-shadow:  0 28px 72px rgba(13,33,55,0.22) !important;
}

/* ─────────────────────────────────────────────────────────────
   FIX 7: FOOTER — Rich navy, visible content
───────────────────────────────────────────────────────────── */
.site-footer {
    background: linear-gradient(160deg, #061018 0%, #0d2137 35%, #080f1c 70%, #030a12 100%) !important;
    border-top:  0 !important;
    position:    relative !important;
    overflow:    hidden !important;
}

/* Gold top border with shimmer */
.site-footer::before {
    content:    '' !important;
    position:   absolute !important;
    top:        0; left: 0; right: 0;
    height:     2px !important;
    background: linear-gradient(90deg, transparent 0%, #a07828 20%, #e0c97a 50%, #c9a84c 80%, transparent 100%) !important;
    background-size: 200% auto !important;
    animation:  v18GoldLine 4s linear infinite !important;
}
@keyframes v18GoldLine { 0%{background-position:200% center} 100%{background-position:-200% center} }

/* Footer subtle dot pattern */
.site-footer::after {
    content:    '' !important;
    position:   absolute !important;
    inset:      0 !important;
    background: radial-gradient(circle at 20% 80%, rgba(201,168,76,0.04) 0%, transparent 50%),
                radial-gradient(circle at 80% 20%, rgba(13,33,55,0.3) 0%, transparent 50%) !important;
    pointer-events: none !important;
    z-index:    0 !important;
}

/* Footer content above overlay */
.footer-top,
.footer-top .container,
.footer-grid,
.footer-bottom,
.footer-bottom .container { position: relative !important; z-index: 1 !important; }

/* Footer text colors — crisp white */
.footer-col-title {
    background:              linear-gradient(135deg, #ffffff, #e0c97a) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip:         text !important;
    font-family:             'Cormorant Garant',serif !important;
    font-size:               1.1rem !important;
    font-weight:             600 !important;
    letter-spacing:          0.04em !important;
    margin-bottom:           1.25rem !important;
}
.footer-menu li a {
    color:       rgba(255,255,255,0.65) !important;
    transition:  color 0.2s ease !important;
    font-size:   0.85rem !important;
}
.footer-menu li a:hover { color: #e0c97a !important; }
.footer-about { color: rgba(255,255,255,0.6) !important; line-height: 1.85 !important; font-size: 0.875rem !important; }
.footer-contact-link { color: rgba(255,255,255,0.65) !important; }
.footer-contact-link:hover { color: #e0c97a !important; }
.footer-contact-icon { opacity: 0.8 !important; }
address { color: rgba(255,255,255,0.6) !important; font-size: 0.85rem !important; line-height: 1.8 !important; }

/* Footer social icons */
.footer-social a {
    background: rgba(255,255,255,0.06) !important;
    border:     1px solid rgba(255,255,255,0.12) !important;
    transition: all 0.3s ease !important;
}
.footer-social a:hover {
    background:   rgba(201,168,76,0.18) !important;
    border-color: rgba(201,168,76,0.5) !important;
    transform:    translateY(-3px) !important;
    box-shadow:   0 6px 20px rgba(201,168,76,0.2) !important;
}

/* Newsletter input */
.newsletter-input {
    background:    rgba(255,255,255,0.06) !important;
    border:        1px solid rgba(255,255,255,0.15) !important;
    color:         #fff !important;
    border-radius: 8px !important;
}
.newsletter-input::placeholder { color: rgba(255,255,255,0.35) !important; }
.newsletter-input:focus { border-color: rgba(201,168,76,0.6) !important; outline: none !important; }

/* Footer bottom bar */
.footer-bottom { border-top: 1px solid rgba(255,255,255,0.06) !important; padding: 1.5rem 0 !important; }
.footer-copyright { color: rgba(255,255,255,0.4) !important; font-size: 0.78rem !important; }
.footer-bottom-links a { color: rgba(255,255,255,0.4) !important; font-size: 0.75rem !important; transition: color 0.2s !important; }
.footer-bottom-links a:hover { color: #e0c97a !important; }

/* ─────────────────────────────────────────────────────────────
   INNER PAGE HERO — Cinematic parallax
───────────────────────────────────────────────────────────── */
.page-hero {
    position:   relative !important;
    overflow:   hidden !important;
}
.page-hero-bg {
    position: absolute !important;
    inset:    -10% !important;
    z-index:  0 !important;
}
.page-hero-bg img {
    width:      100% !important;
    height:     100% !important;
    object-fit: cover !important;
    animation:  v18HeroPan 20s ease-in-out infinite alternate !important;
    transform:  scale(1.12) !important;
    will-change:transform !important;
}
@keyframes v18HeroPan {
    0%   { transform: scale(1.12) translate(0%, 0%);    }
    33%  { transform: scale(1.14) translate(-1.5%, -1%);}
    66%  { transform: scale(1.12) translate(1%, 0.5%);  }
    100% { transform: scale(1.13) translate(0.5%, -0.5%); }
}
.page-hero-content { position: relative !important; z-index: 2 !important; }

/* ─────────────────────────────────────────────────────────────
   GENERAL PREMIUM POLISH
───────────────────────────────────────────────────────────── */

/* Gold divider shimmer */
@keyframes v18Shimmer { 0%{background-position:200% center} 100%{background-position:-200% center} }
.gold-divider {
    background:      linear-gradient(90deg, transparent 0%, #a07828 20%, #f5d787 50%, #c9a84c 80%, transparent 100%) !important;
    background-size: 300% auto !important;
    animation:       v18Shimmer 4s linear infinite !important;
    height:          1.5px !important;
    border:          none !important;
    border-radius:   2px !important;
}

/* Review cards hover */
.review-card { transition: transform 0.4s cubic-bezier(0.34,1.56,0.64,1), box-shadow 0.3s !important; }
.review-card:hover { transform: translateY(-8px) !important; box-shadow: 0 20px 48px rgba(13,33,55,0.12) !important; }

/* Amenity cards */
.amenity-card { transition: transform 0.4s cubic-bezier(0.34,1.56,0.64,1), box-shadow 0.3s !important; }
.amenity-card:hover { transform: translateY(-10px) !important; box-shadow: 0 20px 48px rgba(13,33,55,0.13) !important; }

/* Font enforcement */
h1,h2,h3,h4,h5,h6,
.section-title,.page-hero-title,.wow-title,
.v8-hero__title,.footer-col-title,.experience-card__title {
    font-family: 'Cormorant Garant','Playfair Display',Georgia,serif !important;
}
body,p,li,input,select,textarea,button,a,
.section-label,.section-subtitle,.amenity-desc {
    font-family: 'DM Sans','Inter',system-ui,sans-serif !important;
}

/* Scrollbar */
::-webkit-scrollbar { width:5px; height:5px; }
::-webkit-scrollbar-track { background:#080f1c; }
::-webkit-scrollbar-thumb { background:linear-gradient(180deg,#a07828,#c9a84c); border-radius:3px; }

/* Overflow safety */
html,body { overflow-x:hidden !important; max-width:100vw !important; }
img { max-width:100% !important; }

/* Accessibility */
:focus-visible { outline:2px solid #c9a84c !important; outline-offset:3px !important; border-radius:4px !important; }

/* Reduced motion */
@media (prefers-reduced-motion:reduce) {
    *,*::before,*::after { animation:none !important; transition-duration:0.1ms !important; }
    [data-reveal] { opacity:1 !important; transform:none !important; }
    .page-hero-bg img { animation:none !important; transform:scale(1.05) !important; }
}

/* Safe area */
@supports (padding:env(safe-area-inset-bottom)) {
    .mobile-book-bar { padding-bottom:calc(0.75rem + env(safe-area-inset-bottom)) !important; }
}

@media (max-width:768px) {
    .page-hero-bg img { animation-duration:28s !important; }
    .about-snippet__image img { transform:none !important; }
    .about-snippet__badge { bottom:-1rem !important; left:0.5rem !important; }
    [style*="position:sticky"] { position:static !important; }
}

/* ── design-v19.css (22,174b) ── */
/*
 * Design v19 — Dhulikhel Sunrise Resort
 * Fixes + Enhancements:
 *  1. page-gallery.php parse fix (PHP side)
 *  2. Homepage rooms sync via customizer (PHP side)
 *  3. Est.2008 3D badge redesign
 *  4. Mobile menu (JS fix in mobile-menu.js)
 *  5. Global 3D effects, animation, shadows
 *  6. 100% responsive, full images
 *  7. Subpage hero animation
 * ============================================================ */

/* ─────────────────────────────────────────────────────────────
   GLOBAL 3D PERSPECTIVE LAYER
───────────────────────────────────────────────────────────── */
:root {
    --v19-gold:       #c9a84c;
    --v19-gold-light: #f5d787;
    --v19-gold-dark:  #a07828;
    --v19-shadow-3d:  0 20px 60px rgba(0,0,0,0.18), 0 8px 20px rgba(0,0,0,0.10);
    --v19-shadow-deep: 0 32px 80px rgba(8,15,28,0.28), 0 12px 32px rgba(0,0,0,0.14);
    --v19-text-shadow: 0 2px 12px rgba(0,0,0,0.45), 0 1px 3px rgba(0,0,0,0.6);
    --v19-text-shadow-gold: 0 2px 16px rgba(201,168,76,0.55), 0 1px 4px rgba(0,0,0,0.5);
}

/* ─────────────────────────────────────────────────────────────
   SECTION TITLES — 3D gradient text + shadow
───────────────────────────────────────────────────────────── */
.section-title,
.page-hero-title {
    text-shadow: 0 3px 18px rgba(0,0,0,0.22), 0 1px 4px rgba(0,0,0,0.30) !important;
}

/* Dark-background headings get gold shimmer */
.section--dark .section-title,
.section--dark h2,
.hero-section .section-title,
.page-hero .page-hero-title {
    background: linear-gradient(135deg, #f5d787 0%, #c9a84c 40%, #e8c96a 70%, #fff8e7 100%) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
    text-shadow: none !important;
    filter: drop-shadow(0 3px 12px rgba(201,168,76,0.4)) !important;
}

/* ─────────────────────────────────────────────────────────────
   PAGE-HERO SUBPAGES — Cinematic entrance animation
───────────────────────────────────────────────────────────── */
@keyframes v19HeroReveal {
    0%   { opacity: 0; transform: translateY(36px) scale(0.97); }
    100% { opacity: 1; transform: translateY(0)    scale(1);    }
}
@keyframes v19HeroSubReveal {
    0%   { opacity: 0; transform: translateY(24px); }
    100% { opacity: 1; transform: translateY(0);    }
}
@keyframes v19HeroLabelReveal {
    0%   { opacity: 0; transform: translateX(-20px); letter-spacing: 0.18em; }
    100% { opacity: 1; transform: translateX(0);     letter-spacing: 0.12em; }
}
@keyframes v19HeroLineIn {
    0%   { width: 0; opacity: 0; }
    100% { width: 60px; opacity: 1; }
}
@keyframes v19HeroBgZoom {
    0%   { transform: scale(1.18); }
    100% { transform: scale(1.06); }
}

/* Subpage hero bg — zoom-in entrance + slow pan */
.page-hero-bg img {
    animation: v19HeroBgZoom 1.6s cubic-bezier(0.22,1,0.36,1) forwards,
               v18HeroPan 22s 1.6s ease-in-out infinite alternate !important;
    transform-origin: center center !important;
    will-change: transform !important;
}

/* Subpage hero text entrance */
.page-hero .section-label {
    animation: v19HeroLabelReveal 0.7s 0.3s cubic-bezier(0.22,1,0.36,1) both !important;
    display: inline-block !important;
}
.page-hero .page-hero-title {
    animation: v19HeroReveal 0.9s 0.5s cubic-bezier(0.22,1,0.36,1) both !important;
}
.page-hero .page-hero-subtitle {
    animation: v19HeroSubReveal 0.8s 0.75s cubic-bezier(0.22,1,0.36,1) both !important;
}

/* Hero decorative underline */
.page-hero-title::after {
    content: '';
    display: block;
    height: 2px;
    background: linear-gradient(90deg, var(--v19-gold), var(--v19-gold-light), transparent);
    border-radius: 2px;
    margin-top: 0.6rem;
    animation: v19HeroLineIn 0.8s 1.1s cubic-bezier(0.22,1,0.36,1) both !important;
}

/* ─────────────────────────────────────────────────────────────
   EST.2008 — 3D BADGE REDESIGN
───────────────────────────────────────────────────────────── */
@keyframes v19BadgeFloat {
    0%, 100% { transform: translateY(0) rotate(-3deg); }
    50%       { transform: translateY(-8px) rotate(-3deg); }
}
@keyframes v19BadgeGlow {
    0%, 100% { opacity: 0.4; transform: scale(1); }
    50%       { opacity: 0.8; transform: scale(1.15); }
}
@keyframes v19BadgeEntrance {
    0%   { opacity: 0; transform: translateY(30px) rotate(-3deg) scale(0.85); }
    100% { opacity: 1; transform: translateY(0)    rotate(-3deg) scale(1);   }
}

.about-badge-3d {
    position: absolute !important;
    bottom: -1.5rem !important;
    left: -1.5rem !important;
    width: 130px !important;
    height: 130px !important;
    border-radius: 18px !important;
    background: linear-gradient(135deg, #0d2237 0%, #1a3a55 40%, #0a1e30 100%) !important;
    box-shadow:
        0 24px 60px rgba(0,0,0,0.55),
        0 8px 24px rgba(0,0,0,0.35),
        inset 0 1px 1px rgba(255,255,255,0.08),
        0 0 0 1.5px rgba(201,168,76,0.35) !important;
    transform: rotate(-3deg) !important;
    animation: v19BadgeEntrance 0.9s 0.8s cubic-bezier(0.34,1.56,0.64,1) both,
               v19BadgeFloat 5s 1.8s ease-in-out infinite !important;
    overflow: visible !important;
    z-index: 10 !important;
    cursor: default !important;
}

.about-badge-3d::before {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: 18px;
    background: linear-gradient(135deg,
        rgba(201,168,76,0.18) 0%,
        rgba(245,215,135,0.08) 50%,
        rgba(201,168,76,0.05) 100%);
    pointer-events: none;
}

.about-badge-3d__glow {
    position: absolute;
    inset: -20px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(201,168,76,0.35) 0%, transparent 70%);
    pointer-events: none;
    animation: v19BadgeGlow 3.5s ease-in-out infinite !important;
    z-index: -1 !important;
}

.about-badge-3d__inner {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    height: 100% !important;
    padding: 1rem !important;
    gap: 0 !important;
    position: relative !important;
    z-index: 2 !important;
}

.about-badge-3d__est {
    font-family: 'DM Sans','Inter',sans-serif !important;
    font-size: 0.65rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.2em !important;
    text-transform: uppercase !important;
    color: var(--v19-gold-light) !important;
    text-shadow: 0 1px 8px rgba(201,168,76,0.6) !important;
    line-height: 1 !important;
    margin-bottom: 2px !important;
}

.about-badge-3d__year {
    font-family: 'Cormorant Garant','Playfair Display',serif !important;
    font-size: 2.6rem !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    background: linear-gradient(135deg, #f5d787 0%, #c9a84c 50%, #e8c96a 100%) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
    filter: drop-shadow(0 2px 8px rgba(201,168,76,0.6)) !important;
    margin-bottom: 4px !important;
}

.about-badge-3d__line {
    display: block !important;
    width: 40px !important;
    height: 1.5px !important;
    background: linear-gradient(90deg, transparent, var(--v19-gold), transparent) !important;
    margin: 4px auto !important;
    border-radius: 2px !important;
}

.about-badge-3d__sub {
    font-family: 'DM Sans',sans-serif !important;
    font-size: 0.55rem !important;
    font-weight: 500 !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
    color: rgba(255,255,255,0.55) !important;
    line-height: 1 !important;
    margin-bottom: 2px !important;
}

.about-badge-3d__word {
    font-family: 'DM Sans',sans-serif !important;
    font-size: 0.6rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.14em !important;
    text-transform: uppercase !important;
    color: rgba(255,255,255,0.85) !important;
    text-shadow: 0 1px 6px rgba(201,168,76,0.4) !important;
    line-height: 1 !important;
}

/* ─────────────────────────────────────────────────────────────
   GLOBAL 3D CARDS — Elevated hover effect
───────────────────────────────────────────────────────────── */
.v8-room-card {
    transition: transform 0.45s cubic-bezier(0.34,1.3,0.64,1), box-shadow 0.4s ease !important;
    will-change: transform !important;
}
.v8-room-card:hover {
    transform: translateY(-14px) scale(1.02) !important;
    box-shadow: 0 32px 80px rgba(8,15,28,0.24), 0 12px 30px rgba(0,0,0,0.14) !important;
}

.experience-card,
.exp-card {
    transition: transform 0.45s cubic-bezier(0.34,1.3,0.64,1), box-shadow 0.4s ease !important;
}
.experience-card:hover,
.exp-card:hover {
    transform: translateY(-12px) !important;
    box-shadow: 0 28px 70px rgba(8,15,28,0.22) !important;
}

/* Pillar cards */
[data-reveal="fade-up"] > div {
    transition: transform 0.4s cubic-bezier(0.34,1.3,0.64,1), box-shadow 0.35s !important;
}

/* Section label 3D glow */
.section-label {
    text-shadow: 0 2px 12px rgba(201,168,76,0.4) !important;
    position: relative !important;
}

/* ─────────────────────────────────────────────────────────────
   HERO SLIDER — text 3D depth
───────────────────────────────────────────────────────────── */
.v8-hero__title,
.hero-slide__title,
.hero__title {
    text-shadow:
        0 4px 24px rgba(0,0,0,0.55),
        0 2px 8px  rgba(0,0,0,0.70),
        0 0  40px  rgba(0,0,0,0.20) !important;
}

.v8-hero__subtitle,
.hero-slide__subtitle,
.hero__subtitle {
    text-shadow: 0 2px 12px rgba(0,0,0,0.55) !important;
}

/* ─────────────────────────────────────────────────────────────
   BUTTONS — 3D shadow + lift
───────────────────────────────────────────────────────────── */
.btn--primary {
    box-shadow: 0 8px 24px rgba(201,168,76,0.35), 0 2px 8px rgba(0,0,0,0.15) !important;
    transition: transform 0.3s cubic-bezier(0.34,1.3,0.64,1),
                box-shadow 0.3s ease,
                background 0.3s ease !important;
}
.btn--primary:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 16px 40px rgba(201,168,76,0.45), 0 6px 16px rgba(0,0,0,0.18) !important;
}

.btn--secondary {
    box-shadow: 0 4px 16px rgba(0,0,0,0.12) !important;
    transition: transform 0.3s cubic-bezier(0.34,1.3,0.64,1), box-shadow 0.3s !important;
}
.btn--secondary:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 10px 28px rgba(0,0,0,0.16) !important;
}

/* ─────────────────────────────────────────────────────────────
   ABOUT SNIPPET IMAGE — full cover + depth
───────────────────────────────────────────────────────────── */
.about-snippet__image {
    position: relative !important;
    border-radius: var(--radius-lg, 16px) !important;
    overflow: visible !important;
}

.about-snippet__image img {
    width: 100% !important;
    height: 100% !important;
    min-height: 400px !important;
    object-fit: cover !important;
    border-radius: var(--radius-lg, 16px) !important;
    box-shadow: var(--v19-shadow-deep) !important;
    display: block !important;
}

/* Decorative frame border behind image */
.about-snippet__image::after {
    content: '';
    position: absolute;
    inset: -10px -10px -10px 10px;
    border: 2px solid rgba(201,168,76,0.25);
    border-radius: 20px;
    pointer-events: none;
    z-index: -1;
}

/* ─────────────────────────────────────────────────────────────
   GALLERY ITEMS — 3D hover
───────────────────────────────────────────────────────────── */
.gallery-item {
    transition: transform 0.4s cubic-bezier(0.34,1.3,0.64,1),
                box-shadow 0.4s ease !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    will-change: transform !important;
}
.gallery-item:hover {
    transform: translateY(-10px) scale(1.02) !important;
    box-shadow: 0 24px 60px rgba(0,0,0,0.22) !important;
    z-index: 2 !important;
    position: relative !important;
}

.gallery-item__img-wrap img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    transition: transform 0.6s ease !important;
    display: block !important;
}

/* ─────────────────────────────────────────────────────────────
   STAT ITEMS — 3D entrance + number glow
───────────────────────────────────────────────────────────── */
.stat-number {
    text-shadow: 0 4px 24px rgba(201,168,76,0.5),
                 0 2px 8px  rgba(201,168,76,0.35) !important;
}

.stat-item {
    transition: transform 0.4s cubic-bezier(0.34,1.3,0.64,1) !important;
}
.stat-item:hover {
    transform: translateY(-6px) scale(1.04) !important;
}

/* ─────────────────────────────────────────────────────────────
   FOOTER — 3D lift shadow at top edge
───────────────────────────────────────────────────────────── */
.site-footer,
footer {
    box-shadow: 0 -8px 40px rgba(0,0,0,0.25) !important;
    position: relative !important;
    z-index: 2 !important;
}

/* ─────────────────────────────────────────────────────────────
   HERO SECTION full image — ensure 100% coverage
───────────────────────────────────────────────────────────── */
.v8-hero,
.hero-section,
.site-hero {
    width: 100% !important;
    max-width: 100vw !important;
    overflow: hidden !important;
}

.v8-hero__slide,
.hero-slide {
    width: 100% !important;
}

.v8-hero__bg,
.v8-hero__bg img,
.hero-slide__bg,
.hero-slide__bg img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
}

/* ─────────────────────────────────────────────────────────────
   ANIMATIONS — global scroll-in polish
───────────────────────────────────────────────────────────── */
@keyframes v19FadeUp {
    0%   { opacity: 0; transform: translateY(32px); }
    100% { opacity: 1; transform: translateY(0); }
}
@keyframes v19ScaleIn {
    0%   { opacity: 0; transform: scale(0.88); }
    100% { opacity: 1; transform: scale(1); }
}
@keyframes v19FadeLeft {
    0%   { opacity: 0; transform: translateX(-32px); }
    100% { opacity: 1; transform: translateX(0); }
}
@keyframes v19FadeRight {
    0%   { opacity: 0; transform: translateX(32px); }
    100% { opacity: 1; transform: translateX(0); }
}

/* ─────────────────────────────────────────────────────────────
   HEADER — 3D glass shadow on scroll
───────────────────────────────────────────────────────────── */
.site-header.header--scrolled {
    box-shadow: 0 4px 32px rgba(0,0,0,0.28), 0 1px 8px rgba(0,0,0,0.20) !important;
}

/* ─────────────────────────────────────────────────────────────
   SECTION DIVIDERS — enhanced gold shimmer
───────────────────────────────────────────────────────────── */
.gold-divider {
    box-shadow: 0 2px 12px rgba(201,168,76,0.3) !important;
}

/* ─────────────────────────────────────────────────────────────
   AMENITY CARDS — 3D hover
───────────────────────────────────────────────────────────── */
.amenity-card {
    transition: transform 0.4s cubic-bezier(0.34,1.56,0.64,1),
                box-shadow 0.35s ease !important;
    will-change: transform !important;
}
.amenity-card:hover {
    transform: translateY(-12px) rotate(-0.5deg) !important;
    box-shadow: 0 24px 56px rgba(8,15,28,0.14), 0 8px 20px rgba(0,0,0,0.10) !important;
}
.amenity-icon {
    transition: transform 0.3s cubic-bezier(0.34,1.56,0.64,1) !important;
    display: inline-block !important;
}
.amenity-card:hover .amenity-icon {
    transform: scale(1.2) rotate(5deg) !important;
}

/* ─────────────────────────────────────────────────────────────
   RESPONSIVE — 100% correct at all sizes
───────────────────────────────────────────────────────────── */
@media (max-width: 1024px) {
    .about-badge-3d {
        left: -0.5rem !important;
        bottom: -0.5rem !important;
    }
}

@media (max-width: 768px) {
    /* Subpage hero text adjustments */
    .page-hero-title::after { display: none !important; }

    /* Badge stays inside on mobile */
    .about-badge-3d {
        width: 100px !important;
        height: 100px !important;
        bottom: -0.5rem !important;
        left: 0.5rem !important;
        border-radius: 14px !important;
    }
    .about-badge-3d__year {
        font-size: 2rem !important;
    }
    .about-badge-3d__est,
    .about-badge-3d__sub,
    .about-badge-3d__word {
        font-size: 0.5rem !important;
    }

    /* Cards — reduce 3D on small screen */
    .v8-room-card:hover {
        transform: translateY(-6px) !important;
    }
    .gallery-item:hover {
        transform: translateY(-4px) !important;
    }

    /* Hero image — full cover on mobile */
    .page-hero {
        min-height: 320px !important;
    }
    .page-hero-bg {
        inset: 0 !important;
    }
    .page-hero-bg img {
        animation: v19HeroBgZoom 1.6s cubic-bezier(0.22,1,0.36,1) forwards !important;
    }

    /* Hero entrance on mobile — slightly faster */
    .page-hero .page-hero-title {
        animation-duration: 0.7s !important;
    }
}

@media (max-width: 480px) {
    .about-badge-3d {
        width: 84px !important;
        height: 84px !important;
        border-radius: 12px !important;
    }
    .about-badge-3d__year {
        font-size: 1.65rem !important;
    }
    .stat-number {
        font-size: 2.5rem !important;
    }
}

/* ─────────────────────────────────────────────────────────────
   REDUCED MOTION OVERRIDE
───────────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
    .about-badge-3d,
    .about-badge-3d__glow,
    .page-hero .section-label,
    .page-hero .page-hero-title,
    .page-hero .page-hero-subtitle,
    .page-hero-bg img {
        animation: none !important;
        transform: none !important;
    }
    .about-badge-3d {
        transform: rotate(-3deg) !important;
    }
}

/* ── design-v21.css (19,535b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v21
   BASE: v19 (all content safe)
   ADDED: gradient text (surgical selectors only), customizer fix,
          mobile menu (uses .is-open), gallery fix, subpage hero anim
   RULE: -webkit-text-fill-color: transparent ONLY on named classes
         NEVER on bare h2, h3, p, li, span, div
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   ROOT TOKENS
───────────────────────────────────────────────────────────── */
:root {
  --g-gold:       linear-gradient(135deg,#f5d787 0%,#c9a84c 45%,#e8c96a 75%,#f5d787 100%);
  --g-gold-text:  linear-gradient(135deg,#c9a84c 0%,#f5d787 50%,#c9a84c 100%);
  --g-navy-gold:  linear-gradient(135deg,#0d2237 0%,#1a3a5c 45%,#c9a84c 100%);
  --g-hero-text:  linear-gradient(135deg,#fff8e7 0%,#f5d787 40%,#c9a84c 70%,#fff8e7 100%);
  --s-card:       0 18px 56px rgba(8,15,28,.13), 0 5px 16px rgba(8,15,28,.08);
  --s-card-hover: 0 32px 80px rgba(8,15,28,.21), 0 10px 28px rgba(8,15,28,.12);
  --s-gold:       0 8px 30px rgba(201,168,76,.34), 0 2px 8px rgba(201,168,76,.18);
  --s-gold-lg:    0 16px 52px rgba(201,168,76,.44), 0 6px 18px rgba(201,168,76,.24);
  --ease-spring:  cubic-bezier(.34,1.56,.64,1);
  --ease-out:     cubic-bezier(.22,1,.36,1);
}

/* ─────────────────────────────────────────────────────────────
   GRADIENT TEXT — SURGICAL (only named classes, never bare tags)
───────────────────────────────────────────────────────────── */

/* Shimmer animation */
@keyframes v21Shimmer {
  0%   { background-position: 0%   center; }
  50%  { background-position: 150% center; }
  100% { background-position: 0%   center; }
}

/* Section titles — dark bg: gold shimmer */
.section--dark .section-title,
.virtual-tour-section .section-title {
  background: var(--g-hero-text) !important;
  background-size: 200% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v21Shimmer 6s linear infinite !important;
}

/* Section titles — light/alt bg: navy→gold */
.section-title,
.page-hero-title {
  background: var(--g-navy-gold) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  filter: drop-shadow(0 2px 8px rgba(0,0,0,.10)) !important;
}

/* Dark sections override the above */
.section--dark .section-title {
  background: var(--g-hero-text) !important;
  background-size: 200% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  filter: none !important;
}

/* Page hero titles: gold shimmer */
.page-hero .page-hero-title {
  background: var(--g-hero-text) !important;
  background-size: 200% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v21Shimmer 7s linear infinite !important;
  filter: drop-shadow(0 3px 16px rgba(0,0,0,.45)) !important;
}

/* Hero slider title */
.v8-hero__title {
  background: var(--g-hero-text) !important;
  background-size: 200% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v21Shimmer 6s linear infinite !important;
  filter: drop-shadow(0 4px 24px rgba(0,0,0,.55)) !important;
}

/* Section labels: gold */
.section-label {
  background: var(--g-gold-text) !important;
  background-size: 200% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  filter: drop-shadow(0 1px 6px rgba(201,168,76,.35)) !important;
}

/* Dark bg labels: plain gold color (no clip needed, more compatible) */
.section--dark .section-label,
.page-hero .section-label {
  -webkit-text-fill-color: #f5d787 !important;
  color: #f5d787 !important;
  background: none !important;
  filter: drop-shadow(0 1px 8px rgba(201,168,76,.5)) !important;
  animation: none !important;
}

/* Stat numbers: gold shimmer */
.stat-number,
.stat-number span[data-counter] {
  background: var(--g-gold-text) !important;
  background-size: 200% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v21Shimmer 4s linear infinite !important;
  filter: drop-shadow(0 2px 14px rgba(201,168,76,.4)) !important;
}

/* Footer column titles only */
.footer-col-title {
  background: var(--g-gold-text) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
}

/* ─────────────────────────────────────────────────────────────
   SUBPAGE HERO — CINEMATIC ANIMATION
───────────────────────────────────────────────────────────── */
@keyframes v21BgEntrance  { from{transform:scale(1.22)} to{transform:scale(1.10)} }
@keyframes v21BgPan { 0%{transform:scale(1.10) translate(0%,0%)} 33%{transform:scale(1.12) translate(-1.5%,-1%)} 66%{transform:scale(1.10) translate(1%,.5%)} 100%{transform:scale(1.11) translate(.5%,-.5%)} }
@keyframes v21LabelIn { from{opacity:0;transform:translateX(-22px)} to{opacity:1;transform:translateX(0)} }
@keyframes v21TitleIn  { from{opacity:0;transform:translateY(30px) scale(.96)} to{opacity:1;transform:translateY(0) scale(1)} }
@keyframes v21SubIn    { from{opacity:0;transform:translateY(18px)} to{opacity:1;transform:translateY(0)} }
@keyframes v21LineIn   { from{width:0;opacity:0} to{width:70px;opacity:1} }

.page-hero {
  position: relative !important;
  overflow: hidden !important;
}
.page-hero::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom,rgba(6,16,30,.18) 0%,rgba(6,16,30,.52) 55%,rgba(6,16,30,.82) 100%);
  z-index: 1;
  pointer-events: none;
}
.page-hero-bg {
  position: absolute !important;
  inset: -8% !important;
  z-index: 0 !important;
  overflow: hidden !important;
}
.page-hero-bg img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  animation: v21BgEntrance 1.4s var(--ease-out) forwards,
             v21BgPan 24s 1.4s ease-in-out infinite alternate !important;
  will-change: transform !important;
}
.page-hero-content {
  position: relative !important;
  z-index: 2 !important;
}

/* Text entrances */
.page-hero .section-label {
  animation: v21LabelIn .7s .35s var(--ease-out) both !important;
  display: inline-block !important;
}
.page-hero .page-hero-title {
  animation: v21TitleIn .9s .55s var(--ease-out) both,
             v21Shimmer 7s 1.5s linear infinite !important;
}
.page-hero .page-hero-subtitle {
  animation: v21SubIn .8s .78s var(--ease-out) both !important;
  color: rgba(255,255,255,.88) !important;
  text-shadow: 0 2px 12px rgba(0,0,0,.5) !important;
}

/* Gold underline after title */
.page-hero-title::after {
  content: '';
  display: block;
  height: 2px;
  background: linear-gradient(90deg,#c9a84c,#f5d787,transparent);
  border-radius: 2px;
  margin-top: .55rem;
  animation: v21LineIn .7s 1.2s var(--ease-out) both !important;
}

/* ─────────────────────────────────────────────────────────────
   MOBILE MENU — .is-open based (matches new mobile-menu.js)
   Ensures nav is visible when .is-open is present
───────────────────────────────────────────────────────────── */
@media (max-width: 768px) {
  #main-navigation {
    display: block !important;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 82vw !important;
    max-width: 320px !important;
    height: 100vh !important;
    overflow-y: auto !important;
    background: linear-gradient(160deg,#06101e 0%,#0d2237 60%,#061018 100%) !important;
    z-index: 10000000 !important;
    padding: 5rem 1.5rem 2rem !important;
    box-shadow: 8px 0 40px rgba(0,0,0,.6) !important;
    transform: translateX(-105%) !important;
    transition: transform .38s cubic-bezier(.22,1,.36,1) !important;
    will-change: transform !important;
    border-right: 1px solid rgba(201,168,76,.18) !important;
  }
  #main-navigation.is-open {
    transform: translateX(0) !important;
  }

  /* Nav links */
  #main-navigation .menu,
  #main-navigation ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: block !important;
  }
  #main-navigation li {
    display: block !important;
    border-bottom: 1px solid rgba(201,168,76,.10) !important;
  }
  #main-navigation li:last-child { border-bottom: none !important; }
  #main-navigation li a {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: .9rem 0 !important;
    color: rgba(255,255,255,.88) !important;
    font-size: 1rem !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    letter-spacing: .03em !important;
    transition: color .25s ease !important;
    -webkit-text-fill-color: rgba(255,255,255,.88) !important;
  }
  #main-navigation li a:hover,
  #main-navigation li.current-menu-item > a {
    color: #f5d787 !important;
    -webkit-text-fill-color: #f5d787 !important;
  }

  /* Submenu */
  #main-navigation .sub-menu {
    display: none !important;
    padding-left: 1rem !important;
    background: rgba(255,255,255,.04) !important;
    border-radius: 8px !important;
    margin-bottom: .5rem !important;
  }
  #main-navigation li.sub-open > .sub-menu {
    display: block !important;
  }
  #main-navigation .sub-menu li {
    border-bottom: 1px solid rgba(255,255,255,.06) !important;
  }
  #main-navigation .sub-menu li a {
    font-size: .9rem !important;
    padding: .7rem 0 !important;
    color: rgba(255,255,255,.7) !important;
    -webkit-text-fill-color: rgba(255,255,255,.7) !important;
  }

  /* Toggle stays visible */
  .mobile-menu-toggle {
    display: flex !important;
    z-index: 10000002 !important;
    position: relative !important;
  }
  .mobile-nav-close {
    display: none;
    position: fixed !important;
    top: 1rem !important;
    right: 1rem !important;
    z-index: 10000010 !important;
    width: 44px !important;
    height: 44px !important;
    background: rgba(255,255,255,.1) !important;
    border: 1.5px solid rgba(255,255,255,.28) !important;
    border-radius: 50% !important;
    color: #fff !important;
    font-size: 1.3rem !important;
    cursor: pointer !important;
    align-items: center !important;
    justify-content: center !important;
  }
}

/* ─────────────────────────────────────────────────────────────
   BUTTONS — gold gradient
───────────────────────────────────────────────────────────── */
.btn--primary,
.header-book-btn {
  background: var(--g-gold) !important;
  background-size: 200% auto !important;
  color: #0d2237 !important;
  box-shadow: var(--s-gold) !important;
  transition: transform .3s var(--ease-spring), box-shadow .3s, background-position .4s !important;
  font-weight: 700 !important;
}
.btn--primary:hover,
.header-book-btn:hover {
  background-position: right center !important;
  transform: translateY(-4px) scale(1.03) !important;
  box-shadow: var(--s-gold-lg) !important;
  color: #06101e !important;
}
.btn--secondary {
  transition: transform .3s var(--ease-spring), box-shadow .3s, border-color .3s !important;
}
.btn--secondary:hover {
  transform: translateY(-3px) !important;
  border-color: #c9a84c !important;
  box-shadow: var(--s-gold) !important;
}

/* ─────────────────────────────────────────────────────────────
   CARDS — 3D hover (safe, no text rules)
───────────────────────────────────────────────────────────── */
.v8-room-card {
  transition: transform .42s var(--ease-spring), box-shadow .38s ease !important;
  will-change: transform !important;
}
.v8-room-card:hover {
  transform: translateY(-14px) scale(1.02) !important;
  box-shadow: var(--s-card-hover) !important;
}
.experience-card, .exp-card {
  transition: transform .42s var(--ease-spring), box-shadow .38s ease !important;
}
.experience-card:hover, .exp-card:hover {
  transform: translateY(-12px) scale(1.018) !important;
  box-shadow: var(--s-card-hover) !important;
}
.amenity-card {
  transition: transform .4s var(--ease-spring), box-shadow .35s ease !important;
  will-change: transform !important;
}
.amenity-card:hover {
  transform: translateY(-11px) rotate(-.3deg) !important;
  box-shadow: var(--s-card-hover) !important;
}
.amenity-icon {
  transition: transform .32s var(--ease-spring) !important;
  display: inline-block !important;
}
.amenity-card:hover .amenity-icon {
  transform: scale(1.2) rotate(6deg) !important;
}
.review-card, .testimonial-card {
  transition: transform .4s var(--ease-spring), box-shadow .35s ease !important;
}
.review-card:hover, .testimonial-card:hover {
  transform: translateY(-8px) !important;
  box-shadow: var(--s-card-hover) !important;
}
.home-gallery-item, .gallery-item {
  transition: transform .4s var(--ease-spring), box-shadow .35s ease !important;
  will-change: transform !important;
}
.home-gallery-item:hover, .gallery-item:hover {
  transform: translateY(-9px) scale(1.025) !important;
  box-shadow: 0 26px 64px rgba(8,15,28,.22) !important;
  position: relative !important;
  z-index: 3 !important;
}
.home-gallery-item img, .gallery-item img {
  transition: transform .55s var(--ease-out) !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}
.home-gallery-item:hover img, .gallery-item:hover img {
  transform: scale(1.06) !important;
}
.stat-item {
  transition: transform .38s var(--ease-spring) !important;
}
.stat-item:hover { transform: translateY(-6px) scale(1.03) !important; }

/* ─────────────────────────────────────────────────────────────
   ABOUT IMAGE — depth + frame
───────────────────────────────────────────────────────────── */
.about-snippet__image img {
  width: 100% !important;
  min-height: 400px !important;
  object-fit: cover !important;
  border-radius: 18px !important;
  box-shadow: var(--s-card-hover) !important;
  display: block !important;
  transition: transform .55s var(--ease-out) !important;
}
.about-snippet__image:hover img { transform: scale(1.022) !important; }
.about-snippet__image { position: relative !important; overflow: hidden !important; border-radius: 18px !important; }

/* ─────────────────────────────────────────────────────────────
   HEADER scrolled — glass shadow
───────────────────────────────────────────────────────────── */
.site-header.header--scrolled,
.site-header.scrolled {
  box-shadow: 0 4px 32px rgba(0,0,0,.28), 0 1px 8px rgba(0,0,0,.18) !important;
  backdrop-filter: blur(16px) saturate(150%) !important;
  -webkit-backdrop-filter: blur(16px) saturate(150%) !important;
}

/* ─────────────────────────────────────────────────────────────
   HERO images full coverage
───────────────────────────────────────────────────────────── */
.v8-hero, .hero-section { width:100% !important; overflow:hidden !important; }
.v8-hero__bg img, .hero-slide__bg img {
  width:100% !important; height:100% !important;
  object-fit:cover !important; object-position:center !important;
}

/* ─────────────────────────────────────────────────────────────
   RESPONSIVE
───────────────────────────────────────────────────────────── */
@media (max-width: 768px) {
  .page-hero-title::after { display: none !important; }
  .page-hero-bg img { animation: v21BgEntrance 1.4s var(--ease-out) forwards !important; }
  .v8-room-card:hover { transform: translateY(-6px) !important; }
  .stat-number, .stat-number span[data-counter] { font-size: 2rem !important; }
}

/* ─────────────────────────────────────────────────────────────
   REDUCED MOTION
───────────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  .page-hero .section-label,
  .page-hero .page-hero-title,
  .page-hero .page-hero-subtitle,
  .page-hero-bg img,
  .v8-hero__title,
  .section--dark .section-title,
  .stat-number, .stat-number span[data-counter] {
    animation: none !important;
  }
  .page-hero-bg img { transform: scale(1.06) !important; }
  /* Fallback solid colors so text stays visible */
  .v8-hero__title,
  .section--dark .section-title {
    -webkit-text-fill-color: #f5d787 !important;
    background: none !important;
  }
}

/* ── design-v22.css (33,834b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v22
   Brand: Navy #1a3a5c · Gold #d4af37 · Sunrise #f97316
   Fixes: Customizer no-reload, gallery 18-slot sync,
          hero image Ken Burns animation, 3D booking bar,
          advanced multi-stop gradients, Est.2008 badge v22
   ══════════════════════════════════════════════════════════════ */

:root {
  /* Brand palette */
  --v22-navy:        #0d1f35;
  --v22-navy-mid:    #1a3a5c;
  --v22-navy-light:  #2a5080;
  --v22-gold:        #d4af37;
  --v22-gold-light:  #f5d787;
  --v22-gold-dark:   #a07828;
  --v22-sunrise:     #f97316;
  --v22-rose:        #e8845a;

  /* Multi-stop brand gradients */
  --gv22-text-gold:  linear-gradient(135deg, #f5d787 0%, #d4af37 35%, #a07828 65%, #f5d787 100%);
  --gv22-text-hero:  linear-gradient(135deg, #ffffff 0%, #f5d787 30%, #d4af37 60%, #f5d787 100%);
  --gv22-bg-navy:    linear-gradient(160deg, #06101e 0%, #0d1f35 30%, #1a3a5c 65%, #0a1825 100%);
  --gv22-bg-sunrise: linear-gradient(135deg, #0d1f35 0%, #1a3a5c 40%, #2a5080 65%, #d4af37 100%);
  --gv22-gold-btn:   linear-gradient(135deg, #d4af37 0%, #f5d787 40%, #d4af37 70%, #a07828 100%);
  --gv22-card-hover: linear-gradient(135deg, rgba(212,175,55,.12) 0%, rgba(26,58,92,.08) 100%);
  --gv22-overlay:    linear-gradient(to bottom, rgba(6,16,30,.10) 0%, rgba(6,16,30,.50) 55%, rgba(13,31,53,.88) 100%);

  /* Shadows */
  --sv22-card:       0 20px 60px rgba(8,15,28,.14), 0 6px 18px rgba(8,15,28,.09);
  --sv22-card-hover: 0 36px 90px rgba(8,15,28,.22), 0 12px 32px rgba(8,15,28,.13);
  --sv22-gold:       0 8px 32px rgba(212,175,55,.38), 0 2px 8px rgba(212,175,55,.22);
  --sv22-gold-lg:    0 18px 56px rgba(212,175,55,.48), 0 6px 20px rgba(212,175,55,.28);
  --sv22-glass:      0 8px 40px rgba(8,15,28,.35), inset 0 1px 1px rgba(255,255,255,.12);

  --ease-spring: cubic-bezier(.34,1.56,.64,1);
  --ease-out:    cubic-bezier(.22,1,.36,1);
}

/* ─────────────────────────────────────────────────────────────
   GRADIENT TEXT — SURGICAL (only named classes)
───────────────────────────────────────────────────────────── */
@keyframes v22Shimmer {
  0%   { background-position: 0%   center; }
  50%  { background-position: 180% center; }
  100% { background-position: 0%   center; }
}

/* Dark-bg section titles: animated sunrise gold shimmer */
.section--dark .section-title,
.virtual-tour-section .section-title {
  background: var(--gv22-text-hero) !important;
  background-size: 250% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v22Shimmer 7s linear infinite !important;
}

/* Light-bg section titles: navy→gold brand gradient */
.section-title {
  background: linear-gradient(135deg, #0d1f35 0%, #1a3a5c 35%, #d4af37 75%, #f5d787 100%) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  filter: drop-shadow(0 2px 8px rgba(0,0,0,.10)) !important;
}

/* Page hero title: hero shimmer */
.page-hero .page-hero-title {
  background: var(--gv22-text-hero) !important;
  background-size: 250% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v22TitleIn .9s .55s var(--ease-out) both,
             v22Shimmer 8s 1.5s linear infinite !important;
  filter: drop-shadow(0 3px 18px rgba(0,0,0,.5)) !important;
}

/* Hero slider title */
.v8-hero__title {
  background: var(--gv22-text-hero) !important;
  background-size: 250% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v22Shimmer 7s linear infinite !important;
  filter: drop-shadow(0 4px 28px rgba(0,0,0,.6)) !important;
}

/* Section labels */
.section-label {
  background: var(--gv22-text-gold) !important;
  background-size: 200% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  filter: drop-shadow(0 1px 6px rgba(212,175,55,.38)) !important;
}
.section--dark .section-label,
.page-hero .section-label {
  -webkit-text-fill-color: #f5d787 !important;
  background: none !important;
  filter: drop-shadow(0 1px 10px rgba(212,175,55,.55)) !important;
  animation: none !important;
}

/* Stat numbers */
.stat-number, .stat-number span[data-counter] {
  background: var(--gv22-text-gold) !important;
  background-size: 200% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v22Shimmer 4.5s linear infinite !important;
  filter: drop-shadow(0 2px 16px rgba(212,175,55,.45)) !important;
}

/* Footer column titles */
.footer-col-title {
  background: var(--gv22-text-gold) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
}

/* ─────────────────────────────────────────────────────────────
   SECTION BACKGROUNDS — advanced multi-stop gradient
───────────────────────────────────────────────────────────── */
.section--dark {
  background: var(--gv22-bg-navy) !important;
  position: relative !important;
  overflow: hidden !important;
}
.section--dark::before {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse 80% 120% at 20% 50%, rgba(212,175,55,.07) 0%, transparent 65%),
              radial-gradient(ellipse 60% 80%  at 80% 20%, rgba(249,115,22,.05) 0%, transparent 60%);
  pointer-events: none;
  z-index: 0;
}
.section--dark > * { position: relative; z-index: 1; }

.section--alt {
  background: linear-gradient(160deg, #f8f5ee 0%, #fdfaf3 50%, #f5f0e8 100%) !important;
}

/* ─────────────────────────────────────────────────────────────
   HERO IMAGE — Ken Burns animation (NEW)
───────────────────────────────────────────────────────────── */
@keyframes v22KenBurns1 {
  0%   { transform: scale(1.18) translate(2%,    1%  ); }
  100% { transform: scale(1.06) translate(-1.5%, -1% ); }
}
@keyframes v22KenBurns2 {
  0%   { transform: scale(1.15) translate(-2%, -1%); }
  100% { transform: scale(1.06) translate(1.5%,  1%); }
}
@keyframes v22KenBurns3 {
  0%   { transform: scale(1.20) translate(0%,   2%); }
  100% { transform: scale(1.06) translate(0%,  -1%); }
}

/* Apply to hero slides — JS assigns active class */
.v8-hero__slide img,
.v8-hero__bg img,
.hero-slide__bg img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  transform-origin: center center !important;
  will-change: transform !important;
}

/* Each slide gets its own Ken Burns direction when active */
.v8-hero__slide.is-active img,
.v8-hero__slide[data-index="0"].is-active img {
  animation: v22KenBurns1 10s ease-in-out forwards !important;
}
.v8-hero__slide[data-index="1"].is-active img {
  animation: v22KenBurns2 10s ease-in-out forwards !important;
}
.v8-hero__slide[data-index="2"].is-active img,
.v8-hero__slide[data-index="3"].is-active img,
.v8-hero__slide[data-index="4"].is-active img {
  animation: v22KenBurns3 10s ease-in-out forwards !important;
}

/* Gradient overlay on hero */
.v8-hero__slide::after,
.hero-slide::after {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background: var(--gv22-overlay) !important;
  z-index: 1 !important;
  pointer-events: none !important;
}
.v8-hero__content, .hero-slide__content { z-index: 2 !important; }

/* ─────────────────────────────────────────────────────────────
   SUBPAGE HERO — cinematic animation + Ken Burns
───────────────────────────────────────────────────────────── */
@keyframes v22HeroBgKB { from{transform:scale(1.22)} to{transform:scale(1.08)} }
@keyframes v22HeroPan  { 0%{transform:scale(1.08) translate(0%,0%)} 33%{transform:scale(1.10) translate(-1.5%,-1%)} 66%{transform:scale(1.09) translate(1%,.5%)} 100%{transform:scale(1.09) translate(.5%,-.5%)} }
@keyframes v22LabelIn  { from{opacity:0;transform:translateX(-24px)} to{opacity:1;transform:translateX(0)} }
@keyframes v22TitleIn  { from{opacity:0;transform:translateY(32px) scale(.96)} to{opacity:1;transform:translateY(0) scale(1)} }
@keyframes v22SubIn    { from{opacity:0;transform:translateY(20px)} to{opacity:1;transform:translateY(0)} }
@keyframes v22LineIn   { from{width:0;opacity:0} to{width:72px;opacity:1} }

.page-hero {
  position: relative !important;
  overflow: hidden !important;
}
.page-hero::after {
  content: '';
  position: absolute;
  inset: 0;
  background: var(--gv22-overlay);
  z-index: 1;
  pointer-events: none;
}
.page-hero-bg {
  position: absolute !important;
  inset: -8% !important;
  z-index: 0 !important;
  overflow: hidden !important;
}
.page-hero-bg img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  animation: v22HeroBgKB 1.6s var(--ease-out) forwards,
             v22HeroPan  26s 1.6s ease-in-out infinite alternate !important;
  will-change: transform !important;
}
.page-hero-content { position:relative !important; z-index:2 !important; }
.page-hero .section-label { animation: v22LabelIn .7s .35s var(--ease-out) both !important; display:inline-block !important; }
.page-hero .page-hero-subtitle {
  animation: v22SubIn .8s .78s var(--ease-out) both !important;
  color: rgba(255,255,255,.90) !important;
  text-shadow: 0 2px 14px rgba(0,0,0,.55) !important;
}
.page-hero-title::after {
  content: '';
  display: block;
  height: 2px;
  background: linear-gradient(90deg, var(--v22-gold), var(--v22-gold-light), var(--v22-sunrise), transparent);
  border-radius: 2px;
  margin-top: .55rem;
  animation: v22LineIn .7s 1.2s var(--ease-out) both !important;
}

/* ─────────────────────────────────────────────────────────────
   3D BOOKING BAR — glassmorphism
───────────────────────────────────────────────────────────── */
@keyframes v22BookingIn {
  from { opacity:0; transform:translateY(40px); }
  to   { opacity:1; transform:translateY(0); }
}

.v22-booking-bar {
  position: relative !important;
  overflow: hidden !important;
  padding: 4rem 0 !important;
  background: var(--gv22-bg-navy) !important;
}
.v22-booking-bar__bg-grad {
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse 80% 120% at 70% 50%, rgba(212,175,55,.10) 0%, transparent 65%),
              radial-gradient(ellipse 50% 80%  at 15% 30%, rgba(249,115,22,.07) 0%, transparent 60%);
  pointer-events: none;
}

.v22-booking-bar__wrap {
  display: flex;
  align-items: center;
  gap: 3rem;
  animation: v22BookingIn .85s var(--ease-out) both;
}

/* Left text */
.v22-booking-bar__text { flex: 0 0 auto; max-width: 360px; }
.v22-booking-bar__eyebrow {
  display: inline-block;
  font-size: .7rem;
  font-weight: 700;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--v22-gold-light) !important;
  -webkit-text-fill-color: var(--v22-gold-light) !important;
  margin-bottom: .5rem;
  filter: drop-shadow(0 1px 8px rgba(212,175,55,.5));
}
.v22-booking-bar__title {
  font-size: clamp(1.3rem, 2.5vw, 1.75rem) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  background: none !important;
  line-height: 1.25 !important;
  margin-bottom: .75rem !important;
  text-shadow: 0 2px 16px rgba(0,0,0,.45) !important;
}
.v22-booking-bar__sub {
  font-size: .85rem;
  color: rgba(255,255,255,.65) !important;
  -webkit-text-fill-color: rgba(255,255,255,.65) !important;
  line-height: 1.5;
  margin-bottom: 1rem;
}
.v22-booking-bar__badges { display:flex; gap:.6rem; flex-wrap:wrap; }

/* Glass booking card */
.v22-booking-card {
  flex: 1 1 auto;
  position: relative;
  border-radius: 20px;
  background: rgba(255,255,255,.06);
  backdrop-filter: blur(24px) saturate(160%);
  -webkit-backdrop-filter: blur(24px) saturate(160%);
  border: 1.5px solid rgba(212,175,55,.22);
  box-shadow: var(--sv22-glass);
  overflow: visible;
  transition: box-shadow .4s ease, border-color .4s ease;
}
.v22-booking-card:hover {
  box-shadow: 0 16px 60px rgba(8,15,28,.45), 0 0 0 1.5px rgba(212,175,55,.45), inset 0 1px 1px rgba(255,255,255,.15);
  border-color: rgba(212,175,55,.45);
}
.v22-booking-card__glow {
  position: absolute;
  inset: -30px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(212,175,55,.18) 0%, transparent 65%);
  pointer-events: none;
  z-index: -1;
  opacity: 0;
  transition: opacity .4s ease;
}
.v22-booking-card:hover .v22-booking-card__glow { opacity: 1; }

.v22-booking-card__inner {
  display: flex;
  align-items: stretch;
  gap: 0;
  padding: 0;
}

/* Individual field */
.v22-booking-field {
  flex: 1 1 0;
  display: flex;
  flex-direction: column;
  padding: 1.25rem 1.4rem;
  border-right: 1px solid rgba(212,175,55,.14);
  position: relative;
  transition: background .3s ease;
}
.v22-booking-field:last-of-type { border-right: none; }
.v22-booking-field:hover { background: rgba(212,175,55,.05); border-radius: 20px; }
.v22-booking-field--guests { flex: 0 0 140px; }

.v22-booking-field__label {
  display: flex;
  align-items: center;
  gap: .4rem;
  font-size: .65rem;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--v22-gold-light) !important;
  margin-bottom: .5rem;
  cursor: pointer;
}
.v22-booking-field__label svg { color: var(--v22-gold); flex-shrink: 0; }

.v22-booking-field__input {
  background: transparent !important;
  border: none !important;
  outline: none !important;
  color: #fff !important;
  font-size: 1rem !important;
  font-weight: 500 !important;
  font-family: inherit !important;
  padding: 0 !important;
  width: 100% !important;
  cursor: pointer !important;
  color-scheme: dark !important;
}
.v22-booking-field__input::-webkit-calendar-picker-indicator {
  filter: invert(1) brightness(1.2);
  cursor: pointer;
  opacity: .7;
}
.v22-booking-field__select {
  -webkit-appearance: none;
  appearance: none;
}

/* Separator arrow */
.v22-booking-sep {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  flex-shrink: 0;
  font-size: 1.2rem;
  color: rgba(212,175,55,.55);
  align-self: center;
  pointer-events: none;
}

/* CTA button inside card */
.v22-booking-card__btn {
  flex-shrink: 0;
  align-self: stretch;
  display: flex !important;
  align-items: center !important;
  gap: .5rem !important;
  padding: 0 2rem !important;
  border-radius: 0 18px 18px 0 !important;
  font-size: .95rem !important;
  white-space: nowrap !important;
  background: var(--gv22-gold-btn) !important;
  background-size: 200% auto !important;
  color: #06101e !important;
  font-weight: 700 !important;
  box-shadow: none !important;
  border: none !important;
  transition: background-position .4s ease, transform .3s var(--ease-spring) !important;
}
.v22-booking-card__btn:hover {
  background-position: right center !important;
  color: #06101e !important;
}

/* ─────────────────────────────────────────────────────────────
   EST.2008 BADGE v22 — maximum 3D impact
───────────────────────────────────────────────────────────── */
@keyframes v22BadgeFloat {
  0%,100%{ transform: translateY(0)     rotate(-4deg) perspective(600px) rotateY(0deg);  }
  25%    { transform: translateY(-7px)  rotate(-4deg) perspective(600px) rotateY(5deg);  }
  75%    { transform: translateY(-4px)  rotate(-4deg) perspective(600px) rotateY(-5deg); }
}
@keyframes v22GlowPulse {
  0%,100%{ opacity:.4; transform:scale(1);    }
  50%    { opacity:.9; transform:scale(1.22); }
}
@keyframes v22BadgeIn {
  from { opacity:0; transform:translateY(30px) rotate(-4deg) scale(.80) perspective(600px); }
  to   { opacity:1; transform:translateY(0)    rotate(-4deg) scale(1)   perspective(600px); }
}

.about-badge-3d {
  position:    absolute !important;
  bottom:      -1.8rem !important;
  left:        -1.8rem !important;
  width:       138px !important;
  height:      138px !important;
  border-radius: 20px !important;
  background:  linear-gradient(145deg, #06101e 0%, #0d1f35 30%, #1a3a5c 60%, #0a1522 100%) !important;
  box-shadow:
    0 30px 70px rgba(0,0,0,.65),
    0 12px 28px rgba(0,0,0,.40),
    inset 0 1.5px 1px rgba(255,255,255,.10),
    inset 0 -1px 1px rgba(0,0,0,.40),
    0 0 0 1.5px rgba(212,175,55,.42) !important;
  transform:   rotate(-4deg) !important;
  animation:   v22BadgeIn .9s .8s var(--ease-spring) both,
               v22BadgeFloat 6s 1.8s ease-in-out infinite !important;
  overflow:    visible !important;
  z-index:     10 !important;
  perspective: 600px !important;
}

/* Inner gradient sheen */
.about-badge-3d::before {
  content:'';
  position: absolute;
  inset: 0;
  border-radius: 20px;
  background: linear-gradient(145deg,
    rgba(212,175,55,.22) 0%,
    rgba(245,215,135,.10) 40%,
    rgba(212,175,55,.04) 70%,
    transparent 100%);
  pointer-events: none;
}
/* Bottom edge catch-light */
.about-badge-3d::after {
  content:'';
  position: absolute;
  bottom: 0; left: 15%; right: 15%;
  height: 1.5px;
  background: linear-gradient(90deg, transparent, rgba(212,175,55,.6), transparent);
  border-radius: 0 0 20px 20px;
  pointer-events: none;
}

.about-badge-3d__glow {
  position: absolute;
  inset: -25px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(212,175,55,.40) 0%, rgba(249,115,22,.15) 40%, transparent 70%);
  pointer-events: none;
  animation: v22GlowPulse 3.5s ease-in-out infinite !important;
  z-index: -1 !important;
}

.about-badge-3d__inner {
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  height:100% !important;
  padding:.9rem !important;
  position:relative !important;
  z-index:2 !important;
}
.about-badge-3d__est {
  font-size:.62rem !important;
  font-weight:800 !important;
  letter-spacing:.25em !important;
  text-transform:uppercase !important;
  background: linear-gradient(135deg, #f5d787, #d4af37) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  filter: drop-shadow(0 1px 8px rgba(212,175,55,.7)) !important;
  line-height:1 !important;
  margin-bottom:2px !important;
}
.about-badge-3d__year {
  font-family:'Cormorant Garant','Playfair Display',serif !important;
  font-size:2.8rem !important;
  font-weight:800 !important;
  line-height:1 !important;
  background: linear-gradient(145deg, #ffffff 0%, #f5d787 30%, #d4af37 55%, #f97316 80%, #f5d787 100%) !important;
  background-size: 200% auto !important;
  -webkit-background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
  background-clip:text !important;
  animation: v22Shimmer 5s linear infinite !important;
  filter:drop-shadow(0 2px 10px rgba(212,175,55,.7)) !important;
  margin-bottom:4px !important;
}
.about-badge-3d__line {
  display:block !important;
  width:44px !important;
  height:1.5px !important;
  background:linear-gradient(90deg, transparent, #f5d787, #d4af37, transparent) !important;
  box-shadow: 0 0 8px rgba(212,175,55,.5) !important;
  margin:4px auto !important;
  border-radius:2px !important;
}
.about-badge-3d__sub {
  font-size:.54rem !important;
  font-weight:500 !important;
  letter-spacing:.14em !important;
  text-transform:uppercase !important;
  color:rgba(255,255,255,.55) !important;
  -webkit-text-fill-color:rgba(255,255,255,.55) !important;
  line-height:1 !important;
  margin-bottom:2px !important;
}
.about-badge-3d__word {
  font-size:.62rem !important;
  font-weight:800 !important;
  letter-spacing:.16em !important;
  text-transform:uppercase !important;
  background: linear-gradient(135deg, #ffffff, #f5d787) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  filter: drop-shadow(0 1px 6px rgba(212,175,55,.45)) !important;
  line-height:1 !important;
}

/* ─────────────────────────────────────────────────────────────
   BUTTONS — sunrise-gold gradient
───────────────────────────────────────────────────────────── */
.btn--primary, .header-book-btn {
  background: var(--gv22-gold-btn) !important;
  background-size: 200% auto !important;
  color: #06101e !important;
  box-shadow: var(--sv22-gold) !important;
  transition: transform .3s var(--ease-spring), box-shadow .3s, background-position .4s !important;
  font-weight: 700 !important;
}
.btn--primary:hover, .header-book-btn:hover {
  background-position: right center !important;
  transform: translateY(-4px) scale(1.03) !important;
  box-shadow: var(--sv22-gold-lg) !important;
  color: #06101e !important;
}
.btn--secondary {
  transition: transform .3s var(--ease-spring), box-shadow .3s, border-color .3s !important;
}
.btn--secondary:hover {
  transform: translateY(-3px) !important;
  border-color: var(--v22-gold) !important;
  box-shadow: var(--sv22-gold) !important;
}

/* ─────────────────────────────────────────────────────────────
   CARDS — 3D hover with gradient sheen
───────────────────────────────────────────────────────────── */
.v8-room-card, .experience-card, .exp-card,
.amenity-card, .review-card, .testimonial-card,
.home-gallery-item, .gallery-item {
  transition: transform .42s var(--ease-spring), box-shadow .38s ease !important;
  will-change: transform !important;
}
.v8-room-card:hover        { transform:translateY(-16px) scale(1.022) !important; box-shadow:var(--sv22-card-hover) !important; }
.experience-card:hover,
.exp-card:hover             { transform:translateY(-14px) scale(1.02) !important;  box-shadow:var(--sv22-card-hover) !important; }
.amenity-card:hover         { transform:translateY(-12px) rotate(-.4deg) !important; box-shadow:var(--sv22-card-hover) !important; }
.review-card:hover,
.testimonial-card:hover     { transform:translateY(-10px) !important; box-shadow:var(--sv22-card-hover) !important; }
.home-gallery-item:hover,
.gallery-item:hover         { transform:translateY(-10px) scale(1.03) !important; box-shadow:0 28px 72px rgba(8,15,28,.24) !important; position:relative !important; z-index:3 !important; }

.amenity-icon { transition:transform .32s var(--ease-spring) !important; display:inline-block !important; }
.amenity-card:hover .amenity-icon { transform:scale(1.22) rotate(6deg) !important; }
.stat-item { transition:transform .38s var(--ease-spring) !important; }
.stat-item:hover { transform:translateY(-7px) scale(1.04) !important; }

.home-gallery-item img, .gallery-item img {
  transition: transform .58s var(--ease-out) !important;
  width:100% !important; height:100% !important; object-fit:cover !important; display:block !important;
}
.home-gallery-item:hover img, .gallery-item:hover img { transform:scale(1.07) !important; }

/* ─────────────────────────────────────────────────────────────
   ABOUT IMAGE — depth frame + hover zoom
───────────────────────────────────────────────────────────── */
.about-snippet__image {
  position:relative !important;
  border-radius:20px !important;
  overflow:hidden !important;
}
.about-snippet__image img {
  width:100% !important; min-height:420px !important; object-fit:cover !important;
  border-radius:20px !important; box-shadow:var(--sv22-card-hover) !important;
  display:block !important; transition:transform .6s var(--ease-out) !important;
}
.about-snippet__image:hover img { transform:scale(1.025) !important; }
.about-snippet__image::after {
  content:'';
  position:absolute;
  inset:-12px -12px -12px 14px;
  border:2px solid rgba(212,175,55,.20);
  border-radius:24px;
  pointer-events:none;
  z-index:-1;
}

/* ─────────────────────────────────────────────────────────────
   HEADER — glass on scroll
───────────────────────────────────────────────────────────── */
.site-header.header--scrolled, .site-header.scrolled {
  box-shadow:0 4px 36px rgba(0,0,0,.32), 0 1px 10px rgba(0,0,0,.20) !important;
  backdrop-filter:blur(20px) saturate(160%) !important;
  -webkit-backdrop-filter:blur(20px) saturate(160%) !important;
}

/* ─────────────────────────────────────────────────────────────
   GOLD DIVIDER — animated sunrise shimmer
───────────────────────────────────────────────────────────── */
.gold-divider {
  background: linear-gradient(90deg, transparent 0%, #a07828 15%, #f5d787 40%, #d4af37 60%, #f97316 78%, transparent 100%) !important;
  background-size: 300% auto !important;
  animation: v22Shimmer 4s linear infinite !important;
  height: 1.5px !important;
  border:none !important; border-radius:2px !important;
  box-shadow: 0 2px 14px rgba(212,175,55,.28) !important;
}

/* ─────────────────────────────────────────────────────────────
   SCROLLBAR — premium gold
───────────────────────────────────────────────────────────── */
::-webkit-scrollbar { width:5px; height:5px; }
::-webkit-scrollbar-track { background:#06101e; }
::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, #a07828, #f5d787, #d4af37, #f97316);
  border-radius:4px;
}

/* ─────────────────────────────────────────────────────────────
   HERO + IMAGES — full coverage
───────────────────────────────────────────────────────────── */
.v8-hero, .hero-section { width:100% !important; overflow:hidden !important; }
.v8-hero__bg img, .hero-slide__bg img { width:100% !important; height:100% !important; object-fit:cover !important; }

/* ─────────────────────────────────────────────────────────────
   MOBILE MENU — .is-open system (from v21)
───────────────────────────────────────────────────────────── */
@media (max-width:768px) {
  #main-navigation {
    display:block !important;
    position:fixed !important; top:0 !important; left:0 !important;
    width:82vw !important; max-width:320px !important; height:100vh !important;
    overflow-y:auto !important;
    background: var(--gv22-bg-navy) !important;
    z-index:10000000 !important;
    padding:5rem 1.5rem 2rem !important;
    box-shadow:8px 0 48px rgba(0,0,0,.65) !important;
    transform:translateX(-105%) !important;
    transition:transform .38s var(--ease-out) !important;
    will-change:transform !important;
    border-right:1px solid rgba(212,175,55,.18) !important;
  }
  #main-navigation.is-open { transform:translateX(0) !important; }
  #main-navigation .menu, #main-navigation ul { list-style:none !important; padding:0 !important; margin:0 !important; display:block !important; }
  #main-navigation li { display:block !important; border-bottom:1px solid rgba(212,175,55,.10) !important; }
  #main-navigation li:last-child { border-bottom:none !important; }
  #main-navigation li a {
    display:flex !important; align-items:center !important; justify-content:space-between !important;
    padding:.9rem 0 !important; color:rgba(255,255,255,.88) !important;
    font-size:1rem !important; font-weight:500 !important; text-decoration:none !important;
    transition:color .25s !important; -webkit-text-fill-color:rgba(255,255,255,.88) !important;
  }
  #main-navigation li a:hover, #main-navigation li.current-menu-item > a {
    color:#f5d787 !important; -webkit-text-fill-color:#f5d787 !important;
  }
  #main-navigation .sub-menu { display:none !important; padding-left:1rem !important; background:rgba(255,255,255,.04) !important; border-radius:8px !important; margin-bottom:.5rem !important; }
  #main-navigation li.sub-open > .sub-menu { display:block !important; }
  #main-navigation .sub-menu li a { font-size:.9rem !important; padding:.7rem 0 !important; color:rgba(255,255,255,.7) !important; -webkit-text-fill-color:rgba(255,255,255,.7) !important; }
  .mobile-menu-toggle { display:flex !important; z-index:10000002 !important; }

  /* Booking bar stacks on mobile */
  .v22-booking-bar__wrap { flex-direction:column !important; gap:1.5rem !important; }
  .v22-booking-bar__text { max-width:100% !important; }
  .v22-booking-card__inner { flex-direction:column !important; }
  .v22-booking-field { border-right:none !important; border-bottom:1px solid rgba(212,175,55,.14) !important; }
  .v22-booking-sep { display:none !important; }
  .v22-booking-card__btn { border-radius:0 0 18px 18px !important; padding:1.2rem !important; justify-content:center !important; }
  .v22-booking-field--guests { flex:1 1 auto !important; }

  /* Hero/subpage */
  .page-hero { min-height:320px !important; }
  .page-hero-bg img { animation:v22HeroBgKB 1.6s var(--ease-out) forwards !important; }
  .page-hero-title::after { display:none !important; }
  .v8-room-card:hover { transform:translateY(-6px) !important; }
  .stat-number, .stat-number span[data-counter] { font-size:2rem !important; }

  /* Badge mobile */
  .about-badge-3d { width:104px !important; height:104px !important; bottom:-.5rem !important; left:.5rem !important; }
  .about-badge-3d__year { font-size:2rem !important; }
}

@media (max-width:480px) {
  .about-badge-3d { width:88px !important; height:88px !important; border-radius:14px !important; }
  .about-badge-3d__year { font-size:1.7rem !important; }
}

/* ─────────────────────────────────────────────────────────────
   REDUCED MOTION
───────────────────────────────────────────────────────────── */
@media (prefers-reduced-motion:reduce) {
  .page-hero .section-label, .page-hero .page-hero-title, .page-hero .page-hero-subtitle,
  .page-hero-bg img, .v8-hero__title, .section--dark .section-title,
  .stat-number, .stat-number span[data-counter],
  .v8-hero__slide.is-active img, .about-badge-3d, .about-badge-3d__glow,
  .about-badge-3d__year { animation:none !important; }
  .page-hero-bg img { transform:scale(1.06) !important; }
  .about-badge-3d { transform:rotate(-4deg) !important; }
  .v8-hero__title, .section--dark .section-title { -webkit-text-fill-color:#f5d787 !important; background:none !important; }
}

/* ── design-v23.css (46,163b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v23
   Brand: Navy #0d1f35 / #1a3a5c · Gold #d4af37 / #f5d787 · Sunrise #f97316
   Changes: Customizer fix, booking bar shortcode, preloader logo,
            advanced gradients, 3D menu, 3D gallery, live hero KenBurns,
            subpage hero live video-feel animation, better text gradients
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   CSS CUSTOM PROPERTIES
───────────────────────────────────────────────────────────── */
:root {
  --v23-navy-deep:   #060e1a;
  --v23-navy:        #0d1f35;
  --v23-navy-mid:    #1a3a5c;
  --v23-navy-light:  #2a5282;
  --v23-gold:        #d4af37;
  --v23-gold-light:  #f5d787;
  --v23-gold-pale:   #fdf3cc;
  --v23-gold-dark:   #a07828;
  --v23-sunrise:     #f97316;
  --v23-rose:        #e8845a;

  /* MULTI-STOP GRADIENTS */
  --gv23-gold-text:  linear-gradient(135deg,#fff8e7 0%,#f5d787 25%,#d4af37 50%,#a07828 75%,#f5d787 100%);
  --gv23-hero-text:  linear-gradient(135deg,#ffffff 0%,#fdf3cc 20%,#f5d787 45%,#d4af37 65%,#fff8e7 100%);
  --gv23-navy-text:  linear-gradient(135deg,#0d1f35 0%,#1a3a5c 30%,#d4af37 75%,#f5d787 100%);
  --gv23-bg-dark:    linear-gradient(160deg,#060e1a 0%,#0d1f35 28%,#1a3a5c 62%,#091624 100%);
  --gv23-bg-sunrise: linear-gradient(145deg,#0d1f35 0%,#1a3a5c 35%,#2a5282 60%,#0d2240 100%);
  --gv23-gold-btn:   linear-gradient(135deg,#d4af37 0%,#f5d787 35%,#d4af37 65%,#a07828 100%);
  --gv23-overlay:    linear-gradient(to bottom,rgba(6,14,26,.08) 0%,rgba(13,31,53,.48) 55%,rgba(6,14,26,.90) 100%);
  --gv23-card-sheen: linear-gradient(135deg,rgba(212,175,55,.10) 0%,rgba(245,215,135,.04) 50%,transparent 100%);

  /* SHADOWS */
  --sv23-card:       0 20px 60px rgba(8,15,28,.14),0 6px 18px rgba(8,15,28,.09);
  --sv23-card-hover: 0 40px 100px rgba(8,15,28,.24),0 14px 36px rgba(8,15,28,.14);
  --sv23-gold:       0 8px 32px rgba(212,175,55,.40),0 2px 8px rgba(212,175,55,.22);
  --sv23-gold-lg:    0 20px 60px rgba(212,175,55,.50),0 6px 20px rgba(212,175,55,.28);
  --sv23-glass:      0 8px 40px rgba(8,15,28,.38),inset 0 1px 1px rgba(255,255,255,.12),inset 0 -1px 1px rgba(0,0,0,.15);
  --sv23-text:       0 2px 16px rgba(0,0,0,.50),0 1px 4px rgba(0,0,0,.60);

  --ease-spring: cubic-bezier(.34,1.56,.64,1);
  --ease-out:    cubic-bezier(.22,1,.36,1);
  --ease-bounce: cubic-bezier(.34,1.8,.64,1);
}

/* ─────────────────────────────────────────────────────────────
   SHIMMER ANIMATION
───────────────────────────────────────────────────────────── */
@keyframes v23Shimmer {
  0%   { background-position:0%   center; }
  50%  { background-position:180% center; }
  100% { background-position:0%   center; }
}

/* ─────────────────────────────────────────────────────────────
   GRADIENT TEXT — SURGICAL SELECTORS ONLY
   (never bare h2/h3/p/span/div — prevents content disappearing)
───────────────────────────────────────────────────────────── */

/* Section titles on LIGHT backgrounds: navy→gold */
.section-title {
  background: var(--gv23-navy-text) !important;
  background-size: 200% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  filter: drop-shadow(0 2px 8px rgba(0,0,0,.08)) !important;
}

/* Section titles on DARK backgrounds: gold shimmer */
.section--dark .section-title,
.virtual-tour-section .section-title {
  background: var(--gv23-gold-text) !important;
  background-size: 250% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v23Shimmer 7s linear infinite !important;
  filter: drop-shadow(0 2px 14px rgba(212,175,55,.30)) !important;
}

/* Hero SLIDER title */
.v8-hero__title {
  background: var(--gv23-hero-text) !important;
  background-size: 250% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v23Shimmer 7s linear infinite !important;
  filter: drop-shadow(0 4px 28px rgba(0,0,0,.65)) !important;
}

/* Page-hero (subpages) title */
.page-hero .page-hero-title {
  background: var(--gv23-hero-text) !important;
  background-size: 250% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v23TitleIn .9s .55s var(--ease-out) both,
             v23Shimmer 8s 1.5s linear infinite !important;
  filter: drop-shadow(0 3px 20px rgba(0,0,0,.55)) !important;
}

/* Section labels */
.section-label {
  background: var(--gv23-gold-text) !important;
  background-size: 200% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  filter: drop-shadow(0 1px 6px rgba(212,175,55,.40)) !important;
}
.section--dark .section-label,
.page-hero .section-label {
  background: none !important;
  -webkit-text-fill-color: #f5d787 !important;
  color: #f5d787 !important;
  filter: drop-shadow(0 1px 10px rgba(212,175,55,.55)) !important;
  animation: none !important;
}

/* Stat numbers */
.stat-number,
.stat-number span[data-counter] {
  background: var(--gv23-gold-text) !important;
  background-size: 200% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v23Shimmer 4.5s linear infinite !important;
  filter: drop-shadow(0 2px 18px rgba(212,175,55,.45)) !important;
}

/* Footer column titles */
.footer-col-title {
  background: var(--gv23-gold-text) !important;
  background-size: 200% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
}

/* ─────────────────────────────────────────────────────────────
   SECTION BACKGROUNDS — advanced multi-stop
───────────────────────────────────────────────────────────── */
.section--dark {
  background: var(--gv23-bg-dark) !important;
  position: relative !important;
  overflow: hidden !important;
}
.section--dark::before {
  content: '';
  position: absolute; inset: 0; pointer-events: none; z-index: 0;
  background:
    radial-gradient(ellipse 70% 100% at 15% 50%,  rgba(212,175,55,.08) 0%, transparent 65%),
    radial-gradient(ellipse 55% 70%  at 85% 20%,  rgba(249,115,22,.06) 0%, transparent 60%),
    radial-gradient(ellipse 40% 50%  at 50% 100%, rgba(212,175,55,.05) 0%, transparent 55%);
}
.section--dark > .container,
.section--dark > div { position: relative !important; z-index: 1 !important; }

.section--alt {
  background: linear-gradient(160deg,#f8f5ee 0%,#fdfaf3 55%,#f5f0e8 100%) !important;
}

/* ─────────────────────────────────────────────────────────────
   HERO IMAGES — Ken Burns live cinematic animation
   Each active slide gets its own zoom+pan direction
───────────────────────────────────────────────────────────── */
@keyframes v23KB1 { from{transform:scale(1.20) translate( 2.5%,  1.5%)} to{transform:scale(1.06) translate(-1.5%,-1%  )} }
@keyframes v23KB2 { from{transform:scale(1.18) translate(-2.0%, -1.5%)} to{transform:scale(1.06) translate( 1.5%, 1%  )} }
@keyframes v23KB3 { from{transform:scale(1.22) translate( 0%,    2.5%)} to{transform:scale(1.06) translate( 0%,  -1.5%)} }
@keyframes v23KB4 { from{transform:scale(1.16) translate( 1.5%, -1.0%)} to{transform:scale(1.06) translate(-1%,   0.5%)} }

.v8-hero__bg,
.v8-hero__bg img,
.hero-slide__bg,
.hero-slide__bg img {
  width: 100% !important; height: 100% !important;
  object-fit: cover !important; object-position: center center !important;
  transform-origin: center center !important;
  will-change: transform !important;
}
.v8-hero__slide.is-active .v8-hero__bg img,
.v8-hero__slide.is-active .v8-hero__bg { animation: v23KB1 12s ease-in-out forwards !important; }
.v8-hero__slide[data-index="1"].is-active .v8-hero__bg img { animation: v23KB2 12s ease-in-out forwards !important; }
.v8-hero__slide[data-index="2"].is-active .v8-hero__bg img { animation: v23KB3 12s ease-in-out forwards !important; }
.v8-hero__slide[data-index="3"].is-active .v8-hero__bg img { animation: v23KB4 12s ease-in-out forwards !important; }
.v8-hero__slide[data-index="4"].is-active .v8-hero__bg img { animation: v23KB2 12s ease-in-out forwards !important; }

/* Gradient overlay on each hero slide */
.v8-hero__slide::after {
  content: '' !important;
  position: absolute !important; inset: 0 !important;
  background: var(--gv23-overlay) !important;
  z-index: 1 !important; pointer-events: none !important;
}
.v8-hero__content,
.v8-hero__slide > .container { z-index: 2 !important; position: relative !important; }

/* ─────────────────────────────────────────────────────────────
   SUBPAGE HERO — Live video-feel animation
   Multi-layer parallax: fast zoom burst → slow drift → subtle pulse
───────────────────────────────────────────────────────────── */
@keyframes v23HeroEntry { from{transform:scale(1.28)} to{transform:scale(1.12)} }
@keyframes v23HeroDrift {
  0%   { transform:scale(1.12) translate( 0%,    0%   ); }
  20%  { transform:scale(1.14) translate(-1.8%,  -1.2%); }
  45%  { transform:scale(1.12) translate( 1.2%,   0.6%); }
  70%  { transform:scale(1.13) translate(-0.8%,   1.0%); }
  100% { transform:scale(1.12) translate( 0.5%,  -0.5%); }
}
@keyframes v23LabelIn { from{opacity:0;transform:translateX(-26px) skewX(-4deg)} to{opacity:1;transform:translateX(0) skewX(0)} }
@keyframes v23TitleIn { from{opacity:0;transform:translateY(36px) scale(.95)} to{opacity:1;transform:translateY(0) scale(1)} }
@keyframes v23SubIn   { from{opacity:0;transform:translateY(22px)} to{opacity:1;transform:translateY(0)} }
@keyframes v23LineIn  { from{width:0;opacity:0} to{width:76px;opacity:1} }

/* Overlay shimmer pulse — gives "live video" feel */
@keyframes v23OverlayPulse {
  0%,100% { opacity: 1; }
  50%      { opacity: .88; }
}

.page-hero {
  position: relative !important;
  overflow: hidden !important;
}
.page-hero::after {
  content: '';
  position: absolute; inset: 0;
  background: var(--gv23-overlay);
  z-index: 1; pointer-events: none;
  animation: v23OverlayPulse 8s ease-in-out infinite !important;
}
.page-hero-bg {
  position: absolute !important;
  inset: -10% !important;
  z-index: 0 !important;
  overflow: hidden !important;
}
.page-hero-bg img {
  width: 100% !important; height: 100% !important;
  object-fit: cover !important; object-position: center center !important;
  animation: v23HeroEntry 1.6s var(--ease-out) forwards,
             v23HeroDrift 30s 1.6s ease-in-out infinite alternate !important;
  will-change: transform !important;
}
.page-hero-content { position: relative !important; z-index: 2 !important; }

/* Text entrances */
.page-hero .section-label    { animation: v23LabelIn .7s .35s var(--ease-out) both !important; display: inline-block !important; }
.page-hero .page-hero-subtitle {
  animation: v23SubIn .8s .80s var(--ease-out) both !important;
  color: rgba(255,255,255,.90) !important;
  text-shadow: 0 2px 14px rgba(0,0,0,.55) !important;
}
/* Gold animated underline */
.page-hero-title::after {
  content: '';
  display: block;
  height: 2.5px;
  background: linear-gradient(90deg,var(--v23-gold),var(--v23-gold-light),var(--v23-sunrise),transparent);
  border-radius: 2px;
  margin-top: .6rem;
  animation: v23LineIn .7s 1.25s var(--ease-out) both !important;
  box-shadow: 0 2px 12px rgba(212,175,55,.4);
}

/* ─────────────────────────────────────────────────────────────
   DESKTOP NAVIGATION — 3D enhanced
───────────────────────────────────────────────────────────── */
/* Nav items: 3D lift on hover */
.nav-menu > .menu-item > a {
  transition: color .25s ease,
              transform .3s var(--ease-spring),
              text-shadow .3s ease !important;
  transform-style: preserve-3d !important;
  will-change: transform !important;
}
.nav-menu > .menu-item > a:hover {
  transform: translateY(-2px) !important;
  text-shadow: 0 4px 16px rgba(212,175,55,.45) !important;
  color: var(--v23-gold-light) !important;
}
.nav-menu > .menu-item.current-menu-item > a,
.nav-menu > .menu-item.current-page-ancestor > a {
  color: var(--v23-gold-light) !important;
  text-shadow: 0 2px 12px rgba(212,175,55,.4) !important;
}

/* Gold underline: sunrise gradient + glow */
.nav-menu > .menu-item > a::after {
  background: linear-gradient(90deg,var(--v23-gold),var(--v23-gold-light),var(--v23-sunrise)) !important;
  height: 2px !important;
  box-shadow: 0 2px 8px rgba(212,175,55,.5) !important;
  transition: left .35s var(--ease-spring), right .35s var(--ease-spring) !important;
}

/* Dropdown — premium glass 3D */
.nav-menu .sub-menu {
  background: rgba(10,20,38,.94) !important;
  backdrop-filter: blur(28px) saturate(180%) !important;
  -webkit-backdrop-filter: blur(28px) saturate(180%) !important;
  border: 1px solid rgba(212,175,55,.18) !important;
  border-radius: 16px !important;
  box-shadow: 0 24px 70px rgba(6,14,26,.55),
              0 8px 24px rgba(6,14,26,.35),
              inset 0 1px 0 rgba(255,255,255,.08) !important;
  transform: translateX(-50%) translateY(-10px) perspective(800px) rotateX(-8deg) !important;
  transition: opacity .28s ease,
              transform .38s var(--ease-spring),
              visibility .28s !important;
}
.nav-menu > .menu-item > a::before {
  content: '' !important;
  position: absolute !important;
  top: 0; left: 0; right: 0; bottom: 0 !important;
  border-radius: 8px !important;
  background: rgba(212,175,55,.06) !important;
  opacity: 0 !important;
  transition: opacity .25s ease !important;
  pointer-events: none !important;
}
.nav-menu > .menu-item > a:hover::before { opacity: 1 !important; }

.nav-menu .sub-menu::before {
  background: linear-gradient(90deg,transparent,var(--v23-gold),var(--v23-sunrise),transparent) !important;
  box-shadow: 0 0 12px rgba(212,175,55,.3) !important;
}
.nav-menu .menu-item-has-children:hover > .sub-menu {
  transform: translateX(-50%) translateY(0) perspective(800px) rotateX(0deg) !important;
}
/* Dropdown link hover */
.nav-menu .sub-menu .menu-item > a {
  color: rgba(255,255,255,.78) !important;
  border-radius: 10px !important;
  transition: background .22s, color .22s, transform .25s var(--ease-spring), padding-left .22s !important;
}
.nav-menu .sub-menu .menu-item > a:hover {
  background: rgba(212,175,55,.12) !important;
  color: var(--v23-gold-light) !important;
  transform: translateX(6px) !important;
  padding-left: 1.2rem !important;
}

/* Header book button */
.header-book-btn {
  background: var(--gv23-gold-btn) !important;
  background-size: 200% auto !important;
  color: #06101e !important;
  box-shadow: var(--sv23-gold) !important;
  font-weight: 700 !important;
  transition: transform .3s var(--ease-spring), box-shadow .3s, background-position .4s !important;
}
.header-book-btn:hover {
  background-position: right center !important;
  transform: translateY(-3px) scale(1.04) !important;
  box-shadow: var(--sv23-gold-lg) !important;
}

/* ─────────────────────────────────────────────────────────────
   HOMEPAGE GALLERY — 3D ultra modern
───────────────────────────────────────────────────────────── */
@keyframes v23GalleryItemIn {
  from { opacity:0; transform:translateY(24px) scale(.96); }
  to   { opacity:1; transform:translateY(0)    scale(1);   }
}

.home-gallery-grid {
  perspective: 1200px !important;
}

.home-gallery-item {
  border-radius: 16px !important;
  overflow: hidden !important;
  position: relative !important;
  cursor: pointer !important;
  will-change: transform !important;
  transition:
    transform     .48s var(--ease-spring),
    box-shadow    .40s ease,
    border-color  .30s ease !important;
  border: 1.5px solid transparent !important;
  box-shadow: var(--sv23-card) !important;
  transform-style: preserve-3d !important;
  background: var(--v23-navy) !important;
}
.home-gallery-item::before {
  content: '' !important;
  position: absolute; inset: 0; z-index: 3; border-radius: 16px;
  background: var(--gv23-card-sheen);
  opacity: 0;
  transition: opacity .35s ease !important;
  pointer-events: none;
}
.home-gallery-item:hover {
  transform: translateY(-18px) scale(1.04) rotateX(2deg) !important;
  box-shadow: var(--sv23-card-hover),
              0 0 0 1.5px rgba(212,175,55,.55) !important;
  border-color: rgba(212,175,55,.55) !important;
  z-index: 5 !important;
}
.home-gallery-item:hover::before { opacity: 1 !important; }

.home-gallery-item img {
  width: 100% !important; height: 100% !important;
  object-fit: cover !important; display: block !important;
  transition: transform .65s var(--ease-out), filter .4s ease !important;
  will-change: transform !important;
}
.home-gallery-item:hover img {
  transform: scale(1.10) !important;
  filter: brightness(1.08) saturate(1.12) !important;
}

/* Overlay: gold gradient reveal on hover */
.home-gallery-item__overlay {
  position: absolute !important;
  inset: 0 !important; z-index: 2 !important;
  background: linear-gradient(to top,
    rgba(6,14,26,.82) 0%,
    rgba(13,31,53,.45) 40%,
    rgba(6,14,26,.10) 100%) !important;
  opacity: 0 !important;
  transition: opacity .38s ease !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.home-gallery-item:hover .home-gallery-item__overlay { opacity: 1 !important; }
.home-gallery-item__overlay svg {
  filter: drop-shadow(0 2px 12px rgba(212,175,55,.7)) !important;
  stroke: var(--v23-gold-light) !important;
  transform: scale(0.7) !important;
  transition: transform .38s var(--ease-spring) !important;
}
.home-gallery-item:hover .home-gallery-item__overlay svg {
  transform: scale(1) !important;
}

/* Full gallery page items */
.gallery-item {
  border-radius: 12px !important; overflow: hidden !important;
  will-change: transform !important;
  transition: transform .44s var(--ease-spring), box-shadow .38s ease !important;
}
.gallery-item:hover {
  transform: translateY(-12px) scale(1.032) !important;
  box-shadow: var(--sv23-card-hover) !important;
  z-index: 3 !important; position: relative !important;
}
.gallery-item img {
  transition: transform .58s var(--ease-out) !important;
  width: 100% !important; height: 100% !important; object-fit: cover !important;
}
.gallery-item:hover img { transform: scale(1.07) !important; }

/* ─────────────────────────────────────────────────────────────
   BOOKING BAR v23 — Ultra premium
───────────────────────────────────────────────────────────── */
@keyframes v23ParticleDrift {
  0%,100% { transform:translateY(0)   opacity:0.6; }
  50%     { transform:translateY(-20px); opacity:0.3; }
}
@keyframes v23BookingIn { from{opacity:0;transform:translateY(36px)} to{opacity:1;transform:translateY(0)} }

.v23-booking-bar {
  position: relative !important;
  overflow: hidden !important;
  padding: 5rem 0 !important;
  background: var(--gv23-bg-dark) !important;
}

/* Floating particles */
.v23-booking-bar__particles { position:absolute;inset:0;pointer-events:none;overflow:hidden; }
.v23-booking-bar__particles span {
  position: absolute;
  display: block;
  width: 3px; height: 3px;
  border-radius: 50%;
  background: rgba(212,175,55,.35);
  animation: v23ParticleDrift linear infinite;
}
.v23-booking-bar__particles span:nth-child(1)  { left:10%; top:20%; animation-duration:6s; animation-delay:0s; }
.v23-booking-bar__particles span:nth-child(2)  { left:25%; top:65%; animation-duration:8s; animation-delay:1s; width:4px;height:4px; }
.v23-booking-bar__particles span:nth-child(3)  { left:50%; top:30%; animation-duration:5s; animation-delay:2s; }
.v23-booking-bar__particles span:nth-child(4)  { left:70%; top:70%; animation-duration:9s; animation-delay:.5s; width:2px;height:2px; }
.v23-booking-bar__particles span:nth-child(5)  { left:85%; top:15%; animation-duration:7s; animation-delay:3s; }
.v23-booking-bar__particles span:nth-child(6)  { left:40%; top:80%; animation-duration:6s; animation-delay:1.5s; width:5px;height:5px;background:rgba(249,115,22,.20); }

/* Ambient glows */
.v23-booking-bar__glow-left {
  position:absolute;top:-30%;left:-10%;width:55%;height:160%;
  background:radial-gradient(ellipse,rgba(212,175,55,.10) 0%,transparent 65%);
  pointer-events:none;
}
.v23-booking-bar__glow-right {
  position:absolute;top:-20%;right:-10%;width:45%;height:140%;
  background:radial-gradient(ellipse,rgba(249,115,22,.07) 0%,transparent 65%);
  pointer-events:none;
}

.v23-booking-wrap {
  display: flex;
  align-items: center;
  gap: 3.5rem;
  position: relative;
  z-index: 2;
  animation: v23BookingIn .9s var(--ease-out) both;
}

/* LEFT: text */
.v23-booking-text { flex: 0 0 auto; max-width: 400px; }
.v23-booking-eyebrow {
  display: inline-block;
  font-size: .68rem; font-weight: 800;
  letter-spacing: .24em; text-transform: uppercase;
  background: var(--gv23-gold-text);
  background-size: 200% auto;
  -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
  animation: v23Shimmer 5s linear infinite;
  filter: drop-shadow(0 1px 8px rgba(212,175,55,.5));
  margin-bottom: .65rem;
}
.v23-booking-title {
  font-size: clamp(1.3rem,2.6vw,1.85rem) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  background: none !important;
  line-height: 1.25 !important;
  margin-bottom: .8rem !important;
  text-shadow: 0 2px 18px rgba(0,0,0,.50) !important;
}
.v23-booking-sub {
  font-size: .88rem; line-height: 1.55;
  color: rgba(255,255,255,.60) !important;
  -webkit-text-fill-color: rgba(255,255,255,.60) !important;
  margin-bottom: 1.4rem;
}
/* Trust badges */
.v23-booking-trust { display:flex; gap:.8rem; flex-wrap:wrap; }
.v23-trust-item {
  display: flex; align-items: center; gap: .35rem;
  font-size: .7rem; font-weight: 600; letter-spacing: .06em;
  color: rgba(245,215,135,.80) !important;
  -webkit-text-fill-color: rgba(245,215,135,.80) !important;
}
.v23-trust-item svg { stroke: var(--v23-gold); flex-shrink: 0; }

/* RIGHT: glass card */
.v23-booking-card {
  flex: 1 1 auto;
  position: relative;
  border-radius: 24px;
  background: rgba(255,255,255,.055);
  backdrop-filter: blur(28px) saturate(160%);
  -webkit-backdrop-filter: blur(28px) saturate(160%);
  border: 1.5px solid rgba(212,175,55,.22);
  box-shadow: var(--sv23-glass);
  overflow: hidden;
  transition: box-shadow .4s ease, border-color .4s ease, transform .4s var(--ease-spring);
}
.v23-booking-card:hover {
  border-color: rgba(212,175,55,.50) !important;
  box-shadow: 0 20px 70px rgba(6,14,26,.55),
              0 0 0 1.5px rgba(212,175,55,.45),
              inset 0 1px 0 rgba(255,255,255,.14) !important;
  transform: translateY(-4px) !important;
}
/* Shine sweep */
.v23-booking-card__shine {
  position: absolute; top: 0; left: -100%; width: 60%; height: 100%;
  background: linear-gradient(105deg,transparent 0%,rgba(255,255,255,.05) 50%,transparent 100%);
  pointer-events: none; z-index: 1;
  transition: left .6s ease;
}
.v23-booking-card:hover .v23-booking-card__shine { left: 140%; }

.v23-booking-card__glow {
  position: absolute; inset: -30px; border-radius: 50%;
  background: radial-gradient(circle,rgba(212,175,55,.18) 0%,rgba(249,115,22,.08) 45%,transparent 70%);
  pointer-events: none; z-index: 0; opacity: 0;
  transition: opacity .4s ease;
}
.v23-booking-card:hover .v23-booking-card__glow { opacity: 1; }

.v23-booking-card__inner { padding: 2rem 2.2rem; position: relative; z-index: 2; }

.v23-booking-card__header {
  display: flex; align-items: center; gap: .6rem;
  margin-bottom: 1.4rem;
  font-size: .72rem; font-weight: 800; letter-spacing: .18em; text-transform: uppercase;
  color: var(--v23-gold-light) !important;
  -webkit-text-fill-color: var(--v23-gold-light) !important;
  padding-bottom: 1rem;
  border-bottom: 1px solid rgba(212,175,55,.18);
}
.v23-booking-card__header svg { stroke: var(--v23-gold); flex-shrink: 0; }

/* Shortcode output styling */
.v23-booking-card__shortcode { /* HSR plugin styles its own fields — we just make them fit */ }
.v23-booking-card__shortcode input,
.v23-booking-card__shortcode select,
.v23-booking-card__shortcode textarea {
  background: rgba(255,255,255,.08) !important;
  border: 1.5px solid rgba(212,175,55,.22) !important;
  border-radius: 10px !important;
  color: #fff !important;
  padding: .75rem 1rem !important;
  width: 100% !important;
  font-family: inherit !important;
  transition: border-color .25s, box-shadow .25s !important;
}
.v23-booking-card__shortcode input:focus,
.v23-booking-card__shortcode select:focus {
  outline: none !important;
  border-color: var(--v23-gold) !important;
  box-shadow: 0 0 0 3px rgba(212,175,55,.18) !important;
}
.v23-booking-card__shortcode label {
  color: rgba(245,215,135,.75) !important;
  font-size: .72rem !important;
  font-weight: 700 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  -webkit-text-fill-color: rgba(245,215,135,.75) !important;
}
.v23-booking-card__shortcode button,
.v23-booking-card__shortcode [type="submit"] {
  background: var(--gv23-gold-btn) !important;
  background-size: 200% auto !important;
  color: #06101e !important;
  border: none !important;
  border-radius: 10px !important;
  font-weight: 700 !important;
  padding: .85rem 1.8rem !important;
  cursor: pointer !important;
  box-shadow: var(--sv23-gold) !important;
  transition: transform .3s var(--ease-spring), box-shadow .3s, background-position .4s !important;
  width: 100% !important;
  margin-top: .8rem !important;
}
.v23-booking-card__shortcode button:hover,
.v23-booking-card__shortcode [type="submit"]:hover {
  transform: translateY(-3px) !important;
  box-shadow: var(--sv23-gold-lg) !important;
  background-position: right center !important;
}

/* Fallback (when shortcode not active) */
.v23-booking-card__fallback-text {
  color: rgba(255,255,255,.65) !important;
  -webkit-text-fill-color: rgba(255,255,255,.65) !important;
  font-size: .95rem !important;
  line-height: 1.6 !important;
  margin-bottom: 1.4rem !important;
}
.v23-booking-card__btn {
  background: var(--gv23-gold-btn) !important;
  background-size: 200% auto !important;
  color: #06101e !important;
  font-weight: 700 !important;
  border-radius: 12px !important;
  display: flex !important;
  align-items: center !important;
  gap: .5rem !important;
  justify-content: center !important;
  width: 100% !important;
  padding: 1rem !important;
  box-shadow: var(--sv23-gold) !important;
  transition: transform .3s var(--ease-spring), box-shadow .3s, background-position .4s !important;
}
.v23-booking-card__btn:hover {
  background-position: right center !important;
  transform: translateY(-3px) !important;
  box-shadow: var(--sv23-gold-lg) !important;
  color: #06101e !important;
}

/* ─────────────────────────────────────────────────────────────
   EST.2008 BADGE — max 3D
───────────────────────────────────────────────────────────── */
@keyframes v23BadgeFloat {
  0%,100%{ transform:translateY(0)    rotate(-4deg) perspective(700px) rotateY(  0deg); }
  30%    { transform:translateY(-8px) rotate(-4deg) perspective(700px) rotateY(  6deg); }
  70%    { transform:translateY(-5px) rotate(-4deg) perspective(700px) rotateY( -5deg); }
}
@keyframes v23GlowPulse { 0%,100%{opacity:.45;transform:scale(1)} 50%{opacity:.9;transform:scale(1.22)} }
@keyframes v23BadgeIn   { from{opacity:0;transform:translateY(28px) rotate(-4deg) scale(.80)} to{opacity:1;transform:translateY(0) rotate(-4deg) scale(1)} }

.about-badge-3d {
  position:absolute !important; bottom:-1.8rem !important; left:-1.8rem !important;
  width:142px !important; height:142px !important; border-radius:22px !important;
  background:linear-gradient(145deg,#04090f 0%,#0d1f35 28%,#1a3a5c 58%,#091424 100%) !important;
  box-shadow:
    0 32px 80px rgba(0,0,0,.68),
    0 14px 32px rgba(0,0,0,.42),
    inset 0 1.5px 1px rgba(255,255,255,.10),
    inset 0 -1px 1px rgba(0,0,0,.45),
    0 0 0 1.5px rgba(212,175,55,.45) !important;
  transform:rotate(-4deg) !important;
  animation:v23BadgeIn .9s .8s var(--ease-spring) both,
            v23BadgeFloat 6s 1.8s ease-in-out infinite !important;
  overflow:visible !important; z-index:10 !important; perspective:700px !important;
}
.about-badge-3d::before {
  content:''; position:absolute; inset:0; border-radius:22px;
  background:linear-gradient(145deg,rgba(212,175,55,.22) 0%,rgba(245,215,135,.08) 42%,rgba(212,175,55,.03) 72%,transparent 100%);
  pointer-events:none;
}
.about-badge-3d::after {
  content:''; position:absolute; bottom:0; left:15%; right:15%; height:2px;
  background:linear-gradient(90deg,transparent,rgba(212,175,55,.65),rgba(249,115,22,.4),transparent);
  border-radius:0 0 22px 22px; pointer-events:none;
  box-shadow:0 0 10px rgba(212,175,55,.35);
}
.about-badge-3d__glow {
  position:absolute; inset:-28px; border-radius:50%;
  background:radial-gradient(circle,rgba(212,175,55,.42) 0%,rgba(249,115,22,.18) 38%,transparent 68%);
  pointer-events:none; animation:v23GlowPulse 3.5s ease-in-out infinite !important; z-index:-1 !important;
}
.about-badge-3d__inner {
  display:flex !important; flex-direction:column !important; align-items:center !important;
  justify-content:center !important; height:100% !important; padding:.9rem !important;
  position:relative !important; z-index:2 !important;
}
.about-badge-3d__est {
  font-size:.62rem !important; font-weight:800 !important; letter-spacing:.26em !important;
  text-transform:uppercase !important;
  background:linear-gradient(135deg,#f5d787,#d4af37) !important;
  -webkit-background-clip:text !important; -webkit-text-fill-color:transparent !important; background-clip:text !important;
  filter:drop-shadow(0 1px 8px rgba(212,175,55,.7)) !important;
  line-height:1 !important; margin-bottom:2px !important;
}
.about-badge-3d__year {
  font-family:'Cormorant Garant','Playfair Display',serif !important;
  font-size:2.9rem !important; font-weight:800 !important; line-height:1 !important;
  background:linear-gradient(145deg,#ffffff 0%,#f5d787 25%,#d4af37 52%,#f97316 78%,#f5d787 100%) !important;
  background-size:200% auto !important;
  -webkit-background-clip:text !important; -webkit-text-fill-color:transparent !important; background-clip:text !important;
  animation:v23Shimmer 5s linear infinite !important;
  filter:drop-shadow(0 2px 12px rgba(212,175,55,.75)) !important; margin-bottom:4px !important;
}
.about-badge-3d__line {
  display:block !important; width:46px !important; height:2px !important;
  background:linear-gradient(90deg,transparent,#f5d787,#d4af37,var(--v23-sunrise),transparent) !important;
  box-shadow:0 0 10px rgba(212,175,55,.55) !important; margin:4px auto !important; border-radius:2px !important;
}
.about-badge-3d__sub {
  font-size:.54rem !important; font-weight:500 !important; letter-spacing:.14em !important;
  text-transform:uppercase !important; color:rgba(255,255,255,.52) !important;
  -webkit-text-fill-color:rgba(255,255,255,.52) !important; line-height:1 !important; margin-bottom:2px !important;
}
.about-badge-3d__word {
  font-size:.63rem !important; font-weight:800 !important; letter-spacing:.17em !important;
  text-transform:uppercase !important;
  background:linear-gradient(135deg,#ffffff,#f5d787) !important;
  -webkit-background-clip:text !important; -webkit-text-fill-color:transparent !important; background-clip:text !important;
  filter:drop-shadow(0 1px 6px rgba(212,175,55,.48)) !important; line-height:1 !important;
}

/* ─────────────────────────────────────────────────────────────
   BUTTONS
───────────────────────────────────────────────────────────── */
.btn--primary {
  background: var(--gv23-gold-btn) !important;
  background-size: 200% auto !important;
  color: #06101e !important;
  box-shadow: var(--sv23-gold) !important;
  font-weight: 700 !important;
  transition: transform .3s var(--ease-spring), box-shadow .3s, background-position .4s !important;
}
.btn--primary:hover {
  background-position: right center !important;
  transform: translateY(-4px) scale(1.03) !important;
  box-shadow: var(--sv23-gold-lg) !important;
  color: #06101e !important;
}
.btn--secondary {
  transition: transform .3s var(--ease-spring), box-shadow .3s, border-color .3s !important;
}
.btn--secondary:hover {
  transform: translateY(-3px) !important;
  border-color: var(--v23-gold) !important;
  box-shadow: var(--sv23-gold) !important;
}

/* ─────────────────────────────────────────────────────────────
   ROOM CARDS — 3D hover
───────────────────────────────────────────────────────────── */
.v8-room-card {
  transition: transform .45s var(--ease-spring), box-shadow .4s ease !important;
  will-change: transform !important; border-radius: 18px !important;
}
.v8-room-card:hover {
  transform: translateY(-18px) scale(1.024) !important;
  box-shadow: var(--sv23-card-hover) !important;
}
.experience-card,.exp-card {
  transition: transform .44s var(--ease-spring), box-shadow .38s ease !important;
}
.experience-card:hover,.exp-card:hover { transform:translateY(-14px) scale(1.02) !important; box-shadow:var(--sv23-card-hover) !important; }
.amenity-card { transition:transform .4s var(--ease-spring), box-shadow .35s ease !important; }
.amenity-card:hover { transform:translateY(-12px) rotate(-.4deg) !important; box-shadow:var(--sv23-card-hover) !important; }
.amenity-icon { transition:transform .32s var(--ease-spring) !important; display:inline-block !important; }
.amenity-card:hover .amenity-icon { transform:scale(1.22) rotate(6deg) !important; }
.stat-item { transition:transform .38s var(--ease-spring) !important; }
.stat-item:hover { transform:translateY(-8px) scale(1.04) !important; }
.review-card,.testimonial-card { transition:transform .4s var(--ease-spring), box-shadow .35s ease !important; }
.review-card:hover,.testimonial-card:hover { transform:translateY(-10px) !important; box-shadow:var(--sv23-card-hover) !important; }

/* ─────────────────────────────────────────────────────────────
   ABOUT IMAGE
───────────────────────────────────────────────────────────── */
.about-snippet__image { position:relative !important; border-radius:20px !important; overflow:hidden !important; }
.about-snippet__image img {
  width:100% !important; min-height:420px !important; object-fit:cover !important;
  border-radius:20px !important; box-shadow:var(--sv23-card-hover) !important;
  display:block !important; transition:transform .6s var(--ease-out) !important;
}
.about-snippet__image:hover img { transform:scale(1.026) !important; }
.about-snippet__image::after {
  content:''; position:absolute; inset:-12px -12px -12px 14px;
  border:2px solid rgba(212,175,55,.20); border-radius:24px; pointer-events:none; z-index:-1;
}

/* ─────────────────────────────────────────────────────────────
   HEADER — glass on scroll
───────────────────────────────────────────────────────────── */
.site-header.header--scrolled,.site-header.scrolled {
  box-shadow:0 4px 40px rgba(0,0,0,.35),0 1px 10px rgba(0,0,0,.20) !important;
  backdrop-filter:blur(22px) saturate(165%) !important;
  -webkit-backdrop-filter:blur(22px) saturate(165%) !important;
}

/* ─────────────────────────────────────────────────────────────
   GOLD DIVIDER
───────────────────────────────────────────────────────────── */
.gold-divider {
  background:linear-gradient(90deg,transparent 0%,#a07828 15%,#f5d787 40%,#d4af37 58%,#f97316 76%,transparent 100%) !important;
  background-size:300% auto !important; animation:v23Shimmer 4s linear infinite !important;
  height:1.5px !important; border:none !important; border-radius:2px !important;
  box-shadow:0 2px 16px rgba(212,175,55,.30) !important;
}

/* ─────────────────────────────────────────────────────────────
   PRELOADER — brand colors
───────────────────────────────────────────────────────────── */
.v13-preloader {
  background: linear-gradient(160deg,#060e1a 0%,#0d1f35 50%,#060e1a 100%) !important;
}
.v13-preloader__text {
  background: var(--gv23-gold-text) !important;
  background-size: 200% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v23Shimmer 3s linear infinite !important;
}
.v13-preloader__fill {
  background: linear-gradient(90deg,var(--v23-gold),var(--v23-gold-light),var(--v23-sunrise)) !important;
  box-shadow: 0 0 12px rgba(212,175,55,.6) !important;
}
.v13-preloader__bar {
  background: rgba(255,255,255,.10) !important;
}

/* ─────────────────────────────────────────────────────────────
   SCROLLBAR
───────────────────────────────────────────────────────────── */
::-webkit-scrollbar { width:5px; height:5px; }
::-webkit-scrollbar-track { background:#060e1a; }
::-webkit-scrollbar-thumb {
  background:linear-gradient(180deg,#a07828,#f5d787,#d4af37,#f97316);
  border-radius:4px;
}

/* ─────────────────────────────────────────────────────────────
   MOBILE MENU — .is-open system
───────────────────────────────────────────────────────────── */
@media (max-width:768px) {
  #main-navigation {
    display:block !important; position:fixed !important; top:0 !important; left:0 !important;
    width:82vw !important; max-width:320px !important; height:100vh !important;
    overflow-y:auto !important;
    background:linear-gradient(160deg,#060e1a 0%,#0d1f35 55%,#060e1a 100%) !important;
    z-index:10000000 !important; padding:5rem 1.5rem 2rem !important;
    box-shadow:8px 0 50px rgba(0,0,0,.68) !important;
    border-right:1px solid rgba(212,175,55,.18) !important;
    transform:translateX(-105%) !important;
    transition:transform .38s var(--ease-out) !important;
    will-change:transform !important;
  }
  #main-navigation.is-open { transform:translateX(0) !important; }
  #main-navigation .menu,#main-navigation ul { list-style:none !important; padding:0 !important; margin:0 !important; display:block !important; }
  #main-navigation li { display:block !important; border-bottom:1px solid rgba(212,175,55,.10) !important; }
  #main-navigation li:last-child { border-bottom:none !important; }
  #main-navigation li a {
    display:flex !important; align-items:center !important; justify-content:space-between !important;
    padding:.9rem 0 !important; font-size:1rem !important; font-weight:500 !important;
    text-decoration:none !important; transition:color .25s, padding-left .25s !important;
    color:rgba(255,255,255,.88) !important; -webkit-text-fill-color:rgba(255,255,255,.88) !important;
  }
  #main-navigation li a:hover,#main-navigation li.current-menu-item>a {
    color:#f5d787 !important; -webkit-text-fill-color:#f5d787 !important; padding-left:.4rem !important;
  }
  #main-navigation .sub-menu { display:none !important; padding-left:1rem !important; background:rgba(255,255,255,.04) !important; border-radius:8px !important; margin-bottom:.5rem !important; }
  #main-navigation li.sub-open>.sub-menu { display:block !important; }
  #main-navigation .sub-menu li a { font-size:.9rem !important; padding:.7rem 0 !important; color:rgba(255,255,255,.7) !important; -webkit-text-fill-color:rgba(255,255,255,.7) !important; }
  .mobile-menu-toggle { display:flex !important; z-index:10000002 !important; }

  /* Booking bar stacks */
  .v23-booking-wrap { flex-direction:column !important; gap:2rem !important; }
  .v23-booking-text { max-width:100% !important; }
  .v23-booking-bar { padding:3.5rem 0 !important; }

  /* Subpage hero */
  .page-hero { min-height:320px !important; }
  .page-hero-bg img { animation:v23HeroEntry 1.6s var(--ease-out) forwards !important; }
  .page-hero-title::after { display:none !important; }

  /* Cards */
  .v8-room-card:hover { transform:translateY(-6px) !important; }
  .home-gallery-item:hover { transform:translateY(-6px) scale(1.02) !important; }
  .stat-number,.stat-number span[data-counter] { font-size:2rem !important; }

  /* Badge */
  .about-badge-3d { width:104px !important; height:104px !important; bottom:-.5rem !important; left:.5rem !important; }
  .about-badge-3d__year { font-size:2rem !important; }
}

@media (max-width:480px) {
  .about-badge-3d { width:88px !important; height:88px !important; border-radius:14px !important; }
  .about-badge-3d__year { font-size:1.7rem !important; }
}

/* ─────────────────────────────────────────────────────────────
   REDUCED MOTION
───────────────────────────────────────────────────────────── */
@media (prefers-reduced-motion:reduce) {
  .page-hero .section-label,.page-hero .page-hero-title,.page-hero .page-hero-subtitle,
  .page-hero-bg img,.page-hero::after,.v8-hero__title,.section--dark .section-title,
  .stat-number,.stat-number span[data-counter],
  .v8-hero__slide.is-active .v8-hero__bg img,
  .about-badge-3d,.about-badge-3d__glow,.about-badge-3d__year,
  .v23-booking-eyebrow,.v13-preloader__text { animation:none !important; }
  .page-hero-bg img { transform:scale(1.06) !important; }
  .about-badge-3d { transform:rotate(-4deg) !important; }
  .v8-hero__title,.section--dark .section-title {
    -webkit-text-fill-color:#f5d787 !important; background:none !important;
  }
}

/* ── design-v24.css (45,129b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v24
   Fixes: gallery thumbnail, subpage hero animation (real fix),
          booking section redesign, badge enhanced, gradients boosted
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   TOKENS
───────────────────────────────────────────────────────────── */
:root {
  --v24-navy:       #060e1a;
  --v24-navy2:      #0d1f35;
  --v24-navy3:      #1a3a5c;
  --v24-gold:       #d4af37;
  --v24-gold-lt:    #f5d787;
  --v24-gold-pale:  #fdf3cc;
  --v24-gold-dk:    #a07828;
  --v24-sunrise:    #f97316;
  --v24-white85:    rgba(255,255,255,.85);

  --gv24-gold:      linear-gradient(135deg,#fff8e7 0%,#f5d787 22%,#d4af37 48%,#a07828 72%,#f5d787 100%);
  --gv24-hero:      linear-gradient(135deg,#ffffff 0%,#fdf3cc 18%,#f5d787 42%,#d4af37 62%,#fff8e7 100%);
  --gv24-navy-gold: linear-gradient(135deg,#060e1a 0%,#0d1f35 25%,#1a3a5c 55%,#d4af37 82%,#f5d787 100%);
  --gv24-dark-bg:   linear-gradient(160deg,#060e1a 0%,#0d1f35 30%,#1a3a5c 65%,#080f1e 100%);
  --gv24-btn:       linear-gradient(135deg,#d4af37 0%,#f5d787 38%,#d4af37 68%,#a07828 100%);
  --gv24-overlay:   linear-gradient(to bottom,rgba(6,14,26,.05) 0%,rgba(13,31,53,.45) 50%,rgba(6,14,26,.88) 100%);

  --sv24-card:      0 20px 60px rgba(8,15,28,.15),0 6px 18px rgba(8,15,28,.09);
  --sv24-hover:     0 44px 110px rgba(8,15,28,.26),0 16px 40px rgba(8,15,28,.15);
  --sv24-gold:      0 8px 32px rgba(212,175,55,.42),0 2px 8px rgba(212,175,55,.24);
  --sv24-gold-lg:   0 22px 64px rgba(212,175,55,.52),0 8px 24px rgba(212,175,55,.30);
  --sv24-glass:     0 8px 40px rgba(8,15,28,.40),inset 0 1px 1px rgba(255,255,255,.13),inset 0 -1px 1px rgba(0,0,0,.18);

  --spring: cubic-bezier(.34,1.56,.64,1);
  --out:    cubic-bezier(.22,1,.36,1);
}

/* ─────────────────────────────────────────────────────────────
   SHIMMER
───────────────────────────────────────────────────────────── */
@keyframes v24Shimmer {
  0%   { background-position:0%   50%; }
  50%  { background-position:180% 50%; }
  100% { background-position:0%   50%; }
}
@keyframes v24Pulse   { 0%,100%{opacity:.45;transform:scale(1)}   50%{opacity:.92;transform:scale(1.24)} }
@keyframes v24Float   { 0%,100%{transform:translateY(0) rotate(-4deg) perspective(700px) rotateY(0deg)} 30%{transform:translateY(-9px) rotate(-4deg) perspective(700px) rotateY(6deg)} 70%{transform:translateY(-5px) rotate(-4deg) perspective(700px) rotateY(-5deg)} }
@keyframes v24BadgeIn { from{opacity:0;transform:translateY(30px) rotate(-4deg) scale(.78)} to{opacity:1;transform:translateY(0) rotate(-4deg) scale(1)} }

/* ─────────────────────────────────────────────────────────────
   GRADIENT TEXT (surgical — named classes only)
───────────────────────────────────────────────────────────── */
.section-title {
  background: var(--gv24-navy-gold) !important;
  background-size: 220% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v24Shimmer 9s linear infinite !important;
  filter: drop-shadow(0 2px 8px rgba(0,0,0,.10)) !important;
}
.section--dark .section-title,
.virtual-tour-section .section-title {
  background: var(--gv24-gold) !important;
  background-size: 240% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v24Shimmer 7s linear infinite !important;
  filter: drop-shadow(0 2px 16px rgba(212,175,55,.32)) !important;
}
.page-hero .page-hero-title {
  background: var(--gv24-hero) !important;
  background-size: 240% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v24HeroTitleIn .9s .55s var(--out) both,
             v24Shimmer 8s 1.5s linear infinite !important;
  filter: drop-shadow(0 3px 22px rgba(0,0,0,.58)) !important;
}
.v8-hero__title {
  background: var(--gv24-hero) !important;
  background-size: 240% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v24Shimmer 7s linear infinite !important;
  filter: drop-shadow(0 4px 30px rgba(0,0,0,.65)) !important;
}
.section-label {
  background: var(--gv24-gold) !important;
  background-size: 200% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  filter: drop-shadow(0 1px 7px rgba(212,175,55,.42)) !important;
}
.section--dark .section-label,
.page-hero .section-label {
  background: none !important;
  -webkit-text-fill-color: #f5d787 !important;
  color: #f5d787 !important;
  filter: drop-shadow(0 1px 12px rgba(212,175,55,.58)) !important;
  animation: none !important;
}
.stat-number,
.stat-number span[data-counter] {
  background: var(--gv24-gold) !important;
  background-size: 200% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v24Shimmer 4.5s linear infinite !important;
  filter: drop-shadow(0 2px 20px rgba(212,175,55,.48)) !important;
}
.footer-col-title {
  background: var(--gv24-gold) !important;
  background-size: 200% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
}

/* ─────────────────────────────────────────────────────────────
   SECTION BACKGROUNDS
───────────────────────────────────────────────────────────── */
.section--dark {
  background: var(--gv24-dark-bg) !important;
  position: relative !important; overflow: hidden !important;
}
.section--dark::before {
  content:''; position:absolute; inset:0; pointer-events:none; z-index:0;
  background:
    radial-gradient(ellipse 65% 110% at 12% 55%,  rgba(212,175,55,.09) 0%, transparent 65%),
    radial-gradient(ellipse 50% 65%  at 88% 18%,  rgba(249,115,22,.07) 0%, transparent 60%),
    radial-gradient(ellipse 38% 48%  at 50% 98%,  rgba(212,175,55,.06) 0%, transparent 55%);
}
.section--dark > .container,
.section--dark > div { position: relative !important; z-index: 1 !important; }
.section--alt {
  background: linear-gradient(160deg,#f8f5ee 0%,#fdfaf3 55%,#f5f0e8 100%) !important;
}

/* ─────────────────────────────────────────────────────────────
   HERO SLIDER — Ken Burns per slide
───────────────────────────────────────────────────────────── */
@keyframes v24KB1 { from{transform:scale(1.22) translate( 2.5%,  1.5%)} to{transform:scale(1.06) translate(-1.5%, -1%  )} }
@keyframes v24KB2 { from{transform:scale(1.19) translate(-2.0%, -1.5%)} to{transform:scale(1.06) translate( 1.5%,  1%  )} }
@keyframes v24KB3 { from{transform:scale(1.24) translate( 0%,    2.5%)} to{transform:scale(1.06) translate( 0%,   -1.5%)} }
@keyframes v24KB4 { from{transform:scale(1.17) translate( 1.5%, -1.0%)} to{transform:scale(1.06) translate(-1%,   0.5%)} }

.v8-hero__bg img, .hero-slide__bg img {
  width:100% !important; height:100% !important;
  object-fit:cover !important; object-position:center !important;
  will-change:transform !important;
}
.v8-hero__slide.is-active .v8-hero__bg img                   { animation:v24KB1 12s ease-in-out forwards !important; }
.v8-hero__slide[data-index="1"].is-active .v8-hero__bg img   { animation:v24KB2 12s ease-in-out forwards !important; }
.v8-hero__slide[data-index="2"].is-active .v8-hero__bg img   { animation:v24KB3 12s ease-in-out forwards !important; }
.v8-hero__slide[data-index="3"].is-active .v8-hero__bg img   { animation:v24KB4 12s ease-in-out forwards !important; }
.v8-hero__slide[data-index="4"].is-active .v8-hero__bg img   { animation:v24KB2 12s ease-in-out forwards !important; }

.v8-hero__slide::after {
  content:'' !important; position:absolute !important; inset:0 !important;
  background:var(--gv24-overlay) !important; z-index:1 !important; pointer-events:none !important;
}
.v8-hero__content,.v8-hero__slide>.container { z-index:2 !important; position:relative !important; }

/* ─────────────────────────────────────────────────────────────
   SUBPAGE HERO — REAL FIX + LIVE VIDEO ANIMATION
   Root cause: inset:-10% was fighting page-hero overflow:hidden
   and inline overlay div blocked CSS overlay
   Fix: explicit positioning, use .v24-hero-img class
───────────────────────────────────────────────────────────── */
@keyframes v24HeroEntry { from{transform:scale(1.30) translate(0%,0%)} to{transform:scale(1.12) translate(0%,0%)} }
@keyframes v24HeroDrift {
  0%   {transform:scale(1.12) translate(  0%,  0%)}
  15%  {transform:scale(1.14) translate(-1.8%,-1.2%)}
  35%  {transform:scale(1.12) translate( 1.2%, 0.6%)}
  55%  {transform:scale(1.13) translate(-0.6%, 1.1%)}
  75%  {transform:scale(1.12) translate( 0.9%,-0.8%)}
  100% {transform:scale(1.12) translate(-0.4%, 0.4%)}
}
@keyframes v24HeroOverlayPulse { 0%,100%{opacity:1} 50%{opacity:.86} }
@keyframes v24HeroLabelIn { from{opacity:0;transform:translateX(-28px) skewX(-5deg)} to{opacity:1;transform:translateX(0) skewX(0)} }
@keyframes v24HeroTitleIn { from{opacity:0;transform:translateY(38px) scale(.94)} to{opacity:1;transform:translateY(0) scale(1)} }
@keyframes v24HeroSubIn   { from{opacity:0;transform:translateY(24px)} to{opacity:1;transform:translateY(0)} }
@keyframes v24HeroLineIn  { from{width:0;opacity:0} to{width:80px;opacity:1} }

.page-hero {
  position: relative !important;
  overflow: hidden !important;
  isolation: isolate !important;
}

/* CSS overlay replaces the removed inline overlay divs */
.page-hero::after {
  content: '' !important;
  position: absolute !important; inset: 0 !important; z-index: 2 !important;
  background: var(--gv24-overlay) !important;
  pointer-events: none !important;
  animation: v24HeroOverlayPulse 9s ease-in-out infinite !important;
}

.page-hero-bg {
  position: absolute !important;
  /* Changed from inset:-10% to explicit overflow via clip */
  inset: 0 !important;
  z-index: 0 !important;
  overflow: visible !important;
}

/* THE ANIMATION TARGET — .v24-hero-img class added to all subpage hero imgs */
.page-hero-bg .v24-hero-img,
.page-hero-bg img {
  width: 108% !important;
  height: 108% !important;
  max-width: none !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
  margin: -4% !important;
  animation:
    v24HeroEntry 1.8s cubic-bezier(.12,.82,.3,1) forwards,
    v24HeroDrift 32s 1.8s ease-in-out infinite !important;
  will-change: transform !important;
  transform-origin: center center !important;
}

.page-hero-content {
  position: relative !important;
  z-index: 3 !important;
}

/* Text entrances */
.page-hero .section-label {
  animation: v24HeroLabelIn .75s .4s var(--out) both !important;
  display: inline-block !important;
}
.page-hero .page-hero-subtitle {
  animation: v24HeroSubIn .85s .82s var(--out) both !important;
  color: rgba(255,255,255,.90) !important;
  text-shadow: 0 2px 16px rgba(0,0,0,.58) !important;
}
.page-hero-title::after {
  content: '' !important;
  display: block !important;
  height: 2.5px !important;
  background: linear-gradient(90deg,var(--v24-gold),var(--v24-gold-lt),var(--v24-sunrise),transparent) !important;
  border-radius: 2px !important; margin-top: .6rem !important;
  animation: v24HeroLineIn .7s 1.3s var(--out) both !important;
  box-shadow: 0 2px 14px rgba(212,175,55,.42) !important;
}

/* ─────────────────────────────────────────────────────────────
   BOOKING SECTION v24 — Check Availability + Check Booking
───────────────────────────────────────────────────────────── */
@keyframes v24BookingIn { from{opacity:0;transform:translateY(40px)} to{opacity:1;transform:translateY(0)} }
@keyframes v24Particle  { 0%,100%{transform:translateY(0);opacity:.55} 50%{transform:translateY(-22px);opacity:.22} }
@keyframes v24ShineSwipe{ from{left:-100%} to{left:150%} }

.v23-booking-bar {
  position: relative !important; overflow: hidden !important;
  padding: 5rem 0 !important;
  background: var(--gv24-dark-bg) !important;
}
.v23-booking-bar__particles span { animation: v24Particle linear infinite !important; }

/* Two-column card layout */
.v23-booking-wrap {
  display: grid !important;
  grid-template-columns: 1fr 1.3fr !important;
  align-items: center !important;
  gap: 3rem !important;
  position: relative !important; z-index: 2 !important;
  animation: v24BookingIn .9s var(--out) both !important;
}

/* LEFT text — same as before */
.v23-booking-text { max-width: 420px !important; }
.v23-booking-eyebrow {
  display: inline-block !important;
  font-size: .7rem !important; font-weight: 800 !important;
  letter-spacing: .26em !important; text-transform: uppercase !important;
  background: var(--gv24-gold) !important;
  background-size: 200% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v24Shimmer 5s linear infinite !important;
  filter: drop-shadow(0 1px 10px rgba(212,175,55,.55)) !important;
  margin-bottom: .7rem !important;
}
.v23-booking-title {
  font-size: clamp(1.3rem,2.6vw,1.9rem) !important;
  color: #fff !important; -webkit-text-fill-color: #fff !important;
  background: none !important;
  line-height: 1.25 !important; margin-bottom: .85rem !important;
  text-shadow: 0 2px 20px rgba(0,0,0,.55) !important;
}
.v23-booking-sub {
  font-size: .9rem !important; line-height: 1.58 !important;
  color: rgba(255,255,255,.58) !important;
  -webkit-text-fill-color: rgba(255,255,255,.58) !important;
  margin-bottom: 1.5rem !important;
}
.v23-booking-trust { display:flex !important; gap:.85rem !important; flex-wrap:wrap !important; }
.v23-trust-item {
  display:flex !important; align-items:center !important; gap:.38rem !important;
  font-size:.72rem !important; font-weight:600 !important; letter-spacing:.07em !important;
  color:rgba(245,215,135,.82) !important; -webkit-text-fill-color:rgba(245,215,135,.82) !important;
}
.v23-trust-item svg { stroke:var(--v24-gold); flex-shrink:0; }

/* RIGHT — split into two stacked glass tabs */
.v23-booking-card {
  border-radius: 24px !important;
  background: rgba(255,255,255,.055) !important;
  backdrop-filter: blur(30px) saturate(165%) !important;
  -webkit-backdrop-filter: blur(30px) saturate(165%) !important;
  border: 1.5px solid rgba(212,175,55,.22) !important;
  box-shadow: var(--sv24-glass) !important;
  overflow: hidden !important;
  transition: border-color .4s, box-shadow .4s, transform .4s var(--spring) !important;
}
.v23-booking-card:hover {
  border-color: rgba(212,175,55,.48) !important;
  box-shadow: 0 24px 80px rgba(6,14,26,.60), 0 0 0 1.5px rgba(212,175,55,.48), inset 0 1px 0 rgba(255,255,255,.14) !important;
  transform: translateY(-6px) !important;
}
.v23-booking-card__shine {
  position:absolute; top:0; left:-100%; width:55%; height:100%;
  background:linear-gradient(105deg,transparent 0%,rgba(255,255,255,.06) 50%,transparent 100%);
  pointer-events:none; z-index:1;
}
.v23-booking-card:hover .v23-booking-card__shine {
  animation: v24ShineSwipe .7s ease forwards !important;
}

/* Tab nav */
.v24-booking-tabs {
  display: flex !important;
  border-bottom: 1.5px solid rgba(212,175,55,.16) !important;
  position: relative !important; z-index: 3 !important;
}
.v24-booking-tab {
  flex: 1 1 0 !important;
  padding: 1rem 1.4rem !important;
  background: transparent !important;
  border: none !important;
  cursor: pointer !important;
  display: flex !important; align-items: center !important; gap: .5rem !important;
  justify-content: center !important;
  font-size: .72rem !important; font-weight: 700 !important;
  letter-spacing: .14em !important; text-transform: uppercase !important;
  color: rgba(245,215,135,.55) !important;
  -webkit-text-fill-color: rgba(245,215,135,.55) !important;
  transition: color .25s, background .25s !important;
  position: relative !important;
}
.v24-booking-tab::after {
  content: '' !important;
  position: absolute !important; bottom: -1.5px !important; left: 0 !important; right: 0 !important;
  height: 2.5px !important;
  background: linear-gradient(90deg,var(--v24-gold),var(--v24-gold-lt),var(--v24-sunrise)) !important;
  border-radius: 2px !important;
  transform: scaleX(0) !important;
  transition: transform .35s var(--spring) !important;
}
.v24-booking-tab.is-active {
  color: var(--v24-gold-lt) !important;
  -webkit-text-fill-color: var(--v24-gold-lt) !important;
  background: rgba(212,175,55,.07) !important;
}
.v24-booking-tab.is-active::after { transform: scaleX(1) !important; }
.v24-booking-tab:hover:not(.is-active) {
  color: rgba(245,215,135,.80) !important;
  -webkit-text-fill-color: rgba(245,215,135,.80) !important;
  background: rgba(212,175,55,.04) !important;
}
.v24-booking-tab svg { stroke: currentColor !important; flex-shrink: 0 !important; }

/* Tab panels */
.v24-booking-panel {
  display: none !important;
  padding: 2rem 2.2rem !important;
  position: relative !important; z-index: 2 !important;
}
.v24-booking-panel.is-active { display: block !important; }

/* Availability panel */
.v24-avail-btn {
  display: flex !important; align-items: center !important; gap: .55rem !important;
  justify-content: center !important;
  background: var(--gv24-btn) !important;
  background-size: 200% auto !important;
  color: #060e1a !important;
  font-weight: 800 !important; font-size: 1rem !important;
  border: none !important; border-radius: 14px !important;
  width: 100% !important; padding: 1.1rem !important;
  box-shadow: var(--sv24-gold) !important;
  cursor: pointer !important; text-decoration: none !important;
  transition: transform .3s var(--spring), box-shadow .3s, background-position .4s !important;
  letter-spacing: .04em !important;
}
.v24-avail-btn:hover {
  background-position: right center !important;
  transform: translateY(-4px) scale(1.03) !important;
  box-shadow: var(--sv24-gold-lg) !important;
  color: #060e1a !important;
}
.v24-avail-desc {
  font-size: .88rem !important; color: rgba(255,255,255,.60) !important;
  -webkit-text-fill-color: rgba(255,255,255,.60) !important;
  line-height: 1.6 !important; margin-bottom: 1.5rem !important;
}
.v24-avail-features {
  display: flex !important; flex-direction: column !important; gap: .55rem !important;
  margin-bottom: 1.5rem !important;
}
.v24-avail-feature {
  display: flex !important; align-items: center !important; gap: .55rem !important;
  font-size: .82rem !important;
  color: rgba(255,255,255,.72) !important;
  -webkit-text-fill-color: rgba(255,255,255,.72) !important;
}
.v24-avail-feature svg { stroke: var(--v24-gold); flex-shrink: 0; }

/* Shortcode panel */
.v24-sc-label {
  font-size: .72rem !important; font-weight: 700 !important;
  letter-spacing: .16em !important; text-transform: uppercase !important;
  color: rgba(245,215,135,.75) !important;
  -webkit-text-fill-color: rgba(245,215,135,.75) !important;
  margin-bottom: 1.2rem !important;
  display: flex !important; align-items: center !important; gap: .45rem !important;
}
.v24-sc-label svg { stroke: var(--v24-gold); flex-shrink: 0; }

/* Style shortcode form elements */
.v23-booking-card__shortcode input,
.v23-booking-card__shortcode select,
.v23-booking-card__shortcode textarea,
.v24-booking-panel input,
.v24-booking-panel select {
  background: rgba(255,255,255,.08) !important;
  border: 1.5px solid rgba(212,175,55,.22) !important;
  border-radius: 11px !important; color: #fff !important;
  padding: .78rem 1rem !important; width: 100% !important;
  font-family: inherit !important; font-size: .95rem !important;
  transition: border-color .25s, box-shadow .25s !important;
  margin-bottom: .75rem !important;
}
.v23-booking-card__shortcode input:focus,
.v24-booking-panel input:focus,
.v24-booking-panel select:focus {
  outline: none !important;
  border-color: var(--v24-gold) !important;
  box-shadow: 0 0 0 3px rgba(212,175,55,.20) !important;
}
.v23-booking-card__shortcode label,
.v24-booking-panel label {
  color: rgba(245,215,135,.75) !important;
  font-size: .72rem !important; font-weight: 700 !important;
  letter-spacing: .13em !important; text-transform: uppercase !important;
  -webkit-text-fill-color: rgba(245,215,135,.75) !important;
  display: block !important; margin-bottom: .35rem !important;
}
.v23-booking-card__shortcode button,
.v23-booking-card__shortcode [type="submit"],
.v24-booking-panel button,
.v24-booking-panel [type="submit"] {
  background: var(--gv24-btn) !important; background-size: 200% auto !important;
  color: #060e1a !important; border: none !important; border-radius: 11px !important;
  font-weight: 800 !important; font-size: .95rem !important;
  padding: .92rem 1.8rem !important; cursor: pointer !important;
  box-shadow: var(--sv24-gold) !important; width: 100% !important; margin-top: .5rem !important;
  transition: transform .3s var(--spring), box-shadow .3s, background-position .4s !important;
}
.v23-booking-card__shortcode button:hover,
.v24-booking-panel button:hover,
.v24-booking-panel [type="submit"]:hover {
  transform: translateY(-3px) !important; box-shadow: var(--sv24-gold-lg) !important;
  background-position: right center !important;
}
.v24-booking-card__fallback-text {
  color: rgba(255,255,255,.62) !important;
  -webkit-text-fill-color: rgba(255,255,255,.62) !important;
  font-size: .95rem !important; line-height: 1.6 !important; margin-bottom: 1.4rem !important;
}

/* Glow */
.v23-booking-card__glow {
  position:absolute; inset:-32px; border-radius:50%;
  background:radial-gradient(circle,rgba(212,175,55,.20) 0%,rgba(249,115,22,.10) 42%,transparent 68%);
  pointer-events:none; z-index:0; opacity:0; transition:opacity .4s;
}
.v23-booking-card:hover .v23-booking-card__glow { opacity:1; }

/* ─────────────────────────────────────────────────────────────
   EST.2008 BADGE — Maximum 3D, clear text
───────────────────────────────────────────────────────────── */
.about-badge-3d {
  position:absolute !important; bottom:-2rem !important; left:-2rem !important;
  width:148px !important; height:148px !important; border-radius:24px !important;
  background:linear-gradient(145deg,
    #030810 0%,#0a1828 18%,#0d2235 38%,#1a3a5c 58%,#0a1828 78%,#030810 100%) !important;
  box-shadow:
    0 36px 90px rgba(0,0,0,.72),
    0 16px 36px rgba(0,0,0,.45),
    0 6px 12px rgba(0,0,0,.30),
    inset 0 2px 2px rgba(255,255,255,.12),
    inset 0 -2px 2px rgba(0,0,0,.50),
    0 0 0 2px rgba(212,175,55,.48),
    0 0 0 4px rgba(212,175,55,.10) !important;
  transform: rotate(-4deg) !important;
  animation: v24BadgeIn 1s .8s var(--spring) both, v24Float 6s 1.9s ease-in-out infinite !important;
  overflow:visible !important; z-index:12 !important; perspective:700px !important;
}

/* Gradient face sheen */
.about-badge-3d::before {
  content:''; position:absolute; inset:0; border-radius:24px;
  background:linear-gradient(145deg,
    rgba(212,175,55,.28) 0%,
    rgba(245,215,135,.14) 30%,
    rgba(212,175,55,.06) 55%,
    rgba(249,115,22,.04) 78%,
    transparent 100%);
  pointer-events:none;
}

/* Bottom edge light catch */
.about-badge-3d::after {
  content:''; position:absolute; bottom:0; left:18%; right:18%; height:2.5px;
  background:linear-gradient(90deg,transparent,rgba(212,175,55,.72),rgba(249,115,22,.50),transparent);
  border-radius:0 0 24px 24px; pointer-events:none;
  box-shadow:0 0 14px rgba(212,175,55,.42);
}

/* Glow aura */
.about-badge-3d__glow {
  position:absolute; inset:-32px; border-radius:50%;
  background:radial-gradient(circle,rgba(212,175,55,.45) 0%,rgba(249,115,22,.22) 35%,rgba(212,175,55,.08) 60%,transparent 72%);
  pointer-events:none; animation:v24Pulse 3.5s ease-in-out infinite !important; z-index:-1 !important;
}

.about-badge-3d__inner {
  display:flex !important; flex-direction:column !important; align-items:center !important;
  justify-content:center !important; height:100% !important; padding:1rem !important;
  position:relative !important; z-index:2 !important; gap:0 !important;
}

.about-badge-3d__est {
  font-size:.68rem !important; font-weight:900 !important; letter-spacing:.28em !important;
  text-transform:uppercase !important;
  /* Solid white shadow ensures readability against dark bg */
  color: #f5d787 !important;
  -webkit-text-fill-color: #f5d787 !important;
  text-shadow: 0 1px 10px rgba(212,175,55,.80), 0 0 20px rgba(212,175,55,.40) !important;
  line-height:1 !important; margin-bottom:3px !important;
}

.about-badge-3d__year {
  font-family:'Cormorant Garant','Playfair Display',serif !important;
  font-size:3rem !important; font-weight:900 !important; line-height:1 !important;
  /* Force white base with gradient shimmer overlay */
  color: #ffffff !important;
  -webkit-text-fill-color: transparent !important;
  background: linear-gradient(145deg,
    #ffffff 0%,
    #fdf3cc 18%,
    #f5d787 35%,
    #d4af37 52%,
    #f97316 70%,
    #f5d787 85%,
    #ffffff 100%) !important;
  background-size: 200% auto !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  animation: v24Shimmer 5s linear infinite !important;
  filter: drop-shadow(0 2px 14px rgba(212,175,55,.80)) drop-shadow(0 0 4px rgba(255,255,255,.30)) !important;
  margin-bottom:5px !important;
}

.about-badge-3d__line {
  display:block !important; width:50px !important; height:2px !important;
  background:linear-gradient(90deg,transparent,#f5d787,#d4af37,#f97316,transparent) !important;
  box-shadow:0 0 12px rgba(212,175,55,.60),0 0 4px rgba(249,115,22,.30) !important;
  margin:5px auto !important; border-radius:2px !important;
}

.about-badge-3d__sub {
  font-size:.56rem !important; font-weight:600 !important; letter-spacing:.16em !important;
  text-transform:uppercase !important;
  color: rgba(255,255,255,.70) !important;
  -webkit-text-fill-color: rgba(255,255,255,.70) !important;
  text-shadow: 0 1px 6px rgba(0,0,0,.60) !important;
  line-height:1 !important; margin-bottom:3px !important;
}

.about-badge-3d__word {
  font-size:.65rem !important; font-weight:900 !important; letter-spacing:.18em !important;
  text-transform:uppercase !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-shadow: 0 1px 8px rgba(0,0,0,.55), 0 0 16px rgba(212,175,55,.35) !important;
  line-height:1 !important;
}

/* ─────────────────────────────────────────────────────────────
   BUTTONS
───────────────────────────────────────────────────────────── */
.btn--primary,.header-book-btn,.availability-banner__btn {
  background:var(--gv24-btn) !important; background-size:200% auto !important;
  color:#060e1a !important; font-weight:700 !important;
  box-shadow:var(--sv24-gold) !important;
  transition:transform .3s var(--spring),box-shadow .3s,background-position .4s !important;
}
.btn--primary:hover,.header-book-btn:hover,.availability-banner__btn:hover {
  background-position:right center !important;
  transform:translateY(-4px) scale(1.03) !important; box-shadow:var(--sv24-gold-lg) !important; color:#060e1a !important;
}
.btn--secondary { transition:transform .3s var(--spring),box-shadow .3s,border-color .3s !important; }
.btn--secondary:hover { transform:translateY(-3px) !important; border-color:var(--v24-gold) !important; box-shadow:var(--sv24-gold) !important; }

/* ─────────────────────────────────────────────────────────────
   CARDS — 3D hover
───────────────────────────────────────────────────────────── */
.v8-room-card { transition:transform .45s var(--spring),box-shadow .4s !important; will-change:transform !important; }
.v8-room-card:hover { transform:translateY(-18px) scale(1.024) !important; box-shadow:var(--sv24-hover) !important; }
.experience-card,.exp-card { transition:transform .44s var(--spring),box-shadow .38s !important; }
.experience-card:hover,.exp-card:hover { transform:translateY(-14px) scale(1.02) !important; box-shadow:var(--sv24-hover) !important; }
.amenity-card { transition:transform .4s var(--spring),box-shadow .35s !important; }
.amenity-card:hover { transform:translateY(-12px) rotate(-.4deg) !important; box-shadow:var(--sv24-hover) !important; }
.amenity-icon { transition:transform .32s var(--spring) !important; display:inline-block !important; }
.amenity-card:hover .amenity-icon { transform:scale(1.24) rotate(6deg) !important; }
.stat-item { transition:transform .38s var(--spring) !important; }
.stat-item:hover { transform:translateY(-8px) scale(1.05) !important; }
.review-card,.testimonial-card { transition:transform .4s var(--spring),box-shadow .35s !important; }
.review-card:hover,.testimonial-card:hover { transform:translateY(-10px) !important; box-shadow:var(--sv24-hover) !important; }

/* ─────────────────────────────────────────────────────────────
   GALLERY — 3D
───────────────────────────────────────────────────────────── */
.home-gallery-grid { perspective:1200px !important; }
.home-gallery-item {
  border-radius:16px !important; overflow:hidden !important;
  position:relative !important; cursor:pointer !important;
  will-change:transform !important;
  transition:transform .5s var(--spring),box-shadow .42s,border-color .3s !important;
  border:1.5px solid transparent !important; box-shadow:var(--sv24-card) !important;
  background:var(--v24-navy2) !important;
}
.home-gallery-item:hover {
  transform:translateY(-20px) scale(1.042) rotateX(2.5deg) !important;
  box-shadow:var(--sv24-hover),0 0 0 1.5px rgba(212,175,55,.58) !important;
  border-color:rgba(212,175,55,.58) !important; z-index:5 !important;
}
.home-gallery-item img { width:100% !important; height:100% !important; object-fit:cover !important; display:block !important; transition:transform .65s var(--out),filter .4s !important; }
.home-gallery-item:hover img { transform:scale(1.10) !important; filter:brightness(1.08) saturate(1.14) !important; }
.home-gallery-item__overlay {
  position:absolute !important; inset:0 !important; z-index:2 !important;
  background:linear-gradient(to top,rgba(6,14,26,.85) 0%,rgba(13,31,53,.40) 45%,rgba(6,14,26,.08) 100%) !important;
  opacity:0 !important; transition:opacity .38s !important;
  display:flex !important; align-items:center !important; justify-content:center !important;
}
.home-gallery-item:hover .home-gallery-item__overlay { opacity:1 !important; }
.home-gallery-item__overlay svg { stroke:var(--v24-gold-lt) !important; filter:drop-shadow(0 2px 14px rgba(212,175,55,.72)) !important; transform:scale(.7) !important; transition:transform .38s var(--spring) !important; }
.home-gallery-item:hover .home-gallery-item__overlay svg { transform:scale(1) !important; }
.gallery-item { border-radius:12px !important; overflow:hidden !important; will-change:transform !important; transition:transform .44s var(--spring),box-shadow .38s !important; }
.gallery-item:hover { transform:translateY(-14px) scale(1.034) !important; box-shadow:var(--sv24-hover) !important; z-index:3 !important; position:relative !important; }
.gallery-item img { transition:transform .6s var(--out) !important; width:100% !important; height:100% !important; object-fit:cover !important; }
.gallery-item:hover img { transform:scale(1.08) !important; }

/* ─────────────────────────────────────────────────────────────
   HEADER
───────────────────────────────────────────────────────────── */
.site-header.header--scrolled,.site-header.scrolled {
  box-shadow:0 4px 42px rgba(0,0,0,.38),0 1px 10px rgba(0,0,0,.22) !important;
  backdrop-filter:blur(24px) saturate(170%) !important;
  -webkit-backdrop-filter:blur(24px) saturate(170%) !important;
}

/* ─────────────────────────────────────────────────────────────
   GOLD DIVIDER
───────────────────────────────────────────────────────────── */
.gold-divider {
  background:linear-gradient(90deg,transparent 0%,#a07828 14%,#f5d787 40%,#d4af37 57%,#f97316 75%,transparent 100%) !important;
  background-size:300% auto !important; animation:v24Shimmer 4s linear infinite !important;
  height:1.5px !important; border:none !important; border-radius:2px !important;
  box-shadow:0 2px 16px rgba(212,175,55,.32) !important;
}

/* ─────────────────────────────────────────────────────────────
   ABOUT IMAGE
───────────────────────────────────────────────────────────── */
.about-snippet__image { position:relative !important; border-radius:20px !important; overflow:hidden !important; }
.about-snippet__image img { width:100% !important; min-height:420px !important; object-fit:cover !important; border-radius:20px !important; box-shadow:var(--sv24-hover) !important; display:block !important; transition:transform .6s var(--out) !important; }
.about-snippet__image:hover img { transform:scale(1.026) !important; }
.about-snippet__image::after { content:''; position:absolute; inset:-12px -12px -12px 14px; border:2px solid rgba(212,175,55,.20); border-radius:24px; pointer-events:none; z-index:-1; }

/* ─────────────────────────────────────────────────────────────
   DESKTOP NAV
───────────────────────────────────────────────────────────── */
.nav-menu>.menu-item>a { transition:color .25s,transform .3s var(--spring),text-shadow .3s !important; }
.nav-menu>.menu-item>a:hover { transform:translateY(-2px) !important; text-shadow:0 4px 18px rgba(212,175,55,.48) !important; }
.nav-menu .sub-menu {
  background:rgba(8,16,30,.95) !important;
  backdrop-filter:blur(30px) saturate(180%) !important; -webkit-backdrop-filter:blur(30px) saturate(180%) !important;
  border:1px solid rgba(212,175,55,.18) !important; border-radius:16px !important;
  box-shadow:0 28px 80px rgba(6,14,26,.60),0 10px 28px rgba(6,14,26,.38),inset 0 1px 0 rgba(255,255,255,.08) !important;
  transform:translateX(-50%) translateY(-12px) perspective(900px) rotateX(-10deg) !important;
  transition:opacity .28s,transform .38s var(--spring),visibility .28s !important;
}
.nav-menu>.menu-item-has-children:hover>.sub-menu {
  transform:translateX(-50%) translateY(0) perspective(900px) rotateX(0deg) !important;
}
.nav-menu .sub-menu .menu-item>a { color:rgba(255,255,255,.78) !important; border-radius:10px !important; transition:background .22s,color .22s,transform .25s var(--spring),padding-left .22s !important; }
.nav-menu .sub-menu .menu-item>a:hover { background:rgba(212,175,55,.13) !important; color:var(--v24-gold-lt) !important; transform:translateX(6px) !important; padding-left:1.2rem !important; }

/* ─────────────────────────────────────────────────────────────
   PRELOADER
───────────────────────────────────────────────────────────── */
.v13-preloader { background:linear-gradient(160deg,#030810 0%,#0d1f35 50%,#030810 100%) !important; }
.v13-preloader__text {
  background:var(--gv24-gold) !important; background-size:200% auto !important;
  -webkit-background-clip:text !important; -webkit-text-fill-color:transparent !important; background-clip:text !important;
  animation:v24Shimmer 3s linear infinite !important;
}
.v13-preloader__fill { background:linear-gradient(90deg,var(--v24-gold),var(--v24-gold-lt),var(--v24-sunrise)) !important; box-shadow:0 0 14px rgba(212,175,55,.65) !important; }
.v13-preloader__bar { background:rgba(255,255,255,.10) !important; }

/* ─────────────────────────────────────────────────────────────
   SCROLLBAR
───────────────────────────────────────────────────────────── */
::-webkit-scrollbar { width:5px; height:5px; }
::-webkit-scrollbar-track { background:#030810; }
::-webkit-scrollbar-thumb { background:linear-gradient(180deg,#a07828,#f5d787,#d4af37,#f97316); border-radius:4px; }

/* ─────────────────────────────────────────────────────────────
   MOBILE MENU
───────────────────────────────────────────────────────────── */
@media (max-width:768px) {
  #main-navigation {
    display:block !important; position:fixed !important; top:0 !important; left:0 !important;
    width:82vw !important; max-width:320px !important; height:100vh !important; overflow-y:auto !important;
    background:linear-gradient(160deg,#030810 0%,#0d1f35 55%,#030810 100%) !important;
    z-index:10000000 !important; padding:5rem 1.5rem 2rem !important;
    box-shadow:8px 0 55px rgba(0,0,0,.72) !important; border-right:1px solid rgba(212,175,55,.18) !important;
    transform:translateX(-105%) !important; transition:transform .38s var(--out) !important; will-change:transform !important;
  }
  #main-navigation.is-open { transform:translateX(0) !important; }
  #main-navigation .menu,#main-navigation ul { list-style:none !important; padding:0 !important; margin:0 !important; display:block !important; }
  #main-navigation li { display:block !important; border-bottom:1px solid rgba(212,175,55,.10) !important; }
  #main-navigation li:last-child { border-bottom:none !important; }
  #main-navigation li a { display:flex !important; align-items:center !important; justify-content:space-between !important; padding:.9rem 0 !important; font-size:1rem !important; font-weight:500 !important; text-decoration:none !important; color:rgba(255,255,255,.88) !important; -webkit-text-fill-color:rgba(255,255,255,.88) !important; transition:color .25s,padding-left .22s !important; }
  #main-navigation li a:hover,#main-navigation li.current-menu-item>a { color:#f5d787 !important; -webkit-text-fill-color:#f5d787 !important; padding-left:.4rem !important; }
  #main-navigation .sub-menu { display:none !important; padding-left:1rem !important; background:rgba(255,255,255,.04) !important; border-radius:8px !important; margin-bottom:.5rem !important; }
  #main-navigation li.sub-open>.sub-menu { display:block !important; }
  #main-navigation .sub-menu li a { font-size:.9rem !important; padding:.7rem 0 !important; color:rgba(255,255,255,.7) !important; -webkit-text-fill-color:rgba(255,255,255,.7) !important; }
  .mobile-menu-toggle { display:flex !important; z-index:10000002 !important; }

  /* Booking bar mobile */
  .v23-booking-wrap { grid-template-columns:1fr !important; gap:2rem !important; }
  .v23-booking-text { max-width:100% !important; }
  .v23-booking-bar { padding:3.5rem 0 !important; }
  .v24-booking-tab { font-size:.65rem !important; padding:.85rem .9rem !important; }

  /* Hero mobile */
  .page-hero { min-height:320px !important; }
  .page-hero-bg .v24-hero-img,.page-hero-bg img { animation:v24HeroEntry 1.8s cubic-bezier(.12,.82,.3,1) forwards !important; }
  .page-hero-title::after { display:none !important; }
  .v8-room-card:hover { transform:translateY(-6px) !important; }
  .home-gallery-item:hover { transform:translateY(-6px) scale(1.02) !important; }
  .stat-number,.stat-number span[data-counter] { font-size:2rem !important; }

  /* Badge */
  .about-badge-3d { width:108px !important; height:108px !important; bottom:-.5rem !important; left:.5rem !important; }
  .about-badge-3d__year { font-size:2.1rem !important; }
}
@media (max-width:480px) {
  .about-badge-3d { width:90px !important; height:90px !important; border-radius:14px !important; }
  .about-badge-3d__year { font-size:1.75rem !important; }
}

/* ─────────────────────────────────────────────────────────────
   REDUCED MOTION
───────────────────────────────────────────────────────────── */
@media (prefers-reduced-motion:reduce) {
  .page-hero .section-label,.page-hero .page-hero-title,.page-hero .page-hero-subtitle,
  .page-hero-bg .v24-hero-img,.page-hero-bg img,.page-hero::after,
  .v8-hero__title,.section--dark .section-title,.section-title,
  .stat-number,.stat-number span[data-counter],
  .v8-hero__slide.is-active .v8-hero__bg img,
  .about-badge-3d,.about-badge-3d__glow,.about-badge-3d__year,
  .v23-booking-eyebrow,.v13-preloader__text,.gold-divider { animation:none !important; }
  .page-hero-bg .v24-hero-img,.page-hero-bg img { transform:scale(1.04) !important; width:100% !important; height:100% !important; margin:0 !important; }
  .about-badge-3d { transform:rotate(-4deg) !important; }
  .v8-hero__title,.section--dark .section-title { -webkit-text-fill-color:#f5d787 !important; background:none !important; }
  .section-title { -webkit-text-fill-color:var(--v24-navy2) !important; background:none !important; }
}

/* ── design-v25.css (41,588b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v25
   Fixes: Customizer reload guard removed (was causing white screen),
          Booking section ultra-premium redesign,
          Gallery 3D enhancement, Booking sidebar premium,
          Added resort extras (weather widget hint, quick facts)
   ══════════════════════════════════════════════════════════════ */

:root {
  --v25-navy:     #060e1a;
  --v25-navy2:    #0d1f35;
  --v25-navy3:    #1a3a5c;
  --v25-gold:     #d4af37;
  --v25-gold-lt:  #f5d787;
  --v25-gold-dk:  #a07828;
  --v25-sunrise:  #f97316;
  --v25-white:    rgba(255,255,255,.88);

  --gv25-gold:    linear-gradient(135deg,#fff8e7 0%,#f5d787 22%,#d4af37 48%,#a07828 72%,#f5d787 100%);
  --gv25-hero:    linear-gradient(135deg,#ffffff 0%,#fdf3cc 18%,#f5d787 42%,#d4af37 62%,#fff8e7 100%);
  --gv25-navy:    linear-gradient(135deg,#060e1a 0%,#0d1f35 25%,#1a3a5c 55%,#d4af37 82%,#f5d787 100%);
  --gv25-dark:    linear-gradient(160deg,#060e1a 0%,#0d1f35 30%,#1a3a5c 65%,#080f1e 100%);
  --gv25-btn:     linear-gradient(135deg,#d4af37 0%,#f5d787 38%,#d4af37 68%,#a07828 100%);
  --gv25-overlay: linear-gradient(to bottom,rgba(6,14,26,.05) 0%,rgba(13,31,53,.45) 50%,rgba(6,14,26,.88) 100%);

  --sv25-card:    0 20px 60px rgba(8,15,28,.15),0 6px 18px rgba(8,15,28,.09);
  --sv25-hover:   0 44px 110px rgba(8,15,28,.26),0 16px 40px rgba(8,15,28,.15);
  --sv25-gold:    0 8px 32px rgba(212,175,55,.42),0 2px 8px rgba(212,175,55,.24);
  --sv25-gold-lg: 0 22px 64px rgba(212,175,55,.52),0 8px 24px rgba(212,175,55,.30);
  --sv25-glass:   0 8px 40px rgba(8,15,28,.40),inset 0 1px 1px rgba(255,255,255,.13),inset 0 -1px 1px rgba(0,0,0,.18);

  --spring: cubic-bezier(.34,1.56,.64,1);
  --out:    cubic-bezier(.22,1,.36,1);
}

@keyframes v25Shimmer { 0%{background-position:0% 50%} 50%{background-position:180% 50%} 100%{background-position:0% 50%} }
@keyframes v25OrbFloat { 0%,100%{transform:translateY(0) scale(1)} 50%{transform:translateY(-30px) scale(1.05)} }
@keyframes v25CardIn { from{opacity:0;transform:translateY(30px) scale(.97)} to{opacity:1;transform:translateY(0) scale(1)} }
@keyframes v25ShineSwipe { from{left:-100%} to{left:150%} }
@keyframes v25TrustIn { from{opacity:0;transform:translateY(16px)} to{opacity:1;transform:translateY(0)} }

/* ─────────────────────────────────────────────────────────────
   GRADIENT TEXT (same surgical approach from v24)
───────────────────────────────────────────────────────────── */
.section-title {
  background: var(--gv25-navy) !important;
  background-size: 220% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v25Shimmer 9s linear infinite !important;
}
.section--dark .section-title, .virtual-tour-section .section-title {
  background: var(--gv25-gold) !important;
  background-size: 240% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v25Shimmer 7s linear infinite !important;
  filter: drop-shadow(0 2px 16px rgba(212,175,55,.30)) !important;
}
.v8-hero__title {
  background: var(--gv25-hero) !important;
  background-size: 250% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v25Shimmer 7s linear infinite !important;
  filter: drop-shadow(0 4px 30px rgba(0,0,0,.65)) !important;
}
.page-hero .page-hero-title {
  background: var(--gv25-hero) !important;
  background-size: 240% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  filter: drop-shadow(0 3px 22px rgba(0,0,0,.58)) !important;
}
.section-label { background: var(--gv25-gold) !important; background-size:200% auto !important; -webkit-background-clip:text !important; -webkit-text-fill-color:transparent !important; background-clip:text !important; }
.section--dark .section-label, .page-hero .section-label { background:none !important; -webkit-text-fill-color:#f5d787 !important; color:#f5d787 !important; animation:none !important; }
.stat-number, .stat-number span[data-counter] { background:var(--gv25-gold) !important; background-size:200% auto !important; -webkit-background-clip:text !important; -webkit-text-fill-color:transparent !important; background-clip:text !important; animation:v25Shimmer 4.5s linear infinite !important; filter:drop-shadow(0 2px 20px rgba(212,175,55,.48)) !important; }
.footer-col-title { background:var(--gv25-gold) !important; background-size:200% auto !important; -webkit-background-clip:text !important; -webkit-text-fill-color:transparent !important; background-clip:text !important; }

/* ─────────────────────────────────────────────────────────────
   v25 BOOKING SECTION — Ultra Premium
───────────────────────────────────────────────────────────── */
.v25-booking-section {
  position: relative !important;
  overflow: hidden !important;
  padding: 6rem 0 5rem !important;
  background: var(--gv25-dark) !important;
}

/* Animated bg orbs */
.v25-bs__bg {
  position:absolute; inset:0;
  background:
    radial-gradient(ellipse 60% 80% at 15% 50%,  rgba(212,175,55,.08) 0%, transparent 65%),
    radial-gradient(ellipse 45% 60% at 85% 20%,  rgba(249,115,22,.06) 0%, transparent 60%),
    radial-gradient(ellipse 35% 45% at 50% 95%,  rgba(212,175,55,.05) 0%, transparent 55%);
  pointer-events:none;
}
.v25-bs__orb {
  position: absolute; border-radius: 50%; pointer-events: none; filter: blur(60px);
}
.v25-bs__orb--1 { width:400px; height:400px; background:rgba(212,175,55,.07); top:-100px; left:-80px; animation:v25OrbFloat 12s ease-in-out infinite; }
.v25-bs__orb--2 { width:300px; height:300px; background:rgba(249,115,22,.05); bottom:-80px; right:-60px; animation:v25OrbFloat 15s 3s ease-in-out infinite; }
.v25-bs__orb--3 { width:200px; height:200px; background:rgba(212,175,55,.06); top:50%; left:50%; transform:translate(-50%,-50%); animation:v25OrbFloat 10s 6s ease-in-out infinite; }

/* Subtle grid overlay */
.v25-bs__grid {
  position:absolute; inset:0; pointer-events:none; opacity:.03;
  background-image: linear-gradient(rgba(212,175,55,.6) 1px, transparent 1px),
                    linear-gradient(90deg, rgba(212,175,55,.6) 1px, transparent 1px);
  background-size: 60px 60px;
}

.v25-bs__wrap { position: relative; z-index: 2; }

/* Header row */
.v25-bs__header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 2rem;
  margin-bottom: 3rem;
  padding-bottom: 2rem;
  border-bottom: 1px solid rgba(212,175,55,.15);
}
.v25-bs__eyebrow {
  display: inline-flex; align-items: center; gap: .45rem;
  font-size: .7rem; font-weight: 800; letter-spacing: .24em; text-transform: uppercase;
  background: var(--gv25-gold); background-size: 200% auto;
  -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
  animation: v25Shimmer 5s linear infinite;
  filter: drop-shadow(0 1px 8px rgba(212,175,55,.5));
  margin-bottom: .7rem;
}
.v25-bs__eyebrow svg { stroke: var(--v25-gold); -webkit-text-fill-color: unset; }
.v25-bs__title {
  font-size: clamp(1.6rem,3vw,2.4rem) !important;
  background: var(--gv25-hero) !important;
  background-size: 220% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v25Shimmer 8s linear infinite !important;
  filter: drop-shadow(0 2px 16px rgba(0,0,0,.40)) !important;
  line-height: 1.2 !important;
  margin: 0 !important;
}

/* Header stats */
.v25-bs__header-stats { display:flex; align-items:center; gap:1.5rem; flex-shrink:0; }
.v25-bs__stat { text-align:center; }
.v25-bs__stat-num {
  display: block; font-size: 1.6rem; font-weight: 800; line-height: 1;
  background: var(--gv25-gold); background-size: 200% auto;
  -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
  animation: v25Shimmer 5s linear infinite;
  margin-bottom: .2rem;
}
.v25-bs__stat-label { font-size: .65rem; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: rgba(255,255,255,.45); -webkit-text-fill-color:rgba(255,255,255,.45); }
.v25-bs__stat-div { width:1px; height:36px; background:rgba(212,175,55,.20); }

/* Two cards */
.v25-bs__cards {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  gap: 0;
  align-items: stretch;
  margin-bottom: 3rem;
}

/* OR divider */
.v25-bs__or {
  display: flex; align-items: center; justify-content: center;
  width: 60px; flex-shrink: 0; position: relative;
}
.v25-bs__or::before {
  content:''; position:absolute; top:0; bottom:0; left:50%;
  width:1px; background:rgba(212,175,55,.18);
}
.v25-bs__or span {
  position: relative; z-index: 1;
  background: rgba(13,31,53,.98);
  border: 1px solid rgba(212,175,55,.25);
  border-radius: 50%;
  width: 36px; height: 36px;
  display: flex; align-items: center; justify-content: center;
  font-size: .7rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase;
  color: rgba(245,215,135,.65); -webkit-text-fill-color: rgba(245,215,135,.65);
}

/* Card base */
.v25-bs__card {
  position: relative;
  border-radius: 24px;
  padding: 2.5rem;
  overflow: hidden;
  transition: transform .45s var(--spring), box-shadow .4s ease, border-color .3s !important;
  animation: v25CardIn .8s var(--out) both;
}
.v25-bs__card--avail { animation-delay: .1s; }
.v25-bs__card--find  { animation-delay: .25s; }

/* Availability card — featured */
.v25-bs__card--avail {
  background: rgba(255,255,255,.06) !important;
  border: 1.5px solid rgba(212,175,55,.35) !important;
  box-shadow: var(--sv25-glass), 0 0 0 4px rgba(212,175,55,.06) !important;
  backdrop-filter: blur(28px) saturate(160%) !important;
  -webkit-backdrop-filter: blur(28px) saturate(160%) !important;
}
.v25-bs__card--avail:hover {
  transform: translateY(-8px) !important;
  border-color: rgba(212,175,55,.60) !important;
  box-shadow: var(--sv25-hover), 0 0 0 4px rgba(212,175,55,.12), inset 0 1px 0 rgba(255,255,255,.16) !important;
}

/* Find booking card */
.v25-bs__card--find {
  background: rgba(255,255,255,.035) !important;
  border: 1.5px solid rgba(212,175,55,.16) !important;
  box-shadow: var(--sv25-card) !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
}
.v25-bs__card--find:hover {
  transform: translateY(-8px) !important;
  border-color: rgba(212,175,55,.38) !important;
  box-shadow: var(--sv25-hover) !important;
}

/* Card shine sweep */
.v25-bs__card-shine {
  position:absolute; top:0; left:-100%; width:55%; height:100%;
  background:linear-gradient(105deg,transparent,rgba(255,255,255,.05),transparent);
  pointer-events:none; z-index:1; transition:left .6s ease;
}
.v25-bs__card:hover .v25-bs__card-shine { animation: v25ShineSwipe .7s ease forwards !important; }
.v25-bs__card-glow {
  position:absolute; inset:-30px; border-radius:50%;
  background:radial-gradient(circle,rgba(212,175,55,.18) 0%,transparent 65%);
  pointer-events:none; z-index:0; opacity:0; transition:opacity .4s;
}
.v25-bs__card:hover .v25-bs__card-glow { opacity:1; }

/* Badge */
.v25-bs__card-badge {
  position:absolute; top:1.4rem; right:1.4rem;
  font-size:.62rem; font-weight:800; letter-spacing:.16em; text-transform:uppercase;
  background: var(--gv25-btn); padding:.35rem .75rem; border-radius:50px;
  color:#060e1a; -webkit-text-fill-color:#060e1a;
  box-shadow: var(--sv25-gold);
  z-index:2;
}

/* Card icon */
.v25-bs__card-icon {
  width:56px; height:56px; border-radius:16px; margin-bottom:1.4rem;
  background: rgba(212,175,55,.12);
  border: 1.5px solid rgba(212,175,55,.25);
  display:flex; align-items:center; justify-content:center;
  position:relative; z-index:2;
  transition: transform .35s var(--spring), background .3s, border-color .3s !important;
}
.v25-bs__card:hover .v25-bs__card-icon {
  transform: scale(1.1) rotate(3deg) !important;
  background: rgba(212,175,55,.20) !important;
  border-color: rgba(212,175,55,.50) !important;
}
.v25-bs__card-icon svg { stroke: var(--v25-gold-lt); }

/* Card title */
.v25-bs__card-title {
  font-size: 1.3rem !important; font-weight: 700 !important; line-height: 1.2 !important;
  background: var(--gv25-hero) !important; background-size:200% auto !important;
  -webkit-background-clip: text !important; -webkit-text-fill-color: transparent !important;
  background-clip: text !important; animation: v25Shimmer 8s linear infinite !important;
  margin-bottom: .75rem !important; position:relative; z-index:2 !important;
}
.v25-bs__card-desc {
  font-size: .9rem !important; line-height: 1.6 !important;
  color: rgba(255,255,255,.62) !important; -webkit-text-fill-color: rgba(255,255,255,.62) !important;
  margin-bottom: 1.4rem !important; position:relative; z-index:2 !important;
}
.v25-bs__card-note {
  font-size:.75rem !important; text-align:center !important;
  color:rgba(255,255,255,.38) !important; -webkit-text-fill-color:rgba(255,255,255,.38) !important;
  margin-top:.9rem !important; position:relative; z-index:2 !important;
}

/* Perks list */
.v25-bs__perks {
  list-style:none !important; padding:0 !important; margin:0 0 1.8rem !important;
  display:flex !important; flex-direction:column !important; gap:.6rem !important;
  position:relative; z-index:2 !important;
}
.v25-bs__perks li {
  display:flex !important; align-items:flex-start !important; gap:.55rem !important;
  font-size:.86rem !important; color:rgba(255,255,255,.75) !important;
  -webkit-text-fill-color:rgba(255,255,255,.75) !important; line-height:1.4 !important;
}
.v25-bs__perks li svg { stroke:var(--v25-gold); flex-shrink:0; margin-top:1px; }

/* CTA Button */
.v25-bs__cta {
  display: flex !important; align-items:center !important; gap:.55rem !important;
  justify-content:center !important;
  background: var(--gv25-btn) !important; background-size:200% auto !important;
  color:#060e1a !important; -webkit-text-fill-color:#060e1a !important;
  font-weight:800 !important; font-size:1rem !important;
  border:none !important; border-radius:14px !important;
  width:100% !important; padding:1.1rem !important;
  box-shadow: var(--sv25-gold) !important; cursor:pointer !important;
  text-decoration:none !important; position:relative; z-index:2 !important;
  transition: transform .3s var(--spring), box-shadow .3s, background-position .4s !important;
  letter-spacing:.04em !important;
}
.v25-bs__cta:hover {
  background-position:right center !important;
  transform:translateY(-4px) scale(1.03) !important;
  box-shadow: var(--sv25-gold-lg) !important; color:#060e1a !important;
}

/* Shortcode wrapper */
.v25-bs__shortcode { position:relative; z-index:2; }
.v25-bs__shortcode input, .v25-bs__shortcode select {
  background:rgba(255,255,255,.07) !important; border:1.5px solid rgba(212,175,55,.22) !important;
  border-radius:11px !important; color:#fff !important; padding:.78rem 1rem !important;
  width:100% !important; font-family:inherit !important; font-size:.95rem !important;
  transition:border-color .25s, box-shadow .25s !important; margin-bottom:.75rem !important;
}
.v25-bs__shortcode input:focus, .v25-bs__shortcode select:focus {
  outline:none !important; border-color:var(--v25-gold) !important;
  box-shadow:0 0 0 3px rgba(212,175,55,.20) !important;
}
.v25-bs__shortcode label { color:rgba(245,215,135,.75) !important; font-size:.72rem !important; font-weight:700 !important; letter-spacing:.13em !important; text-transform:uppercase !important; -webkit-text-fill-color:rgba(245,215,135,.75) !important; display:block !important; margin-bottom:.35rem !important; }
.v25-bs__shortcode button, .v25-bs__shortcode [type="submit"] {
  background:var(--gv25-btn) !important; background-size:200% auto !important; color:#060e1a !important;
  border:none !important; border-radius:11px !important; font-weight:800 !important;
  font-size:.95rem !important; padding:.92rem 1.8rem !important; cursor:pointer !important;
  box-shadow:var(--sv25-gold) !important; width:100% !important; margin-top:.5rem !important;
  transition:transform .3s var(--spring),box-shadow .3s,background-position .4s !important;
}
.v25-bs__shortcode button:hover, .v25-bs__shortcode [type="submit"]:hover {
  transform:translateY(-3px) !important; box-shadow:var(--sv25-gold-lg) !important; background-position:right center !important;
}

/* Fallback contact */
.v25-bs__fallback p { font-size:.9rem !important; color:rgba(255,255,255,.62) !important; -webkit-text-fill-color:rgba(255,255,255,.62) !important; line-height:1.6 !important; margin-bottom:1.2rem !important; }
.v25-bs__contact-links { display:flex; flex-direction:column; gap:.7rem; }
.v25-bs__contact-btn {
  display:flex; align-items:center; gap:.5rem;
  font-size:.88rem; font-weight:600; color:rgba(245,215,135,.82) !important;
  -webkit-text-fill-color:rgba(245,215,135,.82) !important;
  background:rgba(212,175,55,.08); border:1px solid rgba(212,175,55,.22);
  border-radius:10px; padding:.7rem 1rem; text-decoration:none;
  transition:background .25s, border-color .25s, transform .3s var(--spring) !important;
}
.v25-bs__contact-btn:hover { background:rgba(212,175,55,.16) !important; border-color:rgba(212,175,55,.45) !important; transform:translateX(4px) !important; }
.v25-bs__contact-btn svg { stroke:var(--v25-gold); flex-shrink:0; }

/* Trust bar */
.v25-bs__trust {
  display:flex; align-items:center; justify-content:center; flex-wrap:wrap;
  gap:0; padding:1.8rem 0 0;
  border-top:1px solid rgba(212,175,55,.12);
  animation: v25TrustIn .7s .5s var(--out) both;
}
.v25-bs__trust-item {
  display:flex; align-items:center; gap:.5rem; padding:.5rem 2rem;
  font-size:.78rem; font-weight:600; letter-spacing:.06em;
  color:rgba(245,215,135,.72) !important; -webkit-text-fill-color:rgba(245,215,135,.72) !important;
}
.v25-bs__trust-item svg { stroke:var(--v25-gold); flex-shrink:0; }
.v25-bs__trust-sep { width:1px; height:20px; background:rgba(212,175,55,.18); flex-shrink:0; }

/* ─────────────────────────────────────────────────────────────
   GALLERY — Ultra 3D
───────────────────────────────────────────────────────────── */
.home-gallery-grid { perspective:1400px !important; }
.home-gallery-item {
  border-radius:18px !important; overflow:hidden !important; position:relative !important;
  cursor:pointer !important; will-change:transform !important;
  transition:transform .5s var(--spring),box-shadow .42s,border-color .3s !important;
  border:1.5px solid transparent !important; box-shadow:var(--sv25-card) !important;
  background:var(--v25-navy2) !important;
  transform-style:preserve-3d !important;
}
.home-gallery-item:hover {
  transform:translateY(-22px) scale(1.048) rotateX(3deg) !important;
  box-shadow:var(--sv25-hover),0 0 0 2px rgba(212,175,55,.60) !important;
  border-color:rgba(212,175,55,.60) !important; z-index:5 !important;
}
.home-gallery-item img {
  width:100% !important; height:100% !important; object-fit:cover !important; display:block !important;
  transition:transform .7s var(--out),filter .4s !important; will-change:transform !important;
}
.home-gallery-item:hover img { transform:scale(1.12) !important; filter:brightness(1.10) saturate(1.16) !important; }
.home-gallery-item__overlay {
  position:absolute !important; inset:0 !important; z-index:2 !important;
  background:linear-gradient(to top,rgba(6,14,26,.90) 0%,rgba(13,31,53,.38) 45%,rgba(6,14,26,.05) 100%) !important;
  opacity:0 !important; transition:opacity .38s !important;
  display:flex !important; align-items:center !important; justify-content:center !important;
}
.home-gallery-item:hover .home-gallery-item__overlay { opacity:1 !important; }
.home-gallery-item__overlay svg {
  stroke:var(--v25-gold-lt) !important;
  filter:drop-shadow(0 2px 16px rgba(212,175,55,.75)) !important;
  transform:scale(.65) !important; transition:transform .4s var(--spring) !important;
}
.home-gallery-item:hover .home-gallery-item__overlay svg { transform:scale(1.05) !important; }

/* Numbered overlay label */
.home-gallery-item::after {
  content:attr(data-index);
  position:absolute; bottom:.75rem; left:.8rem; z-index:3;
  font-size:.6rem; font-weight:700; letter-spacing:.12em;
  background:rgba(212,175,55,.18); border:1px solid rgba(212,175,55,.30);
  color:rgba(245,215,135,.75); -webkit-text-fill-color:rgba(245,215,135,.75);
  padding:.25rem .55rem; border-radius:50px;
  opacity:0; transition:opacity .35s; pointer-events:none;
}
.home-gallery-item:hover::after { opacity:1; }

/* ─────────────────────────────────────────────────────────────
   BOOKING PAGE SIDEBAR v25
───────────────────────────────────────────────────────────── */
.v25-booking-sidebar { display:flex; flex-direction:column; gap:1.5rem; }

.v25-sidebar-card {
  position:relative; overflow:hidden; border-radius:20px; padding:1.75rem;
  backdrop-filter:blur(20px); -webkit-backdrop-filter:blur(20px);
  transition:transform .4s var(--spring), box-shadow .38s !important;
}
.v25-sidebar-card:hover { transform:translateY(-4px) !important; }

.v25-sidebar-card--primary {
  background:rgba(255,255,255,.055);
  border:1.5px solid rgba(212,175,55,.35);
  box-shadow:var(--sv25-glass);
}
.v25-sidebar-card--primary:hover { box-shadow:var(--sv25-hover), 0 0 0 2px rgba(212,175,55,.30) !important; }

.v25-sidebar-card--find {
  background:rgba(255,255,255,.035);
  border:1.5px solid rgba(212,175,55,.18);
  box-shadow:var(--sv25-card);
}
.v25-sidebar-card--contact {
  background: linear-gradient(145deg, rgba(13,31,53,.95) 0%, rgba(26,58,92,.90) 100%);
  border:1.5px solid rgba(212,175,55,.25);
  box-shadow:var(--sv25-card);
}

.v25-sidebar-card__glow {
  position:absolute; inset:-20px; border-radius:50%;
  background:radial-gradient(circle,rgba(212,175,55,.15) 0%,transparent 65%);
  pointer-events:none; z-index:0; opacity:0; transition:opacity .4s;
}
.v25-sidebar-card:hover .v25-sidebar-card__glow { opacity:1; }
.v25-sidebar-card__shine {
  position:absolute; top:0; left:-100%; width:50%; height:100%;
  background:linear-gradient(105deg,transparent,rgba(255,255,255,.04),transparent);
  pointer-events:none; z-index:1; transition:left .6s ease;
}
.v25-sidebar-card:hover .v25-sidebar-card__shine { left:150%; }

.v25-sidebar-card__header {
  display:flex; align-items:center; gap:.75rem;
  margin-bottom:1rem; position:relative; z-index:2;
}
.v25-sidebar-card__icon {
  width:44px; height:44px; border-radius:12px; flex-shrink:0;
  background:rgba(212,175,55,.12); border:1.5px solid rgba(212,175,55,.25);
  display:flex; align-items:center; justify-content:center;
  transition:transform .3s var(--spring) !important;
}
.v25-sidebar-card:hover .v25-sidebar-card__icon { transform:scale(1.1) rotate(3deg) !important; }
.v25-sidebar-card__icon svg { stroke:var(--v25-gold-lt); }
.v25-sidebar-card__title {
  font-size:1.05rem !important; font-weight:700 !important;
  background:var(--gv25-hero) !important; background-size:200% auto !important;
  -webkit-background-clip:text !important; -webkit-text-fill-color:transparent !important;
  background-clip:text !important; animation:v25Shimmer 8s linear infinite !important;
  line-height:1.2 !important; margin:0 !important;
}
.v25-sidebar-card__desc { font-size:.84rem !important; color:rgba(255,255,255,.58) !important; -webkit-text-fill-color:rgba(255,255,255,.58) !important; line-height:1.5 !important; margin-bottom:1.2rem !important; position:relative; z-index:2 !important; }
.v25-sidebar-card__note { font-size:.78rem !important; color:rgba(255,255,255,.45) !important; -webkit-text-fill-color:rgba(255,255,255,.45) !important; position:relative; z-index:2 !important; }

/* Sidebar CTA */
.v25-sidebar-cta {
  display:flex !important; align-items:center !important; gap:.5rem !important; justify-content:center !important;
  background:var(--gv25-btn) !important; background-size:200% auto !important; color:#060e1a !important;
  -webkit-text-fill-color:#060e1a !important; font-weight:800 !important; font-size:.92rem !important;
  border:none !important; border-radius:12px !important; width:100% !important; padding:1rem !important;
  box-shadow:var(--sv25-gold) !important; text-decoration:none !important;
  transition:transform .3s var(--spring),box-shadow .3s,background-position .4s !important;
  position:relative; z-index:2 !important;
}
.v25-sidebar-cta:hover { background-position:right center !important; transform:translateY(-3px) !important; box-shadow:var(--sv25-gold-lg) !important; }

/* Sidebar shortcode styling */
.v25-sidebar-card .v25-sidebar-card__shortcode input,
.v25-sidebar-card input, .v25-sidebar-card select {
  background:rgba(255,255,255,.07) !important; border:1.5px solid rgba(212,175,55,.22) !important;
  border-radius:10px !important; color:#fff !important; padding:.7rem .9rem !important;
  width:100% !important; font-family:inherit !important; font-size:.9rem !important;
  transition:border-color .25s, box-shadow .25s !important; margin-bottom:.6rem !important;
}
.v25-sidebar-card input:focus, .v25-sidebar-card select:focus { outline:none !important; border-color:var(--v25-gold) !important; box-shadow:0 0 0 3px rgba(212,175,55,.18) !important; }
.v25-sidebar-card label { color:rgba(245,215,135,.72) !important; font-size:.68rem !important; font-weight:700 !important; letter-spacing:.12em !important; text-transform:uppercase !important; -webkit-text-fill-color:rgba(245,215,135,.72) !important; display:block !important; margin-bottom:.3rem !important; }
.v25-sidebar-card button, .v25-sidebar-card [type="submit"] {
  background:var(--gv25-btn) !important; background-size:200% auto !important; color:#060e1a !important;
  border:none !important; border-radius:10px !important; font-weight:800 !important; font-size:.9rem !important;
  padding:.85rem 1.5rem !important; cursor:pointer !important; box-shadow:var(--sv25-gold) !important;
  width:100% !important; margin-top:.4rem !important;
  transition:transform .3s var(--spring),box-shadow .3s,background-position .4s !important;
}
.v25-sidebar-card button:hover, .v25-sidebar-card [type="submit"]:hover { transform:translateY(-2px) !important; box-shadow:var(--sv25-gold-lg) !important; background-position:right center !important; }

/* Contact buttons */
.v25-sidebar-contact-btn {
  display:flex; align-items:center; gap:.5rem; width:100%;
  font-size:.84rem; font-weight:600; color:rgba(245,215,135,.82) !important; -webkit-text-fill-color:rgba(245,215,135,.82) !important;
  background:rgba(212,175,55,.08); border:1px solid rgba(212,175,55,.22); border-radius:10px;
  padding:.75rem 1rem; text-decoration:none; margin-bottom:.6rem;
  transition:background .25s,border-color .25s,transform .3s var(--spring) !important;
  position:relative; z-index:2 !important;
}
.v25-sidebar-contact-btn:hover { background:rgba(212,175,55,.16) !important; border-color:rgba(212,175,55,.45) !important; transform:translateX(4px) !important; }
.v25-sidebar-contact-btn svg { stroke:var(--v25-gold); flex-shrink:0; }

/* Quick facts grid */
.v25-sidebar-quick-facts { display:grid; grid-template-columns:1fr 1fr; gap:.6rem; margin-top:1.2rem; position:relative; z-index:2; }
.v25-sidebar-fact { background:rgba(255,255,255,.05); border:1px solid rgba(212,175,55,.14); border-radius:10px; padding:.6rem .8rem; }
.v25-sidebar-fact__label { display:block; font-size:.6rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:rgba(245,215,135,.55); -webkit-text-fill-color:rgba(245,215,135,.55); margin-bottom:.2rem; }
.v25-sidebar-fact__val { display:block; font-size:.85rem; font-weight:600; color:rgba(255,255,255,.82); -webkit-text-fill-color:rgba(255,255,255,.82); }

/* ─────────────────────────────────────────────────────────────
   SECTION BACKGROUNDS
───────────────────────────────────────────────────────────── */
.section--dark { background:var(--gv25-dark) !important; position:relative !important; overflow:hidden !important; }
.section--dark::before { content:''; position:absolute; inset:0; pointer-events:none; z-index:0; background: radial-gradient(ellipse 65% 110% at 12% 55%,rgba(212,175,55,.09) 0%,transparent 65%), radial-gradient(ellipse 50% 65% at 88% 18%,rgba(249,115,22,.07) 0%,transparent 60%); }
.section--dark>.container,.section--dark>div { position:relative !important; z-index:1 !important; }
.section--alt { background:linear-gradient(160deg,#f8f5ee 0%,#fdfaf3 55%,#f5f0e8 100%) !important; }

/* ─────────────────────────────────────────────────────────────
   HERO KB ANIMATION (same as v24)
───────────────────────────────────────────────────────────── */
@keyframes v25KB1 { from{transform:scale(1.22) translate(2.5%,1.5%)} to{transform:scale(1.06) translate(-1.5%,-1%)} }
@keyframes v25KB2 { from{transform:scale(1.19) translate(-2%,-1.5%)} to{transform:scale(1.06) translate(1.5%,1%)} }
@keyframes v25KB3 { from{transform:scale(1.24) translate(0%,2.5%)} to{transform:scale(1.06) translate(0%,-1.5%)} }
.v8-hero__slide.is-active .v8-hero__bg img { animation:v25KB1 12s ease-in-out forwards !important; }
.v8-hero__slide[data-index="1"].is-active .v8-hero__bg img { animation:v25KB2 12s ease-in-out forwards !important; }
.v8-hero__slide[data-index="2"].is-active .v8-hero__bg img { animation:v25KB3 12s ease-in-out forwards !important; }
.v8-hero__slide[data-index="3"].is-active .v8-hero__bg img { animation:v25KB1 12s ease-in-out forwards !important; }
.v8-hero__slide::after { content:'' !important; position:absolute !important; inset:0 !important; background:var(--gv25-overlay) !important; z-index:1 !important; pointer-events:none !important; }
.v8-hero__content,.v8-hero__slide>.container { z-index:2 !important; position:relative !important; }
.v8-hero__bg img,.hero-slide__bg img { width:100% !important; height:100% !important; object-fit:cover !important; }

/* ─────────────────────────────────────────────────────────────
   SUBPAGE HERO (from v24 — confirmed working)
───────────────────────────────────────────────────────────── */
@keyframes v25HeroEntry { from{transform:scale(1.30)} to{transform:scale(1.12)} }
@keyframes v25HeroDrift { 0%{transform:scale(1.12) translate(0%,0%)} 20%{transform:scale(1.14) translate(-1.8%,-1.2%)} 45%{transform:scale(1.12) translate(1.2%,.6%)} 70%{transform:scale(1.13) translate(-.6%,1.1%)} 100%{transform:scale(1.12) translate(.5%,-.5%)} }
@keyframes v25OverlayPulse { 0%,100%{opacity:1} 50%{opacity:.87} }
@keyframes v25LabelIn { from{opacity:0;transform:translateX(-28px) skewX(-5deg)} to{opacity:1;transform:translateX(0) skewX(0)} }
@keyframes v25TitleIn { from{opacity:0;transform:translateY(38px) scale(.94)} to{opacity:1;transform:translateY(0) scale(1)} }
@keyframes v25SubIn   { from{opacity:0;transform:translateY(24px)} to{opacity:1;transform:translateY(0)} }
@keyframes v25LineIn  { from{width:0;opacity:0} to{width:80px;opacity:1} }
.page-hero { position:relative !important; overflow:hidden !important; isolation:isolate !important; }
.page-hero::after { content:'' !important; position:absolute !important; inset:0 !important; z-index:2 !important; background:var(--gv25-overlay) !important; pointer-events:none !important; animation:v25OverlayPulse 9s ease-in-out infinite !important; }
.page-hero-bg { position:absolute !important; inset:0 !important; z-index:0 !important; overflow:visible !important; }
.page-hero-bg img,.page-hero-bg .v24-hero-img { width:108% !important; height:108% !important; max-width:none !important; object-fit:cover !important; object-position:center !important; display:block !important; margin:-4% !important; animation:v25HeroEntry 1.8s cubic-bezier(.12,.82,.3,1) forwards,v25HeroDrift 32s 1.8s ease-in-out infinite !important; will-change:transform !important; }
.page-hero-content { position:relative !important; z-index:3 !important; }
.page-hero .section-label { animation:v25LabelIn .75s .4s var(--out) both !important; display:inline-block !important; }
.page-hero .page-hero-title { animation:v25TitleIn .9s .55s var(--out) both,v25Shimmer 8s 1.5s linear infinite !important; }
.page-hero .page-hero-subtitle { animation:v25SubIn .85s .82s var(--out) both !important; color:rgba(255,255,255,.90) !important; text-shadow:0 2px 16px rgba(0,0,0,.58) !important; }
.page-hero-title::after { content:'' !important; display:block !important; height:2.5px !important; background:linear-gradient(90deg,var(--v25-gold),var(--v25-gold-lt),var(--v25-sunrise),transparent) !important; border-radius:2px !important; margin-top:.6rem !important; animation:v25LineIn .7s 1.3s var(--out) both !important; box-shadow:0 2px 14px rgba(212,175,55,.42) !important; }

/* ─────────────────────────────────────────────────────────────
   BUTTONS, CARDS, HEADER, etc
───────────────────────────────────────────────────────────── */
.btn--primary,.header-book-btn { background:var(--gv25-btn) !important; background-size:200% auto !important; color:#060e1a !important; font-weight:700 !important; box-shadow:var(--sv25-gold) !important; transition:transform .3s var(--spring),box-shadow .3s,background-position .4s !important; }
.btn--primary:hover,.header-book-btn:hover { background-position:right center !important; transform:translateY(-4px) scale(1.03) !important; box-shadow:var(--sv25-gold-lg) !important; color:#060e1a !important; }
.v8-room-card { transition:transform .45s var(--spring),box-shadow .4s !important; will-change:transform !important; }
.v8-room-card:hover { transform:translateY(-18px) scale(1.024) !important; box-shadow:var(--sv25-hover) !important; }
.amenity-card { transition:transform .4s var(--spring),box-shadow .35s !important; }
.amenity-card:hover { transform:translateY(-12px) rotate(-.4deg) !important; box-shadow:var(--sv25-hover) !important; }
.amenity-icon { transition:transform .32s var(--spring) !important; display:inline-block !important; }
.amenity-card:hover .amenity-icon { transform:scale(1.24) rotate(6deg) !important; }
.stat-item { transition:transform .38s var(--spring) !important; }
.stat-item:hover { transform:translateY(-8px) scale(1.05) !important; }
.site-header.header--scrolled,.site-header.scrolled { box-shadow:0 4px 42px rgba(0,0,0,.38) !important; backdrop-filter:blur(24px) saturate(170%) !important; -webkit-backdrop-filter:blur(24px) saturate(170%) !important; }
.gold-divider { background:linear-gradient(90deg,transparent 0%,#a07828 14%,#f5d787 40%,#d4af37 57%,#f97316 75%,transparent 100%) !important; background-size:300% auto !important; animation:v25Shimmer 4s linear infinite !important; height:1.5px !important; border:none !important; border-radius:2px !important; box-shadow:0 2px 16px rgba(212,175,55,.32) !important; }
.about-snippet__image { position:relative !important; border-radius:20px !important; overflow:hidden !important; }
.about-snippet__image img { width:100% !important; min-height:420px !important; object-fit:cover !important; border-radius:20px !important; box-shadow:var(--sv25-hover) !important; display:block !important; transition:transform .6s var(--out) !important; }
.about-snippet__image:hover img { transform:scale(1.026) !important; }
::-webkit-scrollbar { width:5px; height:5px; }
::-webkit-scrollbar-track { background:#030810; }
::-webkit-scrollbar-thumb { background:linear-gradient(180deg,#a07828,#f5d787,#d4af37,#f97316); border-radius:4px; }

/* ─────────────────────────────────────────────────────────────
   MOBILE
───────────────────────────────────────────────────────────── */
@media (max-width:768px) {
  #main-navigation { display:block !important; position:fixed !important; top:0 !important; left:0 !important; width:82vw !important; max-width:320px !important; height:100vh !important; overflow-y:auto !important; background:linear-gradient(160deg,#030810 0%,#0d1f35 55%,#030810 100%) !important; z-index:10000000 !important; padding:5rem 1.5rem 2rem !important; box-shadow:8px 0 55px rgba(0,0,0,.72) !important; border-right:1px solid rgba(212,175,55,.18) !important; transform:translateX(-105%) !important; transition:transform .38s var(--out) !important; will-change:transform !important; }
  #main-navigation.is-open { transform:translateX(0) !important; }
  #main-navigation .menu,#main-navigation ul { list-style:none !important; padding:0 !important; margin:0 !important; display:block !important; }
  #main-navigation li { display:block !important; border-bottom:1px solid rgba(212,175,55,.10) !important; }
  #main-navigation li a { display:flex !important; align-items:center !important; justify-content:space-between !important; padding:.9rem 0 !important; font-size:1rem !important; font-weight:500 !important; text-decoration:none !important; color:rgba(255,255,255,.88) !important; -webkit-text-fill-color:rgba(255,255,255,.88) !important; transition:color .25s,padding-left .22s !important; }
  #main-navigation li a:hover,#main-navigation li.current-menu-item>a { color:#f5d787 !important; -webkit-text-fill-color:#f5d787 !important; }
  #main-navigation .sub-menu { display:none !important; padding-left:1rem !important; background:rgba(255,255,255,.04) !important; border-radius:8px !important; }
  #main-navigation li.sub-open>.sub-menu { display:block !important; }
  .mobile-menu-toggle { display:flex !important; z-index:10000002 !important; }

  /* Booking section mobile */
  .v25-bs__header { flex-direction:column; align-items:flex-start; gap:1.5rem; }
  .v25-bs__header-stats { gap:1rem; }
  .v25-bs__cards { grid-template-columns:1fr; gap:1.5rem; }
  .v25-bs__or { width:100%; flex-direction:row; height:auto; padding:.5rem 0; }
  .v25-bs__or::before { display:none; }
  .v25-bs__trust { gap:0; }
  .v25-bs__trust-item { padding:.5rem 1rem; font-size:.72rem; }
  .v25-bs__trust-sep { display:none; }
  .v25-bs__card { padding:1.75rem; }
  .v25-booking-section { padding:4rem 0 3.5rem !important; }

  .page-hero { min-height:320px !important; }
  .page-hero-bg img,.page-hero-bg .v24-hero-img { animation:v25HeroEntry 1.8s cubic-bezier(.12,.82,.3,1) forwards !important; }
  .page-hero-title::after { display:none !important; }
  .v8-room-card:hover { transform:translateY(-6px) !important; }
  .home-gallery-item:hover { transform:translateY(-8px) scale(1.02) !important; }
}

@media (prefers-reduced-motion:reduce) {
  .page-hero-bg img,.page-hero-bg .v24-hero-img,.page-hero::after,
  .v8-hero__slide.is-active .v8-hero__bg img,
  .v8-hero__title,.section-title,.section--dark .section-title,
  .stat-number,.stat-number span[data-counter],
  .v25-bs__orb,.v25-bs__eyebrow,.v25-bs__title,.v25-bs__stat-num,
  .v25-bs__card-title,.v25-sidebar-card__title,.gold-divider,
  .footer-col-title { animation:none !important; }
  .page-hero-bg img,.page-hero-bg .v24-hero-img { transform:scale(1.04) !important; width:100% !important; height:100% !important; margin:0 !important; }
  .v8-hero__title,.section--dark .section-title { -webkit-text-fill-color:#f5d787 !important; background:none !important; }
  .section-title { -webkit-text-fill-color:var(--v25-navy2) !important; background:none !important; }
}

/* ── design-v26.css (49,859b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v26
   Base: v25 | Changes: Room cards, Reserve section, Preloader,
   Booking page, Hero animation fix
   ══════════════════════════════════════════════════════════════ */

:root {
  --v26-navy:    #060e1a;
  --v26-navy2:   #0d1f35;
  --v26-navy3:   #1a3a5c;
  --v26-gold:    #d4af37;
  --v26-gold-lt: #f5d787;
  --v26-gold-dk: #a07828;
  --v26-sunrise: #f97316;
  --v26-green:   #22c55e;
  --gv26-gold:   linear-gradient(135deg,#fff8e7 0%,#f5d787 22%,#d4af37 48%,#a07828 72%,#f5d787 100%);
  --gv26-hero:   linear-gradient(135deg,#ffffff 0%,#fdf3cc 18%,#f5d787 42%,#d4af37 62%,#fff8e7 100%);
  --gv26-dark:   linear-gradient(160deg,#060e1a 0%,#0d1f35 30%,#1a3a5c 65%,#080f1e 100%);
  --gv26-btn:    linear-gradient(135deg,#d4af37 0%,#f5d787 38%,#d4af37 68%,#a07828 100%);
  --sv26-gold:   0 8px 32px rgba(212,175,55,.42),0 2px 8px rgba(212,175,55,.24);
  --sv26-gold-lg:0 22px 64px rgba(212,175,55,.52),0 8px 24px rgba(212,175,55,.30);
  --sv26-card:   0 20px 60px rgba(8,15,28,.15),0 6px 18px rgba(8,15,28,.09);
  --sv26-hover:  0 44px 110px rgba(8,15,28,.26),0 16px 40px rgba(8,15,28,.15);
  --sv26-glass:  0 8px 40px rgba(8,15,28,.40),inset 0 1px 1px rgba(255,255,255,.13);
  --spring: cubic-bezier(.34,1.56,.64,1);
  --out:    cubic-bezier(.22,1,.36,1);
}

@keyframes v26Shimmer  { 0%{background-position:0% 50%} 50%{background-position:180% 50%} 100%{background-position:0% 50%} }
@keyframes v26OrbFloat { 0%,100%{transform:translateY(0) scale(1)} 50%{transform:translateY(-28px) scale(1.04)} }
@keyframes v26AvailPulse { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:.55;transform:scale(.82)} }
@keyframes v26CardIn   { from{opacity:0;transform:translateY(28px) scale(.97)} to{opacity:1;transform:translateY(0) scale(1)} }
@keyframes v26ShineSwipe { from{left:-100%} to{left:150%} }
@keyframes v26MountainGlow { 0%,100%{opacity:.8} 50%{opacity:1} }

/* ─────────────────────────────────────────────────────────────
   GRADIENT TEXT (kept from v25, same surgical approach)
───────────────────────────────────────────────────────────── */
.section-title { background:linear-gradient(135deg,#060e1a 0%,#0d1f35 25%,#1a3a5c 55%,#d4af37 82%,#f5d787 100%) !important; background-size:220% auto !important; -webkit-background-clip:text !important; -webkit-text-fill-color:transparent !important; background-clip:text !important; animation:v26Shimmer 9s linear infinite !important; }
.section--dark .section-title,.virtual-tour-section .section-title { background:var(--gv26-gold) !important; background-size:240% auto !important; -webkit-background-clip:text !important; -webkit-text-fill-color:transparent !important; background-clip:text !important; animation:v26Shimmer 7s linear infinite !important; }
.v8-hero__title { background:var(--gv26-hero) !important; background-size:250% auto !important; -webkit-background-clip:text !important; -webkit-text-fill-color:transparent !important; background-clip:text !important; animation:v26Shimmer 7s linear infinite !important; filter:drop-shadow(0 4px 30px rgba(0,0,0,.65)) !important; }
.page-hero .page-hero-title { background:var(--gv26-hero) !important; background-size:240% auto !important; -webkit-background-clip:text !important; -webkit-text-fill-color:transparent !important; background-clip:text !important; filter:drop-shadow(0 3px 22px rgba(0,0,0,.58)) !important; }
.section-label { background:var(--gv26-gold) !important; background-size:200% auto !important; -webkit-background-clip:text !important; -webkit-text-fill-color:transparent !important; background-clip:text !important; }
.section--dark .section-label,.page-hero .section-label { background:none !important; -webkit-text-fill-color:#f5d787 !important; color:#f5d787 !important; animation:none !important; }
.stat-number,.stat-number span[data-counter] { background:var(--gv26-gold) !important; background-size:200% auto !important; -webkit-background-clip:text !important; -webkit-text-fill-color:transparent !important; background-clip:text !important; animation:v26Shimmer 4.5s linear infinite !important; filter:drop-shadow(0 2px 20px rgba(212,175,55,.48)) !important; }
.footer-col-title { background:var(--gv26-gold) !important; background-size:200% auto !important; -webkit-background-clip:text !important; -webkit-text-fill-color:transparent !important; background-clip:text !important; }
.section--dark { background:var(--gv26-dark) !important; position:relative !important; overflow:hidden !important; }
.section--dark::before { content:''; position:absolute; inset:0; pointer-events:none; z-index:0; background:radial-gradient(ellipse 65% 110% at 12% 55%,rgba(212,175,55,.09) 0%,transparent 65%),radial-gradient(ellipse 50% 65% at 88% 18%,rgba(249,115,22,.07) 0%,transparent 60%); }
.section--dark>.container,.section--dark>div { position:relative !important; z-index:1 !important; }
.section--alt { background:linear-gradient(160deg,#f8f5ee 0%,#fdfaf3 55%,#f5f0e8 100%) !important; }

/* ─────────────────────────────────────────────────────────────
   PRELOADER v26 — mountain landscape + sunrise rays animation
───────────────────────────────────────────────────────────── */
@keyframes v26PreloaderSunRise { 0%{transform:translateY(20px);opacity:0} 100%{transform:translateY(0);opacity:1} }
@keyframes v26PreloaderRayPulse { 0%,100%{opacity:.5;transform:scale(1)} 50%{opacity:1;transform:scale(1.1)} }
@keyframes v26PreloaderBarFill { 0%{width:0%} 100%{width:100%} }

.v13-preloader {
  background: radial-gradient(ellipse 120% 100% at 50% 120%, rgba(212,175,55,.12) 0%, transparent 55%),
              linear-gradient(160deg,#030810 0%,#0d1f35 55%,#060e1a 100%) !important;
}
.v13-preloader__mountain {
  animation: v26MountainGlow 3s ease-in-out infinite !important;
}
.v13-preloader__sun {
  animation: v26PreloaderSunRise .8s var(--out) both !important;
}
.v13-preloader__text {
  background: var(--gv26-gold) !important;
  background-size: 220% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v26Shimmer 3s linear infinite !important;
  font-size: 1.1rem !important;
  font-weight: 700 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
}
.v13-preloader__bar {
  background: rgba(255,255,255,.08) !important;
  border-radius: 4px !important;
  height: 3px !important;
  overflow: hidden !important;
  box-shadow: 0 0 16px rgba(212,175,55,.15) !important;
}
.v13-preloader__fill {
  background: linear-gradient(90deg, var(--v26-gold), var(--v26-gold-lt), var(--v26-sunrise)) !important;
  box-shadow: 0 0 16px rgba(212,175,55,.65) !important;
  border-radius: 4px !important;
}

/* ─────────────────────────────────────────────────────────────
   ROOM CARDS v26 — Ultra premium hotel style
───────────────────────────────────────────────────────────── */
.v26-rooms-grid {
  display: grid !important;
  grid-template-columns: repeat(2,1fr) !important;
  gap: 2.5rem !important;
  margin-top: 3rem !important;
}
.v26-room-card {
  background: #fff !important;
  border-radius: 24px !important;
  overflow: hidden !important;
  box-shadow: var(--sv26-card) !important;
  border: 1px solid rgba(212,175,55,.10) !important;
  transition: transform .48s var(--spring),box-shadow .42s !important;
  will-change: transform !important;
  position: relative !important;
  animation: v26CardIn .7s var(--out) both !important;
}
.v26-room-card:hover { transform:translateY(-18px) scale(1.015) !important; box-shadow:var(--sv26-hover),0 0 0 1.5px rgba(212,175,55,.28) !important; }
.v26-room-img { position:relative !important; height:260px !important; overflow:hidden !important; }
.v26-room-img img { width:100% !important; height:100% !important; object-fit:cover !important; transition:transform .7s var(--out),filter .4s !important; display:block !important; }
.v26-room-card:hover .v26-room-img img { transform:scale(1.08) !important; filter:brightness(1.06) saturate(1.10) !important; }
.v26-room-img__overlay { position:absolute !important; inset:0 !important; background:linear-gradient(to top,rgba(6,14,26,.62) 0%,rgba(6,14,26,.08) 60%,transparent 100%) !important; pointer-events:none !important; }
/* Floating price tag */
.v26-room-img__price-tag { position:absolute !important; bottom:1.1rem !important; right:1.1rem !important; background:rgba(6,14,26,.90) !important; backdrop-filter:blur(14px) !important; border:1px solid rgba(212,175,55,.38) !important; border-radius:12px !important; padding:.5rem .9rem !important; display:flex !important; align-items:baseline !important; gap:.22rem !important; box-shadow:0 4px 20px rgba(0,0,0,.38) !important; transition:transform .3s var(--spring),box-shadow .3s !important; }
.v26-room-card:hover .v26-room-img__price-tag { transform:translateY(-3px) scale(1.05) !important; box-shadow:0 8px 28px rgba(0,0,0,.48),0 0 0 1px rgba(212,175,55,.55) !important; }
.v26-room-img__price-from { font-size:.56rem !important; font-weight:600 !important; color:rgba(245,215,135,.65) !important; -webkit-text-fill-color:rgba(245,215,135,.65) !important; letter-spacing:.08em !important; text-transform:uppercase !important; }
.v26-room-img__price-val { font-size:1rem !important; font-weight:800 !important; background:var(--gv26-gold) !important; background-size:200% auto !important; -webkit-background-clip:text !important; -webkit-text-fill-color:transparent !important; background-clip:text !important; animation:v26Shimmer 5s linear infinite !important; }
.v26-room-img__price-night { font-size:.6rem !important; color:rgba(255,255,255,.55) !important; -webkit-text-fill-color:rgba(255,255,255,.55) !important; }
/* View badge */
.v26-room-img__view { position:absolute !important; top:1rem !important; left:1rem !important; display:inline-flex !important; align-items:center !important; gap:.3rem !important; background:rgba(6,14,26,.82) !important; backdrop-filter:blur(8px) !important; border:1px solid rgba(212,175,55,.26) !important; border-radius:50px !important; padding:.3rem .7rem !important; font-size:.62rem !important; font-weight:600 !important; letter-spacing:.07em !important; color:rgba(245,215,135,.88) !important; -webkit-text-fill-color:rgba(245,215,135,.88) !important; }
.v26-room-img__view svg { stroke:var(--v26-gold); flex-shrink:0; }
/* Badge */
.v26-room-img__badge { position:absolute !important; top:1rem !important; right:1rem !important; background:var(--gv26-btn) !important; background-size:200% auto !important; color:#060e1a !important; -webkit-text-fill-color:#060e1a !important; font-size:.58rem !important; font-weight:800 !important; letter-spacing:.14em !important; text-transform:uppercase !important; padding:.3rem .72rem !important; border-radius:50px !important; box-shadow:var(--sv26-gold) !important; }
/* Availability dot */
.v26-room-img__avail { position:absolute !important; bottom:1.1rem !important; left:1rem !important; display:flex !important; align-items:center !important; gap:.4rem !important; font-size:.62rem !important; font-weight:600 !important; color:rgba(255,255,255,.78) !important; -webkit-text-fill-color:rgba(255,255,255,.78) !important; }
.v26-room-img__avail-dot { width:8px !important; height:8px !important; border-radius:50% !important; background:#22c55e !important; flex-shrink:0 !important; animation:v26AvailPulse 2s ease-in-out infinite !important; box-shadow:0 0 8px rgba(34,197,94,.65) !important; }
/* Content */
.v26-room-content { padding:1.8rem !important; display:flex !important; flex-direction:column !important; gap:1rem !important; }
.v26-room-content__top { display:flex !important; align-items:flex-start !important; justify-content:space-between !important; gap:.5rem !important; }
.v26-room-type { font-size:.62rem !important; font-weight:700 !important; letter-spacing:.18em !important; text-transform:uppercase !important; margin:0 0 .25rem !important; background:var(--gv26-gold) !important; background-size:200% auto !important; -webkit-background-clip:text !important; -webkit-text-fill-color:transparent !important; background-clip:text !important; }
.v26-room-title { font-size:1.25rem !important; font-weight:700 !important; margin:0 !important; line-height:1.2 !important; color:var(--v26-navy2) !important; -webkit-text-fill-color:var(--v26-navy2) !important; background:none !important; }
.v26-room-rating { display:flex !important; align-items:center !important; gap:.3rem !important; flex-shrink:0 !important; background:rgba(212,175,55,.10) !important; border:1px solid rgba(212,175,55,.22) !important; border-radius:8px !important; padding:.3rem .65rem !important; font-size:.78rem !important; font-weight:700 !important; color:var(--v26-gold-dk) !important; -webkit-text-fill-color:var(--v26-gold-dk) !important; }
.v26-room-specs { display:flex !important; gap:1rem !important; flex-wrap:wrap !important; padding:.85rem 1rem !important; background:rgba(212,175,55,.05) !important; border:1px solid rgba(212,175,55,.12) !important; border-radius:12px !important; }
.v26-room-spec { display:flex !important; align-items:center !important; gap:.35rem !important; font-size:.78rem !important; font-weight:600 !important; color:var(--v26-navy2) !important; -webkit-text-fill-color:var(--v26-navy2) !important; }
.v26-room-spec svg { stroke:var(--v26-gold); flex-shrink:0; }
.v26-room-desc { font-size:.88rem !important; line-height:1.65 !important; color:#555 !important; -webkit-text-fill-color:#555 !important; margin:0 !important; }
.v26-room-amen { display:flex !important; flex-wrap:wrap !important; gap:.45rem !important; }
.v26-room-amen__tag { display:inline-flex !important; align-items:center !important; gap:.3rem !important; font-size:.7rem !important; font-weight:600 !important; color:var(--v26-navy3) !important; -webkit-text-fill-color:var(--v26-navy3) !important; background:rgba(26,58,92,.08) !important; border:1px solid rgba(26,58,92,.15) !important; padding:.28rem .65rem !important; border-radius:50px !important; transition:background .2s,border-color .2s,color .2s !important; }
.v26-room-amen__tag:hover { background:rgba(212,175,55,.12) !important; border-color:rgba(212,175,55,.30) !important; color:var(--v26-gold-dk) !important; -webkit-text-fill-color:var(--v26-gold-dk) !important; }
.v26-room-amen__tag svg { stroke:var(--v26-gold); flex-shrink:0; }
.v26-room-amen__more { display:inline-flex !important; align-items:center !important; font-size:.68rem !important; font-weight:700 !important; color:var(--v26-gold-dk) !important; -webkit-text-fill-color:var(--v26-gold-dk) !important; background:rgba(212,175,55,.08) !important; border:1px dashed rgba(212,175,55,.30) !important; padding:.28rem .65rem !important; border-radius:50px !important; }
/* Footer */
.v26-room-footer { display:flex !important; align-items:center !important; justify-content:space-between !important; flex-wrap:wrap !important; gap:1rem !important; padding-top:1.2rem !important; border-top:1px solid rgba(212,175,55,.12) !important; }
.v26-room-footer__price { display:flex; align-items:baseline; gap:.25rem; flex-wrap:wrap; }
.v26-price-from  { font-size:.62rem !important; font-weight:600 !important; color:#888 !important; -webkit-text-fill-color:#888 !important; }
.v26-price-val   { font-size:1.5rem !important; font-weight:800 !important; line-height:1 !important; background:var(--gv26-gold) !important; background-size:200% auto !important; -webkit-background-clip:text !important; -webkit-text-fill-color:transparent !important; background-clip:text !important; animation:v26Shimmer 5s linear infinite !important; }
.v26-price-night { font-size:.72rem !important; color:#888 !important; -webkit-text-fill-color:#888 !important; }
.v26-price-vat   { width:100%; font-size:.62rem !important; color:#22c55e !important; -webkit-text-fill-color:#22c55e !important; font-weight:600 !important; }
.v26-room-footer__actions { display:flex; align-items:center; gap:.65rem; }
.v26-room-details-btn { font-size:.72rem !important; font-weight:600 !important; letter-spacing:.08em !important; color:var(--v26-navy3) !important; -webkit-text-fill-color:var(--v26-navy3) !important; text-decoration:none !important; padding:.6rem .9rem !important; border:1.5px solid rgba(26,58,92,.20) !important; border-radius:10px !important; background:transparent !important; cursor:pointer !important; transition:border-color .25s,color .25s,background .25s !important; }
.v26-room-details-btn:hover,.v26-room-card.details-open .v26-room-details-btn { border-color:var(--v26-gold) !important; color:var(--v26-gold-dk) !important; -webkit-text-fill-color:var(--v26-gold-dk) !important; background:rgba(212,175,55,.06) !important; }
.v26-room-book-btn { background:var(--gv26-btn) !important; background-size:200% auto !important; color:#060e1a !important; -webkit-text-fill-color:#060e1a !important; border:none !important; border-radius:10px !important; font-size:.82rem !important; font-weight:800 !important; padding:.7rem 1.4rem !important; display:inline-flex !important; align-items:center !important; gap:.4rem !important; box-shadow:var(--sv26-gold) !important; text-decoration:none !important; transition:transform .3s var(--spring),box-shadow .3s,background-position .4s !important; }
.v26-room-book-btn:hover { background-position:right center !important; transform:translateY(-3px) scale(1.04) !important; box-shadow:var(--sv26-gold-lg) !important; color:#060e1a !important; }
/* Expand panel */
.v26-room-expand { max-height:0; overflow:hidden; opacity:0; transition:max-height .45s var(--out),opacity .35s,padding .35s !important; border-top:1px solid transparent; }
.v26-room-card.details-open .v26-room-expand { max-height:400px !important; opacity:1 !important; border-top-color:rgba(212,175,55,.12) !important; padding:0 1.8rem 1.4rem !important; }
.v26-room-expand__inner { }
.v26-room-expand__label { font-size:.62rem !important; font-weight:800 !important; letter-spacing:.16em !important; text-transform:uppercase !important; background:var(--gv26-gold) !important; background-size:200% auto !important; -webkit-background-clip:text !important; -webkit-text-fill-color:transparent !important; background-clip:text !important; margin-bottom:.8rem !important; display:block !important; }
.v26-room-expand__list { display:grid; grid-template-columns:1fr 1fr; gap:.4rem; list-style:none !important; padding:0 !important; margin:0 !important; }
.v26-room-expand__list li { display:flex !important; align-items:center !important; gap:.4rem !important; font-size:.78rem !important; color:#555 !important; -webkit-text-fill-color:#555 !important; }
.v26-room-expand__list li svg { stroke:var(--v26-gold); flex-shrink:0; }

/* ─────────────────────────────────────────────────────────────
   RESERVE YOUR MOUNTAIN ESCAPE — v26 3-column design
───────────────────────────────────────────────────────────── */
.v26-reserve-section {
  position: relative !important;
  overflow: hidden !important;
  padding: 6rem 0 5rem !important;
  background: var(--gv26-dark) !important;
}
.v26-rs__bg {
  position:absolute; inset:0; pointer-events:none;
  background: radial-gradient(ellipse 70% 100% at 20% 60%,rgba(212,175,55,.08) 0%,transparent 65%),
              radial-gradient(ellipse 55% 80% at 80% 20%,rgba(249,115,22,.06) 0%,transparent 60%),
              radial-gradient(ellipse 40% 55% at 50% 100%,rgba(212,175,55,.05) 0%,transparent 55%);
}
.v26-rs__mountain-silhouette { position:absolute; bottom:0; left:0; right:0; height:200px; pointer-events:none; z-index:0; }
.v26-rs__mountain-silhouette svg { width:100%; height:100%; }
.v26-rs__orb-1 { position:absolute; width:500px; height:500px; top:-150px; left:-100px; border-radius:50%; background:rgba(212,175,55,.06); filter:blur(80px); pointer-events:none; animation:v26OrbFloat 14s ease-in-out infinite; }
.v26-rs__orb-2 { position:absolute; width:380px; height:380px; bottom:-100px; right:-80px; border-radius:50%; background:rgba(249,115,22,.05); filter:blur(70px); pointer-events:none; animation:v26OrbFloat 18s 4s ease-in-out infinite; }
.v26-rs__container { position:relative; z-index:2; }

/* HEADLINE */
.v26-rs__headline { text-align:center; margin-bottom:3rem; }
.v26-rs__eyebrow {
  display:inline-flex; align-items:center; gap:.5rem;
  font-size:.68rem; font-weight:800; letter-spacing:.22em; text-transform:uppercase;
  background:var(--gv26-gold); background-size:200% auto;
  -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
  animation:v26Shimmer 5s linear infinite;
  filter:drop-shadow(0 1px 8px rgba(212,175,55,.5));
  margin-bottom:.75rem;
}
.v26-rs__eyebrow svg { stroke:var(--v26-gold); -webkit-text-fill-color:unset; }
.v26-rs__title {
  font-size:clamp(1.8rem,3.5vw,2.8rem) !important;
  background:var(--gv26-hero) !important; background-size:220% auto !important;
  -webkit-background-clip:text !important; -webkit-text-fill-color:transparent !important;
  background-clip:text !important; animation:v26Shimmer 8s linear infinite !important;
  filter:drop-shadow(0 2px 18px rgba(0,0,0,.40)) !important;
  line-height:1.18 !important; margin-bottom:.9rem !important;
}
.v26-rs__subtitle {
  font-size:.92rem; color:rgba(255,255,255,.55) !important; -webkit-text-fill-color:rgba(255,255,255,.55) !important;
  line-height:1.6; max-width:560px; margin:0 auto;
}

/* STAT STRIP */
.v26-rs__stats {
  display:flex; align-items:center; justify-content:center;
  gap:0; flex-wrap:wrap;
  padding:1.5rem 2rem;
  margin-bottom:3.5rem;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(212,175,55,.16);
  border-radius:20px;
  backdrop-filter:blur(16px);
}
.v26-rs__stat { display:flex; align-items:center; gap:.65rem; padding:.4rem 2rem; }
.v26-rs__stat svg { stroke:var(--v26-gold); flex-shrink:0; }
.v26-rs__stat-num {
  font-size:1.45rem; font-weight:800; line-height:1;
  background:var(--gv26-gold); background-size:200% auto;
  -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
  animation:v26Shimmer 5s linear infinite;
}
.v26-rs__stat-lbl { font-size:.65rem; font-weight:600; letter-spacing:.12em; text-transform:uppercase; color:rgba(255,255,255,.45); -webkit-text-fill-color:rgba(255,255,255,.45); }
.v26-rs__stat-sep { width:1px; height:36px; background:rgba(212,175,55,.20); flex-shrink:0; }

/* 3-COLUMN GRID */
.v26-rs__grid {
  display:grid;
  grid-template-columns: 1fr 1.2fr 1fr;
  gap:1.8rem;
  align-items:start;
  margin-bottom:3rem;
}

/* Shared card base */
.v26-rs__perks-card,
.v26-rs__cta-card,
.v26-rs__find-card {
  border-radius:22px;
  padding:2rem;
  position:relative;
  overflow:hidden;
  transition:transform .45s var(--spring),box-shadow .4s !important;
}
.v26-rs__perks-card:hover,.v26-rs__cta-card:hover,.v26-rs__find-card:hover { transform:translateY(-8px) !important; }

/* Card icon */
.v26-rs__card-icon { width:52px; height:52px; border-radius:14px; margin-bottom:1.2rem; background:rgba(212,175,55,.12); border:1.5px solid rgba(212,175,55,.25); display:flex; align-items:center; justify-content:center; transition:transform .35s var(--spring) !important; }
.v26-rs__perks-card:hover .v26-rs__card-icon,.v26-rs__find-card:hover .v26-rs__card-icon { transform:scale(1.1) rotate(3deg) !important; }
.v26-rs__card-icon svg { stroke:var(--v26-gold-lt); }
.v26-rs__card-title { font-size:1.1rem !important; font-weight:700 !important; background:var(--gv26-hero) !important; background-size:200% auto !important; -webkit-background-clip:text !important; -webkit-text-fill-color:transparent !important; background-clip:text !important; animation:v26Shimmer 8s linear infinite !important; margin-bottom:.6rem !important; line-height:1.2 !important; }

/* PERKS CARD */
.v26-rs__perks-card {
  background:rgba(255,255,255,.045);
  border:1.5px solid rgba(212,175,55,.18);
  box-shadow:var(--sv26-glass);
  backdrop-filter:blur(20px);
}
.v26-rs__perks-card__glow { position:absolute; inset:-30px; border-radius:50%; background:radial-gradient(circle,rgba(212,175,55,.15) 0%,transparent 65%); pointer-events:none; z-index:0; opacity:0; transition:opacity .4s; }
.v26-rs__perks-card:hover .v26-rs__perks-card__glow { opacity:1; }
.v26-rs__perks-card__header { display:flex; align-items:center; gap:.8rem; margin-bottom:1.4rem; position:relative; z-index:2; }
.v26-rs__perks-list { list-style:none !important; padding:0 !important; margin:0 !important; display:flex !important; flex-direction:column !important; gap:.7rem !important; position:relative; z-index:2; }
.v26-rs__perk { display:flex !important; align-items:flex-start !important; gap:.5rem !important; font-size:.85rem !important; color:rgba(255,255,255,.72) !important; -webkit-text-fill-color:rgba(255,255,255,.72) !important; line-height:1.4 !important; }
.v26-rs__perk svg { stroke:var(--v26-gold); flex-shrink:0; margin-top:2px; }

/* FEATURED CTA CARD */
.v26-rs__cta-card--featured {
  background: linear-gradient(145deg,rgba(13,31,53,.98) 0%,rgba(26,58,92,.92) 50%,rgba(13,31,53,.98) 100%);
  border:2px solid rgba(212,175,55,.45);
  box-shadow:var(--sv26-hover),0 0 0 4px rgba(212,175,55,.08);
  backdrop-filter:blur(24px);
}
.v26-rs__cta-card__shine { position:absolute; top:0; left:-100%; width:55%; height:100%; background:linear-gradient(105deg,transparent,rgba(255,255,255,.06),transparent); pointer-events:none; z-index:1; transition:left .6s ease; }
.v26-rs__cta-card:hover .v26-rs__cta-card__shine { animation:v26ShineSwipe .7s ease forwards !important; }
.v26-rs__cta-card__glow { position:absolute; inset:-40px; border-radius:50%; background:radial-gradient(circle,rgba(212,175,55,.22) 0%,rgba(249,115,22,.10) 45%,transparent 68%); pointer-events:none; z-index:0; opacity:0; transition:opacity .4s; }
.v26-rs__cta-card:hover .v26-rs__cta-card__glow { opacity:1; }
.v26-rs__cta-card__pattern { position:absolute; inset:0; border-radius:22px; background-image:radial-gradient(rgba(212,175,55,.06) 1px,transparent 1px); background-size:20px 20px; pointer-events:none; z-index:0; }
.v26-rs__cta-card__top { display:flex; align-items:flex-start; justify-content:space-between; margin-bottom:1.4rem; position:relative; z-index:2; }
.v26-rs__cta-card__badge { font-size:.6rem; font-weight:800; letter-spacing:.16em; text-transform:uppercase; background:var(--gv26-btn); background-size:200% auto; color:#060e1a; -webkit-text-fill-color:#060e1a; padding:.3rem .75rem; border-radius:50px; box-shadow:var(--sv26-gold); }
.v26-rs__cta-icon { width:60px; height:60px; border-radius:16px; background:rgba(212,175,55,.15); border:1.5px solid rgba(212,175,55,.35); display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.v26-rs__cta-icon svg { stroke:var(--v26-gold-lt); }
.v26-rs__cta-card__heading { font-size:1.35rem !important; font-weight:800 !important; background:var(--gv26-hero) !important; background-size:200% auto !important; -webkit-background-clip:text !important; -webkit-text-fill-color:transparent !important; background-clip:text !important; animation:v26Shimmer 8s linear infinite !important; margin-bottom:.7rem !important; position:relative; z-index:2; line-height:1.2 !important; }
.v26-rs__cta-card__desc { font-size:.88rem !important; color:rgba(255,255,255,.62) !important; -webkit-text-fill-color:rgba(255,255,255,.62) !important; line-height:1.58 !important; margin-bottom:1.4rem !important; position:relative; z-index:2; }
.v26-rs__price-hint { display:flex; align-items:baseline; gap:.3rem; margin-bottom:1.5rem; position:relative; z-index:2; }
.v26-rs__price-from { font-size:.7rem; font-weight:600; color:rgba(255,255,255,.50); -webkit-text-fill-color:rgba(255,255,255,.50); }
.v26-rs__price-num { font-size:1.8rem; font-weight:800; line-height:1; background:var(--gv26-gold); background-size:200% auto; -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; animation:v26Shimmer 5s linear infinite; filter:drop-shadow(0 2px 14px rgba(212,175,55,.5)); }
.v26-rs__price-night { font-size:.75rem; color:rgba(255,255,255,.45); -webkit-text-fill-color:rgba(255,255,255,.45); }
.v26-rs__main-btn {
  display:flex !important; align-items:center !important; justify-content:center !important; gap:.55rem !important;
  background:var(--gv26-btn) !important; background-size:200% auto !important;
  color:#060e1a !important; -webkit-text-fill-color:#060e1a !important;
  font-weight:800 !important; font-size:1rem !important; letter-spacing:.04em !important;
  border:none !important; border-radius:14px !important; width:100% !important; padding:1.15rem !important;
  box-shadow:var(--sv26-gold) !important; text-decoration:none !important;
  transition:transform .3s var(--spring),box-shadow .3s,background-position .4s !important;
  position:relative; z-index:2 !important;
}
.v26-rs__main-btn:hover { background-position:right center !important; transform:translateY(-4px) scale(1.03) !important; box-shadow:var(--sv26-gold-lg) !important; color:#060e1a !important; }
.v26-rs__cta-note { font-size:.72rem !important; color:rgba(255,255,255,.40) !important; -webkit-text-fill-color:rgba(255,255,255,.40) !important; text-align:center !important; margin-top:.8rem !important; position:relative; z-index:2 !important; }

/* FIND CARD */
.v26-rs__find-card {
  background:rgba(255,255,255,.04);
  border:1.5px solid rgba(212,175,55,.16);
  box-shadow:var(--sv26-card);
  backdrop-filter:blur(18px);
}
.v26-rs__find-card__glow { position:absolute; inset:-25px; border-radius:50%; background:radial-gradient(circle,rgba(212,175,55,.12) 0%,transparent 65%); pointer-events:none; z-index:0; opacity:0; transition:opacity .4s; }
.v26-rs__find-card:hover .v26-rs__find-card__glow { opacity:1; }
.v26-rs__find-desc { font-size:.86rem !important; color:rgba(255,255,255,.58) !important; -webkit-text-fill-color:rgba(255,255,255,.58) !important; line-height:1.55 !important; margin-bottom:1.2rem !important; position:relative; z-index:2; }
.v26-rs__shortcode { position:relative; z-index:2; }
/* Shortcode form styles */
.v26-rs__shortcode input,.v26-rs__shortcode select { background:rgba(255,255,255,.07) !important; border:1.5px solid rgba(212,175,55,.22) !important; border-radius:11px !important; color:#fff !important; padding:.75rem 1rem !important; width:100% !important; font-family:inherit !important; font-size:.9rem !important; transition:border-color .25s,box-shadow .25s !important; margin-bottom:.7rem !important; }
.v26-rs__shortcode input:focus,.v26-rs__shortcode select:focus { outline:none !important; border-color:var(--v26-gold) !important; box-shadow:0 0 0 3px rgba(212,175,55,.18) !important; }
.v26-rs__shortcode label { color:rgba(245,215,135,.72) !important; font-size:.7rem !important; font-weight:700 !important; letter-spacing:.12em !important; text-transform:uppercase !important; -webkit-text-fill-color:rgba(245,215,135,.72) !important; display:block !important; margin-bottom:.3rem !important; }
.v26-rs__shortcode button,.v26-rs__shortcode [type="submit"] { background:var(--gv26-btn) !important; background-size:200% auto !important; color:#060e1a !important; border:none !important; border-radius:11px !important; font-weight:800 !important; font-size:.9rem !important; padding:.88rem 1.6rem !important; cursor:pointer !important; box-shadow:var(--sv26-gold) !important; width:100% !important; margin-top:.4rem !important; transition:transform .3s var(--spring),box-shadow .3s,background-position .4s !important; }
.v26-rs__shortcode button:hover,.v26-rs__shortcode [type="submit"]:hover { transform:translateY(-3px) !important; box-shadow:var(--sv26-gold-lg) !important; background-position:right center !important; }
/* Contact fallback */
.v26-rs__contact { display:flex; flex-direction:column; gap:.65rem; }
.v26-rs__contact-btn { display:flex; align-items:center; gap:.5rem; font-size:.86rem; font-weight:600; color:rgba(245,215,135,.82) !important; -webkit-text-fill-color:rgba(245,215,135,.82) !important; background:rgba(212,175,55,.08); border:1px solid rgba(212,175,55,.22); border-radius:10px; padding:.72rem 1rem; text-decoration:none; transition:background .25s,border-color .25s,transform .3s var(--spring) !important; }
.v26-rs__contact-btn:hover { background:rgba(212,175,55,.16) !important; border-color:rgba(212,175,55,.45) !important; transform:translateX(4px) !important; }
.v26-rs__contact-btn svg { stroke:var(--v26-gold); flex-shrink:0; }
/* Quick facts */
.v26-rs__facts { display:flex; flex-direction:column; gap:.55rem; margin-top:1.2rem; padding-top:1.2rem; border-top:1px solid rgba(212,175,55,.12); position:relative; z-index:2; }
.v26-rs__fact { display:flex; justify-content:space-between; align-items:center; font-size:.82rem; }
.v26-rs__fact span { color:rgba(255,255,255,.50); -webkit-text-fill-color:rgba(255,255,255,.50); }
.v26-rs__fact strong { color:rgba(245,215,135,.80); -webkit-text-fill-color:rgba(245,215,135,.80); font-weight:700; }

/* TRUST BAR */
.v26-rs__trust { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:0; padding:1.8rem 0 0; border-top:1px solid rgba(212,175,55,.12); }
.v26-rs__trust-item { display:flex; align-items:center; gap:.5rem; padding:.5rem 2rem; font-size:.78rem; font-weight:600; letter-spacing:.06em; color:rgba(245,215,135,.72) !important; -webkit-text-fill-color:rgba(245,215,135,.72) !important; }
.v26-rs__trust-item svg { stroke:var(--v26-gold); flex-shrink:0; }
.v26-rs__trust-sep { width:1px; height:20px; background:rgba(212,175,55,.18); flex-shrink:0; }

/* ─────────────────────────────────────────────────────────────
   BOOKING PAGE v26 — Ultra premium
───────────────────────────────────────────────────────────── */
.v26-booking-perks-bar {
  background: var(--gv26-dark) !important;
  padding: 1.2rem 0 !important;
  position: relative !important;
  overflow: hidden !important;
}
.v26-booking-perks-bar__glow { position:absolute; inset:0; background:radial-gradient(ellipse 80% 120% at 50% 50%,rgba(212,175,55,.07) 0%,transparent 65%); pointer-events:none; }
.v26-booking-perks-bar__inner { display:flex; align-items:center; justify-content:center; gap:0; flex-wrap:wrap; }
.v26-booking-perks-bar__item { display:flex; align-items:center; gap:.45rem; padding:.4rem 1.5rem; font-size:.72rem; font-weight:600; letter-spacing:.07em; color:rgba(245,215,135,.78) !important; -webkit-text-fill-color:rgba(245,215,135,.78) !important; }
.v26-booking-perks-bar__item svg { stroke:var(--v26-gold); flex-shrink:0; }
.v26-booking-perks-bar__sep { width:1px; height:16px; background:rgba(212,175,55,.20); flex-shrink:0; }

.v26-booking-main-section { background:linear-gradient(160deg,#f8f5ee 0%,#fdfaf3 55%,#f5f0e8 100%) !important; }
.v26-booking-layout { display:grid; grid-template-columns:1fr 380px; gap:3rem; align-items:start; }

.v26-booking-form-wrap {
  background: #fff !important;
  border-radius: 24px !important;
  padding: 2.5rem !important;
  box-shadow: var(--sv26-card) !important;
  border: 1px solid rgba(212,175,55,.12) !important;
}
.v26-booking-form-header { display:flex; align-items:flex-start; gap:1.2rem; margin-bottom:1.2rem; }
.v26-booking-form-header__icon { width:52px; height:52px; border-radius:14px; flex-shrink:0; background:linear-gradient(135deg,rgba(212,175,55,.15),rgba(212,175,55,.08)); border:1.5px solid rgba(212,175,55,.25); display:flex; align-items:center; justify-content:center; }
.v26-booking-form-header__icon svg { stroke:var(--v26-gold); }
.v26-booking-form-header__step { display:block; font-size:.62rem; font-weight:700; letter-spacing:.18em; text-transform:uppercase; background:var(--gv26-gold); background-size:200% auto; -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; animation:v26Shimmer 5s linear infinite; margin-bottom:.25rem; }

/* ─────────────────────────────────────────────────────────────
   SUBPAGE HERO — FINAL FIX (definitive working version)
───────────────────────────────────────────────────────────── */
@keyframes v26HeroEntry { 0%{transform:scale(1.35)} 100%{transform:scale(1.13)} }
@keyframes v26HeroDrift {
  0%  {transform:scale(1.13) translate(  0%,  0%)}
  16% {transform:scale(1.15) translate( -2%,-1.5%)}
  33% {transform:scale(1.13) translate(1.5%, 0.8%)}
  50% {transform:scale(1.14) translate(-0.8%,1.5%)}
  66% {transform:scale(1.13) translate(1.2%,-1.0%)}
  83% {transform:scale(1.14) translate(-1.5%,0.5%)}
  100%{transform:scale(1.13) translate(0.5%,-0.5%)}
}
@keyframes v26Overlay { 0%,100%{opacity:1} 45%{opacity:.84} }
@keyframes v26LabelIn { from{opacity:0;transform:translateX(-30px) skewX(-6deg)} to{opacity:1;transform:translateX(0) skewX(0)} }
@keyframes v26TitleIn { from{opacity:0;transform:translateY(40px) scale(.93)} to{opacity:1;transform:translateY(0) scale(1)} }
@keyframes v26SubIn   { from{opacity:0;transform:translateY(26px)} to{opacity:1;transform:translateY(0)} }
@keyframes v26LineIn  { from{width:0;opacity:0} to{width:80px;opacity:1} }

.page-hero { position:relative !important; overflow:hidden !important; isolation:isolate !important; }
.page-hero::after { content:'' !important; position:absolute !important; inset:0 !important; z-index:2 !important; background:linear-gradient(to bottom,rgba(6,14,26,.07) 0%,rgba(13,31,53,.50) 50%,rgba(6,14,26,.90) 100%) !important; pointer-events:none !important; animation:v26Overlay 10s ease-in-out infinite !important; }
.page-hero-bg { position:absolute !important; inset:0 !important; z-index:0 !important; overflow:hidden !important; }
.page-hero-bg img,.page-hero-bg .v24-hero-img {
  position:absolute !important;
  top:-8% !important; left:-8% !important;
  width:116% !important; height:116% !important;
  object-fit:cover !important; object-position:center !important;
  will-change:transform !important; transform-origin:center center !important;
  animation:v26HeroEntry 2s cubic-bezier(.08,.85,.22,1) forwards,
            v26HeroDrift 36s 2s ease-in-out infinite !important;
}
.page-hero-content { position:relative !important; z-index:3 !important; }
.page-hero .section-label    { animation:v26LabelIn .75s .4s var(--out) both !important; display:inline-block !important; }
.page-hero .page-hero-title  { animation:v26TitleIn .9s .58s var(--out) both,v26Shimmer 8s 1.5s linear infinite !important; }
.page-hero .page-hero-subtitle { animation:v26SubIn .85s .82s var(--out) both !important; color:rgba(255,255,255,.90) !important; text-shadow:0 2px 16px rgba(0,0,0,.58) !important; }
.page-hero-title::after { content:'' !important; display:block !important; height:2.5px !important; background:linear-gradient(90deg,var(--v26-gold),var(--v26-gold-lt),var(--v26-sunrise),transparent) !important; border-radius:2px !important; margin-top:.6rem !important; animation:v26LineIn .7s 1.3s var(--out) both !important; box-shadow:0 2px 14px rgba(212,175,55,.42) !important; }

/* Hero KB slides */
@keyframes v26KB1 { from{transform:scale(1.22) translate(2.5%,1.5%)} to{transform:scale(1.06) translate(-1.5%,-1%)} }
@keyframes v26KB2 { from{transform:scale(1.19) translate(-2%,-1.5%)} to{transform:scale(1.06) translate(1.5%,1%)} }
@keyframes v26KB3 { from{transform:scale(1.24) translate(0%,2.5%)} to{transform:scale(1.06) translate(0%,-1.5%)} }
.v8-hero__slide.is-active .v8-hero__bg img { animation:v26KB1 12s ease-in-out forwards !important; }
.v8-hero__slide[data-index="1"].is-active .v8-hero__bg img { animation:v26KB2 12s ease-in-out forwards !important; }
.v8-hero__slide[data-index="2"].is-active .v8-hero__bg img { animation:v26KB3 12s ease-in-out forwards !important; }
.v8-hero__slide[data-index="3"].is-active .v8-hero__bg img { animation:v26KB1 12s ease-in-out forwards !important; }
.v8-hero__slide::after { content:'' !important; position:absolute !important; inset:0 !important; background:linear-gradient(to bottom,rgba(6,14,26,.06) 0%,rgba(13,31,53,.48) 55%,rgba(6,14,26,.90) 100%) !important; z-index:1 !important; pointer-events:none !important; }
.v8-hero__content,.v8-hero__slide>.container { z-index:2 !important; position:relative !important; }
.v8-hero__bg img,.hero-slide__bg img { width:100% !important; height:100% !important; object-fit:cover !important; }

/* ─────────────────────────────────────────────────────────────
   MISC: buttons, cards, gold divider, scrollbar
───────────────────────────────────────────────────────────── */
.btn--primary,.header-book-btn { background:var(--gv26-btn) !important; background-size:200% auto !important; color:#060e1a !important; font-weight:700 !important; box-shadow:var(--sv26-gold) !important; transition:transform .3s var(--spring),box-shadow .3s,background-position .4s !important; }
.btn--primary:hover,.header-book-btn:hover { background-position:right center !important; transform:translateY(-4px) scale(1.03) !important; box-shadow:var(--sv26-gold-lg) !important; color:#060e1a !important; }
.v8-room-card { transition:transform .45s var(--spring),box-shadow .4s !important; will-change:transform !important; }
.v8-room-card:hover { transform:translateY(-18px) scale(1.024) !important; box-shadow:var(--sv26-hover) !important; }
.amenity-card { transition:transform .4s var(--spring),box-shadow .35s !important; }
.amenity-card:hover { transform:translateY(-12px) !important; box-shadow:var(--sv26-hover) !important; }
.amenity-icon { transition:transform .32s var(--spring) !important; display:inline-block !important; }
.amenity-card:hover .amenity-icon { transform:scale(1.24) rotate(6deg) !important; }
.stat-item { transition:transform .38s var(--spring) !important; }
.stat-item:hover { transform:translateY(-8px) scale(1.05) !important; }
.home-gallery-grid { perspective:1400px !important; }
.home-gallery-item { border-radius:18px !important; overflow:hidden !important; position:relative !important; cursor:pointer !important; will-change:transform !important; transition:transform .5s var(--spring),box-shadow .42s,border-color .3s !important; border:1.5px solid transparent !important; box-shadow:var(--sv26-card) !important; }
.home-gallery-item:hover { transform:translateY(-20px) scale(1.044) rotateX(2.5deg) !important; box-shadow:var(--sv26-hover),0 0 0 2px rgba(212,175,55,.58) !important; border-color:rgba(212,175,55,.58) !important; z-index:5 !important; }
.home-gallery-item img { width:100% !important; height:100% !important; object-fit:cover !important; display:block !important; transition:transform .65s var(--out),filter .4s !important; }
.home-gallery-item:hover img { transform:scale(1.10) !important; filter:brightness(1.08) saturate(1.14) !important; }
.site-header.header--scrolled,.site-header.scrolled { box-shadow:0 4px 42px rgba(0,0,0,.38) !important; backdrop-filter:blur(24px) saturate(170%) !important; -webkit-backdrop-filter:blur(24px) saturate(170%) !important; }
.gold-divider { background:linear-gradient(90deg,transparent 0%,#a07828 14%,#f5d787 40%,#d4af37 57%,#f97316 75%,transparent 100%) !important; background-size:300% auto !important; animation:v26Shimmer 4s linear infinite !important; height:1.5px !important; border:none !important; border-radius:2px !important; box-shadow:0 2px 16px rgba(212,175,55,.32) !important; }
.about-snippet__image { position:relative !important; border-radius:20px !important; overflow:hidden !important; }
.about-snippet__image img { width:100% !important; min-height:420px !important; object-fit:cover !important; border-radius:20px !important; box-shadow:var(--sv26-hover) !important; display:block !important; transition:transform .6s var(--out) !important; }
.about-snippet__image:hover img { transform:scale(1.026) !important; }
::-webkit-scrollbar { width:5px; height:5px; } ::-webkit-scrollbar-track { background:#030810; } ::-webkit-scrollbar-thumb { background:linear-gradient(180deg,#a07828,#f5d787,#d4af37,#f97316); border-radius:4px; }

/* ─────────────────────────────────────────────────────────────
   MOBILE
───────────────────────────────────────────────────────────── */
@media (max-width:1024px) { .v26-rs__grid { grid-template-columns:1fr 1fr; } .v26-rs__perks-card { grid-column:1/-1; } }
@media (max-width:768px) {
  #main-navigation { display:block !important; position:fixed !important; top:0 !important; left:0 !important; width:82vw !important; max-width:320px !important; height:100vh !important; overflow-y:auto !important; background:linear-gradient(160deg,#030810 0%,#0d1f35 55%,#030810 100%) !important; z-index:10000000 !important; padding:5rem 1.5rem 2rem !important; box-shadow:8px 0 55px rgba(0,0,0,.72) !important; border-right:1px solid rgba(212,175,55,.18) !important; transform:translateX(-105%) !important; transition:transform .38s var(--out) !important; will-change:transform !important; }
  #main-navigation.is-open { transform:translateX(0) !important; }
  #main-navigation .menu,#main-navigation ul { list-style:none !important; padding:0 !important; margin:0 !important; display:block !important; }
  #main-navigation li { display:block !important; border-bottom:1px solid rgba(212,175,55,.10) !important; }
  #main-navigation li a { display:flex !important; align-items:center !important; justify-content:space-between !important; padding:.9rem 0 !important; font-size:1rem !important; font-weight:500 !important; text-decoration:none !important; color:rgba(255,255,255,.88) !important; -webkit-text-fill-color:rgba(255,255,255,.88) !important; transition:color .25s !important; }
  #main-navigation li a:hover,#main-navigation li.current-menu-item>a { color:#f5d787 !important; -webkit-text-fill-color:#f5d787 !important; }
  #main-navigation .sub-menu { display:none !important; padding-left:1rem !important; background:rgba(255,255,255,.04) !important; border-radius:8px !important; }
  #main-navigation li.sub-open>.sub-menu { display:block !important; }
  .mobile-menu-toggle { display:flex !important; z-index:10000002 !important; }
  .v26-rooms-grid { grid-template-columns:1fr !important; gap:2rem !important; }
  .v26-room-img { height:220px !important; }
  .v26-rs__stats { gap:0; padding:1rem; }
  .v26-rs__stat { padding:.4rem 1rem; }
  .v26-rs__stat-sep { display:none; }
  .v26-rs__grid { grid-template-columns:1fr !important; }
  .v26-booking-layout { grid-template-columns:1fr !important; }
  .page-hero { min-height:320px !important; }
  .page-hero-bg img,.page-hero-bg .v24-hero-img { animation:v26HeroEntry 2s cubic-bezier(.08,.85,.22,1) forwards !important; }
  .page-hero-title::after { display:none !important; }
  .v26-rs__trust-sep { display:none; }
  .v26-rs__trust-item { padding:.5rem 1rem; font-size:.72rem; }
  .v26-booking-perks-bar__sep { display:none; }
  .v26-booking-form-wrap { padding:1.5rem; border-radius:16px; }
}

@media (prefers-reduced-motion:reduce) {
  .page-hero-bg img,.page-hero-bg .v24-hero-img,.page-hero::after,
  .v8-hero__slide.is-active .v8-hero__bg img,
  .section-title,.section--dark .section-title,.v8-hero__title,
  .page-hero .page-hero-title,.stat-number,.footer-col-title,
  .v26-rs__eyebrow,.v26-rs__title,.v26-rs__stat-num,.v26-rs__price-num,
  .v26-rs__cta-card__heading,.v26-rs__card-title,
  .v26-room-type,.v26-price-val,.v26-room-img__price-val,
  .v26-booking-form-header__step,.gold-divider { animation:none !important; }
  .page-hero-bg img,.page-hero-bg .v24-hero-img { position:static !important; width:100% !important; height:100% !important; top:auto !important; left:auto !important; transform:none !important; }
  .section-title { -webkit-text-fill-color:var(--v26-navy2) !important; background:none !important; }
  .v8-hero__title,.section--dark .section-title { -webkit-text-fill-color:#f5d787 !important; background:none !important; }
}

/* ── design-v27.css (19,866b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v27
   Base: v26 | Changes:
   1. Reserve section Find Booking card — bigger, balanced columns
   2. Hero H1 gradient — more dramatic, eye-catching
   3. Subpage hero image — cinematic live motion animation
   4. Ultra-premium site-wide shadows + 3D depth effects
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   1. RESERVE SECTION — FIND BOOKING CARD FIX
      Make all 3 columns equal height, find-booking card bigger
───────────────────────────────────────────────────────────── */

/* Equal-height 3-column grid */
.v26-rs__grid {
  grid-template-columns: 1fr 1.15fr 1fr !important;
  align-items: stretch !important;
  gap: 2rem !important;
}

/* All cards stretch full height */
.v26-rs__perks-card,
.v26-rs__cta-card,
.v26-rs__find-card {
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  box-sizing: border-box !important;
}

/* Find booking card — upgraded padding & prominence */
.v26-rs__find-card {
  padding: 2.2rem 2rem !important;
  background: rgba(255,255,255,.055) !important;
  border: 1.5px solid rgba(212,175,55,.24) !important;
  box-shadow:
    0 30px 80px rgba(6,14,26,.55),
    0 8px 24px rgba(6,14,26,.30),
    inset 0 1px 1px rgba(255,255,255,.10) !important;
}

/* Find booking card icon — bigger */
.v26-rs__find-card > .v26-rs__card-icon {
  width: 58px !important;
  height: 58px !important;
  border-radius: 16px !important;
  background: rgba(212,175,55,.14) !important;
  border: 1.5px solid rgba(212,175,55,.35) !important;
  margin-bottom: 1.3rem !important;
  flex-shrink: 0 !important;
}

/* Find booking card title — larger */
.v26-rs__find-card .v26-rs__card-title {
  font-size: 1.18rem !important;
  margin-bottom: .75rem !important;
}

/* Find booking description — bigger text */
.v26-rs__find-desc {
  font-size: .9rem !important;
  color: rgba(255,255,255,.64) !important;
  -webkit-text-fill-color: rgba(255,255,255,.64) !important;
  line-height: 1.6 !important;
  margin-bottom: 1.4rem !important;
}

/* Shortcode area grows to fill */
.v26-rs__shortcode {
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
}

/* Quick facts pushed to bottom */
.v26-rs__facts {
  margin-top: auto !important;
}

/* Perks card equal treatment */
.v26-rs__perks-card {
  padding: 2.2rem 2rem !important;
}

/* Contact buttons in fallback — slightly larger */
.v26-rs__contact-btn {
  font-size: .9rem !important;
  padding: .82rem 1.1rem !important;
}

/* ─────────────────────────────────────────────────────────────
   2. HERO H1 GRADIENT — Ultra dramatic eye-catching
───────────────────────────────────────────────────────────── */

@keyframes v27HeroTitleShimmer {
  0%   { background-position: 0% 50%; filter: drop-shadow(0 4px 40px rgba(212,175,55,.55)) drop-shadow(0 0 80px rgba(249,115,22,.25)); }
  25%  { background-position: 60% 50%; filter: drop-shadow(0 6px 50px rgba(249,115,22,.60)) drop-shadow(0 0 100px rgba(212,175,55,.30)); }
  50%  { background-position: 130% 50%; filter: drop-shadow(0 5px 45px rgba(212,175,55,.65)) drop-shadow(0 0 90px rgba(249,115,22,.35)); }
  75%  { background-position: 190% 50%; filter: drop-shadow(0 7px 55px rgba(249,115,22,.55)) drop-shadow(0 0 110px rgba(212,175,55,.28)); }
  100% { background-position: 260% 50%; filter: drop-shadow(0 4px 40px rgba(212,175,55,.55)) drop-shadow(0 0 80px rgba(249,115,22,.25)); }
}

@keyframes v27TitlePulse {
  0%,100% { letter-spacing: -.01em; }
  50%      { letter-spacing:  .005em; }
}

.v8-hero__title {
  background: linear-gradient(
    105deg,
    #fffde7 0%,
    #f5d787 8%,
    #d4af37 18%,
    #fff8e0 30%,
    #f97316 42%,
    #f5d787 52%,
    #ffffff 58%,
    #d4af37 66%,
    #f5d787 76%,
    #f97316 86%,
    #fff8e7 94%,
    #f5d787 100%
  ) !important;
  background-size: 300% 300% !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation:
    v27HeroTitleShimmer 6s ease-in-out infinite,
    v27TitlePulse 8s ease-in-out infinite !important;
  text-shadow: none !important;
}

/* Also enhance the hero subtitle area */
.v8-hero__subtitle, .hero-subtitle {
  text-shadow: 0 2px 20px rgba(0,0,0,.75), 0 0 60px rgba(6,14,26,.55) !important;
}

/* ─────────────────────────────────────────────────────────────
   3. SUBPAGE HERO — CINEMATIC LIVE MOTION ANIMATION
───────────────────────────────────────────────────────────── */

/* Cinematic multi-stage drift — feels alive, parallax-like */
@keyframes v27CinematicDrift {
  0%   { transform: scale(1.22) translate(3%,2%) rotate(.3deg); }
  8%   { transform: scale(1.19) translate(1.5%,0.5%) rotate(0deg); }
  20%  { transform: scale(1.17) translate(-1%,-1.5%) rotate(-.2deg); }
  33%  { transform: scale(1.15) translate(-2.5%,.8%) rotate(.15deg); }
  47%  { transform: scale(1.16) translate(-.5%,2%) rotate(-.1deg); }
  60%  { transform: scale(1.14) translate(1.5%,-0.5%) rotate(.2deg); }
  73%  { transform: scale(1.15) translate(-1.5%,-2%) rotate(-.15deg); }
  86%  { transform: scale(1.14) translate(1%,1.5%) rotate(.1deg); }
  100% { transform: scale(1.14) translate(2%,.8%) rotate(.2deg); }
}

/* Breathing overlay — depth sensation */
@keyframes v27OverlayBreathe {
  0%,100% { opacity: 1; background: linear-gradient(to bottom, rgba(6,14,26,.05) 0%, rgba(13,31,53,.52) 55%, rgba(6,14,26,.92) 100%); }
  30%     { opacity: .9; background: linear-gradient(to bottom, rgba(6,14,26,.08) 0%, rgba(13,31,53,.45) 50%, rgba(6,14,26,.88) 100%); }
  65%     { opacity: .95; background: linear-gradient(to bottom, rgba(6,14,26,.04) 0%, rgba(13,31,53,.58) 60%, rgba(6,14,26,.94) 100%); }
}

/* Light ray sweep effect over image */
@keyframes v27LightRay {
  0%   { opacity: 0; transform: translateX(-120%) skewX(-18deg); }
  15%  { opacity: .18; }
  40%  { opacity: .12; }
  60%  { opacity: 0; transform: translateX(160%) skewX(-18deg); }
  100% { opacity: 0; transform: translateX(160%) skewX(-18deg); }
}

/* Subtle vignette pulse */
@keyframes v27Vignette {
  0%,100% { box-shadow: inset 0 0 120px rgba(6,14,26,.55); }
  50%     { box-shadow: inset 0 0 80px rgba(6,14,26,.30); }
}

.page-hero {
  position: relative !important;
  overflow: hidden !important;
  isolation: isolate !important;
}

/* Animated overlay — breathing depth */
.page-hero::after {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;
  pointer-events: none !important;
  animation: v27OverlayBreathe 12s ease-in-out infinite !important;
}

/* Vignette frame for cinema feel */
.page-hero::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 3 !important;
  pointer-events: none !important;
  animation: v27Vignette 10s ease-in-out infinite !important;
  border-radius: 0 !important;
}

/* Light ray element (injected via CSS pseudo on bg) */
.page-hero-bg::after {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 45% !important;
  height: 100% !important;
  background: linear-gradient(
    105deg,
    transparent 0%,
    rgba(255,248,200,.08) 45%,
    rgba(255,255,255,.11) 55%,
    transparent 100%
  ) !important;
  z-index: 1 !important;
  animation: v27LightRay 14s 2s ease-in-out infinite !important;
  pointer-events: none !important;
}

/* Main cinematic image animation */
.page-hero-bg img,
.page-hero-bg .v24-hero-img {
  position: absolute !important;
  top: -10% !important;
  left: -10% !important;
  width: 120% !important;
  height: 120% !important;
  object-fit: cover !important;
  object-position: center center !important;
  will-change: transform !important;
  transform-origin: center center !important;
  animation: v27CinematicDrift 40s ease-in-out infinite !important;
}

/* Content stays above everything */
.page-hero-content {
  position: relative !important;
  z-index: 4 !important;
}

/* ─────────────────────────────────────────────────────────────
   4. ULTRA-PREMIUM SHADOWS + 3D DEPTH EFFECTS
───────────────────────────────────────────────────────────── */

/* Global enhanced CSS variables */
:root {
  --v27-shadow-xs:   0 2px 8px rgba(6,14,26,.10), 0 1px 3px rgba(6,14,26,.07);
  --v27-shadow-sm:   0 6px 20px rgba(6,14,26,.14), 0 2px 8px rgba(6,14,26,.09);
  --v27-shadow-md:   0 16px 48px rgba(6,14,26,.20), 0 6px 18px rgba(6,14,26,.12);
  --v27-shadow-lg:   0 32px 80px rgba(6,14,26,.28), 0 12px 32px rgba(6,14,26,.16);
  --v27-shadow-xl:   0 56px 120px rgba(6,14,26,.36), 0 20px 50px rgba(6,14,26,.20);
  --v27-shadow-gold: 0 8px 36px rgba(212,175,55,.45), 0 2px 10px rgba(212,175,55,.28), 0 0 0 1px rgba(212,175,55,.12);
  --v27-shadow-gold-xl: 0 24px 70px rgba(212,175,55,.55), 0 8px 28px rgba(212,175,55,.35), 0 0 60px rgba(212,175,55,.15);
  --v27-3d-perspective: perspective(1200px);
}

/* ── SECTION CARDS & CONTAINERS ── */
.v26-room-card,
.v8-room-card {
  box-shadow:
    0 4px 12px rgba(6,14,26,.08),
    0 16px 48px rgba(6,14,26,.16),
    0 32px 80px rgba(6,14,26,.12),
    inset 0 1px 0 rgba(255,255,255,.60) !important;
  transform: translateZ(0) !important;
  transition: transform .48s cubic-bezier(.34,1.56,.64,1), box-shadow .42s ease !important;
}

.v26-room-card:hover,
.v8-room-card:hover {
  box-shadow:
    0 6px 16px rgba(6,14,26,.10),
    0 24px 60px rgba(6,14,26,.24),
    0 48px 110px rgba(6,14,26,.18),
    0 0 0 1.5px rgba(212,175,55,.35),
    inset 0 1px 0 rgba(255,255,255,.70) !important;
  transform: translateY(-20px) scale(1.018) rotateX(1.5deg) !important;
}

/* ── AMENITY / FEATURE CARDS ── */
.amenity-card,
.feature-card,
.experience-card {
  box-shadow: var(--v27-shadow-md) !important;
  transform: translateZ(0) !important;
  transition: transform .4s cubic-bezier(.34,1.56,.64,1), box-shadow .38s ease !important;
}

.amenity-card:hover,
.feature-card:hover,
.experience-card:hover {
  box-shadow: var(--v27-shadow-xl), 0 0 0 1px rgba(212,175,55,.20) !important;
  transform: translateY(-14px) rotateX(2deg) scale(1.02) !important;
}

/* ── GALLERY ITEMS — 3D TILT ── */
.home-gallery-item {
  box-shadow:
    0 8px 24px rgba(6,14,26,.18),
    0 20px 56px rgba(6,14,26,.14) !important;
  transform: translateZ(0) !important;
  transition: transform .5s cubic-bezier(.34,1.56,.64,1), box-shadow .44s ease, border-color .3s !important;
  border: 1.5px solid transparent !important;
}

.home-gallery-item:hover {
  box-shadow:
    0 12px 32px rgba(6,14,26,.24),
    0 40px 100px rgba(6,14,26,.22),
    0 0 0 2px rgba(212,175,55,.65) !important;
  transform: translateY(-22px) scale(1.048) rotateX(3deg) rotateY(-1deg) !important;
  border-color: rgba(212,175,55,.65) !important;
  z-index: 5 !important;
}

/* ── STAT ITEMS ── */
.stat-item {
  transition: transform .38s cubic-bezier(.34,1.56,.64,1), box-shadow .32s !important;
}

.stat-item:hover {
  transform: translateY(-10px) scale(1.06) rotateX(4deg) !important;
  box-shadow: var(--v27-shadow-lg) !important;
}

/* ── BUTTONS — 3D LIFT ── */
.btn--primary,
.header-book-btn,
.v26-room-book-btn,
.v26-rs__main-btn {
  box-shadow:
    0 4px 14px rgba(212,175,55,.40),
    0 8px 28px rgba(212,175,55,.28),
    inset 0 1px 0 rgba(255,255,255,.25),
    inset 0 -2px 0 rgba(0,0,0,.15) !important;
  transform: translateZ(0) !important;
  transition: transform .3s cubic-bezier(.34,1.56,.64,1), box-shadow .3s, background-position .4s !important;
}

.btn--primary:hover,
.header-book-btn:hover,
.v26-room-book-btn:hover,
.v26-rs__main-btn:hover {
  box-shadow:
    0 8px 24px rgba(212,175,55,.55),
    0 20px 50px rgba(212,175,55,.38),
    0 0 40px rgba(212,175,55,.18),
    inset 0 1px 0 rgba(255,255,255,.30),
    inset 0 -2px 0 rgba(0,0,0,.20) !important;
  transform: translateY(-5px) scale(1.035) !important;
}

/* ── HEADER — Deeper glass 3D shadow ── */
.site-header {
  box-shadow:
    0 2px 8px rgba(6,14,26,.12),
    0 1px 0 rgba(255,255,255,.05) !important;
}

.site-header.header--scrolled,
.site-header.scrolled {
  box-shadow:
    0 4px 24px rgba(6,14,26,.35),
    0 16px 60px rgba(6,14,26,.22),
    0 1px 0 rgba(212,175,55,.10),
    inset 0 -1px 0 rgba(212,175,55,.08) !important;
  backdrop-filter: blur(28px) saturate(180%) !important;
  -webkit-backdrop-filter: blur(28px) saturate(180%) !important;
}

/* ── RESERVE SECTION CARDS — Premium 3D shadows ── */
.v26-rs__perks-card,
.v26-rs__cta-card--featured,
.v26-rs__find-card {
  transition: transform .45s cubic-bezier(.34,1.56,.64,1), box-shadow .42s ease !important;
}

.v26-rs__perks-card {
  box-shadow:
    0 8px 30px rgba(6,14,26,.45),
    0 20px 60px rgba(6,14,26,.30),
    inset 0 1px 0 rgba(255,255,255,.09) !important;
}

.v26-rs__perks-card:hover {
  transform: translateY(-10px) rotateY(.8deg) !important;
  box-shadow:
    0 16px 50px rgba(6,14,26,.55),
    0 40px 90px rgba(6,14,26,.38),
    0 0 0 1px rgba(212,175,55,.30),
    inset 0 1px 0 rgba(255,255,255,.12) !important;
}

.v26-rs__cta-card--featured {
  box-shadow:
    0 12px 40px rgba(6,14,26,.55),
    0 32px 80px rgba(6,14,26,.40),
    0 0 0 4px rgba(212,175,55,.12),
    0 0 60px rgba(212,175,55,.12),
    inset 0 1px 0 rgba(255,255,255,.10) !important;
}

.v26-rs__cta-card--featured:hover {
  transform: translateY(-12px) scale(1.015) !important;
  box-shadow:
    0 20px 60px rgba(6,14,26,.60),
    0 50px 110px rgba(6,14,26,.45),
    0 0 0 4px rgba(212,175,55,.28),
    0 0 80px rgba(212,175,55,.20),
    inset 0 1px 0 rgba(255,255,255,.14) !important;
}

.v26-rs__find-card:hover {
  transform: translateY(-10px) rotateY(-.8deg) !important;
  box-shadow:
    0 16px 50px rgba(6,14,26,.50),
    0 40px 90px rgba(6,14,26,.35),
    0 0 0 1px rgba(212,175,55,.28),
    inset 0 1px 0 rgba(255,255,255,.12) !important;
}

/* ── ABOUT / IMAGE BLOCKS ── */
.about-snippet__image img {
  box-shadow:
    0 20px 60px rgba(6,14,26,.35),
    0 8px 24px rgba(6,14,26,.20),
    0 0 0 1px rgba(212,175,55,.08) !important;
}

.about-snippet__image:hover img {
  box-shadow:
    0 32px 80px rgba(6,14,26,.45),
    0 14px 36px rgba(6,14,26,.28),
    0 0 0 1.5px rgba(212,175,55,.18) !important;
  transform: scale(1.03) !important;
}

/* ── ROOM CARD IMAGES — deeper depth ── */
.v26-room-img,
.v8-room-card__image {
  box-shadow: inset 0 -8px 30px rgba(6,14,26,.35) !important;
}

/* ── BOOKING FORM WRAPPER ── */
.v26-booking-form-wrap {
  box-shadow:
    0 8px 24px rgba(6,14,26,.10),
    0 24px 60px rgba(6,14,26,.16),
    0 0 0 1px rgba(212,175,55,.08),
    inset 0 1px 0 rgba(255,255,255,.80) !important;
}

/* ── FOOTER ── */
.site-footer {
  box-shadow: 0 -4px 40px rgba(6,14,26,.45), 0 -1px 0 rgba(212,175,55,.14) !important;
}

/* ── SECTION DARK BG — 3D depth radial glow ── */
.section--dark {
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.04),
    inset 0 -1px 0 rgba(212,175,55,.08) !important;
}

/* ── GOLD DIVIDER — glowing 3D ── */
.gold-divider {
  box-shadow:
    0 2px 20px rgba(212,175,55,.45),
    0 0 40px rgba(212,175,55,.18),
    0 -1px 0 rgba(255,255,255,.10) !important;
  height: 2px !important;
}

/* ── PRELOADER — deeper shadow ── */
.v13-preloader__bar {
  box-shadow:
    0 0 20px rgba(212,175,55,.20),
    inset 0 1px 0 rgba(255,255,255,.06) !important;
}

.v13-preloader__fill {
  box-shadow:
    0 0 24px rgba(212,175,55,.80),
    0 0 50px rgba(212,175,55,.40) !important;
}

/* ── INPUT FIELDS — 3D inset depth ── */
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="date"],
input[type="number"],
select,
textarea {
  box-shadow: inset 0 2px 6px rgba(6,14,26,.08), inset 0 1px 2px rgba(6,14,26,.05) !important;
  transition: box-shadow .25s, border-color .25s !important;
}

input:focus,
select:focus,
textarea:focus {
  box-shadow:
    inset 0 2px 6px rgba(6,14,26,.08),
    0 0 0 3px rgba(212,175,55,.18),
    0 4px 16px rgba(212,175,55,.14) !important;
}

/* ── LOGO — shadow polish ── */
.custom-logo,
.site-logo img {
  filter: drop-shadow(0 2px 12px rgba(6,14,26,.30)) !important;
  transition: filter .3s ease !important;
}

.site-header.header--scrolled .custom-logo,
.site-header.header--scrolled .site-logo img {
  filter: drop-shadow(0 2px 16px rgba(212,175,55,.35)) !important;
}

/* ─────────────────────────────────────────────────────────────
   MOBILE OVERRIDES
───────────────────────────────────────────────────────────── */
@media (max-width: 1024px) {
  .v26-rs__grid {
    grid-template-columns: 1fr 1fr !important;
    align-items: start !important;
  }
  .v26-rs__perks-card {
    grid-column: 1 / -1 !important;
    height: auto !important;
  }
  .v26-rs__find-card,
  .v26-rs__cta-card {
    height: auto !important;
  }
}

@media (max-width: 768px) {
  .v26-rs__grid {
    grid-template-columns: 1fr !important;
  }
  .v26-rs__find-card {
    padding: 1.6rem 1.4rem !important;
  }
  /* Mobile: reduce cinematic drift for performance */
  .page-hero-bg img,
  .page-hero-bg .v24-hero-img {
    animation-duration: 55s !important;
    top: -6% !important;
    left: -6% !important;
    width: 112% !important;
    height: 112% !important;
  }
  /* 3D effects reduced on mobile */
  .v26-room-card:hover,
  .v8-room-card:hover {
    transform: translateY(-12px) scale(1.01) !important;
  }
  .home-gallery-item:hover {
    transform: translateY(-14px) scale(1.03) !important;
  }
  .stat-item:hover {
    transform: translateY(-6px) !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .page-hero-bg img,
  .page-hero-bg .v24-hero-img {
    animation: none !important;
    transform: scale(1.05) !important;
    top: -3% !important; left: -3% !important;
    width: 106% !important; height: 106% !important;
  }
  .page-hero::after,
  .page-hero::before,
  .page-hero-bg::after {
    animation: none !important;
  }
  .v8-hero__title {
    animation: none !important;
    -webkit-text-fill-color: #f5d787 !important;
    background: none !important;
  }
  .v26-room-card:hover,
  .v8-room-card:hover,
  .home-gallery-item:hover,
  .v26-rs__cta-card--featured:hover,
  .v26-rs__perks-card:hover,
  .v26-rs__find-card:hover {
    transform: none !important;
  }
}

/* ── design-v28.css (17,950b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v28
   Base: v27 | Changes:
   1. Reserve section → CSS-only carousel (drag + auto-scroll)
   2. Text shadows on all headings, body copy, nav, footer
   3. Enhanced color gradients on text elements site-wide
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   1. RESERVE SECTION CAROUSEL
   Pure CSS scroll-snap carousel — no JS needed,
   works perfectly with existing PHP/shortcode content
───────────────────────────────────────────────────────────── */

/* Override grid → horizontal carousel */
.v26-rs__grid {
  display: flex !important;
  flex-direction: row !important;
  overflow-x: auto !important;
  overflow-y: visible !important;
  scroll-snap-type: x mandatory !important;
  scroll-behavior: smooth !important;
  -webkit-overflow-scrolling: touch !important;
  gap: 1.6rem !important;
  padding: 1.2rem 0.5rem 3.5rem !important;
  margin: 0 -0.5rem !important;
  align-items: stretch !important;
  /* Hide scrollbar but keep scroll */
  scrollbar-width: none !important;
  -ms-overflow-style: none !important;
}
.v26-rs__grid::-webkit-scrollbar {
  display: none !important;
}

/* Each card: fixed width, snaps */
.v26-rs__perks-card,
.v26-rs__cta-card,
.v26-rs__find-card {
  flex: 0 0 360px !important;
  width: 360px !important;
  min-width: 360px !important;
  scroll-snap-align: center !important;
  height: auto !important;
  display: flex !important;
  flex-direction: column !important;
  box-sizing: border-box !important;
  transition: transform .45s cubic-bezier(.34,1.56,.64,1),
              box-shadow .4s ease,
              opacity .4s ease !important;
}

/* Featured CTA card — slightly wider, visually prominent */
.v26-rs__cta-card--featured {
  flex: 0 0 400px !important;
  width: 400px !important;
  min-width: 400px !important;
  scroll-snap-align: center !important;
}

/* Carousel dots indicator */
.v26-rs__grid-wrap {
  position: relative !important;
}

/* Dot indicators injected via CSS counters (decorative) */
.v26-rs__grid::after {
  content: '' !important;
  flex: 0 0 0.5rem !important;
  display: block !important;
}

/* Drag hint fade arrows on sides */
.v26-reserve-section {
  position: relative !important;
  overflow: hidden !important;
}

/* Left/right scroll fade hints */
.v26-rs__container::after {
  content: '' !important;
  position: absolute !important;
  right: 0 !important;
  top: 0 !important;
  width: 80px !important;
  height: 100% !important;
  background: linear-gradient(to right, transparent, rgba(6,14,26,.55)) !important;
  pointer-events: none !important;
  z-index: 4 !important;
  border-radius: 0 !important;
}

/* Scroll hint dots below carousel */
.v26-rs__dots {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: .55rem !important;
  margin-top: -.8rem !important;
  margin-bottom: 2rem !important;
}

.v26-rs__dot {
  width: 28px !important;
  height: 4px !important;
  border-radius: 4px !important;
  background: rgba(212,175,55,.25) !important;
  transition: background .3s, width .3s !important;
  cursor: pointer !important;
}

.v26-rs__dot.active,
.v26-rs__dot:hover {
  background: linear-gradient(90deg, #d4af37, #f5d787) !important;
  width: 44px !important;
  box-shadow: 0 0 10px rgba(212,175,55,.5) !important;
}

/* Scroll hint text */
.v26-rs__scroll-hint {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: .5rem !important;
  font-size: .68rem !important;
  font-weight: 600 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
  color: rgba(212,175,55,.5) !important;
  -webkit-text-fill-color: rgba(212,175,55,.5) !important;
  margin-bottom: 1rem !important;
  animation: v28HintFade 3s 1.5s ease-in-out forwards !important;
  opacity: 0 !important;
}

@keyframes v28HintFade {
  0%   { opacity: 0; transform: translateY(6px); }
  20%  { opacity: 1; transform: translateY(0); }
  80%  { opacity: 1; }
  100% { opacity: 0; }
}

@keyframes v28ArrowBounce {
  0%,100% { transform: translateX(0); }
  50%      { transform: translateX(5px); }
}

.v26-rs__scroll-hint svg {
  animation: v28ArrowBounce 1.2s ease-in-out infinite !important;
  stroke: rgba(212,175,55,.6) !important;
}

/* Card hover on carousel — lift + glow */
.v26-rs__perks-card:hover,
.v26-rs__cta-card:hover,
.v26-rs__find-card:hover {
  transform: translateY(-10px) scale(1.018) !important;
  box-shadow:
    0 24px 65px rgba(6,14,26,.55),
    0 8px 22px rgba(6,14,26,.30),
    0 0 0 1.5px rgba(212,175,55,.35),
    inset 0 1px 0 rgba(255,255,255,.12) !important;
}

.v26-rs__cta-card--featured:hover {
  transform: translateY(-12px) scale(1.022) !important;
  box-shadow:
    0 32px 80px rgba(6,14,26,.60),
    0 12px 30px rgba(6,14,26,.35),
    0 0 0 2px rgba(212,175,55,.55),
    0 0 50px rgba(212,175,55,.18),
    inset 0 1px 0 rgba(255,255,255,.14) !important;
}

/* JS carousel dot control (injected by inline script in functions) */
.v26-rs__grid[data-active="0"] ~ .v26-rs__dots .v26-rs__dot:nth-child(1),
.v26-rs__grid[data-active="1"] ~ .v26-rs__dots .v26-rs__dot:nth-child(2),
.v26-rs__grid[data-active="2"] ~ .v26-rs__dots .v26-rs__dot:nth-child(3) {
  background: linear-gradient(90deg,#d4af37,#f5d787) !important;
  width: 44px !important;
}

/* ─────────────────────────────────────────────────────────────
   2. TEXT SHADOWS — Site-wide depth on all key text
───────────────────────────────────────────────────────────── */

/* Hero H1 — deep cinematic shadow */
.v8-hero__title {
  filter:
    drop-shadow(0 4px 32px rgba(0,0,0,.80))
    drop-shadow(0 2px 60px rgba(212,175,55,.40))
    drop-shadow(0 0 120px rgba(249,115,22,.20)) !important;
}

/* Subpage hero title */
.page-hero .page-hero-title {
  filter:
    drop-shadow(0 4px 28px rgba(0,0,0,.85))
    drop-shadow(0 2px 50px rgba(212,175,55,.35)) !important;
  text-shadow: none !important; /* drop-shadow handles it */
}

/* Hero subtitle */
.v8-hero__subtitle,
.hero-subtitle,
.page-hero .page-hero-subtitle {
  text-shadow:
    0 2px 24px rgba(0,0,0,.80),
    0 1px 8px rgba(0,0,0,.60),
    0 0 40px rgba(6,14,26,.55) !important;
}

/* Section titles — light sections */
.section-title {
  filter:
    drop-shadow(0 2px 16px rgba(6,14,26,.22))
    drop-shadow(0 1px 4px rgba(6,14,26,.12)) !important;
}

/* Section titles — dark sections */
.section--dark .section-title,
.virtual-tour-section .section-title {
  filter:
    drop-shadow(0 3px 22px rgba(0,0,0,.70))
    drop-shadow(0 0 50px rgba(212,175,55,.30)) !important;
}

/* Section label eyebrow text */
.section-label {
  filter: drop-shadow(0 1px 10px rgba(212,175,55,.45)) !important;
}

.section--dark .section-label,
.page-hero .section-label {
  text-shadow:
    0 1px 12px rgba(212,175,55,.55),
    0 0 30px rgba(212,175,55,.25) !important;
  filter: none !important;
}

/* Stat numbers — glowing gold */
.stat-number,
.stat-number span[data-counter] {
  filter:
    drop-shadow(0 2px 24px rgba(212,175,55,.60))
    drop-shadow(0 0 50px rgba(212,175,55,.28)) !important;
}

/* Footer column titles */
.footer-col-title {
  filter:
    drop-shadow(0 2px 16px rgba(212,175,55,.50))
    drop-shadow(0 0 30px rgba(212,175,55,.22)) !important;
}

/* Reserve section title + eyebrow */
.v26-rs__title {
  filter:
    drop-shadow(0 3px 28px rgba(0,0,0,.75))
    drop-shadow(0 0 60px rgba(212,175,55,.30)) !important;
}

.v26-rs__eyebrow {
  filter:
    drop-shadow(0 1px 12px rgba(212,175,55,.55))
    drop-shadow(0 0 28px rgba(212,175,55,.25)) !important;
}

/* Reserve card headings */
.v26-rs__cta-card__heading,
.v26-rs__card-title {
  filter:
    drop-shadow(0 2px 18px rgba(0,0,0,.60))
    drop-shadow(0 0 35px rgba(212,175,55,.25)) !important;
}

/* Reserve price number */
.v26-rs__price-num,
.v26-rs__stat-num {
  filter:
    drop-shadow(0 2px 18px rgba(212,175,55,.65))
    drop-shadow(0 0 40px rgba(212,175,55,.30)) !important;
}

/* Room card titles & type labels */
.v26-room-title {
  text-shadow:
    0 1px 6px rgba(6,14,26,.15),
    0 2px 12px rgba(6,14,26,.08) !important;
}

.v26-room-type {
  filter: drop-shadow(0 1px 8px rgba(212,175,55,.40)) !important;
}

/* Room price values */
.v26-price-val,
.v26-room-img__price-val {
  filter:
    drop-shadow(0 2px 16px rgba(212,175,55,.60))
    drop-shadow(0 0 30px rgba(212,175,55,.28)) !important;
}

/* Navigation text */
.main-nav a,
.site-nav a,
#main-navigation a {
  text-shadow: 0 1px 8px rgba(0,0,0,.35) !important;
}

.site-header.header--scrolled .main-nav a,
.site-header.scrolled .main-nav a {
  text-shadow: 0 1px 10px rgba(0,0,0,.55) !important;
}

/* Header Book Now button text */
.header-book-btn {
  text-shadow: 0 1px 6px rgba(0,0,0,.25) !important;
}

/* Footer body text — subtle depth */
.site-footer p,
.site-footer li,
.site-footer a,
.footer-text,
.footer-col p {
  text-shadow: 0 1px 6px rgba(0,0,0,.25) !important;
}

/* Body content paragraphs in dark sections */
.section--dark p,
.section--dark li,
.section--dark span:not([class*="gradient"]):not([class*="fill"]) {
  text-shadow: 0 1px 8px rgba(0,0,0,.30) !important;
}

/* About section headings */
.about-snippet h2,
.about-snippet h3,
.about-title {
  text-shadow:
    0 2px 14px rgba(6,14,26,.18),
    0 1px 4px rgba(6,14,26,.10) !important;
}

/* Amenity card titles */
.amenity-card h3,
.amenity-title,
.feature-title {
  text-shadow:
    0 1px 10px rgba(6,14,26,.15),
    0 2px 8px rgba(6,14,26,.08) !important;
}

/* ─────────────────────────────────────────────────────────────
   3. ENHANCED COLOR GRADIENTS — text elements
───────────────────────────────────────────────────────────── */

/* Section title light bg — richer navy-to-gold sweep */
.section-title {
  background: linear-gradient(
    125deg,
    #040c18 0%,
    #0a1a30 18%,
    #12304f 36%,
    #c8a22e 58%,
    #f5d787 72%,
    #f97316 84%,
    #f5d787 92%,
    #d4af37 100%
  ) !important;
  background-size: 260% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v26Shimmer 8s linear infinite !important;
}

/* Section title dark bg — brighter gold-orange */
.section--dark .section-title,
.virtual-tour-section .section-title {
  background: linear-gradient(
    125deg,
    #fff8e7 0%,
    #f5d787 16%,
    #d4af37 32%,
    #f97316 50%,
    #f5d787 64%,
    #d4af37 76%,
    #fff8e7 88%,
    #f5d787 100%
  ) !important;
  background-size: 260% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v26Shimmer 6s linear infinite !important;
}

/* Section labels — warmer gold */
.section-label {
  background: linear-gradient(
    110deg,
    #c8a22e 0%,
    #f5d787 30%,
    #f97316 52%,
    #f5d787 70%,
    #d4af37 100%
  ) !important;
  background-size: 220% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v26Shimmer 5s linear infinite !important;
}

/* Stat numbers — sunrise gold-orange */
.stat-number,
.stat-number span[data-counter] {
  background: linear-gradient(
    115deg,
    #d4af37 0%,
    #f5d787 28%,
    #f97316 52%,
    #f5d787 74%,
    #d4af37 100%
  ) !important;
  background-size: 220% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v26Shimmer 4s linear infinite !important;
}

/* Footer column titles */
.footer-col-title {
  background: linear-gradient(
    110deg,
    #f5d787 0%,
    #d4af37 25%,
    #f97316 50%,
    #d4af37 75%,
    #f5d787 100%
  ) !important;
  background-size: 200% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v26Shimmer 6s linear infinite !important;
}

/* Reserve section main title — brighter gold-white-orange */
.v26-rs__title {
  background: linear-gradient(
    115deg,
    #fffde7 0%,
    #f5d787 14%,
    #d4af37 26%,
    #ffffff 38%,
    #f97316 52%,
    #f5d787 64%,
    #d4af37 76%,
    #fff8e7 88%,
    #f5d787 100%
  ) !important;
  background-size: 280% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v26Shimmer 7s linear infinite !important;
}

/* Reserve card heading */
.v26-rs__cta-card__heading {
  background: linear-gradient(
    115deg,
    #fff8e7 0%,
    #f5d787 30%,
    #f97316 52%,
    #f5d787 72%,
    #fff8e7 100%
  ) !important;
  background-size: 240% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v26Shimmer 7s linear infinite !important;
}

/* Reserve stats numbers */
.v26-rs__stat-num {
  background: linear-gradient(
    110deg,
    #d4af37 0%,
    #f5d787 35%,
    #f97316 55%,
    #f5d787 75%,
    #d4af37 100%
  ) !important;
  background-size: 220% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v26Shimmer 4.5s linear infinite !important;
}

/* Room type labels */
.v26-room-type {
  background: linear-gradient(
    110deg,
    #c8a22e 0%,
    #f5d787 40%,
    #f97316 60%,
    #d4af37 100%
  ) !important;
  background-size: 200% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v26Shimmer 5s linear infinite !important;
}

/* Price values — warm gold-to-orange */
.v26-price-val,
.v26-room-img__price-val,
.v26-rs__price-num {
  background: linear-gradient(
    110deg,
    #d4af37 0%,
    #f5d787 30%,
    #f97316 55%,
    #f5d787 75%,
    #d4af37 100%
  ) !important;
  background-size: 220% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v26Shimmer 4.5s linear infinite !important;
}

/* Gold divider — richer gradient */
.gold-divider {
  background: linear-gradient(
    90deg,
    transparent 0%,
    #a07828 8%,
    #f5d787 28%,
    #d4af37 45%,
    #f97316 58%,
    #f5d787 72%,
    #d4af37 85%,
    transparent 100%
  ) !important;
  background-size: 300% auto !important;
  animation: v26Shimmer 3.5s linear infinite !important;
  height: 2px !important;
  box-shadow:
    0 2px 22px rgba(212,175,55,.52),
    0 0 45px rgba(212,175,55,.20) !important;
}

/* ─────────────────────────────────────────────────────────────
   CAROUSEL JS ENHANCEMENT — tiny inline script via wp_footer
   (Dot nav + auto-scroll added in functions.php)
───────────────────────────────────────────────────────────── */

/* ─────────────────────────────────────────────────────────────
   RESPONSIVE
───────────────────────────────────────────────────────────── */

@media (max-width: 1024px) {
  .v26-rs__perks-card,
  .v26-rs__cta-card,
  .v26-rs__find-card {
    flex: 0 0 340px !important;
    width: 340px !important;
    min-width: 340px !important;
  }
  .v26-rs__cta-card--featured {
    flex: 0 0 370px !important;
    width: 370px !important;
    min-width: 370px !important;
  }
}

@media (max-width: 768px) {
  .v26-rs__grid {
    padding: 1rem 1rem 3rem !important;
    margin: 0 -1rem !important;
    gap: 1.2rem !important;
  }
  .v26-rs__perks-card,
  .v26-rs__cta-card,
  .v26-rs__find-card {
    flex: 0 0 88vw !important;
    width: 88vw !important;
    min-width: 88vw !important;
  }
  .v26-rs__cta-card--featured {
    flex: 0 0 88vw !important;
    width: 88vw !important;
    min-width: 88vw !important;
  }
  .v26-rs__container::after {
    display: none !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .section-title,
  .section--dark .section-title,
  .section-label,
  .stat-number,
  .footer-col-title,
  .v26-rs__title,
  .v26-rs__cta-card__heading,
  .v26-rs__stat-num,
  .v26-room-type,
  .v26-price-val,
  .v26-room-img__price-val,
  .v26-rs__price-num,
  .gold-divider {
    animation: none !important;
  }
}

/* ── design-v29.css (9,380b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v29
   Base: v28 | Change: Reserve section → Bento asymmetric layout
   All other styles unchanged.
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   RESERVE SECTION — BENTO ASYMMETRIC LAYOUT
   Left: tall featured CTA card (full height)
   Right: top = Perks card, bottom = Find Booking card
   Feels like a premium hotel magazine layout
───────────────────────────────────────────────────────────── */

/* Kill v28 carousel, restore grid */
.v26-rs__grid {
  display: grid !important;
  grid-template-columns: 1.15fr 1fr !important;
  grid-template-rows: auto auto !important;
  gap: 1.6rem !important;
  overflow-x: visible !important;
  scroll-snap-type: none !important;
  padding: 0 !important;
  margin: 0 !important;
  scrollbar-width: auto !important;
  align-items: stretch !important;
}

/* CTA card: left column, spans both rows */
.v26-rs__cta-card--featured {
  grid-column: 1 / 2 !important;
  grid-row: 1 / 3 !important;
  flex: none !important;
  width: auto !important;
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  scroll-snap-align: none !important;
  padding: 2.8rem 2.4rem !important;
  min-height: 520px !important;
}

/* Perks card: right column top */
.v26-rs__perks-card {
  grid-column: 2 / 3 !important;
  grid-row: 1 / 2 !important;
  flex: none !important;
  width: auto !important;
  min-width: 0 !important;
  scroll-snap-align: none !important;
  padding: 1.8rem 2rem !important;
  display: flex !important;
  flex-direction: column !important;
}

/* Find booking card: right column bottom */
.v26-rs__find-card {
  grid-column: 2 / 3 !important;
  grid-row: 2 / 3 !important;
  flex: none !important;
  width: auto !important;
  min-width: 0 !important;
  scroll-snap-align: none !important;
  padding: 1.8rem 2rem !important;
  display: flex !important;
  flex-direction: column !important;
}

/* Hide v28 scroll hints */
.v26-rs__dots,
.v26-rs__scroll-hint {
  display: none !important;
}

/* Remove right-fade overlay from v28 */
.v26-rs__container::after {
  display: none !important;
}

/* ── CTA CARD — tall luxury card ── */
.v26-rs__cta-card--featured {
  background: linear-gradient(
    158deg,
    rgba(8,18,36,.97) 0%,
    rgba(18,42,72,.94) 45%,
    rgba(10,22,42,.97) 100%
  ) !important;
  border: 1.5px solid rgba(212,175,55,.50) !important;
  box-shadow:
    0 16px 60px rgba(6,14,26,.60),
    0 40px 100px rgba(6,14,26,.40),
    0 0 0 4px rgba(212,175,55,.10),
    0 0 80px rgba(212,175,55,.10),
    inset 0 1px 0 rgba(255,255,255,.10) !important;
  border-radius: 26px !important;
  position: relative !important;
  overflow: hidden !important;
}

/* Decorative vertical gold bar on CTA left edge */
.v26-rs__cta-card--featured::before {
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  top: 15% !important;
  bottom: 15% !important;
  width: 3px !important;
  background: linear-gradient(
    to bottom,
    transparent,
    #d4af37 25%,
    #f5d787 50%,
    #f97316 75%,
    transparent
  ) !important;
  border-radius: 0 3px 3px 0 !important;
  box-shadow: 0 0 20px rgba(212,175,55,.60) !important;
}

/* Large decorative mountain icon watermark in CTA */
.v26-rs__cta-card--featured::after {
  content: '' !important;
  position: absolute !important;
  bottom: -20px !important;
  right: -20px !important;
  width: 180px !important;
  height: 180px !important;
  background: radial-gradient(
    circle,
    rgba(212,175,55,.10) 0%,
    rgba(212,175,55,.04) 45%,
    transparent 70%
  ) !important;
  border-radius: 50% !important;
  pointer-events: none !important;
  z-index: 0 !important;
}

/* CTA card — push button to bottom */
.v26-rs__cta-card--featured .v26-rs__cta-card__desc {
  flex: 1 !important;
  margin-bottom: 1.6rem !important;
}

/* CTA heading — bigger since card is tall */
.v26-rs__cta-card--featured .v26-rs__cta-card__heading {
  font-size: 1.55rem !important;
  line-height: 1.22 !important;
  margin-bottom: .9rem !important;
}

/* Price — larger */
.v26-rs__cta-card--featured .v26-rs__price-num {
  font-size: 2.1rem !important;
}

/* Book button — full width, prominent */
.v26-rs__cta-card--featured .v26-rs__main-btn {
  margin-top: auto !important;
  padding: 1.25rem !important;
  font-size: 1.05rem !important;
  border-radius: 16px !important;
  letter-spacing: .06em !important;
}

/* ── PERKS CARD — compact top-right ── */
.v26-rs__perks-card {
  background: rgba(255,255,255,.048) !important;
  border: 1.5px solid rgba(212,175,55,.20) !important;
  border-radius: 22px !important;
  box-shadow:
    0 8px 32px rgba(6,14,26,.42),
    0 20px 55px rgba(6,14,26,.28),
    inset 0 1px 0 rgba(255,255,255,.08) !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
}

/* Perks — compact 2-col list */
.v26-rs__perks-card .v26-rs__perks-list {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: .5rem .8rem !important;
}

.v26-rs__perks-card .v26-rs__perk {
  font-size: .82rem !important;
}

/* Perks header compact */
.v26-rs__perks-card .v26-rs__perks-card__header {
  margin-bottom: 1rem !important;
}

/* ── FIND BOOKING CARD — compact bottom-right ── */
.v26-rs__find-card {
  background: rgba(255,255,255,.038) !important;
  border: 1.5px solid rgba(212,175,55,.18) !important;
  border-radius: 22px !important;
  box-shadow:
    0 8px 28px rgba(6,14,26,.38),
    0 18px 48px rgba(6,14,26,.24),
    inset 0 1px 0 rgba(255,255,255,.07) !important;
  backdrop-filter: blur(18px) !important;
  -webkit-backdrop-filter: blur(18px) !important;
}

/* Find card icon + title row */
.v26-rs__find-card > .v26-rs__card-icon {
  width: 50px !important;
  height: 50px !important;
  margin-bottom: 1rem !important;
}

.v26-rs__find-card .v26-rs__card-title {
  font-size: 1.1rem !important;
  margin-bottom: .6rem !important;
}

/* Quick facts inline row */
.v26-rs__facts {
  display: flex !important;
  flex-direction: row !important;
  gap: 0 !important;
  flex-wrap: wrap !important;
  margin-top: 1rem !important;
  padding-top: 1rem !important;
  border-top: 1px solid rgba(212,175,55,.14) !important;
}

.v26-rs__fact {
  flex: 1 !important;
  min-width: 80px !important;
  flex-direction: column !important;
  display: flex !important;
  align-items: center !important;
  text-align: center !important;
  padding: .4rem .5rem !important;
  border-right: 1px solid rgba(212,175,55,.12) !important;
}

.v26-rs__fact:last-child {
  border-right: none !important;
}

.v26-rs__fact span {
  font-size: .62rem !important;
  margin-bottom: .2rem !important;
}

.v26-rs__fact strong {
  font-size: .88rem !important;
}

/* ── HOVER EFFECTS ── */
.v26-rs__cta-card--featured:hover {
  transform: translateY(-8px) scale(1.012) !important;
  box-shadow:
    0 24px 80px rgba(6,14,26,.65),
    0 50px 120px rgba(6,14,26,.45),
    0 0 0 4px rgba(212,175,55,.32),
    0 0 100px rgba(212,175,55,.18),
    inset 0 1px 0 rgba(255,255,255,.14) !important;
}

.v26-rs__perks-card:hover {
  transform: translateY(-6px) !important;
  box-shadow:
    0 14px 48px rgba(6,14,26,.50),
    0 30px 70px rgba(6,14,26,.32),
    0 0 0 1px rgba(212,175,55,.30),
    inset 0 1px 0 rgba(255,255,255,.10) !important;
}

.v26-rs__find-card:hover {
  transform: translateY(-6px) !important;
  box-shadow:
    0 14px 44px rgba(6,14,26,.45),
    0 28px 65px rgba(6,14,26,.28),
    0 0 0 1px rgba(212,175,55,.28),
    inset 0 1px 0 rgba(255,255,255,.10) !important;
}

/* ── RESPONSIVE ── */
@media (max-width: 1024px) {
  .v26-rs__grid {
    grid-template-columns: 1fr 1fr !important;
  }
  .v26-rs__cta-card--featured {
    min-height: 460px !important;
  }
}

@media (max-width: 768px) {
  /* Stack vertically on mobile */
  .v26-rs__grid {
    grid-template-columns: 1fr !important;
    grid-template-rows: auto !important;
  }
  .v26-rs__cta-card--featured {
    grid-column: 1 / 2 !important;
    grid-row: 1 / 2 !important;
    min-height: auto !important;
    padding: 2rem 1.6rem !important;
  }
  .v26-rs__perks-card {
    grid-column: 1 / 2 !important;
    grid-row: 2 / 3 !important;
  }
  .v26-rs__find-card {
    grid-column: 1 / 2 !important;
    grid-row: 3 / 4 !important;
  }
  .v26-rs__perks-card .v26-rs__perks-list {
    grid-template-columns: 1fr !important;
  }
  .v26-rs__facts {
    flex-direction: column !important;
  }
  .v26-rs__fact {
    flex-direction: row !important;
    justify-content: space-between !important;
    border-right: none !important;
    border-bottom: 1px solid rgba(212,175,55,.10) !important;
  }
  .v26-rs__fact:last-child {
    border-bottom: none !important;
  }
}

/* ── design-v30.css (31,026b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v30
   Base: v29 | Change: FULL COLOR SYSTEM SWAP
   Brand: Deep Blue (night sky) + Sunrise Orange + Red
   Inspired by: mountain dawn, sunrise over Himalayas, resort logo
   Zero layout / content change — ONLY colors
   ══════════════════════════════════════════════════════════════

   NEW PALETTE:
   --dsr-red:       #c0392b  (deep crimson red)
   --dsr-red-lt:    #e74c3c  (bright red)
   --dsr-orange:    #f26419  (sunrise orange — primary accent)
   --dsr-orange-lt: #ff8c42  (warm light orange)
   --dsr-orange-dk: #c94f0e  (deep burnt orange)
   --dsr-blue-dk:   #04111f  (deepest night sky)
   --dsr-blue:      #081b33  (deep navy blue)
   --dsr-blue-md:   #0f3460  (rich royal blue)
   --dsr-blue-lt:   #1a5276  (lighter blue)
   --dsr-cream:     #fff4e8  (warm sunrise cream)
   --dsr-cream2:    #ffe5cc  (deeper warm cream)
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   ROOT — New brand variables override all gold/navy
───────────────────────────────────────────────────────────── */
:root {
  /* Core brand */
  --dsr-red:         #c0392b;
  --dsr-red-lt:      #e74c3c;
  --dsr-red-dk:      #922b21;
  --dsr-orange:      #f26419;
  --dsr-orange-lt:   #ff8c42;
  --dsr-orange-dk:   #c94f0e;
  --dsr-blue-dk:     #04111f;
  --dsr-blue:        #081b33;
  --dsr-blue-md:     #0f3460;
  --dsr-blue-lt:     #1a5276;
  --dsr-cream:       #fff4e8;
  --dsr-cream2:      #ffe5cc;

  /* Override v26 variables */
  --v26-navy:    #04111f;
  --v26-navy2:   #081b33;
  --v26-navy3:   #0f3460;
  --v26-gold:    #f26419;
  --v26-gold-lt: #ff8c42;
  --v26-gold-dk: #c94f0e;
  --v26-sunrise: #e74c3c;
  --v26-green:   #f26419;

  /* Gradient overrides */
  --gv26-gold:   linear-gradient(135deg, #fff4e8 0%, #ff8c42 22%, #f26419 48%, #c94f0e 72%, #ff8c42 100%);
  --gv26-hero:   linear-gradient(135deg, #ffffff 0%, #ffe5cc 18%, #ff8c42 42%, #f26419 62%, #fff4e8 100%);
  --gv26-dark:   linear-gradient(160deg, #04111f 0%, #081b33 30%, #0f3460 65%, #040d1a 100%);
  --gv26-btn:    linear-gradient(135deg, #f26419 0%, #ff8c42 38%, #f26419 68%, #c94f0e 100%);

  /* Shadow overrides */
  --sv26-gold:    0 8px 32px rgba(242,100,25,.42), 0 2px 8px rgba(242,100,25,.24);
  --sv26-gold-lg: 0 22px 64px rgba(242,100,25,.52), 0 8px 24px rgba(242,100,25,.30);
  --sv26-card:    0 20px 60px rgba(4,17,31,.18), 0 6px 18px rgba(4,17,31,.10);
  --sv26-hover:   0 44px 110px rgba(4,17,31,.28), 0 16px 40px rgba(4,17,31,.16);
  --sv26-glass:   0 8px 40px rgba(4,17,31,.44), inset 0 1px 1px rgba(255,255,255,.13);

  /* v27 shadow variables */
  --v27-shadow-xs:   0 2px 8px rgba(4,17,31,.12), 0 1px 3px rgba(4,17,31,.08);
  --v27-shadow-sm:   0 6px 20px rgba(4,17,31,.16), 0 2px 8px rgba(4,17,31,.10);
  --v27-shadow-md:   0 16px 48px rgba(4,17,31,.22), 0 6px 18px rgba(4,17,31,.13);
  --v27-shadow-lg:   0 32px 80px rgba(4,17,31,.30), 0 12px 32px rgba(4,17,31,.18);
  --v27-shadow-xl:   0 56px 120px rgba(4,17,31,.38), 0 20px 50px rgba(4,17,31,.22);
  --v27-shadow-gold: 0 8px 36px rgba(242,100,25,.48), 0 2px 10px rgba(242,100,25,.30), 0 0 0 1px rgba(242,100,25,.14);
  --v27-shadow-gold-xl: 0 24px 70px rgba(242,100,25,.58), 0 8px 28px rgba(242,100,25,.38), 0 0 60px rgba(242,100,25,.18);
}

/* ─────────────────────────────────────────────────────────────
   SECTION BACKGROUNDS
───────────────────────────────────────────────────────────── */

/* Dark sections — deep blue night sky */
.section--dark {
  background: linear-gradient(
    160deg,
    #04111f 0%,
    #081b33 30%,
    #0f3460 65%,
    #040d1a 100%
  ) !important;
}

.section--dark::before {
  background:
    radial-gradient(ellipse 65% 110% at 12% 55%, rgba(242,100,25,.12) 0%, transparent 65%),
    radial-gradient(ellipse 50% 65% at 88% 18%, rgba(192,57,43,.10) 0%, transparent 60%) !important;
}

/* Alt section — warm sunrise tint */
.section--alt {
  background: linear-gradient(
    160deg,
    #fef8f4 0%,
    #fff4ee 55%,
    #fdf0e8 100%
  ) !important;
}

/* ─────────────────────────────────────────────────────────────
   GRADIENT TEXT — all shimmer animations with new colors
───────────────────────────────────────────────────────────── */

/* Section title — light bg: blue-to-orange-red sweep */
.section-title {
  background: linear-gradient(
    125deg,
    #04111f 0%,
    #081b33 18%,
    #0f3460 36%,
    #f26419 58%,
    #ff8c42 72%,
    #e74c3c 84%,
    #ff8c42 92%,
    #f26419 100%
  ) !important;
  background-size: 260% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v26Shimmer 8s linear infinite !important;
  filter: drop-shadow(0 2px 16px rgba(4,17,31,.22)) drop-shadow(0 1px 4px rgba(4,17,31,.12)) !important;
}

/* Section title — dark bg: orange-red glow */
.section--dark .section-title,
.virtual-tour-section .section-title {
  background: linear-gradient(
    125deg,
    #fff4e8 0%,
    #ff8c42 16%,
    #f26419 32%,
    #e74c3c 50%,
    #ff8c42 64%,
    #f26419 76%,
    #fff4e8 88%,
    #ff8c42 100%
  ) !important;
  background-size: 260% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v26Shimmer 6s linear infinite !important;
  filter: drop-shadow(0 3px 22px rgba(0,0,0,.70)) drop-shadow(0 0 50px rgba(242,100,25,.35)) !important;
}

/* Hero H1 — ultra dramatic sunrise gradient */
.v8-hero__title {
  background: linear-gradient(
    105deg,
    #fff4e8 0%,
    #ff8c42 8%,
    #f26419 18%,
    #fff4e8 30%,
    #e74c3c 42%,
    #ff8c42 52%,
    #ffffff 58%,
    #f26419 66%,
    #ff8c42 76%,
    #e74c3c 86%,
    #fff4e8 94%,
    #ff8c42 100%
  ) !important;
  background-size: 300% 300% !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v27HeroTitleShimmer 6s ease-in-out infinite, v27TitlePulse 8s ease-in-out infinite !important;
  filter:
    drop-shadow(0 4px 32px rgba(0,0,0,.80))
    drop-shadow(0 2px 60px rgba(242,100,25,.50))
    drop-shadow(0 0 120px rgba(192,57,43,.25)) !important;
}

@keyframes v27HeroTitleShimmer {
  0%   { background-position: 0% 50%;   filter: drop-shadow(0 4px 40px rgba(0,0,0,.80)) drop-shadow(0 0 80px rgba(242,100,25,.40)); }
  25%  { background-position: 60% 50%;  filter: drop-shadow(0 6px 50px rgba(0,0,0,.75)) drop-shadow(0 0 100px rgba(192,57,43,.45)); }
  50%  { background-position: 130% 50%; filter: drop-shadow(0 5px 45px rgba(0,0,0,.78)) drop-shadow(0 0 90px rgba(242,100,25,.50)); }
  75%  { background-position: 190% 50%; filter: drop-shadow(0 7px 55px rgba(0,0,0,.72)) drop-shadow(0 0 110px rgba(192,57,43,.38)); }
  100% { background-position: 260% 50%; filter: drop-shadow(0 4px 40px rgba(0,0,0,.80)) drop-shadow(0 0 80px rgba(242,100,25,.40)); }
}

/* Subpage hero title */
.page-hero .page-hero-title {
  background: linear-gradient(
    135deg,
    #ffffff 0%,
    #ffe5cc 18%,
    #ff8c42 42%,
    #f26419 62%,
    #fff4e8 100%
  ) !important;
  background-size: 240% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  filter: drop-shadow(0 4px 28px rgba(0,0,0,.85)) drop-shadow(0 2px 50px rgba(242,100,25,.40)) !important;
}

/* Section labels */
.section-label {
  background: linear-gradient(
    110deg,
    #c94f0e 0%,
    #ff8c42 30%,
    #e74c3c 52%,
    #ff8c42 70%,
    #f26419 100%
  ) !important;
  background-size: 220% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v26Shimmer 5s linear infinite !important;
  filter: drop-shadow(0 1px 10px rgba(242,100,25,.50)) !important;
}

.section--dark .section-label,
.page-hero .section-label {
  background: none !important;
  -webkit-text-fill-color: #ff8c42 !important;
  color: #ff8c42 !important;
  animation: none !important;
  text-shadow: 0 1px 12px rgba(242,100,25,.60), 0 0 30px rgba(242,100,25,.28) !important;
  filter: none !important;
}

/* Stat numbers */
.stat-number,
.stat-number span[data-counter] {
  background: linear-gradient(
    115deg,
    #f26419 0%,
    #ff8c42 28%,
    #e74c3c 52%,
    #ff8c42 74%,
    #f26419 100%
  ) !important;
  background-size: 220% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v26Shimmer 4s linear infinite !important;
  filter: drop-shadow(0 2px 24px rgba(242,100,25,.65)) drop-shadow(0 0 50px rgba(242,100,25,.32)) !important;
}

/* Footer column titles */
.footer-col-title {
  background: linear-gradient(
    110deg,
    #ff8c42 0%,
    #f26419 25%,
    #e74c3c 50%,
    #f26419 75%,
    #ff8c42 100%
  ) !important;
  background-size: 200% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v26Shimmer 6s linear infinite !important;
  filter: drop-shadow(0 2px 16px rgba(242,100,25,.55)) drop-shadow(0 0 30px rgba(242,100,25,.25)) !important;
}

/* Reserve section title */
.v26-rs__title {
  background: linear-gradient(
    115deg,
    #fff4e8 0%,
    #ff8c42 14%,
    #f26419 26%,
    #ffffff 38%,
    #e74c3c 52%,
    #ff8c42 64%,
    #f26419 76%,
    #fff4e8 88%,
    #ff8c42 100%
  ) !important;
  background-size: 280% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v26Shimmer 7s linear infinite !important;
  filter: drop-shadow(0 3px 28px rgba(0,0,0,.75)) drop-shadow(0 0 60px rgba(242,100,25,.35)) !important;
}

.v26-rs__eyebrow {
  filter: drop-shadow(0 1px 12px rgba(242,100,25,.60)) drop-shadow(0 0 28px rgba(242,100,25,.28)) !important;
  color: #ff8c42 !important;
  -webkit-text-fill-color: #ff8c42 !important;
}

/* Reserve CTA card heading */
.v26-rs__cta-card__heading {
  background: linear-gradient(
    115deg,
    #fff4e8 0%,
    #ff8c42 30%,
    #e74c3c 52%,
    #ff8c42 72%,
    #fff4e8 100%
  ) !important;
  background-size: 240% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v26Shimmer 7s linear infinite !important;
  filter: drop-shadow(0 2px 18px rgba(0,0,0,.60)) drop-shadow(0 0 35px rgba(242,100,25,.28)) !important;
}

/* Reserve stat numbers & prices */
.v26-rs__stat-num,
.v26-rs__price-num {
  background: linear-gradient(
    110deg,
    #f26419 0%,
    #ff8c42 35%,
    #e74c3c 55%,
    #ff8c42 75%,
    #f26419 100%
  ) !important;
  background-size: 220% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v26Shimmer 4.5s linear infinite !important;
  filter: drop-shadow(0 2px 18px rgba(242,100,25,.70)) drop-shadow(0 0 40px rgba(242,100,25,.35)) !important;
}

/* Room type labels */
.v26-room-type {
  background: linear-gradient(
    110deg,
    #c94f0e 0%,
    #ff8c42 40%,
    #e74c3c 60%,
    #f26419 100%
  ) !important;
  background-size: 200% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v26Shimmer 5s linear infinite !important;
  filter: drop-shadow(0 1px 8px rgba(242,100,25,.45)) !important;
}

/* Price values */
.v26-price-val,
.v26-room-img__price-val {
  background: linear-gradient(
    110deg,
    #f26419 0%,
    #ff8c42 30%,
    #e74c3c 55%,
    #ff8c42 75%,
    #f26419 100%
  ) !important;
  background-size: 220% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v26Shimmer 4.5s linear infinite !important;
  filter: drop-shadow(0 2px 16px rgba(242,100,25,.65)) drop-shadow(0 0 30px rgba(242,100,25,.30)) !important;
}

/* ─────────────────────────────────────────────────────────────
   GOLD DIVIDER → Sunrise Red-Orange divider
───────────────────────────────────────────────────────────── */
.gold-divider {
  background: linear-gradient(
    90deg,
    transparent 0%,
    #922b21 8%,
    #e74c3c 24%,
    #f26419 40%,
    #ff8c42 55%,
    #f26419 68%,
    #e74c3c 82%,
    #922b21 92%,
    transparent 100%
  ) !important;
  background-size: 300% auto !important;
  animation: v26Shimmer 3.5s linear infinite !important;
  height: 2px !important;
  box-shadow:
    0 2px 22px rgba(242,100,25,.55),
    0 0 45px rgba(242,100,25,.22),
    0 0 0 1px rgba(242,100,25,.08) !important;
}

/* ─────────────────────────────────────────────────────────────
   BUTTONS — Orange-Red gradient with 3D glow
───────────────────────────────────────────────────────────── */
.btn--primary,
.header-book-btn,
.v26-room-book-btn,
.v26-rs__main-btn {
  background: linear-gradient(
    135deg,
    #f26419 0%,
    #ff8c42 38%,
    #f26419 68%,
    #c94f0e 100%
  ) !important;
  background-size: 200% auto !important;
  animation: v26Shimmer 4s linear infinite !important;
  border: none !important;
  box-shadow:
    0 4px 14px rgba(242,100,25,.45),
    0 8px 28px rgba(242,100,25,.32),
    inset 0 1px 0 rgba(255,255,255,.28),
    inset 0 -2px 0 rgba(0,0,0,.18) !important;
  color: #fff !important;
  text-shadow: 0 1px 6px rgba(0,0,0,.30) !important;
}

.btn--primary:hover,
.header-book-btn:hover,
.v26-room-book-btn:hover,
.v26-rs__main-btn:hover {
  background: linear-gradient(
    135deg,
    #e74c3c 0%,
    #ff8c42 38%,
    #e74c3c 68%,
    #c0392b 100%
  ) !important;
  box-shadow:
    0 8px 24px rgba(242,100,25,.60),
    0 20px 50px rgba(242,100,25,.42),
    0 0 40px rgba(192,57,43,.22),
    inset 0 1px 0 rgba(255,255,255,.32),
    inset 0 -2px 0 rgba(0,0,0,.22) !important;
  transform: translateY(-5px) scale(1.035) !important;
}

/* CTA "Best Value" badge */
.v26-rs__cta-card__badge {
  background: linear-gradient(135deg, #e74c3c 0%, #f26419 60%, #ff8c42 100%) !important;
  box-shadow: 0 4px 18px rgba(242,100,25,.55) !important;
  color: #fff !important;
}

/* ─────────────────────────────────────────────────────────────
   RESERVE SECTION CARDS — Blue night sky with orange-red accents
───────────────────────────────────────────────────────────── */

/* Featured CTA card */
.v26-rs__cta-card--featured {
  background: linear-gradient(
    158deg,
    rgba(4,17,31,.97) 0%,
    rgba(8,27,51,.94) 45%,
    rgba(15,52,96,.90) 75%,
    rgba(4,13,26,.97) 100%
  ) !important;
  border: 1.5px solid rgba(242,100,25,.55) !important;
  box-shadow:
    0 16px 60px rgba(4,17,31,.65),
    0 40px 100px rgba(4,17,31,.45),
    0 0 0 4px rgba(242,100,25,.12),
    0 0 80px rgba(242,100,25,.12),
    inset 0 1px 0 rgba(255,255,255,.10) !important;
}

/* Vertical accent bar on CTA */
.v26-rs__cta-card--featured::before {
  background: linear-gradient(
    to bottom,
    transparent,
    #c94f0e 25%,
    #f26419 50%,
    #e74c3c 75%,
    transparent
  ) !important;
  box-shadow: 0 0 20px rgba(242,100,25,.65) !important;
}

/* After orb glow */
.v26-rs__cta-card--featured::after {
  background: radial-gradient(
    circle,
    rgba(242,100,25,.12) 0%,
    rgba(192,57,43,.06) 45%,
    transparent 70%
  ) !important;
}

/* Hover on CTA */
.v26-rs__cta-card--featured:hover {
  box-shadow:
    0 24px 80px rgba(4,17,31,.68),
    0 50px 120px rgba(4,17,31,.48),
    0 0 0 4px rgba(242,100,25,.38),
    0 0 100px rgba(242,100,25,.22),
    inset 0 1px 0 rgba(255,255,255,.14) !important;
}

/* Perks card */
.v26-rs__perks-card {
  background: rgba(255,255,255,.042) !important;
  border: 1.5px solid rgba(242,100,25,.22) !important;
  box-shadow:
    0 8px 32px rgba(4,17,31,.45),
    0 20px 55px rgba(4,17,31,.30),
    inset 0 1px 0 rgba(255,255,255,.08) !important;
}

.v26-rs__perks-card:hover {
  box-shadow:
    0 14px 48px rgba(4,17,31,.52),
    0 30px 70px rgba(4,17,31,.35),
    0 0 0 1px rgba(242,100,25,.32),
    inset 0 1px 0 rgba(255,255,255,.10) !important;
}

/* Find booking card */
.v26-rs__find-card {
  background: rgba(255,255,255,.034) !important;
  border: 1.5px solid rgba(242,100,25,.18) !important;
  box-shadow:
    0 8px 28px rgba(4,17,31,.40),
    0 18px 48px rgba(4,17,31,.26),
    inset 0 1px 0 rgba(255,255,255,.07) !important;
}

.v26-rs__find-card:hover {
  box-shadow:
    0 14px 44px rgba(4,17,31,.48),
    0 28px 65px rgba(4,17,31,.30),
    0 0 0 1px rgba(242,100,25,.30),
    inset 0 1px 0 rgba(255,255,255,.10) !important;
}

/* Perk checkmark icons */
.v26-rs__perk svg {
  stroke: #ff8c42 !important;
  filter: drop-shadow(0 0 4px rgba(242,100,25,.50)) !important;
}

/* Fact items */
.v26-rs__fact strong {
  color: #ff8c42 !important;
  -webkit-text-fill-color: #ff8c42 !important;
  text-shadow: 0 1px 8px rgba(242,100,25,.40) !important;
}

.v26-rs__facts {
  border-top-color: rgba(242,100,25,.16) !important;
}

.v26-rs__fact {
  border-right-color: rgba(242,100,25,.14) !important;
}

/* Contact buttons */
.v26-rs__contact-btn {
  background: rgba(242,100,25,.12) !important;
  border: 1px solid rgba(242,100,25,.28) !important;
  color: #ff8c42 !important;
  -webkit-text-fill-color: #ff8c42 !important;
}
.v26-rs__contact-btn:hover {
  background: rgba(242,100,25,.22) !important;
  border-color: rgba(242,100,25,.55) !important;
  box-shadow: 0 4px 18px rgba(242,100,25,.30) !important;
}

/* Card icons */
.v26-rs__card-icon {
  background: rgba(242,100,25,.14) !important;
  border: 1.5px solid rgba(242,100,25,.38) !important;
  box-shadow: 0 4px 18px rgba(242,100,25,.25) !important;
}

.v26-rs__cta-icon {
  background: rgba(242,100,25,.14) !important;
  border: 1.5px solid rgba(242,100,25,.38) !important;
  box-shadow: 0 4px 18px rgba(242,100,25,.25) !important;
}

/* Stats strip */
.v26-rs__stat svg {
  stroke: #ff8c42 !important;
  filter: drop-shadow(0 0 6px rgba(242,100,25,.50)) !important;
}

.v26-rs__stat-sep {
  background: linear-gradient(to bottom, transparent, rgba(242,100,25,.35), transparent) !important;
}

/* Main stat strip bg */
.v26-rs__stats {
  border: 1px solid rgba(242,100,25,.18) !important;
  background: rgba(242,100,25,.05) !important;
  box-shadow: 0 4px 24px rgba(4,17,31,.30), inset 0 1px 0 rgba(242,100,25,.10) !important;
}

/* CTA note */
.v26-rs__cta-note {
  color: rgba(255,244,232,.60) !important;
  -webkit-text-fill-color: rgba(255,244,232,.60) !important;
}

/* ─────────────────────────────────────────────────────────────
   ROOM CARDS — updated accent colors
───────────────────────────────────────────────────────────── */
.v26-room-card,
.v8-room-card {
  box-shadow:
    0 4px 12px rgba(4,17,31,.10),
    0 16px 48px rgba(4,17,31,.18),
    0 32px 80px rgba(4,17,31,.14),
    inset 0 1px 0 rgba(255,255,255,.60) !important;
}

.v26-room-card:hover,
.v8-room-card:hover {
  box-shadow:
    0 6px 16px rgba(4,17,31,.12),
    0 24px 60px rgba(4,17,31,.26),
    0 48px 110px rgba(4,17,31,.20),
    0 0 0 1.5px rgba(242,100,25,.40),
    inset 0 1px 0 rgba(255,255,255,.70) !important;
}

/* ─────────────────────────────────────────────────────────────
   GALLERY ITEMS
───────────────────────────────────────────────────────────── */
.home-gallery-item {
  box-shadow:
    0 8px 24px rgba(4,17,31,.20),
    0 20px 56px rgba(4,17,31,.16) !important;
}

.home-gallery-item:hover {
  box-shadow:
    0 12px 32px rgba(4,17,31,.26),
    0 40px 100px rgba(4,17,31,.24),
    0 0 0 2px rgba(242,100,25,.70) !important;
  border-color: rgba(242,100,25,.70) !important;
}

/* ─────────────────────────────────────────────────────────────
   HEADER
───────────────────────────────────────────────────────────── */
.site-header.header--scrolled,
.site-header.scrolled {
  box-shadow:
    0 4px 24px rgba(4,17,31,.38),
    0 16px 60px rgba(4,17,31,.24),
    0 1px 0 rgba(242,100,25,.12),
    inset 0 -1px 0 rgba(242,100,25,.08) !important;
}

.site-header.header--scrolled .custom-logo,
.site-header.header--scrolled .site-logo img {
  filter: drop-shadow(0 2px 16px rgba(242,100,25,.40)) !important;
}

/* Nav links */
.main-nav a,
.site-nav a,
#main-navigation a {
  text-shadow: 0 1px 8px rgba(4,17,31,.40) !important;
}

/* ─────────────────────────────────────────────────────────────
   PRELOADER — deep blue sky with orange sunrise
───────────────────────────────────────────────────────────── */
.v13-preloader {
  background:
    radial-gradient(ellipse 120% 100% at 50% 120%, rgba(242,100,25,.14) 0%, transparent 55%),
    radial-gradient(ellipse 80% 60% at 50% 80%, rgba(192,57,43,.10) 0%, transparent 50%),
    linear-gradient(160deg, #030b18 0%, #081b33 55%, #04111f 100%) !important;
}

.v13-preloader__sun {
  background: radial-gradient(
    circle,
    #fff4e8 0%,
    #ff8c42 30%,
    #f26419 55%,
    #e74c3c 75%,
    transparent 100%
  ) !important;
  box-shadow:
    0 0 40px rgba(242,100,25,.80),
    0 0 80px rgba(242,100,25,.50),
    0 0 140px rgba(192,57,43,.30) !important;
}

.v13-preloader__bar {
  background: rgba(255,244,232,.10) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06) !important;
}

.v13-preloader__fill {
  background: linear-gradient(90deg, #c94f0e, #f26419, #ff8c42, #e74c3c) !important;
  box-shadow:
    0 0 24px rgba(242,100,25,.85),
    0 0 50px rgba(242,100,25,.45) !important;
}

.v13-preloader__text {
  background: linear-gradient(
    135deg,
    #fff4e8 0%,
    #ff8c42 22%,
    #f26419 48%,
    #e74c3c 72%,
    #ff8c42 100%
  ) !important;
  background-size: 220% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v26Shimmer 3s linear infinite !important;
}

/* ─────────────────────────────────────────────────────────────
   STAT ITEMS hover
───────────────────────────────────────────────────────────── */
.stat-item:hover {
  box-shadow:
    0 32px 80px rgba(4,17,31,.30),
    0 12px 32px rgba(4,17,31,.18),
    0 0 0 1px rgba(242,100,25,.18) !important;
}

/* ─────────────────────────────────────────────────────────────
   AMENITY / FEATURE / EXPERIENCE CARDS
───────────────────────────────────────────────────────────── */
.amenity-card:hover,
.feature-card:hover,
.experience-card:hover {
  box-shadow:
    0 56px 120px rgba(4,17,31,.40),
    0 20px 50px rgba(4,17,31,.24),
    0 0 0 1px rgba(242,100,25,.22) !important;
}

/* ─────────────────────────────────────────────────────────────
   INPUT FOCUS — orange glow
───────────────────────────────────────────────────────────── */
input:focus,
select:focus,
textarea:focus {
  box-shadow:
    inset 0 2px 6px rgba(4,17,31,.08),
    0 0 0 3px rgba(242,100,25,.22),
    0 4px 16px rgba(242,100,25,.18) !important;
  border-color: rgba(242,100,25,.55) !important;
}

/* ─────────────────────────────────────────────────────────────
   FOOTER
───────────────────────────────────────────────────────────── */
.site-footer {
  background: linear-gradient(
    160deg,
    #03090f 0%,
    #04111f 40%,
    #081b33 100%
  ) !important;
  box-shadow: 0 -4px 40px rgba(4,17,31,.50), 0 -1px 0 rgba(242,100,25,.16) !important;
}

/* ─────────────────────────────────────────────────────────────
   MOBILE STICKY BOOK BAR
───────────────────────────────────────────────────────────── */
.mobile-book-bar {
  background: linear-gradient(
    90deg,
    #04111f 0%,
    #081b33 50%,
    #04111f 100%
  ) !important;
  border-top: 1px solid rgba(242,100,25,.22) !important;
  box-shadow: 0 -4px 24px rgba(4,17,31,.50) !important;
}

.mobile-book-btn {
  background: linear-gradient(135deg, #f26419 0%, #ff8c42 50%, #e74c3c 100%) !important;
  box-shadow: 0 4px 18px rgba(242,100,25,.50) !important;
}

/* ─────────────────────────────────────────────────────────────
   TRUST BAR
───────────────────────────────────────────────────────────── */
.v26-rs__trust {
  border: 1px solid rgba(242,100,25,.16) !important;
  background: rgba(242,100,25,.04) !important;
}

.v26-rs__trust-item svg {
  stroke: #ff8c42 !important;
  filter: drop-shadow(0 0 6px rgba(242,100,25,.45)) !important;
}

.v26-rs__trust-sep {
  background: rgba(242,100,25,.25) !important;
}

/* ─────────────────────────────────────────────────────────────
   ORBS (background decorative blobs)
───────────────────────────────────────────────────────────── */
.v26-rs__orb-1 {
  background: radial-gradient(circle, rgba(242,100,25,.18) 0%, transparent 70%) !important;
}

.v26-rs__orb-2 {
  background: radial-gradient(circle, rgba(192,57,43,.14) 0%, transparent 70%) !important;
}

/* ─────────────────────────────────────────────────────────────
   MOUNTAIN SILHOUETTE SVG — orange tint
───────────────────────────────────────────────────────────── */
.v26-rs__mountain-silhouette path:first-child {
  fill: rgba(242,100,25,.05) !important;
}
.v26-rs__mountain-silhouette path:last-child {
  fill: rgba(242,100,25,.07) !important;
}
.v26-rs__mountain-silhouette polyline {
  stroke: rgba(242,100,25,.20) !important;
}

/* ─────────────────────────────────────────────────────────────
   REDUCED MOTION
───────────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  .section-title,
  .section--dark .section-title,
  .section-label,
  .stat-number,
  .footer-col-title,
  .v26-rs__title,
  .v26-rs__cta-card__heading,
  .v26-rs__stat-num,
  .v26-rs__price-num,
  .v26-room-type,
  .v26-price-val,
  .v26-room-img__price-val,
  .gold-divider,
  .btn--primary,
  .header-book-btn,
  .v26-rs__main-btn {
    animation: none !important;
  }
  .v8-hero__title {
    -webkit-text-fill-color: #ff8c42 !important;
    background: none !important;
    animation: none !important;
  }
}

/* ── design-v31.css (32,409b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v31
   Base: v30
   Changes:
   1. Color system refined — richer, more premium & professional
   2. Reserve section — new premium horizontal layout with
      glassmorphism hero panel + floating feature cards
   Zero content change.
   ══════════════════════════════════════════════════════════════

   REFINED PALETTE v31:
   Primary   — Midnight Blue  #020c1b → #0a2342 (deeper, richer)
   Accent 1  — Sunrise Orange #e8570a → #ff6b2b (warmer, brighter)
   Accent 2  — Crimson        #b5271e → #d63031 (cleaner red)
   Highlight — Flame          #ff9f43 (soft warm orange highlight)
   Light bg  — Pearl          #fef9f5 → #fff6f0 (warmer whites)
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   1. REFINED ROOT COLOR SYSTEM
───────────────────────────────────────────────────────────── */
:root {
  /* Refined brand palette */
  --v31-midnight:   #020c1b;
  --v31-deep:       #061424;
  --v31-navy:       #0a2342;
  --v31-royal:      #0d2e58;
  --v31-cobalt:     #1040a0;
  --v31-orange:     #e8570a;
  --v31-orange-md:  #ff6b2b;
  --v31-orange-lt:  #ff9f43;
  --v31-red:        #b5271e;
  --v31-red-md:     #d63031;
  --v31-red-lt:     #e84545;
  --v31-cream:      #fff6f0;
  --v31-cream2:     #ffeedd;
  --v31-pearl:      #fef9f5;

  /* Override v26 tokens */
  --v26-navy:    #020c1b;
  --v26-navy2:   #061424;
  --v26-navy3:   #0a2342;
  --v26-gold:    #e8570a;
  --v26-gold-lt: #ff9f43;
  --v26-gold-dk: #b84008;
  --v26-sunrise: #d63031;

  /* Gradient tokens */
  --gv31-orange:  linear-gradient(135deg, #fff6f0 0%, #ff9f43 22%, #e8570a 48%, #b84008 72%, #ff9f43 100%);
  --gv31-hero:    linear-gradient(135deg, #ffffff 0%, #ffeedd 18%, #ff9f43 42%, #e8570a 62%, #fff6f0 100%);
  --gv31-dark:    linear-gradient(165deg, #020c1b 0%, #061424 35%, #0a2342 70%, #030e1c 100%);
  --gv31-btn:     linear-gradient(135deg, #e8570a 0%, #ff9f43 40%, #e8570a 70%, #b84008 100%);
  --gv31-crimson: linear-gradient(135deg, #b5271e 0%, #d63031 40%, #e84545 70%, #d63031 100%);

  /* Override old gradient vars */
  --gv26-gold:  var(--gv31-orange);
  --gv26-hero:  var(--gv31-hero);
  --gv26-dark:  var(--gv31-dark);
  --gv26-btn:   var(--gv31-btn);

  /* Shadow tokens */
  --sv31-orange:    0 8px 32px rgba(232,87,10,.44), 0 2px 8px rgba(232,87,10,.26);
  --sv31-orange-lg: 0 22px 64px rgba(232,87,10,.54), 0 8px 24px rgba(232,87,10,.32);
  --sv31-red:       0 8px 28px rgba(214,48,49,.42), 0 2px 8px rgba(214,48,49,.24);
  --sv31-deep:      0 20px 60px rgba(2,12,27,.22), 0 6px 18px rgba(2,12,27,.12);
  --sv31-glass:     0 8px 40px rgba(2,12,27,.50), inset 0 1px 1px rgba(255,255,255,.14);

  --sv26-gold:    var(--sv31-orange);
  --sv26-gold-lg: var(--sv31-orange-lg);
  --sv26-card:    var(--sv31-deep);
  --sv26-glass:   var(--sv31-glass);
}

/* ─────────────────────────────────────────────────────────────
   SECTION BACKGROUNDS — deeper, richer blues
───────────────────────────────────────────────────────────── */
.section--dark {
  background: linear-gradient(
    165deg,
    #020c1b 0%,
    #061424 28%,
    #0a2342 55%,
    #0d2e58 80%,
    #030e1c 100%
  ) !important;
}

.section--dark::before {
  background:
    radial-gradient(ellipse 70% 100% at 8% 60%,  rgba(232,87,10,.13) 0%, transparent 65%),
    radial-gradient(ellipse 50% 70% at 92% 15%,  rgba(182,39,30,.11) 0%, transparent 60%),
    radial-gradient(ellipse 45% 60% at 50% 105%, rgba(232,87,10,.07) 0%, transparent 55%) !important;
}

.section--alt {
  background: linear-gradient(
    160deg,
    #fef9f5 0%,
    #fff6f0 55%,
    #fdf3ec 100%
  ) !important;
}

/* ─────────────────────────────────────────────────────────────
   GRADIENT TEXT — refined, more luminous
───────────────────────────────────────────────────────────── */

/* Section title — light bg: deep blue → orange → red */
.section-title {
  background: linear-gradient(
    128deg,
    #020c1b 0%,
    #061424 15%,
    #0a2342 32%,
    #1040a0 46%,
    #e8570a 60%,
    #ff9f43 74%,
    #d63031 86%,
    #ff9f43 94%,
    #e8570a 100%
  ) !important;
  background-size: 280% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v26Shimmer 9s linear infinite !important;
  filter: drop-shadow(0 2px 16px rgba(2,12,27,.20)) !important;
}

/* Section title — dark bg */
.section--dark .section-title,
.virtual-tour-section .section-title {
  background: linear-gradient(
    128deg,
    #fff6f0 0%,
    #ff9f43 15%,
    #e8570a 32%,
    #ff9f43 48%,
    #d63031 62%,
    #e84545 74%,
    #ff9f43 86%,
    #fff6f0 100%
  ) !important;
  background-size: 280% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v26Shimmer 7s linear infinite !important;
  filter:
    drop-shadow(0 3px 24px rgba(0,0,0,.75))
    drop-shadow(0 0 55px rgba(232,87,10,.38)) !important;
}

/* Hero H1 */
.v8-hero__title {
  background: linear-gradient(
    108deg,
    #fff6f0  0%,
    #ff9f43  9%,
    #e8570a 19%,
    #ffffff 31%,
    #d63031 43%,
    #ff9f43 53%,
    #ffffff 59%,
    #e8570a 67%,
    #ff9f43 77%,
    #d63031 87%,
    #fff6f0 94%,
    #ff9f43 100%
  ) !important;
  background-size: 300% 300% !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v27HeroTitleShimmer 6s ease-in-out infinite, v27TitlePulse 8s ease-in-out infinite !important;
  filter:
    drop-shadow(0 4px 32px rgba(0,0,0,.82))
    drop-shadow(0 2px 65px rgba(232,87,10,.52))
    drop-shadow(0 0 120px rgba(182,39,30,.28)) !important;
}

/* Subpage hero title */
.page-hero .page-hero-title {
  background: linear-gradient(
    135deg,
    #ffffff  0%,
    #ffeedd 18%,
    #ff9f43 42%,
    #e8570a 62%,
    #fff6f0 100%
  ) !important;
  background-size: 240% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  filter:
    drop-shadow(0 4px 30px rgba(0,0,0,.88))
    drop-shadow(0 2px 55px rgba(232,87,10,.45)) !important;
}

/* Section labels */
.section-label {
  background: linear-gradient(
    110deg,
    #b84008 0%,
    #ff9f43 28%,
    #d63031 50%,
    #ff9f43 70%,
    #e8570a 100%
  ) !important;
  background-size: 220% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v26Shimmer 5s linear infinite !important;
  filter: drop-shadow(0 1px 12px rgba(232,87,10,.55)) !important;
}

.section--dark .section-label,
.page-hero .section-label {
  background: none !important;
  -webkit-text-fill-color: #ff9f43 !important;
  color: #ff9f43 !important;
  animation: none !important;
  text-shadow: 0 1px 14px rgba(232,87,10,.65), 0 0 35px rgba(232,87,10,.30) !important;
  filter: none !important;
}

/* Stat numbers */
.stat-number,
.stat-number span[data-counter] {
  background: linear-gradient(
    115deg,
    #e8570a 0%,
    #ff9f43 28%,
    #d63031 52%,
    #ff9f43 74%,
    #e8570a 100%
  ) !important;
  background-size: 220% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v26Shimmer 4s linear infinite !important;
  filter:
    drop-shadow(0 2px 26px rgba(232,87,10,.68))
    drop-shadow(0 0 55px rgba(232,87,10,.35)) !important;
}

/* Footer col titles */
.footer-col-title {
  background: linear-gradient(
    110deg,
    #ff9f43 0%,
    #e8570a 25%,
    #d63031 50%,
    #e8570a 75%,
    #ff9f43 100%
  ) !important;
  background-size: 200% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v26Shimmer 6s linear infinite !important;
  filter:
    drop-shadow(0 2px 18px rgba(232,87,10,.58))
    drop-shadow(0 0 32px rgba(232,87,10,.28)) !important;
}

/* Room type labels */
.v26-room-type {
  background: linear-gradient(
    110deg,
    #b84008 0%,
    #ff9f43 40%,
    #d63031 62%,
    #e8570a 100%
  ) !important;
  background-size: 200% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v26Shimmer 5s linear infinite !important;
  filter: drop-shadow(0 1px 10px rgba(232,87,10,.48)) !important;
}

/* Price values */
.v26-price-val,
.v26-room-img__price-val,
.v26-rs__price-num,
.v26-rs__stat-num {
  background: linear-gradient(
    110deg,
    #e8570a 0%,
    #ff9f43 30%,
    #d63031 55%,
    #ff9f43 75%,
    #e8570a 100%
  ) !important;
  background-size: 220% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v26Shimmer 4.5s linear infinite !important;
  filter:
    drop-shadow(0 2px 18px rgba(232,87,10,.68))
    drop-shadow(0 0 32px rgba(232,87,10,.32)) !important;
}

/* Gold divider */
.gold-divider {
  background: linear-gradient(
    90deg,
    transparent    0%,
    #7d1c14        6%,
    #d63031       20%,
    #e8570a       38%,
    #ff9f43       52%,
    #e8570a       66%,
    #d63031       82%,
    #7d1c14       94%,
    transparent  100%
  ) !important;
  background-size: 300% auto !important;
  animation: v26Shimmer 3.5s linear infinite !important;
  box-shadow:
    0 2px 24px rgba(232,87,10,.58),
    0 0 50px rgba(232,87,10,.24) !important;
}

/* ─────────────────────────────────────────────────────────────
   BUTTONS — richer orange-to-red, stronger 3D
───────────────────────────────────────────────────────────── */
.btn--primary,
.header-book-btn,
.v26-room-book-btn,
.v26-rs__main-btn {
  background: linear-gradient(
    135deg,
    #e8570a 0%,
    #ff9f43 40%,
    #e8570a 70%,
    #b84008 100%
  ) !important;
  background-size: 200% auto !important;
  animation: v26Shimmer 4s linear infinite !important;
  border: none !important;
  box-shadow:
    0 4px 16px rgba(232,87,10,.50),
    0 10px 32px rgba(232,87,10,.35),
    0 1px 0 rgba(255,255,255,.22) inset,
    0 -2px 0 rgba(0,0,0,.22) inset !important;
  color: #fff !important;
  text-shadow: 0 1px 6px rgba(0,0,0,.35) !important;
}

.btn--primary:hover,
.header-book-btn:hover,
.v26-room-book-btn:hover,
.v26-rs__main-btn:hover {
  background: linear-gradient(
    135deg,
    #d63031 0%,
    #ff9f43 40%,
    #d63031 70%,
    #b5271e 100%
  ) !important;
  box-shadow:
    0 8px 26px rgba(232,87,10,.65),
    0 22px 55px rgba(232,87,10,.45),
    0 0 45px rgba(214,48,49,.25),
    0 1px 0 rgba(255,255,255,.28) inset,
    0 -2px 0 rgba(0,0,0,.25) inset !important;
  transform: translateY(-5px) scale(1.038) !important;
}

/* Badge */
.v26-rs__cta-card__badge {
  background: linear-gradient(135deg, #d63031 0%, #e8570a 55%, #ff9f43 100%) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  box-shadow: 0 4px 18px rgba(232,87,10,.58) !important;
}

/* ─────────────────────────────────────────────────────────────
   PRELOADER
───────────────────────────────────────────────────────────── */
.v13-preloader {
  background:
    radial-gradient(ellipse 120% 100% at 50% 120%, rgba(232,87,10,.16) 0%, transparent 55%),
    radial-gradient(ellipse 80%  60% at 50%  80%, rgba(181,39,30,.12) 0%, transparent 50%),
    linear-gradient(165deg, #010810 0%, #061424 55%, #020c1b 100%) !important;
}

.v13-preloader__sun {
  background: radial-gradient(
    circle,
    #fff6f0 0%,
    #ff9f43 28%,
    #e8570a 52%,
    #d63031 74%,
    transparent 100%
  ) !important;
  box-shadow:
    0 0 44px rgba(232,87,10,.85),
    0 0 90px rgba(232,87,10,.55),
    0 0 150px rgba(181,39,30,.35) !important;
}

.v13-preloader__fill {
  background: linear-gradient(90deg, #b84008, #e8570a, #ff9f43, #d63031) !important;
  box-shadow:
    0 0 26px rgba(232,87,10,.88),
    0 0 55px rgba(232,87,10,.48) !important;
}

.v13-preloader__text {
  background: linear-gradient(
    135deg,
    #fff6f0 0%, #ff9f43 22%, #e8570a 48%, #d63031 72%, #ff9f43 100%
  ) !important;
  background-size: 220% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v26Shimmer 3s linear infinite !important;
}

/* ─────────────────────────────────────────────────────────────
   HEADER / NAV
───────────────────────────────────────────────────────────── */
.site-header.header--scrolled,
.site-header.scrolled {
  background: rgba(2,12,27,.88) !important;
  backdrop-filter: blur(30px) saturate(200%) !important;
  -webkit-backdrop-filter: blur(30px) saturate(200%) !important;
  box-shadow:
    0 4px 28px rgba(2,12,27,.45),
    0 18px 65px rgba(2,12,27,.28),
    0 1px 0 rgba(232,87,10,.14),
    inset 0 -1px 0 rgba(232,87,10,.10) !important;
  border-bottom: 1px solid rgba(232,87,10,.12) !important;
}

.site-header.header--scrolled .custom-logo,
.site-header.header--scrolled .site-logo img {
  filter: drop-shadow(0 2px 18px rgba(232,87,10,.45)) !important;
}

/* ─────────────────────────────────────────────────────────────
   FOOTER
───────────────────────────────────────────────────────────── */
.site-footer {
  background: linear-gradient(
    165deg,
    #010810 0%,
    #020c1b 40%,
    #061424 100%
  ) !important;
  box-shadow: 0 -4px 44px rgba(2,12,27,.55), 0 -1px 0 rgba(232,87,10,.18) !important;
  border-top: 1px solid rgba(232,87,10,.12) !important;
}

/* ─────────────────────────────────────────────────────────────
   CARDS — room, gallery, amenity
───────────────────────────────────────────────────────────── */
.v26-room-card:hover,
.v8-room-card:hover {
  box-shadow:
    0 6px 18px rgba(2,12,27,.14),
    0 26px 65px rgba(2,12,27,.28),
    0 50px 115px rgba(2,12,27,.22),
    0 0 0 1.5px rgba(232,87,10,.45),
    inset 0 1px 0 rgba(255,255,255,.70) !important;
}

.home-gallery-item:hover {
  box-shadow:
    0 14px 36px rgba(2,12,27,.28),
    0 44px 105px rgba(2,12,27,.26),
    0 0 0 2px rgba(232,87,10,.75) !important;
  border-color: rgba(232,87,10,.75) !important;
}

/* ─────────────────────────────────────────────────────────────
   2. RESERVE SECTION — PREMIUM HORIZONTAL FEATURE LAYOUT
   Hero glass panel full-width top
   3 feature cards below in a row
   Clean, editorial, ultra-modern
───────────────────────────────────────────────────────────── */

/* Section background — even richer */
.v26-reserve-section {
  background: linear-gradient(
    168deg,
    #010810 0%,
    #020c1b 30%,
    #061424 55%,
    #0a2342 78%,
    #020c1b 100%
  ) !important;
}

/* Background orbs — orange + red */
.v26-rs__bg {
  background:
    radial-gradient(ellipse 75% 110% at 15% 55%,  rgba(232,87,10,.14) 0%, transparent 62%),
    radial-gradient(ellipse 60% 80%  at 85% 15%,  rgba(181,39,30,.12) 0%, transparent 58%),
    radial-gradient(ellipse 45% 60%  at 50% 105%, rgba(232,87,10,.08) 0%, transparent 52%),
    radial-gradient(ellipse 35% 45%  at 65% 50%,  rgba(16,64,160,.08) 0%, transparent 50%) !important;
}

.v26-rs__orb-1 {
  background: rgba(232,87,10,.09) !important;
  width: 600px !important;
  height: 600px !important;
}

.v26-rs__orb-2 {
  background: rgba(181,39,30,.08) !important;
  width: 450px !important;
  height: 450px !important;
}

/* ── HEADLINE ── */
.v26-rs__title {
  background: linear-gradient(
    118deg,
    #fff6f0  0%,
    #ff9f43 14%,
    #e8570a 26%,
    #ffffff 38%,
    #d63031 50%,
    #ff9f43 62%,
    #e8570a 74%,
    #fff6f0 86%,
    #ff9f43 100%
  ) !important;
  background-size: 280% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v26Shimmer 7s linear infinite !important;
  filter:
    drop-shadow(0 3px 30px rgba(0,0,0,.78))
    drop-shadow(0 0 65px rgba(232,87,10,.38)) !important;
}

.v26-rs__eyebrow {
  color: #ff9f43 !important;
  -webkit-text-fill-color: #ff9f43 !important;
  filter:
    drop-shadow(0 1px 14px rgba(232,87,10,.65))
    drop-shadow(0 0 32px rgba(232,87,10,.30)) !important;
}

/* ── STATS BAR ── */
.v26-rs__stats {
  background: rgba(232,87,10,.06) !important;
  border: 1px solid rgba(232,87,10,.20) !important;
  box-shadow:
    0 4px 28px rgba(2,12,27,.35),
    inset 0 1px 0 rgba(232,87,10,.12) !important;
  border-radius: 20px !important;
}

.v26-rs__stat svg {
  stroke: #ff9f43 !important;
  filter: drop-shadow(0 0 7px rgba(232,87,10,.55)) !important;
}

.v26-rs__stat-sep {
  background: linear-gradient(to bottom, transparent, rgba(232,87,10,.38), transparent) !important;
}

/* ── GRID — NEW LAYOUT ──
   Top: full-width hero glass card (CTA)
   Bottom: 2 side-by-side cards (Perks + Find Booking)
   Premium editorial magazine feel
──────────────────────────────────── */
.v26-rs__grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  grid-template-rows: auto auto !important;
  gap: 1.4rem !important;
  overflow-x: visible !important;
  scroll-snap-type: none !important;
  padding: 0 !important;
  margin: 0 !important;
  scrollbar-width: auto !important;
  align-items: stretch !important;
}

/* CTA card — top row, full width */
.v26-rs__cta-card--featured {
  grid-column: 1 / 3 !important;
  grid-row: 1 / 2 !important;
  flex: none !important;
  width: auto !important;
  min-width: 0 !important;
  scroll-snap-align: none !important;

  /* Horizontal layout inside */
  display: grid !important;
  grid-template-columns: 1fr auto !important;
  align-items: center !important;
  gap: 2.5rem !important;
  padding: 2.4rem 3rem !important;
  min-height: auto !important;

  /* Premium glass card */
  background: linear-gradient(
    118deg,
    rgba(6,20,36,.96) 0%,
    rgba(10,35,66,.93) 50%,
    rgba(13,46,88,.90) 100%
  ) !important;
  border: 1px solid rgba(232,87,10,.45) !important;
  border-radius: 28px !important;
  box-shadow:
    0 16px 64px rgba(2,12,27,.65),
    0 40px 100px rgba(2,12,27,.45),
    0 0 0 4px rgba(232,87,10,.08),
    0 0 90px rgba(232,87,10,.10),
    inset 0 1px 0 rgba(255,255,255,.09) !important;
  position: relative !important;
  overflow: hidden !important;
}

/* Dot pattern on CTA */
.v26-rs__cta-card__pattern {
  background-image: radial-gradient(rgba(232,87,10,.07) 1px, transparent 1px) !important;
  background-size: 22px 22px !important;
  border-radius: 28px !important;
}

/* Orange left accent bar */
.v26-rs__cta-card--featured::before {
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  top: 18% !important;
  bottom: 18% !important;
  width: 4px !important;
  background: linear-gradient(
    to bottom,
    transparent,
    #b84008 20%,
    #e8570a 45%,
    #d63031 70%,
    transparent
  ) !important;
  border-radius: 0 4px 4px 0 !important;
  box-shadow: 0 0 22px rgba(232,87,10,.70) !important;
}

/* Glow orb bottom-right */
.v26-rs__cta-card--featured::after {
  content: '' !important;
  position: absolute !important;
  bottom: -30px !important;
  right: -30px !important;
  width: 220px !important;
  height: 220px !important;
  background: radial-gradient(
    circle,
    rgba(232,87,10,.14) 0%,
    rgba(181,39,30,.07) 45%,
    transparent 70%
  ) !important;
  border-radius: 50% !important;
  pointer-events: none !important;
  z-index: 0 !important;
}

/* CTA card left section — text content */
.v26-rs__cta-card--featured .v26-rs__cta-card__top {
  margin-bottom: .8rem !important;
}

.v26-rs__cta-card--featured .v26-rs__cta-card__heading {
  font-size: 1.85rem !important;
  line-height: 1.18 !important;
  margin-bottom: .7rem !important;
  max-width: 520px !important;
}

.v26-rs__cta-card--featured .v26-rs__cta-card__desc {
  max-width: 500px !important;
  margin-bottom: 0 !important;
}

/* CTA card right section — price + button */
.v26-rs__cta-card--featured .v26-rs__price-hint {
  flex-direction: column !important;
  align-items: flex-start !important;
  margin-bottom: 1.2rem !important;
}

.v26-rs__cta-card--featured .v26-rs__price-num {
  font-size: 2.6rem !important;
  line-height: 1 !important;
}

.v26-rs__cta-card--featured .v26-rs__main-btn {
  white-space: nowrap !important;
  padding: 1.15rem 2.2rem !important;
  font-size: 1rem !important;
  border-radius: 16px !important;
  min-width: 200px !important;
  text-align: center !important;
}

.v26-rs__cta-card--featured .v26-rs__cta-note {
  text-align: left !important;
  margin-top: .6rem !important;
}

/* Rearrange children: text left, booking right
   We split using sub-grid approach */
.v26-rs__cta-card--featured > * {
  position: relative !important;
  z-index: 2 !important;
}

/* Left content wrapper */
.v26-rs__cta-card__left {
  flex: 1 !important;
}

/* Right action wrapper */
.v26-rs__cta-card__right {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  min-width: 220px !important;
  flex-shrink: 0 !important;
  padding-left: 2.5rem !important;
  border-left: 1px solid rgba(232,87,10,.18) !important;
}

/* CTA card hover */
.v26-rs__cta-card--featured:hover {
  transform: translateY(-7px) scale(1.010) !important;
  box-shadow:
    0 24px 80px rgba(2,12,27,.68),
    0 55px 120px rgba(2,12,27,.50),
    0 0 0 4px rgba(232,87,10,.36),
    0 0 110px rgba(232,87,10,.18),
    inset 0 1px 0 rgba(255,255,255,.12) !important;
}

/* ── PERKS CARD — bottom left ── */
.v26-rs__perks-card {
  grid-column: 1 / 2 !important;
  grid-row: 2 / 3 !important;
  flex: none !important;
  width: auto !important;
  min-width: 0 !important;
  scroll-snap-align: none !important;
  padding: 2rem 2.2rem !important;
  display: flex !important;
  flex-direction: column !important;

  background: rgba(255,255,255,.040) !important;
  border: 1px solid rgba(232,87,10,.22) !important;
  border-radius: 24px !important;
  box-shadow:
    0 8px 34px rgba(2,12,27,.45),
    0 22px 58px rgba(2,12,27,.30),
    inset 0 1px 0 rgba(255,255,255,.08) !important;
  backdrop-filter: blur(22px) !important;
  -webkit-backdrop-filter: blur(22px) !important;
}

.v26-rs__perks-card:hover {
  transform: translateY(-7px) !important;
  box-shadow:
    0 16px 52px rgba(2,12,27,.52),
    0 35px 75px rgba(2,12,27,.36),
    0 0 0 1px rgba(232,87,10,.35),
    inset 0 1px 0 rgba(255,255,255,.10) !important;
}

/* Perks list — 2 col */
.v26-rs__perks-card .v26-rs__perks-list {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: .55rem .9rem !important;
}

/* ── FIND BOOKING CARD — bottom right ── */
.v26-rs__find-card {
  grid-column: 2 / 3 !important;
  grid-row: 2 / 3 !important;
  flex: none !important;
  width: auto !important;
  min-width: 0 !important;
  scroll-snap-align: none !important;
  padding: 2rem 2.2rem !important;
  display: flex !important;
  flex-direction: column !important;

  background: rgba(255,255,255,.032) !important;
  border: 1px solid rgba(232,87,10,.18) !important;
  border-radius: 24px !important;
  box-shadow:
    0 8px 30px rgba(2,12,27,.42),
    0 20px 52px rgba(2,12,27,.26),
    inset 0 1px 0 rgba(255,255,255,.07) !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
}

.v26-rs__find-card:hover {
  transform: translateY(-7px) !important;
  box-shadow:
    0 16px 48px rgba(2,12,27,.48),
    0 32px 70px rgba(2,12,27,.32),
    0 0 0 1px rgba(232,87,10,.32),
    inset 0 1px 0 rgba(255,255,255,.10) !important;
}

/* Find card icon */
.v26-rs__find-card > .v26-rs__card-icon {
  width: 52px !important;
  height: 52px !important;
  margin-bottom: 1.1rem !important;
  background: rgba(232,87,10,.14) !important;
  border: 1.5px solid rgba(232,87,10,.36) !important;
  box-shadow: 0 4px 20px rgba(232,87,10,.28) !important;
}

/* Quick facts — horizontal row */
.v26-rs__facts {
  display: flex !important;
  flex-direction: row !important;
  margin-top: 1.2rem !important;
  padding-top: 1rem !important;
  border-top: 1px solid rgba(232,87,10,.14) !important;
}

.v26-rs__fact {
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  padding: .35rem .4rem !important;
  border-right: 1px solid rgba(232,87,10,.12) !important;
}

.v26-rs__fact:last-child { border-right: none !important; }

.v26-rs__fact strong {
  color: #ff9f43 !important;
  -webkit-text-fill-color: #ff9f43 !important;
  text-shadow: 0 1px 8px rgba(232,87,10,.42) !important;
  font-size: .9rem !important;
}

.v26-rs__fact span { font-size: .62rem !important; }

/* Hide dots / scroll hint from v28 */
.v26-rs__dots,
.v26-rs__scroll-hint { display: none !important; }
.v26-rs__container::after { display: none !important; }

/* Card icons — orange */
.v26-rs__card-icon,
.v26-rs__cta-icon {
  background: rgba(232,87,10,.14) !important;
  border: 1.5px solid rgba(232,87,10,.36) !important;
  box-shadow: 0 4px 20px rgba(232,87,10,.26) !important;
}

.v26-rs__card-icon svg,
.v26-rs__cta-icon svg {
  stroke: #ff9f43 !important;
  filter: drop-shadow(0 0 5px rgba(232,87,10,.55)) !important;
}

/* Perk check icons */
.v26-rs__perk svg {
  stroke: #ff9f43 !important;
  filter: drop-shadow(0 0 5px rgba(232,87,10,.55)) !important;
}

/* Shortcode inputs */
.v26-rs__shortcode input,
.v26-rs__shortcode select {
  background: rgba(255,255,255,.07) !important;
  border: 1.5px solid rgba(232,87,10,.22) !important;
  border-radius: 12px !important;
  color: #fff !important;
}

.v26-rs__shortcode input:focus,
.v26-rs__shortcode select:focus {
  border-color: #e8570a !important;
  box-shadow: 0 0 0 3px rgba(232,87,10,.22) !important;
}

.v26-rs__shortcode label {
  color: rgba(255,159,67,.72) !important;
  -webkit-text-fill-color: rgba(255,159,67,.72) !important;
}

/* Trust bar */
.v26-rs__trust {
  border-top-color: rgba(232,87,10,.14) !important;
}

.v26-rs__trust-item {
  color: rgba(255,159,67,.72) !important;
  -webkit-text-fill-color: rgba(255,159,67,.72) !important;
}

.v26-rs__trust-item svg {
  stroke: #ff9f43 !important;
  filter: drop-shadow(0 0 6px rgba(232,87,10,.50)) !important;
}

.v26-rs__trust-sep {
  background: rgba(232,87,10,.28) !important;
}

/* Contact buttons */
.v26-rs__contact-btn {
  background: rgba(232,87,10,.12) !important;
  border: 1px solid rgba(232,87,10,.30) !important;
  color: #ff9f43 !important;
  -webkit-text-fill-color: #ff9f43 !important;
  border-radius: 12px !important;
}

.v26-rs__contact-btn:hover {
  background: rgba(232,87,10,.24) !important;
  border-color: rgba(232,87,10,.60) !important;
  box-shadow: 0 4px 20px rgba(232,87,10,.32) !important;
}

/* Mountain silhouette */
.v26-rs__mountain-silhouette path { fill: rgba(232,87,10,.05) !important; }
.v26-rs__mountain-silhouette polyline { stroke: rgba(232,87,10,.18) !important; }

/* ─────────────────────────────────────────────────────────────
   RESPONSIVE
───────────────────────────────────────────────────────────── */
@media (max-width: 1024px) {
  .v26-rs__cta-card--featured {
    grid-template-columns: 1fr !important;
    padding: 2rem 2rem !important;
    gap: 1.5rem !important;
  }
  .v26-rs__cta-card__right {
    border-left: none !important;
    border-top: 1px solid rgba(232,87,10,.18) !important;
    padding-left: 0 !important;
    padding-top: 1.5rem !important;
    min-width: 0 !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 1.5rem !important;
  }
}

@media (max-width: 768px) {
  .v26-rs__grid {
    grid-template-columns: 1fr !important;
  }
  .v26-rs__cta-card--featured {
    grid-column: 1 / 2 !important;
  }
  .v26-rs__perks-card {
    grid-column: 1 / 2 !important;
    grid-row: 2 / 3 !important;
  }
  .v26-rs__find-card {
    grid-column: 1 / 2 !important;
    grid-row: 3 / 4 !important;
  }
  .v26-rs__perks-card .v26-rs__perks-list {
    grid-template-columns: 1fr !important;
  }
  .v26-rs__cta-card--featured .v26-rs__cta-card__heading {
    font-size: 1.5rem !important;
  }
  .v26-rs__cta-card__right {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 1rem !important;
  }
}

/* ─────────────────────────────────────────────────────────────
   REDUCED MOTION
───────────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  .section-title,
  .section--dark .section-title,
  .section-label,
  .stat-number,
  .footer-col-title,
  .v26-rs__title,
  .v26-rs__cta-card__heading,
  .v26-rs__stat-num,
  .v26-rs__price-num,
  .v26-room-type,
  .v26-price-val,
  .v26-room-img__price-val,
  .gold-divider,
  .btn--primary,
  .header-book-btn,
  .v26-rs__main-btn {
    animation: none !important;
    background-position: 0% 50% !important;
  }
  .v8-hero__title {
    -webkit-text-fill-color: #ff9f43 !important;
    background: none !important;
    animation: none !important;
    filter: none !important;
  }
}

/* ── design-v32.css (7,798b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v32
   Base: v31 | Audit fixes only — zero visual/content change
   ──────────────────────────────────────────────────────────────
   Fix 1: CTA card display:flex (not grid) — matches HTML
   Fix 2: Remove duplicate v27HeroTitleShimmer (v30 had copy)
   Fix 3: Scrollbar — orange brand palette
   Fix 4: .v26-price-vat — orange instead of old green
   Fix 5: Reserve grid — single clean definition (no conflicts)
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   FIX 1: CTA CARD — flex column, matches actual HTML structure
   HTML has: __shine, __glow, __pattern, __top, __heading,
   __desc, __price-hint, __main-btn, __cta-note — all direct
   children. No __left/__right wrappers exist in PHP.
───────────────────────────────────────────────────────────── */
.v26-rs__cta-card--featured {
  display: flex !important;
  flex-direction: column !important;
  /* All other styles (bg, border, shadow, radius) inherited from v31 */
}

/* Price hint — push to bottom naturally */
.v26-rs__cta-card--featured .v26-rs__cta-card__desc {
  flex: 1 !important;
  margin-bottom: 1.4rem !important;
}

/* Button full width */
.v26-rs__cta-card--featured .v26-rs__main-btn {
  width: 100% !important;
  margin-top: 0 !important;
}

/* Remove leftover __right border that v31 added (no element exists) */
.v26-rs__cta-card__right {
  display: none !important;
}

/* ─────────────────────────────────────────────────────────────
   FIX 2: HERO TITLE SHIMMER KEYFRAME — authoritative single def
   Overrides both v27 and v30 definitions with one final version
───────────────────────────────────────────────────────────── */
@keyframes v27HeroTitleShimmer {
  0%   {
    background-position: 0% 50%;
    filter:
      drop-shadow(0 4px 40px rgba(0,0,0,.82))
      drop-shadow(0 0 80px rgba(232,87,10,.45));
  }
  25%  {
    background-position: 65% 50%;
    filter:
      drop-shadow(0 6px 52px rgba(0,0,0,.78))
      drop-shadow(0 0 105px rgba(181,39,30,.50));
  }
  50%  {
    background-position: 135% 50%;
    filter:
      drop-shadow(0 5px 46px rgba(0,0,0,.80))
      drop-shadow(0 0 95px rgba(232,87,10,.55));
  }
  75%  {
    background-position: 195% 50%;
    filter:
      drop-shadow(0 7px 58px rgba(0,0,0,.74))
      drop-shadow(0 0 115px rgba(181,39,30,.42));
  }
  100% {
    background-position: 265% 50%;
    filter:
      drop-shadow(0 4px 40px rgba(0,0,0,.82))
      drop-shadow(0 0 80px rgba(232,87,10,.45));
  }
}

/* ─────────────────────────────────────────────────────────────
   FIX 3: SCROLLBAR — orange brand palette
───────────────────────────────────────────────────────────── */
::-webkit-scrollbar {
  width: 5px;
  height: 5px;
}
::-webkit-scrollbar-track {
  background: #020c1b;
}
::-webkit-scrollbar-thumb {
  background: linear-gradient(
    180deg,
    #b84008,
    #e8570a,
    #ff9f43,
    #d63031
  );
  border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
  background: linear-gradient(
    180deg,
    #e8570a,
    #ff9f43,
    #d63031
  );
}

/* ─────────────────────────────────────────────────────────────
   FIX 4: PRICE VAT — orange brand (was old green #22c55e)
───────────────────────────────────────────────────────────── */
.v26-price-vat {
  color: #ff9f43 !important;
  -webkit-text-fill-color: #ff9f43 !important;
}

/* ─────────────────────────────────────────────────────────────
   FIX 5: RESERVE GRID — one clean authoritative definition
   Overrides all previous conflicting versions (v26–v31)
───────────────────────────────────────────────────────────── */
.v26-rs__grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  grid-template-rows: auto auto !important;
  gap: 1.4rem !important;
  overflow-x: visible !important;
  overflow-y: visible !important;
  scroll-snap-type: none !important;
  -webkit-overflow-scrolling: auto !important;
  padding: 0 !important;
  margin: 0 !important;
  align-items: stretch !important;
  scrollbar-width: auto !important;
}

/* CTA — top full width */
.v26-rs__cta-card--featured {
  grid-column: 1 / 3 !important;
  grid-row: 1 / 2 !important;
  width: auto !important;
  min-width: 0 !important;
  flex: none !important;
  scroll-snap-align: none !important;
}

/* Perks — bottom left */
.v26-rs__perks-card {
  grid-column: 1 / 2 !important;
  grid-row: 2 / 3 !important;
  width: auto !important;
  min-width: 0 !important;
  flex: none !important;
  scroll-snap-align: none !important;
}

/* Find booking — bottom right */
.v26-rs__find-card {
  grid-column: 2 / 3 !important;
  grid-row: 2 / 3 !important;
  width: auto !important;
  min-width: 0 !important;
  flex: none !important;
  scroll-snap-align: none !important;
}

/* Ensure dots/scroll-hint never appear */
.v26-rs__dots,
.v26-rs__scroll-hint {
  display: none !important;
}
.v26-rs__container::after {
  display: none !important;
}

/* ─────────────────────────────────────────────────────────────
   RESPONSIVE — clean single source
───────────────────────────────────────────────────────────── */
@media (max-width: 1024px) {
  .v26-rs__grid {
    grid-template-columns: 1fr 1fr !important;
  }
  .v26-rs__cta-card--featured {
    grid-column: 1 / 3 !important;
    padding: 2rem !important;
  }
}

@media (max-width: 768px) {
  .v26-rs__grid {
    grid-template-columns: 1fr !important;
  }
  .v26-rs__cta-card--featured {
    grid-column: 1 / 2 !important;
    grid-row: 1 / 2 !important;
    padding: 1.8rem 1.6rem !important;
    min-height: auto !important;
  }
  .v26-rs__perks-card {
    grid-column: 1 / 2 !important;
    grid-row: 2 / 3 !important;
  }
  .v26-rs__find-card {
    grid-column: 1 / 2 !important;
    grid-row: 3 / 4 !important;
  }
  .v26-rs__perks-card .v26-rs__perks-list {
    grid-template-columns: 1fr !important;
  }
}

/* ── design-v33.css (17,211b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v33
   Base: v32
   Changes:
   1. Reserve section — polished & more attractive (same layout)
   2. 3D / hover effects — toned down to professional level
   3. Minor refinements: spacing, card borders, glow balance
   Zero content / layout / section change.
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   1. BUTTONS — lighter 3D, cleaner professional feel
   Was: translateY(-5px) scale(1.038) — too jumpy
   Now: translateY(-3px) scale(1.018) — refined lift
───────────────────────────────────────────────────────────── */
.btn--primary,
.header-book-btn,
.v26-room-book-btn,
.v26-rs__main-btn {
  box-shadow:
    0 3px 10px rgba(232,87,10,.38),
    0 6px 20px rgba(232,87,10,.22),
    inset 0 1px 0 rgba(255,255,255,.20),
    inset 0 -1px 0 rgba(0,0,0,.16) !important;
  transition: transform .28s cubic-bezier(.34,1.4,.64,1),
              box-shadow .26s ease !important;
}

.btn--primary:hover,
.header-book-btn:hover,
.v26-room-book-btn:hover,
.v26-rs__main-btn:hover {
  transform: translateY(-3px) scale(1.018) !important;
  box-shadow:
    0 6px 18px rgba(232,87,10,.52),
    0 14px 36px rgba(232,87,10,.32),
    0 0 28px rgba(214,48,49,.16),
    inset 0 1px 0 rgba(255,255,255,.24),
    inset 0 -1px 0 rgba(0,0,0,.18) !important;
}

/* ─────────────────────────────────────────────────────────────
   2. ROOM CARDS — professional hover lift
   Was: translateY(-20px) scale(1.018) rotateX(1.5deg)
   Now: translateY(-10px) scale(1.01) — clean
───────────────────────────────────────────────────────────── */
.v26-room-card,
.v8-room-card {
  transition: transform .38s cubic-bezier(.34,1.3,.64,1),
              box-shadow .34s ease !important;
}

.v26-room-card:hover,
.v8-room-card:hover {
  transform: translateY(-10px) scale(1.01) !important;
  box-shadow:
    0 5px 14px rgba(2,12,27,.10),
    0 18px 48px rgba(2,12,27,.20),
    0 36px 80px rgba(2,12,27,.15),
    0 0 0 1.5px rgba(232,87,10,.38),
    inset 0 1px 0 rgba(255,255,255,.65) !important;
}

/* ─────────────────────────────────────────────────────────────
   3. GALLERY ITEMS — less aggressive 3D
   Was: translateY(-22px) scale(1.048) rotateX(3deg) rotateY(-1deg)
   Now: translateY(-12px) scale(1.025) — elegant
───────────────────────────────────────────────────────────── */
.home-gallery-item {
  transition: transform .4s cubic-bezier(.34,1.3,.64,1),
              box-shadow .36s ease,
              border-color .28s !important;
}

.home-gallery-item:hover {
  transform: translateY(-12px) scale(1.025) !important;
  box-shadow:
    0 10px 28px rgba(2,12,27,.22),
    0 30px 75px rgba(2,12,27,.20),
    0 0 0 2px rgba(232,87,10,.60) !important;
  border-color: rgba(232,87,10,.60) !important;
  z-index: 5 !important;
}

/* ─────────────────────────────────────────────────────────────
   4. AMENITY / FEATURE / EXPERIENCE CARDS
   Was: translateY(-14px) rotateX(2deg) scale(1.02)
   Now: translateY(-8px) scale(1.01)
───────────────────────────────────────────────────────────── */
.amenity-card,
.feature-card,
.experience-card {
  transition: transform .36s cubic-bezier(.34,1.3,.64,1),
              box-shadow .32s ease !important;
}

.amenity-card:hover,
.feature-card:hover,
.experience-card:hover {
  transform: translateY(-8px) scale(1.01) !important;
  box-shadow:
    0 20px 60px rgba(2,12,27,.22),
    0 8px 20px rgba(2,12,27,.14),
    0 0 0 1px rgba(232,87,10,.18) !important;
}

/* ─────────────────────────────────────────────────────────────
   5. STAT ITEMS
   Was: translateY(-10px) scale(1.06) rotateX(4deg) — too aggressive
   Now: translateY(-6px) scale(1.03)
───────────────────────────────────────────────────────────── */
.stat-item {
  transition: transform .34s cubic-bezier(.34,1.3,.64,1),
              box-shadow .30s ease !important;
}

.stat-item:hover {
  transform: translateY(-6px) scale(1.03) !important;
  box-shadow:
    0 20px 55px rgba(2,12,27,.24),
    0 8px 20px rgba(2,12,27,.14),
    0 0 0 1px rgba(232,87,10,.15) !important;
}

/* ─────────────────────────────────────────────────────────────
   6. RESERVE SECTION — polished & more attractive
   Same layout (grid: CTA top full-width, perks+find bottom)
   Improvements: better spacing, stronger visual hierarchy,
   richer card backgrounds, tighter borders, refined glow
───────────────────────────────────────────────────────────── */

/* Section padding — more breathing room */
.v26-reserve-section .v26-rs__container {
  padding-top: 0 !important;
}

/* Grid gap — slightly tighter, more composed */
.v26-rs__grid {
  gap: 1.2rem !important;
}

/* ── CTA CARD — refined horizontal feel ── */
.v26-rs__cta-card--featured {
  /* Richer deep blue glass */
  background: linear-gradient(
    128deg,
    rgba(4,14,30,.98) 0%,
    rgba(8,28,60,.95) 42%,
    rgba(12,40,80,.92) 78%,
    rgba(5,16,34,.98) 100%
  ) !important;
  border: 1px solid rgba(232,87,10,.40) !important;
  border-radius: 24px !important;
  padding: 2.4rem 2.8rem !important;

  /* Cleaner shadow — not too heavy */
  box-shadow:
    0 12px 50px rgba(2,12,27,.58),
    0 32px 80px rgba(2,12,27,.38),
    0 0 0 3px rgba(232,87,10,.07),
    0 0 70px rgba(232,87,10,.08),
    inset 0 1px 0 rgba(255,255,255,.08) !important;

  /* Top border accent line */
  border-top: 2px solid rgba(232,87,10,.55) !important;
}

/* Top border — stronger accent at very top */
.v26-rs__cta-card--featured::before {
  top: 0 !important;
  bottom: auto !important;
  left: 10% !important;
  right: 10% !important;
  width: auto !important;
  height: 2px !important;
  background: linear-gradient(
    90deg,
    transparent,
    #b84008 15%,
    #e8570a 35%,
    #ff9f43 50%,
    #e8570a 65%,
    #d63031 85%,
    transparent
  ) !important;
  box-shadow: 0 0 18px rgba(232,87,10,.65) !important;
  border-radius: 0 0 2px 2px !important;
}

/* Glow orb — subtler */
.v26-rs__cta-card--featured::after {
  width: 180px !important;
  height: 180px !important;
  bottom: -25px !important;
  right: -25px !important;
  background: radial-gradient(
    circle,
    rgba(232,87,10,.10) 0%,
    rgba(181,39,30,.05) 45%,
    transparent 68%
  ) !important;
}

/* CTA heading — clear hierarchy */
.v26-rs__cta-card--featured .v26-rs__cta-card__heading {
  font-size: 1.75rem !important;
  line-height: 1.20 !important;
  margin-bottom: .65rem !important;
  letter-spacing: -.01em !important;
}

/* CTA badge — tighter */
.v26-rs__cta-card__badge {
  padding: .3rem .85rem !important;
  font-size: .68rem !important;
  letter-spacing: .12em !important;
  border-radius: 20px !important;
  font-weight: 700 !important;
}

/* Price number — prominent */
.v26-rs__cta-card--featured .v26-rs__price-num {
  font-size: 2.2rem !important;
  letter-spacing: -.02em !important;
}

/* CTA note — subtle, clean */
.v26-rs__cta-card--featured .v26-rs__cta-note {
  font-size: .72rem !important;
  opacity: .70 !important;
  margin-top: .75rem !important;
  letter-spacing: .02em !important;
}

/* CTA card hover — refined */
.v26-rs__cta-card--featured:hover {
  transform: translateY(-6px) scale(1.006) !important;
  box-shadow:
    0 20px 65px rgba(2,12,27,.62),
    0 44px 95px rgba(2,12,27,.42),
    0 0 0 3px rgba(232,87,10,.28),
    0 0 80px rgba(232,87,10,.14),
    inset 0 1px 0 rgba(255,255,255,.10) !important;
  border-color: rgba(232,87,10,.58) !important;
}

/* ── PERKS CARD — richer feel ── */
.v26-rs__perks-card {
  background: linear-gradient(
    145deg,
    rgba(8,20,40,.85) 0%,
    rgba(12,30,58,.80) 100%
  ) !important;
  border: 1px solid rgba(232,87,10,.20) !important;
  border-top: 2px solid rgba(232,87,10,.35) !important;
  border-radius: 20px !important;
  padding: 1.8rem 2rem !important;
  box-shadow:
    0 6px 28px rgba(2,12,27,.40),
    0 16px 50px rgba(2,12,27,.26),
    inset 0 1px 0 rgba(255,255,255,.07) !important;
  backdrop-filter: blur(24px) !important;
  -webkit-backdrop-filter: blur(24px) !important;
  transition: transform .36s cubic-bezier(.34,1.3,.64,1),
              box-shadow .32s ease,
              border-color .28s !important;
}

.v26-rs__perks-card:hover {
  transform: translateY(-7px) !important;
  border-color: rgba(232,87,10,.38) !important;
  box-shadow:
    0 12px 44px rgba(2,12,27,.48),
    0 28px 65px rgba(2,12,27,.32),
    0 0 0 1px rgba(232,87,10,.28),
    inset 0 1px 0 rgba(255,255,255,.09) !important;
}

/* Perks card header */
.v26-rs__perks-card .v26-rs__card-title {
  font-size: 1.05rem !important;
  margin-bottom: 1.1rem !important;
  letter-spacing: .01em !important;
}

/* Perks card icon */
.v26-rs__perks-card > .v26-rs__card-icon {
  width: 46px !important;
  height: 46px !important;
  margin-bottom: .9rem !important;
}

/* Perks list — 2 col, more compact */
.v26-rs__perks-card .v26-rs__perks-list {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: .5rem .8rem !important;
  margin-top: .2rem !important;
}

.v26-rs__perks-card .v26-rs__perk {
  font-size: .80rem !important;
  display: flex !important;
  align-items: center !important;
  gap: .4rem !important;
}

/* ── FIND BOOKING CARD ── */
.v26-rs__find-card {
  background: linear-gradient(
    145deg,
    rgba(6,16,34,.82) 0%,
    rgba(10,26,52,.76) 100%
  ) !important;
  border: 1px solid rgba(232,87,10,.16) !important;
  border-top: 2px solid rgba(232,87,10,.28) !important;
  border-radius: 20px !important;
  padding: 1.8rem 2rem !important;
  box-shadow:
    0 6px 24px rgba(2,12,27,.36),
    0 14px 44px rgba(2,12,27,.22),
    inset 0 1px 0 rgba(255,255,255,.06) !important;
  backdrop-filter: blur(22px) !important;
  -webkit-backdrop-filter: blur(22px) !important;
  transition: transform .36s cubic-bezier(.34,1.3,.64,1),
              box-shadow .32s ease,
              border-color .28s !important;
}

.v26-rs__find-card:hover {
  transform: translateY(-7px) !important;
  border-color: rgba(232,87,10,.32) !important;
  box-shadow:
    0 12px 40px rgba(2,12,27,.44),
    0 26px 60px rgba(2,12,27,.28),
    0 0 0 1px rgba(232,87,10,.24),
    inset 0 1px 0 rgba(255,255,255,.08) !important;
}

/* Find card title */
.v26-rs__find-card .v26-rs__card-title {
  font-size: 1.05rem !important;
  margin-bottom: .55rem !important;
  letter-spacing: .01em !important;
}

/* Find card description */
.v26-rs__find-desc {
  font-size: .83rem !important;
  line-height: 1.58 !important;
  color: rgba(255,255,255,.58) !important;
  -webkit-text-fill-color: rgba(255,255,255,.58) !important;
  margin-bottom: 1.1rem !important;
}

/* Quick facts — horizontal, pill-like */
.v26-rs__facts {
  background: rgba(232,87,10,.05) !important;
  border: 1px solid rgba(232,87,10,.12) !important;
  border-radius: 14px !important;
  padding: .6rem .4rem !important;
  margin-top: 1.1rem !important;
}

.v26-rs__fact {
  padding: .3rem .5rem !important;
}

.v26-rs__fact span {
  font-size: .60rem !important;
  letter-spacing: .06em !important;
  color: rgba(255,255,255,.45) !important;
  -webkit-text-fill-color: rgba(255,255,255,.45) !important;
  text-transform: uppercase !important;
}

.v26-rs__fact strong {
  font-size: .88rem !important;
  margin-top: .15rem !important;
}

/* ── RESERVE SECTION TITLE AREA ── */
.v26-rs__title {
  font-size: clamp(2rem, 4vw, 3rem) !important;
  letter-spacing: -.02em !important;
  line-height: 1.12 !important;
}

.v26-rs__eyebrow {
  font-size: .72rem !important;
  letter-spacing: .18em !important;
}

/* Stats bar — more refined */
.v26-rs__stats {
  border-radius: 16px !important;
  padding: .9rem 1.4rem !important;
}

/* ── TRUST BAR ── */
.v26-rs__trust {
  margin-top: 1.6rem !important;
  padding-top: 1.4rem !important;
}

.v26-rs__trust-item {
  font-size: .74rem !important;
  letter-spacing: .06em !important;
}

/* ─────────────────────────────────────────────────────────────
   7. RESERVE SECTION CARD ICONS — consistent sizing
───────────────────────────────────────────────────────────── */
.v26-rs__card-icon,
.v26-rs__cta-icon {
  width: 46px !important;
  height: 46px !important;
  border-radius: 14px !important;
  background: rgba(232,87,10,.12) !important;
  border: 1.5px solid rgba(232,87,10,.30) !important;
  box-shadow: 0 3px 14px rgba(232,87,10,.22) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
  margin-bottom: 1rem !important;
}

/* ─────────────────────────────────────────────────────────────
   8. CONTACT BUTTONS — cleaner
───────────────────────────────────────────────────────────── */
.v26-rs__contact-btn {
  border-radius: 10px !important;
  padding: .75rem 1rem !important;
  font-size: .82rem !important;
  font-weight: 600 !important;
  transition: background .24s, border-color .24s, box-shadow .24s !important;
}

/* ─────────────────────────────────────────────────────────────
   RESPONSIVE
───────────────────────────────────────────────────────────── */
@media (max-width: 768px) {
  .v26-rs__cta-card--featured {
    padding: 1.8rem 1.6rem !important;
  }
  .v26-rs__cta-card--featured .v26-rs__cta-card__heading {
    font-size: 1.45rem !important;
  }
  .v26-rs__cta-card--featured .v26-rs__price-num {
    font-size: 1.8rem !important;
  }
  .v26-rs__perks-card,
  .v26-rs__find-card {
    padding: 1.5rem 1.5rem !important;
  }
  .v26-rs__perks-card .v26-rs__perks-list {
    grid-template-columns: 1fr !important;
  }
  /* Mobile: reduce hover lifts */
  .v26-room-card:hover,
  .v8-room-card:hover {
    transform: translateY(-6px) !important;
  }
  .home-gallery-item:hover {
    transform: translateY(-8px) scale(1.015) !important;
  }
  .btn--primary:hover,
  .v26-rs__main-btn:hover {
    transform: translateY(-2px) scale(1.01) !important;
  }
}

/* ─────────────────────────────────────────────────────────────
   REDUCED MOTION
───────────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  .v26-room-card:hover,
  .v8-room-card:hover,
  .home-gallery-item:hover,
  .amenity-card:hover,
  .feature-card:hover,
  .experience-card:hover,
  .stat-item:hover,
  .v26-rs__cta-card--featured:hover,
  .v26-rs__perks-card:hover,
  .v26-rs__find-card:hover,
  .btn--primary:hover,
  .header-book-btn:hover,
  .v26-room-book-btn:hover,
  .v26-rs__main-btn:hover {
    transform: none !important;
  }
}

/* ── design-v34.css (29,031b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v34
   Base: v33 | Goal: 2× more attractive reserve section
   Zero content / layout / section change.
   ──────────────────────────────────────────────────────────────
   What makes it 2x better:
   — Animated gradient border on CTA card (rotating conic glow)
   — Shine sweep animation across CTA card surface
   — Perk items — icon glow + subtle hover lift per item
   — Perks card — inner glow pulse animation
   — Find card — subtle scanline texture
   — Price number — larger + breathing pulse animation
   — Book button — shimmer sweep on hover
   — Section bg — deeper star-field radial layers
   — Card borders — animated gradient strokes
   — Overall: more depth, more life, more premium
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   ANIMATIONS — new v34 keyframes
───────────────────────────────────────────────────────────── */

/* Rotating conic gradient for animated border glow */
@keyframes v34BorderRotate {
  0%   { --v34-angle: 0deg; }
  100% { --v34-angle: 360deg; }
}

/* Shine sweep across card */
@keyframes v34Shine {
  0%   { transform: translateX(-120%) skewX(-18deg); opacity: 0; }
  10%  { opacity: .55; }
  45%  { opacity: .30; }
  70%  { opacity: 0; transform: translateX(160%) skewX(-18deg); }
  100% { opacity: 0; transform: translateX(160%) skewX(-18deg); }
}

/* Subtle pulse on inner glow */
@keyframes v34GlowPulse {
  0%,100% { opacity: .55; transform: scale(1); }
  50%      { opacity: .85; transform: scale(1.08); }
}

/* Price number breathing */
@keyframes v34PricePulse {
  0%,100% { filter: drop-shadow(0 2px 18px rgba(232,87,10,.65)) drop-shadow(0 0 32px rgba(232,87,10,.32)); }
  50%     { filter: drop-shadow(0 2px 28px rgba(232,87,10,.88)) drop-shadow(0 0 55px rgba(232,87,10,.52)); }
}

/* Button shimmer on hover */
@keyframes v34BtnShimmer {
  0%   { left: -80%; }
  100% { left: 130%; }
}

/* Perks card inner glow pulse */
@keyframes v34PerksPulse {
  0%,100% { opacity: .40; }
  50%      { opacity: .70; }
}

/* ─────────────────────────────────────────────────────────────
   RESERVE SECTION BACKGROUND — richer, deeper
───────────────────────────────────────────────────────────── */
.v26-reserve-section {
  background: linear-gradient(
    172deg,
    #010710 0%,
    #020c1b 22%,
    #040f22 45%,
    #071630 68%,
    #0a1d3e 85%,
    #020c1b 100%
  ) !important;
}

.v26-rs__bg {
  background:
    radial-gradient(ellipse 80% 120% at 10% 50%,  rgba(232,87,10,.16) 0%, transparent 58%),
    radial-gradient(ellipse 65% 90%  at 90% 10%,  rgba(181,39,30,.14) 0%, transparent 55%),
    radial-gradient(ellipse 50% 65%  at 50% 108%, rgba(232,87,10,.09) 0%, transparent 50%),
    radial-gradient(ellipse 40% 50%  at 70% 55%,  rgba(16,64,160,.10) 0%, transparent 48%),
    radial-gradient(ellipse 30% 40%  at 25% 20%,  rgba(232,87,10,.06) 0%, transparent 45%) !important;
}

/* ─────────────────────────────────────────────────────────────
   CTA CARD — animated border + shine + depth
───────────────────────────────────────────────────────────── */
.v26-rs__cta-card--featured {
  background: linear-gradient(
    138deg,
    rgba(3,11,26,.99)  0%,
    rgba(6,22,50,.96)  35%,
    rgba(10,34,74,.93) 65%,
    rgba(4,13,30,.99)  100%
  ) !important;

  /* Animated gradient border via box-shadow + pseudo */
  border: 1.5px solid transparent !important;
  border-radius: 26px !important;

  /* Rich layered shadow */
  box-shadow:
    0 0 0 1.5px rgba(232,87,10,.35),
    0 0 0 4px rgba(232,87,10,.06),
    0 14px 55px rgba(2,12,27,.65),
    0 36px 88px rgba(2,12,27,.42),
    0 0 85px rgba(232,87,10,.09),
    inset 0 1px 0 rgba(255,255,255,.09),
    inset 0 -1px 0 rgba(232,87,10,.06) !important;

  padding: 2.6rem 3rem !important;
  position: relative !important;
  overflow: hidden !important;
  transition: transform .36s cubic-bezier(.34,1.3,.64,1),
              box-shadow .32s ease !important;
}

/* Animated top glow bar */
.v26-rs__cta-card--featured::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important; left: 0 !important; right: 0 !important;
  height: 2px !important;
  background: linear-gradient(
    90deg,
    transparent 0%,
    #7d2800   8%,
    #e8570a  28%,
    #ff9f43  45%,
    #ffffff  50%,
    #ff9f43  55%,
    #e8570a  72%,
    #d63031  88%,
    transparent 100%
  ) !important;
  background-size: 200% auto !important;
  animation: v26Shimmer 3s linear infinite !important;
  box-shadow:
    0 0 14px rgba(232,87,10,.70),
    0 0 35px rgba(232,87,10,.35),
    0 0 60px rgba(232,87,10,.18) !important;
  border-radius: 26px 26px 0 0 !important;
  z-index: 3 !important;
}

/* Shine sweep — __shine div in HTML */
.v26-rs__cta-card__shine {
  position: absolute !important;
  top: 0 !important; bottom: 0 !important;
  width: 55% !important;
  background: linear-gradient(
    105deg,
    transparent 0%,
    rgba(255,255,255,.00) 38%,
    rgba(255,255,255,.06) 50%,
    rgba(255,255,255,.00) 62%,
    transparent 100%
  ) !important;
  z-index: 2 !important;
  pointer-events: none !important;
  animation: v34Shine 7s 1s ease-in-out infinite !important;
}

/* Inner glow — __glow div */
.v26-rs__cta-card__glow {
  position: absolute !important;
  bottom: -60px !important;
  right: -60px !important;
  width: 280px !important;
  height: 280px !important;
  background: radial-gradient(
    circle,
    rgba(232,87,10,.16) 0%,
    rgba(181,39,30,.08) 40%,
    transparent 68%
  ) !important;
  border-radius: 50% !important;
  pointer-events: none !important;
  z-index: 1 !important;
  animation: v34GlowPulse 5s ease-in-out infinite !important;
}

/* Dot pattern — __pattern div */
.v26-rs__cta-card__pattern {
  position: absolute !important;
  inset: 0 !important;
  background-image:
    radial-gradient(circle, rgba(232,87,10,.055) 1px, transparent 1px) !important;
  background-size: 24px 24px !important;
  border-radius: 26px !important;
  z-index: 1 !important;
  pointer-events: none !important;
}

/* All direct children above overlays */
.v26-rs__cta-card--featured > *:not(.v26-rs__cta-card__shine):not(.v26-rs__cta-card__glow):not(.v26-rs__cta-card__pattern) {
  position: relative !important;
  z-index: 4 !important;
}

/* Top row — badge + icon */
.v26-rs__cta-card__top {
  display: flex !important;
  align-items: center !important;
  gap: .85rem !important;
  margin-bottom: 1.1rem !important;
}

/* Badge — premium pill */
.v26-rs__cta-card__badge {
  background: linear-gradient(
    135deg,
    #b84008 0%,
    #e8570a 45%,
    #ff9f43 70%,
    #d63031 100%
  ) !important;
  background-size: 200% auto !important;
  animation: v26Shimmer 4s linear infinite !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-size: .66rem !important;
  font-weight: 800 !important;
  letter-spacing: .16em !important;
  text-transform: uppercase !important;
  padding: .32rem 1rem !important;
  border-radius: 30px !important;
  box-shadow:
    0 3px 12px rgba(232,87,10,.55),
    0 0 24px rgba(232,87,10,.28),
    inset 0 1px 0 rgba(255,255,255,.22) !important;
}

/* CTA icon */
.v26-rs__cta-icon {
  width: 48px !important;
  height: 48px !important;
  border-radius: 14px !important;
  background: rgba(232,87,10,.14) !important;
  border: 1.5px solid rgba(232,87,10,.38) !important;
  box-shadow:
    0 4px 16px rgba(232,87,10,.28),
    inset 0 1px 0 rgba(255,255,255,.10) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.v26-rs__cta-icon svg {
  stroke: #ff9f43 !important;
  filter: drop-shadow(0 0 6px rgba(232,87,10,.60)) !important;
}

/* Heading */
.v26-rs__cta-card__heading {
  font-size: 1.80rem !important;
  line-height: 1.18 !important;
  letter-spacing: -.02em !important;
  margin-bottom: .65rem !important;
  /* gradient text */
  background: linear-gradient(
    118deg,
    #fff6f0 0%,
    #ff9f43 22%,
    #ffffff 42%,
    #ff9f43 60%,
    #fff6f0 80%,
    #ff9f43 100%
  ) !important;
  background-size: 240% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v26Shimmer 8s linear infinite !important;
  filter: drop-shadow(0 2px 16px rgba(0,0,0,.60)) !important;
}

/* Description */
.v26-rs__cta-card__desc {
  color: rgba(255,255,255,.62) !important;
  -webkit-text-fill-color: rgba(255,255,255,.62) !important;
  font-size: .88rem !important;
  line-height: 1.62 !important;
  margin-bottom: 1.6rem !important;
  flex: 1 !important;
}

/* Price hint */
.v26-rs__price-hint {
  display: flex !important;
  align-items: baseline !important;
  gap: .4rem !important;
  margin-bottom: 1.3rem !important;
  padding: 1rem 1.2rem !important;
  background: rgba(232,87,10,.07) !important;
  border: 1px solid rgba(232,87,10,.18) !important;
  border-radius: 14px !important;
  box-shadow: inset 0 1px 0 rgba(232,87,10,.10) !important;
}

.v26-rs__price-from {
  font-size: .72rem !important;
  letter-spacing: .06em !important;
  color: rgba(255,255,255,.50) !important;
  -webkit-text-fill-color: rgba(255,255,255,.50) !important;
  text-transform: uppercase !important;
  align-self: center !important;
}

.v26-rs__price-num {
  font-size: 2.3rem !important;
  font-weight: 800 !important;
  letter-spacing: -.03em !important;
  animation: v34PricePulse 4s ease-in-out infinite !important;
}

.v26-rs__price-night {
  font-size: .78rem !important;
  color: rgba(255,255,255,.45) !important;
  -webkit-text-fill-color: rgba(255,255,255,.45) !important;
  align-self: center !important;
}

/* Book button — with shimmer pseudo */
.v26-rs__main-btn {
  position: relative !important;
  overflow: hidden !important;
  width: 100% !important;
  text-align: center !important;
  padding: 1.1rem 1.6rem !important;
  font-size: .96rem !important;
  font-weight: 700 !important;
  letter-spacing: .05em !important;
  border-radius: 16px !important;
  background: linear-gradient(
    135deg,
    #b84008 0%,
    #e8570a 30%,
    #ff9f43 55%,
    #e8570a 75%,
    #d63031 100%
  ) !important;
  background-size: 200% auto !important;
  animation: v26Shimmer 5s linear infinite !important;
  box-shadow:
    0 4px 16px rgba(232,87,10,.48),
    0 8px 30px rgba(232,87,10,.28),
    0 0 50px rgba(232,87,10,.12),
    inset 0 1px 0 rgba(255,255,255,.22),
    inset 0 -2px 0 rgba(0,0,0,.18) !important;
}

/* Button shimmer sweep on hover via pseudo */
.v26-rs__main-btn::after {
  content: '' !important;
  position: absolute !important;
  top: 0 !important; bottom: 0 !important;
  left: -80% !important;
  width: 50% !important;
  background: linear-gradient(
    105deg,
    transparent 0%,
    rgba(255,255,255,.22) 50%,
    transparent 100%
  ) !important;
  transform: skewX(-18deg) !important;
  pointer-events: none !important;
}

.v26-rs__main-btn:hover::after {
  animation: v34BtnShimmer .55s ease-out forwards !important;
}

.v26-rs__main-btn:hover {
  transform: translateY(-3px) scale(1.016) !important;
  box-shadow:
    0 8px 24px rgba(232,87,10,.60),
    0 18px 44px rgba(232,87,10,.38),
    0 0 70px rgba(232,87,10,.20),
    inset 0 1px 0 rgba(255,255,255,.26),
    inset 0 -2px 0 rgba(0,0,0,.20) !important;
}

/* CTA note */
.v26-rs__cta-note {
  font-size: .70rem !important;
  color: rgba(255,255,255,.42) !important;
  -webkit-text-fill-color: rgba(255,255,255,.42) !important;
  margin-top: .8rem !important;
  letter-spacing: .03em !important;
  text-align: center !important;
}

/* CTA hover */
.v26-rs__cta-card--featured:hover {
  transform: translateY(-6px) scale(1.006) !important;
  box-shadow:
    0 0 0 1.5px rgba(232,87,10,.55),
    0 0 0 5px rgba(232,87,10,.08),
    0 22px 70px rgba(2,12,27,.65),
    0 44px 100px rgba(2,12,27,.45),
    0 0 100px rgba(232,87,10,.14),
    inset 0 1px 0 rgba(255,255,255,.12),
    inset 0 -1px 0 rgba(232,87,10,.08) !important;
}

/* ─────────────────────────────────────────────────────────────
   PERKS CARD — premium icon + perk styling
───────────────────────────────────────────────────────────── */
.v26-rs__perks-card {
  background: linear-gradient(
    148deg,
    rgba(5,16,36,.92) 0%,
    rgba(9,26,55,.88) 55%,
    rgba(6,18,40,.92) 100%
  ) !important;
  border: 1px solid rgba(232,87,10,.22) !important;
  border-top: 2px solid rgba(232,87,10,.40) !important;
  border-radius: 22px !important;
  padding: 1.8rem 2rem !important;
  box-shadow:
    0 8px 32px rgba(2,12,27,.44),
    0 20px 55px rgba(2,12,27,.28),
    inset 0 1px 0 rgba(255,255,255,.07) !important;
  backdrop-filter: blur(28px) !important;
  -webkit-backdrop-filter: blur(28px) !important;
  overflow: hidden !important;
  position: relative !important;
}

/* Perk card inner glow top-right */
.v26-rs__perks-card__glow {
  position: absolute !important;
  top: -40px !important;
  right: -40px !important;
  width: 200px !important;
  height: 200px !important;
  background: radial-gradient(
    circle,
    rgba(232,87,10,.12) 0%,
    transparent 65%
  ) !important;
  border-radius: 50% !important;
  pointer-events: none !important;
  z-index: 0 !important;
  animation: v34PerksPulse 6s ease-in-out infinite !important;
}

/* Perks header row */
.v26-rs__perks-card__header {
  display: flex !important;
  align-items: center !important;
  gap: .8rem !important;
  margin-bottom: 1.2rem !important;
  position: relative !important;
  z-index: 2 !important;
}

.v26-rs__perks-card .v26-rs__card-title {
  font-size: 1.05rem !important;
  font-weight: 700 !important;
  letter-spacing: .01em !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

/* Perks list */
.v26-rs__perks-list {
  position: relative !important;
  z-index: 2 !important;
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: .55rem .7rem !important;
}

/* Individual perk item */
.v26-rs__perk {
  display: flex !important;
  align-items: flex-start !important;
  gap: .42rem !important;
  font-size: .80rem !important;
  color: rgba(255,255,255,.72) !important;
  -webkit-text-fill-color: rgba(255,255,255,.72) !important;
  line-height: 1.45 !important;
  padding: .35rem .4rem !important;
  border-radius: 8px !important;
  transition: background .22s, color .22s !important;
}

.v26-rs__perk:hover {
  background: rgba(232,87,10,.08) !important;
  color: rgba(255,255,255,.90) !important;
  -webkit-text-fill-color: rgba(255,255,255,.90) !important;
}

/* Perk checkmark */
.v26-rs__perk svg {
  stroke: #ff9f43 !important;
  filter:
    drop-shadow(0 0 5px rgba(232,87,10,.65))
    drop-shadow(0 0 10px rgba(232,87,10,.30)) !important;
  flex-shrink: 0 !important;
  margin-top: .12rem !important;
}

/* Perks card hover */
.v26-rs__perks-card:hover {
  transform: translateY(-7px) !important;
  border-color: rgba(232,87,10,.40) !important;
  box-shadow:
    0 14px 48px rgba(2,12,27,.52),
    0 30px 68px rgba(2,12,27,.34),
    0 0 0 1px rgba(232,87,10,.30),
    inset 0 1px 0 rgba(255,255,255,.09) !important;
}

/* Card icon */
.v26-rs__perks-card .v26-rs__card-icon {
  width: 46px !important;
  height: 46px !important;
  border-radius: 13px !important;
  background: rgba(232,87,10,.13) !important;
  border: 1.5px solid rgba(232,87,10,.32) !important;
  box-shadow:
    0 4px 16px rgba(232,87,10,.25),
    inset 0 1px 0 rgba(255,255,255,.10) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
}

.v26-rs__perks-card .v26-rs__card-icon svg {
  stroke: #ff9f43 !important;
  filter: drop-shadow(0 0 7px rgba(232,87,10,.60)) !important;
}

/* ─────────────────────────────────────────────────────────────
   FIND BOOKING CARD — refined depth
───────────────────────────────────────────────────────────── */
.v26-rs__find-card {
  background: linear-gradient(
    148deg,
    rgba(4,13,30,.90) 0%,
    rgba(7,20,46,.85) 55%,
    rgba(5,15,34,.90) 100%
  ) !important;
  border: 1px solid rgba(232,87,10,.18) !important;
  border-top: 2px solid rgba(232,87,10,.32) !important;
  border-radius: 22px !important;
  padding: 1.8rem 2rem !important;
  box-shadow:
    0 6px 26px rgba(2,12,27,.40),
    0 16px 46px rgba(2,12,27,.24),
    inset 0 1px 0 rgba(255,255,255,.06) !important;
  backdrop-filter: blur(26px) !important;
  -webkit-backdrop-filter: blur(26px) !important;
  overflow: hidden !important;
  position: relative !important;
}

/* Find card inner glow */
.v26-rs__find-card__glow {
  position: absolute !important;
  top: -35px !important;
  right: -35px !important;
  width: 170px !important;
  height: 170px !important;
  background: radial-gradient(
    circle,
    rgba(181,39,30,.11) 0%,
    transparent 65%
  ) !important;
  border-radius: 50% !important;
  pointer-events: none !important;
  z-index: 0 !important;
  animation: v34PerksPulse 7s 1s ease-in-out infinite !important;
}

/* Find card content above glow */
.v26-rs__find-card > *:not(.v26-rs__find-card__glow) {
  position: relative !important;
  z-index: 2 !important;
}

/* Find card icon */
.v26-rs__find-card > .v26-rs__card-icon {
  width: 46px !important;
  height: 46px !important;
  border-radius: 13px !important;
  background: rgba(232,87,10,.12) !important;
  border: 1.5px solid rgba(232,87,10,.28) !important;
  box-shadow: 0 4px 14px rgba(232,87,10,.22) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-bottom: 1rem !important;
}

.v26-rs__find-card .v26-rs__card-icon svg {
  stroke: #ff9f43 !important;
  filter: drop-shadow(0 0 6px rgba(232,87,10,.55)) !important;
}

/* Find card title */
.v26-rs__find-card .v26-rs__card-title {
  font-size: 1.05rem !important;
  font-weight: 700 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  margin-bottom: .55rem !important;
  letter-spacing: .01em !important;
}

/* Description */
.v26-rs__find-desc {
  font-size: .82rem !important;
  color: rgba(255,255,255,.55) !important;
  -webkit-text-fill-color: rgba(255,255,255,.55) !important;
  line-height: 1.60 !important;
  margin-bottom: 1.1rem !important;
}

/* Shortcode inputs */
.v26-rs__shortcode input,
.v26-rs__shortcode select {
  background: rgba(255,255,255,.06) !important;
  border: 1.5px solid rgba(232,87,10,.20) !important;
  border-radius: 10px !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  transition: border-color .22s, box-shadow .22s !important;
}

.v26-rs__shortcode input:focus,
.v26-rs__shortcode select:focus {
  border-color: rgba(232,87,10,.60) !important;
  box-shadow: 0 0 0 3px rgba(232,87,10,.18), 0 4px 16px rgba(232,87,10,.14) !important;
  outline: none !important;
}

.v26-rs__shortcode label {
  font-size: .72rem !important;
  font-weight: 600 !important;
  letter-spacing: .06em !important;
  color: rgba(255,159,67,.68) !important;
  -webkit-text-fill-color: rgba(255,159,67,.68) !important;
  text-transform: uppercase !important;
}

/* Quick facts box */
.v26-rs__facts {
  background: rgba(232,87,10,.055) !important;
  border: 1px solid rgba(232,87,10,.14) !important;
  border-radius: 12px !important;
  padding: .55rem .35rem !important;
  margin-top: 1.1rem !important;
  display: flex !important;
  flex-direction: row !important;
}

.v26-rs__fact {
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  padding: .32rem .45rem !important;
  border-right: 1px solid rgba(232,87,10,.12) !important;
}

.v26-rs__fact:last-child { border-right: none !important; }

.v26-rs__fact span {
  font-size: .58rem !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  color: rgba(255,255,255,.40) !important;
  -webkit-text-fill-color: rgba(255,255,255,.40) !important;
  margin-bottom: .18rem !important;
}

.v26-rs__fact strong {
  font-size: .86rem !important;
  font-weight: 700 !important;
  color: #ff9f43 !important;
  -webkit-text-fill-color: #ff9f43 !important;
  text-shadow: 0 1px 8px rgba(232,87,10,.45) !important;
}

/* Contact buttons */
.v26-rs__contact-btn {
  background: rgba(232,87,10,.10) !important;
  border: 1px solid rgba(232,87,10,.26) !important;
  border-radius: 10px !important;
  color: #ff9f43 !important;
  -webkit-text-fill-color: #ff9f43 !important;
  font-size: .82rem !important;
  font-weight: 600 !important;
  padding: .72rem 1rem !important;
  display: flex !important;
  align-items: center !important;
  gap: .5rem !important;
  transition: background .24s, border-color .24s, box-shadow .24s, transform .22s !important;
}

.v26-rs__contact-btn:hover {
  background: rgba(232,87,10,.20) !important;
  border-color: rgba(232,87,10,.55) !important;
  box-shadow: 0 4px 18px rgba(232,87,10,.28) !important;
  transform: translateY(-2px) !important;
}

.v26-rs__contact-btn svg {
  stroke: #ff9f43 !important;
  filter: drop-shadow(0 0 4px rgba(232,87,10,.45)) !important;
  flex-shrink: 0 !important;
}

/* Find card hover */
.v26-rs__find-card:hover {
  transform: translateY(-7px) !important;
  border-color: rgba(232,87,10,.34) !important;
  box-shadow:
    0 12px 42px rgba(2,12,27,.46),
    0 26px 62px rgba(2,12,27,.30),
    0 0 0 1px rgba(232,87,10,.26),
    inset 0 1px 0 rgba(255,255,255,.08) !important;
}

/* ─────────────────────────────────────────────────────────────
   STATS BAR — more polished
───────────────────────────────────────────────────────────── */
.v26-rs__stats {
  background: rgba(232,87,10,.055) !important;
  border: 1px solid rgba(232,87,10,.18) !important;
  border-radius: 18px !important;
  box-shadow:
    0 4px 24px rgba(2,12,27,.32),
    inset 0 1px 0 rgba(232,87,10,.10),
    inset 0 -1px 0 rgba(2,12,27,.30) !important;
  padding: .9rem 1.6rem !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
}

.v26-rs__stat-num {
  font-size: 1.55rem !important;
  font-weight: 800 !important;
}

.v26-rs__stat-lbl {
  font-size: .65rem !important;
  letter-spacing: .10em !important;
  text-transform: uppercase !important;
}

.v26-rs__stat-sep {
  background: linear-gradient(
    to bottom,
    transparent,
    rgba(232,87,10,.40),
    transparent
  ) !important;
  width: 1px !important;
  height: 36px !important;
  flex-shrink: 0 !important;
}

/* ─────────────────────────────────────────────────────────────
   TRUST BAR
───────────────────────────────────────────────────────────── */
.v26-rs__trust {
  margin-top: 1.6rem !important;
  padding-top: 1.5rem !important;
  border-top: 1px solid rgba(232,87,10,.12) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  gap: 0 !important;
}

.v26-rs__trust-item {
  display: flex !important;
  align-items: center !important;
  gap: .5rem !important;
  padding: .45rem 1.6rem !important;
  font-size: .73rem !important;
  font-weight: 600 !important;
  letter-spacing: .07em !important;
  color: rgba(255,159,67,.68) !important;
  -webkit-text-fill-color: rgba(255,159,67,.68) !important;
  text-transform: uppercase !important;
}

.v26-rs__trust-item svg {
  stroke: #ff9f43 !important;
  filter: drop-shadow(0 0 6px rgba(232,87,10,.52)) !important;
  flex-shrink: 0 !important;
}

.v26-rs__trust-sep {
  width: 1px !important;
  height: 18px !important;
  background: rgba(232,87,10,.24) !important;
  flex-shrink: 0 !important;
}

/* ─────────────────────────────────────────────────────────────
   SECTION TITLE + EYEBROW
───────────────────────────────────────────────────────────── */
.v26-rs__title {
  font-size: clamp(2rem, 3.8vw, 2.9rem) !important;
  letter-spacing: -.025em !important;
  line-height: 1.10 !important;
}

.v26-rs__eyebrow {
  font-size: .70rem !important;
  font-weight: 700 !important;
  letter-spacing: .22em !important;
  text-transform: uppercase !important;
  color: #ff9f43 !important;
  -webkit-text-fill-color: #ff9f43 !important;
  filter:
    drop-shadow(0 1px 14px rgba(232,87,10,.68))
    drop-shadow(0 0 35px rgba(232,87,10,.30)) !important;
  margin-bottom: .9rem !important;
  display: flex !important;
  align-items: center !important;
  gap: .65rem !important;
}

/* Decorative lines around eyebrow */
.v26-rs__eyebrow::before,
.v26-rs__eyebrow::after {
  content: '' !important;
  flex: 1 !important;
  max-width: 50px !important;
  height: 1px !important;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(232,87,10,.55)
  ) !important;
  display: block !important;
}

.v26-rs__eyebrow::after {
  background: linear-gradient(
    90deg,
    rgba(232,87,10,.55),
    transparent
  ) !important;
}

/* ─────────────────────────────────────────────────────────────
   RESPONSIVE
───────────────────────────────────────────────────────────── */
@media (max-width: 768px) {
  .v26-rs__cta-card--featured { padding: 1.8rem 1.5rem !important; }
  .v26-rs__cta-card__heading   { font-size: 1.45rem !important; }
  .v26-rs__price-num           { font-size: 1.85rem !important; }
  .v26-rs__perks-card,
  .v26-rs__find-card           { padding: 1.5rem 1.4rem !important; }
  .v26-rs__perks-list          { grid-template-columns: 1fr !important; }
  .v26-rs__main-btn            { padding: 1rem 1.4rem !important; }
  .v26-rs__eyebrow::before,
  .v26-rs__eyebrow::after      { display: none !important; }
}

/* ─────────────────────────────────────────────────────────────
   REDUCED MOTION
───────────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  .v26-rs__cta-card__shine,
  .v26-rs__cta-card__glow,
  .v26-rs__perks-card__glow,
  .v26-rs__find-card__glow     { animation: none !important; }
  .v26-rs__price-num           { animation: none !important; }
  .v26-rs__cta-card--featured::before { animation: none !important; }
  .v26-rs__main-btn            { animation: none !important; }
  .v26-rs__cta-card__badge     { animation: none !important; }
}

/* ── design-v35.css (25,740b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v35
   Base: v34
   Changes:
   1. Hero title — lighter weight, refined size, elegant
   2. Buttons — less heavy 3D, cleaner professional
   3. Reserve section — next-level modern glassmorphism
   4. Rooms count updated to 21 (in PHP)
   Zero layout/section/content change.
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   1. HERO TITLE — Lighter, more elegant
   Was: font-size clamp(2.4rem, 6.5vw, 5.5rem) / weight 800
   Now: clamp(2rem, 5vw, 4.2rem) / weight 600 — refined
───────────────────────────────────────────────────────────── */
.v8-hero__title {
  font-size: clamp(2rem, 5vw, 4.2rem) !important;
  font-weight: 600 !important;
  letter-spacing: -.015em !important;
  line-height: 1.12 !important;
}

/* Hero subtitle — slightly lighter */
.v8-hero__subtitle,
.hero-subtitle {
  font-size: clamp(.9rem, 1.8vw, 1.1rem) !important;
  font-weight: 400 !important;
  letter-spacing: .01em !important;
  opacity: .88 !important;
}

/* Section titles — less heavy */
.section-title {
  font-weight: 600 !important;
  letter-spacing: -.015em !important;
}

/* Reserve section main title */
.v26-rs__title {
  font-weight: 600 !important;
  letter-spacing: -.02em !important;
}

/* ─────────────────────────────────────────────────────────────
   2. BUTTONS — balanced, not heavy
   Removed multi-layer shadow stacking, cleaner transition
───────────────────────────────────────────────────────────── */
.btn--primary,
.header-book-btn,
.v26-room-book-btn {
  box-shadow:
    0 2px 8px rgba(232,87,10,.30),
    0 4px 16px rgba(232,87,10,.18),
    inset 0 1px 0 rgba(255,255,255,.18) !important;
  transition: transform .24s cubic-bezier(.34,1.3,.64,1),
              box-shadow .22s ease !important;
}

.btn--primary:hover,
.header-book-btn:hover,
.v26-room-book-btn:hover {
  transform: translateY(-2px) scale(1.012) !important;
  box-shadow:
    0 4px 14px rgba(232,87,10,.44),
    0 10px 26px rgba(232,87,10,.24),
    inset 0 1px 0 rgba(255,255,255,.22) !important;
}

/* Book Now button in reserve — keep shimmer but lighter shadow */
.v26-rs__main-btn {
  box-shadow:
    0 3px 12px rgba(232,87,10,.40),
    0 6px 22px rgba(232,87,10,.22),
    0 0 35px rgba(232,87,10,.10),
    inset 0 1px 0 rgba(255,255,255,.20),
    inset 0 -1px 0 rgba(0,0,0,.12) !important;
}

.v26-rs__main-btn:hover {
  transform: translateY(-2px) scale(1.012) !important;
  box-shadow:
    0 6px 18px rgba(232,87,10,.52),
    0 14px 35px rgba(232,87,10,.30),
    0 0 50px rgba(232,87,10,.14),
    inset 0 1px 0 rgba(255,255,255,.24),
    inset 0 -1px 0 rgba(0,0,0,.14) !important;
}

/* ─────────────────────────────────────────────────────────────
   3. RESERVE SECTION — Ultra-modern glassmorphism
   Same grid layout. CTA card top full-width,
   Perks + Find below. Upgraded visuals dramatically.
───────────────────────────────────────────────────────────── */

/* ── SECTION BG — Deep, layered ── */
.v26-reserve-section {
  background: linear-gradient(
    175deg,
    #010609 0%,
    #020c1b 20%,
    #031022 40%,
    #060f1f 58%,
    #091630 78%,
    #020c1b 100%
  ) !important;
}

/* ── CTA CARD — frosted glass panel ── */
.v26-rs__cta-card--featured {
  background:
    linear-gradient(
      138deg,
      rgba(255,255,255,.055) 0%,
      rgba(255,255,255,.028) 50%,
      rgba(255,255,255,.018) 100%
    ) !important;
  backdrop-filter: blur(40px) saturate(160%) !important;
  -webkit-backdrop-filter: blur(40px) saturate(160%) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  border-top: 1px solid rgba(255,255,255,.22) !important;
  border-radius: 28px !important;
  padding: 2.6rem 3rem !important;
  box-shadow:
    0 0 0 1px rgba(232,87,10,.20),
    0 16px 60px rgba(0,0,0,.55),
    0 40px 90px rgba(0,0,0,.35),
    0 0 80px rgba(232,87,10,.06),
    inset 0 1px 0 rgba(255,255,255,.12),
    inset 1px 0 0 rgba(255,255,255,.06),
    inset 0 -1px 0 rgba(0,0,0,.20) !important;
  position: relative !important;
  overflow: hidden !important;
  transition: transform .36s cubic-bezier(.34,1.3,.64,1),
              box-shadow .32s ease !important;
}

/* Animated top border line */
.v26-rs__cta-card--featured::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important; left: 0 !important; right: 0 !important;
  height: 1.5px !important;
  background: linear-gradient(
    90deg,
    transparent   0%,
    rgba(255,255,255,.08) 5%,
    #e8570a      22%,
    #ff9f43      40%,
    #ffffff      50%,
    #ff9f43      60%,
    #e8570a      78%,
    rgba(255,255,255,.08) 95%,
    transparent  100%
  ) !important;
  background-size: 200% auto !important;
  animation: v26Shimmer 3.5s linear infinite !important;
  box-shadow:
    0 0 12px rgba(232,87,10,.60),
    0 0 30px rgba(232,87,10,.28) !important;
  border-radius: 28px 28px 0 0 !important;
  z-index: 5 !important;
}

/* Glow orb */
.v26-rs__cta-card__glow {
  position: absolute !important;
  bottom: -70px !important; right: -70px !important;
  width: 300px !important; height: 300px !important;
  background: radial-gradient(
    circle,
    rgba(232,87,10,.14) 0%,
    rgba(181,39,30,.07) 40%,
    transparent 68%
  ) !important;
  border-radius: 50% !important;
  pointer-events: none !important;
  z-index: 1 !important;
  animation: v34GlowPulse 5s ease-in-out infinite !important;
}

/* Shine sweep */
.v26-rs__cta-card__shine {
  position: absolute !important;
  top: 0 !important; bottom: 0 !important;
  width: 55% !important;
  background: linear-gradient(
    105deg,
    transparent 0%,
    rgba(255,255,255,.00) 38%,
    rgba(255,255,255,.05) 50%,
    rgba(255,255,255,.00) 62%,
    transparent 100%
  ) !important;
  z-index: 2 !important;
  pointer-events: none !important;
  animation: v34Shine 8s 1.5s ease-in-out infinite !important;
}

/* Dot pattern */
.v26-rs__cta-card__pattern {
  position: absolute !important; inset: 0 !important;
  background-image: radial-gradient(
    circle, rgba(255,255,255,.028) 1px, transparent 1px
  ) !important;
  background-size: 26px 26px !important;
  border-radius: 28px !important;
  z-index: 1 !important;
  pointer-events: none !important;
}

/* Content above overlays */
.v26-rs__cta-card--featured > *:not(.v26-rs__cta-card__shine):not(.v26-rs__cta-card__glow):not(.v26-rs__cta-card__pattern) {
  position: relative !important;
  z-index: 4 !important;
}

/* Top row */
.v26-rs__cta-card__top {
  display: flex !important;
  align-items: center !important;
  gap: .85rem !important;
  margin-bottom: 1.1rem !important;
}

/* Badge */
.v26-rs__cta-card__badge {
  background: linear-gradient(
    135deg, #b84008 0%, #e8570a 45%, #ff9f43 70%, #d63031 100%
  ) !important;
  background-size: 200% auto !important;
  animation: v26Shimmer 4.5s linear infinite !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-size: .64rem !important;
  font-weight: 800 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
  padding: .28rem .95rem !important;
  border-radius: 30px !important;
  box-shadow:
    0 2px 10px rgba(232,87,10,.45),
    0 0 20px rgba(232,87,10,.20),
    inset 0 1px 0 rgba(255,255,255,.20) !important;
}

/* CTA icon */
.v26-rs__cta-icon {
  width: 46px !important; height: 46px !important;
  border-radius: 13px !important;
  background: rgba(255,255,255,.08) !important;
  border: 1px solid rgba(255,255,255,.15) !important;
  box-shadow: 0 4px 14px rgba(0,0,0,.25), inset 0 1px 0 rgba(255,255,255,.12) !important;
  display: flex !important;
  align-items: center !important; justify-content: center !important;
}

.v26-rs__cta-icon svg {
  stroke: #ff9f43 !important;
  filter: drop-shadow(0 0 5px rgba(232,87,10,.55)) !important;
}

/* Heading */
.v26-rs__cta-card__heading {
  font-size: 1.75rem !important;
  font-weight: 600 !important;
  line-height: 1.18 !important;
  letter-spacing: -.02em !important;
  margin-bottom: .6rem !important;
  background: linear-gradient(
    118deg,
    #ffffff  0%,
    #ffe8d6 20%,
    #ff9f43 38%,
    #ffffff 52%,
    #ff9f43 68%,
    #ffffff 82%,
    #ffe8d6 100%
  ) !important;
  background-size: 240% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v26Shimmer 9s linear infinite !important;
  filter: drop-shadow(0 2px 12px rgba(0,0,0,.55)) !important;
}

/* Description */
.v26-rs__cta-card__desc {
  color: rgba(255,255,255,.58) !important;
  -webkit-text-fill-color: rgba(255,255,255,.58) !important;
  font-size: .87rem !important;
  line-height: 1.65 !important;
  margin-bottom: 1.5rem !important;
  flex: 1 !important;
}

/* Price box */
.v26-rs__price-hint {
  display: flex !important;
  align-items: baseline !important;
  gap: .4rem !important;
  margin-bottom: 1.3rem !important;
  padding: .9rem 1.2rem !important;
  background: rgba(255,255,255,.06) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  border-radius: 14px !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08) !important;
}

.v26-rs__price-from {
  font-size: .68rem !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  color: rgba(255,255,255,.42) !important;
  -webkit-text-fill-color: rgba(255,255,255,.42) !important;
  align-self: center !important;
}

.v26-rs__price-num {
  font-size: 2.2rem !important;
  font-weight: 700 !important;
  letter-spacing: -.03em !important;
  animation: v34PricePulse 4.5s ease-in-out infinite !important;
}

.v26-rs__price-night {
  font-size: .75rem !important;
  color: rgba(255,255,255,.40) !important;
  -webkit-text-fill-color: rgba(255,255,255,.40) !important;
  align-self: center !important;
}

/* CTA book button */
.v26-rs__main-btn {
  position: relative !important;
  overflow: hidden !important;
  width: 100% !important;
  text-align: center !important;
  padding: 1.05rem 1.5rem !important;
  font-size: .94rem !important;
  font-weight: 700 !important;
  letter-spacing: .05em !important;
  border-radius: 14px !important;
}

/* Shimmer sweep on hover */
.v26-rs__main-btn::after {
  content: '' !important;
  position: absolute !important;
  top: 0 !important; bottom: 0 !important;
  left: -80% !important;
  width: 50% !important;
  background: linear-gradient(
    105deg,
    transparent 0%,
    rgba(255,255,255,.18) 50%,
    transparent 100%
  ) !important;
  transform: skewX(-18deg) !important;
  pointer-events: none !important;
}
.v26-rs__main-btn:hover::after {
  animation: v34BtnShimmer .5s ease-out forwards !important;
}

/* CTA note */
.v26-rs__cta-note {
  font-size: .68rem !important;
  color: rgba(255,255,255,.38) !important;
  -webkit-text-fill-color: rgba(255,255,255,.38) !important;
  margin-top: .75rem !important;
  letter-spacing: .03em !important;
  text-align: center !important;
}

/* CTA hover */
.v26-rs__cta-card--featured:hover {
  transform: translateY(-5px) scale(1.005) !important;
  box-shadow:
    0 0 0 1px rgba(232,87,10,.38),
    0 20px 70px rgba(0,0,0,.60),
    0 45px 100px rgba(0,0,0,.38),
    0 0 90px rgba(232,87,10,.10),
    inset 0 1px 0 rgba(255,255,255,.16),
    inset 1px 0 0 rgba(255,255,255,.08),
    inset 0 -1px 0 rgba(0,0,0,.22) !important;
  border-color: rgba(255,255,255,.16) !important;
}

/* ── PERKS CARD — frosted glass ── */
.v26-rs__perks-card {
  background:
    linear-gradient(
      148deg,
      rgba(255,255,255,.048) 0%,
      rgba(255,255,255,.022) 100%
    ) !important;
  backdrop-filter: blur(36px) saturate(150%) !important;
  -webkit-backdrop-filter: blur(36px) saturate(150%) !important;
  border: 1px solid rgba(255,255,255,.09) !important;
  border-top: 1px solid rgba(255,255,255,.18) !important;
  border-radius: 24px !important;
  padding: 1.8rem 2rem !important;
  box-shadow:
    0 0 0 1px rgba(232,87,10,.12),
    0 8px 32px rgba(0,0,0,.42),
    0 20px 55px rgba(0,0,0,.26),
    inset 0 1px 0 rgba(255,255,255,.10) !important;
  overflow: hidden !important;
  position: relative !important;
  transition: transform .34s cubic-bezier(.34,1.3,.64,1),
              box-shadow .30s ease !important;
}

/* Inner glow */
.v26-rs__perks-card__glow {
  position: absolute !important;
  top: -50px !important; right: -50px !important;
  width: 220px !important; height: 220px !important;
  background: radial-gradient(
    circle, rgba(232,87,10,.10) 0%, transparent 65%
  ) !important;
  border-radius: 50% !important;
  pointer-events: none !important;
  z-index: 0 !important;
  animation: v34PerksPulse 7s ease-in-out infinite !important;
}

.v26-rs__perks-card > * { position: relative !important; z-index: 2 !important; }

/* Header */
.v26-rs__perks-card__header {
  display: flex !important;
  align-items: center !important;
  gap: .8rem !important;
  margin-bottom: 1.2rem !important;
}

.v26-rs__perks-card .v26-rs__card-title {
  font-size: 1rem !important;
  font-weight: 600 !important;
  color: rgba(255,255,255,.92) !important;
  -webkit-text-fill-color: rgba(255,255,255,.92) !important;
}

/* Card icon */
.v26-rs__perks-card .v26-rs__card-icon {
  width: 44px !important; height: 44px !important;
  border-radius: 12px !important;
  background: rgba(255,255,255,.08) !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  box-shadow: 0 4px 14px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.10) !important;
  display: flex !important;
  align-items: center !important; justify-content: center !important;
}

.v26-rs__perks-card .v26-rs__card-icon svg {
  stroke: #ff9f43 !important;
  filter: drop-shadow(0 0 6px rgba(232,87,10,.55)) !important;
}

/* Perks list */
.v26-rs__perks-list {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: .5rem .65rem !important;
}

.v26-rs__perk {
  display: flex !important;
  align-items: flex-start !important;
  gap: .4rem !important;
  font-size: .79rem !important;
  color: rgba(255,255,255,.68) !important;
  -webkit-text-fill-color: rgba(255,255,255,.68) !important;
  line-height: 1.42 !important;
  padding: .3rem .38rem !important;
  border-radius: 8px !important;
  transition: background .2s, color .2s !important;
}

.v26-rs__perk:hover {
  background: rgba(255,255,255,.05) !important;
  color: rgba(255,255,255,.88) !important;
  -webkit-text-fill-color: rgba(255,255,255,.88) !important;
}

.v26-rs__perk svg {
  stroke: #ff9f43 !important;
  filter: drop-shadow(0 0 5px rgba(232,87,10,.60)) !important;
  flex-shrink: 0 !important;
  margin-top: .13rem !important;
}

/* Perks hover */
.v26-rs__perks-card:hover {
  transform: translateY(-6px) !important;
  box-shadow:
    0 0 0 1px rgba(232,87,10,.24),
    0 14px 48px rgba(0,0,0,.50),
    0 28px 65px rgba(0,0,0,.30),
    inset 0 1px 0 rgba(255,255,255,.12) !important;
  border-color: rgba(255,255,255,.15) !important;
}

/* ── FIND BOOKING CARD — frosted glass ── */
.v26-rs__find-card {
  background:
    linear-gradient(
      148deg,
      rgba(255,255,255,.038) 0%,
      rgba(255,255,255,.016) 100%
    ) !important;
  backdrop-filter: blur(34px) saturate(145%) !important;
  -webkit-backdrop-filter: blur(34px) saturate(145%) !important;
  border: 1px solid rgba(255,255,255,.08) !important;
  border-top: 1px solid rgba(255,255,255,.16) !important;
  border-radius: 24px !important;
  padding: 1.8rem 2rem !important;
  box-shadow:
    0 0 0 1px rgba(232,87,10,.10),
    0 6px 26px rgba(0,0,0,.38),
    0 16px 46px rgba(0,0,0,.22),
    inset 0 1px 0 rgba(255,255,255,.08) !important;
  overflow: hidden !important;
  position: relative !important;
  transition: transform .34s cubic-bezier(.34,1.3,.64,1),
              box-shadow .30s ease !important;
}

/* Inner glow */
.v26-rs__find-card__glow {
  position: absolute !important;
  top: -40px !important; right: -40px !important;
  width: 180px !important; height: 180px !important;
  background: radial-gradient(
    circle, rgba(181,39,30,.09) 0%, transparent 65%
  ) !important;
  border-radius: 50% !important;
  pointer-events: none !important;
  z-index: 0 !important;
  animation: v34PerksPulse 8s 1s ease-in-out infinite !important;
}

.v26-rs__find-card > *:not(.v26-rs__find-card__glow) {
  position: relative !important;
  z-index: 2 !important;
}

/* Find card icon */
.v26-rs__find-card > .v26-rs__card-icon {
  width: 44px !important; height: 44px !important;
  border-radius: 12px !important;
  background: rgba(255,255,255,.07) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  box-shadow: 0 3px 12px rgba(0,0,0,.20), inset 0 1px 0 rgba(255,255,255,.10) !important;
  display: flex !important;
  align-items: center !important; justify-content: center !important;
  margin-bottom: 1rem !important;
}

.v26-rs__find-card .v26-rs__card-icon svg {
  stroke: #ff9f43 !important;
  filter: drop-shadow(0 0 5px rgba(232,87,10,.52)) !important;
}

/* Title */
.v26-rs__find-card .v26-rs__card-title {
  font-size: 1rem !important;
  font-weight: 600 !important;
  color: rgba(255,255,255,.92) !important;
  -webkit-text-fill-color: rgba(255,255,255,.92) !important;
  margin-bottom: .5rem !important;
}

/* Description */
.v26-rs__find-desc {
  font-size: .81rem !important;
  color: rgba(255,255,255,.50) !important;
  -webkit-text-fill-color: rgba(255,255,255,.50) !important;
  line-height: 1.62 !important;
  margin-bottom: 1.1rem !important;
}

/* Shortcode inputs */
.v26-rs__shortcode input,
.v26-rs__shortcode select {
  background: rgba(255,255,255,.06) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  border-radius: 10px !important;
  color: rgba(255,255,255,.88) !important;
  -webkit-text-fill-color: rgba(255,255,255,.88) !important;
  backdrop-filter: blur(8px) !important;
  transition: border-color .2s, box-shadow .2s !important;
}

.v26-rs__shortcode input:focus,
.v26-rs__shortcode select:focus {
  border-color: rgba(232,87,10,.55) !important;
  box-shadow: 0 0 0 3px rgba(232,87,10,.15) !important;
  outline: none !important;
}

.v26-rs__shortcode label {
  font-size: .70rem !important;
  font-weight: 600 !important;
  letter-spacing: .07em !important;
  text-transform: uppercase !important;
  color: rgba(255,159,67,.60) !important;
  -webkit-text-fill-color: rgba(255,159,67,.60) !important;
}

/* Facts box */
.v26-rs__facts {
  background: rgba(255,255,255,.04) !important;
  border: 1px solid rgba(255,255,255,.09) !important;
  border-radius: 12px !important;
  padding: .55rem .35rem !important;
  margin-top: 1rem !important;
  display: flex !important;
  backdrop-filter: blur(8px) !important;
}

.v26-rs__fact {
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  padding: .3rem .4rem !important;
  border-right: 1px solid rgba(255,255,255,.08) !important;
}

.v26-rs__fact:last-child { border-right: none !important; }

.v26-rs__fact span {
  font-size: .58rem !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  color: rgba(255,255,255,.36) !important;
  -webkit-text-fill-color: rgba(255,255,255,.36) !important;
}

.v26-rs__fact strong {
  font-size: .84rem !important;
  font-weight: 700 !important;
  color: #ff9f43 !important;
  -webkit-text-fill-color: #ff9f43 !important;
  text-shadow: 0 0 10px rgba(232,87,10,.40) !important;
}

/* Contact buttons */
.v26-rs__contact-btn {
  background: rgba(255,255,255,.06) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  border-radius: 10px !important;
  color: rgba(255,255,255,.72) !important;
  -webkit-text-fill-color: rgba(255,255,255,.72) !important;
  font-size: .80rem !important;
  font-weight: 500 !important;
  padding: .70rem 1rem !important;
  display: flex !important;
  align-items: center !important;
  gap: .5rem !important;
  transition: background .22s, border-color .22s, transform .2s !important;
}

.v26-rs__contact-btn:hover {
  background: rgba(232,87,10,.14) !important;
  border-color: rgba(232,87,10,.38) !important;
  transform: translateY(-2px) !important;
  color: #ff9f43 !important;
  -webkit-text-fill-color: #ff9f43 !important;
}

.v26-rs__contact-btn svg {
  stroke: rgba(255,255,255,.55) !important;
  flex-shrink: 0 !important;
}

.v26-rs__contact-btn:hover svg {
  stroke: #ff9f43 !important;
  filter: drop-shadow(0 0 4px rgba(232,87,10,.45)) !important;
}

/* Find card hover */
.v26-rs__find-card:hover {
  transform: translateY(-6px) !important;
  box-shadow:
    0 0 0 1px rgba(232,87,10,.22),
    0 12px 40px rgba(0,0,0,.45),
    0 25px 60px rgba(0,0,0,.26),
    inset 0 1px 0 rgba(255,255,255,.10) !important;
  border-color: rgba(255,255,255,.14) !important;
}

/* ── STATS BAR ── */
.v26-rs__stats {
  background: rgba(255,255,255,.04) !important;
  border: 1px solid rgba(255,255,255,.08) !important;
  border-radius: 18px !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
  box-shadow:
    0 4px 20px rgba(0,0,0,.28),
    inset 0 1px 0 rgba(255,255,255,.08) !important;
  padding: .85rem 1.5rem !important;
}

.v26-rs__stat-sep {
  background: linear-gradient(
    to bottom, transparent, rgba(255,255,255,.14), transparent
  ) !important;
}

.v26-rs__stat svg { filter: drop-shadow(0 0 6px rgba(232,87,10,.50)) !important; }

/* ── TRUST BAR ── */
.v26-rs__trust {
  border-top: 1px solid rgba(255,255,255,.07) !important;
  margin-top: 1.5rem !important;
  padding-top: 1.4rem !important;
}

.v26-rs__trust-item {
  color: rgba(255,255,255,.42) !important;
  -webkit-text-fill-color: rgba(255,255,255,.42) !important;
  font-size: .70rem !important;
  letter-spacing: .08em !important;
}

.v26-rs__trust-sep {
  background: rgba(255,255,255,.12) !important;
}

/* ── EYEBROW — clean lines ── */
.v26-rs__eyebrow {
  color: rgba(255,159,67,.85) !important;
  -webkit-text-fill-color: rgba(255,159,67,.85) !important;
  font-size: .68rem !important;
  font-weight: 700 !important;
  letter-spacing: .22em !important;
  filter: none !important;
  text-shadow: 0 0 20px rgba(232,87,10,.35) !important;
}

.v26-rs__eyebrow::before,
.v26-rs__eyebrow::after {
  content: '' !important;
  flex: 1 !important;
  max-width: 44px !important;
  height: 1px !important;
  display: block !important;
}

.v26-rs__eyebrow::before {
  background: linear-gradient(90deg, transparent, rgba(232,87,10,.45)) !important;
}

.v26-rs__eyebrow::after {
  background: linear-gradient(90deg, rgba(232,87,10,.45), transparent) !important;
}

/* ─────────────────────────────────────────────────────────────
   RESPONSIVE
───────────────────────────────────────────────────────────── */
@media (max-width: 768px) {
  .v8-hero__title { font-size: clamp(1.8rem, 9vw, 3rem) !important; }
  .v26-rs__cta-card--featured { padding: 1.8rem 1.5rem !important; }
  .v26-rs__cta-card__heading  { font-size: 1.42rem !important; font-weight: 600 !important; }
  .v26-rs__price-num          { font-size: 1.85rem !important; }
  .v26-rs__perks-card,
  .v26-rs__find-card          { padding: 1.5rem 1.4rem !important; }
  .v26-rs__perks-list         { grid-template-columns: 1fr !important; }
  .v26-rs__main-btn           { padding: .95rem 1.3rem !important; }
  .v26-rs__eyebrow::before,
  .v26-rs__eyebrow::after     { display: none !important; }
}

/* ─────────────────────────────────────────────────────────────
   REDUCED MOTION
───────────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  .v26-rs__cta-card__shine,
  .v26-rs__cta-card__glow,
  .v26-rs__perks-card__glow,
  .v26-rs__find-card__glow  { animation: none !important; opacity: .5 !important; }
  .v26-rs__price-num        { animation: none !important; }
  .v26-rs__cta-card--featured::before { animation: none !important; }
  .v26-rs__main-btn         { animation: none !important; }
  .v26-rs__cta-card__badge  { animation: none !important; }
  .v26-rs__cta-card__heading{ animation: none !important; }
}

/* ── design-v36.css (20,895b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v36
   Base: v35
   ──────────────────────────────────────────────────────────────
   FIXES:
   F1. Mobile "can't open" — backdrop-filter reduced for iOS
   F2. Missing -webkit-backdrop-filter on inputs & facts box
   F3. iOS safe blur values (≤ 20px on stacked glass elements)

   IMPROVEMENTS (3× better):
   I1. Reserve section — cinematic depth, micro-interactions
   I2. Hero title — perfect weight, refined gradient
   I3. Room cards — richer hover, image overlay polish
   I4. Section transitions — smoother, more elegant
   I5. Overall shadow system — more natural depth
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   F1+F2+F3: iOS MOBILE BACKDROP-FILTER SAFE VALUES
   iOS Safari crashes on backdrop-filter > ~20px in stacked
   glass elements. Cap all values to safe levels + add missing
   -webkit- prefixes everywhere.
───────────────────────────────────────────────────────────── */

/* CTA card — was blur(40px), now safe 20px */
.v26-rs__cta-card--featured {
  backdrop-filter: blur(20px) saturate(140%) !important;
  -webkit-backdrop-filter: blur(20px) saturate(140%) !important;
}

/* Perks card — was blur(36px) */
.v26-rs__perks-card {
  backdrop-filter: blur(18px) saturate(135%) !important;
  -webkit-backdrop-filter: blur(18px) saturate(135%) !important;
}

/* Find card — was blur(34px) */
.v26-rs__find-card {
  backdrop-filter: blur(16px) saturate(130%) !important;
  -webkit-backdrop-filter: blur(16px) saturate(130%) !important;
}

/* Price box — was blur(10px) */
.v26-rs__price-hint {
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
}

/* Inputs — missing -webkit- prefix */
.v26-rs__shortcode input,
.v26-rs__shortcode select {
  backdrop-filter: blur(6px) !important;
  -webkit-backdrop-filter: blur(6px) !important;
}

/* Facts box — missing -webkit- prefix */
.v26-rs__facts {
  backdrop-filter: blur(6px) !important;
  -webkit-backdrop-filter: blur(6px) !important;
}

/* Stats bar — safe value */
.v26-rs__stats {
  backdrop-filter: blur(14px) !important;
  -webkit-backdrop-filter: blur(14px) !important;
}

/* Header scrolled — iOS safe */
.site-header.header--scrolled,
.site-header.scrolled {
  backdrop-filter: blur(18px) saturate(160%) !important;
  -webkit-backdrop-filter: blur(18px) saturate(160%) !important;
}

/* Mobile nav panel */
@media (max-width: 768px) {
  .main-nav {
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }
  /* On mobile disable all glass blur for performance */
  .v26-rs__cta-card--featured,
  .v26-rs__perks-card,
  .v26-rs__find-card {
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
  }
}

/* ─────────────────────────────────────────────────────────────
   I1. RESERVE SECTION — cinematic depth upgrades
───────────────────────────────────────────────────────────── */

/* Section — deeper star-field, more immersive */
.v26-reserve-section {
  background: linear-gradient(
    178deg,
    #010507 0%,
    #020b18 18%,
    #030e20 36%,
    #050f22 52%,
    #081630 72%,
    #020b18 100%
  ) !important;
  position: relative !important;
}

/* Stronger background radial lights */
.v26-rs__bg {
  background:
    radial-gradient(ellipse 90% 130% at 5%  55%,  rgba(232,87,10,.18) 0%, transparent 55%),
    radial-gradient(ellipse 70% 100% at 95% 10%,  rgba(181,39,30,.15) 0%, transparent 52%),
    radial-gradient(ellipse 55% 70%  at 50% 112%, rgba(232,87,10,.10) 0%, transparent 48%),
    radial-gradient(ellipse 40% 55%  at 72% 58%,  rgba(16,64,160,.12) 0%, transparent 46%),
    radial-gradient(ellipse 35% 45%  at 28% 18%,  rgba(232,87,10,.07) 0%, transparent 42%) !important;
}

/* ── CTA CARD improvements ── */
.v26-rs__cta-card--featured {
  background:
    linear-gradient(
      142deg,
      rgba(255,255,255,.062) 0%,
      rgba(255,255,255,.030) 45%,
      rgba(255,255,255,.018) 100%
    ) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  border-top: 1px solid rgba(255,255,255,.26) !important;
  box-shadow:
    0 0 0 1px rgba(232,87,10,.22),
    0 18px 65px rgba(0,0,0,.60),
    0 45px 100px rgba(0,0,0,.38),
    0 0 0 5px rgba(232,87,10,.04),
    0 0 100px rgba(232,87,10,.08),
    inset 0 1px 0 rgba(255,255,255,.14),
    inset 1px 0 0 rgba(255,255,255,.07),
    inset -1px 0 0 rgba(255,255,255,.04),
    inset 0 -1px 0 rgba(0,0,0,.22) !important;
  border-radius: 30px !important;
}

/* CTA top border glow — wider, stronger */
.v26-rs__cta-card--featured::before {
  height: 1.5px !important;
  background: linear-gradient(
    90deg,
    transparent    0%,
    rgba(255,255,255,.05) 4%,
    #c94f0e       18%,
    #ff9f43       36%,
    #ffffff       50%,
    #ff9f43       64%,
    #e8570a       82%,
    rgba(255,255,255,.05) 96%,
    transparent  100%
  ) !important;
  background-size: 200% auto !important;
  animation: v26Shimmer 3s linear infinite !important;
  box-shadow:
    0 0 16px rgba(232,87,10,.70),
    0 0 40px rgba(232,87,10,.32),
    0 0 70px rgba(232,87,10,.14) !important;
  border-radius: 30px 30px 0 0 !important;
}

/* CTA card hover — more dramatic */
.v26-rs__cta-card--featured:hover {
  transform: translateY(-7px) scale(1.007) !important;
  box-shadow:
    0 0 0 1.5px rgba(232,87,10,.45),
    0 0 0 5px rgba(232,87,10,.06),
    0 25px 75px rgba(0,0,0,.65),
    0 50px 110px rgba(0,0,0,.42),
    0 0 120px rgba(232,87,10,.12),
    inset 0 1px 0 rgba(255,255,255,.18),
    inset 1px 0 0 rgba(255,255,255,.09),
    inset 0 -1px 0 rgba(0,0,0,.25) !important;
  border-color: rgba(255,255,255,.18) !important;
}

/* ── PERKS CARD improvements ── */
.v26-rs__perks-card {
  background:
    linear-gradient(
      152deg,
      rgba(255,255,255,.055) 0%,
      rgba(255,255,255,.025) 100%
    ) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  border-top: 1px solid rgba(255,255,255,.22) !important;
  box-shadow:
    0 0 0 1px rgba(232,87,10,.14),
    0 10px 38px rgba(0,0,0,.45),
    0 24px 60px rgba(0,0,0,.28),
    inset 0 1px 0 rgba(255,255,255,.12) !important;
  border-radius: 26px !important;
}

.v26-rs__perks-card:hover {
  transform: translateY(-8px) !important;
  box-shadow:
    0 0 0 1.5px rgba(232,87,10,.28),
    0 16px 55px rgba(0,0,0,.52),
    0 32px 72px rgba(0,0,0,.32),
    inset 0 1px 0 rgba(255,255,255,.14) !important;
  border-top-color: rgba(255,255,255,.30) !important;
}

/* ── FIND CARD improvements ── */
.v26-rs__find-card {
  background:
    linear-gradient(
      152deg,
      rgba(255,255,255,.042) 0%,
      rgba(255,255,255,.018) 100%
    ) !important;
  border: 1px solid rgba(255,255,255,.09) !important;
  border-top: 1px solid rgba(255,255,255,.18) !important;
  box-shadow:
    0 0 0 1px rgba(232,87,10,.11),
    0 8px 30px rgba(0,0,0,.40),
    0 18px 50px rgba(0,0,0,.24),
    inset 0 1px 0 rgba(255,255,255,.10) !important;
  border-radius: 26px !important;
}

.v26-rs__find-card:hover {
  transform: translateY(-8px) !important;
  box-shadow:
    0 0 0 1.5px rgba(232,87,10,.24),
    0 14px 46px rgba(0,0,0,.48),
    0 28px 66px rgba(0,0,0,.28),
    inset 0 1px 0 rgba(255,255,255,.12) !important;
  border-top-color: rgba(255,255,255,.26) !important;
}

/* ─────────────────────────────────────────────────────────────
   I2. HERO TITLE — perfect final form
───────────────────────────────────────────────────────────── */
.v8-hero__title {
  font-size: clamp(1.9rem, 4.8vw, 4rem) !important;
  font-weight: 550 !important;
  letter-spacing: -.018em !important;
  line-height: 1.10 !important;
  /* Gradient: white-cream shimmer, not orange-heavy */
  background: linear-gradient(
    112deg,
    #ffffff  0%,
    #ffeedd 12%,
    #ff9f43 26%,
    #ffffff 40%,
    #ffe8d6 54%,
    #ff9f43 68%,
    #ffffff 80%,
    #ffeedd 92%,
    #ffffff 100%
  ) !important;
  background-size: 280% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v26Shimmer 12s linear infinite !important;
  filter:
    drop-shadow(0 3px 22px rgba(0,0,0,.75))
    drop-shadow(0 0 50px rgba(232,87,10,.28)) !important;
}

/* Hero subtitle — clean, airy */
.v8-hero__subtitle,
.hero-subtitle {
  font-size: clamp(.85rem, 1.6vw, 1rem) !important;
  font-weight: 400 !important;
  letter-spacing: .015em !important;
  color: rgba(255,255,255,.78) !important;
  text-shadow:
    0 1px 12px rgba(0,0,0,.65),
    0 0 30px rgba(0,0,0,.35) !important;
}

/* ─────────────────────────────────────────────────────────────
   I3. ROOM CARDS — richer hover
───────────────────────────────────────────────────────────── */
.v26-room-card,
.v8-room-card {
  border-radius: 20px !important;
  overflow: hidden !important;
  border: 1px solid rgba(0,0,0,.05) !important;
  box-shadow:
    0 2px 8px rgba(2,12,27,.06),
    0 8px 24px rgba(2,12,27,.10),
    0 20px 48px rgba(2,12,27,.08),
    inset 0 1px 0 rgba(255,255,255,.65) !important;
  transition: transform .36s cubic-bezier(.34,1.28,.64,1),
              box-shadow .32s ease,
              border-color .28s !important;
}

.v26-room-card:hover,
.v8-room-card:hover {
  transform: translateY(-10px) scale(1.012) !important;
  border-color: rgba(232,87,10,.25) !important;
  box-shadow:
    0 4px 12px rgba(2,12,27,.08),
    0 16px 44px rgba(2,12,27,.18),
    0 32px 72px rgba(2,12,27,.14),
    0 0 0 1.5px rgba(232,87,10,.30),
    inset 0 1px 0 rgba(255,255,255,.75) !important;
}

/* Room image overlay gradient — more dramatic */
.v26-room-img::after {
  background: linear-gradient(
    to bottom,
    transparent 30%,
    rgba(2,12,27,.15) 55%,
    rgba(2,12,27,.55) 80%,
    rgba(2,12,27,.80) 100%
  ) !important;
}

/* Room type badge */
.v26-room-type {
  font-size: .65rem !important;
  letter-spacing: .14em !important;
  font-weight: 700 !important;
  padding: .28rem .8rem !important;
  border-radius: 20px !important;
  background: rgba(232,87,10,.15) !important;
  border: 1px solid rgba(232,87,10,.30) !important;
}

/* Room title */
.v26-room-title {
  font-size: 1.18rem !important;
  font-weight: 600 !important;
  letter-spacing: -.01em !important;
}

/* ─────────────────────────────────────────────────────────────
   I4. GALLERY ITEMS — richer overlay on hover
───────────────────────────────────────────────────────────── */
.home-gallery-item {
  border-radius: 16px !important;
  overflow: hidden !important;
  border: 1.5px solid transparent !important;
  transition: transform .38s cubic-bezier(.34,1.28,.64,1),
              box-shadow .34s ease,
              border-color .26s !important;
}

.home-gallery-item:hover {
  transform: translateY(-12px) scale(1.026) !important;
  border-color: rgba(232,87,10,.65) !important;
  box-shadow:
    0 10px 30px rgba(2,12,27,.22),
    0 28px 70px rgba(2,12,27,.20),
    0 0 0 1px rgba(232,87,10,.40),
    0 0 40px rgba(232,87,10,.12) !important;
}

/* ─────────────────────────────────────────────────────────────
   I5. SECTION TITLES — refined gradient
───────────────────────────────────────────────────────────── */

/* Light bg section titles — blue-navy to orange, elegant */
.section-title {
  background: linear-gradient(
    130deg,
    #020c1b 0%,
    #0a2342 20%,
    #1040a0 38%,
    #e8570a 56%,
    #ff9f43 68%,
    #d63031 80%,
    #ff9f43 90%,
    #e8570a 100%
  ) !important;
  background-size: 260% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v26Shimmer 10s linear infinite !important;
  filter: none !important;
}

/* Dark bg section titles */
.section--dark .section-title,
.virtual-tour-section .section-title {
  background: linear-gradient(
    130deg,
    #ffffff  0%,
    #ffe8d6 14%,
    #ff9f43 28%,
    #ffffff 42%,
    #ff9f43 56%,
    #d63031 70%,
    #ff9f43 84%,
    #ffffff 100%
  ) !important;
  background-size: 260% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v26Shimmer 8s linear infinite !important;
  filter: drop-shadow(0 2px 20px rgba(0,0,0,.70)) !important;
}

/* ─────────────────────────────────────────────────────────────
   I6. GOLD DIVIDER — more elegant
───────────────────────────────────────────────────────────── */
.gold-divider {
  height: 1px !important;
  background: linear-gradient(
    90deg,
    transparent    0%,
    rgba(232,87,10,.15) 8%,
    #d63031       22%,
    #e8570a       38%,
    #ff9f43       50%,
    #e8570a       62%,
    #d63031       78%,
    rgba(232,87,10,.15) 92%,
    transparent  100%
  ) !important;
  background-size: 300% auto !important;
  animation: v26Shimmer 4s linear infinite !important;
  box-shadow:
    0 0 16px rgba(232,87,10,.40),
    0 0 35px rgba(232,87,10,.16) !important;
}

/* ─────────────────────────────────────────────────────────────
   I7. AMENITY CARDS — cleaner hover
───────────────────────────────────────────────────────────── */
.amenity-card,
.feature-card,
.experience-card {
  border-radius: 18px !important;
  transition: transform .34s cubic-bezier(.34,1.28,.64,1),
              box-shadow .30s ease !important;
}

.amenity-card:hover,
.feature-card:hover,
.experience-card:hover {
  transform: translateY(-7px) !important;
  box-shadow:
    0 14px 42px rgba(2,12,27,.18),
    0 6px 16px rgba(2,12,27,.10),
    0 0 0 1px rgba(232,87,10,.14) !important;
}

/* ─────────────────────────────────────────────────────────────
   I8. BOOK BUTTON — final polish
───────────────────────────────────────────────────────────── */
.btn--primary,
.header-book-btn,
.v26-room-book-btn {
  border-radius: 12px !important;
  font-weight: 600 !important;
  letter-spacing: .04em !important;
  box-shadow:
    0 2px 8px rgba(232,87,10,.28),
    0 4px 14px rgba(232,87,10,.16),
    inset 0 1px 0 rgba(255,255,255,.16) !important;
  transition: transform .24s cubic-bezier(.34,1.28,.64,1),
              box-shadow .22s ease !important;
}

.btn--primary:hover,
.header-book-btn:hover,
.v26-room-book-btn:hover {
  transform: translateY(-2px) scale(1.010) !important;
  box-shadow:
    0 4px 14px rgba(232,87,10,.42),
    0 10px 26px rgba(232,87,10,.22),
    0 0 30px rgba(232,87,10,.10),
    inset 0 1px 0 rgba(255,255,255,.20) !important;
}

/* ─────────────────────────────────────────────────────────────
   I9. STAT ITEMS — elegant counter display
───────────────────────────────────────────────────────────── */
.stat-item {
  transition: transform .30s cubic-bezier(.34,1.28,.64,1) !important;
}

.stat-item:hover {
  transform: translateY(-5px) !important;
}

/* Stat number larger */
.stat-number {
  font-size: clamp(2rem, 4vw, 3.2rem) !important;
  font-weight: 700 !important;
  letter-spacing: -.02em !important;
}

/* ─────────────────────────────────────────────────────────────
   I10. FOOTER — deeper, richer
───────────────────────────────────────────────────────────── */
.site-footer {
  background: linear-gradient(
    168deg,
    #010407 0%,
    #020b18 38%,
    #030e22 100%
  ) !important;
  box-shadow:
    0 -6px 50px rgba(0,0,0,.55),
    0 -1px 0 rgba(232,87,10,.20) !important;
  border-top: 1px solid rgba(232,87,10,.14) !important;
}

/* ─────────────────────────────────────────────────────────────
   MOBILE FINAL OVERRIDES
───────────────────────────────────────────────────────────── */
@media (max-width: 768px) {
  /* Simplified hero title on mobile */
  .v8-hero__title {
    font-size: clamp(1.75rem, 8.5vw, 2.8rem) !important;
    font-weight: 550 !important;
    animation-duration: 16s !important; /* slower = less CPU */
  }

  /* Reduce animation durations for battery/performance */
  .v26-rs__cta-card--featured::before {
    animation-duration: 5s !important;
  }

  /* Remove glow orb animations on mobile */
  .v26-rs__cta-card__glow,
  .v26-rs__perks-card__glow,
  .v26-rs__find-card__glow {
    display: none !important;
  }

  /* Simpler card backgrounds on mobile */
  .v26-rs__cta-card--featured,
  .v26-rs__perks-card,
  .v26-rs__find-card {
    background: rgba(5,15,35,.95) !important;
  }

  /* Safe stat number size */
  .stat-number {
    font-size: clamp(1.8rem, 8vw, 2.4rem) !important;
  }
}

/* ─────────────────────────────────────────────────────────────
   REDUCED MOTION
───────────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  .v8-hero__title,
  .section-title,
  .section--dark .section-title,
  .gold-divider {
    animation: none !important;
    background-position: 0% !important;
  }
  .v8-hero__title {
    -webkit-text-fill-color: #ff9f43 !important;
    background: none !important;
    filter: none !important;
  }
  .v26-rs__cta-card--featured::before { animation: none !important; }
  .v26-rs__cta-card__shine,
  .v26-rs__cta-card__glow,
  .v26-rs__perks-card__glow,
  .v26-rs__find-card__glow { animation: none !important; opacity: 0 !important; }
  .v26-rs__price-num { animation: none !important; }
  .v26-rs__main-btn,
  .v26-rs__cta-card__badge { animation: none !important; }
}

/* ── design-v37.css (20,635b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v37
   Base: v36 | Full audit fixes + polish
   ──────────────────────────────────────────────────────────────
   FIXES:
   F1. font-weight: 550 → 500 (non-standard value)
   F2. --color-accent CSS var → brand orange everywhere
   F3. Nav hover / focus outline → orange
   F4. Mobile sticky bar → brand colors
   F5. Room card old-gold refs → brand orange
   F6. v26-rs__title font-weight & size fix
   F7. Responsive.css accent fallback overrides
   F8. Dark section body text readability
   F9. Mobile hero padding fix
   F10. Focus ring accessibility — orange brand

   IMPROVEMENTS:
   I1. Section spacing consistency
   I2. Page hero subpage title polish
   I3. About section image hover
   I4. Booking form polish
   I5. Footer links hover color
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   F1. FONT-WEIGHT 550 → 500 (non-standard in older browsers)
───────────────────────────────────────────────────────────── */
.v8-hero__title {
  font-weight: 500 !important;
}

.v26-rs__title {
  font-weight: 500 !important;
}

/* ─────────────────────────────────────────────────────────────
   F2. CSS VARIABLE — Brand orange system-wide
   Overrides --color-accent fallback that was still #d4af37
───────────────────────────────────────────────────────────── */
:root {
  --color-accent:       #e8570a !important;
  --color-accent-dark:  #c94f0e !important;
  --color-accent-light: #ff9f43 !important;
  --color-primary:      #020c1b !important;
  --color-primary-light:#0a2342 !important;
  --v26-gold:           #e8570a !important;
  --v26-gold-lt:        #ff9f43 !important;
  --v26-gold-dk:        #c94f0e !important;
  --v26-sunrise:        #d63031 !important;
  --v6-accent:          #e8570a !important;
  --v6-btn-bg:          #e8570a !important;
  --v6-btn-hover:       #c94f0e !important;
  --v6-accent-light:    #ff9f43 !important;
  --v11-gold:           #e8570a !important;
  --v5-gold:            #e8570a !important;
}

/* ─────────────────────────────────────────────────────────────
   F3. NAV HOVER + ACTIVE → orange brand
───────────────────────────────────────────────────────────── */
/* Desktop nav hover */
.main-nav .menu-item > a:hover,
.main-nav .menu-item.current-menu-item > a,
.main-nav .menu-item.current-page-ancestor > a {
  color: #ff9f43 !important;
  -webkit-text-fill-color: #ff9f43 !important;
}

/* Active indicator line */
.main-nav .menu-item.current-menu-item > a::after,
.main-nav .menu-item > a::after {
  background: linear-gradient(90deg, #e8570a, #ff9f43) !important;
}

/* Dropdown hover */
.sub-menu .menu-item > a:hover {
  color: #ff9f43 !important;
  background: rgba(232,87,10,.08) !important;
}

/* Mobile nav hover */
@media (max-width: 1024px) {
  .main-nav .menu-item > a:hover,
  .main-nav .menu-item.current-menu-item > a {
    background: rgba(232,87,10,.14) !important;
    color: #ff9f43 !important;
    -webkit-text-fill-color: #ff9f43 !important;
  }
}

/* ─────────────────────────────────────────────────────────────
   F4. MOBILE STICKY BOOK BAR → brand orange
───────────────────────────────────────────────────────────── */
.mobile-book-bar {
  background: linear-gradient(
    90deg,
    #020c1b 0%,
    #0a1d3e 50%,
    #020c1b 100%
  ) !important;
  border-top: 1px solid rgba(232,87,10,.22) !important;
  box-shadow:
    0 -4px 24px rgba(2,12,27,.55),
    0 -1px 0 rgba(232,87,10,.14) !important;
}

.mobile-book-bar a:first-child,
.mobile-book-btn {
  background: linear-gradient(
    135deg, #c94f0e 0%, #e8570a 45%, #ff9f43 70%, #e8570a 100%
  ) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  box-shadow: 0 3px 14px rgba(232,87,10,.45) !important;
  border-radius: 10px !important;
}

.mobile-book-bar-phone a {
  color: rgba(255,255,255,.78) !important;
  -webkit-text-fill-color: rgba(255,255,255,.78) !important;
}

/* ─────────────────────────────────────────────────────────────
   F5. ROOM CARDS — brand orange accent (was gold)
───────────────────────────────────────────────────────────── */
.v26-room-rating {
  background: rgba(232,87,10,.10) !important;
  border: 1px solid rgba(232,87,10,.22) !important;
  color: #c94f0e !important;
  -webkit-text-fill-color: #c94f0e !important;
}

.v26-room-spec svg {
  stroke: #e8570a !important;
  filter: drop-shadow(0 0 4px rgba(232,87,10,.35)) !important;
}

.v26-room-img__view svg {
  stroke: #ff9f43 !important;
}

.v26-room-amen__tag:hover {
  background: rgba(232,87,10,.12) !important;
  border-color: rgba(232,87,10,.30) !important;
  color: #c94f0e !important;
  -webkit-text-fill-color: #c94f0e !important;
}

.v26-room-amen__tag svg {
  stroke: #e8570a !important;
}

.v26-room-amen__more {
  color: #c94f0e !important;
  -webkit-text-fill-color: #c94f0e !important;
  background: rgba(232,87,10,.08) !important;
  border: 1px dashed rgba(232,87,10,.30) !important;
}

/* ─────────────────────────────────────────────────────────────
   F6. FOCUS RING — orange brand (was gold)
───────────────────────────────────────────────────────────── */
:focus-visible {
  outline: 3px solid rgba(232,87,10,.70) !important;
  outline-offset: 3px !important;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: 3px solid rgba(232,87,10,.70) !important;
  outline-offset: 2px !important;
  box-shadow: 0 0 0 5px rgba(232,87,10,.14) !important;
}

/* ─────────────────────────────────────────────────────────────
   F7. HERO GOLD LINE → orange gradient
───────────────────────────────────────────────────────────── */
.hero-gold-line,
.v8-hero__rule {
  background: linear-gradient(
    90deg,
    transparent 0%,
    #c94f0e    15%,
    #e8570a    35%,
    #ff9f43    50%,
    #e8570a    65%,
    #d63031    85%,
    transparent 100%
  ) !important;
}

/* ─────────────────────────────────────────────────────────────
   F8. DARK SECTION BODY TEXT — better readability
───────────────────────────────────────────────────────────── */
.section--dark p,
.section--dark li,
.section--dark .card-text {
  color: rgba(255,255,255,.72) !important;
  -webkit-text-fill-color: rgba(255,255,255,.72) !important;
  line-height: 1.70 !important;
}

/* ─────────────────────────────────────────────────────────────
   F9. MOBILE HERO PADDING — proper safe area
───────────────────────────────────────────────────────────── */
@media (max-width: 768px) {
  .v8-hero__content {
    padding-bottom: calc(80px + env(safe-area-inset-bottom, 0px)) !important;
  }
}

/* ─────────────────────────────────────────────────────────────
   I1. SECTION SPACING — consistent vertical rhythm
───────────────────────────────────────────────────────────── */
.section {
  padding-top: clamp(3rem, 8vw, 6rem) !important;
  padding-bottom: clamp(3rem, 8vw, 6rem) !important;
}

.section--compact {
  padding-top: clamp(2rem, 5vw, 3.5rem) !important;
  padding-bottom: clamp(2rem, 5vw, 3.5rem) !important;
}

/* ─────────────────────────────────────────────────────────────
   I2. SUBPAGE HERO TITLE — refined gradient, cleaner
───────────────────────────────────────────────────────────── */
.page-hero .page-hero-title {
  font-size: clamp(1.6rem, 5vw, 3.2rem) !important;
  font-weight: 600 !important;
  letter-spacing: -.02em !important;
  line-height: 1.15 !important;
  background: linear-gradient(
    118deg,
    #ffffff  0%,
    #ffe8d6 20%,
    #ff9f43 40%,
    #ffffff 55%,
    #ff9f43 70%,
    #ffffff 85%,
    #ffe8d6 100%
  ) !important;
  background-size: 240% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v26Shimmer 10s linear infinite !important;
  filter:
    drop-shadow(0 3px 20px rgba(0,0,0,.80))
    drop-shadow(0 0 40px rgba(232,87,10,.25)) !important;
}

.page-hero .page-hero-subtitle {
  color: rgba(255,255,255,.75) !important;
  -webkit-text-fill-color: rgba(255,255,255,.75) !important;
  font-size: clamp(.82rem, 1.5vw, 1rem) !important;
  font-weight: 400 !important;
  text-shadow: 0 1px 10px rgba(0,0,0,.60) !important;
  letter-spacing: .015em !important;
}

/* ─────────────────────────────────────────────────────────────
   I3. ABOUT SECTION IMAGE — hover polish
───────────────────────────────────────────────────────────── */
.about-snippet__image {
  border-radius: 20px !important;
  overflow: hidden !important;
}

.about-snippet__image img {
  transition: transform .55s cubic-bezier(.34,1.2,.64,1) !important;
  will-change: transform !important;
}

.about-snippet__image:hover img {
  transform: scale(1.04) !important;
}

.about-snippet__image {
  box-shadow:
    0 16px 55px rgba(2,12,27,.20),
    0 6px 20px rgba(2,12,27,.12),
    0 0 0 1px rgba(232,87,10,.08) !important;
  transition: box-shadow .38s ease !important;
}

.about-snippet__image:hover {
  box-shadow:
    0 24px 70px rgba(2,12,27,.28),
    0 8px 24px rgba(2,12,27,.16),
    0 0 0 1.5px rgba(232,87,10,.18) !important;
}

/* ─────────────────────────────────────────────────────────────
   I4. BOOKING FORM — refined inputs & submit button
───────────────────────────────────────────────────────────── */
.booking-form input[type="text"],
.booking-form input[type="date"],
.booking-form input[type="number"],
.booking-form select,
.hsr-booking-form input,
.hsr-booking-form select {
  border-radius: 10px !important;
  border: 1.5px solid rgba(232,87,10,.22) !important;
  background: rgba(255,255,255,.96) !important;
  transition: border-color .22s, box-shadow .22s !important;
}

.booking-form input:focus,
.booking-form select:focus,
.hsr-booking-form input:focus,
.hsr-booking-form select:focus {
  border-color: #e8570a !important;
  box-shadow:
    0 0 0 3px rgba(232,87,10,.16),
    0 3px 12px rgba(232,87,10,.10) !important;
  outline: none !important;
}

.booking-form .btn-submit,
.hsr-booking-form [type="submit"],
.hsr-check-booking [type="submit"] {
  background: linear-gradient(
    135deg, #c94f0e 0%, #e8570a 45%, #ff9f43 70%, #e8570a 100%
  ) !important;
  background-size: 200% auto !important;
  animation: v26Shimmer 5s linear infinite !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border: none !important;
  border-radius: 12px !important;
  box-shadow: 0 4px 18px rgba(232,87,10,.42) !important;
  font-weight: 600 !important;
  letter-spacing: .04em !important;
  transition: transform .24s cubic-bezier(.34,1.3,.64,1), box-shadow .22s !important;
}

.booking-form .btn-submit:hover,
.hsr-booking-form [type="submit"]:hover,
.hsr-check-booking [type="submit"]:hover {
  transform: translateY(-2px) scale(1.012) !important;
  box-shadow: 0 8px 28px rgba(232,87,10,.55) !important;
}

/* ─────────────────────────────────────────────────────────────
   I5. FOOTER LINKS — orange hover
───────────────────────────────────────────────────────────── */
.site-footer a {
  transition: color .22s !important;
}

.site-footer a:hover {
  color: #ff9f43 !important;
  -webkit-text-fill-color: #ff9f43 !important;
}

.footer-col-title {
  margin-bottom: 1.1rem !important;
}

/* Footer bottom bar */
.footer-bottom {
  border-top: 1px solid rgba(255,255,255,.07) !important;
  padding-top: 1.4rem !important;
  margin-top: 2.5rem !important;
}

.footer-bottom a:hover {
  color: #ff9f43 !important;
  -webkit-text-fill-color: #ff9f43 !important;
}

/* ─────────────────────────────────────────────────────────────
   I6. SCROLL PROGRESS BAR → orange brand
───────────────────────────────────────────────────────────── */
.scroll-progress-bar {
  background: linear-gradient(
    90deg, #c94f0e, #e8570a, #ff9f43, #d63031
  ) !important;
  box-shadow: 0 0 10px rgba(232,87,10,.50) !important;
}

/* ─────────────────────────────────────────────────────────────
   I7. CUSTOM CURSOR → orange brand
───────────────────────────────────────────────────────────── */
.custom-cursor {
  border-color: rgba(232,87,10,.80) !important;
}

.custom-cursor-ring {
  border-color: rgba(232,87,10,.35) !important;
}

/* ─────────────────────────────────────────────────────────────
   I8. EXPERIENCE CARDS — richer
───────────────────────────────────────────────────────────── */
.experience-card {
  border-radius: 20px !important;
  overflow: hidden !important;
}

.experience-card__overlay {
  background: linear-gradient(
    to top,
    rgba(2,12,27,.90) 0%,
    rgba(2,12,27,.50) 45%,
    transparent 100%
  ) !important;
}

/* ─────────────────────────────────────────────────────────────
   I9. SECTION LABELS — correct color
───────────────────────────────────────────────────────────── */
.section-label {
  color: #e8570a !important;
}

/* Light sections */
.section--light .section-label,
:not(.section--dark) > .section-label {
  background: linear-gradient(
    110deg, #c94f0e 0%, #ff9f43 30%, #d63031 52%, #ff9f43 72%, #e8570a 100%
  ) !important;
  background-size: 220% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v26Shimmer 5s linear infinite !important;
}

/* ─────────────────────────────────────────────────────────────
   I10. HERO SLIDE DOTS/INDICATORS → orange
───────────────────────────────────────────────────────────── */
.v8-hero__dot {
  background: rgba(255,255,255,.40) !important;
  border: 1.5px solid rgba(255,255,255,.55) !important;
  transition: background .3s, transform .3s, border-color .3s !important;
}

.v8-hero__dot.is-active,
.v8-hero__dot:hover {
  background: #e8570a !important;
  border-color: #ff9f43 !important;
  transform: scale(1.3) !important;
  box-shadow: 0 0 10px rgba(232,87,10,.55) !important;
}

/* ─────────────────────────────────────────────────────────────
   MOBILE RESPONSIVE CLEANUP
───────────────────────────────────────────────────────────── */
@media (max-width: 768px) {
  /* Section spacing on mobile */
  .section {
    padding-top: clamp(2.2rem, 8vw, 3.5rem) !important;
    padding-bottom: clamp(2.2rem, 8vw, 3.5rem) !important;
  }

  /* About image full width on mobile */
  .about-snippet__image {
    border-radius: 16px !important;
  }

  /* Subpage hero title mobile */
  .page-hero .page-hero-title {
    font-size: clamp(1.4rem, 7vw, 2rem) !important;
    animation-duration: 14s !important;
  }
}

/* ─────────────────────────────────────────────────────────────
   REDUCED MOTION
───────────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  .page-hero .page-hero-title {
    animation: none !important;
    -webkit-text-fill-color: #ff9f43 !important;
    background: none !important;
  }
  .booking-form .btn-submit,
  .hsr-booking-form [type="submit"] {
    animation: none !important;
  }
  .section-label {
    animation: none !important;
  }
  .about-snippet__image img {
    transition: none !important;
  }
  .v8-hero__dot {
    transition: none !important;
  }
}

/* ── design-v38.css (10,943b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v38
   Base: v37
   ──────────────────────────────────────────────────────────────
   F1. Mobile scroll crash — CSS parallax/animation disable
   F2. Mobile sticky bar — parallel icons, refined buttons
   F3. Back-to-top button — brand styled
   F4. Button sizes — less heavy
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   F1. MOBILE PERFORMANCE — disable heavy CSS on touch devices
   Prevents Safari "problem occurred" on scroll
───────────────────────────────────────────────────────────── */
@media (pointer: coarse), (max-width: 1024px) {
  /* Disable subpage hero animation on mobile */
  .page-hero-bg img,
  .page-hero-bg .v24-hero-img {
    animation: none !important;
    transform: scale(1.04) !important;
    will-change: auto !important;
  }

  /* Disable hero section CSS animations that stress GPU */
  .v26-rs__cta-card__shine {
    display: none !important;
  }

  /* Simplify gradient text animations — less repaints */
  .v8-hero__title,
  .section-title,
  .section--dark .section-title,
  .v26-rs__title {
    animation-duration: 18s !important;
  }

  /* Remove will-change from non-critical elements */
  .v26-room-card,
  .home-gallery-item,
  .amenity-card {
    will-change: auto !important;
  }

  /* Disable 3D CSS on mobile (these stress iOS WebKit) */
  .v26-rs__cta-card--featured:hover,
  .v26-rs__perks-card:hover,
  .v26-rs__find-card:hover,
  .v26-room-card:hover,
  .home-gallery-item:hover {
    transform: translateY(-4px) !important;
  }
}

/* ─────────────────────────────────────────────────────────────
   F2. MOBILE STICKY BAR — parallel icons, clean layout
───────────────────────────────────────────────────────────── */
@media (max-width: 1024px) {
  .mobile-book-bar {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: stretch !important;
    position: fixed !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 9990 !important;
    gap: .45rem !important;
    padding: .55rem .75rem !important;
    padding-bottom: calc(.55rem + env(safe-area-inset-bottom, 0px)) !important;
    background: linear-gradient(
      90deg,
      #010810 0%,
      #020c1b 50%,
      #010810 100%
    ) !important;
    border-top: 1px solid rgba(232,87,10,.22) !important;
    box-shadow: 0 -4px 20px rgba(0,0,0,.55) !important;
  }

  /* All buttons — parallel, equal flex */
  .mobile-book-bar__btn {
    flex: 1 !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    gap: .35rem !important;
    text-decoration: none !important;
    font-size: .75rem !important;
    font-weight: 600 !important;
    letter-spacing: .03em !important;
    padding: .55rem .4rem !important;
    border-radius: 10px !important;
    border: none !important;
    cursor: pointer !important;
    transition: opacity .2s, transform .18s !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
  }

  .mobile-book-bar__btn:active {
    opacity: .80 !important;
    transform: scale(.96) !important;
  }

  /* Call button — glass blue */
  .mobile-book-bar__btn--call {
    background: rgba(255,255,255,.08) !important;
    border: 1px solid rgba(255,255,255,.14) !important;
    color: rgba(255,255,255,.85) !important;
    -webkit-text-fill-color: rgba(255,255,255,.85) !important;
  }

  .mobile-book-bar__btn--call svg {
    stroke: rgba(255,255,255,.75) !important;
    flex-shrink: 0 !important;
  }

  /* WhatsApp button — green tint */
  .mobile-book-bar__btn--wa {
    background: rgba(37,211,102,.12) !important;
    border: 1px solid rgba(37,211,102,.25) !important;
    color: #25d366 !important;
    -webkit-text-fill-color: #25d366 !important;
  }

  .mobile-book-bar__btn--wa svg {
    fill: #25d366 !important;
    flex-shrink: 0 !important;
  }

  /* Book Now — orange brand, prominent */
  .mobile-book-bar__btn--book {
    flex: 1.4 !important;
    background: linear-gradient(
      135deg, #c94f0e 0%, #e8570a 45%, #ff9f43 75%, #e8570a 100%
    ) !important;
    background-size: 200% auto !important;
    animation: v26Shimmer 5s linear infinite !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    box-shadow:
      0 3px 12px rgba(232,87,10,.45),
      inset 0 1px 0 rgba(255,255,255,.18) !important;
    border: none !important;
  }

  .mobile-book-bar__btn--book svg {
    stroke: rgba(255,255,255,.90) !important;
    flex-shrink: 0 !important;
  }

  /* Old classes — hide so nothing breaks */
  .mobile-book-bar-phone {
    display: none !important;
  }

  /* Push content above bar */
  body {
    padding-bottom: calc(64px + env(safe-area-inset-bottom, 0px)) !important;
  }
}

/* ─────────────────────────────────────────────────────────────
   F3. BACK TO TOP BUTTON
───────────────────────────────────────────────────────────── */
.scroll-to-top {
  position: fixed !important;
  bottom: 90px !important;
  right: 20px !important;
  z-index: 9980 !important;
  width: 44px !important;
  height: 44px !important;
  border-radius: 50% !important;
  border: 1.5px solid rgba(232,87,10,.40) !important;
  background: linear-gradient(
    145deg,
    rgba(4,14,30,.92) 0%,
    rgba(10,30,65,.90) 100%
  ) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  box-shadow:
    0 4px 20px rgba(0,0,0,.45),
    0 0 0 1px rgba(232,87,10,.12),
    inset 0 1px 0 rgba(255,255,255,.10) !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(12px) !important;
  transition:
    opacity .28s ease,
    visibility .28s ease,
    transform .28s cubic-bezier(.34,1.3,.64,1),
    box-shadow .22s ease,
    border-color .22s !important;
}

.scroll-to-top.visible {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) !important;
}

.scroll-to-top:hover {
  border-color: rgba(232,87,10,.75) !important;
  box-shadow:
    0 6px 28px rgba(0,0,0,.50),
    0 0 0 1px rgba(232,87,10,.35),
    0 0 20px rgba(232,87,10,.25),
    inset 0 1px 0 rgba(255,255,255,.14) !important;
  transform: translateY(-3px) !important;
}

.scroll-to-top:active {
  transform: scale(.92) !important;
}

.scroll-to-top svg {
  stroke: #ff9f43 !important;
  filter: drop-shadow(0 0 5px rgba(232,87,10,.55)) !important;
  transition: stroke .22s !important;
}

.scroll-to-top:hover svg {
  stroke: #ffffff !important;
  filter: drop-shadow(0 0 8px rgba(232,87,10,.70)) !important;
}

/* On mobile — above sticky bar */
@media (max-width: 1024px) {
  .scroll-to-top {
    bottom: calc(72px + env(safe-area-inset-bottom, 0px)) !important;
    right: 14px !important;
    width: 40px !important;
    height: 40px !important;
  }
}

/* ─────────────────────────────────────────────────────────────
   F4. BUTTONS — final refined sizes
───────────────────────────────────────────────────────────── */

/* Primary CTA buttons — balanced padding */
.btn--primary,
.btn--lg {
  padding: .78rem 1.8rem !important;
  font-size: .92rem !important;
  font-weight: 600 !important;
  letter-spacing: .04em !important;
  border-radius: 12px !important;
}

.btn--outline {
  padding: .75rem 1.6rem !important;
  font-size: .90rem !important;
  font-weight: 600 !important;
  border-radius: 12px !important;
  border: 1.5px solid rgba(232,87,10,.50) !important;
  color: #e8570a !important;
  -webkit-text-fill-color: #e8570a !important;
  transition: background .22s, border-color .22s, color .22s !important;
}

.btn--outline:hover {
  background: rgba(232,87,10,.10) !important;
  border-color: rgba(232,87,10,.80) !important;
}

/* Header book button */
.header-book-btn {
  padding: .55rem 1.3rem !important;
  font-size: .82rem !important;
  font-weight: 600 !important;
  border-radius: 10px !important;
  letter-spacing: .04em !important;
}

/* Room book button */
.v26-room-book-btn {
  padding: .65rem 1.2rem !important;
  font-size: .82rem !important;
  border-radius: 10px !important;
}

/* Reserve CTA book button */
.v26-rs__main-btn {
  padding: 1rem 1.4rem !important;
  font-size: .90rem !important;
  font-weight: 700 !important;
  border-radius: 14px !important;
  letter-spacing: .04em !important;
}

/* Mobile buttons */
@media (max-width: 768px) {
  .btn--primary,
  .btn--lg {
    padding: .72rem 1.5rem !important;
    font-size: .88rem !important;
  }
  .v26-rs__main-btn {
    padding: .88rem 1.2rem !important;
    font-size: .86rem !important;
  }
}

/* ─────────────────────────────────────────────────────────────
   REDUCED MOTION
───────────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  .scroll-to-top {
    transition: opacity .2s, visibility .2s !important;
    transform: none !important;
  }
  .scroll-to-top:hover {
    transform: none !important;
  }
  .mobile-book-bar__btn--book {
    animation: none !important;
  }
}

/* ── design-v39.css (16,083b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v39
   Base: v38
   ──────────────────────────────────────────────────────────────
   1. Booking page v39 — clean layout, responsive sidebar
   2. Perks bar — brand orange colors
   3. Sidebar cards — glass style, no duplication
   4. Quick facts — pill row
   5. Booking fallback — styled
   6. All remaining old-gold inline style overrides via CSS var
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   BOOKING PAGE SECTION
───────────────────────────────────────────────────────────── */
.v39-booking-section {
  background: linear-gradient(160deg, #f8f5f2 0%, #fdf9f6 55%, #f5f0eb 100%);
  padding: 3.5rem 0 5rem;
}

/* Grid: main form + sidebar */
.v39-booking-grid {
  display: grid;
  grid-template-columns: 1fr 360px;
  gap: 2rem;
  align-items: start;
}

/* ── MAIN FORM CARD ── */
.v39-booking-main {
  min-width: 0;
}

.v39-form-card {
  background: #fff;
  border-radius: 22px;
  padding: 2.4rem 2.6rem;
  box-shadow:
    0 2px 8px rgba(2,12,27,.06),
    0 12px 40px rgba(2,12,27,.10),
    0 0 0 1px rgba(232,87,10,.06);
  border: 1px solid rgba(232,87,10,.08);
}

.v39-form-card__header {
  display: flex;
  align-items: flex-start;
  gap: 1.1rem;
  margin-bottom: 1.1rem;
}

.v39-form-card__icon {
  width: 50px;
  height: 50px;
  border-radius: 14px;
  background: linear-gradient(135deg, rgba(232,87,10,.12), rgba(232,87,10,.06));
  border: 1.5px solid rgba(232,87,10,.22);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  box-shadow: 0 3px 12px rgba(232,87,10,.18);
}

.v39-form-card__icon svg {
  stroke: #e8570a;
  filter: drop-shadow(0 0 4px rgba(232,87,10,.35));
}

.v39-form-card__eyebrow {
  display: block;
  font-size: .60rem;
  font-weight: 700;
  letter-spacing: .18em;
  text-transform: uppercase;
  background: linear-gradient(110deg, #c94f0e, #ff9f43, #d63031, #ff9f43);
  background-size: 200% auto;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  animation: v26Shimmer 5s linear infinite;
  margin-bottom: .22rem;
}

.v39-form-card__title {
  font-size: 1.55rem;
  font-weight: 600;
  letter-spacing: -.015em;
  color: #020c1b;
  margin: 0;
  line-height: 1.22;
}

/* Booking fallback */
.v39-booking-fallback {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: .8rem;
  padding: 3rem 2rem;
  text-align: center;
  background: #fafaf9;
  border-radius: 14px;
  border: 1.5px dashed rgba(232,87,10,.25);
}

.v39-booking-fallback__icon { font-size: 2.2rem; }
.v39-booking-fallback h3 { font-size: 1.05rem; font-weight: 600; color: #020c1b; margin: 0; }
.v39-booking-fallback p  { color: #666; font-size: .875rem; margin: 0; }

/* ── SIDEBAR ── */
.v39-booking-sidebar {
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
  min-width: 0;
  position: sticky;
  top: 100px;
}

/* Sidebar cards */
.v39-sidebar-card {
  border-radius: 20px;
  padding: 1.5rem 1.6rem;
  position: relative;
  overflow: hidden;
  transition: transform .32s cubic-bezier(.34,1.28,.64,1), box-shadow .28s ease;
}

.v39-sidebar-card--find {
  background: linear-gradient(148deg, rgba(4,14,30,.97) 0%, rgba(8,26,55,.95) 100%);
  border: 1px solid rgba(232,87,10,.28);
  border-top: 2px solid rgba(232,87,10,.55);
  box-shadow:
    0 8px 32px rgba(2,12,27,.45),
    0 20px 55px rgba(2,12,27,.28),
    inset 0 1px 0 rgba(255,255,255,.08);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

.v39-sidebar-card--help {
  background: linear-gradient(148deg, rgba(255,255,255,.96) 0%, rgba(255,248,242,.96) 100%);
  border: 1px solid rgba(232,87,10,.15);
  border-top: 2px solid rgba(232,87,10,.35);
  box-shadow:
    0 4px 20px rgba(2,12,27,.08),
    0 12px 40px rgba(2,12,27,.10);
}

/* Sidebar inner glow */
.v39-sidebar-card__glow {
  position: absolute;
  top: -40px; right: -40px;
  width: 160px; height: 160px;
  background: radial-gradient(circle, rgba(232,87,10,.14) 0%, transparent 65%);
  border-radius: 50%;
  pointer-events: none;
  z-index: 0;
  animation: v34GlowPulse 6s ease-in-out infinite;
}

.v39-sidebar-card > *:not(.v39-sidebar-card__glow) {
  position: relative;
  z-index: 2;
}

.v39-sidebar-card:hover {
  transform: translateY(-5px);
}

.v39-sidebar-card--find:hover {
  box-shadow:
    0 12px 44px rgba(2,12,27,.52),
    0 28px 68px rgba(2,12,27,.32),
    0 0 0 1px rgba(232,87,10,.35),
    inset 0 1px 0 rgba(255,255,255,.10) !important;
}

.v39-sidebar-card--help:hover {
  box-shadow:
    0 8px 30px rgba(2,12,27,.12),
    0 18px 50px rgba(2,12,27,.14),
    0 0 0 1px rgba(232,87,10,.20) !important;
}

/* Card head */
.v39-sidebar-card__head {
  display: flex;
  align-items: center;
  gap: .75rem;
  margin-bottom: .65rem;
}

.v39-sidebar-card__icon {
  width: 38px; height: 38px;
  border-radius: 11px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.v39-sidebar-card--find .v39-sidebar-card__icon {
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.18);
}

.v39-sidebar-card--find .v39-sidebar-card__icon svg {
  stroke: #ff9f43;
  filter: drop-shadow(0 0 5px rgba(232,87,10,.55));
}

.v39-sidebar-card--help .v39-sidebar-card__icon {
  background: rgba(232,87,10,.10);
  border: 1px solid rgba(232,87,10,.22);
}

.v39-sidebar-card--help .v39-sidebar-card__icon svg {
  stroke: #e8570a;
}

.v39-sidebar-card__title {
  font-size: .96rem;
  font-weight: 700;
  margin: 0;
  letter-spacing: .01em;
}

.v39-sidebar-card--find .v39-sidebar-card__title {
  color: rgba(255,255,255,.92);
  -webkit-text-fill-color: rgba(255,255,255,.92);
}

.v39-sidebar-card--help .v39-sidebar-card__title {
  color: #020c1b;
}

.v39-sidebar-card__desc {
  font-size: .80rem;
  line-height: 1.55;
  margin-bottom: 1rem;
}

.v39-sidebar-card--find .v39-sidebar-card__desc {
  color: rgba(255,255,255,.52);
  -webkit-text-fill-color: rgba(255,255,255,.52);
}

.v39-sidebar-card--help .v39-sidebar-card__desc {
  color: #666;
}

.v39-sidebar-card__content {
  /* hsr_check_booking shortcode container */
}

/* Override shortcode form styles inside dark sidebar */
.v39-sidebar-card--find .hsr-check-booking input,
.v39-sidebar-card--find .hsr-check-booking-form input {
  background: rgba(255,255,255,.09) !important;
  border: 1.5px solid rgba(255,255,255,.18) !important;
  border-radius: 10px !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  padding: .65rem .9rem !important;
  font-size: .85rem !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.v39-sidebar-card--find .hsr-check-booking input:focus,
.v39-sidebar-card--find .hsr-check-booking-form input:focus {
  border-color: rgba(232,87,10,.60) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(232,87,10,.18) !important;
}

.v39-sidebar-card--find .hsr-check-booking input::placeholder {
  color: rgba(255,255,255,.35) !important;
}

.v39-sidebar-card--find .hsr-check-booking label,
.v39-sidebar-card--find .hsr-check-booking-form label {
  color: rgba(255,159,67,.65) !important;
  -webkit-text-fill-color: rgba(255,159,67,.65) !important;
  font-size: .70rem !important;
  font-weight: 600 !important;
  letter-spacing: .07em !important;
  text-transform: uppercase !important;
}

.v39-sidebar-card--find .hsr-check-booking [type="submit"],
.v39-sidebar-card--find .hsr-check-booking-form [type="submit"],
.v39-sidebar-card--find button[type="submit"] {
  width: 100% !important;
  background: linear-gradient(135deg, #c94f0e 0%, #e8570a 45%, #ff9f43 70%, #e8570a 100%) !important;
  background-size: 200% auto !important;
  animation: v26Shimmer 5s linear infinite !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border: none !important;
  border-radius: 11px !important;
  padding: .75rem 1rem !important;
  font-size: .85rem !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  box-shadow: 0 3px 14px rgba(232,87,10,.42) !important;
  margin-top: .5rem !important;
  transition: transform .22s, box-shadow .22s !important;
}

.v39-sidebar-card--find .hsr-check-booking [type="submit"]:hover,
.v39-sidebar-card--find button[type="submit"]:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 22px rgba(232,87,10,.55) !important;
}

.v39-sidebar-card__note {
  font-size: .80rem;
  color: rgba(255,255,255,.45);
  -webkit-text-fill-color: rgba(255,255,255,.45);
  margin: 0;
}

/* ── CONTACT LINKS ── */
.v39-sidebar-contacts {
  display: flex;
  flex-direction: column;
  gap: .5rem;
  margin-bottom: 1.2rem;
}

.v39-sidebar-contact {
  display: flex;
  align-items: center;
  gap: .5rem;
  padding: .6rem .8rem;
  border-radius: 10px;
  text-decoration: none;
  font-size: .78rem;
  font-weight: 500;
  line-height: 1.3;
  transition: background .2s, border-color .2s, transform .18s;
  border: 1px solid transparent;
  word-break: break-all;
}

.v39-sidebar-contact svg { flex-shrink: 0; }
.v39-sidebar-contact span { min-width: 0; }

.v39-sidebar-contact--phone {
  background: rgba(232,87,10,.08);
  border-color: rgba(232,87,10,.18);
  color: #c94f0e;
}
.v39-sidebar-contact--phone svg { stroke: #e8570a; }
.v39-sidebar-contact--phone:hover {
  background: rgba(232,87,10,.15);
  border-color: rgba(232,87,10,.38);
  transform: translateX(3px);
}

.v39-sidebar-contact--wa {
  background: rgba(37,211,102,.08);
  border-color: rgba(37,211,102,.22);
  color: #1a9e50;
}
.v39-sidebar-contact--wa svg { fill: #25d366; }
.v39-sidebar-contact--wa:hover {
  background: rgba(37,211,102,.14);
  border-color: rgba(37,211,102,.40);
  transform: translateX(3px);
}

.v39-sidebar-contact--email {
  background: rgba(232,87,10,.06);
  border-color: rgba(232,87,10,.14);
  color: #666;
}
.v39-sidebar-contact--email svg { stroke: #e8570a; }
.v39-sidebar-contact--email:hover {
  background: rgba(232,87,10,.12);
  border-color: rgba(232,87,10,.28);
  color: #c94f0e;
  transform: translateX(3px);
}

/* ── QUICK FACTS ── */
.v39-quick-facts {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: .5rem;
  padding-top: 1rem;
  border-top: 1px solid rgba(232,87,10,.10);
}

.v39-quick-fact {
  display: flex;
  flex-direction: column;
  gap: .18rem;
  padding: .55rem .65rem;
  background: rgba(232,87,10,.05);
  border: 1px solid rgba(232,87,10,.10);
  border-radius: 10px;
}

.v39-quick-fact__label {
  font-size: .60rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #999;
}

.v39-quick-fact__val {
  font-size: .82rem;
  font-weight: 600;
  color: #e8570a;
}

/* ─────────────────────────────────────────────────────────────
   PERKS BAR — brand orange colors
───────────────────────────────────────────────────────────── */
.v26-booking-perks-bar {
  background: linear-gradient(
    160deg, #020c1b 0%, #061424 45%, #0a2342 100%
  ) !important;
  border-bottom: 1px solid rgba(232,87,10,.18) !important;
}

.v26-booking-perks-bar__glow {
  background: radial-gradient(ellipse 80% 120% at 50% 50%, rgba(232,87,10,.09) 0%, transparent 65%) !important;
}

.v26-booking-perks-bar__item {
  color: rgba(255,159,67,.82) !important;
  -webkit-text-fill-color: rgba(255,159,67,.82) !important;
}

.v26-booking-perks-bar__item svg {
  stroke: #ff9f43 !important;
  filter: drop-shadow(0 0 5px rgba(232,87,10,.40)) !important;
}

.v26-booking-perks-bar__sep {
  background: rgba(232,87,10,.22) !important;
}

/* Booking main section bg */
.v26-booking-main-section {
  background: linear-gradient(160deg, #f8f5f2 0%, #fdf9f6 55%, #f5f0eb 100%) !important;
}

/* ─────────────────────────────────────────────────────────────
   BOOKING FORM HEADER ICON — brand orange
───────────────────────────────────────────────────────────── */
.v26-booking-form-header__icon {
  background: linear-gradient(135deg, rgba(232,87,10,.14), rgba(232,87,10,.07)) !important;
  border: 1.5px solid rgba(232,87,10,.25) !important;
}

.v26-booking-form-header__icon svg {
  stroke: #e8570a !important;
}

.v26-booking-form-header__step {
  background: linear-gradient(110deg, #c94f0e, #ff9f43, #d63031, #ff9f43) !important;
  background-size: 200% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
}

/* ─────────────────────────────────────────────────────────────
   RESPONSIVE — booking page
───────────────────────────────────────────────────────────── */
@media (max-width: 1024px) {
  .v39-booking-grid {
    grid-template-columns: 1fr 320px;
    gap: 1.5rem;
  }
}

@media (max-width: 768px) {
  .v39-booking-section {
    padding: 2rem 0 3.5rem;
  }

  .v39-booking-grid {
    grid-template-columns: 1fr;
    gap: 1.4rem;
  }

  .v39-form-card {
    padding: 1.6rem 1.4rem;
    border-radius: 18px;
  }

  .v39-form-card__title {
    font-size: 1.25rem;
  }

  .v39-booking-sidebar {
    position: static;
    gap: 1rem;
  }

  .v39-sidebar-card {
    padding: 1.3rem 1.4rem;
  }

  .v39-quick-facts {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 480px) {
  .v39-form-card {
    padding: 1.3rem 1.1rem;
  }

  .v39-quick-facts {
    grid-template-columns: 1fr;
  }

  .v39-sidebar-contact {
    font-size: .74rem;
    padding: .55rem .7rem;
  }
}

/* ─────────────────────────────────────────────────────────────
   ROOMS PAGE — fix old gold inline accent color
───────────────────────────────────────────────────────────── */
/* The star rating SVG fill was #d4af37 — CSS cannot override SVG fill attr
   but we can target the parent context */
.v26-room-star svg,
.room-star svg {
  fill: #e8570a !important;
}

/* ─────────────────────────────────────────────────────────────
   REDUCED MOTION
───────────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  .v39-form-card__eyebrow,
  .v39-sidebar-card--find [type="submit"],
  .v26-booking-perks-bar__item {
    animation: none !important;
  }
  .v39-sidebar-card__glow {
    animation: none !important;
    opacity: .4 !important;
  }
}

/* ── design-v40.css (15,979b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v40
   Base: v39
   ──────────────────────────────────────────────────────────────
   F1. Hero text behind nav — correct padding
   F2. Booking page — full-width form, no sidebar overflow
   F3. Room badge CSS — hide empty badge div
   F4. Room featured badge — brand orange (was gold)
   F5. Room card duplicate type fix via CSS
   I1. 2× design — premium glass booking form
   I2. Booking sidebar — enhanced visual hierarchy
   I3. Hero section — refined content position
   I4. Room cards — enhanced hover + badge polish
   I5. Page hero short — better height
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   F1. HERO TEXT BEHIND NAV — correct top padding
   Header height = 80px, hero content was calc(76px + 2rem)
   Fix: use --header-height var with safe fallback
───────────────────────────────────────────────────────────── */
:root {
  --header-height: 80px;
}

.v8-hero__content {
  padding-top: calc(var(--header-height, 80px) + 3rem) !important;
  padding-bottom: 10rem !important;
}

/* Subpage hero — enough top clearance */
.page-hero {
  padding-top: var(--header-height, 80px) !important;
}

.page-hero-content {
  padding-top: 3.5rem !important;
  padding-bottom: 3.5rem !important;
  position: relative !important;
  z-index: 4 !important;
}

/* Short page hero (booking, contact etc) */
.page-hero--short {
  min-height: 300px !important;
}

.page-hero--short .page-hero-content {
  padding-top: 2.8rem !important;
  padding-bottom: 2.8rem !important;
}

@media (max-width: 768px) {
  .v8-hero__content {
    padding-top: calc(var(--header-height, 80px) + 2rem) !important;
    padding-bottom: 7rem !important;
  }
  .page-hero-content {
    padding-top: 2.5rem !important;
    padding-bottom: 2.5rem !important;
  }
}

/* ─────────────────────────────────────────────────────────────
   F2. BOOKING PAGE — form gets full comfortable width
   Sidebar 320px fixed, form takes remaining space
   Overflow fix — form content never clips
───────────────────────────────────────────────────────────── */
.v39-booking-grid {
  grid-template-columns: 1fr 320px !important;
  gap: 1.8rem !important;
  align-items: start !important;
}

.v39-booking-main {
  min-width: 0 !important;
  overflow: visible !important;
}

/* Booking form shortcode — ensure it expands correctly */
.v39-form-card .hsr-booking-form,
.v39-form-card .hsr-booking-form-wrap,
.v39-form-card [class*="booking-form"],
.v39-form-card form {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

/* Form inputs inside booking card — full width */
.v39-form-card input[type="text"],
.v39-form-card input[type="date"],
.v39-form-card input[type="number"],
.v39-form-card input[type="email"],
.v39-form-card select,
.v39-form-card textarea {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

/* Form table layout — convert to block if needed */
.v39-form-card table,
.v39-form-card table td,
.v39-form-card table th {
  display: block !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

@media (max-width: 1024px) {
  .v39-booking-grid {
    grid-template-columns: 1fr 290px !important;
    gap: 1.4rem !important;
  }
}

@media (max-width: 768px) {
  .v39-booking-grid {
    grid-template-columns: 1fr !important;
    gap: 1.2rem !important;
  }
  .v39-booking-sidebar {
    position: static !important;
  }
}

/* ─────────────────────────────────────────────────────────────
   F3. ROOM BADGES EMPTY BOX — hide when no children
   CSS cannot target :empty on non-empty whitespace, so
   we make the div invisible when no visible span children
   via the :has() selector (modern browsers) + fallback
───────────────────────────────────────────────────────────── */
/* Hide badge container when it has no visible badge children */
.v8-room-card__badges:not(:has(.v8-room-badge)) {
  display: none !important;
}

/* Fallback for browsers without :has() */
.v8-room-card__badges {
  min-height: 0 !important;
}

/* v26 room card badge — same treatment */
.v26-room-img__badge-wrap:empty,
.v26-room-img__badge:empty {
  display: none !important;
}

/* ─────────────────────────────────────────────────────────────
   F4. ROOM FEATURED BADGE — brand orange (was gold)
───────────────────────────────────────────────────────────── */
.v8-room-badge--featured {
  background: linear-gradient(
    135deg, #c94f0e 0%, #e8570a 45%, #ff9f43 70%, #d63031 100%
  ) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  box-shadow: 0 3px 12px rgba(232,87,10,.45) !important;
}

.v26-room-img__badge {
  background: linear-gradient(
    135deg, #c94f0e 0%, #e8570a 45%, #ff9f43 70%, #d63031 100%
  ) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  box-shadow: 0 3px 12px rgba(232,87,10,.40) !important;
}

/* ─────────────────────────────────────────────────────────────
   F5. ROOM CARD — type label vs title distinction
   type = small label (category), title = prominent name
───────────────────────────────────────────────────────────── */
.v26-room-type {
  font-size: .62rem !important;
  font-weight: 700 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
  margin-bottom: .28rem !important;
  display: block !important;
}

.v26-room-title {
  font-size: 1.2rem !important;
  font-weight: 600 !important;
  letter-spacing: -.01em !important;
  line-height: 1.25 !important;
  color: #020c1b !important;
  margin: 0 0 .2rem !important;
}

/* ─────────────────────────────────────────────────────────────
   I1. BOOKING FORM CARD — 2× more premium
───────────────────────────────────────────────────────────── */
.v39-form-card {
  background: #ffffff !important;
  border: 1px solid rgba(232,87,10,.10) !important;
  border-top: 3px solid transparent !important;
  border-image: linear-gradient(
    90deg, transparent 0%, #c94f0e 15%, #e8570a 35%, #ff9f43 50%, #e8570a 65%, #d63031 85%, transparent 100%
  ) 1 !important;
  border-radius: 24px !important;
  padding: 2.5rem 2.8rem !important;
  box-shadow:
    0 2px 6px rgba(2,12,27,.04),
    0 10px 35px rgba(2,12,27,.09),
    0 25px 65px rgba(2,12,27,.06),
    0 0 0 1px rgba(232,87,10,.05) !important;
  position: relative !important;
  overflow: hidden !important;
}

/* Subtle bg pattern */
.v39-form-card::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important; right: 0 !important;
  width: 280px !important; height: 280px !important;
  background: radial-gradient(
    circle, rgba(232,87,10,.04) 0%, transparent 65%
  ) !important;
  pointer-events: none !important;
  z-index: 0 !important;
}

.v39-form-card > * { position: relative !important; z-index: 1 !important; }

@media (max-width: 768px) {
  .v39-form-card {
    padding: 1.5rem 1.3rem !important;
    border-image: none !important;
    border-top: 3px solid #e8570a !important;
    border-radius: 18px !important;
  }
}

/* ─────────────────────────────────────────────────────────────
   I2. BOOKING SIDEBAR — enhanced visual hierarchy
───────────────────────────────────────────────────────────── */
.v39-booking-sidebar {
  position: sticky !important;
  top: calc(var(--header-height, 80px) + 16px) !important;
}

/* Find booking card — stronger depth */
.v39-sidebar-card--find {
  box-shadow:
    0 10px 40px rgba(2,12,27,.50),
    0 24px 65px rgba(2,12,27,.32),
    0 0 0 1px rgba(232,87,10,.22),
    inset 0 1px 0 rgba(255,255,255,.10) !important;
}

/* Help card — warm white with subtle depth */
.v39-sidebar-card--help {
  box-shadow:
    0 4px 18px rgba(2,12,27,.07),
    0 14px 42px rgba(2,12,27,.09),
    0 0 0 1px rgba(232,87,10,.08) !important;
}

/* ─────────────────────────────────────────────────────────────
   I3. SECTION IMPROVEMENTS — visual consistency
───────────────────────────────────────────────────────────── */

/* Rooms section — tighter card gap */
.v26-rooms-grid {
  gap: 2rem !important;
}

/* Room card content — better spacing */
.v26-room-content {
  padding: 1.6rem 1.8rem !important;
}

.v26-room-content__top {
  margin-bottom: 1rem !important;
}

/* Room card book button — brand styled */
.v26-room-book-btn {
  background: linear-gradient(
    135deg, #c94f0e 0%, #e8570a 40%, #ff9f43 65%, #e8570a 100%
  ) !important;
  background-size: 200% auto !important;
  animation: v26Shimmer 5s linear infinite !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border: none !important;
  font-weight: 600 !important;
}

/* Room card view details link */
.v26-room-details-btn,
.v26-room-learn-more {
  color: #e8570a !important;
  -webkit-text-fill-color: #e8570a !important;
  font-weight: 600 !important;
  font-size: .82rem !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: .3rem !important;
  transition: gap .2s, color .2s !important;
}

.v26-room-details-btn:hover,
.v26-room-learn-more:hover {
  gap: .55rem !important;
  color: #c94f0e !important;
  -webkit-text-fill-color: #c94f0e !important;
}

/* ─────────────────────────────────────────────────────────────
   I4. ROOM CARDS — enhanced hover polish
───────────────────────────────────────────────────────────── */
.v26-room-card {
  border-radius: 22px !important;
  background: #fff !important;
  border: 1px solid rgba(0,0,0,.06) !important;
  overflow: hidden !important;
  transition:
    transform .34s cubic-bezier(.34,1.28,.64,1),
    box-shadow .30s ease,
    border-color .26s !important;
}

.v26-room-card:hover {
  transform: translateY(-10px) scale(1.012) !important;
  border-color: rgba(232,87,10,.22) !important;
  box-shadow:
    0 4px 12px rgba(2,12,27,.08),
    0 18px 48px rgba(2,12,27,.16),
    0 32px 70px rgba(2,12,27,.12),
    0 0 0 1.5px rgba(232,87,10,.28) !important;
}

/* ─────────────────────────────────────────────────────────────
   I5. AVAILABILITY BADGE — brand polish
───────────────────────────────────────────────────────────── */
.v26-room-img__avail {
  background: rgba(2,12,27,.75) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  font-size: .65rem !important;
  font-weight: 600 !important;
  letter-spacing: .06em !important;
  padding: .3rem .7rem !important;
  border-radius: 20px !important;
}

.v26-room-img__avail-dot {
  background: #4ade80 !important;
  box-shadow: 0 0 6px rgba(74,222,128,.65) !important;
}

/* ─────────────────────────────────────────────────────────────
   I6. PERKS BAR ON BOOKING PAGE — stronger visual
───────────────────────────────────────────────────────────── */
.v26-booking-perks-bar {
  padding: 1rem 0 !important;
}

.v26-booking-perks-bar__inner {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  gap: 0 !important;
}

.v26-booking-perks-bar__item {
  display: flex !important;
  align-items: center !important;
  gap: .45rem !important;
  padding: .4rem 1.2rem !important;
  font-size: .72rem !important;
  font-weight: 600 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
}

.v26-booking-perks-bar__sep {
  width: 1px !important;
  height: 16px !important;
  flex-shrink: 0 !important;
}

/* ─────────────────────────────────────────────────────────────
   I7. OVERALL DARK SECTION BG — deeper, more premium
───────────────────────────────────────────────────────────── */
.section--dark {
  background: linear-gradient(
    170deg,
    #020c1b 0%,
    #061424 25%,
    #0a2342 52%,
    #0d2e58 78%,
    #030e1c 100%
  ) !important;
}

/* ─────────────────────────────────────────────────────────────
   REDUCED MOTION
───────────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  .v26-room-card:hover {
    transform: none !important;
  }
  .v39-form-card::before {
    display: none !important;
  }
  .v26-room-book-btn,
  .v8-room-badge--featured,
  .v39-form-card__eyebrow {
    animation: none !important;
    background-position: 0% !important;
  }
}

/* ── design-v41_2.css (19,486b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v41.2
   ──────────────────────────────────────────────────────────────
   1. Booking page — full width form, 3-col info row below
   2. Reserve section "Book Your Stay Now" button — refined
   3. Mobile scroll crash — CSS-level prevention
   4. Premium polish throughout
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   MOBILE CRASH PREVENTION — CSS level
   Disable GPU-heavy animations on touch screens
───────────────────────────────────────────────────────────── */
@media (pointer: coarse) {
  /* Stop all will-change on mobile */
  * { will-change: auto !important; }

  /* Stop CSS subpage hero animation */
  .page-hero-bg img,
  .page-hero-bg .v24-hero-img {
    animation: none !important;
    transform: scale(1.03) !important;
  }

  /* Stop reserve card glow pulses */
  .v26-rs__cta-card__glow,
  .v26-rs__perks-card__glow,
  .v26-rs__find-card__glow,
  .v39-sidebar-card__glow,
  .v412-info-card__glow {
    animation: none !important;
    opacity: 0 !important;
  }

  /* Stop shine sweep */
  .v26-rs__cta-card__shine {
    display: none !important;
  }

  /* Simplify gradient text animations — reduce repaint */
  .v8-hero__title,
  .section-title,
  .section--dark .section-title,
  .v26-rs__title,
  .v26-rs__cta-card__heading,
  .footer-col-title,
  .stat-number {
    animation-duration: 20s !important;
  }

  /* Simplify button shimmer */
  .v26-rs__main-btn,
  .v26-room-book-btn,
  .btn--primary {
    animation: none !important;
    background-position: 0% !important;
  }

  /* No 3D transforms on hover on mobile */
  .v26-room-card:hover,
  .home-gallery-item:hover,
  .v26-rs__cta-card--featured:hover,
  .v26-rs__perks-card:hover,
  .v26-rs__find-card:hover,
  .v412-info-card:hover,
  .amenity-card:hover,
  .feature-card:hover,
  .experience-card:hover,
  .stat-item:hover {
    transform: translateY(-4px) !important;
  }

  /* Reduce backdrop-filter for performance */
  .v26-rs__cta-card--featured,
  .v26-rs__perks-card,
  .v26-rs__find-card,
  .site-header.header--scrolled {
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
  }
}

/* ─────────────────────────────────────────────────────────────
   BOOKING PAGE v41.2 — Full width layout
───────────────────────────────────────────────────────────── */
.v412-booking-section {
  background: linear-gradient(160deg, #f8f5f2 0%, #fdf9f6 55%, #f5f0eb 100%);
  padding: 3rem 0 5rem;
}

/* ── MAIN FORM CARD — Full width, premium ── */
.v412-form-card {
  background: #ffffff;
  border-radius: 26px;
  padding: 2.8rem 3.2rem;
  margin-bottom: 2rem;
  border: 1px solid rgba(232,87,10,.08);
  border-top: 3px solid #e8570a;
  box-shadow:
    0 2px 6px rgba(2,12,27,.04),
    0 10px 36px rgba(2,12,27,.09),
    0 25px 65px rgba(2,12,27,.05);
  position: relative;
  overflow: hidden;
}

.v412-form-card::before {
  content: '';
  position: absolute;
  top: 0; right: 0;
  width: 350px; height: 350px;
  background: radial-gradient(circle, rgba(232,87,10,.04) 0%, transparent 65%);
  pointer-events: none;
  z-index: 0;
}

.v412-form-card > * { position: relative; z-index: 1; }

/* Form card header */
.v412-form-card__header {
  display: flex;
  align-items: center;
  gap: 1.1rem;
  margin-bottom: 1.2rem;
}

.v412-form-card__icon {
  width: 52px; height: 52px;
  border-radius: 15px;
  background: linear-gradient(135deg, rgba(232,87,10,.12), rgba(232,87,10,.06));
  border: 1.5px solid rgba(232,87,10,.24);
  display: flex;
  align-items: center; justify-content: center;
  flex-shrink: 0;
  box-shadow: 0 3px 14px rgba(232,87,10,.20);
}

.v412-form-card__icon svg { stroke: #e8570a; }

.v412-form-card__eyebrow {
  display: block;
  font-size: .62rem;
  font-weight: 700;
  letter-spacing: .18em;
  text-transform: uppercase;
  background: linear-gradient(110deg, #c94f0e, #ff9f43, #d63031, #ff9f43);
  background-size: 220% auto;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  animation: v26Shimmer 5s linear infinite;
  margin-bottom: .2rem;
}

.v412-form-card__title {
  font-size: 1.65rem;
  font-weight: 600;
  letter-spacing: -.018em;
  color: #020c1b;
  margin: 0;
  line-height: 1.20;
}

.v412-divider {
  margin: 1.2rem 0 1.8rem !important;
}

/* Shortcode wrapper — full width */
.v412-shortcode-wrap {
  width: 100%;
}

.v412-shortcode-wrap .hsr-booking-form,
.v412-shortcode-wrap [class*="booking-form"],
.v412-shortcode-wrap form {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

.v412-shortcode-wrap input,
.v412-shortcode-wrap select,
.v412-shortcode-wrap textarea {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  border-radius: 10px !important;
  border: 1.5px solid rgba(232,87,10,.20) !important;
  transition: border-color .22s, box-shadow .22s !important;
}

.v412-shortcode-wrap input:focus,
.v412-shortcode-wrap select:focus,
.v412-shortcode-wrap textarea:focus {
  border-color: #e8570a !important;
  box-shadow: 0 0 0 3px rgba(232,87,10,.16) !important;
  outline: none !important;
}

.v412-shortcode-wrap [type="submit"],
.v412-shortcode-wrap button[type="submit"] {
  background: linear-gradient(135deg, #c94f0e 0%, #e8570a 40%, #ff9f43 65%, #e8570a 100%) !important;
  background-size: 200% auto !important;
  animation: v26Shimmer 5s linear infinite !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border: none !important;
  border-radius: 12px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  box-shadow: 0 4px 18px rgba(232,87,10,.42) !important;
  transition: transform .22s, box-shadow .22s !important;
}

.v412-shortcode-wrap [type="submit"]:hover,
.v412-shortcode-wrap button[type="submit"]:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 28px rgba(232,87,10,.55) !important;
}

/* Table layouts in shortcode — convert to block */
.v412-shortcode-wrap table {
  width: 100% !important;
  border-collapse: collapse !important;
}

/* Fallback */
.v412-fallback {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  padding: 3rem 2rem;
  text-align: center;
  background: #fafaf9;
  border-radius: 16px;
  border: 1.5px dashed rgba(232,87,10,.22);
}

.v412-fallback__icon { font-size: 2.4rem; }
.v412-fallback h3 { font-size: 1.1rem; font-weight: 600; color: #020c1b; margin: 0; }
.v412-fallback p { color: #666; font-size: .875rem; margin: 0; }
.v412-fallback__actions { display: flex; gap: .8rem; flex-wrap: wrap; justify-content: center; }

/* ── 3 INFO CARDS ROW ── */
.v412-info-row {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 1.4rem;
  align-items: start;
}

/* Info card base */
.v412-info-card {
  border-radius: 22px;
  padding: 1.8rem 2rem;
  position: relative;
  overflow: hidden;
  transition: transform .32s cubic-bezier(.34,1.28,.64,1), box-shadow .28s ease;
}

.v412-info-card:hover {
  transform: translateY(-6px);
}

/* Find booking card — dark glass */
.v412-info-card--find {
  background: linear-gradient(148deg, rgba(4,14,30,.97) 0%, rgba(8,26,55,.95) 100%);
  border: 1px solid rgba(232,87,10,.28);
  border-top: 2px solid rgba(232,87,10,.55);
  box-shadow:
    0 8px 32px rgba(2,12,27,.45),
    0 20px 55px rgba(2,12,27,.28),
    inset 0 1px 0 rgba(255,255,255,.08);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

.v412-info-card--find:hover {
  box-shadow:
    0 14px 48px rgba(2,12,27,.52),
    0 30px 70px rgba(2,12,27,.34),
    0 0 0 1px rgba(232,87,10,.32) !important;
}

/* Help card — warm white */
.v412-info-card--help {
  background: #fff;
  border: 1px solid rgba(232,87,10,.12);
  border-top: 2px solid rgba(232,87,10,.35);
  box-shadow:
    0 4px 16px rgba(2,12,27,.07),
    0 12px 38px rgba(2,12,27,.09);
}

.v412-info-card--help:hover {
  box-shadow:
    0 8px 28px rgba(2,12,27,.10),
    0 20px 52px rgba(2,12,27,.12),
    0 0 0 1px rgba(232,87,10,.18) !important;
}

/* Facts card — light blue-tinted */
.v412-info-card--facts {
  background: linear-gradient(148deg, #f8f5f2 0%, #fff6f0 100%);
  border: 1px solid rgba(232,87,10,.10);
  border-top: 2px solid rgba(232,87,10,.28);
  box-shadow:
    0 4px 14px rgba(2,12,27,.06),
    0 10px 32px rgba(2,12,27,.08);
}

/* Inner glow */
.v412-info-card__glow {
  position: absolute;
  top: -45px; right: -45px;
  width: 180px; height: 180px;
  background: radial-gradient(circle, rgba(232,87,10,.12) 0%, transparent 65%);
  border-radius: 50%;
  pointer-events: none; z-index: 0;
  animation: v34GlowPulse 6s ease-in-out infinite;
}

.v412-info-card > * { position: relative; z-index: 2; }

/* Card head */
.v412-info-card__head {
  display: flex;
  align-items: center;
  gap: .75rem;
  margin-bottom: .7rem;
}

.v412-info-card__icon {
  width: 40px; height: 40px;
  border-radius: 12px;
  display: flex;
  align-items: center; justify-content: center;
  flex-shrink: 0;
}

.v412-info-card--find .v412-info-card__icon {
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.18);
}

.v412-info-card--find .v412-info-card__icon svg {
  stroke: #ff9f43;
  filter: drop-shadow(0 0 5px rgba(232,87,10,.55));
}

.v412-info-card--help .v412-info-card__icon,
.v412-info-card--facts .v412-info-card__icon {
  background: rgba(232,87,10,.10);
  border: 1px solid rgba(232,87,10,.22);
}

.v412-info-card--help .v412-info-card__icon svg,
.v412-info-card--facts .v412-info-card__icon svg {
  stroke: #e8570a;
}

.v412-info-card__title {
  font-size: 1rem;
  font-weight: 700;
  margin: 0;
  letter-spacing: .01em;
}

.v412-info-card--find .v412-info-card__title {
  color: rgba(255,255,255,.92);
  -webkit-text-fill-color: rgba(255,255,255,.92);
}

.v412-info-card--help .v412-info-card__title,
.v412-info-card--facts .v412-info-card__title {
  color: #020c1b;
}

.v412-info-card__desc {
  font-size: .80rem;
  line-height: 1.58;
  margin-bottom: 1rem;
}

.v412-info-card--find .v412-info-card__desc {
  color: rgba(255,255,255,.52);
  -webkit-text-fill-color: rgba(255,255,255,.52);
}

.v412-info-card--help .v412-info-card__desc,
.v412-info-card--facts .v412-info-card__desc {
  color: #666;
}

/* Find booking shortcode dark styling */
.v412-info-card--find .v412-info-card__body input,
.v412-info-card--find .v412-info-card__body select {
  background: rgba(255,255,255,.09) !important;
  border: 1.5px solid rgba(255,255,255,.18) !important;
  border-radius: 10px !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  width: 100% !important;
  box-sizing: border-box !important;
  padding: .62rem .9rem !important;
  font-size: .84rem !important;
}

.v412-info-card--find .v412-info-card__body input::placeholder {
  color: rgba(255,255,255,.35) !important;
}

.v412-info-card--find .v412-info-card__body input:focus,
.v412-info-card--find .v412-info-card__body select:focus {
  border-color: rgba(232,87,10,.65) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(232,87,10,.18) !important;
}

.v412-info-card--find .v412-info-card__body label {
  color: rgba(255,159,67,.65) !important;
  -webkit-text-fill-color: rgba(255,159,67,.65) !important;
  font-size: .68rem !important;
  font-weight: 600 !important;
  letter-spacing: .07em !important;
  text-transform: uppercase !important;
}

.v412-info-card--find .v412-info-card__body [type="submit"],
.v412-info-card--find .v412-info-card__body button[type="submit"] {
  width: 100% !important;
  background: linear-gradient(135deg, #c94f0e 0%, #e8570a 45%, #ff9f43 70%, #e8570a 100%) !important;
  background-size: 200% auto !important;
  animation: v26Shimmer 5s linear infinite !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border: none !important;
  border-radius: 10px !important;
  padding: .72rem 1rem !important;
  font-size: .84rem !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  box-shadow: 0 3px 14px rgba(232,87,10,.42) !important;
  margin-top: .5rem !important;
}

.v412-info-card__note {
  font-size: .80rem;
  color: rgba(255,255,255,.45);
  -webkit-text-fill-color: rgba(255,255,255,.45);
  margin: 0 0 .8rem;
}

/* Contact buttons */
.v412-contacts {
  display: flex;
  flex-direction: column;
  gap: .5rem;
}

.v412-contact-btn {
  display: flex;
  align-items: center;
  gap: .5rem;
  padding: .58rem .8rem;
  border-radius: 10px;
  text-decoration: none;
  font-size: .78rem;
  font-weight: 500;
  border: 1px solid transparent;
  transition: background .2s, border-color .2s, transform .18s;
  word-break: break-all;
}

.v412-contact-btn svg { flex-shrink: 0; }

.v412-contact-btn--phone {
  background: rgba(232,87,10,.08);
  border-color: rgba(232,87,10,.18);
  color: #c94f0e;
}
.v412-contact-btn--phone svg { stroke: #e8570a; }
.v412-contact-btn--phone:hover {
  background: rgba(232,87,10,.14);
  border-color: rgba(232,87,10,.36);
  transform: translateX(3px);
}

.v412-contact-btn--wa {
  background: rgba(37,211,102,.08);
  border-color: rgba(37,211,102,.22);
  color: #1a9e50;
}
.v412-contact-btn--wa svg { fill: #25d366; }
.v412-contact-btn--wa:hover {
  background: rgba(37,211,102,.14);
  border-color: rgba(37,211,102,.38);
  transform: translateX(3px);
}

.v412-contact-btn--email {
  background: rgba(232,87,10,.06);
  border-color: rgba(232,87,10,.12);
  color: #666;
}
.v412-contact-btn--email svg { stroke: #e8570a; }
.v412-contact-btn--email:hover {
  background: rgba(232,87,10,.12);
  border-color: rgba(232,87,10,.28);
  color: #c94f0e;
  transform: translateX(3px);
}

/* Facts grid */
.v412-facts-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: .55rem;
}

.v412-fact {
  display: flex;
  flex-direction: column;
  gap: .12rem;
  padding: .55rem .65rem;
  background: rgba(232,87,10,.06);
  border: 1px solid rgba(232,87,10,.10);
  border-radius: 10px;
}

.v412-fact__emoji { font-size: .9rem; line-height: 1; }
.v412-fact__label {
  font-size: .58rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #999;
}
.v412-fact__val {
  font-size: .80rem;
  font-weight: 600;
  color: #e8570a;
}

/* ─────────────────────────────────────────────────────────────
   RESERVE SECTION — "Book Your Stay Now" button refinement
   Was: heavy gradient, big padding, too much glow
   Now: clean, balanced, premium
───────────────────────────────────────────────────────────── */
.v26-rs__main-btn {
  /* Clean gradient — not too heavy */
  background: linear-gradient(
    135deg,
    #c94f0e 0%,
    #e8570a 38%,
    #ff9f43 58%,
    #e8570a 100%
  ) !important;
  background-size: 200% auto !important;
  animation: v26Shimmer 6s linear infinite !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border: none !important;

  /* Refined sizing */
  padding: .95rem 1.6rem !important;
  font-size: .88rem !important;
  font-weight: 700 !important;
  letter-spacing: .06em !important;
  border-radius: 14px !important;
  width: 100% !important;
  text-align: center !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: .5rem !important;
  text-decoration: none !important;
  cursor: pointer !important;

  /* Lighter shadow */
  box-shadow:
    0 3px 12px rgba(232,87,10,.38),
    0 6px 22px rgba(232,87,10,.20),
    inset 0 1px 0 rgba(255,255,255,.20),
    inset 0 -1px 0 rgba(0,0,0,.12) !important;

  transition: transform .26s cubic-bezier(.34,1.3,.64,1),
              box-shadow .24s ease !important;
}

.v26-rs__main-btn:hover {
  transform: translateY(-2px) scale(1.014) !important;
  box-shadow:
    0 6px 20px rgba(232,87,10,.52),
    0 14px 38px rgba(232,87,10,.28),
    0 0 40px rgba(232,87,10,.12),
    inset 0 1px 0 rgba(255,255,255,.24),
    inset 0 -1px 0 rgba(0,0,0,.14) !important;
}

.v26-rs__main-btn svg {
  stroke: rgba(255,255,255,.90) !important;
  transition: transform .22s !important;
}

.v26-rs__main-btn:hover svg {
  transform: translateX(3px) !important;
}

/* ─────────────────────────────────────────────────────────────
   RESPONSIVE — booking page v41.2
───────────────────────────────────────────────────────────── */
@media (max-width: 1024px) {
  .v412-form-card {
    padding: 2.2rem 2.4rem;
  }
  .v412-info-row {
    grid-template-columns: 1fr 1fr;
    gap: 1.2rem;
  }
  .v412-info-card--facts {
    grid-column: 1 / -1;
  }
  .v412-facts-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 768px) {
  .v412-booking-section { padding: 2rem 0 3.5rem; }
  .v412-form-card {
    padding: 1.6rem 1.4rem;
    border-radius: 18px;
    margin-bottom: 1.4rem;
  }
  .v412-form-card__title { font-size: 1.3rem; }
  .v412-info-row {
    grid-template-columns: 1fr;
    gap: 1rem;
  }
  .v412-info-card--facts { grid-column: auto; }
  .v412-facts-grid { grid-template-columns: 1fr 1fr; }
  .v412-info-card { padding: 1.4rem 1.4rem; }
}

@media (max-width: 480px) {
  .v412-form-card { padding: 1.3rem 1.1rem; }
  .v412-facts-grid { grid-template-columns: 1fr; }
  .v412-contact-btn { font-size: .74rem; }
}

/* ─────────────────────────────────────────────────────────────
   REDUCED MOTION
───────────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  .v412-form-card__eyebrow,
  .v412-shortcode-wrap [type="submit"],
  .v412-info-card--find .v412-info-card__body [type="submit"],
  .v26-rs__main-btn { animation: none !important; }
  .v412-info-card__glow { animation: none !important; opacity: 0 !important; }
  .v26-rs__main-btn:hover { transform: none !important; }
  .v26-rs__main-btn:hover svg { transform: none !important; }
}

/* ── design-v41_v2.css (10,474b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v41.v2
   ──────────────────────────────────────────────────────────────
   F1. Mobile crash — kill ALL CSS animations on touch screens
   F2. Booking page padding — reduced, full content visible
   I1. Booking form — more open, spacious feel
   I2. Overall premium polish improvements
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   F1. MOBILE ANIMATION KILLSWITCH
   25+ simultaneous CSS animations on mobile = GPU overload = crash
   @media (pointer:coarse) targets ALL touch screens
───────────────────────────────────────────────────────────── */
@media (pointer: coarse) {

  /* ── STOP ALL SHIMMER ANIMATIONS ── */
  .v8-hero__title,
  .section-title,
  .section--dark .section-title,
  .virtual-tour-section .section-title,
  .v26-rs__title,
  .v26-rs__cta-card__heading,
  .v26-rs__cta-card__badge,
  .v26-rs__stat-num,
  .v26-rs__price-num,
  .v26-rs__eyebrow,
  .section-label,
  .stat-number,
  .stat-number span,
  .footer-col-title,
  .v26-room-type,
  .v26-price-val,
  .v26-room-img__price-val,
  .gold-divider,
  .v412-form-card__eyebrow,
  .v39-form-card__eyebrow,
  .page-hero .page-hero-title {
    animation: none !important;
    background-position: 0% 50% !important;
  }

  /* ── STOP BUTTON SHIMMER ── */
  .btn--primary,
  .header-book-btn,
  .v26-room-book-btn,
  .v26-rs__main-btn,
  .mobile-book-bar__btn--book,
  .v412-shortcode-wrap [type="submit"],
  .v412-info-card--find .v412-info-card__body [type="submit"],
  .v26-rs__cta-card__badge {
    animation: none !important;
    background-position: 0% !important;
  }

  /* ── STOP CINEMATIC ANIMATIONS ── */
  .page-hero-bg img,
  .page-hero-bg .v24-hero-img,
  .page-hero::after,
  .page-hero::before,
  .page-hero-bg::after {
    animation: none !important;
    transform: scale(1.03) !important;
    will-change: auto !important;
  }

  /* ── STOP GLOW PULSES ── */
  .v26-rs__cta-card__glow,
  .v26-rs__cta-card__shine,
  .v26-rs__perks-card__glow,
  .v26-rs__find-card__glow,
  .v412-info-card__glow,
  .v39-sidebar-card__glow,
  .v13-preloader__fill {
    animation: none !important;
    opacity: 0 !important;
  }

  /* ── STOP HERO TITLE PULSE ── */
  @keyframes v27TitlePulse { 0%,100% { letter-spacing: -.015em; } }

  /* ── SIMPLIFY GRADIENT TEXT — solid color on mobile ── */
  .v8-hero__title {
    -webkit-text-fill-color: #ff9f43 !important;
    background: none !important;
    color: #ff9f43 !important;
    filter: drop-shadow(0 2px 12px rgba(0,0,0,.70)) !important;
  }

  .section-title {
    -webkit-text-fill-color: #020c1b !important;
    background: none !important;
    color: #020c1b !important;
    filter: none !important;
  }

  .section--dark .section-title,
  .virtual-tour-section .section-title {
    -webkit-text-fill-color: #ff9f43 !important;
    background: none !important;
    color: #ff9f43 !important;
    filter: none !important;
  }

  .section-label {
    -webkit-text-fill-color: #e8570a !important;
    background: none !important;
    color: #e8570a !important;
    animation: none !important;
  }

  .stat-number,
  .stat-number span {
    -webkit-text-fill-color: #e8570a !important;
    background: none !important;
    color: #e8570a !important;
    filter: none !important;
  }

  .footer-col-title {
    -webkit-text-fill-color: #ff9f43 !important;
    background: none !important;
    color: #ff9f43 !important;
    filter: none !important;
  }

  .v26-rs__title {
    -webkit-text-fill-color: #fff !important;
    background: none !important;
    color: #fff !important;
    filter: none !important;
  }

  .gold-divider {
    background: linear-gradient(
      90deg, transparent, #e8570a 25%, #ff9f43 50%, #e8570a 75%, transparent
    ) !important;
    animation: none !important;
  }

  /* ── CLEAR will-change EVERYWHERE ── */
  *, *::before, *::after {
    will-change: auto !important;
  }

  /* ── SIMPLE HOVER — no 3D, minimal transform ── */
  .v26-room-card:hover,
  .v8-room-card:hover,
  .home-gallery-item:hover,
  .amenity-card:hover,
  .feature-card:hover,
  .experience-card:hover,
  .stat-item:hover,
  .v26-rs__cta-card--featured:hover,
  .v26-rs__perks-card:hover,
  .v26-rs__find-card:hover,
  .v412-info-card:hover,
  .v39-sidebar-card:hover {
    transform: none !important;
  }

  /* ── SAFE BACKDROP FILTER ── */
  .v26-rs__cta-card--featured,
  .v26-rs__perks-card,
  .v26-rs__find-card,
  .v412-info-card--find,
  .site-header.header--scrolled,
  .site-header.scrolled,
  .scroll-to-top {
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }
}

/* ─────────────────────────────────────────────────────────────
   F2. BOOKING PAGE PADDING FIX
   Was: 2.8rem 3.2rem — too large, content cut on small screens
   Now: compact but spacious, all content visible
───────────────────────────────────────────────────────────── */

/* Form card — reduced padding */
.v412-form-card {
  padding: 2rem 2.2rem !important;
  border-radius: 22px !important;
}

/* Section padding — tighter */
.v412-booking-section {
  padding: 2.5rem 0 4rem !important;
}

/* Info cards — comfortable not cramped */
.v412-info-card {
  padding: 1.5rem 1.6rem !important;
}

/* Facts grid — cleaner */
.v412-facts-grid {
  gap: .45rem !important;
}

/* Perks bar — compact */
.v26-booking-perks-bar {
  padding: .8rem 0 !important;
}

.v26-booking-perks-bar__item {
  padding: .35rem 1rem !important;
  font-size: .70rem !important;
}

/* Form card header — tighter */
.v412-form-card__header {
  margin-bottom: 1rem !important;
}

.v412-divider {
  margin: 1rem 0 1.4rem !important;
}

/* Shortcode wrapper — give breathing room */
.v412-shortcode-wrap {
  padding: 0 !important;
}

/* Info row gap */
.v412-info-row {
  gap: 1.2rem !important;
  margin-top: 0 !important;
}

/* ─────────────────────────────────────────────────────────────
   I1. BOOKING FORM CARD — more open, premium
───────────────────────────────────────────────────────────── */

/* Form card top border — animated orange line */
.v412-form-card {
  border-top: 0 !important;
  position: relative !important;
}

.v412-form-card::after {
  content: '' !important;
  position: absolute !important;
  top: 0 !important; left: 0 !important; right: 0 !important;
  height: 3px !important;
  background: linear-gradient(
    90deg,
    transparent  0%,
    #c94f0e     12%,
    #e8570a     30%,
    #ff9f43     48%,
    #e8570a     66%,
    #d63031     84%,
    transparent 100%
  ) !important;
  border-radius: 22px 22px 0 0 !important;
  box-shadow:
    0 0 12px rgba(232,87,10,.55),
    0 0 30px rgba(232,87,10,.22) !important;
}

@media (pointer: coarse) {
  .v412-form-card::after { box-shadow: none !important; }
}

/* ─────────────────────────────────────────────────────────────
   I2. GLOBAL IMPROVEMENTS
───────────────────────────────────────────────────────────── */

/* Section label spacing */
.section-label {
  margin-bottom: .8rem !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: .5rem !important;
}

/* Hero subtitle line height */
.v8-hero__subtitle,
.hero-subtitle {
  line-height: 1.65 !important;
}

/* Page hero subtitle spacing */
.page-hero-subtitle {
  line-height: 1.65 !important;
  margin-top: .6rem !important;
}

/* Room card content padding consistency */
.v26-room-content {
  padding: 1.5rem 1.6rem !important;
}

/* About section text flow */
.about-snippet p,
.about-text p {
  line-height: 1.75 !important;
  color: #444 !important;
}

/* Footer copyright line */
.footer-bottom p {
  font-size: .78rem !important;
  color: rgba(255,255,255,.45) !important;
  -webkit-text-fill-color: rgba(255,255,255,.45) !important;
}

/* Scrollbar — thinner */
::-webkit-scrollbar { width: 4px !important; height: 4px !important; }

/* ─────────────────────────────────────────────────────────────
   RESPONSIVE BOOKING PADDING
───────────────────────────────────────────────────────────── */
@media (max-width: 1024px) {
  .v412-form-card { padding: 1.8rem 2rem !important; }
  .v412-booking-section { padding: 2rem 0 3.5rem !important; }
}

@media (max-width: 768px) {
  .v412-form-card { padding: 1.4rem 1.2rem !important; }
  .v412-form-card__title { font-size: 1.25rem !important; }
  .v412-info-card { padding: 1.3rem 1.3rem !important; }
  .v412-booking-section { padding: 1.5rem 0 3rem !important; }
}

@media (max-width: 480px) {
  .v412-form-card { padding: 1.2rem 1rem !important; }
  .v412-form-card__header { flex-direction: column !important; align-items: flex-start !important; gap: .7rem !important; }
  .v412-facts-grid { grid-template-columns: 1fr 1fr !important; }
}

/* ── design-v42.css (24,512b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v42
   BOOKING PLUGIN COMPLETE OVERRIDE
   ──────────────────────────────────────────────────────────────
   The HSR booking plugin renders its own dark-green themed UI.
   This file overrides every plugin element to match our brand:
   — White/light background (plugin uses dark green)
   — Visible text (plugin text was hard to read on white page)
   — Brand orange accents instead of plugin's gold
   — Clean form fields with proper sizing
   — Booking summary panel styled properly
   — Full width usage, no wasted space
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   PLUGIN OUTER WRAPPER — remove dark green background
───────────────────────────────────────────────────────────── */

/* Plugin main container — all possible wrapper class names */
.hsr-booking-form,
.hsr-booking-form-wrap,
.hsr-booking-widget,
.hsr-availability-form,
.hsr-booking-container,
.hsr-booking-section,
[class*="hsr-booking"],
[class*="hsr-availability"],
[class*="hsr-search"] {
  background: transparent !important;
  background-color: transparent !important;
  color: #020c1b !important;
  -webkit-text-fill-color: #020c1b !important;
  font-family: inherit !important;
  max-width: 100% !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

/* Remove plugin's own box/card styling */
.hsr-booking-form > .hsr-card,
.hsr-booking-form > div:first-child,
.hsr-booking-widget > div,
.hsr-booking-container > .hsr-inner,
[class*="hsr-booking"] > [class*="hsr-card"],
[class*="hsr-booking"] > [class*="hsr-wrap"] {
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

/* ── Remove plugin header / hotel name branding ── */
.hsr-booking-form h1,
.hsr-booking-form h2,
.hsr-booking-form h3,
.hsr-booking-widget h1,
.hsr-booking-widget h2,
.hsr-booking-widget h3,
[class*="hsr-"] .hsr-hotel-name,
[class*="hsr-"] .hsr-brand,
[class*="hsr-branding"],
[class*="hsr-header"] {
  display: none !important;
}

/* ── Override any inline dark colors ── */
.hsr-booking-form *,
.hsr-booking-widget *,
[class*="hsr-booking"] *,
[class*="hsr-availability"] * {
  font-family: inherit !important;
}

/* ─────────────────────────────────────────────────────────────
   FORM LAYOUT — horizontal row, full width
───────────────────────────────────────────────────────────── */
.hsr-form-row,
.hsr-search-row,
.hsr-fields-row,
[class*="hsr-form-row"],
[class*="hsr-fields"],
[class*="hsr-search-row"] {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: .85rem !important;
  align-items: flex-end !important;
  width: 100% !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
}

.hsr-form-group,
.hsr-field-group,
[class*="hsr-field"],
[class*="hsr-group"] {
  flex: 1 !important;
  min-width: 140px !important;
  background: transparent !important;
}

/* ─────────────────────────────────────────────────────────────
   FORM LABELS
───────────────────────────────────────────────────────────── */
.hsr-booking-form label,
.hsr-booking-widget label,
[class*="hsr-"] label {
  display: block !important;
  font-size: .65rem !important;
  font-weight: 700 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  color: #e8570a !important;
  -webkit-text-fill-color: #e8570a !important;
  margin-bottom: .35rem !important;
}

/* ─────────────────────────────────────────────────────────────
   FORM INPUTS + SELECTS — brand styled
───────────────────────────────────────────────────────────── */
.hsr-booking-form input[type="text"],
.hsr-booking-form input[type="date"],
.hsr-booking-form input[type="number"],
.hsr-booking-form input[type="email"],
.hsr-booking-form select,
.hsr-booking-widget input[type="text"],
.hsr-booking-widget input[type="date"],
.hsr-booking-widget input[type="number"],
.hsr-booking-widget select,
[class*="hsr-booking"] input,
[class*="hsr-booking"] select,
[class*="hsr-availability"] input,
[class*="hsr-availability"] select,
[class*="hsr-search"] input,
[class*="hsr-search"] select {
  background: #fff !important;
  background-color: #fff !important;
  border: 1.5px solid rgba(232,87,10,.22) !important;
  border-radius: 10px !important;
  color: #020c1b !important;
  -webkit-text-fill-color: #020c1b !important;
  padding: .78rem 1rem !important;
  font-size: .88rem !important;
  font-weight: 500 !important;
  width: 100% !important;
  box-sizing: border-box !important;
  font-family: inherit !important;
  transition: border-color .22s, box-shadow .22s !important;
  appearance: auto !important;
  -webkit-appearance: auto !important;
  box-shadow: 0 1px 4px rgba(2,12,27,.06) !important;
}

.hsr-booking-form input::placeholder,
.hsr-booking-widget input::placeholder,
[class*="hsr-booking"] input::placeholder {
  color: #aaa !important;
  opacity: 1 !important;
}

.hsr-booking-form input:focus,
.hsr-booking-form select:focus,
.hsr-booking-widget input:focus,
.hsr-booking-widget select:focus,
[class*="hsr-booking"] input:focus,
[class*="hsr-booking"] select:focus {
  border-color: #e8570a !important;
  box-shadow:
    0 0 0 3px rgba(232,87,10,.16),
    0 2px 8px rgba(232,87,10,.10) !important;
  outline: none !important;
}

/* Date input calendar icon */
.hsr-booking-form input[type="date"]::-webkit-calendar-picker-indicator {
  opacity: .6 !important;
  cursor: pointer !important;
}

/* ─────────────────────────────────────────────────────────────
   SEARCH / SUBMIT BUTTON — brand orange
───────────────────────────────────────────────────────────── */
.hsr-booking-form button,
.hsr-booking-form [type="submit"],
.hsr-booking-form .hsr-search-btn,
.hsr-booking-form .hsr-btn,
.hsr-booking-widget button[type="submit"],
.hsr-booking-widget .hsr-search-btn,
[class*="hsr-booking"] button[type="submit"],
[class*="hsr-booking"] .hsr-search-btn,
[class*="hsr-booking"] .hsr-btn,
[class*="hsr-search"] button,
[class*="hsr-search"] [type="submit"] {
  background: linear-gradient(
    135deg, #c94f0e 0%, #e8570a 38%, #ff9f43 58%, #e8570a 100%
  ) !important;
  background-size: 200% auto !important;
  animation: v26Shimmer 5s linear infinite !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border: none !important;
  border-radius: 12px !important;
  padding: .82rem 2rem !important;
  font-size: .90rem !important;
  font-weight: 700 !important;
  letter-spacing: .05em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  white-space: nowrap !important;
  box-shadow:
    0 3px 14px rgba(232,87,10,.42),
    inset 0 1px 0 rgba(255,255,255,.20) !important;
  transition: transform .24s cubic-bezier(.34,1.3,.64,1),
              box-shadow .22s ease !important;
  font-family: inherit !important;
}

.hsr-booking-form button:hover,
.hsr-booking-form [type="submit"]:hover,
.hsr-booking-form .hsr-search-btn:hover,
[class*="hsr-booking"] button[type="submit"]:hover,
[class*="hsr-booking"] .hsr-search-btn:hover {
  transform: translateY(-2px) scale(1.014) !important;
  box-shadow:
    0 6px 22px rgba(232,87,10,.55),
    0 14px 38px rgba(232,87,10,.28) !important;
}

/* ─────────────────────────────────────────────────────────────
   BOOKING SUMMARY PANEL — right side panel
───────────────────────────────────────────────────────────── */
.hsr-booking-summary,
.hsr-summary-panel,
.hsr-summary-card,
.hsr-booking-summary-wrap,
[class*="hsr-summary"],
[class*="hsr-booking-sum"] {
  background: linear-gradient(
    148deg, rgba(4,14,30,.97) 0%, rgba(8,26,55,.95) 100%
  ) !important;
  border: 1px solid rgba(232,87,10,.28) !important;
  border-top: 2px solid rgba(232,87,10,.55) !important;
  border-radius: 18px !important;
  padding: 1.6rem 1.8rem !important;
  color: rgba(255,255,255,.90) !important;
  -webkit-text-fill-color: rgba(255,255,255,.90) !important;
  box-shadow:
    0 8px 32px rgba(2,12,27,.45),
    0 20px 55px rgba(2,12,27,.28),
    inset 0 1px 0 rgba(255,255,255,.08) !important;
}

/* Summary title "YOUR BOOKING SUMMARY" */
.hsr-booking-summary h3,
.hsr-booking-summary h4,
.hsr-summary-panel h3,
.hsr-summary-panel h4,
[class*="hsr-summary"] h3,
[class*="hsr-summary"] h4,
[class*="hsr-summary"] .hsr-summary-title,
[class*="hsr-summary"] .hsr-title {
  font-size: .70rem !important;
  font-weight: 700 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
  background: linear-gradient(110deg, #c94f0e, #ff9f43, #d63031, #ff9f43) !important;
  background-size: 220% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v26Shimmer 5s linear infinite !important;
  margin-bottom: 1rem !important;
  border-bottom: 1px solid rgba(232,87,10,.18) !important;
  padding-bottom: .7rem !important;
}

/* Summary rows */
.hsr-summary-row,
.hsr-summary-item,
[class*="hsr-summary"] .hsr-row,
[class*="hsr-summary"] tr,
[class*="hsr-summary"] li {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  padding: .45rem 0 !important;
  border-bottom: 1px solid rgba(255,255,255,.06) !important;
}

/* Summary labels */
.hsr-summary-label,
[class*="hsr-summary"] td:first-child,
[class*="hsr-summary"] .hsr-label,
[class*="hsr-summary"] th {
  font-size: .78rem !important;
  color: rgba(255,255,255,.55) !important;
  -webkit-text-fill-color: rgba(255,255,255,.55) !important;
  font-weight: 500 !important;
}

/* Summary values */
.hsr-summary-value,
[class*="hsr-summary"] td:last-child,
[class*="hsr-summary"] .hsr-value {
  font-size: .84rem !important;
  color: rgba(255,255,255,.92) !important;
  -webkit-text-fill-color: rgba(255,255,255,.92) !important;
  font-weight: 600 !important;
  text-align: right !important;
}

/* "Pay on Arrival" note */
.hsr-pay-note,
[class*="hsr-summary"] .hsr-note,
[class*="hsr-summary"] .hsr-pay {
  font-size: .72rem !important;
  color: #ff9f43 !important;
  -webkit-text-fill-color: #ff9f43 !important;
  text-align: center !important;
  margin-top: .8rem !important;
  padding-top: .8rem !important;
  border-top: 1px solid rgba(232,87,10,.18) !important;
}

/* ─────────────────────────────────────────────────────────────
   NIGHT SUMMARY BAR — "1 Night · Mon 4 May → Tue 5 May"
───────────────────────────────────────────────────────────── */
.hsr-nights-bar,
.hsr-duration-bar,
.hsr-date-summary,
[class*="hsr-nights"],
[class*="hsr-duration"],
[class*="hsr-date-bar"] {
  background: rgba(232,87,10,.08) !important;
  border: 1px solid rgba(232,87,10,.20) !important;
  border-radius: 50px !important;
  padding: .6rem 1.5rem !important;
  text-align: center !important;
  font-size: .84rem !important;
  font-weight: 600 !important;
  color: #020c1b !important;
  -webkit-text-fill-color: #020c1b !important;
  margin: 1rem 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: .5rem !important;
}

/* ─────────────────────────────────────────────────────────────
   TRUST CHECKMARKS ROW — "Free cancellation · Best rate..."
───────────────────────────────────────────────────────────── */
.hsr-trust-row,
.hsr-checkmarks,
.hsr-guarantees,
[class*="hsr-trust"],
[class*="hsr-check-row"],
[class*="hsr-guarantee"] {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: .5rem 1.5rem !important;
  justify-content: center !important;
  padding: .8rem 0 !important;
  border-top: 1px solid rgba(0,0,0,.06) !important;
  margin-top: .8rem !important;
}

.hsr-trust-row span,
.hsr-checkmarks span,
[class*="hsr-trust"] span,
[class*="hsr-check-row"] span {
  font-size: .74rem !important;
  color: #555 !important;
  -webkit-text-fill-color: #555 !important;
  display: flex !important;
  align-items: center !important;
  gap: .3rem !important;
}

.hsr-trust-row span::before,
.hsr-checkmarks span::before,
[class*="hsr-trust"] span::before {
  content: '✓' !important;
  color: #e8570a !important;
  font-weight: 700 !important;
}

/* ─────────────────────────────────────────────────────────────
   ROOM RESULTS — Step 2: Choose Your Room
───────────────────────────────────────────────────────────── */
.hsr-rooms-list,
.hsr-room-results,
.hsr-results,
[class*="hsr-rooms-list"],
[class*="hsr-room-results"] {
  background: transparent !important;
  padding: 0 !important;
}

/* Step header "02 Choose Your Room" */
.hsr-step-header,
.hsr-section-header,
[class*="hsr-step"] {
  background: transparent !important;
  padding: 1.5rem 0 1rem !important;
  border-bottom: 1px solid rgba(232,87,10,.12) !important;
  margin-bottom: 1.5rem !important;
}

.hsr-step-header h2,
.hsr-step-header h3,
[class*="hsr-step"] h2,
[class*="hsr-step"] h3 {
  display: block !important;
  font-size: 1.4rem !important;
  font-weight: 600 !important;
  color: #020c1b !important;
  -webkit-text-fill-color: #020c1b !important;
}

/* Room card in results */
.hsr-room-card,
.hsr-room-item,
[class*="hsr-room-card"],
[class*="hsr-room-item"] {
  background: #fff !important;
  border: 1px solid rgba(232,87,10,.10) !important;
  border-radius: 16px !important;
  overflow: hidden !important;
  margin-bottom: 1.2rem !important;
  box-shadow: 0 4px 18px rgba(2,12,27,.08) !important;
  transition: transform .3s, box-shadow .3s !important;
}

.hsr-room-card:hover,
.hsr-room-item:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 8px 32px rgba(2,12,27,.14), 0 0 0 1px rgba(232,87,10,.20) !important;
}

/* Room name in results */
.hsr-room-card h3,
.hsr-room-item h3,
.hsr-room-name,
[class*="hsr-room"] .hsr-name {
  font-size: 1.1rem !important;
  font-weight: 600 !important;
  color: #020c1b !important;
  -webkit-text-fill-color: #020c1b !important;
}

/* Room price */
.hsr-room-price,
.hsr-price,
[class*="hsr-price"] {
  color: #e8570a !important;
  -webkit-text-fill-color: #e8570a !important;
  font-weight: 700 !important;
  font-size: 1.2rem !important;
}

/* Book room button */
.hsr-room-card .hsr-btn,
.hsr-room-card button,
.hsr-room-item .hsr-btn,
.hsr-room-item button,
[class*="hsr-room"] .hsr-book-btn,
[class*="hsr-room"] [class*="hsr-btn"] {
  background: linear-gradient(
    135deg, #c94f0e 0%, #e8570a 40%, #ff9f43 65%, #e8570a 100%
  ) !important;
  background-size: 200% auto !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border: none !important;
  border-radius: 10px !important;
  padding: .65rem 1.4rem !important;
  font-size: .84rem !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  transition: transform .22s, box-shadow .22s !important;
}

.hsr-room-card .hsr-btn:hover,
.hsr-room-item .hsr-btn:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 20px rgba(232,87,10,.45) !important;
}

/* "Change Dates" button */
.hsr-change-dates,
.hsr-change-btn,
[class*="hsr-change"] {
  background: transparent !important;
  border: 1.5px solid rgba(232,87,10,.35) !important;
  border-radius: 8px !important;
  color: #e8570a !important;
  -webkit-text-fill-color: #e8570a !important;
  font-size: .78rem !important;
  font-weight: 600 !important;
  padding: .5rem 1rem !important;
  cursor: pointer !important;
  transition: background .22s, border-color .22s !important;
}

.hsr-change-dates:hover,
.hsr-change-btn:hover {
  background: rgba(232,87,10,.08) !important;
  border-color: rgba(232,87,10,.65) !important;
}

/* Step number circle "02" */
.hsr-step-num,
.hsr-step-number,
[class*="hsr-step-num"] {
  background: linear-gradient(135deg, #c94f0e, #e8570a) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-weight: 700 !important;
  border-radius: 8px !important;
  width: 36px !important; height: 36px !important;
  display: inline-flex !important;
  align-items: center !important; justify-content: center !important;
  font-size: .85rem !important;
}

/* ─────────────────────────────────────────────────────────────
   CHECK BOOKING SHORTCODE — [hsr_check_booking]
───────────────────────────────────────────────────────────── */
.hsr-check-booking,
.hsr-check-booking-form,
[class*="hsr-check-booking"] {
  background: transparent !important;
}

.hsr-check-booking input,
.hsr-check-booking-form input,
[class*="hsr-check-booking"] input {
  background: rgba(255,255,255,.09) !important;
  border: 1.5px solid rgba(255,255,255,.20) !important;
  border-radius: 10px !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  padding: .70rem 1rem !important;
  font-size: .85rem !important;
  width: 100% !important;
  box-sizing: border-box !important;
  font-family: inherit !important;
}

.hsr-check-booking input::placeholder,
.hsr-check-booking-form input::placeholder {
  color: rgba(255,255,255,.38) !important;
  opacity: 1 !important;
}

.hsr-check-booking input:focus,
.hsr-check-booking-form input:focus {
  border-color: rgba(232,87,10,.65) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(232,87,10,.18) !important;
}

.hsr-check-booking label,
.hsr-check-booking-form label {
  color: rgba(255,159,67,.68) !important;
  -webkit-text-fill-color: rgba(255,159,67,.68) !important;
  font-size: .68rem !important;
  font-weight: 700 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  margin-bottom: .35rem !important;
  display: block !important;
}

.hsr-check-booking [type="submit"],
.hsr-check-booking-form [type="submit"],
.hsr-check-booking button[type="submit"],
[class*="hsr-check-booking"] [type="submit"] {
  width: 100% !important;
  background: linear-gradient(135deg, #c94f0e 0%, #e8570a 40%, #ff9f43 65%, #e8570a 100%) !important;
  background-size: 200% auto !important;
  animation: v26Shimmer 5s linear infinite !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border: none !important;
  border-radius: 10px !important;
  padding: .75rem 1rem !important;
  font-size: .85rem !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  box-shadow: 0 3px 14px rgba(232,87,10,.42) !important;
  margin-top: .6rem !important;
  transition: transform .22s, box-shadow .22s !important;
  font-family: inherit !important;
}

.hsr-check-booking [type="submit"]:hover,
.hsr-check-booking-form [type="submit"]:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 22px rgba(232,87,10,.55) !important;
}

/* ─────────────────────────────────────────────────────────────
   AVAILABILITY PAGE — [hsr_availability]
───────────────────────────────────────────────────────────── */
.hsr-availability-wrap,
.hsr-availability,
[class*="hsr-availability"] {
  background: transparent !important;
  color: #020c1b !important;
  -webkit-text-fill-color: #020c1b !important;
}

/* ─────────────────────────────────────────────────────────────
   MOBILE RESPONSIVE
───────────────────────────────────────────────────────────── */
@media (max-width: 768px) {
  .hsr-form-row,
  .hsr-search-row,
  [class*="hsr-form-row"],
  [class*="hsr-fields"] {
    flex-direction: column !important;
    gap: .7rem !important;
  }

  .hsr-form-group,
  .hsr-field-group,
  [class*="hsr-field"],
  [class*="hsr-group"] {
    min-width: 100% !important;
  }

  .hsr-booking-form button,
  .hsr-booking-form [type="submit"],
  [class*="hsr-booking"] button[type="submit"] {
    width: 100% !important;
    margin-top: .5rem !important;
  }

  .hsr-booking-summary,
  [class*="hsr-summary"] {
    margin-top: 1.5rem !important;
  }
}

/* ─────────────────────────────────────────────────────────────
   MOBILE ANIMATION KILLSWITCH FOR NEW ELEMENTS
───────────────────────────────────────────────────────────── */
@media (pointer: coarse) {
  .hsr-booking-form button,
  .hsr-booking-form [type="submit"],
  .hsr-room-card .hsr-btn,
  .hsr-check-booking [type="submit"],
  [class*="hsr-booking"] button[type="submit"],
  [class*="hsr-summary"] h3 {
    animation: none !important;
    background-position: 0% !important;
  }
}

/* ─────────────────────────────────────────────────────────────
   REDUCED MOTION
───────────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  .hsr-booking-form button,
  .hsr-booking-form [type="submit"],
  .hsr-check-booking [type="submit"],
  [class*="hsr-summary"] h3 {
    animation: none !important;
  }
}

/* ── design-v01.css (39,469b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v01
   REVOLUTIONARY NEW DESIGN SYSTEM
   ──────────────────────────────────────────────────────────────
   Concept: "Himalayan Editorial Luxury"
   — Inspired by: luxury travel magazines, mountain dawn light
   — Typography: Fraunces (optical serif) + Plus Jakarta Sans
   — Colors: Logo red · Sunrise orange · Sky blue · Deep night
   — Layout: Asymmetric, editorial, generous negative space
   — Feel: 10× more premium, modern, memorable
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   DESIGN TOKENS — Complete new color & type system
───────────────────────────────────────────────────────────── */
:root {
  /* Brand colors — from logo */
  --v01-red:          #C0392B;   /* Deep logo red */
  --v01-red-lt:       #E74C3C;   /* Bright red */
  --v01-red-dk:       #922B21;   /* Dark crimson */
  --v01-sunrise:      #E8570A;   /* Sunrise orange (primary) */
  --v01-sunrise-lt:   #FF9F43;   /* Light orange glow */
  --v01-sunrise-dk:   #C94F0E;   /* Deep burnt orange */
  --v01-sky:          #1A6FA8;   /* Sky blue (from logo) */
  --v01-sky-lt:       #3498DB;   /* Bright sky */
  --v01-sky-dk:       #0F4C75;   /* Deep sky */
  --v01-sky-pale:     #EBF5FB;   /* Pale sky wash */
  --v01-night:        #060E1A;   /* Deepest night */
  --v01-deep:         #0A1628;   /* Deep navy */
  --v01-navy:         #0F2240;   /* Rich navy */
  --v01-coal:         #1C1C1E;   /* Near black text */
  --v01-slate:        #3D4A5C;   /* Mid slate */
  --v01-stone:        #8896A8;   /* Muted stone */
  --v01-pearl:        #F8F4F0;   /* Warm pearl bg */
  --v01-cream:        #FDF9F6;   /* Cream white */
  --v01-white:        #FFFFFF;

  /* Gradients */
  --v01-grad-sunrise: linear-gradient(135deg, var(--v01-red-dk) 0%, var(--v01-sunrise) 45%, var(--v01-sunrise-lt) 100%);
  --v01-grad-sky:     linear-gradient(135deg, var(--v01-sky-dk) 0%, var(--v01-sky) 55%, var(--v01-sky-lt) 100%);
  --v01-grad-dawn:    linear-gradient(160deg, var(--v01-night) 0%, var(--v01-navy) 40%, var(--v01-sky-dk) 70%, var(--v01-red-dk) 100%);
  --v01-grad-hero:    linear-gradient(175deg, #060E1A 0%, #0A1628 30%, #0F2240 55%, #1A6FA8 80%, #E8570A 100%);
  --v01-grad-warm:    linear-gradient(135deg, #FDF9F6 0%, #FFF0E8 50%, #FFE5D0 100%);

  /* Typography */
  --v01-font-display: 'Fraunces', 'Cormorant Garant', Georgia, serif;
  --v01-font-body:    'Plus Jakarta Sans', 'DM Sans', system-ui, sans-serif;

  /* Spacing scale */
  --v01-space-xs: .5rem;
  --v01-space-sm: 1rem;
  --v01-space-md: 2rem;
  --v01-space-lg: 4rem;
  --v01-space-xl: 7rem;

  /* Radius */
  --v01-r-sm:  8px;
  --v01-r-md:  16px;
  --v01-r-lg:  24px;
  --v01-r-xl:  36px;
  --v01-r-pill: 100px;

  /* Shadows */
  --v01-shadow-sm: 0 2px 8px rgba(6,14,26,.08), 0 1px 3px rgba(6,14,26,.05);
  --v01-shadow-md: 0 8px 32px rgba(6,14,26,.12), 0 4px 12px rgba(6,14,26,.07);
  --v01-shadow-lg: 0 24px 64px rgba(6,14,26,.18), 0 8px 24px rgba(6,14,26,.10);
  --v01-shadow-xl: 0 48px 100px rgba(6,14,26,.24), 0 16px 40px rgba(6,14,26,.14);
  --v01-glow-sunrise: 0 0 40px rgba(232,87,10,.35), 0 0 80px rgba(232,87,10,.15);
  --v01-glow-sky:     0 0 40px rgba(26,111,168,.35), 0 0 80px rgba(26,111,168,.15);
  --v01-glow-red:     0 0 30px rgba(192,57,43,.40), 0 0 60px rgba(192,57,43,.18);
}

/* ─────────────────────────────────────────────────────────────
   GLOBAL TYPOGRAPHY OVERRIDE
───────────────────────────────────────────────────────────── */
body {
  font-family: var(--v01-font-body) !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
  background: var(--v01-cream) !important;
  color: var(--v01-coal) !important;
}

/* Display/heading font — Fraunces */
h1, h2, h3,
.section-title,
.v8-hero__title,
.page-hero-title,
.v26-rs__title,
.v26-rs__cta-card__heading,
.v26-room-title,
.footer-col-title,
.v412-form-card__title,
.v412-info-card__title {
  font-family: var(--v01-font-display) !important;
  font-optical-sizing: auto !important;
}

/* Body font */
p, li, a, span, label, input, select, textarea, button,
.section-subtitle, .v8-hero__subtitle, .page-hero-subtitle {
  font-family: var(--v01-font-body) !important;
}

/* ─────────────────────────────────────────────────────────────
   SITE BACKGROUND — Warm cream with texture
───────────────────────────────────────────────────────────── */
body {
  background-color: var(--v01-cream) !important;
  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='60' height='60' filter='url(%23n)' opacity='.022'/%3E%3C/svg%3E") !important;
}

/* ─────────────────────────────────────────────────────────────
   SITE HEADER — Complete redesign
   Transparent on hero, crisp glass on scroll
───────────────────────────────────────────────────────────── */
.site-header {
  border-bottom: 1px solid transparent !important;
  transition:
    background .4s ease,
    border-color .4s ease,
    box-shadow .4s ease !important;
}

/* Scrolled state — clean white glass */
.site-header.header--scrolled,
.site-header.scrolled {
  background: rgba(253,249,246,.94) !important;
  border-bottom-color: rgba(232,87,10,.12) !important;
  backdrop-filter: blur(20px) saturate(180%) !important;
  -webkit-backdrop-filter: blur(20px) saturate(180%) !important;
  box-shadow:
    0 1px 0 rgba(232,87,10,.08),
    0 4px 24px rgba(6,14,26,.08) !important;
}

/* Nav links */
.main-nav a,
.site-nav a,
#main-navigation a {
  font-family: var(--v01-font-body) !important;
  font-size: .78rem !important;
  font-weight: 600 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  color: rgba(255,255,255,.88) !important;
  -webkit-text-fill-color: rgba(255,255,255,.88) !important;
  text-decoration: none !important;
  transition: color .22s !important;
}

.site-header.header--scrolled .main-nav a,
.site-header.scrolled .main-nav a {
  color: var(--v01-coal) !important;
  -webkit-text-fill-color: var(--v01-coal) !important;
}

.main-nav a:hover,
.main-nav .current-menu-item > a {
  color: var(--v01-sunrise) !important;
  -webkit-text-fill-color: var(--v01-sunrise) !important;
}

/* Book Now header button — sky blue */
.header-book-btn {
  background: var(--v01-grad-sky) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border: none !important;
  border-radius: var(--v01-r-pill) !important;
  padding: .55rem 1.5rem !important;
  font-size: .75rem !important;
  font-weight: 700 !important;
  letter-spacing: .07em !important;
  text-transform: uppercase !important;
  box-shadow: 0 4px 18px rgba(26,111,168,.40), inset 0 1px 0 rgba(255,255,255,.22) !important;
  transition: transform .24s cubic-bezier(.34,1.3,.64,1), box-shadow .22s !important;
  animation: none !important;
}

.header-book-btn:hover {
  transform: translateY(-2px) scale(1.04) !important;
  box-shadow: 0 8px 28px rgba(26,111,168,.55), 0 0 40px rgba(26,111,168,.20) !important;
}

/* ─────────────────────────────────────────────────────────────
   HERO SECTION — Dramatic editorial redesign
───────────────────────────────────────────────────────────── */

/* Hero title — Fraunces optical size, elegant weight */
.v8-hero__title {
  font-family: var(--v01-font-display) !important;
  font-size: clamp(2.2rem, 5.5vw, 5rem) !important;
  font-weight: 400 !important;   /* Fraunces is beautiful at 400 */
  font-style: italic !important; /* Optical italic for luxury feel */
  letter-spacing: -.02em !important;
  line-height: 1.08 !important;
  background: linear-gradient(
    118deg,
    #ffffff    0%,
    #ffe8d4   16%,
    #FF9F43   30%,
    #ffffff   44%,
    #EBF5FB   56%,
    #3498DB   68%,
    #ffffff   78%,
    #FF9F43   88%,
    #ffffff  100%
  ) !important;
  background-size: 300% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: v01HeroShimmer 10s ease-in-out infinite !important;
  filter: drop-shadow(0 4px 24px rgba(6,14,26,.70)) !important;
}

@keyframes v01HeroShimmer {
  0%   { background-position: 0% 50%; }
  50%  { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}

/* Hero eyebrow */
.v8-hero__eyebrow {
  font-family: var(--v01-font-body) !important;
  font-size: .68rem !important;
  font-weight: 700 !important;
  letter-spacing: .25em !important;
  text-transform: uppercase !important;
  color: var(--v01-sunrise-lt) !important;
  -webkit-text-fill-color: var(--v01-sunrise-lt) !important;
  animation: none !important;
  background: none !important;
  text-shadow: 0 0 20px rgba(255,159,67,.45) !important;
}

/* Gold rule line — sunrise orange */
.v8-hero__rule .v8-hero__rule-line {
  background: linear-gradient(90deg, transparent, var(--v01-sunrise), var(--v01-sunrise-lt), var(--v01-sky), transparent) !important;
}

/* Hero subtitle */
.v8-hero__subtitle,
.hero-subtitle {
  font-family: var(--v01-font-body) !important;
  font-size: clamp(.9rem, 1.6vw, 1.05rem) !important;
  font-weight: 400 !important;
  letter-spacing: .02em !important;
  color: rgba(255,255,255,.75) !important;
  -webkit-text-fill-color: rgba(255,255,255,.75) !important;
  line-height: 1.70 !important;
  animation: none !important;
}

/* Hero CTA buttons */
.v8-hero__cta .btn--primary,
.v8-hero__cta .btn--outline {
  border-radius: var(--v01-r-pill) !important;
  font-family: var(--v01-font-body) !important;
  font-size: .78rem !important;
  font-weight: 700 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}

.v8-hero__cta .btn--primary {
  background: var(--v01-grad-sunrise) !important;
  border: none !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  box-shadow: 0 6px 24px rgba(232,87,10,.50) !important;
  animation: none !important;
}

.v8-hero__cta .btn--outline {
  background: rgba(255,255,255,.10) !important;
  border: 1.5px solid rgba(255,255,255,.40) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
}

/* ─────────────────────────────────────────────────────────────
   SECTION LABELS & TITLES — Refined editorial style
───────────────────────────────────────────────────────────── */
.section-label {
  font-family: var(--v01-font-body) !important;
  font-size: .62rem !important;
  font-weight: 800 !important;
  letter-spacing: .28em !important;
  text-transform: uppercase !important;
  color: var(--v01-sunrise) !important;
  -webkit-text-fill-color: var(--v01-sunrise) !important;
  background: none !important;
  animation: none !important;
  filter: none !important;
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: .8rem !important;
}

/* Decorative line after label */
.section-label::after {
  content: '' !important;
  display: inline-block !important;
  width: 32px !important;
  height: 2px !important;
  background: linear-gradient(90deg, var(--v01-sunrise), var(--v01-sky)) !important;
  border-radius: 2px !important;
  vertical-align: middle !important;
}

/* Section titles — light bg */
.section-title {
  font-family: var(--v01-font-display) !important;
  font-size: clamp(1.8rem, 3.5vw, 3.2rem) !important;
  font-weight: 400 !important;
  font-style: italic !important;
  letter-spacing: -.02em !important;
  line-height: 1.12 !important;
  color: var(--v01-coal) !important;
  -webkit-text-fill-color: var(--v01-coal) !important;
  background: none !important;
  animation: none !important;
  filter: none !important;
}

/* Section titles — dark bg */
.section--dark .section-title,
.virtual-tour-section .section-title {
  color: var(--v01-white) !important;
  -webkit-text-fill-color: var(--v01-white) !important;
}

/* Section subtitle */
.section-subtitle {
  font-family: var(--v01-font-body) !important;
  font-size: .95rem !important;
  line-height: 1.72 !important;
  color: var(--v01-slate) !important;
  -webkit-text-fill-color: var(--v01-slate) !important;
  animation: none !important;
}

.section--dark .section-subtitle {
  color: rgba(255,255,255,.62) !important;
  -webkit-text-fill-color: rgba(255,255,255,.62) !important;
}

/* ─────────────────────────────────────────────────────────────
   SECTION BACKGROUNDS — New atmospheric colors
───────────────────────────────────────────────────────────── */

/* Light sections — warm cream */
.section--alt {
  background: var(--v01-pearl) !important;
}

/* Dark sections — dramatic dawn sky */
.section--dark {
  background: linear-gradient(
    170deg,
    var(--v01-night)  0%,
    var(--v01-deep)   25%,
    var(--v01-navy)   55%,
    var(--v01-sky-dk) 80%,
    var(--v01-deep)   100%
  ) !important;
  position: relative !important;
}

.section--dark::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    radial-gradient(ellipse 80% 120% at 8% 55%,  rgba(232,87,10,.14) 0%, transparent 58%),
    radial-gradient(ellipse 60% 80%  at 92% 15%,  rgba(192,57,43,.12) 0%, transparent 55%),
    radial-gradient(ellipse 50% 65%  at 50% 110%, rgba(26,111,168,.10) 0%, transparent 52%) !important;
  pointer-events: none !important;
}

/* Gold divider — tri-color brand */
.gold-divider {
  height: 1.5px !important;
  background: linear-gradient(
    90deg,
    transparent 0%,
    var(--v01-red)       10%,
    var(--v01-sunrise)   30%,
    var(--v01-sunrise-lt)50%,
    var(--v01-sky)       70%,
    var(--v01-sky-lt)    85%,
    transparent         100%
  ) !important;
  animation: none !important;
  box-shadow: 0 0 20px rgba(232,87,10,.30) !important;
}

/* ─────────────────────────────────────────────────────────────
   RESERVE / AVAILABILITY SECTION — Premium redesign
───────────────────────────────────────────────────────────── */
.v26-reserve-section {
  background: linear-gradient(
    175deg,
    var(--v01-night)  0%,
    var(--v01-deep)   22%,
    var(--v01-navy)   48%,
    var(--v01-sky-dk) 75%,
    var(--v01-deep)   100%
  ) !important;
}

/* Reserve title */
.v26-rs__title {
  font-family: var(--v01-font-display) !important;
  font-weight: 400 !important;
  font-style: italic !important;
  letter-spacing: -.02em !important;
  line-height: 1.10 !important;
  color: var(--v01-white) !important;
  -webkit-text-fill-color: var(--v01-white) !important;
  background: none !important;
  animation: none !important;
  filter: none !important;
}

/* Eyebrow — sky blue for reserve */
.v26-rs__eyebrow {
  color: var(--v01-sky-lt) !important;
  -webkit-text-fill-color: var(--v01-sky-lt) !important;
  text-shadow: 0 0 20px rgba(52,152,219,.45) !important;
  filter: none !important;
  animation: none !important;
  background: none !important;
}

/* Stats bar */
.v26-rs__stats {
  background: rgba(255,255,255,.05) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  border-radius: 20px !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
}

.v26-rs__stat-num {
  font-family: var(--v01-font-display) !important;
  font-weight: 600 !important;
  font-style: italic !important;
  color: var(--v01-sunrise-lt) !important;
  -webkit-text-fill-color: var(--v01-sunrise-lt) !important;
  background: none !important;
  animation: none !important;
  filter: none !important;
}

.v26-rs__stat-sep {
  background: linear-gradient(to bottom, transparent, rgba(255,255,255,.18), transparent) !important;
}

/* CTA card — Sky blue accent version */
.v26-rs__cta-card--featured {
  background: linear-gradient(
    145deg,
    rgba(15,34,64,.96) 0%,
    rgba(10,28,55,.94) 50%,
    rgba(15,76,117,.90) 100%
  ) !important;
  border: 1px solid rgba(52,152,219,.25) !important;
  border-top: 2px solid rgba(52,152,219,.50) !important;
  border-radius: 28px !important;
  box-shadow:
    0 16px 60px rgba(6,14,26,.55),
    0 0 0 1px rgba(52,152,219,.12),
    0 0 80px rgba(26,111,168,.08),
    inset 0 1px 0 rgba(255,255,255,.10) !important;
}

/* CTA card top border — animated tri-color */
.v26-rs__cta-card--featured::before {
  background: linear-gradient(
    90deg,
    transparent,
    var(--v01-red-dk)    12%,
    var(--v01-sunrise)   30%,
    var(--v01-sky-lt)    50%,
    var(--v01-sunrise)   70%,
    var(--v01-red)       88%,
    transparent
  ) !important;
  animation: v01BorderShimmer 4s linear infinite !important;
  box-shadow: 0 0 18px rgba(52,152,219,.55), 0 0 35px rgba(232,87,10,.25) !important;
}

@keyframes v01BorderShimmer {
  0%   { background-position: 0% 50%; }
  100% { background-position: 200% 50%; }
}

/* CTA heading */
.v26-rs__cta-card__heading {
  font-family: var(--v01-font-display) !important;
  font-weight: 400 !important;
  font-style: italic !important;
  font-size: 1.65rem !important;
  letter-spacing: -.02em !important;
  color: var(--v01-white) !important;
  -webkit-text-fill-color: var(--v01-white) !important;
  background: none !important;
  animation: none !important;
  filter: none !important;
}

/* Price number */
.v26-rs__price-num {
  font-family: var(--v01-font-display) !important;
  font-weight: 600 !important;
  font-style: italic !important;
  color: var(--v01-sunrise-lt) !important;
  -webkit-text-fill-color: var(--v01-sunrise-lt) !important;
  background: none !important;
  animation: none !important;
  filter: none !important;
  text-shadow: 0 0 30px rgba(255,159,67,.35) !important;
}

/* Badge */
.v26-rs__cta-card__badge {
  background: linear-gradient(135deg, var(--v01-sky-dk), var(--v01-sky)) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  box-shadow: 0 4px 16px rgba(26,111,168,.45) !important;
  animation: none !important;
}

/* CTA button */
.v26-rs__main-btn {
  background: linear-gradient(
    135deg,
    var(--v01-red-dk) 0%,
    var(--v01-sunrise) 40%,
    var(--v01-sunrise-lt) 60%,
    var(--v01-sunrise) 100%
  ) !important;
  border-radius: var(--v01-r-pill) !important;
  animation: none !important;
  font-family: var(--v01-font-body) !important;
  font-weight: 700 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  font-size: .80rem !important;
  box-shadow:
    0 4px 18px rgba(232,87,10,.45),
    inset 0 1px 0 rgba(255,255,255,.22) !important;
}

.v26-rs__main-btn:hover {
  transform: translateY(-2px) scale(1.012) !important;
  box-shadow: 0 8px 28px rgba(232,87,10,.58), 0 0 50px rgba(232,87,10,.18) !important;
}

/* Perks card */
.v26-rs__perks-card {
  background: rgba(255,255,255,.05) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  border-top: 2px solid rgba(255,255,255,.18) !important;
  border-radius: 24px !important;
  backdrop-filter: blur(18px) !important;
  -webkit-backdrop-filter: blur(18px) !important;
  box-shadow: 0 8px 32px rgba(6,14,26,.40), inset 0 1px 0 rgba(255,255,255,.08) !important;
}

.v26-rs__perk svg { stroke: var(--v01-sky-lt) !important; filter: drop-shadow(0 0 5px rgba(52,152,219,.50)) !important; }

/* Find card */
.v26-rs__find-card {
  background: rgba(255,255,255,.04) !important;
  border: 1px solid rgba(255,255,255,.08) !important;
  border-top: 2px solid rgba(232,87,10,.35) !important;
  border-radius: 24px !important;
  backdrop-filter: blur(14px) !important;
  -webkit-backdrop-filter: blur(14px) !important;
  box-shadow: 0 6px 24px rgba(6,14,26,.35), inset 0 1px 0 rgba(255,255,255,.06) !important;
}

.v26-rs__card-icon, .v26-rs__cta-icon {
  background: rgba(255,255,255,.08) !important;
  border: 1px solid rgba(255,255,255,.16) !important;
}

/* Trust bar */
.v26-rs__trust-item {
  color: rgba(255,255,255,.45) !important;
  -webkit-text-fill-color: rgba(255,255,255,.45) !important;
}

.v26-rs__trust-item svg { stroke: var(--v01-sky-lt) !important; }
.v26-rs__trust-sep { background: rgba(255,255,255,.12) !important; }

/* ─────────────────────────────────────────────────────────────
   ROOM CARDS — Editorial magazine card style
───────────────────────────────────────────────────────────── */
.v26-room-card,
.v8-room-card {
  border-radius: 20px !important;
  overflow: hidden !important;
  background: #fff !important;
  border: 1px solid rgba(6,14,26,.06) !important;
  box-shadow: var(--v01-shadow-md) !important;
  transition: transform .36s cubic-bezier(.34,1.28,.64,1), box-shadow .32s ease, border-color .26s !important;
}

.v26-room-card:hover,
.v8-room-card:hover {
  transform: translateY(-10px) scale(1.010) !important;
  border-color: rgba(232,87,10,.20) !important;
  box-shadow:
    0 4px 12px rgba(6,14,26,.08),
    0 20px 52px rgba(6,14,26,.16),
    0 0 0 1.5px rgba(232,87,10,.25) !important;
}

/* Room type label */
.v26-room-type {
  font-family: var(--v01-font-body) !important;
  font-size: .60rem !important;
  font-weight: 800 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
  color: var(--v01-sky) !important;
  -webkit-text-fill-color: var(--v01-sky) !important;
  background: none !important;
  animation: none !important;
  filter: none !important;
}

/* Room title — display serif */
.v26-room-title {
  font-family: var(--v01-font-display) !important;
  font-weight: 400 !important;
  font-style: italic !important;
  font-size: 1.25rem !important;
  letter-spacing: -.01em !important;
  color: var(--v01-coal) !important;
  -webkit-text-fill-color: var(--v01-coal) !important;
}

/* Room price */
.v26-price-val,
.v26-room-img__price-val {
  font-family: var(--v01-font-display) !important;
  font-weight: 600 !important;
  font-style: italic !important;
  color: var(--v01-sunrise) !important;
  -webkit-text-fill-color: var(--v01-sunrise) !important;
  background: none !important;
  animation: none !important;
  filter: none !important;
}

/* Room book button */
.v26-room-book-btn {
  background: linear-gradient(135deg, var(--v01-sunrise-dk), var(--v01-sunrise), var(--v01-sunrise-lt)) !important;
  border-radius: var(--v01-r-pill) !important;
  animation: none !important;
  font-family: var(--v01-font-body) !important;
  font-weight: 700 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  font-size: .74rem !important;
}

/* Room badge */
.v8-room-badge--featured,
.v26-room-img__badge {
  background: linear-gradient(135deg, var(--v01-sky-dk), var(--v01-sky)) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  box-shadow: 0 3px 12px rgba(26,111,168,.40) !important;
}

/* ─────────────────────────────────────────────────────────────
   AMENITY CARDS — Clean editorial style
───────────────────────────────────────────────────────────── */
.amenity-card,
.feature-card,
.experience-card {
  border-radius: 18px !important;
  background: #fff !important;
  border: 1px solid rgba(6,14,26,.06) !important;
  box-shadow: var(--v01-shadow-sm) !important;
  transition: transform .32s cubic-bezier(.34,1.28,.64,1), box-shadow .28s ease !important;
}

.amenity-card:hover,
.feature-card:hover {
  transform: translateY(-6px) !important;
  box-shadow: var(--v01-shadow-lg), 0 0 0 1px rgba(232,87,10,.12) !important;
}

/* Amenity icons — tri-color accent */
.amenity-icon,
.amenity-card svg,
.feature-card svg {
  color: var(--v01-sky) !important;
  stroke: var(--v01-sky) !important;
  fill: none !important;
}

/* ─────────────────────────────────────────────────────────────
   GALLERY — Dramatic hover reveal
───────────────────────────────────────────────────────────── */
.home-gallery-item {
  border-radius: 16px !important;
  overflow: hidden !important;
  border: 1.5px solid transparent !important;
  transition: transform .38s cubic-bezier(.34,1.28,.64,1), box-shadow .34s ease, border-color .26s !important;
}

.home-gallery-item:hover {
  transform: translateY(-10px) scale(1.022) !important;
  border-color: var(--v01-sky-lt) !important;
  box-shadow:
    0 10px 30px rgba(6,14,26,.20),
    0 30px 70px rgba(6,14,26,.16),
    0 0 0 1px rgba(26,111,168,.30),
    0 0 30px rgba(26,111,168,.10) !important;
}

/* ─────────────────────────────────────────────────────────────
   STAT NUMBERS — Display serif with tri-color accent
───────────────────────────────────────────────────────────── */
.stat-number,
.stat-number span {
  font-family: var(--v01-font-display) !important;
  font-weight: 600 !important;
  font-style: italic !important;
  font-size: clamp(2rem, 4vw, 3.2rem) !important;
  color: var(--v01-sunrise) !important;
  -webkit-text-fill-color: var(--v01-sunrise) !important;
  background: none !important;
  animation: none !important;
  filter: none !important;
}

/* Alternate stat accents */
.stat-item:nth-child(2) .stat-number span { color: var(--v01-sky) !important; -webkit-text-fill-color: var(--v01-sky) !important; }
.stat-item:nth-child(3) .stat-number span { color: var(--v01-red-lt) !important; -webkit-text-fill-color: var(--v01-red-lt) !important; }
.stat-item:nth-child(4) .stat-number span { color: var(--v01-sky-lt) !important; -webkit-text-fill-color: var(--v01-sky-lt) !important; }

/* ─────────────────────────────────────────────────────────────
   BUTTONS — Pill style, tri-color system
───────────────────────────────────────────────────────────── */
.btn--primary {
  background: var(--v01-grad-sunrise) !important;
  border: none !important;
  border-radius: var(--v01-r-pill) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-family: var(--v01-font-body) !important;
  font-weight: 700 !important;
  letter-spacing: .07em !important;
  text-transform: uppercase !important;
  font-size: .80rem !important;
  animation: none !important;
  box-shadow:
    0 4px 16px rgba(232,87,10,.42),
    inset 0 1px 0 rgba(255,255,255,.20) !important;
  transition: transform .24s cubic-bezier(.34,1.3,.64,1), box-shadow .22s !important;
}

.btn--primary:hover {
  transform: translateY(-2px) scale(1.012) !important;
  box-shadow: 0 8px 26px rgba(232,87,10,.55), 0 0 40px rgba(232,87,10,.18) !important;
}

.btn--outline {
  background: transparent !important;
  border: 1.5px solid var(--v01-sunrise) !important;
  border-radius: var(--v01-r-pill) !important;
  color: var(--v01-sunrise) !important;
  -webkit-text-fill-color: var(--v01-sunrise) !important;
  font-family: var(--v01-font-body) !important;
  font-weight: 700 !important;
  letter-spacing: .07em !important;
  text-transform: uppercase !important;
  font-size: .80rem !important;
}

.btn--outline:hover {
  background: rgba(232,87,10,.08) !important;
  border-color: var(--v01-sunrise) !important;
}

/* ─────────────────────────────────────────────────────────────
   PAGE HERO (SUBPAGES) — Editorial full-bleed
───────────────────────────────────────────────────────────── */
.page-hero-title {
  font-family: var(--v01-font-display) !important;
  font-weight: 400 !important;
  font-style: italic !important;
  font-size: clamp(1.8rem, 5vw, 3.5rem) !important;
  letter-spacing: -.02em !important;
  line-height: 1.12 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  background: none !important;
  animation: none !important;
  filter: drop-shadow(0 3px 20px rgba(6,14,26,.75)) !important;
}

.page-hero .section-label {
  color: var(--v01-sunrise-lt) !important;
  -webkit-text-fill-color: var(--v01-sunrise-lt) !important;
  text-shadow: 0 0 16px rgba(255,159,67,.40) !important;
}

.page-hero .section-label::after { display: none !important; }

/* ─────────────────────────────────────────────────────────────
   FOOTER — Deep night sky
───────────────────────────────────────────────────────────── */
.site-footer {
  background: linear-gradient(
    170deg,
    var(--v01-night) 0%,
    var(--v01-deep)  40%,
    var(--v01-navy)  100%
  ) !important;
  border-top: 1px solid rgba(255,255,255,.07) !important;
  box-shadow: 0 -4px 40px rgba(6,14,26,.50) !important;
}

/* Footer col titles */
.footer-col-title {
  font-family: var(--v01-font-display) !important;
  font-weight: 400 !important;
  font-style: italic !important;
  font-size: 1.1rem !important;
  color: var(--v01-white) !important;
  -webkit-text-fill-color: var(--v01-white) !important;
  background: none !important;
  animation: none !important;
  filter: none !important;
  margin-bottom: 1.1rem !important;
}

/* Footer links */
.site-footer a,
.site-footer p,
.site-footer li {
  color: rgba(255,255,255,.52) !important;
  -webkit-text-fill-color: rgba(255,255,255,.52) !important;
  transition: color .22s !important;
  animation: none !important;
}

.site-footer a:hover {
  color: var(--v01-sunrise-lt) !important;
  -webkit-text-fill-color: var(--v01-sunrise-lt) !important;
}

/* Footer bottom bar */
.footer-bottom {
  border-top-color: rgba(255,255,255,.07) !important;
}

/* ─────────────────────────────────────────────────────────────
   MOBILE STICKY BAR — Tri-color brand
───────────────────────────────────────────────────────────── */
.mobile-book-bar {
  background: linear-gradient(
    90deg,
    var(--v01-night) 0%,
    var(--v01-deep) 50%,
    var(--v01-night) 100%
  ) !important;
  border-top: 1px solid rgba(255,255,255,.10) !important;
}

.mobile-book-bar__btn--call {
  background: rgba(26,111,168,.15) !important;
  border-color: rgba(52,152,219,.25) !important;
  color: var(--v01-sky-lt) !important;
  -webkit-text-fill-color: var(--v01-sky-lt) !important;
}

.mobile-book-bar__btn--call svg { stroke: var(--v01-sky-lt) !important; }

.mobile-book-bar__btn--book {
  background: var(--v01-grad-sunrise) !important;
  animation: none !important;
}

/* ─────────────────────────────────────────────────────────────
   SCROLL TO TOP — Sky blue
───────────────────────────────────────────────────────────── */
.scroll-to-top {
  background: linear-gradient(145deg, var(--v01-deep), var(--v01-navy)) !important;
  border-color: rgba(52,152,219,.35) !important;
}

.scroll-to-top svg { stroke: var(--v01-sky-lt) !important; }

.scroll-to-top:hover {
  border-color: var(--v01-sky-lt) !important;
  box-shadow:
    0 6px 28px rgba(6,14,26,.50),
    0 0 20px rgba(52,152,219,.25) !important;
}

/* ─────────────────────────────────────────────────────────────
   BOOKING FORM CARD — Premium warm white
───────────────────────────────────────────────────────────── */
.v412-form-card,
.v39-form-card {
  background: var(--v01-cream) !important;
  border-color: rgba(232,87,10,.10) !important;
  border-top-color: var(--v01-sunrise) !important;
  box-shadow: var(--v01-shadow-lg) !important;
}

.v412-form-card__title,
.v39-form-card__title {
  font-family: var(--v01-font-display) !important;
  font-weight: 400 !important;
  font-style: italic !important;
  color: var(--v01-coal) !important;
  -webkit-text-fill-color: var(--v01-coal) !important;
}

/* Info cards — find booking dark = sky blue tint */
.v412-info-card--find {
  background: linear-gradient(148deg, var(--v01-deep) 0%, var(--v01-navy) 100%) !important;
  border-color: rgba(52,152,219,.28) !important;
  border-top-color: rgba(52,152,219,.55) !important;
}

.v412-info-card__title {
  font-family: var(--v01-font-display) !important;
  font-style: italic !important;
  font-weight: 400 !important;
}

/* ─────────────────────────────────────────────────────────────
   SCROLLBAR — Brand orange
───────────────────────────────────────────────────────────── */
::-webkit-scrollbar { width: 4px !important; }
::-webkit-scrollbar-track { background: var(--v01-pearl) !important; }
::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, var(--v01-red), var(--v01-sunrise), var(--v01-sky)) !important;
  border-radius: 4px !important;
}

/* ─────────────────────────────────────────────────────────────
   FOCUS — Sky blue ring
───────────────────────────────────────────────────────────── */
:focus-visible {
  outline: 2px solid var(--v01-sky-lt) !important;
  outline-offset: 3px !important;
  box-shadow: 0 0 0 4px rgba(52,152,219,.16) !important;
}

/* ─────────────────────────────────────────────────────────────
   MOBILE — Kill all animations on touch
───────────────────────────────────────────────────────────── */
@media (pointer: coarse) {
  .v8-hero__title { animation: none !important; -webkit-text-fill-color: var(--v01-sunrise-lt) !important; background: none !important; filter: none !important; }
  .v26-rs__cta-card--featured::before { animation: none !important; }
  .header-book-btn { animation: none !important; }
  .v26-rs__main-btn { animation: none !important; }
  .btn--primary { animation: none !important; }
  * { will-change: auto !important; }
  .v26-rs__cta-card--featured,
  .v26-rs__perks-card,
  .v26-rs__find-card {
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }
  .site-header.header--scrolled { backdrop-filter: none !important; -webkit-backdrop-filter: none !important; }
}

/* ─────────────────────────────────────────────────────────────
   REDUCED MOTION
───────────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  .v8-hero__title { animation: none !important; -webkit-text-fill-color: var(--v01-sunrise-lt) !important; background: none !important; }
  .v26-rs__cta-card--featured::before { animation: none !important; }
  .v26-rs__main-btn, .btn--primary, .header-book-btn { animation: none !important; }
}

/* ── design-v1_0.css (27,441b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v1.0
   ──────────────────────────────────────────────────────────────
   1. Advanced premium design — 10× more refined
   2. Booking page — fully responsive, all content visible
   3. Floating button — brand matched (done in design-v8)
   4. Deeper visual hierarchy, editorial spacing
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   ADVANCED TYPOGRAPHY REFINEMENTS
───────────────────────────────────────────────────────────── */

/* Hero title — even more refined with better optical sizing */
.v8-hero__title {
  font-size: clamp(2.4rem, 6vw, 5.5rem) !important;
  font-weight: 300 !important;
  font-variation-settings: 'opsz' 144 !important; /* Fraunces optical size */
}

/* Section titles — slightly larger, more presence */
.section-title {
  font-size: clamp(2rem, 3.8vw, 3.5rem) !important;
  font-variation-settings: 'opsz' 72 !important;
}

/* Reserve title */
.v26-rs__title {
  font-size: clamp(2.2rem, 4vw, 3.8rem) !important;
  font-weight: 300 !important;
  font-variation-settings: 'opsz' 72 !important;
}

/* ─────────────────────────────────────────────────────────────
   ADVANCED SECTION HEADER LAYOUT — Editorial refinement
───────────────────────────────────────────────────────────── */
.section-header {
  position: relative !important;
}

.section-header.centered {
  text-align: center !important;
}

.section-header .section-label {
  justify-content: center !important;
  margin-bottom: 1rem !important;
}

.section-header .section-subtitle {
  max-width: 580px !important;
  margin: .8rem auto 0 !important;
}

/* ─────────────────────────────────────────────────────────────
   HERO SECTION — Advanced refinements
───────────────────────────────────────────────────────────── */

/* Hero trust badges */
.v8-hero__trust {
  border-top: 1px solid rgba(255,255,255,.10) !important;
  margin-top: 2.5rem !important;
  padding-top: 1.5rem !important;
}

.v8-trust-item svg { stroke: rgba(255,255,255,.55) !important; }
.v8-trust-val {
  font-family: var(--v01-font-display) !important;
  font-weight: 600 !important;
  font-style: italic !important;
}

/* Scroll indicator */
.v8-scroll-mouse {
  border-color: rgba(255,255,255,.30) !important;
}

/* Hero overlay — tri-color gradient from bottom */
.v8-hero__overlay {
  background: linear-gradient(
    to top,
    rgba(6,14,26,.90) 0%,
    rgba(6,14,26,.50) 30%,
    rgba(10,22,64,.15) 60%,
    transparent 100%
  ) !important;
}

/* ─────────────────────────────────────────────────────────────
   ADVANCED SECTION BACKGROUNDS
───────────────────────────────────────────────────────────── */

/* Light section — warm pearl with subtle pattern */
.section:not(.section--dark):not(.section--alt):not(.v26-reserve-section):not(.virtual-tour-section):not(.newsletter-section):not(.wow-section):not(.final-cta-section) {
  background: var(--v01-cream) !important;
}

.section--alt {
  background: var(--v01-pearl) !important;
}

/* Pillars/features section — cream with diagonal lines */
.section[aria-labelledby="pillars-heading"] {
  background:
    repeating-linear-gradient(
      -45deg,
      transparent,
      transparent 40px,
      rgba(232,87,10,.015) 40px,
      rgba(232,87,10,.015) 41px
    ),
    var(--v01-cream) !important;
}

/* ─────────────────────────────────────────────────────────────
   ADVANCED ROOM CARDS — More editorial
───────────────────────────────────────────────────────────── */

/* Room image — sharper bottom fade */
.v26-room-img::after {
  background: linear-gradient(
    to bottom,
    transparent 40%,
    rgba(6,14,26,.08) 60%,
    rgba(6,14,26,.55) 80%,
    rgba(6,14,26,.85) 100%
  ) !important;
}

/* Room specs row */
.v26-room-specs {
  border-top: 1px solid rgba(6,14,26,.06) !important;
  padding-top: .8rem !important;
  margin-top: .8rem !important;
}

.v26-room-spec {
  font-size: .72rem !important;
  color: var(--v01-slate) !important;
  -webkit-text-fill-color: var(--v01-slate) !important;
}

.v26-room-spec svg { stroke: var(--v01-sky) !important; }

/* Room availability dot */
.v26-room-img__avail-dot {
  background: #22c55e !important;
  box-shadow: 0 0 8px rgba(34,197,94,.70) !important;
}

/* Room bottom CTA row */
.v26-room-actions {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: .8rem !important;
  flex-wrap: wrap !important;
}

/* ─────────────────────────────────────────────────────────────
   ADVANCED AMENITY SECTION
───────────────────────────────────────────────────────────── */
.amenity-card {
  padding: 1.8rem !important;
  transition: transform .32s cubic-bezier(.34,1.28,.64,1), box-shadow .28s, border-color .24s !important;
  border: 1px solid rgba(6,14,26,.05) !important;
}

.amenity-card:hover {
  border-color: rgba(26,111,168,.15) !important;
  box-shadow:
    0 16px 50px rgba(6,14,26,.12),
    0 4px 16px rgba(6,14,26,.06),
    0 0 0 1px rgba(26,111,168,.12) !important;
}

/* Amenity icon wrapper */
.amenity-icon-wrap {
  width: 52px !important; height: 52px !important;
  border-radius: 14px !important;
  background: linear-gradient(135deg, rgba(26,111,168,.10), rgba(26,111,168,.05)) !important;
  border: 1px solid rgba(26,111,168,.16) !important;
  display: flex !important;
  align-items: center !important; justify-content: center !important;
  margin-bottom: 1rem !important;
}

/* Amenity title */
.amenity-title,
.amenity-card h3 {
  font-family: var(--v01-font-display) !important;
  font-weight: 400 !important;
  font-style: italic !important;
  font-size: 1.05rem !important;
  color: var(--v01-coal) !important;
  -webkit-text-fill-color: var(--v01-coal) !important;
}

/* ─────────────────────────────────────────────────────────────
   ADVANCED EXPERIENCE CARDS
───────────────────────────────────────────────────────────── */
.experience-card {
  border-radius: 20px !important;
  overflow: hidden !important;
  transition: transform .36s cubic-bezier(.34,1.28,.64,1) !important;
}

.experience-card:hover { transform: translateY(-8px) scale(1.012) !important; }

.experience-card__overlay {
  background: linear-gradient(
    to top,
    rgba(6,14,26,.92) 0%,
    rgba(6,14,26,.55) 45%,
    transparent 100%
  ) !important;
}

.experience-card__title {
  font-family: var(--v01-font-display) !important;
  font-weight: 400 !important;
  font-style: italic !important;
}

/* ─────────────────────────────────────────────────────────────
   TESTIMONIAL CARDS — Elevated
───────────────────────────────────────────────────────────── */
.testimonial-card {
  background: #fff !important;
  border-radius: 20px !important;
  border: 1px solid rgba(6,14,26,.06) !important;
  box-shadow: var(--v01-shadow-sm) !important;
  padding: 2rem !important;
  transition: transform .32s cubic-bezier(.34,1.28,.64,1), box-shadow .28s !important;
}

.testimonial-card:hover {
  transform: translateY(-6px) !important;
  box-shadow: var(--v01-shadow-md), 0 0 0 1px rgba(26,111,168,.10) !important;
}

/* Quote mark — sky blue */
.testimonial-card::before {
  content: '"' !important;
  font-family: var(--v01-font-display) !important;
  font-size: 4rem !important;
  line-height: .8 !important;
  color: var(--v01-sky-lt) !important;
  opacity: .30 !important;
  display: block !important;
  margin-bottom: .5rem !important;
}

/* Rating stars — sunrise color */
.testimonial-stars svg,
.star-icon { fill: var(--v01-sunrise) !important; }

/* ─────────────────────────────────────────────────────────────
   ABOUT SECTION — Editorial two-col
───────────────────────────────────────────────────────────── */
.about-snippet__image {
  border-radius: 24px !important;
  overflow: hidden !important;
  box-shadow: var(--v01-shadow-lg) !important;
}

.about-snippet__image img {
  transition: transform .55s cubic-bezier(.34,1.2,.64,1) !important;
}

.about-snippet__image:hover img { transform: scale(1.04) !important; }

/* About accent — tri-color divider */
.about-snippet .gold-divider { margin: 1.2rem 0 !important; }

/* About stat chips */
.about-chip {
  border-radius: var(--v01-r-pill) !important;
  border: 1px solid rgba(232,87,10,.18) !important;
  background: rgba(232,87,10,.06) !important;
  color: var(--v01-sunrise-dk) !important;
  -webkit-text-fill-color: var(--v01-sunrise-dk) !important;
  font-size: .72rem !important;
  font-weight: 600 !important;
  padding: .32rem .85rem !important;
}

/* ─────────────────────────────────────────────────────────────
   NEWSLETTER SECTION
───────────────────────────────────────────────────────────── */
.newsletter-section {
  background: linear-gradient(
    135deg,
    var(--v01-sky-dk) 0%,
    var(--v01-navy)   45%,
    var(--v01-sky-dk) 100%
  ) !important;
}

.newsletter-section .section-title { color: #fff !important; -webkit-text-fill-color: #fff !important; }

.newsletter-input {
  border-radius: var(--v01-r-pill) !important;
  border: 1.5px solid rgba(255,255,255,.20) !important;
  background: rgba(255,255,255,.10) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
}

.newsletter-btn {
  background: var(--v01-grad-sunrise) !important;
  border-radius: var(--v01-r-pill) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  box-shadow: 0 4px 18px rgba(232,87,10,.45) !important;
  animation: none !important;
}

/* ─────────────────────────────────────────────────────────────
   FINAL CTA SECTION
───────────────────────────────────────────────────────────── */
.final-cta-section {
  background: linear-gradient(
    170deg,
    var(--v01-night) 0%,
    var(--v01-deep)  30%,
    var(--v01-red-dk)60%,
    var(--v01-deep)  100%
  ) !important;
}

.final-cta-section .section-title {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-size: clamp(2rem, 4vw, 4rem) !important;
}

/* ─────────────────────────────────────────────────────────────
   BOOKING PAGE v1.0 — Fully responsive, premium, all visible
───────────────────────────────────────────────────────────── */

/* Section background — warm cream */
.v412-booking-section {
  background: var(--v01-pearl) !important;
  padding: 2.5rem 0 5rem !important;
}

/* Container max width */
.v412-booking-section .container {
  max-width: 1200px !important;
  padding-left: 1.5rem !important;
  padding-right: 1.5rem !important;
  box-sizing: border-box !important;
}

/* ── FORM CARD — Clean premium white ── */
.v412-form-card {
  background: var(--v01-white) !important;
  border: 1px solid rgba(232,87,10,.08) !important;
  border-top: 3px solid var(--v01-sunrise) !important;
  border-radius: 24px !important;
  padding: 2.2rem 2.5rem !important;
  margin-bottom: 2rem !important;
  box-shadow:
    0 2px 8px rgba(6,14,26,.05),
    0 12px 40px rgba(6,14,26,.09),
    0 30px 70px rgba(6,14,26,.05) !important;
  overflow: visible !important; /* never clip form content */
  position: relative !important;
}

/* Subtle bg circle */
.v412-form-card::before {
  content: '' !important;
  position: absolute !important;
  top: -20px !important; right: -20px !important;
  width: 200px !important; height: 200px !important;
  background: radial-gradient(circle, rgba(26,111,168,.04) 0%, transparent 65%) !important;
  pointer-events: none !important; z-index: 0 !important;
  border-radius: 50% !important;
}

/* Remove conflicting after pseudo from older rule */
.v412-form-card::after { display: none !important; }

/* Form header */
.v412-form-card__header {
  display: flex !important;
  align-items: center !important;
  gap: 1rem !important;
  margin-bottom: 1rem !important;
}

.v412-form-card__icon {
  width: 50px !important; height: 50px !important;
  border-radius: 14px !important;
  background: linear-gradient(135deg, rgba(26,111,168,.12), rgba(26,111,168,.06)) !important;
  border: 1.5px solid rgba(26,111,168,.22) !important;
  box-shadow: 0 3px 12px rgba(26,111,168,.18) !important;
  flex-shrink: 0 !important;
  display: flex !important;
  align-items: center !important; justify-content: center !important;
}

.v412-form-card__icon svg { stroke: var(--v01-sky) !important; }

.v412-form-card__eyebrow {
  display: block !important;
  font-size: .60rem !important;
  font-weight: 800 !important;
  letter-spacing: .22em !important;
  text-transform: uppercase !important;
  color: var(--v01-sky) !important;
  -webkit-text-fill-color: var(--v01-sky) !important;
  background: none !important;
  animation: none !important;
  margin-bottom: .18rem !important;
}

.v412-form-card__title {
  font-family: var(--v01-font-display) !important;
  font-weight: 400 !important;
  font-style: italic !important;
  font-size: 1.6rem !important;
  letter-spacing: -.02em !important;
  color: var(--v01-coal) !important;
  -webkit-text-fill-color: var(--v01-coal) !important;
  margin: 0 !important;
}

/* Shortcode wrap — ensure all content flows naturally */
.v412-shortcode-wrap {
  width: 100% !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

.v412-shortcode-wrap *,
.v412-shortcode-wrap *::before,
.v412-shortcode-wrap *::after {
  box-sizing: border-box !important;
  max-width: 100% !important;
}

/* Form inputs — brand styled, fully visible */
.v412-shortcode-wrap input,
.v412-shortcode-wrap select,
.v412-shortcode-wrap textarea,
.hsr-booking-form input,
.hsr-booking-form select,
[class*="hsr-"] input,
[class*="hsr-"] select {
  background: #fff !important;
  border: 1.5px solid rgba(6,14,26,.14) !important;
  border-radius: 10px !important;
  color: var(--v01-coal) !important;
  -webkit-text-fill-color: var(--v01-coal) !important;
  padding: .78rem 1rem !important;
  font-size: .88rem !important;
  font-family: var(--v01-font-body) !important;
  width: 100% !important;
  box-shadow: 0 1px 4px rgba(6,14,26,.05) !important;
}

.v412-shortcode-wrap input:focus,
.v412-shortcode-wrap select:focus,
[class*="hsr-"] input:focus,
[class*="hsr-"] select:focus {
  border-color: var(--v01-sky) !important;
  box-shadow: 0 0 0 3px rgba(26,111,168,.16) !important;
  outline: none !important;
}

/* Submit button */
.v412-shortcode-wrap [type="submit"],
.v412-shortcode-wrap button[type="submit"],
.hsr-booking-form button,
.hsr-booking-form [type="submit"],
[class*="hsr-"] [type="submit"],
[class*="hsr-"] button[type="submit"] {
  background: linear-gradient(
    135deg, var(--v01-red-dk) 0%, var(--v01-sunrise) 40%, var(--v01-sunrise-lt) 65%, var(--v01-sunrise) 100%
  ) !important;
  background-size: 200% auto !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border: none !important;
  border-radius: var(--v01-r-pill) !important;
  padding: .85rem 2.2rem !important;
  font-size: .85rem !important;
  font-weight: 700 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  font-family: var(--v01-font-body) !important;
  cursor: pointer !important;
  box-shadow: 0 4px 18px rgba(232,87,10,.42) !important;
  transition: transform .24s cubic-bezier(.34,1.3,.64,1), box-shadow .22s !important;
  animation: none !important;
}

.v412-shortcode-wrap [type="submit"]:hover,
.hsr-booking-form button:hover,
[class*="hsr-"] [type="submit"]:hover {
  transform: translateY(-2px) scale(1.012) !important;
  box-shadow: 0 8px 28px rgba(232,87,10,.55) !important;
}

/* ── INFO ROW CARDS ── */
.v412-info-row {
  display: grid !important;
  grid-template-columns: 1fr 1fr 1fr !important;
  gap: 1.4rem !important;
  align-items: start !important;
}

/* Find card — sky blue dark */
.v412-info-card--find {
  background: linear-gradient(148deg, var(--v01-deep) 0%, var(--v01-navy) 100%) !important;
  border: 1px solid rgba(52,152,219,.24) !important;
  border-top: 2px solid rgba(52,152,219,.50) !important;
  border-radius: 22px !important;
  padding: 1.6rem 1.8rem !important;
  box-shadow:
    0 10px 40px rgba(6,14,26,.45),
    0 24px 65px rgba(6,14,26,.28),
    inset 0 1px 0 rgba(255,255,255,.08) !important;
}

.v412-info-card--find .v412-info-card__icon {
  background: rgba(52,152,219,.14) !important;
  border-color: rgba(52,152,219,.28) !important;
}

.v412-info-card--find .v412-info-card__icon svg { stroke: var(--v01-sky-lt) !important; }

/* Help card — warm white */
.v412-info-card--help {
  background: var(--v01-white) !important;
  border: 1px solid rgba(232,87,10,.10) !important;
  border-top: 2px solid rgba(232,87,10,.35) !important;
  border-radius: 22px !important;
  padding: 1.6rem 1.8rem !important;
  box-shadow: 0 4px 16px rgba(6,14,26,.07), 0 12px 38px rgba(6,14,26,.08) !important;
}

.v412-info-card--help .v412-info-card__title,
.v412-info-card--facts .v412-info-card__title {
  font-family: var(--v01-font-display) !important;
  font-style: italic !important;
  font-weight: 400 !important;
  font-size: 1.1rem !important;
  color: var(--v01-coal) !important;
  -webkit-text-fill-color: var(--v01-coal) !important;
}

.v412-info-card--find .v412-info-card__title {
  font-family: var(--v01-font-display) !important;
  font-style: italic !important;
  font-weight: 400 !important;
  font-size: 1.1rem !important;
  color: rgba(255,255,255,.92) !important;
  -webkit-text-fill-color: rgba(255,255,255,.92) !important;
}

/* Facts card */
.v412-info-card--facts {
  background: var(--v01-pearl) !important;
  border: 1px solid rgba(26,111,168,.10) !important;
  border-top: 2px solid rgba(26,111,168,.28) !important;
  border-radius: 22px !important;
  padding: 1.6rem 1.8rem !important;
  box-shadow: 0 4px 14px rgba(6,14,26,.06), 0 10px 32px rgba(6,14,26,.07) !important;
}

.v412-info-card--facts .v412-info-card__icon {
  background: rgba(26,111,168,.10) !important;
  border-color: rgba(26,111,168,.20) !important;
}

.v412-info-card--facts .v412-info-card__icon svg { stroke: var(--v01-sky) !important; }

/* Facts grid */
.v412-fact__val { color: var(--v01-sky) !important; -webkit-text-fill-color: var(--v01-sky) !important; }

/* Contact links — styled for help card */
.v412-contact-btn--phone { color: var(--v01-sunrise-dk) !important; border-color: rgba(232,87,10,.18) !important; }
.v412-contact-btn--phone svg { stroke: var(--v01-sunrise) !important; }
.v412-contact-btn--email { color: var(--v01-sky) !important; }
.v412-contact-btn--email svg { stroke: var(--v01-sky) !important; }

/* ─────────────────────────────────────────────────────────────
   PERKS BAR — Premium dark with tri-color
───────────────────────────────────────────────────────────── */
.v26-booking-perks-bar {
  background: linear-gradient(
    90deg, var(--v01-night) 0%, var(--v01-deep) 50%, var(--v01-night) 100%
  ) !important;
  border-bottom: 1px solid rgba(255,255,255,.07) !important;
  padding: .9rem 0 !important;
}

.v26-booking-perks-bar__item {
  color: rgba(255,255,255,.55) !important;
  -webkit-text-fill-color: rgba(255,255,255,.55) !important;
}

.v26-booking-perks-bar__item svg { stroke: var(--v01-sky-lt) !important; }
.v26-booking-perks-bar__sep { background: rgba(255,255,255,.10) !important; }

/* ─────────────────────────────────────────────────────────────
   BOOKING PAGE RESPONSIVE — Complete, all content visible
───────────────────────────────────────────────────────────── */

/* Ensure HSR booking plugin form never overflows */
.v412-form-card .hsr-booking-form,
.v412-form-card [class*="hsr-booking"],
.v412-form-card [class*="hsr-search"],
.v412-form-card [class*="hsr-availability"] {
  max-width: 100% !important;
  width: 100% !important;
  overflow: visible !important;
}

/* All text in booking section must be visible */
.v412-booking-section *:not(.v412-info-card--find):not(.v412-info-card--find *) {
  color: var(--v01-coal) !important;
}

/* Override the above for buttons */
.v412-booking-section .btn--primary,
.v412-booking-section [type="submit"],
.v412-booking-section button[type="submit"],
.v412-booking-section .hsr-search-btn {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

/* Dark card text overrides */
.v412-info-card--find,
.v412-info-card--find * {
  color: rgba(255,255,255,.80) !important;
  -webkit-text-fill-color: rgba(255,255,255,.80) !important;
}

.v412-info-card--find [type="submit"],
.v412-info-card--find button[type="submit"] {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

/* ─────────────────────────────────────────────────────────────
   RESPONSIVE GRID
───────────────────────────────────────────────────────────── */
@media (max-width: 1100px) {
  .v412-info-row { grid-template-columns: 1fr 1fr !important; }
  .v412-info-card--facts { grid-column: 1 / -1 !important; }
  .v412-facts-grid { grid-template-columns: repeat(3, 1fr) !important; }
}

@media (max-width: 768px) {
  .v412-booking-section { padding: 1.8rem 0 3.5rem !important; }
  .v412-form-card {
    padding: 1.5rem 1.2rem !important;
    border-radius: 18px !important;
    margin-bottom: 1.4rem !important;
  }
  .v412-form-card__header { flex-wrap: wrap !important; gap: .75rem !important; }
  .v412-form-card__title { font-size: 1.3rem !important; }
  .v412-info-row { grid-template-columns: 1fr !important; gap: 1rem !important; }
  .v412-info-card--facts { grid-column: auto !important; }
  .v412-facts-grid { grid-template-columns: 1fr 1fr !important; }
  .v412-info-card--find,
  .v412-info-card--help,
  .v412-info-card--facts { padding: 1.4rem 1.3rem !important; }
}

@media (max-width: 480px) {
  .v412-form-card { padding: 1.2rem 1rem !important; }
  .v412-facts-grid { grid-template-columns: 1fr !important; }
  .v412-contact-btn { font-size: .73rem !important; }
  .v412-form-card__eyebrow,
  .v412-form-card__icon { display: none !important; }
}

/* ─────────────────────────────────────────────────────────────
   MOBILE ANIMATION KILLSWITCH (inherit from v41_v2)
   + additional v1.0 elements
───────────────────────────────────────────────────────────── */
@media (pointer: coarse) {
  .newsletter-btn,
  .v412-shortcode-wrap [type="submit"],
  .hsr-booking-form button,
  [class*="hsr-"] [type="submit"] {
    animation: none !important;
    background-position: 0% !important;
  }
  .v8-float-book { animation: none !important; }
  .about-snippet__image img { transition: none !important; }
  .experience-card:hover,
  .testimonial-card:hover { transform: none !important; }
}

/* ─────────────────────────────────────────────────────────────
   REDUCED MOTION
───────────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  .v412-shortcode-wrap [type="submit"],
  .hsr-booking-form button,
  .newsletter-btn,
  .v8-float-book {
    animation: none !important;
    background-position: 0% !important;
  }
}

/* ── design-v1_1.css (38,523b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v1.1
   ──────────────────────────────────────────────────────────────
   10× PREMIUM UPGRADE:
   — Bento grid cards for pillars + amenities
   — Asymmetric magazine editorial layouts
   — Larger, more dramatic typography scale
   — Cinematic overlays with dawn color palette
   — Micro-animation polish (hover states, reveals)
   — Booking form search fields — large, full visible
   — Inline style color overrides from PHP
   — All section improvements without content removal
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   ROOT — Fine-tuned tokens for v1.1
───────────────────────────────────────────────────────────── */
:root {
  --v11-red:       #B52A1F;
  --v11-red-lt:    #E74C3C;
  --v11-orange:    #E8570A;
  --v11-orange-lt: #FF9243;
  --v11-sky:       #1565A8;
  --v11-sky-lt:    #2E86DE;
  --v11-sky-pale:  #EAF4FD;
  --v11-coal:      #0E1A2A;
  --v11-slate:     #3C4D60;
  --v11-mist:      #8A9BB0;
  --v11-pearl:     #F7F3EF;
  --v11-cream:     #FBF8F5;
  --v11-white:     #FFFFFF;
  --v11-night:     #060D19;
  --v11-deep:      #091525;
  --v11-navy:      #0C2040;
  --v11-dawn:      linear-gradient(165deg, #060D19 0%, #091525 30%, #0C2040 55%, #1565A8 78%, #B52A1F 100%);
  --v11-sunrise-g: linear-gradient(135deg, #B52A1F 0%, #E8570A 42%, #FF9243 68%, #E8570A 100%);
  --v11-sky-g:     linear-gradient(135deg, #0C2040 0%, #1565A8 55%, #2E86DE 100%);
  --v11-r:         clamp(16px, 2vw, 24px);
}

/* ─────────────────────────────────────────────────────────────
   BODY — Refined cream with paper texture feel
───────────────────────────────────────────────────────────── */
body {
  background: var(--v11-cream) !important;
  color: var(--v11-coal) !important;
}

/* ─────────────────────────────────────────────────────────────
   HERO — Cinematic, dramatic, 10× better
───────────────────────────────────────────────────────────── */

/* Deeper more dramatic hero overlay */
.v8-hero__overlay {
  background:
    linear-gradient(
      180deg,
      rgba(6,13,25,.15)  0%,
      rgba(6,13,25,.08)  25%,
      rgba(6,13,25,.30)  55%,
      rgba(6,13,25,.85)  80%,
      rgba(6,13,25,.95)  100%
    ) !important;
}

/* Hero title — larger, more optical */
.v8-hero__title {
  font-size: clamp(2.8rem, 7vw, 6.5rem) !important;
  font-weight: 300 !important;
  line-height: 1.04 !important;
  letter-spacing: -.03em !important;
}

/* Hero eyebrow — tri-color dot separator */
.v8-hero__eyebrow {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: .6rem !important;
  font-size: .64rem !important;
  letter-spacing: .28em !important;
}

.v8-hero__eyebrow::before {
  content: '' !important;
  width: 28px !important;
  height: 1.5px !important;
  background: linear-gradient(90deg, transparent, var(--v11-orange-lt)) !important;
  display: inline-block !important;
}

.v8-hero__eyebrow::after {
  content: '' !important;
  width: 28px !important;
  height: 1.5px !important;
  background: linear-gradient(90deg, var(--v11-sky-lt), transparent) !important;
  display: inline-block !important;
}

/* Hero gold rule — tri-color */
.v8-hero__rule,
.hero-gold-line {
  background: linear-gradient(
    90deg,
    transparent,
    var(--v11-red)       10%,
    var(--v11-orange)    30%,
    var(--v11-orange-lt) 50%,
    var(--v11-sky-lt)    70%,
    var(--v11-sky)       90%,
    transparent
  ) !important;
  height: 1.5px !important;
  margin: 1.5rem auto !important;
  max-width: 400px !important;
  opacity: .75 !important;
}

/* Hero CTA row — pill buttons */
.v8-hero__buttons {
  display: flex !important;
  gap: .9rem !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  margin-top: 2rem !important;
}

/* Scroll indicator */
.v8-scroll-mouse {
  border-color: rgba(255,255,255,.25) !important;
  animation: none !important;
}

/* ─────────────────────────────────────────────────────────────
   RESERVE SECTION — Dawn sky bento layout
───────────────────────────────────────────────────────────── */
.v26-reserve-section {
  background: var(--v11-dawn) !important;
}

/* CTA card — richer glass */
.v26-rs__cta-card--featured {
  background: linear-gradient(
    145deg,
    rgba(255,255,255,.065) 0%,
    rgba(255,255,255,.030) 50%,
    rgba(255,255,255,.015) 100%
  ) !important;
  border-top-color: rgba(52,134,222,.55) !important;
  border-color: rgba(255,255,255,.12) !important;
}

/* CTA button — pill sunrise */
.v26-rs__main-btn {
  border-radius: 100px !important;
  font-size: .78rem !important;
  letter-spacing: .10em !important;
  padding: 1rem 1.8rem !important;
}

/* Perks + Find cards — glass */
.v26-rs__perks-card,
.v26-rs__find-card {
  border-color: rgba(255,255,255,.10) !important;
  background: rgba(255,255,255,.04) !important;
}

/* ─────────────────────────────────────────────────────────────
   SECTIONS — Editorial spacing + visual weight
───────────────────────────────────────────────────────────── */
.section {
  padding-top:    clamp(4rem, 9vw, 7rem) !important;
  padding-bottom: clamp(4rem, 9vw, 7rem) !important;
}

.section.section--alt { background: var(--v11-pearl) !important; }

/* Section label — more weight */
.section-label {
  font-size: .60rem !important;
  font-weight: 800 !important;
  letter-spacing: .30em !important;
  gap: .75rem !important;
  margin-bottom: 1.1rem !important;
}

.section-label::after {
  width: 40px !important;
  background: linear-gradient(90deg, var(--v11-orange), var(--v11-sky)) !important;
  height: 2px !important;
}

/* Section title — bigger, more presence */
.section-title {
  font-size: clamp(2.2rem, 4.2vw, 3.8rem) !important;
  font-weight: 300 !important;
  letter-spacing: -.025em !important;
  line-height: 1.10 !important;
}

/* Section subtitle */
.section-subtitle {
  font-size: 1rem !important;
  line-height: 1.75 !important;
  color: var(--v11-slate) !important;
  -webkit-text-fill-color: var(--v11-slate) !important;
  max-width: 600px !important;
  margin: .8rem auto 0 !important;
}

.section--dark .section-subtitle {
  color: rgba(255,255,255,.58) !important;
  -webkit-text-fill-color: rgba(255,255,255,.58) !important;
}

/* ─────────────────────────────────────────────────────────────
   PILLARS SECTION — Bento grid layout
   3 cards in a dramatic asymmetric bento
───────────────────────────────────────────────────────────── */
.section[aria-labelledby="pillars-heading"] {
  background: var(--v11-cream) !important;
}

/* Override inline pillar card colors with CSS vars */
.section[aria-labelledby="pillars-heading"] .section-header {
  margin-bottom: 3.5rem !important;
}

/* Pillar cards — editorial glass cards */
.section[aria-labelledby="pillars-heading"] .grid-3 > *,
.section[aria-labelledby="pillars-heading"] [class*="pillar"],
.section[aria-labelledby="pillars-heading"] [class*="card"] {
  border-radius: 22px !important;
  overflow: hidden !important;
  border: 1px solid rgba(6,13,25,.07) !important;
  box-shadow: 0 2px 8px rgba(6,13,25,.06), 0 12px 40px rgba(6,13,25,.08) !important;
  transition: transform .36s cubic-bezier(.34,1.28,.64,1), box-shadow .32s !important;
}

.section[aria-labelledby="pillars-heading"] .grid-3 > *:hover,
.section[aria-labelledby="pillars-heading"] [class*="pillar"]:hover {
  transform: translateY(-8px) !important;
  box-shadow: 0 6px 20px rgba(6,13,25,.10), 0 28px 65px rgba(6,13,25,.14) !important;
}

/* Override inline h3 colors in pillars */
.section[aria-labelledby="pillars-heading"] h3 {
  font-family: var(--v01-font-display) !important;
  font-weight: 400 !important;
  font-style: italic !important;
  font-size: 1.35rem !important;
  color: var(--v11-coal) !important;
  -webkit-text-fill-color: var(--v11-coal) !important;
}

.section[aria-labelledby="pillars-heading"] p {
  color: var(--v11-slate) !important;
  -webkit-text-fill-color: var(--v11-slate) !important;
  line-height: 1.75 !important;
  font-size: .95rem !important;
}

/* ─────────────────────────────────────────────────────────────
   ROOM CARDS — 10× more editorial polish
───────────────────────────────────────────────────────────── */
.v26-room-card {
  border-radius: 22px !important;
  box-shadow:
    0 1px 4px rgba(6,13,25,.04),
    0 8px 28px rgba(6,13,25,.09),
    0 24px 60px rgba(6,13,25,.07) !important;
}

.v26-room-card:hover {
  box-shadow:
    0 2px 8px rgba(6,13,25,.06),
    0 16px 48px rgba(6,13,25,.15),
    0 36px 80px rgba(6,13,25,.12),
    0 0 0 1.5px rgba(21,101,168,.22) !important;
  transform: translateY(-12px) scale(1.012) !important;
}

/* Room type — sky blue */
.v26-room-type {
  color: var(--v11-sky) !important;
  -webkit-text-fill-color: var(--v11-sky) !important;
}

/* Room title — larger */
.v26-room-title {
  font-size: 1.3rem !important;
  letter-spacing: -.015em !important;
}

/* Room price */
.v26-price-val {
  color: var(--v11-orange) !important;
  -webkit-text-fill-color: var(--v11-orange) !important;
}

/* Book button — pill sunrise */
.v26-room-book-btn {
  border-radius: 100px !important;
  font-size: .74rem !important;
  letter-spacing: .08em !important;
  padding: .68rem 1.4rem !important;
}

/* Room badge — sky blue */
.v8-room-badge--featured,
.v26-room-img__badge {
  background: var(--v11-sky-g) !important;
  border-radius: 100px !important;
  font-size: .60rem !important;
  letter-spacing: .10em !important;
}

/* ─────────────────────────────────────────────────────────────
   AMENITIES SECTION — Elevated bento grid
───────────────────────────────────────────────────────────── */
.section[aria-labelledby="amenities-heading"] {
  background: var(--v11-pearl) !important;
}

.amenity-card {
  background: var(--v11-white) !important;
  border-radius: 20px !important;
  border: 1px solid rgba(6,13,25,.05) !important;
  padding: 2rem !important;
  box-shadow:
    0 1px 4px rgba(6,13,25,.04),
    0 8px 28px rgba(6,13,25,.07) !important;
  transition: transform .34s cubic-bezier(.34,1.28,.64,1), box-shadow .30s, border-color .26s !important;
}

.amenity-card:hover {
  transform: translateY(-7px) !important;
  border-color: rgba(21,101,168,.14) !important;
  box-shadow:
    0 2px 8px rgba(6,13,25,.05),
    0 20px 55px rgba(6,13,25,.12),
    0 0 0 1px rgba(21,101,168,.10) !important;
}

/* Amenity icon — sky blue pill */
.amenity-card .amenity-icon,
.amenity-card svg:first-child,
.amenity-card [class*="icon"] svg {
  color: var(--v11-sky) !important;
  stroke: var(--v11-sky) !important;
}

/* Amenity title */
.amenity-card h3,
.amenity-title {
  font-family: var(--v01-font-display) !important;
  font-weight: 400 !important;
  font-style: italic !important;
  font-size: 1.1rem !important;
  color: var(--v11-coal) !important;
  -webkit-text-fill-color: var(--v11-coal) !important;
  margin-bottom: .5rem !important;
}

.amenity-card p {
  font-size: .88rem !important;
  line-height: 1.68 !important;
  color: var(--v11-slate) !important;
  -webkit-text-fill-color: var(--v11-slate) !important;
}

/* ─────────────────────────────────────────────────────────────
   ABOUT SECTION — Magazine editorial left/right
───────────────────────────────────────────────────────────── */
.section[aria-labelledby="about-snippet-heading"] {
  background: var(--v11-cream) !important;
}

/* Image — rounded, dramatic shadow */
.about-snippet__image {
  border-radius: 24px !important;
  box-shadow:
    0 16px 60px rgba(6,13,25,.18),
    0 4px 16px rgba(6,13,25,.10) !important;
}

/* Text area */
.section[aria-labelledby="about-snippet-heading"] p {
  color: var(--v11-slate) !important;
  -webkit-text-fill-color: var(--v11-slate) !important;
  font-size: .98rem !important;
  line-height: 1.82 !important;
}

/* ─────────────────────────────────────────────────────────────
   EXPERIENCES SECTION — Dramatic dark with sky overlay
───────────────────────────────────────────────────────────── */
.section--dark[aria-labelledby="experiences-heading"] {
  background: linear-gradient(
    170deg,
    var(--v11-night)  0%,
    var(--v11-deep)   28%,
    var(--v11-navy)   55%,
    var(--v11-sky)    80%,
    var(--v11-deep)   100%
  ) !important;
}

/* Override inline color styles */
.section--dark[aria-labelledby="experiences-heading"] .section-label {
  color: var(--v11-orange-lt) !important;
  -webkit-text-fill-color: var(--v11-orange-lt) !important;
}

.section--dark[aria-labelledby="experiences-heading"] .section-title {
  color: var(--v11-white) !important;
  -webkit-text-fill-color: var(--v11-white) !important;
}

/* Experience cards */
.experience-card {
  border-radius: 22px !important;
  overflow: hidden !important;
}

.experience-card:hover {
  transform: translateY(-8px) scale(1.014) !important;
  box-shadow:
    0 24px 70px rgba(6,13,25,.50),
    0 0 0 1.5px rgba(46,134,222,.40) !important;
}

.experience-card__overlay {
  background: linear-gradient(
    to top,
    rgba(6,13,25,.95) 0%,
    rgba(6,13,25,.60) 40%,
    rgba(6,13,25,.10) 75%,
    transparent 100%
  ) !important;
}

/* ─────────────────────────────────────────────────────────────
   GALLERY SECTION — Masonry hover reveal
───────────────────────────────────────────────────────────── */
.home-gallery-item {
  border-radius: 18px !important;
  overflow: hidden !important;
}

.home-gallery-item:hover {
  transform: translateY(-10px) scale(1.025) !important;
  border-color: rgba(46,134,222,.60) !important;
  box-shadow:
    0 12px 36px rgba(6,13,25,.22),
    0 32px 80px rgba(6,13,25,.18),
    0 0 0 2px rgba(46,134,222,.40),
    0 0 40px rgba(21,101,168,.12) !important;
}

/* ─────────────────────────────────────────────────────────────
   DINING SECTION — Elevated magazine editorial
───────────────────────────────────────────────────────────── */
.section[aria-labelledby="dining-heading"] {
  background: var(--v11-cream) !important;
}

/* Dining items — override inline accent color */
.section[aria-labelledby="dining-heading"] span[aria-hidden="true"],
.section[aria-labelledby="dining-heading"] .menu-item-icon {
  color: var(--v11-orange) !important;
}

/* Dining rating badge */
.section[aria-labelledby="dining-heading"] [style*="1.75rem"] {
  font-family: var(--v01-font-display) !important;
  font-style: italic !important;
  color: var(--v11-orange) !important;
  -webkit-text-fill-color: var(--v11-orange) !important;
}

/* ─────────────────────────────────────────────────────────────
   TESTIMONIALS — Elevated card carousel
───────────────────────────────────────────────────────────── */
.section[aria-labelledby="testimonials-heading"] {
  background: var(--v11-pearl) !important;
}

.testimonial-card {
  background: var(--v11-white) !important;
  border-radius: 22px !important;
  padding: 2.2rem !important;
  border: 1px solid rgba(6,13,25,.06) !important;
  box-shadow:
    0 2px 8px rgba(6,13,25,.05),
    0 12px 36px rgba(6,13,25,.08) !important;
}

/* Quote mark */
.testimonial-card::before {
  color: var(--v11-sky-lt) !important;
  font-size: 5rem !important;
  opacity: .20 !important;
  font-family: var(--v01-font-display) !important;
}

/* Carousel dots */
button.testimonial-dot {
  width: 24px !important;
  height: 4px !important;
  border-radius: 4px !important;
  background: rgba(6,13,25,.15) !important;
  transition: width .3s, background .3s !important;
}

button.testimonial-dot.active {
  width: 40px !important;
  background: linear-gradient(90deg, var(--v11-orange), var(--v11-sky)) !important;
}

/* Carousel prev/next buttons */
button.carousel-prev,
button.carousel-next {
  border-radius: 50% !important;
  border: 1.5px solid rgba(6,13,25,.12) !important;
  background: var(--v11-white) !important;
  color: var(--v11-coal) !important;
  -webkit-text-fill-color: var(--v11-coal) !important;
  transition: border-color .22s, background .22s !important;
}

button.carousel-prev:hover,
button.carousel-next:hover {
  border-color: var(--v11-orange) !important;
  background: rgba(232,87,10,.06) !important;
}

/* ─────────────────────────────────────────────────────────────
   REVIEWS SECTION — Clean trust badges
───────────────────────────────────────────────────────────── */
.reviews-section {
  background: var(--v11-cream) !important;
}

/* Review card */
.review-card,
[class*="review-card"] {
  background: var(--v11-white) !important;
  border-radius: 18px !important;
  border: 1px solid rgba(6,13,25,.05) !important;
  box-shadow: 0 2px 8px rgba(6,13,25,.04), 0 10px 30px rgba(6,13,25,.06) !important;
  transition: transform .30s cubic-bezier(.34,1.28,.64,1) !important;
}

.review-card:hover { transform: translateY(-5px) !important; }

/* Review avatar — use brand colors */
.review-avatar {
  border-radius: 50% !important;
  font-family: var(--v01-font-body) !important;
  font-weight: 700 !important;
}

/* Override inline color vars */
.review-card [style*="color-primary"],
[style*="color-primary"] { color: var(--v11-coal) !important; -webkit-text-fill-color: var(--v11-coal) !important; }

/* ─────────────────────────────────────────────────────────────
   AWARDS BAR — Elevated marquee
───────────────────────────────────────────────────────────── */
.awards-bar {
  background: linear-gradient(90deg, var(--v11-night), var(--v11-deep), var(--v11-night)) !important;
  border-top: 1px solid rgba(255,255,255,.06) !important;
  border-bottom: 1px solid rgba(255,255,255,.06) !important;
}

/* ─────────────────────────────────────────────────────────────
   NEWSLETTER SECTION — Sky blue gradient
───────────────────────────────────────────────────────────── */
.newsletter-section {
  background: linear-gradient(
    135deg,
    var(--v11-navy)    0%,
    var(--v11-sky)     55%,
    var(--v11-sky-lt)  100%
  ) !important;
  position: relative !important;
}

.newsletter-section::before {
  content: '' !important;
  position: absolute !important; inset: 0 !important;
  background: radial-gradient(ellipse 80% 120% at 50% 120%, rgba(232,87,10,.18) 0%, transparent 60%) !important;
  pointer-events: none !important;
}

/* Override inline label/title color */
.newsletter-section [style*="color-accent"] {
  color: var(--v11-orange-lt) !important;
  -webkit-text-fill-color: var(--v11-orange-lt) !important;
}

/* Newsletter form — pill inputs */
.newsletter-form input,
.newsletter-section input[type="email"] {
  border-radius: 100px !important;
  border: 1.5px solid rgba(255,255,255,.25) !important;
  background: rgba(255,255,255,.12) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  padding: .85rem 1.6rem !important;
  font-size: .92rem !important;
  backdrop-filter: blur(8px) !important;
}

.newsletter-form input::placeholder,
.newsletter-section input::placeholder {
  color: rgba(255,255,255,.55) !important;
}

.newsletter-form button,
.newsletter-section [type="submit"] {
  background: var(--v11-sunrise-g) !important;
  border-radius: 100px !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border: none !important;
  padding: .85rem 2rem !important;
  font-weight: 700 !important;
  box-shadow: 0 4px 18px rgba(232,87,10,.50) !important;
  animation: none !important;
  transition: transform .22s, box-shadow .22s !important;
}

.newsletter-form button:hover,
.newsletter-section [type="submit"]:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 28px rgba(232,87,10,.58) !important;
}

/* ─────────────────────────────────────────────────────────────
   WOW SECTION — Full-bleed editorial
───────────────────────────────────────────────────────────── */
.wow-section {
  position: relative !important;
  overflow: hidden !important;
}

.wow-section__overlay {
  background: linear-gradient(
    180deg,
    rgba(6,13,25,.20)  0%,
    rgba(6,13,25,.45)  40%,
    rgba(6,13,25,.80)  70%,
    rgba(6,13,25,.95)  100%
  ) !important;
}

.wow-section__content .section-title {
  font-size: clamp(2.4rem, 5vw, 4.5rem) !important;
  font-weight: 300 !important;
}

/* ─────────────────────────────────────────────────────────────
   FINAL CTA — Dramatic red-to-night
───────────────────────────────────────────────────────────── */
.final-cta-section {
  background: linear-gradient(
    160deg,
    var(--v11-night) 0%,
    var(--v11-red)   45%,
    var(--v11-deep)  100%
  ) !important;
  position: relative !important;
}

.final-cta-section::before {
  content: '' !important;
  position: absolute !important; inset: 0 !important;
  background:
    radial-gradient(ellipse 80% 100% at 50% 0%, rgba(255,146,67,.10) 0%, transparent 60%) !important;
  pointer-events: none !important;
}

.final-cta-section .section-title {
  font-size: clamp(2.2rem, 5vw, 4.2rem) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

.final-cta-section .section-subtitle {
  color: rgba(255,255,255,.68) !important;
  -webkit-text-fill-color: rgba(255,255,255,.68) !important;
}

/* ─────────────────────────────────────────────────────────────
   VIRTUAL TOUR SECTION
───────────────────────────────────────────────────────────── */
.virtual-tour-section {
  background: linear-gradient(
    170deg,
    var(--v11-night) 0%,
    var(--v11-navy)  55%,
    var(--v11-sky)   100%
  ) !important;
}

/* Override inline text colors */
.virtual-tour-section [style*="color:var(--color-white)"],
.virtual-tour-section [style*="color:rgba(255,255,255"] {
  color: rgba(255,255,255,.78) !important;
  -webkit-text-fill-color: rgba(255,255,255,.78) !important;
}

/* ─────────────────────────────────────────────────────────────
   FOOTER — Deep editorial navy
───────────────────────────────────────────────────────────── */
.site-footer {
  background: linear-gradient(
    168deg,
    var(--v11-night) 0%,
    var(--v11-deep)  45%,
    var(--v11-coal)  100%
  ) !important;
  border-top: 1px solid rgba(255,255,255,.06) !important;
}

.footer-col-title {
  font-size: 1.0rem !important;
  margin-bottom: 1.2rem !important;
  letter-spacing: -.01em !important;
}

/* ─────────────────────────────────────────────────────────────
   HEADER
───────────────────────────────────────────────────────────── */
.site-header.header--scrolled,
.site-header.scrolled {
  background: rgba(251,248,245,.95) !important;
  border-bottom: 1px solid rgba(232,87,10,.10) !important;
}

/* Nav current item underline */
.main-nav .current-menu-item > a {
  position: relative !important;
}

.main-nav .current-menu-item > a::before {
  content: '' !important;
  position: absolute !important;
  bottom: -4px !important; left: 0 !important; right: 0 !important;
  height: 2px !important;
  background: var(--v11-sunrise-g) !important;
  border-radius: 2px !important;
}

/* ─────────────────────────────────────────────────────────────
   BOOKING PAGE v1.1 — LARGE VISIBLE SEARCH FORM
───────────────────────────────────────────────────────────── */
.v412-booking-section {
  background: var(--v11-pearl) !important;
  padding: 3rem 0 5.5rem !important;
}

/* Form card — wide open, generous */
.v412-form-card {
  background: var(--v11-white) !important;
  border-radius: 26px !important;
  padding: 2.8rem 3.2rem !important;
  border-top: 4px solid var(--v11-orange) !important;
  border: 1px solid rgba(232,87,10,.08) !important;
  box-shadow:
    0 2px 6px rgba(6,13,25,.04),
    0 14px 48px rgba(6,13,25,.10),
    0 36px 80px rgba(6,13,25,.06) !important;
  margin-bottom: 2.2rem !important;
  overflow: visible !important;
}

/* Large inputs — prominently visible */
.v412-form-card input,
.v412-form-card select,
.v412-form-card textarea,
.v412-shortcode-wrap input,
.v412-shortcode-wrap select,
.hsr-booking-form input[type="text"],
.hsr-booking-form input[type="date"],
.hsr-booking-form input[type="number"],
.hsr-booking-form select,
[class*="hsr-booking"] input,
[class*="hsr-booking"] select,
[class*="hsr-search"] input,
[class*="hsr-search"] select,
[class*="hsr-availability"] input,
[class*="hsr-availability"] select {
  background: var(--v11-white) !important;
  border: 1.5px solid rgba(6,13,25,.15) !important;
  border-radius: 12px !important;
  color: var(--v11-coal) !important;
  -webkit-text-fill-color: var(--v11-coal) !important;
  padding: 1rem 1.2rem !important;          /* Larger padding */
  font-size: 1rem !important;               /* Larger font */
  font-family: var(--v01-font-body) !important;
  font-weight: 500 !important;
  width: 100% !important;
  min-height: 52px !important;              /* Minimum touch target */
  box-sizing: border-box !important;
  transition: border-color .22s, box-shadow .22s !important;
  box-shadow: 0 1px 4px rgba(6,13,25,.06) !important;
}

.v412-form-card input::placeholder,
.v412-shortcode-wrap input::placeholder,
[class*="hsr-"] input::placeholder {
  color: rgba(6,13,25,.38) !important;
  opacity: 1 !important;
}

/* Focus — sky blue ring */
.v412-form-card input:focus,
.v412-form-card select:focus,
.v412-shortcode-wrap input:focus,
.v412-shortcode-wrap select:focus,
[class*="hsr-"] input:focus,
[class*="hsr-"] select:focus {
  border-color: var(--v11-sky) !important;
  box-shadow:
    0 0 0 3px rgba(21,101,168,.16),
    0 2px 8px rgba(21,101,168,.10) !important;
  outline: none !important;
}

/* Labels — larger, readable */
.v412-form-card label,
.v412-shortcode-wrap label,
[class*="hsr-"] label {
  font-size: .72rem !important;
  font-weight: 700 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  color: var(--v11-orange) !important;
  -webkit-text-fill-color: var(--v11-orange) !important;
  margin-bottom: .4rem !important;
  display: block !important;
}

/* Submit button — large pill */
.v412-shortcode-wrap [type="submit"],
.v412-shortcode-wrap button[type="submit"],
.hsr-booking-form button,
.hsr-booking-form [type="submit"],
[class*="hsr-booking"] button[type="submit"],
[class*="hsr-booking"] [type="submit"],
[class*="hsr-search"] [type="submit"],
[class*="hsr-search"] button {
  background: var(--v11-sunrise-g) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border: none !important;
  border-radius: 100px !important;
  padding: 1rem 2.5rem !important;
  font-size: .92rem !important;
  font-weight: 700 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  font-family: var(--v01-font-body) !important;
  cursor: pointer !important;
  min-height: 52px !important;
  box-shadow:
    0 4px 20px rgba(232,87,10,.45),
    inset 0 1px 0 rgba(255,255,255,.22) !important;
  transition: transform .24s cubic-bezier(.34,1.3,.64,1), box-shadow .22s !important;
  animation: none !important;
  white-space: nowrap !important;
}

[type="submit"]:hover,
button[type="submit"]:hover {
  transform: translateY(-2px) scale(1.012) !important;
  box-shadow: 0 8px 30px rgba(232,87,10,.58) !important;
}

/* Form field rows — generous gaps */
.hsr-form-row,
.hsr-search-row,
[class*="hsr-form-row"],
[class*="hsr-fields"] {
  gap: 1.1rem !important;
  flex-wrap: wrap !important;
}

.hsr-form-group,
[class*="hsr-field"] {
  min-width: 160px !important;
}

/* Form section heading (plugin's "Find Your Perfect Room" etc) */
[class*="hsr-booking"] h1,
[class*="hsr-booking"] h2,
[class*="hsr-booking"] h3,
.hsr-booking-form h1,
.hsr-booking-form h2,
.hsr-booking-form h3 {
  display: none !important;
}

/* ── BOOKING SUMMARY PANEL ── */
.hsr-booking-summary,
[class*="hsr-summary"],
[class*="hsr-booking-sum"] {
  background: linear-gradient(
    148deg, var(--v11-deep) 0%, var(--v11-navy) 100%
  ) !important;
  border: 1px solid rgba(46,134,222,.25) !important;
  border-top: 2px solid rgba(46,134,222,.50) !important;
  border-radius: 20px !important;
  padding: 1.8rem !important;
  color: rgba(255,255,255,.88) !important;
  -webkit-text-fill-color: rgba(255,255,255,.88) !important;
}

/* ── INFO ROW ── */
.v412-info-row {
  display: grid !important;
  grid-template-columns: 1fr 1fr 1fr !important;
  gap: 1.5rem !important;
}

.v412-info-card {
  border-radius: 22px !important;
  padding: 1.8rem !important;
  transition: transform .32s cubic-bezier(.34,1.28,.64,1) !important;
}

.v412-info-card:hover { transform: translateY(-5px) !important; }

.v412-info-card--find {
  background: linear-gradient(148deg, var(--v11-deep) 0%, var(--v11-navy) 100%) !important;
  border: 1px solid rgba(46,134,222,.22) !important;
  border-top: 2px solid rgba(46,134,222,.48) !important;
  box-shadow: 0 10px 40px rgba(6,13,25,.40), 0 24px 65px rgba(6,13,25,.26) !important;
}

.v412-info-card--help {
  background: var(--v11-white) !important;
  border: 1px solid rgba(232,87,10,.10) !important;
  border-top: 2px solid rgba(232,87,10,.32) !important;
  box-shadow: 0 4px 16px rgba(6,13,25,.06), 0 12px 36px rgba(6,13,25,.08) !important;
}

.v412-info-card--facts {
  background: var(--v11-pearl) !important;
  border: 1px solid rgba(21,101,168,.10) !important;
  border-top: 2px solid rgba(21,101,168,.28) !important;
  box-shadow: 0 4px 14px rgba(6,13,25,.05), 0 10px 30px rgba(6,13,25,.07) !important;
}

/* Find card inputs — dark glass */
.v412-info-card--find input,
.v412-info-card--find select {
  background: rgba(255,255,255,.09) !important;
  border-color: rgba(255,255,255,.18) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  min-height: 46px !important;
  font-size: .9rem !important;
  padding: .75rem 1rem !important;
}

.v412-info-card--find input:focus,
.v412-info-card--find select:focus {
  border-color: rgba(46,134,222,.60) !important;
  box-shadow: 0 0 0 3px rgba(46,134,222,.18) !important;
}

/* ─────────────────────────────────────────────────────────────
   MOBILE KILLSWITCH
───────────────────────────────────────────────────────────── */
@media (pointer: coarse) {
  .v8-hero__title { animation: none !important; -webkit-text-fill-color: var(--v11-orange-lt) !important; background: none !important; }
  .experience-card:hover,
  .home-gallery-item:hover,
  .amenity-card:hover,
  .v26-room-card:hover,
  .testimonial-card:hover,
  .review-card:hover { transform: none !important; }
  * { will-change: auto !important; }
}

/* ─────────────────────────────────────────────────────────────
   RESPONSIVE — Booking page
───────────────────────────────────────────────────────────── */
@media (max-width: 1100px) {
  .v412-info-row { grid-template-columns: 1fr 1fr !important; }
  .v412-info-card--facts { grid-column: 1 / -1 !important; }
}

@media (max-width: 768px) {
  .v412-form-card { padding: 1.8rem 1.4rem !important; border-radius: 20px !important; }
  .v412-info-row { grid-template-columns: 1fr !important; }
  .v412-info-card--facts { grid-column: auto !important; }

  /* Keep form inputs readable on mobile */
  .v412-form-card input,
  .v412-form-card select,
  [class*="hsr-"] input,
  [class*="hsr-"] select {
    font-size: 1rem !important;
    padding: .9rem 1rem !important;
    min-height: 50px !important;
  }

  [class*="hsr-"] [type="submit"],
  [class*="hsr-"] button[type="submit"] {
    width: 100% !important;
    padding: 1rem !important;
  }

  .section { padding-top: clamp(3rem, 8vw, 5rem) !important; padding-bottom: clamp(3rem, 8vw, 5rem) !important; }
}

@media (max-width: 480px) {
  .v412-form-card { padding: 1.4rem 1rem !important; }
  [class*="hsr-form-row"],
  [class*="hsr-fields"] { flex-direction: column !important; }
}

/* ─────────────────────────────────────────────────────────────
   REDUCED MOTION
───────────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  .v8-hero__title { animation: none !important; -webkit-text-fill-color: var(--v11-orange-lt) !important; background: none !important; }
  .newsletter-form button, [type="submit"] { animation: none !important; }
  .experience-card, .home-gallery-item, .amenity-card, .v26-room-card { transition: none !important; }
}

/* ── design-v1_2.css (25,914b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v1.2
   ──────────────────────────────────────────────────────────────
   ROOT CAUSE FIX: Missing CSS variables caused text to be
   invisible or elements to have wrong colors/shadows.
   All CSS vars now properly defined + overridden.
   ──────────────────────────────────────────────────────────────
   Fixes:
   F1. All missing CSS vars — complete, correct brand values
   F2. Pillar section text visibility — $p['sc'] inline color
   F3. About section text — color-text-light visible
   F4. Dining section accent ✦ icons — orange brand
   F5. Review card avatar colors — brand palette
   F6. Testimonial carousel buttons — brand styled
   F7. Award/footer badge — brand colors
   F8. Newsletter label — visible orange
   F9. Virtual tour text — visible on dark bg
   F10. All shadow-gold uses → brand orange
   Improvements:
   I1. Section header spacing — more editorial
   I2. Subpage hero — cleaner, stronger
   I3. Contact page — readable form
   I4. Dining page — premium menu cards
   I5. About page — editorial two-col
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   F1. MISSING CSS VARIABLES — Complete brand-correct definitions
   These override design-v12.css which had old gold values
───────────────────────────────────────────────────────────── */
:root {
  /* Core missing vars used in inline PHP styles */
  --color-white:          #FFFFFF;
  --color-text-light:     #5C6B7A;    /* was undefined = invisible */
  --color-text-muted:     #8A9BB0;
  --color-mid-gray:       rgba(14,26,42,.12);
  --color-primary-light:  #1565A8;    /* sky blue */
  --color-bg-alt:         #F7F3EF;
  --color-primary:        #0E1A2A;
  --color-accent:         #E8570A;    /* sunrise orange */

  /* Shadows — brand orange for "gold" */
  --shadow-sm:    0 2px 8px rgba(14,26,42,.07), 0 1px 3px rgba(14,26,42,.04);
  --shadow-md:    0 8px 28px rgba(14,26,42,.12), 0 3px 10px rgba(14,26,42,.06);
  --shadow-lg:    0 20px 55px rgba(14,26,42,.16), 0 6px 18px rgba(14,26,42,.08);
  --shadow-xl:    0 40px 90px rgba(14,26,42,.20), 0 12px 32px rgba(14,26,42,.10);
  --shadow-gold:  0 6px 24px rgba(232,87,10,.38), 0 2px 8px rgba(232,87,10,.20);

  /* Radius */
  --radius-sm:   8px;
  --radius-md:   12px;
  --radius-lg:   18px;
  --radius-xl:   24px;
  --radius-full: 999px;

  /* Transitions */
  --transition-base: .26s ease;

  /* Font */
  --font-size-md: .95rem;
}

/* ─────────────────────────────────────────────────────────────
   F2. PILLAR SECTION — $p['sc'] inline color override
   Pillar cards have inline style="color:{$p['sc']}" where
   $p['sc'] = a hex color from PHP array. We override all
   paragraph text in pillars section to be brand-correct.
───────────────────────────────────────────────────────────── */
[aria-labelledby="pillars-heading"] p[style*="color"] {
  color: #5C6B7A !important;
  -webkit-text-fill-color: #5C6B7A !important;
}

[aria-labelledby="pillars-heading"] h3[style*="color"],
[aria-labelledby="pillars-heading"] h3 {
  color: #0E1A2A !important;
  -webkit-text-fill-color: #0E1A2A !important;
}

/* ─────────────────────────────────────────────────────────────
   F3. color-text-light — now #5C6B7A but inline styles used
   the var which was undefined. Target all inline usages.
───────────────────────────────────────────────────────────── */
[style*="color:var(--color-text-light)"],
[style*="color: var(--color-text-light)"] {
  color: #5C6B7A !important;
  -webkit-text-fill-color: #5C6B7A !important;
}

[style*="color:var(--color-text-muted)"],
[style*="color: var(--color-text-muted)"] {
  color: #8A9BB0 !important;
  -webkit-text-fill-color: #8A9BB0 !important;
}

[style*="color:var(--color-white)"],
[style*="color: var(--color-white)"],
[style*="color:var(--color-white);"],
[style*="color: var(--color-white);"] {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

[style*="color:var(--color-primary)"],
[style*="color: var(--color-primary)"] {
  color: #0E1A2A !important;
  -webkit-text-fill-color: #0E1A2A !important;
}

[style*="color:var(--color-accent)"],
[style*="color: var(--color-accent)"] {
  color: #E8570A !important;
  -webkit-text-fill-color: #E8570A !important;
}

/* ─────────────────────────────────────────────────────────────
   F4. DINING SECTION — ✦ accent icons + inline colors
───────────────────────────────────────────────────────────── */
[style*="color:var(--color-accent);font-size:1.2rem"],
[style*="color:var(--color-accent)"][style*="font-size:1.2rem"],
li [style*="color:var(--color-accent)"] {
  color: #E8570A !important;
  -webkit-text-fill-color: #E8570A !important;
}

/* Dining award badge — was background:var(--color-accent) */
[style*="background:var(--color-accent)"],
[style*="background: var(--color-accent)"] {
  background: linear-gradient(135deg, #B52A1F 0%, #E8570A 50%, #FF9243 100%) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

/* shadow-gold usage in dining */
[style*="shadow-gold"] {
  box-shadow: 0 6px 24px rgba(232,87,10,.38), 0 2px 8px rgba(232,87,10,.20) !important;
}

/* ─────────────────────────────────────────────────────────────
   F5. REVIEW AVATARS — brand palette instead of PHP random colors
───────────────────────────────────────────────────────────── */
.review-avatar {
  font-family: var(--v01-font-body) !important;
  font-weight: 700 !important;
  font-size: .88rem !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  width: 40px !important;
  height: 40px !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
}

/* Override all PHP-injected random avatar colors */
.review-avatar[style*="background"] {
  background: linear-gradient(135deg, #1565A8, #2E86DE) !important;
}

/* Alternate avatar colors for visual variety */
.review-card:nth-child(2) .review-avatar[style],
.review-card:nth-child(5) .review-avatar[style] {
  background: linear-gradient(135deg, #B52A1F, #E8570A) !important;
}

.review-card:nth-child(3) .review-avatar[style],
.review-card:nth-child(6) .review-avatar[style] {
  background: linear-gradient(135deg, #0C2040, #1565A8) !important;
}

/* ─────────────────────────────────────────────────────────────
   F6. CAROUSEL BUTTONS — brand styled, visible
───────────────────────────────────────────────────────────── */
button[style*="border-radius:50%"][style*="border:1.5px solid var(--color-mid-gray)"],
button.carousel-prev,
button.carousel-next {
  border: 1.5px solid rgba(14,26,42,.14) !important;
  background: #fff !important;
  color: #0E1A2A !important;
  -webkit-text-fill-color: #0E1A2A !important;
  box-shadow: 0 2px 8px rgba(14,26,42,.08) !important;
  transition: border-color .22s, background .22s, box-shadow .22s !important;
  cursor: pointer !important;
}

button.carousel-prev:hover,
button.carousel-next:hover {
  border-color: #E8570A !important;
  background: rgba(232,87,10,.06) !important;
  box-shadow: 0 4px 16px rgba(232,87,10,.22) !important;
}

/* Review platform logos row */
[style*="background:var(--color-white)"][style*="border-radius:var(--radius-full)"],
[style*="background:white"][style*="border-radius:var(--radius-full)"] {
  background: #fff !important;
  box-shadow: 0 2px 12px rgba(14,26,42,.10) !important;
}

/* Review score text */
[style*="font-weight:700;color:var(--color-primary)"],
[style*="font-weight: 700; color: var(--color-primary)"] {
  color: #0E1A2A !important;
  -webkit-text-fill-color: #0E1A2A !important;
  font-weight: 700 !important;
}

/* Review label text */
[style*="font-size:0.75rem;color:var(--color-text-muted)"] {
  color: #8A9BB0 !important;
  -webkit-text-fill-color: #8A9BB0 !important;
}

/* ─────────────────────────────────────────────────────────────
   F7. AWARDS MARQUEE — brand colors
───────────────────────────────────────────────────────────── */
.awards-bar {
  background: linear-gradient(90deg, #060D19, #091525, #060D19) !important;
  border-top: 1px solid rgba(255,255,255,.06) !important;
  border-bottom: 1px solid rgba(255,255,255,.06) !important;
  padding: .9rem 0 !important;
}

.awards-bar * {
  color: rgba(255,255,255,.55) !important;
  -webkit-text-fill-color: rgba(255,255,255,.55) !important;
}

/* ─────────────────────────────────────────────────────────────
   F8. NEWSLETTER SECTION — all text visible
───────────────────────────────────────────────────────────── */
.newsletter-section [style*="color:var(--color-accent)"],
.newsletter-section .section-label {
  color: #FF9243 !important;
  -webkit-text-fill-color: #FF9243 !important;
  background: none !important;
  animation: none !important;
}

.newsletter-section [style*="color:var(--color-white)"],
.newsletter-section [style*="color: var(--color-white)"],
.newsletter-section .section-title {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

.newsletter-section [style*="color:rgba(255,255,255,0.65)"],
.newsletter-section p {
  color: rgba(255,255,255,.72) !important;
  -webkit-text-fill-color: rgba(255,255,255,.72) !important;
}

/* ─────────────────────────────────────────────────────────────
   F9. VIRTUAL TOUR TEXT — all visible on dark bg
───────────────────────────────────────────────────────────── */
.virtual-tour-section [style*="color:var(--color-white)"],
.virtual-tour-section [style*="color: var(--color-white)"],
.virtual-tour-section [style*="color:rgba(255,255,255"],
.virtual-tour-section h2,
.virtual-tour-section p {
  color: rgba(255,255,255,.90) !important;
  -webkit-text-fill-color: rgba(255,255,255,.90) !important;
}

/* ─────────────────────────────────────────────────────────────
   F10. shadow-gold → brand orange everywhere
───────────────────────────────────────────────────────────── */
[style*="box-shadow:var(--shadow-gold)"],
[style*="box-shadow: var(--shadow-gold)"] {
  box-shadow: 0 6px 24px rgba(232,87,10,.38), 0 2px 8px rgba(232,87,10,.20) !important;
}

[style*="box-shadow:var(--shadow-md)"] {
  box-shadow: 0 8px 28px rgba(14,26,42,.12), 0 3px 10px rgba(14,26,42,.06) !important;
}

[style*="box-shadow:var(--shadow-xl)"] {
  box-shadow: 0 40px 90px rgba(14,26,42,.20), 0 12px 32px rgba(14,26,42,.10) !important;
}

/* ─────────────────────────────────────────────────────────────
   I1. ABOUT SECTION — better text contrast
───────────────────────────────────────────────────────────── */
.about-snippet,
[aria-labelledby="about-snippet-heading"] {
  background: #FBF8F5 !important;
}

.about-snippet h2,
[aria-labelledby="about-snippet-heading"] .section-title {
  color: #0E1A2A !important;
  -webkit-text-fill-color: #0E1A2A !important;
}

[aria-labelledby="about-snippet-heading"] p[style*="color:var(--color-text-light)"],
[aria-labelledby="about-snippet-heading"] p {
  color: #5C6B7A !important;
  -webkit-text-fill-color: #5C6B7A !important;
  font-size: .97rem !important;
  line-height: 1.82 !important;
}

/* ─────────────────────────────────────────────────────────────
   I2. SUBPAGE HEROES — clean, strong, no text cut
───────────────────────────────────────────────────────────── */
.page-hero {
  position: relative !important;
  overflow: hidden !important;
}

.page-hero-content {
  position: relative !important;
  z-index: 5 !important;
  padding: 4rem 2rem 3.5rem !important;
}

.page-hero-title {
  text-shadow: 0 3px 20px rgba(6,13,25,.70) !important;
}

.page-hero-subtitle {
  color: rgba(255,255,255,.80) !important;
  -webkit-text-fill-color: rgba(255,255,255,.80) !important;
  text-shadow: 0 1px 8px rgba(6,13,25,.55) !important;
  max-width: 600px !important;
  margin-top: .7rem !important;
}

/* ─────────────────────────────────────────────────────────────
   I3. CONTACT PAGE — all fields visible, brand styled
───────────────────────────────────────────────────────────── */
.page-contact input,
.page-contact select,
.page-contact textarea,
.contact-form input,
.contact-form select,
.contact-form textarea,
.wpcf7 input,
.wpcf7 select,
.wpcf7 textarea {
  background: #fff !important;
  border: 1.5px solid rgba(14,26,42,.14) !important;
  border-radius: 12px !important;
  color: #0E1A2A !important;
  -webkit-text-fill-color: #0E1A2A !important;
  padding: .88rem 1.1rem !important;
  font-size: .95rem !important;
  width: 100% !important;
  box-sizing: border-box !important;
  box-shadow: 0 1px 4px rgba(14,26,42,.05) !important;
  transition: border-color .22s, box-shadow .22s !important;
}

.page-contact input:focus,
.page-contact select:focus,
.page-contact textarea:focus,
.wpcf7 input:focus,
.wpcf7 select:focus,
.wpcf7 textarea:focus {
  border-color: #1565A8 !important;
  box-shadow: 0 0 0 3px rgba(21,101,168,.16) !important;
  outline: none !important;
}

.page-contact label,
.contact-form label,
.wpcf7 label {
  font-size: .72rem !important;
  font-weight: 700 !important;
  letter-spacing: .10em !important;
  text-transform: uppercase !important;
  color: #E8570A !important;
  -webkit-text-fill-color: #E8570A !important;
  margin-bottom: .38rem !important;
  display: block !important;
}

.page-contact [type="submit"],
.contact-form [type="submit"],
.wpcf7 [type="submit"] {
  background: linear-gradient(135deg, #B52A1F, #E8570A, #FF9243) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border: none !important;
  border-radius: 100px !important;
  padding: .95rem 2.2rem !important;
  font-weight: 700 !important;
  letter-spacing: .06em !important;
  cursor: pointer !important;
  box-shadow: 0 4px 18px rgba(232,87,10,.42) !important;
  transition: transform .22s, box-shadow .22s !important;
  animation: none !important;
}

.page-contact [type="submit"]:hover,
.wpcf7 [type="submit"]:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 28px rgba(232,87,10,.55) !important;
}

/* ─────────────────────────────────────────────────────────────
   I4. DINING PAGE — premium menu cards
───────────────────────────────────────────────────────────── */
.page-dining .menu-card,
.page-dining [class*="menu-item"],
.page-dining [class*="menu-card"] {
  background: #fff !important;
  border-radius: 16px !important;
  border: 1px solid rgba(14,26,42,.06) !important;
  box-shadow: 0 2px 8px rgba(14,26,42,.05), 0 10px 30px rgba(14,26,42,.07) !important;
  transition: transform .30s cubic-bezier(.34,1.28,.64,1) !important;
}

.page-dining .menu-card:hover { transform: translateY(-5px) !important; }

/* Dining page section headers */
.page-dining .section-title {
  color: #0E1A2A !important;
  -webkit-text-fill-color: #0E1A2A !important;
}

/* ─────────────────────────────────────────────────────────────
   I5. PACKAGES PAGE — premium card layout
───────────────────────────────────────────────────────────── */
.page-packages [class*="package-card"],
.page-packages [class*="pkg-card"] {
  border-radius: 20px !important;
  overflow: hidden !important;
  box-shadow: 0 4px 16px rgba(14,26,42,.09), 0 16px 48px rgba(14,26,42,.10) !important;
  transition: transform .32s cubic-bezier(.34,1.28,.64,1), box-shadow .28s !important;
}

.page-packages [class*="package-card"]:hover {
  transform: translateY(-8px) !important;
  box-shadow: 0 8px 28px rgba(14,26,42,.14), 0 28px 70px rgba(14,26,42,.14), 0 0 0 1.5px rgba(21,101,168,.20) !important;
}

/* ─────────────────────────────────────────────────────────────
   I6. EVENTS PAGE — calendar/event items
───────────────────────────────────────────────────────────── */
.page-events [class*="event-card"],
.page-events [class*="event-item"] {
  border-radius: 18px !important;
  background: #fff !important;
  border: 1px solid rgba(14,26,42,.06) !important;
  box-shadow: 0 2px 8px rgba(14,26,42,.05), 0 10px 30px rgba(14,26,42,.07) !important;
  transition: transform .28s cubic-bezier(.34,1.28,.64,1) !important;
}

.page-events [class*="event-card"]:hover { transform: translateY(-5px) !important; }

/* ─────────────────────────────────────────────────────────────
   I7. GALLERY PAGE — masonry grid polish
───────────────────────────────────────────────────────────── */
.page-gallery .gallery-item,
.page-gallery [class*="gallery-item"] {
  border-radius: 14px !important;
  overflow: hidden !important;
  transition: transform .34s cubic-bezier(.34,1.28,.64,1) !important;
}

.page-gallery .gallery-item:hover { transform: scale(1.02) !important; }

/* ─────────────────────────────────────────────────────────────
   I8. HEADING HIERARCHY — consistent across all pages
───────────────────────────────────────────────────────────── */
h1, h2, h3, h4, h5, h6 {
  font-family: var(--v01-font-display) !important;
  font-style: italic !important;
  font-weight: 400 !important;
  color: #0E1A2A !important;
  line-height: 1.18 !important;
}

/* Light bg section heading */
.section:not(.section--dark) h2,
.section:not(.section--dark) h3 {
  color: #0E1A2A !important;
  -webkit-text-fill-color: #0E1A2A !important;
}

/* Dark bg heading */
.section--dark h2,
.section--dark h3 {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

/* ─────────────────────────────────────────────────────────────
   I9. OVERALL LINK COLORS — consistent
───────────────────────────────────────────────────────────── */
a {
  color: #1565A8 !important;
  transition: color .22s !important;
}

a:hover {
  color: #E8570A !important;
}

/* Footer links override */
.site-footer a {
  color: rgba(255,255,255,.52) !important;
  -webkit-text-fill-color: rgba(255,255,255,.52) !important;
}

.site-footer a:hover {
  color: #FF9243 !important;
  -webkit-text-fill-color: #FF9243 !important;
}

/* ─────────────────────────────────────────────────────────────
   I10. RADIUS CONSISTENCY — all inline radius vars work now
───────────────────────────────────────────────────────────── */
[style*="border-radius:var(--radius-lg)"],
[style*="border-radius: var(--radius-lg)"] {
  border-radius: 18px !important;
}

[style*="border-radius:var(--radius-xl)"],
[style*="border-radius: var(--radius-xl)"] {
  border-radius: 24px !important;
}

[style*="border-radius:var(--radius-full)"],
[style*="border-radius: var(--radius-full)"] {
  border-radius: 999px !important;
}

/* ─────────────────────────────────────────────────────────────
   I11. TESTIMONIAL DOTS — visible brand colored
───────────────────────────────────────────────────────────── */
.testimonial-dot {
  width: 26px !important;
  height: 4px !important;
  border-radius: 4px !important;
  background: rgba(14,26,42,.15) !important;
  border: none !important;
  cursor: pointer !important;
  transition: width .3s, background .3s !important;
  padding: 0 !important;
}

.testimonial-dot.active,
.testimonial-dot:hover {
  width: 42px !important;
  background: linear-gradient(90deg, #E8570A, #1565A8) !important;
}

/* ─────────────────────────────────────────────────────────────
   MOBILE KILLSWITCH — v1.2 additions
───────────────────────────────────────────────────────────── */
@media (pointer: coarse) {
  .page-dining .menu-card:hover,
  .page-packages [class*="package-card"]:hover,
  .page-events [class*="event-card"]:hover,
  .page-gallery .gallery-item:hover { transform: none !important; }
  a { -webkit-text-fill-color: unset !important; }
}

/* ─────────────────────────────────────────────────────────────
   REDUCED MOTION
───────────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  .testimonial-dot { transition: none !important; }
  button.carousel-prev, button.carousel-next { transition: none !important; }
}

/* ── design-v1_3.css (8,286b) ── */
/* Reserve card titles — gradient text restored */
.v26-rs__card-title{background:linear-gradient(118deg,#fff6f0 0%,#ff9f43 22%,#ffffff 42%,#ff9f43 60%,#fff6f0 100%) !important;background-size:240% auto !important;-webkit-background-clip:text !important;-webkit-text-fill-color:transparent !important;background-clip:text !important;animation:v26Shimmer 8s linear infinite !important;color:transparent !important;}
.v26-rs__cta-card__heading{background:linear-gradient(118deg,#ffffff 0%,#ffe8d6 20%,#ff9f43 38%,#ffffff 52%,#ff9f43 68%,#ffffff 100%) !important;background-size:240% auto !important;-webkit-background-clip:text !important;-webkit-text-fill-color:transparent !important;background-clip:text !important;animation:v26Shimmer 9s linear infinite !important;color:transparent !important;}
.v26-rs__cta-card__desc{color:rgba(255,255,255,.70) !important;-webkit-text-fill-color:rgba(255,255,255,.70) !important;}
.v26-rs__title{color:#fff !important;-webkit-text-fill-color:#fff !important;background:none !important;animation:none !important;}
.v26-rs__eyebrow{color:#ff9f43 !important;-webkit-text-fill-color:#ff9f43 !important;background:none !important;animation:none !important;}
.v26-rs__stat-num{color:#ff9f43 !important;-webkit-text-fill-color:#ff9f43 !important;background:none !important;animation:none !important;}
.v26-rs__stat-lbl{color:rgba(255,255,255,.50) !important;-webkit-text-fill-color:rgba(255,255,255,.50) !important;}
.v26-rs__price-num{background:linear-gradient(110deg,#e8570a,#ff9f43,#d63031) !important;background-size:200% auto !important;-webkit-background-clip:text !important;-webkit-text-fill-color:transparent !important;background-clip:text !important;animation:v26Shimmer 4s linear infinite !important;color:transparent !important;}
.v26-rs__price-from,.v26-rs__price-night{color:rgba(255,255,255,.50) !important;-webkit-text-fill-color:rgba(255,255,255,.50) !important;}
.v26-rs__perk{color:rgba(255,255,255,.75) !important;-webkit-text-fill-color:rgba(255,255,255,.75) !important;}
.v26-rs__find-desc{color:rgba(255,255,255,.58) !important;-webkit-text-fill-color:rgba(255,255,255,.58) !important;}
.v26-rs__trust-item{color:rgba(255,255,255,.48) !important;-webkit-text-fill-color:rgba(255,255,255,.48) !important;}
.v26-rs__cta-card__badge{color:#fff !important;-webkit-text-fill-color:#fff !important;}
.v26-rs__cta-note{color:rgba(255,255,255,.38) !important;-webkit-text-fill-color:rgba(255,255,255,.38) !important;}
.v26-rs__contact-btn{color:#ff9f43 !important;-webkit-text-fill-color:#ff9f43 !important;}
.v26-rs__find-card label{color:rgba(255,159,67,.68) !important;-webkit-text-fill-color:rgba(255,159,67,.68) !important;}
.v26-rs__fact strong{color:#ff9f43 !important;-webkit-text-fill-color:#ff9f43 !important;}
.v26-rs__fact span{color:rgba(255,255,255,.40) !important;-webkit-text-fill-color:rgba(255,255,255,.40) !important;}

/* About reviews dark section */
.section--dark .grid-3 p,.section--dark [data-reveal] p{color:rgba(255,255,255,.80) !important;-webkit-text-fill-color:rgba(255,255,255,.80) !important;}
.section--dark .grid-3 strong,.section--dark [data-reveal] strong{color:#fff !important;-webkit-text-fill-color:#fff !important;}
.section--dark .grid-3 span,.section--dark [data-reveal] span{color:rgba(255,255,255,.55) !important;-webkit-text-fill-color:rgba(255,255,255,.55) !important;}
.section--dark .grid-3 div[style*="color:#f4a83a"],.section--dark [data-reveal] div[style*="color:#f4a83a"]{color:#FF9243 !important;-webkit-text-fill-color:#FF9243 !important;}
.section--dark div[style*="border-radius:50%"],.section--dark div[style*="border-radius: 50%"]{color:#fff !important;-webkit-text-fill-color:#fff !important;}

/* Nav hover */
.nav-menu>.menu-item>a{position:relative !important;transition:color .22s !important;}
.nav-menu>.menu-item>a::after{content:'' !important;position:absolute !important;bottom:-5px !important;left:50% !important;right:50% !important;height:2px !important;background:linear-gradient(90deg,#E8570A,#FF9243,#1565A8) !important;border-radius:2px !important;transition:left .28s cubic-bezier(.4,0,.2,1),right .28s cubic-bezier(.4,0,.2,1) !important;}
.nav-menu>.menu-item>a:hover::after,.nav-menu>.menu-item.current-menu-item>a::after,.nav-menu>.menu-item.current-page-ancestor>a::after{left:0 !important;right:0 !important;}
.main-nav a:hover,.nav-menu>.menu-item>a:hover,.nav-menu>.menu-item.current-menu-item>a{color:#FF9243 !important;-webkit-text-fill-color:#FF9243 !important;text-shadow:0 0 18px rgba(255,146,67,.50) !important;}
.header--scrolled .main-nav a:hover,.header--scrolled .nav-menu>.menu-item>a:hover,.header--scrolled .nav-menu>.menu-item.current-menu-item>a,.scrolled .nav-menu>.menu-item>a:hover{color:#E8570A !important;-webkit-text-fill-color:#E8570A !important;text-shadow:none !important;}
.sub-menu .menu-item>a:hover{color:#E8570A !important;-webkit-text-fill-color:#E8570A !important;background:rgba(232,87,10,.07) !important;padding-left:1.5rem !important;}
#main-navigation li a:hover,#main-navigation li.current-menu-item>a{color:#FF9243 !important;-webkit-text-fill-color:#FF9243 !important;background:rgba(232,87,10,.12) !important;}

/* Booking padding 80% reduction */
.v412-booking-section{padding:0.5rem 0 1rem !important;}
.v412-form-card{padding:0.55rem 0.6rem !important;border-radius:16px !important;margin-bottom:0.45rem !important;}
.v412-form-card__header{margin-bottom:0.45rem !important;gap:.75rem !important;}
.v412-divider{margin:0.4rem 0 0.6rem !important;}
.v412-form-card input,.v412-form-card select,.v412-shortcode-wrap input,.v412-shortcode-wrap select,[class*="hsr-"] input,[class*="hsr-"] select{padding:.78rem .95rem !important;font-size:.95rem !important;min-height:48px !important;}
[class*="hsr-"] [type="submit"],[class*="hsr-"] button[type="submit"],.v412-shortcode-wrap [type="submit"]{padding:.78rem 2rem !important;min-height:48px !important;}
.v412-info-row{gap:0.4rem !important;}
.v412-info-card{padding:0.5rem 0.55rem !important;border-radius:14px !important;}
.v412-facts-grid{gap:0.28rem !important;}
.v412-fact{padding:.28rem .38rem !important;}
.v412-contact-btn{padding:.38rem .55rem !important;font-size:.72rem !important;}
.v26-booking-perks-bar{padding:.28rem 0 !important;}
.v26-booking-perks-bar__item{padding:.2rem .55rem !important;font-size:.64rem !important;}
@media(max-width:768px){.v412-booking-section{padding:0.4rem 0 0.8rem !important;}.v412-form-card{padding:0.6rem 0.55rem !important;}.v412-info-card{padding:0.5rem 0.5rem !important;}}

/* Link scoped — NOT using fill:inherit which breaks gradient */
main a:not([class]):not([style]){color:#1565A8;text-decoration:underline;text-decoration-color:rgba(21,101,168,.28);text-underline-offset:2px;transition:color .22s;}
main a:not([class]):not([style]):hover{color:#E8570A;}
.site-footer a{color:rgba(255,255,255,.52) !important;-webkit-text-fill-color:rgba(255,255,255,.52) !important;text-decoration:none !important;}
.site-footer a:hover{color:#FF9243 !important;-webkit-text-fill-color:#FF9243 !important;}

/* Headings — scoped without breaking gradient */
.section--dark .section-title,.section--dark h2,.section--dark h3{color:#fff !important;-webkit-text-fill-color:#fff !important;}
.page-hero .page-hero-title,.page-hero h1{color:#fff !important;-webkit-text-fill-color:#fff !important;}

/* Body text contrast */
body{color:#1A2530 !important;}
.section:not(.section--dark) p{color:#4A5C6E !important;-webkit-text-fill-color:#4A5C6E !important;line-height:1.78 !important;}
.section--dark p{color:rgba(255,255,255,.72) !important;-webkit-text-fill-color:rgba(255,255,255,.72) !important;}
.section-label{color:#C94F0E !important;-webkit-text-fill-color:#C94F0E !important;font-weight:800 !important;}
.section--dark .section-label{color:#FF9243 !important;-webkit-text-fill-color:#FF9243 !important;}
.page-hero-subtitle{color:rgba(255,255,255,.82) !important;-webkit-text-fill-color:rgba(255,255,255,.82) !important;}

/* Mobile killswitch */
@media(pointer:coarse){.nav-menu>.menu-item>a::after{display:none !important;}}
@media(prefers-reduced-motion:reduce){.nav-menu>.menu-item>a::after{transition:none !important;}.v26-rs__card-title,.v26-rs__cta-card__heading,.v26-rs__price-num{animation:none !important;}}

/* ── design-v1_4.css (16,468b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v1.4
   ──────────────────────────────────────────────────────────────
   F1. Pillar dark card text — white visible (v1.3 p rule killed it)
   F2. Room specs sq ft — stronger contrast, brand styled
   F3. Room desc text — clearly readable
   F4. All same-color-on-same-bg fixes site-wide
   F5. Section p rule — scoped to NOT kill inline white text
   I1. Pillar cards — premium look
   I2. Room specs — styled beautifully
   I3. Room amenity tags — brand styled
   I4. About section chips — premium
   I5. Dining section — readable
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   F1. PILLAR CARD — Inline style white text protection
   Pillar[1] has bg:var(--color-primary) dark + sc:rgba(255,255,255,0.75)
   But v1.3 `.section:not(.section--dark) p { -webkit-text-fill-color:#4A5C6E }` 
   kills the white inline text. Fix: respect inline style color.
───────────────────────────────────────────────────────────── */

/* Override: when p has inline style color, respect it */
p[style*="color:rgba(255,255,255"],
p[style*="color: rgba(255,255,255"],
p[style*="color:var(--color-white)"],
p[style*="color:#fff"],
p[style*="color: #fff"],
span[style*="color:rgba(255,255,255"],
div[style*="color:rgba(255,255,255"] p {
  color: rgba(255,255,255,.78) !important;
  -webkit-text-fill-color: rgba(255,255,255,.78) !important;
}

/* Pillar dark card (bg=var(--color-primary)) — white text */
[style*="background:var(--color-primary)"] p,
[style*="background: var(--color-primary)"] p {
  color: rgba(255,255,255,.78) !important;
  -webkit-text-fill-color: rgba(255,255,255,.78) !important;
}

[style*="background:var(--color-primary)"] h3,
[style*="background: var(--color-primary)"] h3 {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

/* Pillar light cards — dark readable text */
[style*="background:var(--color-white)"] p,
[style*="background: var(--color-white)"] p,
[style*="background:#fff"] p {
  color: #5C6B7A !important;
  -webkit-text-fill-color: #5C6B7A !important;
}

[style*="background:var(--color-white)"] h3,
[style*="background: var(--color-white)"] h3 {
  color: #0E1A2A !important;
  -webkit-text-fill-color: #0E1A2A !important;
}

/* ─────────────────────────────────────────────────────────────
   F2+F3. ROOM SPECS + DESC — Clearly visible
───────────────────────────────────────────────────────────── */

/* Room specs row — brand styled */
.v26-room-specs {
  display: flex !important;
  gap: .8rem !important;
  flex-wrap: wrap !important;
  padding: .85rem 1rem !important;
  background: linear-gradient(135deg, rgba(21,101,168,.06), rgba(21,101,168,.03)) !important;
  border: 1px solid rgba(21,101,168,.14) !important;
  border-radius: 12px !important;
  margin-bottom: .9rem !important;
}

/* Each spec item — sky blue accent, clearly visible */
.v26-room-spec {
  display: flex !important;
  align-items: center !important;
  gap: .38rem !important;
  font-size: .80rem !important;
  font-weight: 600 !important;
  color: #1A3A5C !important;
  -webkit-text-fill-color: #1A3A5C !important;
  letter-spacing: .01em !important;
}

/* Spec icons — sky blue */
.v26-room-spec svg {
  stroke: #1565A8 !important;
  flex-shrink: 0 !important;
  opacity: .85 !important;
}

/* sq ft specifically — make it pop */
.v26-room-spec:first-child {
  color: #0C2040 !important;
  -webkit-text-fill-color: #0C2040 !important;
  font-weight: 700 !important;
}

.v26-room-spec:first-child svg {
  stroke: #E8570A !important;
  opacity: 1 !important;
}

/* Room desc — highly readable */
.v26-room-desc {
  font-size: .88rem !important;
  line-height: 1.72 !important;
  color: #4A5C6E !important;
  -webkit-text-fill-color: #4A5C6E !important;
  margin: 0 0 .9rem !important;
}

/* Room content top area */
.v26-room-content {
  background: #fff !important;
}

/* Room type — sky blue, clear */
.v26-room-type {
  font-size: .58rem !important;
  font-weight: 800 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
  color: #1565A8 !important;
  -webkit-text-fill-color: #1565A8 !important;
  display: block !important;
  margin-bottom: .22rem !important;
  background: none !important;
  animation: none !important;
}

/* Room title — dark, strong */
.v26-room-title {
  color: #0E1A2A !important;
  -webkit-text-fill-color: #0E1A2A !important;
  font-size: 1.25rem !important;
}

/* Room rating */
.v26-room-rating {
  display: flex !important;
  align-items: center !important;
  gap: .3rem !important;
  font-size: .78rem !important;
  font-weight: 700 !important;
  color: #C94F0E !important;
  -webkit-text-fill-color: #C94F0E !important;
  background: rgba(232,87,10,.08) !important;
  border: 1px solid rgba(232,87,10,.18) !important;
  border-radius: 20px !important;
  padding: .22rem .6rem !important;
}

/* ─────────────────────────────────────────────────────────────
   F3. ROOM AMENITY TAGS — brand orange/sky
───────────────────────────────────────────────────────────── */
.v26-room-amen__tag {
  font-size: .70rem !important;
  font-weight: 600 !important;
  color: #1A3A5C !important;
  -webkit-text-fill-color: #1A3A5C !important;
  background: rgba(21,101,168,.07) !important;
  border: 1px solid rgba(21,101,168,.16) !important;
  padding: .28rem .65rem !important;
  border-radius: 50px !important;
  transition: background .2s, border-color .2s, color .2s !important;
}

.v26-room-amen__tag:hover {
  background: rgba(232,87,10,.09) !important;
  border-color: rgba(232,87,10,.28) !important;
  color: #C94F0E !important;
  -webkit-text-fill-color: #C94F0E !important;
}

.v26-room-amen__tag svg {
  stroke: #1565A8 !important;
}

.v26-room-amen__more {
  font-size: .68rem !important;
  font-weight: 700 !important;
  color: #C94F0E !important;
  -webkit-text-fill-color: #C94F0E !important;
  background: rgba(232,87,10,.07) !important;
  border: 1px dashed rgba(232,87,10,.28) !important;
  padding: .28rem .65rem !important;
  border-radius: 50px !important;
}

/* ─────────────────────────────────────────────────────────────
   F4. SECTION P RULE — Scoped, respects inline styles
   Replace the too-broad v1.3 rule
───────────────────────────────────────────────────────────── */

/* More specific: only p WITHOUT inline style, in light sections */
.section:not(.section--dark) p:not([style]) {
  color: #4A5C6E !important;
  -webkit-text-fill-color: #4A5C6E !important;
  line-height: 1.78 !important;
}

/* Dark section p — white */
.section--dark p:not([style]) {
  color: rgba(255,255,255,.72) !important;
  -webkit-text-fill-color: rgba(255,255,255,.72) !important;
}

/* ─────────────────────────────────────────────────────────────
   I1. PILLAR CARDS — Premium visual
───────────────────────────────────────────────────────────── */

/* All pillar cards */
[aria-labelledby="pillars-heading"] [data-reveal] {
  transition: transform .34s cubic-bezier(.34,1.28,.64,1),
              box-shadow .30s ease !important;
}

[aria-labelledby="pillars-heading"] [data-reveal]:hover {
  transform: translateY(-8px) !important;
  box-shadow:
    0 16px 50px rgba(6,13,25,.14),
    0 4px 14px rgba(6,13,25,.07) !important;
}

/* Pillar icon circle — bigger */
[aria-labelledby="pillars-heading"] div[style*="border-radius:50%"] {
  box-shadow: 0 8px 24px rgba(6,13,25,.20) !important;
}

/* ─────────────────────────────────────────────────────────────
   I2. ABOUT SECTION — Better readability
───────────────────────────────────────────────────────────── */
[style*="color:var(--color-text-light)"] {
  color: #5C6B7A !important;
  -webkit-text-fill-color: #5C6B7A !important;
}

/* ─────────────────────────────────────────────────────────────
   I3. DINING SECTION — Menu list items visible
───────────────────────────────────────────────────────────── */
.section li {
  color: #4A5C6E !important;
  -webkit-text-fill-color: #4A5C6E !important;
}

.section--dark li {
  color: rgba(255,255,255,.72) !important;
  -webkit-text-fill-color: rgba(255,255,255,.72) !important;
}

/* Dining ✦ icons */
li span[style*="color:var(--color-accent)"],
li span[style*="color: var(--color-accent)"] {
  color: #E8570A !important;
  -webkit-text-fill-color: #E8570A !important;
}

/* ─────────────────────────────────────────────────────────────
   I4. EXPERIENCES SECTION TEXT
───────────────────────────────────────────────────────────── */
.section--dark[aria-labelledby="experiences-heading"] .section-subtitle {
  color: rgba(255,255,255,.70) !important;
  -webkit-text-fill-color: rgba(255,255,255,.70) !important;
}

/* ─────────────────────────────────────────────────────────────
   I5. STATS SECTION — strong contrast
───────────────────────────────────────────────────────────── */
.stat-label,
.stat-item p {
  color: #5C6B7A !important;
  -webkit-text-fill-color: #5C6B7A !important;
  font-size: .82rem !important;
  font-weight: 500 !important;
}

.section--dark .stat-label,
.section--dark .stat-item p {
  color: rgba(255,255,255,.55) !important;
  -webkit-text-fill-color: rgba(255,255,255,.55) !important;
}

/* ─────────────────────────────────────────────────────────────
   I6. VIRTUAL TOUR SECTION — text readable
───────────────────────────────────────────────────────────── */
.virtual-tour-section p[style*="color:rgba(255,255,255,0.75)"] {
  color: rgba(255,255,255,.82) !important;
  -webkit-text-fill-color: rgba(255,255,255,.82) !important;
}

/* ─────────────────────────────────────────────────────────────
   I7. REVIEW CARDS (front-page) — readable name/role text
───────────────────────────────────────────────────────────── */
.section--dark [style*="font-weight:700;color:var(--color-white)"],
.section--dark [style*="font-weight: 700; color: var(--color-white)"] {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

/* Review card role text */
.section--dark [style*="font-size:0.85rem;color:rgba(255,255,255,0.6)"],
.section--dark [style*="color:rgba(255,255,255,0.6)"] {
  color: rgba(255,255,255,.65) !important;
  -webkit-text-fill-color: rgba(255,255,255,.65) !important;
}

/* Review card body text */
.section--dark [style*="font-size:0.9rem;color:rgba(255,255,255,0.75)"],
.section--dark [style*="color:rgba(255,255,255,0.75)"] {
  color: rgba(255,255,255,.80) !important;
  -webkit-text-fill-color: rgba(255,255,255,.80) !important;
}

/* ─────────────────────────────────────────────────────────────
   I8. PACKAGES / EVENTS / GALLERY SUBPAGES — text readable
───────────────────────────────────────────────────────────── */
.page-packages p,
.page-events p,
.page-gallery p {
  color: #4A5C6E !important;
  -webkit-text-fill-color: #4A5C6E !important;
}

.page-packages h2,
.page-packages h3,
.page-events h2,
.page-events h3 {
  color: #0E1A2A !important;
  -webkit-text-fill-color: #0E1A2A !important;
}

/* ─────────────────────────────────────────────────────────────
   I9. FOOTER — Better text visibility
───────────────────────────────────────────────────────────── */
.site-footer p {
  color: rgba(255,255,255,.52) !important;
  -webkit-text-fill-color: rgba(255,255,255,.52) !important;
  line-height: 1.72 !important;
}

.site-footer .footer-col-title {
  font-size: 1.0rem !important;
  font-weight: 500 !important;
  margin-bottom: 1.1rem !important;
}

/* Footer bottom */
.footer-bottom p,
.footer-bottom span {
  color: rgba(255,255,255,.38) !important;
  -webkit-text-fill-color: rgba(255,255,255,.38) !important;
  font-size: .76rem !important;
}

/* ─────────────────────────────────────────────────────────────
   I10. HEADER — Book Now button text always white
───────────────────────────────────────────────────────────── */
.header-book-btn,
.header-book-btn:visited {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

/* Mobile nav links */
#main-navigation a {
  color: rgba(255,255,255,.82) !important;
  -webkit-text-fill-color: rgba(255,255,255,.82) !important;
  font-size: .92rem !important;
}

/* ─────────────────────────────────────────────────────────────
   MOBILE
───────────────────────────────────────────────────────────── */
@media (pointer: coarse) {
  [aria-labelledby="pillars-heading"] [data-reveal]:hover {
    transform: none !important;
  }
}

/* ── design-v1_5.css (15,919b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v1.5
   ──────────────────────────────────────────────────────────────
   F1. Nav menu — slightly smaller, clean professional
   F2. Mobile bar — call/WA/book all on ONE horizontal line
   I1. Smooth scroll + anchor highlight
   I2. Image lazy-load fade-in
   I3. Room card expand panel polish
   I4. Back to top button — refined
   I5. Page hero — stronger overlay gradient
   I6. Booking form — label + input vertical rhythm
   I7. Footer newsletter inline
   I8. Focus ring — accessible sky blue
   I9. Dropdown menu — polished
   I10. Print styles — clean
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   F1. NAV MENU — Professional sizing
   Current: font-size: 0.72rem, padding: 0.5rem 0.95rem
   Keep but make slightly more refined
───────────────────────────────────────────────────────────── */
.nav-menu > .menu-item > a {
  font-size: .70rem !important;
  font-weight: 700 !important;
  letter-spacing: .10em !important;
  padding: .5rem .88rem !important;
  font-family: var(--v01-font-body) !important;
}

/* Header height — slightly more compact */
.header-inner {
  height: 72px !important;
}

:root { --header-height: 72px; }

/* Logo size */
.site-logo img,
.custom-logo {
  height: 52px !important;
  width: auto !important;
}

/* Dropdown menu — more polished */
.nav-menu .sub-menu {
  border-radius: 16px !important;
  border: 1px solid rgba(14,26,42,.08) !important;
  box-shadow:
    0 4px 16px rgba(14,26,42,.10),
    0 16px 48px rgba(14,26,42,.14) !important;
  padding: .5rem !important;
  min-width: 200px !important;
}

.nav-menu .sub-menu .menu-item > a {
  border-radius: 10px !important;
  font-size: .78rem !important;
  font-weight: 500 !important;
  padding: .6rem 1rem !important;
  color: #0E1A2A !important;
  -webkit-text-fill-color: #0E1A2A !important;
  letter-spacing: .02em !important;
  text-transform: none !important;
  transition: background .18s, color .18s, padding-left .18s !important;
}

.nav-menu .sub-menu .menu-item > a:hover {
  background: rgba(232,87,10,.07) !important;
  color: #E8570A !important;
  -webkit-text-fill-color: #E8570A !important;
  padding-left: 1.3rem !important;
}

/* ─────────────────────────────────────────────────────────────
   F2. MOBILE STICKY BAR — All 3 buttons on ONE line
   Root cause: .mobile-book-bar a (from responsive.css) conflicts
   with .mobile-book-bar__btn. Force single row flex.
───────────────────────────────────────────────────────────── */
@media (max-width: 1024px) {
  /* Force bar to one horizontal row — override everything */
  .mobile-book-bar {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: nowrap !important;
    gap: .4rem !important;
    padding: .5rem .7rem !important;
    padding-bottom: calc(.5rem + env(safe-area-inset-bottom, 0px)) !important;
    width: 100% !important;
    box-sizing: border-box !important;
    position: fixed !important;
    bottom: 0 !important; left: 0 !important; right: 0 !important;
    z-index: 9990 !important;
    background: linear-gradient(90deg, #060D19, #0A1628, #060D19) !important;
    border-top: 1px solid rgba(232,87,10,.22) !important;
    box-shadow: 0 -4px 20px rgba(0,0,0,.55) !important;
  }

  /* Hide any old wrapper divs that cause column layout */
  .mobile-book-bar-phone {
    display: none !important;
  }

  /* Every button: equal flex, single row */
  .mobile-book-bar > a,
  .mobile-book-bar__btn {
    flex: 1 !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    gap: .32rem !important;
    padding: .52rem .35rem !important;
    border-radius: 10px !important;
    font-size: .72rem !important;
    font-weight: 700 !important;
    letter-spacing: .03em !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    min-width: 0 !important;
    overflow: hidden !important;
    transition: opacity .2s, transform .18s !important;
    border: none !important;
  }

  .mobile-book-bar > a:active,
  .mobile-book-bar__btn:active {
    opacity: .80 !important;
    transform: scale(.95) !important;
  }

  /* Call button */
  .mobile-book-bar__btn--call,
  .mobile-book-bar > a[href^="tel"] {
    background: rgba(255,255,255,.08) !important;
    border: 1px solid rgba(255,255,255,.14) !important;
    color: rgba(255,255,255,.85) !important;
    -webkit-text-fill-color: rgba(255,255,255,.85) !important;
  }

  .mobile-book-bar__btn--call svg,
  .mobile-book-bar > a[href^="tel"] svg {
    stroke: rgba(255,255,255,.75) !important;
    flex-shrink: 0 !important;
    width: 15px !important; height: 15px !important;
  }

  /* WhatsApp button */
  .mobile-book-bar__btn--wa,
  .mobile-book-bar > a[href*="wa.me"] {
    background: rgba(37,211,102,.12) !important;
    border: 1px solid rgba(37,211,102,.25) !important;
    color: #25d366 !important;
    -webkit-text-fill-color: #25d366 !important;
  }

  .mobile-book-bar__btn--wa svg,
  .mobile-book-bar > a[href*="wa.me"] svg {
    fill: #25d366 !important;
    flex-shrink: 0 !important;
    width: 15px !important; height: 15px !important;
  }

  /* Book Now — wider, orange */
  .mobile-book-bar__btn--book,
  .mobile-book-bar > a[href*="booking"] {
    flex: 1.5 !important;
    background: linear-gradient(
      135deg, #B52A1F 0%, #E8570A 45%, #FF9243 70%, #E8570A 100%
    ) !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    border: none !important;
    box-shadow: 0 3px 12px rgba(232,87,10,.45) !important;
  }

  .mobile-book-bar__btn--book svg,
  .mobile-book-bar > a[href*="booking"] svg {
    stroke: rgba(255,255,255,.90) !important;
    flex-shrink: 0 !important;
    width: 15px !important; height: 15px !important;
  }

  /* Body padding for bar */
  body {
    padding-bottom: calc(60px + env(safe-area-inset-bottom, 0px)) !important;
  }
}

/* ─────────────────────────────────────────────────────────────
   I1. SMOOTH SCROLL + HTML scroll behavior
───────────────────────────────────────────────────────────── */
html {
  scroll-behavior: smooth !important;
}

/* Target highlight when jumped to via anchor */
:target {
  scroll-margin-top: 90px;
}

/* ─────────────────────────────────────────────────────────────
   I2. IMAGE LAZY LOAD FADE-IN
───────────────────────────────────────────────────────────── */
img[loading="lazy"] {
  opacity: 0;
  transition: opacity .45s ease;
}

img[loading="lazy"].loaded,
img[loading="lazy"]:not([src=""]) {
  opacity: 1;
}

/* All images — smooth load */
.v26-room-card img,
.home-gallery-item img,
.experience-card img,
.about-snippet__image img,
.page-hero-bg img {
  transition: opacity .4s ease, transform .5s cubic-bezier(.34,1.2,.64,1) !important;
}

/* ─────────────────────────────────────────────────────────────
   I3. ROOM CARD EXPAND PANEL — premium polish
───────────────────────────────────────────────────────────── */
.v26-room-expand {
  background: linear-gradient(
    160deg, #F7F3EF 0%, #FBF8F5 100%
  ) !important;
  border-top: 1px solid rgba(21,101,168,.12) !important;
  border-radius: 0 0 22px 22px !important;
}

/* Expand amenity tags */
.v26-room-expand .v26-room-amen__tag {
  font-size: .72rem !important;
  padding: .3rem .7rem !important;
}

/* ─────────────────────────────────────────────────────────────
   I4. BACK TO TOP — refined positioning
───────────────────────────────────────────────────────────── */
.scroll-to-top {
  width: 42px !important;
  height: 42px !important;
  right: 18px !important;
  bottom: calc(76px + env(safe-area-inset-bottom, 0px)) !important;
  border-radius: 50% !important;
  background: linear-gradient(145deg, #0A1628, #0C2040) !important;
  border: 1.5px solid rgba(46,134,222,.35) !important;
  box-shadow:
    0 4px 18px rgba(6,13,25,.40),
    0 0 0 1px rgba(21,101,168,.10) !important;
}

.scroll-to-top svg {
  stroke: #2E86DE !important;
  width: 18px !important; height: 18px !important;
}

.scroll-to-top:hover {
  border-color: #2E86DE !important;
  box-shadow:
    0 6px 26px rgba(6,13,25,.50),
    0 0 20px rgba(46,134,222,.22) !important;
  transform: translateY(-3px) !important;
}

@media (max-width: 1024px) {
  .scroll-to-top {
    right: 12px !important;
    width: 38px !important; height: 38px !important;
  }
}

/* ─────────────────────────────────────────────────────────────
   I5. PAGE HERO — Stronger, more cinematic
───────────────────────────────────────────────────────────── */
.page-hero--short {
  min-height: 320px !important;
}

.page-hero {
  overflow: hidden !important;
}

.page-hero-bg img {
  will-change: auto !important;
  object-fit: cover !important;
  object-position: center 30% !important;
}

/* ─────────────────────────────────────────────────────────────
   I6. FOCUS — Sky blue accessible ring
───────────────────────────────────────────────────────────── */
:focus-visible {
  outline: 2px solid #2E86DE !important;
  outline-offset: 3px !important;
  box-shadow: 0 0 0 4px rgba(46,134,222,.18) !important;
}

/* ─────────────────────────────────────────────────────────────
   I7. RESERVATION SECTION — Stats bar polish
───────────────────────────────────────────────────────────── */
.v26-rs__stats {
  border-radius: 18px !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
}

/* Eyebrow decorative lines */
.v26-rs__eyebrow {
  display: flex !important;
  align-items: center !important;
  gap: .65rem !important;
}

.v26-rs__eyebrow::before {
  content: '' !important;
  width: 24px !important;
  height: 1.5px !important;
  background: linear-gradient(90deg, transparent, #ff9f43) !important;
  display: inline-block !important;
}

.v26-rs__eyebrow::after {
  content: '' !important;
  width: 24px !important;
  height: 1.5px !important;
  background: linear-gradient(90deg, #ff9f43, transparent) !important;
  display: inline-block !important;
}

/* ─────────────────────────────────────────────────────────────
   I8. SELECTION COLOR — brand
───────────────────────────────────────────────────────────── */
::selection {
  background: rgba(232,87,10,.22) !important;
  color: #0E1A2A !important;
}

::-moz-selection {
  background: rgba(232,87,10,.22);
  color: #0E1A2A;
}

/* ─────────────────────────────────────────────────────────────
   I9. SECTION DIVIDER — better spacing
───────────────────────────────────────────────────────────── */
.gold-divider {
  max-width: 280px !important;
  margin: 1.2rem auto !important;
  height: 1.5px !important;
}

/* ─────────────────────────────────────────────────────────────
   I10. PRINT STYLES
───────────────────────────────────────────────────────────── */
@media print {
  .site-header,
  .site-footer,
  .mobile-book-bar,
  .scroll-to-top,
  .v8-float-book,
  nav { display: none !important; }

  body { color: #000 !important; background: #fff !important; }
  h1, h2, h3 { color: #000 !important; -webkit-text-fill-color: #000 !important; }
  a { color: #000 !important; text-decoration: underline !important; }
  .page-hero { min-height: auto !important; }
}

/* ─────────────────────────────────────────────────────────────
   MOBILE — additional killswitch
───────────────────────────────────────────────────────────── */
@media (pointer: coarse) {
  html { scroll-behavior: auto !important; }
  .v26-rs__stats {
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }
}

/* ─────────────────────────────────────────────────────────────
   REDUCED MOTION
───────────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; }
  img[loading="lazy"] { opacity: 1 !important; transition: none !important; }
  .scroll-to-top:hover { transform: none !important; }
}

/* ── design-v1_6.css (11,802b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v1.6
   ──────────────────────────────────────────────────────────────
   Room section updates for 6 new categories:
   — AC badge on applicable rooms
   — Room numbers display
   — Category label styling
   — Price per category range
   — Room grid for 6 categories (2 cols on desktop)
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   ROOMS GRID — 6 categories layout
   Front page: 3 featured in grid-3
   Rooms page: 6 categories, 2 per row
───────────────────────────────────────────────────────────── */

/* Rooms page grid — 2 col for 6 items */
.page-rooms .v26-rooms-grid,
.page-rooms [class*="rooms-grid"] {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 2rem !important;
}

@media (max-width: 900px) {
  .page-rooms .v26-rooms-grid,
  .page-rooms [class*="rooms-grid"] {
    grid-template-columns: 1fr !important;
    gap: 1.5rem !important;
  }
}

/* ─────────────────────────────────────────────────────────────
   ROOM CARD — Enhanced for new data fields
───────────────────────────────────────────────────────────── */

/* Room type — category label */
.v26-room-type {
  font-size: .58rem !important;
  font-weight: 800 !important;
  letter-spacing: .16em !important;
  text-transform: uppercase !important;
  color: #1565A8 !important;
  -webkit-text-fill-color: #1565A8 !important;
  background: rgba(21,101,168,.08) !important;
  padding: .2rem .6rem !important;
  border-radius: 20px !important;
  display: inline-block !important;
  margin-bottom: .4rem !important;
}

/* Room title — larger, serif */
.v26-room-title {
  font-size: 1.18rem !important;
  font-weight: 600 !important;
  line-height: 1.28 !important;
  color: #0E1A2A !important;
  -webkit-text-fill-color: #0E1A2A !important;
  margin: 0 0 .35rem !important;
}

/* Room desc — readable */
.v26-room-desc {
  font-size: .86rem !important;
  line-height: 1.70 !important;
  color: #4A5C6E !important;
  -webkit-text-fill-color: #4A5C6E !important;
  margin-bottom: .9rem !important;
}

/* AC badge — shown when room has AC */
.v26-room-ac-badge {
  display: inline-flex !important;
  align-items: center !important;
  gap: .28rem !important;
  font-size: .60rem !important;
  font-weight: 800 !important;
  letter-spacing: .10em !important;
  text-transform: uppercase !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  background: linear-gradient(135deg, #1565A8, #2E86DE) !important;
  padding: .22rem .65rem !important;
  border-radius: 20px !important;
  box-shadow: 0 2px 8px rgba(21,101,168,.35) !important;
}

/* Room numbers row */
.v26-room-numbers {
  font-size: .76rem !important;
  color: #5C6B7A !important;
  -webkit-text-fill-color: #5C6B7A !important;
  line-height: 1.60 !important;
  padding: .6rem .75rem !important;
  background: rgba(21,101,168,.04) !important;
  border-left: 2.5px solid rgba(21,101,168,.22) !important;
  border-radius: 0 8px 8px 0 !important;
  margin-bottom: .75rem !important;
  font-weight: 500 !important;
}

.v26-room-numbers strong {
  color: #0E1A2A !important;
  -webkit-text-fill-color: #0E1A2A !important;
  font-weight: 700 !important;
}

/* Price — larger, prominent */
.v26-price-val,
.v26-room-img__price-val {
  font-family: var(--v01-font-display) !important;
  font-style: italic !important;
  font-size: 1.35rem !important;
  font-weight: 600 !important;
  color: #E8570A !important;
  -webkit-text-fill-color: #E8570A !important;
  background: none !important;
  animation: none !important;
  filter: none !important;
}

.v26-price-label,
.v26-room-img__price-label {
  font-size: .60rem !important;
  color: #8A9BB0 !important;
  -webkit-text-fill-color: #8A9BB0 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  font-weight: 600 !important;
}

/* From text before price */
.v26-price-from {
  font-size: .62rem !important;
  color: #8A9BB0 !important;
  -webkit-text-fill-color: #8A9BB0 !important;
  font-weight: 600 !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;
}

/* Badge chips on image */
.v8-room-badge--featured,
.v26-room-img__badge {
  background: linear-gradient(
    135deg, #0C2040 0%, #1565A8 55%, #2E86DE 100%
  ) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-size: .60rem !important;
  font-weight: 800 !important;
  letter-spacing: .10em !important;
  padding: .28rem .75rem !important;
  border-radius: 20px !important;
  box-shadow: 0 2px 10px rgba(21,101,168,.40) !important;
}

/* Qty badge */
.v26-room-img__avail {
  background: rgba(6,13,25,.75) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  font-size: .62rem !important;
  font-weight: 600 !important;
  color: rgba(255,255,255,.90) !important;
  -webkit-text-fill-color: rgba(255,255,255,.90) !important;
  padding: .28rem .65rem !important;
  border-radius: 20px !important;
}

/* Availability dot — green */
.v26-room-img__avail-dot {
  background: #22c55e !important;
  box-shadow: 0 0 6px rgba(34,197,94,.70) !important;
  width: 7px !important;
  height: 7px !important;
  border-radius: 50% !important;
  display: inline-block !important;
}

/* Book button */
.v26-room-book-btn {
  background: linear-gradient(
    135deg, #B52A1F 0%, #E8570A 42%, #FF9243 65%, #E8570A 100%
  ) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border: none !important;
  border-radius: 100px !important;
  padding: .65rem 1.4rem !important;
  font-size: .76rem !important;
  font-weight: 700 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  box-shadow: 0 3px 12px rgba(232,87,10,.40) !important;
  transition: transform .22s cubic-bezier(.34,1.3,.64,1), box-shadow .20s !important;
  animation: none !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: .4rem !important;
}

.v26-room-book-btn:hover {
  transform: translateY(-2px) scale(1.010) !important;
  box-shadow: 0 6px 20px rgba(232,87,10,.52) !important;
}

/* Room content area */
.v26-room-content {
  padding: 1.4rem 1.6rem !important;
  background: #fff !important;
}

/* ─────────────────────────────────────────────────────────────
   PAGE ROOMS — Section header update
───────────────────────────────────────────────────────────── */
.page-rooms .section-title {
  font-size: clamp(1.8rem, 3.5vw, 3rem) !important;
  color: #0E1A2A !important;
  -webkit-text-fill-color: #0E1A2A !important;
}

/* Category divider between room groups */
.v26-room-category-header {
  grid-column: 1 / -1 !important;
  display: flex !important;
  align-items: center !important;
  gap: 1rem !important;
  padding: 1.5rem 0 .5rem !important;
  border-top: 1px solid rgba(14,26,42,.08) !important;
  margin-top: 1rem !important;
}

.v26-room-category-header:first-child {
  border-top: none !important;
  padding-top: 0 !important;
  margin-top: 0 !important;
}

.v26-room-category-header h3 {
  font-family: var(--v01-font-display) !important;
  font-style: italic !important;
  font-weight: 400 !important;
  font-size: 1.3rem !important;
  color: #0E1A2A !important;
  -webkit-text-fill-color: #0E1A2A !important;
  margin: 0 !important;
}

/* ─────────────────────────────────────────────────────────────
   FRONT PAGE ROOMS SECTION
───────────────────────────────────────────────────────────── */

/* Front page room section header */
[aria-labelledby="rooms-h"] .section-title {
  font-size: clamp(2rem, 3.8vw, 3.4rem) !important;
}

/* "View All 6 Room Categories" CTA */
[aria-labelledby="rooms-h"] .btn--secondary {
  background: transparent !important;
  border: 1.5px solid rgba(21,101,168,.35) !important;
  color: #1565A8 !important;
  -webkit-text-fill-color: #1565A8 !important;
  border-radius: 100px !important;
  font-size: .78rem !important;
  font-weight: 700 !important;
  letter-spacing: .07em !important;
  transition: background .22s, border-color .22s !important;
}

[aria-labelledby="rooms-h"] .btn--secondary:hover {
  background: rgba(21,101,168,.07) !important;
  border-color: rgba(21,101,168,.60) !important;
}

/* ─────────────────────────────────────────────────────────────
   RESPONSIVE
───────────────────────────────────────────────────────────── */
@media (max-width: 768px) {
  .v26-room-content { padding: 1.2rem 1.2rem !important; }
  .v26-room-title { font-size: 1.05rem !important; }
  .v26-price-val { font-size: 1.2rem !important; }
  .v26-room-book-btn { padding: .60rem 1.2rem !important; font-size: .72rem !important; }
  .v26-room-numbers { font-size: .72rem !important; }
}

/* ─────────────────────────────────────────────────────────────
   NAV SIZE — Perfect premium vibe
   Reduce from .70rem to .67rem, tighter spacing
───────────────────────────────────────────────────────────── */
.nav-menu > .menu-item > a {
  font-size: .67rem !important;
  font-weight: 700 !important;
  letter-spacing: .12em !important;
  padding: .48rem .82rem !important;
  text-transform: uppercase !important;
}

/* Scrolled header nav — slightly darker, crisp */
.header--scrolled .nav-menu > .menu-item > a,
.scrolled .nav-menu > .menu-item > a {
  font-size: .67rem !important;
  color: #0E1A2A !important;
  -webkit-text-fill-color: #0E1A2A !important;
}

/* Book Now button — compact pill */
.header-book-btn {
  font-size: .67rem !important;
  padding: .48rem 1.2rem !important;
  letter-spacing: .10em !important;
  border-radius: 100px !important;
}

/* Header inner — refined height */
.header-inner {
  height: 68px !important;
}

:root { --header-height: 68px; }

/* ── design-v1_7.css (36,452b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v1.7
   ──────────────────────────────────────────────────────────────
   Changes:
   1. Navigation text — gradient color (gold→amber) + 20% font reduction
   2. Global font size reduction ~20% across body/section text
   3. "Why Dhulikhel Sunrise Resort" — completely new ultra-premium layout
   4. Reserve section — completely new immersive dark design
   5. Hero section — responsive text fixes
   6. Section modernization — stats, amenities, testimonials
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   1. GLOBAL FONT SIZE REDUCTION ~20%
   base: 16px → 13px  (CSS custom property override)
   All rem-based sizes inherit this automatically
───────────────────────────────────────────────────────────── */
:root {
  --font-size-base:   13px !important;
  --font-size-sm:     0.72rem !important;
  --font-size-md:     0.82rem !important;
  --font-size-lg:     0.92rem !important;
  --font-size-xl:     1.02rem !important;
  --font-size-2xl:    1.22rem !important;
  --font-size-3xl:    1.62rem !important;
  --font-size-4xl:    2.02rem !important;
  --font-size-5xl:    2.82rem !important;
  --font-size-hero:   clamp(2rem, 5vw, 4rem) !important;
}

html { font-size: 13px !important; }

body {
  font-size: 0.92rem !important;
  line-height: 1.7 !important;
}

/* Section titles — 20% smaller */
.section-title {
  font-size: clamp(1.4rem, 3.2vw, 2.2rem) !important;
}
.section-subtitle {
  font-size: 0.84rem !important;
  line-height: 1.75 !important;
}
.section-label {
  font-size: 0.6rem !important;
  letter-spacing: 0.18em !important;
}

/* ─────────────────────────────────────────────────────────────
   2. NAVIGATION — Gradient text + size reduction (no button change)
───────────────────────────────────────────────────────────── */

/* Transparent header nav — gold gradient on white bg */
.nav-menu > li > a,
.nav-menu > .menu-item > a {
  font-size: 0.536rem !important;  /* 0.67rem × 0.8 */
  font-weight: 700 !important;
  letter-spacing: 0.13em !important;
  text-transform: uppercase !important;
  padding: 0.38rem 0.65rem !important;
  /* Gradient text */
  background: linear-gradient(
    135deg,
    #f5d97a 0%,
    #e8c14a 25%,
    #f0a830 55%,
    #e8570a 100%
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  color: transparent !important;
  transition: opacity 0.22s ease !important;
}

.nav-menu > li > a:hover,
.nav-menu > li.current-menu-item > a {
  background: linear-gradient(
    135deg,
    #ffffff 0%,
    #f5d97a 40%,
    #e8c14a 100%
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  opacity: 0.95 !important;
}

/* Scrolled header — darker gradient for contrast on white bg */
.header--scrolled .nav-menu > li > a,
.scrolled .nav-menu > li > a {
  background: linear-gradient(
    135deg,
    #0C2040 0%,
    #1565A8 50%,
    #E8570A 100%
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  font-size: 0.536rem !important;
}

.header--scrolled .nav-menu > li > a:hover,
.header--scrolled .nav-menu > li.current-menu-item > a,
.scrolled .nav-menu > li > a:hover {
  background: linear-gradient(
    135deg,
    #E8570A 0%,
    #f0a830 50%,
    #e8c14a 100%
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

/* Nav underline indicator — gold */
.nav-menu > li > a::after {
  background: linear-gradient(90deg, #e8c14a, #e8570a) !important;
}

/* Submenu — keep readable */
.nav-menu .sub-menu li a {
  background: none !important;
  -webkit-text-fill-color: inherit !important;
  color: var(--color-text) !important;
  font-size: 0.72rem !important;
}

/* ─────────────────────────────────────────────────────────────
   3. HERO SECTION — Responsive text & modern feel
───────────────────────────────────────────────────────────── */

/* Hero eyebrow / badge */
.hero-eyebrow,
.hero-badge,
[class*="hero"] .eyebrow,
[class*="hero"] .badge {
  font-size: 0.52rem !important;
  letter-spacing: 0.2em !important;
}

/* Hero title — fully clamp-responsive */
.hero-title,
[class*="hero__title"],
[class*="hero-title"],
.hero-section .section-title {
  font-size: clamp(1.75rem, 5.5vw, 4rem) !important;
  line-height: 1.1 !important;
  letter-spacing: -0.01em !important;
}

/* Hero subtitle */
.hero-subtitle,
[class*="hero__subtitle"],
[class*="hero-subtitle"] {
  font-size: clamp(0.78rem, 1.8vw, 1rem) !important;
  line-height: 1.7 !important;
  max-width: 55ch !important;
}

/* Hero scroll indicator */
.hero-scroll,
[class*="scroll-indicator"],
[class*="hero-scroll"] {
  font-size: 0.58rem !important;
}

/* Hero stat pills */
[class*="hero__stat"],
[class*="hero-stat"] {
  font-size: 0.64rem !important;
}

/* ─────────────────────────────────────────────────────────────
   4. "WHY DHULIKHEL SUNRISE RESORT" — Ultra-premium new layout
   COMPLETELY DIFFERENT from the simple 3-card grid
   New design: Split asymmetric layout with large visual + floating cards
───────────────────────────────────────────────────────────── */

/* Hide old pillars section layout */
section[aria-labelledby="pillars-heading"] .grid-3 {
  display: none !important;
}
section[aria-labelledby="pillars-heading"] .section-header {
  display: none !important;
}
section[aria-labelledby="pillars-heading"] {
  padding: 0 !important;
  background: none !important;
  overflow: visible !important;
}

/* The new WHY section wrapper injects via ::before content trick —
   we override the entire section with a new structure below.
   The real new markup is in front-page.php (v17-why-* classes). */

/* ── NEW v1.7 Why Section ── */
.v17-why-section {
  position: relative;
  background: #060d18;
  padding: 0;
  overflow: hidden;
}

.v17-why-section::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 60% 70% at 0% 40%, rgba(212,175,55,0.10) 0%, transparent 70%),
    radial-gradient(ellipse 50% 60% at 100% 60%, rgba(232,87,10,0.08) 0%, transparent 70%);
  pointer-events: none;
}

/* Grid: 55% visual left | 45% content right */
.v17-why__grid {
  display: grid;
  grid-template-columns: 55fr 45fr;
  min-height: 100vh;
  position: relative;
  z-index: 1;
}

/* LEFT — immersive image panel */
.v17-why__visual {
  position: relative;
  overflow: hidden;
}

.v17-why__visual-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  filter: brightness(0.72) saturate(1.05);
  transition: transform 8s ease;
}

.v17-why__visual:hover .v17-why__visual-img {
  transform: scale(1.04);
}

/* Overlay gradient on the image */
.v17-why__visual-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    to right,
    transparent 0%,
    rgba(6,13,24,0.55) 70%,
    rgba(6,13,24,0.92) 100%
  );
  pointer-events: none;
}

/* Floating stat badges over the image */
.v17-why__float-stats {
  position: absolute;
  bottom: 2.5rem;
  left: 2rem;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.v17-why__float-stat {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  background: rgba(6,13,24,0.78);
  border: 1px solid rgba(212,175,55,0.28);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-radius: 50px;
  padding: 0.6rem 1.1rem;
  max-width: fit-content;
}

.v17-why__float-stat-num {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 1.1rem;
  font-weight: 700;
  font-style: italic;
  background: linear-gradient(135deg, #f5d97a, #e8570a);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  line-height: 1;
}

.v17-why__float-stat-lbl {
  font-size: 0.6rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.72);
  line-height: 1.2;
}

/* Year badge top-left corner of image */
.v17-why__year-badge {
  position: absolute;
  top: 2rem;
  left: 2rem;
  width: 80px;
  height: 80px;
  border: 1px solid rgba(212,175,55,0.45);
  border-radius: 50%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background: rgba(6,13,24,0.75);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

.v17-why__year-badge-est {
  font-size: 0.46rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(212,175,55,0.75);
  line-height: 1;
}

.v17-why__year-badge-num {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 1.05rem;
  font-weight: 700;
  color: #fff;
  line-height: 1.1;
}

/* RIGHT — content panel */
.v17-why__content {
  padding: 5rem 4rem 5rem 3.5rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
}

.v17-why__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  font-size: 0.58rem;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: #d4af37;
  margin-bottom: 1.25rem;
}

.v17-why__eyebrow::before {
  content: '';
  display: inline-block;
  width: 28px;
  height: 1.5px;
  background: linear-gradient(90deg, #d4af37, transparent);
}

.v17-why__title {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: clamp(2rem, 3.5vw, 3.2rem);
  font-weight: 700;
  font-style: italic;
  line-height: 1.12;
  color: #ffffff;
  margin-bottom: 1rem;
}

.v17-why__title em {
  background: linear-gradient(135deg, #f5d97a 0%, #e8c14a 40%, #e8570a 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  font-style: normal;
}

/* Gold rule */
.v17-why__rule {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin-bottom: 1.5rem;
}

.v17-why__rule::before,
.v17-why__rule::after {
  content: '';
  height: 1px;
  background: linear-gradient(90deg, #d4af37, transparent);
  flex: 1;
  max-width: 60px;
}

.v17-why__rule::after {
  background: linear-gradient(270deg, #d4af37, transparent);
}

.v17-why__rule-diamond {
  color: #d4af37;
  font-size: 0.65rem;
  opacity: 0.75;
}

/* Intro text */
.v17-why__intro {
  font-size: 0.84rem;
  line-height: 1.8;
  color: rgba(255,255,255,0.62);
  margin-bottom: 2.5rem;
  max-width: 46ch;
}

/* Pillars — vertical list, premium icon treatment */
.v17-why__pillars {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin-bottom: 2.5rem;
}

.v17-why__pillar {
  display: grid;
  grid-template-columns: 48px 1fr;
  gap: 0 1rem;
  padding: 1.25rem 0;
  border-bottom: 1px solid rgba(255,255,255,0.07);
  transition: background 0.25s;
}

.v17-why__pillar:first-child {
  border-top: 1px solid rgba(255,255,255,0.07);
}

.v17-why__pillar:hover {
  background: rgba(212,175,55,0.035);
  border-radius: 8px;
  padding-left: 0.6rem;
  padding-right: 0.6rem;
}

/* Icon circle */
.v17-why__pillar-icon {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: linear-gradient(135deg, rgba(212,175,55,0.15), rgba(232,87,10,0.12));
  border: 1px solid rgba(212,175,55,0.22);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.25rem;
  flex-shrink: 0;
  align-self: flex-start;
  margin-top: 0.1rem;
}

.v17-why__pillar-body {}

.v17-why__pillar-num {
  font-size: 0.46rem;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(212,175,55,0.55);
  margin-bottom: 0.2rem;
}

.v17-why__pillar-title {
  font-size: 0.88rem;
  font-weight: 700;
  color: rgba(255,255,255,0.9);
  margin-bottom: 0.3rem;
  letter-spacing: 0.01em;
}

.v17-why__pillar-text {
  font-size: 0.76rem;
  line-height: 1.65;
  color: rgba(255,255,255,0.48);
}

/* CTA at bottom of content */
.v17-why__cta {
  display: flex;
  gap: 0.75rem;
  align-items: center;
  flex-wrap: wrap;
}

.v17-why__btn-primary {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  background: linear-gradient(135deg, #B52A1F 0%, #E8570A 45%, #FF9243 65%, #E8570A 100%);
  background-size: 200% 100%;
  color: #fff;
  -webkit-text-fill-color: #fff;
  text-decoration: none;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 0.85rem 1.75rem;
  border-radius: 100px;
  box-shadow: 0 4px 18px rgba(232,87,10,0.42);
  transition: transform 0.22s cubic-bezier(.34,1.3,.64,1), box-shadow 0.2s, background-position 0.4s;
}

.v17-why__btn-primary:hover {
  transform: translateY(-2px) scale(1.02);
  box-shadow: 0 8px 28px rgba(232,87,10,0.55);
  background-position: 100% 0;
}

.v17-why__btn-secondary {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  color: rgba(212,175,55,0.85);
  -webkit-text-fill-color: rgba(212,175,55,0.85);
  text-decoration: none;
  font-size: 0.68rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-bottom: 1px solid rgba(212,175,55,0.35);
  padding-bottom: 0.1rem;
  transition: color 0.2s, border-color 0.2s;
}

.v17-why__btn-secondary:hover {
  color: #f5d97a;
  -webkit-text-fill-color: #f5d97a;
  border-color: rgba(212,175,55,0.7);
}

@media (max-width: 1024px) {
  .v17-why__grid {
    grid-template-columns: 1fr;
    min-height: auto;
  }
  .v17-why__visual {
    height: 50vw;
    min-height: 280px;
  }
  .v17-why__visual-overlay {
    background: linear-gradient(
      to bottom,
      transparent 0%,
      rgba(6,13,24,0.92) 100%
    );
  }
  .v17-why__content {
    padding: 3rem 2rem;
  }
  .v17-why__title {
    font-size: clamp(1.7rem, 5vw, 2.4rem);
  }
}

@media (max-width: 640px) {
  .v17-why__visual {
    height: 62vw;
  }
  .v17-why__content {
    padding: 2.25rem 1.25rem;
  }
  .v17-why__float-stats {
    bottom: 1.25rem;
    left: 1rem;
  }
  .v17-why__float-stat {
    padding: 0.45rem 0.85rem;
  }
  .v17-why__float-stat-num {
    font-size: 0.9rem;
  }
  .v17-why__pillar {
    grid-template-columns: 40px 1fr;
  }
  .v17-why__pillar-icon {
    width: 40px;
    height: 40px;
    font-size: 1rem;
  }
  .v17-why__cta {
    flex-direction: column;
    align-items: flex-start;
  }
}

/* ─────────────────────────────────────────────────────────────
   5. RESERVE SECTION — New immersive dark "magazine" design
   Replaces the v26-reserve-section
───────────────────────────────────────────────────────────── */

/* Hide old reserve section visuals / keep structure */
.v26-reserve-section {
  background: #03080f !important;
  padding: 0 !important;
  position: relative !important;
  overflow: hidden !important;
}

.v26-rs__bg,
.v26-rs__mountain-silhouette,
.v26-rs__orb-1,
.v26-rs__orb-2 {
  display: none !important;
}

/* New reserve design — injected class v17-reserve on same section */
.v17-reserve {
  position: relative;
  z-index: 1;
  padding: 0;
}

/* Full-width bg parallax strip */
.v17-reserve__bg-strip {
  position: absolute;
  inset: 0;
  overflow: hidden;
  z-index: 0;
}

.v17-reserve__bg-strip::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, #03080f 0%, rgba(3,8,15,0.0) 35%, rgba(3,8,15,0.0) 65%, #03080f 100%),
    url('https://images.unsplash.com/photo-1506905925346-21bda4d32df4?w=1920&h=900&fit=crop&auto=format&q=80') center/cover no-repeat;
  filter: brightness(0.18) saturate(0.8);
}

.v17-reserve__bg-strip::after {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 65% 50% at 50% 50%, rgba(212,175,55,0.06) 0%, transparent 70%),
    linear-gradient(135deg, rgba(232,87,10,0.05) 0%, transparent 60%);
}

/* Main container */
.v17-reserve__inner {
  position: relative;
  z-index: 2;
  max-width: 1280px;
  margin: 0 auto;
  padding: 5.5rem 2rem;
}

/* Top eyebrow */
.v17-reserve__eyebrow {
  text-align: center;
  margin-bottom: 0.75rem;
}

.v17-reserve__eyebrow span {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  font-size: 0.56rem;
  font-weight: 700;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: rgba(212,175,55,0.75);
}

.v17-reserve__eyebrow span::before,
.v17-reserve__eyebrow span::after {
  content: '';
  display: inline-block;
  width: 32px;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(212,175,55,0.5));
}

.v17-reserve__eyebrow span::after {
  background: linear-gradient(270deg, transparent, rgba(212,175,55,0.5));
}

/* Headline */
.v17-reserve__headline {
  text-align: center;
  font-family: 'Playfair Display', Georgia, serif;
  font-size: clamp(2.2rem, 5vw, 4rem);
  font-weight: 700;
  font-style: italic;
  color: #fff;
  line-height: 1.1;
  margin-bottom: 0.6rem;
}

.v17-reserve__headline em {
  background: linear-gradient(135deg, #f5d97a 0%, #e8c14a 35%, #e8570a 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  font-style: normal;
}

.v17-reserve__sub {
  text-align: center;
  font-size: 0.82rem;
  color: rgba(255,255,255,0.45);
  margin-bottom: 3.5rem;
}

/* ── 3-column card row ── */
.v17-reserve__cards {
  display: grid;
  grid-template-columns: 1fr 1.25fr 1fr;
  gap: 1.25rem;
  margin-bottom: 3rem;
  align-items: start;
}

/* Base card */
.v17-reserve__card {
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 16px;
  padding: 2rem 1.75rem;
  position: relative;
  overflow: hidden;
  transition: border-color 0.3s, transform 0.3s;
}

.v17-reserve__card:hover {
  border-color: rgba(212,175,55,0.25);
  transform: translateY(-3px);
}

.v17-reserve__card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(212,175,55,0.3), transparent);
}

/* Featured center card */
.v17-reserve__card--featured {
  background: linear-gradient(
    160deg,
    rgba(212,175,55,0.12) 0%,
    rgba(232,87,10,0.08) 50%,
    rgba(212,175,55,0.06) 100%
  );
  border-color: rgba(212,175,55,0.22);
  padding: 2.5rem 2rem;
}

.v17-reserve__card--featured::before {
  background: linear-gradient(90deg, transparent, rgba(212,175,55,0.55), transparent);
}

.v17-reserve__card--featured:hover {
  border-color: rgba(212,175,55,0.45);
  transform: translateY(-5px);
}

/* Card header icon */
.v17-reserve__card-icon {
  width: 48px;
  height: 48px;
  border-radius: 14px;
  background: linear-gradient(135deg, rgba(212,175,55,0.18), rgba(232,87,10,0.14));
  border: 1px solid rgba(212,175,55,0.2);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #d4af37;
  margin-bottom: 1.25rem;
}

.v17-reserve__card--featured .v17-reserve__card-icon {
  background: linear-gradient(135deg, rgba(212,175,55,0.28), rgba(232,87,10,0.22));
  border-color: rgba(212,175,55,0.35);
}

/* Best value badge */
.v17-reserve__badge {
  position: absolute;
  top: 1.25rem;
  right: 1.25rem;
  background: linear-gradient(135deg, #d4af37, #e8570a);
  color: #fff;
  -webkit-text-fill-color: #fff;
  font-size: 0.48rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  padding: 0.28rem 0.7rem;
  border-radius: 20px;
}

.v17-reserve__card-title {
  font-size: 1rem;
  font-weight: 700;
  color: rgba(255,255,255,0.92);
  margin-bottom: 0.6rem;
}

.v17-reserve__card--featured .v17-reserve__card-title {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 1.3rem;
  font-style: italic;
  color: #fff;
}

.v17-reserve__card-text {
  font-size: 0.76rem;
  line-height: 1.7;
  color: rgba(255,255,255,0.45);
  margin-bottom: 1.25rem;
}

/* Perks list */
.v17-reserve__perks {
  list-style: none;
  margin: 0 0 1.5rem;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.55rem;
}

.v17-reserve__perk {
  display: flex;
  align-items: flex-start;
  gap: 0.55rem;
  font-size: 0.72rem;
  color: rgba(255,255,255,0.6);
  line-height: 1.5;
}

.v17-reserve__perk svg {
  color: #d4af37;
  flex-shrink: 0;
  margin-top: 0.12rem;
}

/* Price display */
.v17-reserve__price {
  display: flex;
  align-items: baseline;
  gap: 0.3rem;
  margin-bottom: 1.25rem;
  padding: 0.9rem 1.1rem;
  background: rgba(212,175,55,0.07);
  border: 1px solid rgba(212,175,55,0.15);
  border-radius: 12px;
}

.v17-reserve__price-from {
  font-size: 0.56rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(212,175,55,0.6);
}

.v17-reserve__price-num {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 1.7rem;
  font-weight: 700;
  color: #f5d97a;
  line-height: 1;
}

.v17-reserve__price-night {
  font-size: 0.62rem;
  color: rgba(255,255,255,0.4);
}

/* Main CTA button */
.v17-reserve__book-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.6rem;
  width: 100%;
  background: linear-gradient(135deg, #B52A1F 0%, #E8570A 42%, #FF9243 65%, #E8570A 100%);
  background-size: 200% 100%;
  color: #fff;
  -webkit-text-fill-color: #fff;
  text-decoration: none;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 0.95rem 1.5rem;
  border-radius: 100px;
  box-shadow: 0 4px 20px rgba(232,87,10,0.45);
  transition: transform 0.22s cubic-bezier(.34,1.3,.64,1), box-shadow 0.2s, background-position 0.4s;
}

.v17-reserve__book-btn:hover {
  transform: translateY(-2px) scale(1.02);
  box-shadow: 0 8px 30px rgba(232,87,10,0.6);
  background-position: 100% 0;
}

.v17-reserve__note {
  text-align: center;
  font-size: 0.64rem;
  color: rgba(255,255,255,0.35);
  margin-top: 0.75rem;
}

/* Contact info card */
.v17-reserve__contact-stack {
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
  margin-bottom: 1.25rem;
}

.v17-reserve__contact-btn {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 10px;
  padding: 0.7rem 1rem;
  color: rgba(255,255,255,0.7);
  -webkit-text-fill-color: rgba(255,255,255,0.7);
  text-decoration: none;
  font-size: 0.72rem;
  transition: border-color 0.2s, color 0.2s, background 0.2s;
}

.v17-reserve__contact-btn:hover {
  border-color: rgba(212,175,55,0.3);
  color: #f5d97a;
  -webkit-text-fill-color: #f5d97a;
  background: rgba(212,175,55,0.06);
}

.v17-reserve__contact-btn svg {
  color: #d4af37;
  flex-shrink: 0;
}

/* Quick facts in find card */
.v17-reserve__facts {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 0.5rem;
  margin-top: 0.5rem;
}

.v17-reserve__fact {
  text-align: center;
  padding: 0.65rem 0.4rem;
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 10px;
}

.v17-reserve__fact span {
  display: block;
  font-size: 0.52rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.38);
  margin-bottom: 0.2rem;
}

.v17-reserve__fact strong {
  font-size: 0.72rem;
  font-weight: 700;
  color: rgba(255,255,255,0.75);
}

/* ── Bottom trust bar ── */
.v17-reserve__trust {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  flex-wrap: wrap;
  padding: 1.5rem 0 0;
  border-top: 1px solid rgba(255,255,255,0.06);
}

.v17-reserve__trust-item {
  display: flex;
  align-items: center;
  gap: 0.45rem;
  font-size: 0.62rem;
  font-weight: 600;
  color: rgba(255,255,255,0.5);
  padding: 0.4rem 1.25rem;
}

.v17-reserve__trust-item svg {
  color: rgba(212,175,55,0.65);
  flex-shrink: 0;
}

.v17-reserve__trust-sep {
  width: 1px;
  height: 16px;
  background: rgba(255,255,255,0.1);
}

@media (max-width: 1024px) {
  .v17-reserve__cards {
    grid-template-columns: 1fr 1fr;
  }
  .v17-reserve__card--featured {
    grid-column: 1 / -1;
  }
}

@media (max-width: 640px) {
  .v17-reserve__inner {
    padding: 3.5rem 1.25rem;
  }
  .v17-reserve__cards {
    grid-template-columns: 1fr;
  }
  .v17-reserve__card--featured {
    grid-column: auto;
  }
  .v17-reserve__headline {
    font-size: clamp(1.7rem, 8vw, 2.4rem);
  }
  .v17-reserve__facts {
    grid-template-columns: 1fr 1fr 1fr;
    gap: 0.35rem;
  }
  .v17-reserve__trust {
    justify-content: flex-start;
    gap: 0.25rem;
  }
  .v17-reserve__trust-sep {
    display: none;
  }
}

/* ─────────────────────────────────────────────────────────────
   6. STATS SECTION — Modern floating card design
───────────────────────────────────────────────────────────── */
.stats-grid {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 1.5rem !important;
}

.stat-item {
  background: linear-gradient(160deg, rgba(255,255,255,0.98), rgba(248,249,252,0.95)) !important;
  border: 1px solid rgba(212,175,55,0.12) !important;
  border-radius: 16px !important;
  padding: 1.75rem 1.25rem !important;
  text-align: center !important;
  box-shadow: 0 4px 24px rgba(14,26,42,0.06), 0 1px 3px rgba(14,26,42,0.04) !important;
  position: relative !important;
  overflow: hidden !important;
  transition: transform 0.25s, box-shadow 0.25s !important;
}

.stat-item::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(90deg, #d4af37, #e8570a);
}

.stat-item:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 12px 32px rgba(14,26,42,0.10), 0 2px 8px rgba(14,26,42,0.06) !important;
}

.stat-number {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 2.2rem !important;
  font-weight: 700 !important;
  font-style: italic !important;
  background: linear-gradient(135deg, #0C2040, #1565A8) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  line-height: 1 !important;
  margin-bottom: 0.5rem !important;
}

.stat-label {
  font-size: 0.62rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: rgba(14,26,42,0.5) !important;
  -webkit-text-fill-color: rgba(14,26,42,0.5) !important;
}

@media (max-width: 768px) {
  .stats-grid {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

/* ─────────────────────────────────────────────────────────────
   7. AMENITIES — Modern icon card grid
───────────────────────────────────────────────────────────── */
.amenity-card {
  background: rgba(255,255,255,0.98) !important;
  border: 1px solid rgba(212,175,55,0.1) !important;
  border-radius: 14px !important;
  padding: 1.6rem 1.4rem !important;
  transition: transform 0.25s, box-shadow 0.25s, border-color 0.25s !important;
  position: relative !important;
  overflow: hidden !important;
}

.amenity-card::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, rgba(212,175,55,0.4), transparent);
  opacity: 0;
  transition: opacity 0.25s;
}

.amenity-card:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 8px 28px rgba(14,26,42,0.09) !important;
  border-color: rgba(212,175,55,0.25) !important;
}

.amenity-card:hover::after {
  opacity: 1;
}

.amenity-icon {
  font-size: 1.65rem !important;
  margin-bottom: 0.85rem !important;
  display: block !important;
}

.amenity-name {
  font-size: 0.8rem !important;
  font-weight: 700 !important;
  color: #0E1A2A !important;
  -webkit-text-fill-color: #0E1A2A !important;
  margin-bottom: 0.4rem !important;
}

.amenity-desc {
  font-size: 0.7rem !important;
  line-height: 1.65 !important;
  color: rgba(14,26,42,0.5) !important;
  -webkit-text-fill-color: rgba(14,26,42,0.5) !important;
}

/* ─────────────────────────────────────────────────────────────
   8. SECTION MODERNIZATION — testimonials, newsletter, final CTA
───────────────────────────────────────────────────────────── */

/* Testimonials — more premium */
.testimonial-card {
  border-radius: 16px !important;
  padding: 2rem 1.75rem !important;
}

/* Newsletter — more modern */
.newsletter-section {
  background: linear-gradient(135deg, #060f1e 0%, #0a1628 50%, #060d18 100%) !important;
  position: relative !important;
  overflow: hidden !important;
}

.newsletter-section::before {
  content: '';
  position: absolute;
  top: -40%;
  right: -10%;
  width: 500px;
  height: 500px;
  background: radial-gradient(circle, rgba(212,175,55,0.07) 0%, transparent 65%);
  pointer-events: none;
}

/* Final CTA — glass effect */
.final-cta-section {
  background: linear-gradient(
    160deg,
    #f8f5ee 0%,
    #fdf9f0 50%,
    #f8f5ee 100%
  ) !important;
  position: relative !important;
  overflow: hidden !important;
}

.final-cta-section::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 60% 80% at 50% 0%, rgba(212,175,55,0.08) 0%, transparent 70%);
  pointer-events: none;
}

/* ─────────────────────────────────────────────────────────────
   9. GENERAL MODERNIZATION — headings, labels, dividers
───────────────────────────────────────────────────────────── */

/* Gold divider — slightly refined */
.gold-divider {
  height: 1.5px !important;
  background: linear-gradient(90deg, transparent, #d4af37 30%, #e8570a 60%, transparent) !important;
  width: 80px !important;
  margin: 1rem 0 !important;
}

.gold-divider.centered {
  margin: 1rem auto !important;
}

/* Section label pill */
.section-label {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.4rem !important;
  font-size: 0.59rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  color: #B52A1F !important;
  background: rgba(181,42,31,0.07) !important;
  padding: 0.3rem 0.85rem !important;
  border-radius: 20px !important;
  margin-bottom: 0.75rem !important;
}

/* ─────────────────────────────────────────────────────────────
   10. SCROLL PROGRESS — thinner, more refined
───────────────────────────────────────────────────────────── */
.scroll-progress {
  height: 2px !important;
}

.scroll-progress-bar {
  background: linear-gradient(90deg, #d4af37, #e8570a, #d4af37) !important;
  background-size: 200% 100% !important;
}

/* ─────────────────────────────────────────────────────────────
   11. HEADER — subtle refinement
───────────────────────────────────────────────────────────── */
.header--scrolled {
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
  box-shadow: 0 1px 0 rgba(14,26,42,0.08), 0 4px 24px rgba(14,26,42,0.06) !important;
}

/* ─────────────────────────────────────────────────────────────
   12. WOW SECTION — larger, more immersive
───────────────────────────────────────────────────────────── */
.wow-title {
  font-size: clamp(2.2rem, 6vw, 5.5rem) !important;
  letter-spacing: -0.02em !important;
}

.wow-eyebrow {
  font-size: 0.62rem !important;
  letter-spacing: 0.22em !important;
}

.wow-text {
  font-size: 0.92rem !important;
  max-width: 50ch !important;
}

/* ─────────────────────────────────────────────────────────────
   13. ABOUT SNIPPET — modern layout
───────────────────────────────────────────────────────────── */
.about-snippet {
  gap: 4rem !important;
}

.about-snippet__image img {
  border-radius: 20px !important;
  box-shadow: 0 20px 60px rgba(14,26,42,0.15) !important;
}

/* ─────────────────────────────────────────────────────────────
   14. GALLERY — modern hover
───────────────────────────────────────────────────────────── */
.gallery-item {
  border-radius: 14px !important;
  overflow: hidden !important;
}

.gallery-item img {
  transition: transform 0.6s cubic-bezier(.25,.46,.45,.94) !important;
}

.gallery-item:hover img {
  transform: scale(1.06) !important;
}

/* ─────────────────────────────────────────────────────────────
   15. BUTTONS — refined (no size/color change for btn--primary)
───────────────────────────────────────────────────────────── */
.btn {
  letter-spacing: 0.09em !important;
  font-size: 0.7rem !important;
}

.btn--lg {
  padding: 0.9rem 2rem !important;
  font-size: 0.76rem !important;
}

.btn--sm {
  padding: 0.5rem 1rem !important;
  font-size: 0.62rem !important;
}

/* ── design-v1_8.css (14,213b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v1.8
   ──────────────────────────────────────────────────────────────
   Changes over v1.7:
   1. Font sizes +10% (base: 13px → 14.3px)
   2. "Why Dhulikhel Sunrise Resort" — new bright premium 3-card layout
   3. Reserve / Find Booking — hsr_check_booking shortcode wrapper
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   1. FONT SIZE +10% (overrides v1.7's 13px base)
   13px × 1.1 = 14.3px
───────────────────────────────────────────────────────────── */
:root {
  --font-size-base:   14.3px !important;
  --font-size-sm:     0.792rem !important;
  --font-size-md:     0.902rem !important;
  --font-size-lg:     1.012rem !important;
  --font-size-xl:     1.122rem !important;
  --font-size-2xl:    1.342rem !important;
  --font-size-3xl:    1.782rem !important;
  --font-size-4xl:    2.222rem !important;
  --font-size-5xl:    3.102rem !important;
  --font-size-hero:   clamp(2.2rem, 5.5vw, 4.4rem) !important;
}

html { font-size: 14.3px !important; }

body {
  font-size: 1rem !important;
}

/* Section text — proportionally updated */
.section-title {
  font-size: clamp(1.6rem, 3.5vw, 2.5rem) !important;
}
.section-subtitle {
  font-size: 0.94rem !important;
  line-height: 1.8 !important;
}
.section-label {
  font-size: 0.66rem !important;
}

/* Nav text size — keep gradient from v1.7, just update size */
.nav-menu > li > a,
.nav-menu > .menu-item > a {
  font-size: 0.59rem !important;
}
.header--scrolled .nav-menu > li > a,
.scrolled .nav-menu > li > a {
  font-size: 0.59rem !important;
}

/* ─────────────────────────────────────────────────────────────
   2. WHY DHULIKHEL SUNRISE RESORT — v1.8 Premium 3-card layout
   Bright, clean background. Highly visible. Ultra-premium feel.
───────────────────────────────────────────────────────────── */

.v18-why-section {
  position: relative;
  background: linear-gradient(175deg, #f8f5ee 0%, #fdf9f0 50%, #f4f0e8 100%);
  padding: 6rem 0 7rem;
  overflow: hidden;
}

/* Subtle decorative background texture */
.v18-why-section::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 70% 50% at 50% -10%, rgba(212,175,55,0.10) 0%, transparent 65%),
    radial-gradient(ellipse 40% 40% at 0% 100%, rgba(181,42,31,0.04) 0%, transparent 60%),
    radial-gradient(ellipse 40% 40% at 100% 0%, rgba(21,101,168,0.04) 0%, transparent 60%);
  pointer-events: none;
}

/* Large decorative text behind — very subtle */
.v18-why-section::after {
  content: 'DHULIKHEL';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-family: 'Playfair Display', Georgia, serif;
  font-size: clamp(6rem, 16vw, 14rem);
  font-weight: 900;
  font-style: italic;
  color: rgba(212,175,55,0.055);
  letter-spacing: 0.05em;
  white-space: nowrap;
  pointer-events: none;
  user-select: none;
  z-index: 0;
}

.v18-why-section .container {
  position: relative;
  z-index: 1;
}

/* Section header */
.v18-why__header {
  text-align: center;
  max-width: 640px;
  margin: 0 auto 3.5rem;
}

.v18-why__header .section-title {
  color: #0C2040 !important;
  -webkit-text-fill-color: #0C2040 !important;
}

.v18-why__header .section-subtitle {
  color: rgba(14,26,42,0.62) !important;
  -webkit-text-fill-color: rgba(14,26,42,0.62) !important;
}

/* Card grid */
.v18-why__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.75rem;
  align-items: stretch;
}

/* Base card */
.v18-why__card {
  position: relative;
  background: #ffffff;
  border: 1px solid rgba(212,175,55,0.14);
  border-radius: 20px;
  padding: 2.5rem 2rem 2.25rem;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: transform 0.3s cubic-bezier(.25,.46,.45,.94),
              box-shadow 0.3s ease,
              border-color 0.3s;
  box-shadow:
    0 2px 12px rgba(14,26,42,0.05),
    0 0 0 0 rgba(212,175,55,0);
}

/* Top accent bar */
.v18-why__card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, transparent, rgba(212,175,55,0.4), transparent);
  transition: background 0.3s;
}

.v18-why__card:hover {
  transform: translateY(-6px);
  border-color: rgba(212,175,55,0.30);
  box-shadow:
    0 12px 40px rgba(14,26,42,0.10),
    0 4px 12px rgba(212,175,55,0.08);
}

.v18-why__card:hover::before {
  background: linear-gradient(90deg, transparent, #d4af37 30%, #e8570a 70%, transparent);
}

/* Featured (center) card */
.v18-why__card--featured {
  background: linear-gradient(
    160deg,
    #0C2040 0%,
    #0d2748 40%,
    #112f58 80%,
    #1565A8 100%
  );
  border-color: rgba(212,175,55,0.22);
  box-shadow:
    0 8px 32px rgba(12,32,64,0.22),
    0 2px 8px rgba(12,32,64,0.12);
}

.v18-why__card--featured::before {
  background: linear-gradient(90deg, transparent, #d4af37 25%, #e8c14a 50%, #e8570a 75%, transparent);
}

.v18-why__card--featured:hover {
  transform: translateY(-8px);
  border-color: rgba(212,175,55,0.45);
  box-shadow:
    0 20px 60px rgba(12,32,64,0.28),
    0 6px 20px rgba(212,175,55,0.12);
}

/* Shine sweep effect */
.v18-why__card-shine {
  position: absolute;
  top: -100%;
  left: -60%;
  width: 40%;
  height: 300%;
  background: linear-gradient(
    105deg,
    transparent 30%,
    rgba(255,255,255,0.06) 50%,
    transparent 70%
  );
  transform: rotate(-15deg);
  transition: left 0.6s ease;
  pointer-events: none;
}

.v18-why__card:hover .v18-why__card-shine {
  left: 120%;
}

/* Large background number */
.v18-why__card-num {
  position: absolute;
  top: 1.25rem;
  right: 1.5rem;
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 4.5rem;
  font-weight: 900;
  font-style: italic;
  line-height: 1;
  color: rgba(14,26,42,0.05);
  pointer-events: none;
  user-select: none;
  transition: color 0.3s;
}

.v18-why__card--featured .v18-why__card-num {
  color: rgba(255,255,255,0.06);
}

.v18-why__card:hover .v18-why__card-num {
  color: rgba(212,175,55,0.08);
}

/* Icon */
.v18-why__card-icon {
  width: 64px;
  height: 64px;
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(212,175,55,0.12), rgba(232,87,10,0.09));
  border: 1px solid rgba(212,175,55,0.18);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.75rem;
  margin-bottom: 1.4rem;
  position: relative;
  z-index: 1;
  flex-shrink: 0;
  transition: transform 0.3s cubic-bezier(.34,1.3,.64,1);
}

.v18-why__card--featured .v18-why__card-icon {
  background: linear-gradient(135deg, rgba(212,175,55,0.2), rgba(232,87,10,0.16));
  border-color: rgba(212,175,55,0.3);
}

.v18-why__card:hover .v18-why__card-icon {
  transform: scale(1.08) rotate(-2deg);
}

/* Title */
.v18-why__card-title {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 1.15rem;
  font-weight: 700;
  line-height: 1.25;
  color: #0C2040;
  margin-bottom: 0.75rem;
  position: relative;
  z-index: 1;
}

.v18-why__card--featured .v18-why__card-title {
  color: #ffffff;
}

/* Gold rule under title */
.v18-why__card-rule {
  width: 36px;
  height: 2px;
  background: linear-gradient(90deg, #d4af37, #e8570a);
  border-radius: 2px;
  margin-bottom: 0.9rem;
  position: relative;
  z-index: 1;
  transition: width 0.3s;
}

.v18-why__card:hover .v18-why__card-rule {
  width: 56px;
}

/* Text */
.v18-why__card-text {
  font-size: 0.88rem;
  line-height: 1.78;
  color: rgba(14,26,42,0.6);
  -webkit-text-fill-color: rgba(14,26,42,0.6);
  position: relative;
  z-index: 1;
  flex: 1;
}

.v18-why__card--featured .v18-why__card-text {
  color: rgba(255,255,255,0.65);
  -webkit-text-fill-color: rgba(255,255,255,0.65);
}

/* CTA on featured card */
.v18-why__card-cta {
  margin-top: 1.75rem;
  position: relative;
  z-index: 1;
}

.v18-why__card-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  background: linear-gradient(135deg, #B52A1F 0%, #E8570A 45%, #FF9243 70%, #E8570A 100%);
  background-size: 200% 100%;
  color: #fff;
  -webkit-text-fill-color: #fff;
  text-decoration: none;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 0.75rem 1.6rem;
  border-radius: 100px;
  box-shadow: 0 4px 16px rgba(232,87,10,0.4);
  transition: transform 0.22s cubic-bezier(.34,1.3,.64,1),
              box-shadow 0.2s,
              background-position 0.4s;
}

.v18-why__card-btn:hover {
  transform: translateY(-2px) scale(1.03);
  box-shadow: 0 8px 24px rgba(232,87,10,0.55);
  background-position: 100% 0;
}

/* Responsive */
@media (max-width: 960px) {
  .v18-why__grid {
    grid-template-columns: 1fr 1fr;
    gap: 1.25rem;
  }
  .v18-why__card--featured {
    grid-column: 1 / -1;
    flex-direction: row;
    gap: 2rem;
    align-items: flex-start;
  }
  .v18-why__card--featured .v18-why__card-icon {
    flex-shrink: 0;
    margin-bottom: 0;
    margin-top: 0.25rem;
  }
}

@media (max-width: 640px) {
  .v18-why-section {
    padding: 4rem 0 5rem;
  }
  .v18-why__grid {
    grid-template-columns: 1fr;
  }
  .v18-why__card--featured {
    flex-direction: column;
    grid-column: auto;
  }
  .v18-why__card--featured .v18-why__card-icon {
    margin-bottom: 1.25rem;
  }
}

/* ─────────────────────────────────────────────────────────────
   3. RESERVE SECTION — hsr_check_booking shortcode wrapper
   Ensures the shortcode renders cleanly inside the card
───────────────────────────────────────────────────────────── */

.v17-reserve__shortcode-wrap {
  margin-bottom: 1.25rem;
}

/* Shortcode output styling — if hsr_check_booking renders a form */
.v17-reserve__shortcode-wrap form,
.v17-reserve__shortcode-wrap .hsr-check-booking {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 12px;
  padding: 1rem 1.1rem;
}

.v17-reserve__shortcode-wrap input[type="text"],
.v17-reserve__shortcode-wrap input[type="email"],
.v17-reserve__shortcode-wrap input[type="number"],
.v17-reserve__shortcode-wrap input[type="search"] {
  width: 100%;
  background: rgba(255,255,255,0.07);
  border: 1px solid rgba(255,255,255,0.14);
  border-radius: 8px;
  padding: 0.6rem 0.9rem;
  color: rgba(255,255,255,0.85);
  font-size: 0.78rem;
  outline: none;
  margin-bottom: 0.65rem;
  transition: border-color 0.2s;
}

.v17-reserve__shortcode-wrap input:focus {
  border-color: rgba(212,175,55,0.45);
}

.v17-reserve__shortcode-wrap input::placeholder {
  color: rgba(255,255,255,0.35);
}

.v17-reserve__shortcode-wrap button,
.v17-reserve__shortcode-wrap input[type="submit"] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  background: linear-gradient(135deg, #B52A1F 0%, #E8570A 50%, #FF9243 75%, #E8570A 100%);
  background-size: 200% 100%;
  color: #fff;
  border: none;
  border-radius: 8px;
  padding: 0.65rem 1.2rem;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  cursor: pointer;
  box-shadow: 0 3px 12px rgba(232,87,10,0.38);
  transition: transform 0.2s, box-shadow 0.2s, background-position 0.4s;
}

.v17-reserve__shortcode-wrap button:hover,
.v17-reserve__shortcode-wrap input[type="submit"]:hover {
  transform: translateY(-1px);
  box-shadow: 0 6px 18px rgba(232,87,10,0.52);
  background-position: 100% 0;
}

/* Result message from shortcode */
.v17-reserve__shortcode-wrap .hsr-booking-result,
.v17-reserve__shortcode-wrap .booking-result {
  font-size: 0.76rem;
  color: rgba(255,255,255,0.75);
  padding: 0.65rem 0.85rem;
  background: rgba(212,175,55,0.08);
  border: 1px solid rgba(212,175,55,0.18);
  border-radius: 8px;
  margin-top: 0.65rem;
}

/* ─────────────────────────────────────────────────────────────
   4. MINOR GLOBAL REFINEMENTS for v1.8 clarity
───────────────────────────────────────────────────────────── */

/* Slightly larger headings proportional to new base */
h1 { font-size: clamp(2rem, 5vw, 3.8rem) !important; }
h2 { font-size: clamp(1.5rem, 3.2vw, 2.4rem) !important; }
h3 { font-size: clamp(1.1rem, 2vw, 1.55rem) !important; }
h4 { font-size: 1.12rem !important; }
h5 { font-size: 0.94rem !important; }
h6 { font-size: 0.82rem !important; }

/* Body text — slightly larger for legibility */
p, li, td, th, label, input, textarea, select, blockquote {
  font-size: inherit;
  line-height: 1.75;
}

/* Buttons — proportional */
.btn {
  font-size: 0.77rem !important;
}
.btn--lg {
  font-size: 0.83rem !important;
  padding: 0.95rem 2.1rem !important;
}
.btn--sm {
  font-size: 0.68rem !important;
}

/* Hero title responsive */
.hero-title,
[class*="hero__title"],
[class*="hero-title"] {
  font-size: clamp(2rem, 6vw, 4.5rem) !important;
}

/* Wow section */
.wow-title {
  font-size: clamp(2.5rem, 6.5vw, 6rem) !important;
}

/* ── design-v1_9.css (21,375b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v1.9
   ──────────────────────────────────────────────────────────────
   Changes over v1.8:
   1. Font base 14.3px → 15.2px globally
   2. "Why Dhulikhel" — v1.9 Bento Grid (ultra-premium, modern)
   3. Reserve col-3 "Find Booking" — compact, minimal
   4. Hover effects throughout
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   1. FONT SIZE: 15.2px base (override v1.8's 14.3px)
───────────────────────────────────────────────────────────── */
:root {
  --font-size-base:   15.2px !important;
  --font-size-sm:     0.80rem !important;
  --font-size-md:     0.90rem !important;
  --font-size-lg:     1.02rem !important;
  --font-size-xl:     1.14rem !important;
  --font-size-2xl:    1.36rem !important;
  --font-size-3xl:    1.82rem !important;
  --font-size-4xl:    2.28rem !important;
  --font-size-5xl:    3.18rem !important;
  --font-size-hero:   clamp(2.3rem, 5.8vw, 4.6rem) !important;
}

html { font-size: 15.2px !important; }
body { font-size: 1rem !important; line-height: 1.75 !important; }

/* Section typography — proportional to new base */
.section-title    { font-size: clamp(1.65rem, 3.6vw, 2.6rem) !important; }
.section-subtitle { font-size: 0.96rem !important; line-height: 1.82 !important; }
.section-label    { font-size: 0.68rem !important; }
h1 { font-size: clamp(2.1rem, 5.2vw, 4rem)   !important; }
h2 { font-size: clamp(1.55rem, 3.4vw, 2.5rem) !important; }
h3 { font-size: clamp(1.12rem, 2.1vw, 1.6rem) !important; }
h4 { font-size: 1.15rem !important; }
h5 { font-size: 0.96rem !important; }
h6 { font-size: 0.84rem !important; }

/* Nav — proportional */
.nav-menu > li > a,
.nav-menu > .menu-item > a,
.header--scrolled .nav-menu > li > a,
.scrolled .nav-menu > li > a {
  font-size: 0.60rem !important;
}

/* Buttons */
.btn      { font-size: 0.80rem !important; }
.btn--lg  { font-size: 0.86rem !important; padding: 1rem 2.2rem !important; }
.btn--sm  { font-size: 0.70rem !important; }

/* Hero */
.hero-title,
[class*="hero__title"],
[class*="hero-title"] { font-size: clamp(2.1rem, 6.2vw, 4.8rem) !important; }
.hero-subtitle,
[class*="hero__subtitle"],
[class*="hero-subtitle"] { font-size: clamp(0.84rem, 1.9vw, 1.06rem) !important; }
.wow-title { font-size: clamp(2.6rem, 7vw, 6.5rem) !important; }

/* ─────────────────────────────────────────────────────────────
   2. WHY DHULIKHEL — v1.9 BENTO GRID
   Ultra-modern. Asymmetric. Gold-on-dark premium cells.
   Layout: 4-col × 3-row bento grid.
   A: hero (col1-2 / row1-3) | B: stat (col3/row1) | C: stat (col4/row1)
   D: wide (col3-4/row2)     | E: facilities (col3-4/row3, tall) 
   — wait we only have 4 cols. Let's use:
   Col1-2: hero cell (2 wide, 2 tall)
   Col3: stat-a (row1), wide-D top portion (row2), CTA (row3)
   Col4: stat-b (row1), facilities (row2-3 tall)
   ─────────────────────────────────────────────────────────────
   Actual grid: 12 sub-columns, 3 rows
───────────────────────────────────────────────────────────── */

.v19-why-section {
  position: relative;
  background: #08101e;
  padding: 5rem 0 6rem;
  overflow: hidden;
}

/* Ambient background glow */
.v19-why-section::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 55% 60% at 15% 50%, rgba(212,175,55,0.07) 0%, transparent 65%),
    radial-gradient(ellipse 45% 50% at 85% 30%, rgba(21,101,168,0.07) 0%, transparent 60%),
    radial-gradient(ellipse 35% 35% at 50% 100%, rgba(232,87,10,0.05) 0%, transparent 60%);
  pointer-events: none;
}

/* ── Top label strip ── */
.v19-why__label-strip {
  display: flex;
  justify-content: center;
  margin-bottom: 3rem;
  position: relative;
  z-index: 1;
}

.v19-why__label-pill {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  background: rgba(212,175,55,0.10);
  border: 1px solid rgba(212,175,55,0.22);
  border-radius: 50px;
  padding: 0.42rem 1.1rem;
  font-size: 0.62rem;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: #d4af37;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

.v19-why__label-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #d4af37;
  box-shadow: 0 0 6px rgba(212,175,55,0.8);
  animation: v19-pulse 2s ease-in-out infinite;
}

@keyframes v19-pulse {
  0%, 100% { opacity: 1; transform: scale(1); }
  50%       { opacity: 0.55; transform: scale(0.75); }
}

/* ── Headline block ── */
.v19-why__headline-wrap {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 2rem;
  margin-bottom: 2.5rem;
  position: relative;
  z-index: 1;
  flex-wrap: wrap;
}

.v19-why__headline {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: clamp(2.4rem, 5vw, 4rem);
  font-weight: 700;
  line-height: 1.06;
  color: #fff;
  margin: 0;
  flex-shrink: 0;
}

.v19-why__headline em {
  font-style: italic;
  background: linear-gradient(135deg, #f5d97a 0%, #e8c14a 35%, #e8570a 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.v19-why__headline-sub {
  font-size: 0.88rem;
  line-height: 1.75;
  color: rgba(255,255,255,0.45);
  max-width: 36ch;
  margin: 0;
  padding-bottom: 0.25rem;
}

/* ── BENTO GRID ── */
.v19-why__bento {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  grid-template-rows: 180px 160px 200px;
  gap: 1rem;
  position: relative;
  z-index: 1;
}

/* ── Base cell ── */
.v19-why__cell {
  position: relative;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 20px;
  overflow: hidden;
  cursor: default;
  transition:
    border-color 0.35s ease,
    box-shadow   0.35s ease,
    transform    0.35s cubic-bezier(.25,.46,.45,.94);
}

.v19-why__cell:hover {
  border-color: rgba(212,175,55,0.28);
  box-shadow: 0 8px 40px rgba(0,0,0,0.28), 0 0 0 1px rgba(212,175,55,0.10);
  transform: translateY(-3px);
}

/* Top shimmer line */
.v19-why__cell::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(212,175,55,0.25), transparent);
  transition: background 0.35s;
}

.v19-why__cell:hover::before {
  background: linear-gradient(90deg, transparent, rgba(212,175,55,0.6) 30%, rgba(232,87,10,0.5) 70%, transparent);
}

/* Inner layout */
.v19-why__cell-inner {
  position: relative;
  z-index: 2;
  padding: 1.6rem 1.75rem;
  height: 100%;
  display: flex;
  flex-direction: column;
  gap: 0.45rem;
}

/* Small corner number tag */
.v19-why__cell-tag {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 0.52rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  color: rgba(212,175,55,0.45);
  text-transform: uppercase;
  line-height: 1;
}

/* Icon */
.v19-why__cell-icon {
  font-size: 2rem;
  line-height: 1;
  margin-bottom: 0.25rem;
  display: inline-block;
  transition: transform 0.3s cubic-bezier(.34,1.3,.64,1);
}

.v19-why__cell:hover .v19-why__cell-icon {
  transform: scale(1.15) rotate(-4deg);
}

.v19-why__cell-icon--sm {
  font-size: 1.6rem;
}

/* Title */
.v19-why__cell-title {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 1.05rem;
  font-weight: 700;
  line-height: 1.2;
  color: #fff;
  margin: 0;
}

/* Text */
.v19-why__cell-text {
  font-size: 0.80rem;
  line-height: 1.72;
  color: rgba(255,255,255,0.50);
  margin: 0;
}

/* ── Cell A: Hero — Mountain Views ── */
.v19-why__cell--hero {
  grid-column: 1 / 8;
  grid-row: 1 / 4;
  background: linear-gradient(
    160deg,
    #0d1f3a 0%,
    #112a4c 45%,
    #0f2240 100%
  );
  border-color: rgba(212,175,55,0.16);
}

.v19-why__cell--hero:hover {
  border-color: rgba(212,175,55,0.38);
  box-shadow: 0 16px 60px rgba(0,0,0,0.40), 0 0 0 1px rgba(212,175,55,0.18);
  transform: translateY(-4px);
}

.v19-why__cell--hero .v19-why__cell-inner {
  padding: 2.25rem 2.5rem;
  justify-content: flex-end;
}

.v19-why__cell--hero .v19-why__cell-icon {
  font-size: 3rem;
}

.v19-why__cell--hero .v19-why__cell-title {
  font-size: clamp(1.4rem, 2.5vw, 1.9rem);
  color: #fff;
}

.v19-why__cell--hero .v19-why__cell-text {
  font-size: 0.88rem;
  color: rgba(255,255,255,0.58);
  max-width: 44ch;
}

/* Decorative radial glow inside hero cell */
.v19-why__cell-bg {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 80% 60% at 20% 80%, rgba(212,175,55,0.09) 0%, transparent 65%),
    radial-gradient(ellipse 60% 40% at 80% 20%, rgba(21,101,168,0.10) 0%, transparent 60%);
  transition: opacity 0.4s;
}

.v19-why__cell--hero:hover .v19-why__cell-bg {
  opacity: 1.4;
}

.v19-why__cell-glow {
  position: absolute;
  bottom: -30%;
  left: -10%;
  width: 60%;
  height: 60%;
  background: radial-gradient(circle, rgba(212,175,55,0.12) 0%, transparent 70%);
  pointer-events: none;
  transition: opacity 0.4s;
}

.v19-why__cell--hero:hover .v19-why__cell-glow {
  opacity: 1.5;
}

/* ── Cell B: Stat — Est. Year ── */
.v19-why__cell--stat {
  grid-column: 8 / 10;
  grid-row: 1 / 2;
  background: linear-gradient(135deg, rgba(212,175,55,0.12) 0%, rgba(232,87,10,0.08) 100%);
  border-color: rgba(212,175,55,0.18);
}

.v19-why__cell--stat:hover {
  background: linear-gradient(135deg, rgba(212,175,55,0.18) 0%, rgba(232,87,10,0.13) 100%);
}

.v19-why__cell--stat .v19-why__cell-inner {
  align-items: center;
  justify-content: center;
  text-align: center;
  gap: 0.35rem;
}

/* ── Cell C: Stat — Rating ── */
.v19-why__cell--stat-alt {
  grid-column: 10 / 13;
  grid-row: 1 / 2;
  background: linear-gradient(135deg, rgba(21,101,168,0.16) 0%, rgba(12,32,64,0.25) 100%);
  border-color: rgba(21,101,168,0.20);
}

.v19-why__cell--stat-alt:hover {
  background: linear-gradient(135deg, rgba(21,101,168,0.24) 0%, rgba(12,32,64,0.35) 100%);
  border-color: rgba(21,101,168,0.38);
}

/* Stat numbers */
.v19-why__stat-num {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 2.6rem;
  font-weight: 700;
  font-style: italic;
  line-height: 1;
  background: linear-gradient(135deg, #f5d97a, #e8c14a, #e8570a);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  display: block;
  transition: transform 0.3s cubic-bezier(.34,1.3,.64,1);
}

.v19-why__cell:hover .v19-why__stat-num {
  transform: scale(1.06);
}

.v19-why__stat-star {
  font-size: 1.6rem;
}

.v19-why__stat-lbl {
  font-size: 0.62rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.50);
  display: block;
}

/* ── Cell D: Hospitality — wide horizontal ── */
.v19-why__cell--wide {
  grid-column: 8 / 13;
  grid-row: 2 / 3;
  background: rgba(255,255,255,0.038);
}

.v19-why__cell--wide:hover {
  background: rgba(255,255,255,0.058);
}

.v19-why__cell-inner--horiz {
  flex-direction: row !important;
  align-items: flex-start;
  gap: 1.1rem !important;
}

.v19-why__cell-inner--horiz .v19-why__cell-icon--sm {
  flex-shrink: 0;
  margin-top: 0.1rem;
}

/* ── Cell E: Facilities ── */
.v19-why__cell--facilities {
  grid-column: 8 / 11;
  grid-row: 3 / 4;
  background: rgba(255,255,255,0.032);
}

.v19-why__cell--facilities .v19-why__cell-inner {
  gap: 0.35rem;
}

/* Facility pills */
.v19-why__pills {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
  margin-top: 0.5rem;
}

.v19-why__pill {
  display: inline-block;
  font-size: 0.60rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  padding: 0.25rem 0.65rem;
  background: rgba(212,175,55,0.10);
  border: 1px solid rgba(212,175,55,0.18);
  border-radius: 50px;
  color: rgba(255,255,255,0.65);
  transition: background 0.22s, border-color 0.22s, color 0.22s;
}

.v19-why__cell:hover .v19-why__pill {
  background: rgba(212,175,55,0.16);
  border-color: rgba(212,175,55,0.32);
  color: rgba(255,255,255,0.85);
}

/* ── Cell F: CTA ── */
.v19-why__cell--cta {
  grid-column: 11 / 13;
  grid-row: 3 / 4;
  background: linear-gradient(
    145deg,
    #B52A1F 0%,
    #cc3a1a 35%,
    #E8570A 70%,
    #f06828 100%
  );
  border-color: rgba(232,87,10,0.30);
  box-shadow: 0 4px 24px rgba(232,87,10,0.22);
}

.v19-why__cell--cta:hover {
  border-color: rgba(232,87,10,0.55);
  box-shadow: 0 12px 40px rgba(232,87,10,0.38);
  transform: translateY(-4px);
}

.v19-why__cell--cta::before {
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.18), transparent);
}

.v19-why__cell-inner--cta {
  align-items: flex-start;
  justify-content: center;
  gap: 0.75rem !important;
}

.v19-why__cta-eyebrow {
  font-size: 0.66rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  color: rgba(255,255,255,0.80);
  line-height: 1.3;
}

.v19-why__cta-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  background: rgba(255,255,255,0.16);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  border: 1px solid rgba(255,255,255,0.30);
  border-radius: 100px;
  color: #fff;
  -webkit-text-fill-color: #fff;
  text-decoration: none;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 0.65rem 1.2rem;
  transition:
    background 0.25s,
    border-color 0.25s,
    transform 0.22s cubic-bezier(.34,1.3,.64,1);
  white-space: nowrap;
}

.v19-why__cta-btn:hover {
  background: rgba(255,255,255,0.26);
  border-color: rgba(255,255,255,0.50);
  transform: translateX(3px);
}

.v19-why__cta-note {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  font-size: 0.60rem;
  color: rgba(255,255,255,0.62);
  line-height: 1.3;
}

/* ── Bento responsive ── */
@media (max-width: 1100px) {
  .v19-why__bento {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: auto;
  }
  .v19-why__cell--hero       { grid-column: 1 / -1; grid-row: auto; min-height: 280px; }
  .v19-why__cell--stat       { grid-column: 1 / 2;  grid-row: auto; }
  .v19-why__cell--stat-alt   { grid-column: 2 / 3;  grid-row: auto; }
  .v19-why__cell--wide       { grid-column: 1 / -1; grid-row: auto; }
  .v19-why__cell--facilities { grid-column: 1 / 2;  grid-row: auto; }
  .v19-why__cell--cta        { grid-column: 2 / 3;  grid-row: auto; }
}

@media (max-width: 640px) {
  .v19-why-section { padding: 3.5rem 0 4.5rem; }
  .v19-why__bento {
    grid-template-columns: 1fr;
    gap: 0.75rem;
  }
  .v19-why__cell--hero,
  .v19-why__cell--stat,
  .v19-why__cell--stat-alt,
  .v19-why__cell--wide,
  .v19-why__cell--facilities,
  .v19-why__cell--cta {
    grid-column: 1 / -1;
    grid-row: auto;
  }
  .v19-why__cell-inner--horiz {
    flex-direction: column !important;
  }
  .v19-why__headline-wrap {
    flex-direction: column;
    align-items: flex-start;
  }
}

/* ─────────────────────────────────────────────────────────────
   3. RESERVE — Compact col-3 "Find Booking" card
───────────────────────────────────────────────────────────── */

/* Make the 3-card grid use custom column widths */
.v17-reserve__cards {
  grid-template-columns: 1fr 1.2fr 0.78fr !important;
}

/* Compact card overrides */
.v17-reserve__card--compact {
  padding: 1.5rem 1.4rem !important;
}

.v17-reserve__card--compact .v17-reserve__card-icon {
  width: 40px !important;
  height: 40px !important;
  border-radius: 10px !important;
  margin-bottom: 0.85rem !important;
}

.v17-reserve__card--compact .v17-reserve__card-title {
  font-size: 0.88rem !important;
  margin-bottom: 0.85rem !important;
}

/* Shortcode wrapper in compact card */
.v17-reserve__card--compact .v17-reserve__shortcode-wrap {
  margin-bottom: 0 !important;
}

/* Contact buttons — more compact */
.v17-reserve__card--compact .v17-reserve__contact-btn {
  padding: 0.55rem 0.85rem !important;
  font-size: 0.68rem !important;
}

/* Reserve card hover lift */
.v17-reserve__card {
  transition: transform 0.3s cubic-bezier(.25,.46,.45,.94),
              border-color 0.3s,
              box-shadow 0.3s !important;
}

.v17-reserve__card:hover {
  transform: translateY(-4px) !important;
  border-color: rgba(212,175,55,0.30) !important;
  box-shadow: 0 12px 36px rgba(0,0,0,0.28) !important;
}

.v17-reserve__card--featured:hover {
  transform: translateY(-6px) !important;
  border-color: rgba(212,175,55,0.50) !important;
  box-shadow: 0 16px 48px rgba(0,0,0,0.35) !important;
}

/* Contact button hover */
.v17-reserve__contact-btn {
  transition: border-color 0.22s, background 0.22s, color 0.22s, transform 0.22s !important;
}

.v17-reserve__contact-btn:hover {
  transform: translateX(3px) !important;
}

/* Book button hover shimmer */
.v17-reserve__book-btn {
  transition: transform 0.22s cubic-bezier(.34,1.3,.64,1),
              box-shadow 0.22s,
              background-position 0.4s !important;
}

/* Trust bar items hover */
.v17-reserve__trust-item {
  transition: color 0.22s !important;
  cursor: default;
}

.v17-reserve__trust-item:hover {
  color: rgba(255,255,255,0.8) !important;
}

/* ─────────────────────────────────────────────────────────────
   4. GLOBAL HOVER EFFECTS — amenities, stats, testimonials, nav
───────────────────────────────────────────────────────────── */

/* Amenity cards */
.amenity-card {
  transition: transform 0.28s cubic-bezier(.25,.46,.45,.94),
              box-shadow  0.28s ease,
              border-color 0.28s !important;
}

/* Stat items */
.stat-item {
  transition: transform 0.28s cubic-bezier(.25,.46,.45,.94),
              box-shadow 0.28s ease !important;
}

/* Room cards */
[class*="room-card"],
[class*="room__card"],
.room-card {
  transition: transform 0.3s cubic-bezier(.25,.46,.45,.94),
              box-shadow 0.3s ease !important;
}

[class*="room-card"]:hover,
.room-card:hover {
  transform: translateY(-5px) !important;
  box-shadow: 0 14px 40px rgba(14,26,42,0.14) !important;
}

/* Gallery items */
.gallery-item {
  transition: transform 0.3s ease !important;
}

.gallery-item:hover {
  transform: scale(1.01) !important;
}

/* Testimonial cards */
.testimonial-card {
  transition: transform 0.28s ease, box-shadow 0.28s ease !important;
}

.testimonial-card:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 10px 32px rgba(14,26,42,0.10) !important;
}

/* Gold divider animate on section hover */
section:hover .gold-divider {
  width: 100px !important;
  transition: width 0.4s ease !important;
}

/* Nav links — smooth gradient transition already set, add ease */
.nav-menu > li > a {
  transition: opacity 0.22s ease, background 0.22s ease !important;
}

/* Section label hover */
.section-label {
  transition: background 0.22s, box-shadow 0.22s !important;
}

.section-label:hover {
  background: rgba(181,42,31,0.11) !important;
  box-shadow: 0 2px 12px rgba(181,42,31,0.10) !important;
}

/* Footer links */
.footer-nav a,
[class*="footer"] a {
  transition: color 0.2s, -webkit-text-fill-color 0.2s !important;
}

/* Social icons */
[class*="social"] a,
[class*="social-icon"] {
  transition: transform 0.22s cubic-bezier(.34,1.3,.64,1), opacity 0.22s !important;
}

[class*="social"] a:hover {
  transform: translateY(-3px) scale(1.1) !important;
}

/* ─────────────────────────────────────────────────────────────
   5. RESPONSIVE — 15.2px base minor tweaks
───────────────────────────────────────────────────────────── */

@media (max-width: 768px) {
  html { font-size: 14px !important; }
  .v17-reserve__cards {
    grid-template-columns: 1fr !important;
  }
  .v17-reserve__card--compact {
    padding: 1.25rem !important;
  }
}

@media (max-width: 480px) {
  html { font-size: 13.5px !important; }
}

/* ── design-v2_0.css (8,632b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v2.0
   ──────────────────────────────────────────────────────────────
   Fixes over v1.9:
   1. Why section — rock-solid background, full text contrast
   2. Reserve col-3 — same height as col-1 (align-items:stretch)
   3. Global polish
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   1. WHY DHULIKHEL — background isolation + text visibility fix
   Problem: dark section was blending with hero due to no
   definitive separator. Fix: opaque black base + top border +
   padding + all text forced to full opacity.
───────────────────────────────────────────────────────────── */

.v19-why-section {
  background: #050c16 !important;                /* deep opaque navy-black */
  border-top: 1px solid rgba(212,175,55,0.18) !important;
  padding-top: 5.5rem !important;
  padding-bottom: 6.5rem !important;
  isolation: isolate !important;
}

/* Remove the ghost watermark — it was hurting legibility */
.v19-why-section::after {
  display: none !important;
}

/* Stronger ambient glows so section feels rich not faded */
.v19-why-section::before {
  background:
    radial-gradient(ellipse 60% 55% at 12% 55%, rgba(212,175,55,0.10) 0%, transparent 60%),
    radial-gradient(ellipse 50% 45% at 88% 30%, rgba(21,101,168,0.10) 0%, transparent 55%),
    radial-gradient(ellipse 40% 30% at 50% 100%, rgba(232,87,10,0.07) 0%, transparent 55%) !important;
}

/* ── Label pill — brighter ── */
.v19-why__label-pill {
  background: rgba(212,175,55,0.13) !important;
  border-color: rgba(212,175,55,0.30) !important;
  color: #e8c95a !important;
  font-size: 0.64rem !important;
}

/* ── Headline — full white, readable ── */
.v19-why__headline {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-shadow: 0 2px 24px rgba(0,0,0,0.6) !important;
}

.v19-why__headline em {
  -webkit-text-fill-color: transparent !important;   /* keep gradient */
  text-shadow: none !important;
}

/* ── Sub-headline — clearly visible ── */
.v19-why__headline-sub {
  color: rgba(255,255,255,0.70) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.70) !important;
}

/* ── ALL bento cells — stronger border + darker base ── */
.v19-why__cell {
  background: rgba(255,255,255,0.055) !important;
  border-color: rgba(255,255,255,0.12) !important;
}

.v19-why__cell:hover {
  border-color: rgba(212,175,55,0.38) !important;
  background: rgba(255,255,255,0.075) !important;
}

/* ── Cell titles — bright white ── */
.v19-why__cell-title {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  font-size: 1.08rem !important;
  font-weight: 700 !important;
  line-height: 1.22 !important;
  text-shadow: 0 1px 8px rgba(0,0,0,0.5) !important;
}

/* ── Cell body text — fully legible ── */
.v19-why__cell-text {
  color: rgba(255,255,255,0.72) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.72) !important;
  font-size: 0.84rem !important;
  line-height: 1.76 !important;
}

/* ── Cell tag numbers — more visible ── */
.v19-why__cell-tag {
  color: rgba(212,175,55,0.60) !important;
}

/* ── HERO cell — richer navy, stronger text ── */
.v19-why__cell--hero {
  background: linear-gradient(160deg, #0b1d35 0%, #102445 50%, #0d1e38 100%) !important;
  border-color: rgba(212,175,55,0.22) !important;
}

.v19-why__cell--hero .v19-why__cell-title {
  font-size: clamp(1.45rem, 2.6vw, 2rem) !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-shadow: 0 2px 16px rgba(0,0,0,0.6) !important;
}

.v19-why__cell--hero .v19-why__cell-text {
  color: rgba(255,255,255,0.75) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.75) !important;
  font-size: 0.90rem !important;
}

/* ── Stat cells ── */
.v19-why__cell--stat {
  background: linear-gradient(135deg, rgba(212,175,55,0.16) 0%, rgba(232,87,10,0.12) 100%) !important;
  border-color: rgba(212,175,55,0.25) !important;
}

.v19-why__cell--stat-alt {
  background: linear-gradient(135deg, rgba(21,101,168,0.20) 0%, rgba(12,32,64,0.30) 100%) !important;
  border-color: rgba(21,101,168,0.28) !important;
}

.v19-why__stat-num {
  font-size: 2.8rem !important;
  text-shadow: 0 2px 16px rgba(0,0,0,0.4) !important;
}

.v19-why__stat-lbl {
  color: rgba(255,255,255,0.65) !important;
  font-size: 0.64rem !important;
}

/* ── Wide hospitality cell ── */
.v19-why__cell--wide {
  background: rgba(255,255,255,0.048) !important;
  border-color: rgba(255,255,255,0.11) !important;
}

/* ── Facility pills — more visible ── */
.v19-why__pill {
  background: rgba(212,175,55,0.13) !important;
  border-color: rgba(212,175,55,0.24) !important;
  color: rgba(255,255,255,0.78) !important;
  font-size: 0.62rem !important;
}

/* ── CTA cell text ── */
.v19-why__cta-eyebrow {
  color: rgba(255,255,255,0.92) !important;
  font-size: 0.70rem !important;
  font-weight: 700 !important;
}

.v19-why__cta-note {
  color: rgba(255,255,255,0.70) !important;
}

/* ── Cell number bg — less aggressive, cleaner ── */
.v19-why__cell-num {
  color: rgba(212,175,55,0.07) !important;
}

/* ─────────────────────────────────────────────────────────────
   2. RESERVE SECTION — fix col-3 height alignment
   Problem: col-3 (Find Booking) was taller than col-1 because
   align-items was stretch and it had less content, so it looked
   too long/empty. Fix: set cards to align-items:start so each
   card is only as tall as its content. Also reset col widths
   back to even (same as v1.8) as requested.
───────────────────────────────────────────────────────────── */

.v17-reserve__cards {
  grid-template-columns: 1fr 1.25fr 1fr !important;  /* same width as v1.8 */
  align-items: start !important;                      /* each card = its own height */
}

/* Compact card — only height changes, width stays same as col-1 */
.v17-reserve__card--compact {
  padding: 1.6rem 1.6rem !important;
  /* Width: natural from grid. Height: shrinks to content. */
}

/* Remove the icon title from Find Booking since it now just
   shows the shortcode / contact — keep it clean */
.v17-reserve__card--compact .v17-reserve__card-icon {
  width: 42px !important;
  height: 42px !important;
  border-radius: 11px !important;
  margin-bottom: 0.9rem !important;
}

.v17-reserve__card--compact .v17-reserve__card-title {
  font-size: 0.90rem !important;
  margin-bottom: 1rem !important;
}

/* Shortcode form / contact buttons in compact card */
.v17-reserve__card--compact .v17-reserve__shortcode-wrap {
  margin-bottom: 0 !important;
}

.v17-reserve__card--compact .v17-reserve__contact-stack {
  gap: 0.5rem !important;
}

.v17-reserve__card--compact .v17-reserve__contact-btn {
  padding: 0.58rem 0.9rem !important;
  font-size: 0.70rem !important;
}

/* ─────────────────────────────────────────────────────────────
   3. GLOBAL POLISH
───────────────────────────────────────────────────────────── */

/* Section separator clarity — ensure hero→why is visually cut */
.v19-why-section + *,
* + .v19-why-section {
  position: relative;
  z-index: 1;
}

/* Stat items on homepage — 20% bottom margin fix */
.stats-grid {
  margin-bottom: 0 !important;
}

/* Reserve section trust bar spacing */
.v17-reserve__trust {
  padding-top: 1.75rem !important;
  margin-top: 1.75rem !important;
}

/* ── design-v2_1.css (45,241b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v2.1
   ──────────────────────────────────────────────────────────────
   1. Why Dhulikhel — ultra-premium bento: mountain columns,
      3D depth effect, gradient backgrounds, advanced hover FX
   2. Customizer white-screen fix via JS override
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   WHY SECTION — COMPLETE PREMIUM REDESIGN (v2.1)
   Keeps same PHP markup (v19-why-* classes), upgrades all CSS.
   New aesthetic:
   - Deep space gradient BG (navy→midnight→dark indigo)
   - Mountain silhouette SVG pseudo-element
   - 3D perspective on the bento grid cells
   - Gold/amber gradient borders that glow on hover
   - Floating particles effect (CSS only, no JS)
   - Center column with prominent mountain colour accent
   - Full mobile responsive
───────────────────────────────────────────────────────────── */

/* ── SECTION wrapper ── */
.v19-why-section {
  position: relative;
  background:
    linear-gradient(
      175deg,
      #04080f   0%,
      #060d1a  18%,
      #071324  36%,
      #08152a  55%,
      #050d1c  75%,
      #03070f 100%
    ) !important;
  padding: 0 0 7rem !important;
  overflow: hidden !important;
  isolation: isolate !important;
  border-top: none !important;
}

/* ── Multi-layer ambient glow ── */
.v19-why-section::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    /* Gold sunrise glow bottom-left */
    radial-gradient(ellipse 70% 55% at -5% 85%, rgba(212,175,55,0.14) 0%, transparent 60%),
    /* Blue mountain glow top-right */
    radial-gradient(ellipse 60% 50% at 105% 10%, rgba(21,101,168,0.16) 0%, transparent 55%),
    /* Orange ember centre-bottom */
    radial-gradient(ellipse 50% 35% at 50% 110%, rgba(232,87,10,0.12) 0%, transparent 50%),
    /* Subtle wide gold haze across middle */
    radial-gradient(ellipse 100% 30% at 50% 60%, rgba(212,175,55,0.04) 0%, transparent 65%) !important;
  pointer-events: none !important;
  z-index: 0 !important;
}

/* ── Mountain silhouette divider at the TOP of section ── */
.v19-why-section::after {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 120px !important;
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 120' preserveAspectRatio='none'%3E%3Cpath d='M0,120 L0,95 L60,80 L120,90 L180,60 L240,75 L300,40 L360,55 L420,25 L480,45 L540,15 L600,35 L660,8 L720,28 L780,5 L840,22 L900,0 L960,18 L1020,8 L1080,30 L1140,12 L1200,38 L1260,18 L1320,42 L1380,22 L1440,50 L1440,120 Z' fill='%23050c16'/%3E%3C/svg%3E")
    center top / cover no-repeat !important;
  z-index: 1 !important;
  pointer-events: none !important;
}

/* Container sits above all pseudo-elements */
.v19-why-section .container {
  position: relative !important;
  z-index: 2 !important;
  padding-top: 5.5rem !important;
}

/* ── Label strip ── */
.v19-why__label-strip {
  position: relative !important;
  z-index: 3 !important;
}

.v19-why__label-pill {
  background: linear-gradient(135deg, rgba(212,175,55,0.18), rgba(232,87,10,0.12)) !important;
  border: 1px solid rgba(212,175,55,0.35) !important;
  color: #e8c95a !important;
  letter-spacing: 0.22em !important;
  font-size: 0.65rem !important;
  box-shadow: 0 0 20px rgba(212,175,55,0.12), inset 0 1px 0 rgba(255,255,255,0.06) !important;
}

/* ── Headline ── */
.v19-why__headline {
  font-size: clamp(2.6rem, 5.5vw, 4.4rem) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  letter-spacing: -0.02em !important;
  text-shadow: 0 4px 32px rgba(0,0,0,0.7) !important;
}

.v19-why__headline em {
  background: linear-gradient(
    125deg,
    #fde68a  0%,
    #f5d97a  20%,
    #e8c14a  40%,
    #e8770a  65%,
    #e8570a 100%
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  text-shadow: none !important;
  filter: drop-shadow(0 2px 8px rgba(232,87,10,0.30)) !important;
}

.v19-why__headline-sub {
  color: rgba(255,255,255,0.62) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.62) !important;
  font-size: 0.92rem !important;
  line-height: 1.8 !important;
}

/* ═══════════════════════════════════════════════════════
   BENTO GRID — 3D PERSPECTIVE + GRADIENT CELLS
═══════════════════════════════════════════════════════ */

.v19-why__bento {
  display: grid !important;
  grid-template-columns: repeat(12, 1fr) !important;
  grid-template-rows: 200px 170px 220px !important;
  gap: 1.1rem !important;
  /* 3D perspective on the whole grid */
  perspective: 1800px !important;
  position: relative !important;
  z-index: 2 !important;
}

/* ── BASE CELL — glass + gradient border ── */
.v19-why__cell {
  position: relative !important;
  background: linear-gradient(
    145deg,
    rgba(255,255,255,0.062) 0%,
    rgba(255,255,255,0.028) 50%,
    rgba(255,255,255,0.048) 100%
  ) !important;
  /* Gradient border via box-shadow + pseudo background */
  border: 1px solid rgba(255,255,255,0.10) !important;
  border-radius: 22px !important;
  overflow: hidden !important;
  cursor: default !important;
  /* 3D transform base */
  transform-style: preserve-3d !important;
  transition:
    transform    0.45s cubic-bezier(.25,.46,.45,.94),
    border-color 0.35s ease,
    box-shadow   0.45s ease !important;
  /* Glass inner shadow */
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.08),
    0 4px 24px rgba(0,0,0,0.25) !important;
}

/* Gold shimmer top border (pseudo-element) */
.v19-why__cell::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important; left: 0 !important; right: 0 !important;
  height: 1.5px !important;
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(212,175,55,0.30) 25%,
    rgba(245,217,122,0.55) 50%,
    rgba(212,175,55,0.30) 75%,
    transparent 100%
  ) !important;
  transition: opacity 0.35s, background 0.35s !important;
  z-index: 2 !important;
}

/* Hover: 3D lift + glow + brighter border */
.v19-why__cell:hover {
  transform: translateY(-6px) scale(1.008) !important;
  border-color: rgba(212,175,55,0.32) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.12),
    0 16px 48px rgba(0,0,0,0.40),
    0 0 0 1px rgba(212,175,55,0.14),
    0 0 30px rgba(212,175,55,0.08) !important;
}

.v19-why__cell:hover::before {
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(212,175,55,0.55) 20%,
    rgba(245,217,122,0.90) 50%,
    rgba(232,87,10,0.55) 80%,
    transparent 100%
  ) !important;
}

/* Inner glass ripple on hover (::after) */
.v19-why__cell::after {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background: radial-gradient(
    ellipse 80% 60% at var(--mx, 50%) var(--my, 50%),
    rgba(212,175,55,0.06) 0%,
    transparent 65%
  ) !important;
  opacity: 0 !important;
  transition: opacity 0.4s !important;
  pointer-events: none !important;
  z-index: 0 !important;
}

.v19-why__cell:hover::after {
  opacity: 1 !important;
}

/* Cell inner layout */
.v19-why__cell-inner {
  position: relative !important;
  z-index: 2 !important;
  padding: 1.75rem 2rem !important;
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 0.5rem !important;
}

/* ── Corner number — ornate ── */
.v19-why__cell-tag {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 0.55rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.22em !important;
  color: rgba(212,175,55,0.52) !important;
  text-transform: uppercase !important;
  line-height: 1 !important;
}

/* ── Icon ── */
.v19-why__cell-icon {
  font-size: 2.1rem !important;
  line-height: 1 !important;
  display: inline-block !important;
  filter: drop-shadow(0 2px 8px rgba(0,0,0,0.5)) !important;
  transition: transform 0.4s cubic-bezier(.34,1.5,.64,1), filter 0.35s !important;
}

.v19-why__cell:hover .v19-why__cell-icon {
  transform: scale(1.18) rotate(-5deg) !important;
  filter: drop-shadow(0 4px 12px rgba(212,175,55,0.35)) !important;
}

.v19-why__cell-icon--sm {
  font-size: 1.7rem !important;
  flex-shrink: 0 !important;
}

/* ── Cell title — premium ── */
.v19-why__cell-title {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 1.12rem !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  margin: 0 !important;
  text-shadow: 0 2px 12px rgba(0,0,0,0.55) !important;
  letter-spacing: -0.005em !important;
}

/* ── Cell body text ── */
.v19-why__cell-text {
  font-size: 0.84rem !important;
  line-height: 1.78 !important;
  color: rgba(255,255,255,0.68) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.68) !important;
  margin: 0 !important;
}

/* ═══════════════════════════════════════════════════════
   HERO CELL — Spans 7 cols / 3 rows — MOUNTAIN GRADIENT
═══════════════════════════════════════════════════════ */

.v19-why__cell--hero {
  grid-column: 1 / 8 !important;
  grid-row: 1 / 4 !important;
  background: linear-gradient(
    145deg,
    #081e3d  0%,
    #0c2a52  22%,
    #0d2f5e  44%,
    #0a2448  66%,
    #07192e  88%,
    #050f1f 100%
  ) !important;
  border-color: rgba(212,175,55,0.20) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.09),
    inset 0 0 80px rgba(21,101,168,0.08),
    0 8px 40px rgba(0,0,0,0.40) !important;
}

.v19-why__cell--hero:hover {
  transform: translateY(-5px) scale(1.006) !important;
  border-color: rgba(212,175,55,0.40) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.13),
    inset 0 0 100px rgba(21,101,168,0.12),
    0 20px 64px rgba(0,0,0,0.50),
    0 0 0 1px rgba(212,175,55,0.18),
    0 0 60px rgba(212,175,55,0.08) !important;
}

/* Decorative mountain-range layered gradient inside hero cell */
.v19-why__cell-bg {
  position: absolute !important;
  inset: 0 !important;
  background:
    /* Gold sunrise at bottom-left */
    radial-gradient(ellipse 75% 55% at 0% 100%, rgba(212,175,55,0.13) 0%, transparent 60%),
    /* Blue mountain glow top */
    radial-gradient(ellipse 65% 45% at 80% 0%, rgba(21,101,168,0.18) 0%, transparent 55%),
    /* Warm centre light */
    radial-gradient(ellipse 50% 40% at 40% 60%, rgba(232,87,10,0.07) 0%, transparent 55%) !important;
  transition: opacity 0.5s !important;
  z-index: 0 !important;
}

.v19-why__cell--hero:hover .v19-why__cell-bg {
  opacity: 1.3 !important;
}

/* Mountain silhouette decorative shape at the cell's bottom */
.v19-why__cell-glow {
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 55% !important;
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 800 200' preserveAspectRatio='none'%3E%3Cdefs%3E%3ClinearGradient id='mg' x1='0' y1='0' x2='1' y2='0'%3E%3Cstop offset='0' stop-color='%23d4af37' stop-opacity='0.08'/%3E%3Cstop offset='0.5' stop-color='%231565A8' stop-opacity='0.10'/%3E%3Cstop offset='1' stop-color='%23d4af37' stop-opacity='0.06'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M0,200 L0,160 L50,140 L100,155 L150,110 L200,130 L250,80 L300,100 L350,55 L400,75 L450,30 L500,52 L550,18 L600,40 L650,70 L700,45 L750,80 L800,55 L800,200 Z' fill='url(%23mg)'/%3E%3C/svg%3E")
    center bottom / 100% 100% no-repeat !important;
  pointer-events: none !important;
  z-index: 1 !important;
  opacity: 0.85 !important;
  transition: opacity 0.4s !important;
}

.v19-why__cell--hero:hover .v19-why__cell-glow {
  opacity: 1 !important;
}

.v19-why__cell--hero .v19-why__cell-inner {
  justify-content: flex-end !important;
  padding: 2.5rem 2.75rem !important;
}

.v19-why__cell--hero .v19-why__cell-icon {
  font-size: 3.2rem !important;
  margin-bottom: 0.4rem !important;
}

.v19-why__cell--hero .v19-why__cell-title {
  font-size: clamp(1.6rem, 2.8vw, 2.2rem) !important;
  letter-spacing: -0.02em !important;
  text-shadow: 0 3px 24px rgba(0,0,0,0.65) !important;
}

.v19-why__cell--hero .v19-why__cell-text {
  font-size: 0.90rem !important;
  color: rgba(255,255,255,0.72) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.72) !important;
  max-width: 46ch !important;
}

/* Thin gold left-border accent on hero */
.v19-why__cell--hero > .v19-why__cell-inner::before {
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  bottom: 2.5rem !important;
  width: 3px !important;
  height: 60px !important;
  background: linear-gradient(180deg, #d4af37 0%, rgba(232,87,10,0.5) 100%) !important;
  border-radius: 2px !important;
  opacity: 0.7 !important;
}

/* ═══════════════════════════════════════════════════════
   STAT CELLS — Gold / Blue gradient with 3D depth
═══════════════════════════════════════════════════════ */

.v19-why__cell--stat {
  grid-column: 8 / 10 !important;
  grid-row: 1 / 2 !important;
  background: linear-gradient(
    145deg,
    rgba(212,175,55,0.18) 0%,
    rgba(180,140,30,0.12) 50%,
    rgba(232,87,10,0.10) 100%
  ) !important;
  border-color: rgba(212,175,55,0.26) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.12),
    0 4px 20px rgba(212,175,55,0.10),
    0 2px 8px rgba(0,0,0,0.25) !important;
}

.v19-why__cell--stat:hover {
  background: linear-gradient(
    145deg,
    rgba(212,175,55,0.26) 0%,
    rgba(180,140,30,0.18) 50%,
    rgba(232,87,10,0.16) 100%
  ) !important;
  border-color: rgba(212,175,55,0.45) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.16),
    0 12px 36px rgba(212,175,55,0.18),
    0 4px 12px rgba(0,0,0,0.30) !important;
}

.v19-why__cell--stat-alt {
  grid-column: 10 / 13 !important;
  grid-row: 1 / 2 !important;
  background: linear-gradient(
    145deg,
    rgba(21,101,168,0.22) 0%,
    rgba(12,40,80,0.28)  50%,
    rgba(8,24,56,0.32)   100%
  ) !important;
  border-color: rgba(21,101,168,0.28) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.10),
    0 4px 20px rgba(21,101,168,0.14),
    0 2px 8px rgba(0,0,0,0.28) !important;
}

.v19-why__cell--stat-alt:hover {
  background: linear-gradient(
    145deg,
    rgba(21,101,168,0.32) 0%,
    rgba(12,40,80,0.38)  50%,
    rgba(8,24,56,0.44)   100%
  ) !important;
  border-color: rgba(21,101,168,0.48) !important;
}

.v19-why__cell--stat .v19-why__cell-inner,
.v19-why__cell--stat-alt .v19-why__cell-inner {
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  gap: 0.3rem !important;
}

/* Stat numbers — large gradient text */
.v19-why__stat-num {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 3rem !important;
  font-weight: 700 !important;
  font-style: italic !important;
  line-height: 1 !important;
  background: linear-gradient(
    135deg,
    #fde68a  0%,
    #f5d97a 20%,
    #e8c14a 45%,
    #e8770a 75%,
    #e8570a 100%
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  filter: drop-shadow(0 2px 8px rgba(212,175,55,0.28)) !important;
  display: block !important;
  transition: transform 0.35s cubic-bezier(.34,1.4,.64,1), filter 0.35s !important;
}

.v19-why__cell:hover .v19-why__stat-num {
  transform: scale(1.08) !important;
  filter: drop-shadow(0 4px 14px rgba(212,175,55,0.45)) !important;
}

.v19-why__stat-star {
  font-size: 1.8rem !important;
}

.v19-why__stat-lbl {
  font-size: 0.64rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  color: rgba(255,255,255,0.60) !important;
  display: block !important;
}

/* ═══════════════════════════════════════════════════════
   WIDE CELL — Hospitality (horizontal layout)
═══════════════════════════════════════════════════════ */

.v19-why__cell--wide {
  grid-column: 8 / 13 !important;
  grid-row: 2 / 3 !important;
  background: linear-gradient(
    135deg,
    rgba(255,255,255,0.06) 0%,
    rgba(212,175,55,0.05) 50%,
    rgba(255,255,255,0.04) 100%
  ) !important;
  border-color: rgba(255,255,255,0.12) !important;
}

.v19-why__cell--wide:hover {
  background: linear-gradient(
    135deg,
    rgba(255,255,255,0.09) 0%,
    rgba(212,175,55,0.08) 50%,
    rgba(255,255,255,0.06) 100%
  ) !important;
}

.v19-why__cell-inner--horiz {
  flex-direction: row !important;
  align-items: flex-start !important;
  gap: 1.2rem !important;
}

.v19-why__cell-inner--horiz .v19-why__cell-icon--sm {
  flex-shrink: 0 !important;
  margin-top: 0.15rem !important;
}

/* ═══════════════════════════════════════════════════════
   FACILITIES CELL
═══════════════════════════════════════════════════════ */

.v19-why__cell--facilities {
  grid-column: 8 / 11 !important;
  grid-row: 3 / 4 !important;
  background: linear-gradient(
    155deg,
    rgba(255,255,255,0.055) 0%,
    rgba(21,101,168,0.06)  60%,
    rgba(255,255,255,0.04) 100%
  ) !important;
}

.v19-why__cell--facilities .v19-why__cell-inner {
  gap: 0.4rem !important;
}

/* Facility pills — gradient + glow */
.v19-why__pills {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 0.38rem !important;
  margin-top: 0.55rem !important;
}

.v19-why__pill {
  display: inline-block !important;
  font-size: 0.62rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.06em !important;
  padding: 0.26rem 0.68rem !important;
  background: linear-gradient(
    135deg,
    rgba(212,175,55,0.14) 0%,
    rgba(232,87,10,0.08)  100%
  ) !important;
  border: 1px solid rgba(212,175,55,0.22) !important;
  border-radius: 50px !important;
  color: rgba(255,255,255,0.72) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.72) !important;
  transition:
    background 0.25s,
    border-color 0.25s,
    color 0.25s,
    box-shadow 0.25s,
    transform 0.2s !important;
}

.v19-why__cell:hover .v19-why__pill {
  background: linear-gradient(
    135deg,
    rgba(212,175,55,0.22) 0%,
    rgba(232,87,10,0.14)  100%
  ) !important;
  border-color: rgba(212,175,55,0.38) !important;
  color: rgba(255,255,255,0.90) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.90) !important;
  box-shadow: 0 2px 8px rgba(212,175,55,0.12) !important;
}

.v19-why__pill:hover {
  transform: translateY(-1px) scale(1.04) !important;
  box-shadow: 0 3px 12px rgba(212,175,55,0.20) !important;
}

/* ═══════════════════════════════════════════════════════
   CTA CELL — Vibrant orange-red gradient
═══════════════════════════════════════════════════════ */

.v19-why__cell--cta {
  grid-column: 11 / 13 !important;
  grid-row: 3 / 4 !important;
  background: linear-gradient(
    155deg,
    #9b1e14  0%,
    #B52A1F 28%,
    #cc3a1a 55%,
    #E8570A 80%,
    #f07022 100%
  ) !important;
  border-color: rgba(232,87,10,0.35) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.15),
    0 6px 28px rgba(232,87,10,0.28) !important;
}

.v19-why__cell--cta:hover {
  border-color: rgba(232,87,10,0.60) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.20),
    0 14px 44px rgba(232,87,10,0.45),
    0 0 0 1px rgba(232,87,10,0.22) !important;
  transform: translateY(-6px) scale(1.012) !important;
}

.v19-why__cell--cta::before {
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(255,255,255,0.30) 50%,
    transparent 100%
  ) !important;
}

.v19-why__cell-inner--cta {
  align-items: flex-start !important;
  justify-content: center !important;
  gap: 0.85rem !important;
}

.v19-why__cta-eyebrow {
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.06em !important;
  color: rgba(255,255,255,0.88) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.88) !important;
  line-height: 1.35 !important;
}

.v19-why__cta-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
  background: rgba(255,255,255,0.18) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  border: 1px solid rgba(255,255,255,0.35) !important;
  border-radius: 100px !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  text-decoration: none !important;
  font-size: 0.74rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.09em !important;
  text-transform: uppercase !important;
  padding: 0.7rem 1.25rem !important;
  transition:
    background 0.25s,
    border-color 0.25s,
    transform 0.25s cubic-bezier(.34,1.3,.64,1),
    box-shadow 0.25s !important;
  white-space: nowrap !important;
}

.v19-why__cta-btn:hover {
  background: rgba(255,255,255,0.30) !important;
  border-color: rgba(255,255,255,0.55) !important;
  transform: translateX(4px) !important;
  box-shadow: 0 4px 16px rgba(0,0,0,0.18) !important;
}

.v19-why__cta-note {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.4rem !important;
  font-size: 0.62rem !important;
  color: rgba(255,255,255,0.68) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.68) !important;
  line-height: 1.4 !important;
}

/* ═══════════════════════════════════════════════════════
   FLOATING PARTICLES (CSS-only, decorative)
   Small gold dots positioned around the section
═══════════════════════════════════════════════════════ */

@keyframes v21-float-a {
  0%,100% { transform: translateY(0px) rotate(0deg); opacity: 0.35; }
  50%      { transform: translateY(-18px) rotate(180deg); opacity: 0.70; }
}
@keyframes v21-float-b {
  0%,100% { transform: translateY(0px) translateX(0px); opacity: 0.25; }
  33%      { transform: translateY(-12px) translateX(8px); opacity: 0.55; }
  66%      { transform: translateY(6px) translateX(-6px); opacity: 0.40; }
}

/* Decorative gradient stripe behind the headline */
.v19-why__headline-wrap {
  position: relative !important;
}

.v19-why__headline-wrap::before {
  content: '' !important;
  position: absolute !important;
  left: -2rem !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 3px !important;
  height: 80% !important;
  background: linear-gradient(
    180deg,
    transparent 0%,
    #d4af37 30%,
    #e8570a 70%,
    transparent 100%
  ) !important;
  border-radius: 3px !important;
  opacity: 0.6 !important;
}

/* ═══════════════════════════════════════════════════════
   RESPONSIVE
═══════════════════════════════════════════════════════ */

@media (max-width: 1200px) {
  .v19-why__bento {
    grid-template-rows: 190px 155px 205px !important;
  }
}

@media (max-width: 1024px) {
  .v19-why__bento {
    grid-template-columns: repeat(2, 1fr) !important;
    grid-template-rows: auto !important;
    perspective: none !important;
  }
  .v19-why__cell--hero {
    grid-column: 1 / -1 !important;
    grid-row: auto !important;
    min-height: 300px !important;
  }
  .v19-why__cell--hero .v19-why__cell-inner {
    padding: 2rem 2rem !important;
  }
  .v19-why__cell--stat     { grid-column: 1 / 2 !important; grid-row: auto !important; min-height: 140px !important; }
  .v19-why__cell--stat-alt { grid-column: 2 / 3 !important; grid-row: auto !important; min-height: 140px !important; }
  .v19-why__cell--wide     { grid-column: 1 / -1 !important; grid-row: auto !important; }
  .v19-why__cell--facilities { grid-column: 1 / 2 !important; grid-row: auto !important; }
  .v19-why__cell--cta      { grid-column: 2 / 3 !important; grid-row: auto !important; min-height: 140px !important; }

  .v19-why__headline-wrap::before {
    display: none !important;
  }
}

@media (max-width: 640px) {
  .v19-why-section .container {
    padding-top: 4rem !important;
  }
  .v19-why__bento {
    grid-template-columns: 1fr !important;
    gap: 0.8rem !important;
  }
  .v19-why__cell--hero,
  .v19-why__cell--stat,
  .v19-why__cell--stat-alt,
  .v19-why__cell--wide,
  .v19-why__cell--facilities,
  .v19-why__cell--cta {
    grid-column: 1 / -1 !important;
    grid-row: auto !important;
  }
  .v19-why__cell--hero {
    min-height: 260px !important;
  }
  .v19-why__cell-inner--horiz {
    flex-direction: column !important;
    gap: 0.75rem !important;
  }
  .v19-why__stat-num {
    font-size: 2.4rem !important;
  }
  .v19-why__headline {
    font-size: clamp(2rem, 8vw, 3rem) !important;
  }
  .v19-why__headline-wrap {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 1rem !important;
  }
  .v19-why__cell--hero .v19-why__cell-title {
    font-size: clamp(1.3rem, 5vw, 1.8rem) !important;
  }
}

@media (max-width: 400px) {
  .v19-why__bento { gap: 0.65rem !important; }
  .v19-why__cell-inner { padding: 1.25rem 1.4rem !important; }
  .v19-why__cell--hero .v19-why__cell-inner { padding: 1.5rem 1.5rem !important; }
}

/* ─────────────────────────────────────────────────────────────
   CUSTOMIZER WHITE-SCREEN FIX
   Gallery images use transport:'refresh' which triggers a full
   iframe reload. With large images or slow connections this
   shows a white loading screen. We override gallery settings
   back to postMessage — the preview JS handles DOM updates.
   The actual saved value is unchanged (still written to DB).
───────────────────────────────────────────────────────────── */
/* This is handled in functions.php dsr_customizer_no_autoreload_v21 */

/* ─────────────────────────────────────────────────────────────
   RESERVE SECTION v2.1 — Stacked layout
   Row 1 (full-width):  Why Book Direct?
   Row 2 (2-col equal): Check Availability | Find Your Booking
   All cards: transparent glass on deep dark BG
───────────────────────────────────────────────────────────── */

/* Suppress all old v17-reserve styles inside the new section */
.v21-reserve-section .v17-reserve__cards,
.v21-reserve-section .v17-reserve__card,
.v21-reserve-section .v17-reserve__inner {
  all: unset !important;
}

/* ── Section BG ── */
.v21-reserve-section {
  position: relative !important;
  background: #030810 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

.v21-rs__bg {
  position: absolute !important;
  inset: 0 !important;
  background:
    url('https://images.unsplash.com/photo-1506905925346-21bda4d32df4?w=1920&h=900&fit=crop&auto=format&q=60')
    center / cover no-repeat !important;
  filter: brightness(0.12) saturate(0.7) !important;
}

.v21-rs__bg::after {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    radial-gradient(ellipse 60% 50% at 50% 50%, rgba(212,175,55,0.05) 0%, transparent 70%),
    linear-gradient(180deg, #030810 0%, transparent 20%, transparent 80%, #030810 100%) !important;
}

/* ── Inner container ── */
.v21-rs__inner {
  position: relative !important;
  z-index: 2 !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 5.5rem 2rem 5rem !important;
}

/* ── Header ── */
.v21-rs__header {
  text-align: center !important;
  margin-bottom: 2.75rem !important;
}

.v21-rs__eyebrow {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.55rem !important;
  font-size: 0.60rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: rgba(212,175,55,0.80) !important;
  margin-bottom: 0.9rem !important;
}

.v21-rs__headline {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: clamp(2rem, 4.5vw, 3.4rem) !important;
  font-weight: 700 !important;
  font-style: italic !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  line-height: 1.1 !important;
  margin: 0 0 0.5rem !important;
}

.v21-rs__headline em {
  background: linear-gradient(125deg, #f5d97a 0%, #e8c14a 40%, #e8570a 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  font-style: normal !important;
}

.v21-rs__sub {
  font-size: 0.84rem !important;
  color: rgba(255,255,255,0.45) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.45) !important;
  margin: 0 !important;
}

/* ── Base transparent glass card ── */
.v21-rs__card {
  position: relative !important;
  background: rgba(255,255,255,0.042) !important;
  border: 1px solid rgba(255,255,255,0.10) !important;
  border-radius: 22px !important;
  padding: 2rem 2.25rem !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
  overflow: hidden !important;
  transition:
    border-color 0.35s ease,
    box-shadow   0.35s ease,
    transform    0.35s cubic-bezier(.25,.46,.45,.94) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.07), 0 4px 24px rgba(0,0,0,0.30) !important;
}

/* Shimmer top line */
.v21-rs__card::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important; left: 0 !important; right: 0 !important;
  height: 1.5px !important;
  background: linear-gradient(90deg, transparent, rgba(212,175,55,0.40) 30%, rgba(245,217,122,0.65) 50%, rgba(212,175,55,0.40) 70%, transparent) !important;
  transition: opacity 0.35s !important;
}

.v21-rs__card:hover {
  border-color: rgba(212,175,55,0.28) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.10),
    0 14px 48px rgba(0,0,0,0.42),
    0 0 0 1px rgba(212,175,55,0.10),
    0 0 28px rgba(212,175,55,0.06) !important;
  transform: translateY(-3px) !important;
}

.v21-rs__card:hover::before {
  background: linear-gradient(90deg, transparent, rgba(212,175,55,0.70) 30%, #f5d97a 50%, rgba(232,87,10,0.55) 70%, transparent) !important;
}

/* Card icon */
.v21-rs__card-icon {
  width: 50px !important;
  height: 50px !important;
  border-radius: 14px !important;
  background: linear-gradient(135deg, rgba(212,175,55,0.16), rgba(232,87,10,0.12)) !important;
  border: 1px solid rgba(212,175,55,0.22) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #d4af37 !important;
  flex-shrink: 0 !important;
  transition: transform 0.3s cubic-bezier(.34,1.3,.64,1) !important;
}

.v21-rs__card-icon--lg {
  width: 58px !important;
  height: 58px !important;
  border-radius: 16px !important;
  margin-bottom: 1.25rem !important;
}

.v21-rs__card:hover .v21-rs__card-icon {
  transform: scale(1.10) rotate(-4deg) !important;
}

.v21-rs__card-title {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 1.15rem !important;
  font-weight: 700 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  margin: 0 0 0.55rem !important;
  line-height: 1.2 !important;
}

.v21-rs__card-text {
  font-size: 0.84rem !important;
  line-height: 1.75 !important;
  color: rgba(255,255,255,0.52) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.52) !important;
  margin: 0 !important;
}

/* ── ROW 1: Why Book Direct ── */
.v21-rs__row1 {
  margin-bottom: 1.25rem !important;
}

.v21-rs__card--why {
  display: grid !important;
  grid-template-columns: auto 1fr !important;
  gap: 2.5rem !important;
  align-items: center !important;
  padding: 1.75rem 2.5rem !important;
}

.v21-rs__why-left {
  display: flex !important;
  align-items: flex-start !important;
  gap: 1.1rem !important;
  min-width: 260px !important;
  max-width: 320px !important;
}

.v21-rs__why-left .v21-rs__card-icon {
  flex-shrink: 0 !important;
  margin-top: 0.15rem !important;
}

/* Perks grid — 3 cols on wide, 2 on medium */
.v21-rs__perks {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 0.6rem 1.5rem !important;
}

.v21-rs__perk {
  display: flex !important;
  align-items: flex-start !important;
  gap: 0.5rem !important;
  font-size: 0.78rem !important;
  color: rgba(255,255,255,0.65) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.65) !important;
  line-height: 1.5 !important;
  transition: color 0.22s !important;
}

.v21-rs__card--why:hover .v21-rs__perk {
  color: rgba(255,255,255,0.80) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.80) !important;
}

.v21-rs__perk svg {
  color: #d4af37 !important;
  flex-shrink: 0 !important;
  margin-top: 0.18rem !important;
}

/* Vertical divider between left and perks */
.v21-rs__card--why::before {
  display: none !important;
}

.v21-rs__card--why .v21-rs__why-left::after {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  left: 330px !important;
  top: 1.75rem !important;
  bottom: 1.75rem !important;
  width: 1px !important;
  background: linear-gradient(180deg, transparent, rgba(212,175,55,0.22) 30%, rgba(212,175,55,0.22) 70%, transparent) !important;
}

/* ── ROW 2: 2-col grid ── */
.v21-rs__row2 {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 1.25rem !important;
  margin-bottom: 2rem !important;
}

/* Check Availability — featured */
.v21-rs__card--book {
  background: linear-gradient(
    155deg,
    rgba(212,175,55,0.10) 0%,
    rgba(255,255,255,0.05) 40%,
    rgba(232,87,10,0.07)  100%
  ) !important;
  border-color: rgba(212,175,55,0.20) !important;
}

.v21-rs__card--book:hover {
  border-color: rgba(212,175,55,0.42) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.12),
    0 16px 56px rgba(0,0,0,0.48),
    0 0 0 1px rgba(212,175,55,0.16),
    0 0 40px rgba(212,175,55,0.10) !important;
}

/* Price block */
.v21-rs__price {
  display: flex !important;
  align-items: baseline !important;
  gap: 0.3rem !important;
  margin: 1.25rem 0 !important;
  padding: 0.85rem 1.1rem !important;
  background: rgba(212,175,55,0.07) !important;
  border: 1px solid rgba(212,175,55,0.16) !important;
  border-radius: 12px !important;
}

.v21-rs__price-from {
  font-size: 0.58rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: rgba(212,175,55,0.65) !important;
  -webkit-text-fill-color: rgba(212,175,55,0.65) !important;
}

.v21-rs__price-num {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 1.8rem !important;
  font-weight: 700 !important;
  font-style: italic !important;
  color: #f5d97a !important;
  -webkit-text-fill-color: #f5d97a !important;
  line-height: 1 !important;
}

.v21-rs__price-night {
  font-size: 0.64rem !important;
  color: rgba(255,255,255,0.42) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.42) !important;
}

/* Book button */
.v21-rs__book-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0.6rem !important;
  width: 100% !important;
  background: linear-gradient(135deg, #B52A1F 0%, #E8570A 42%, #FF9243 65%, #E8570A 100%) !important;
  background-size: 200% 100% !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  text-decoration: none !important;
  font-size: 0.74rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.10em !important;
  text-transform: uppercase !important;
  padding: 0.95rem 1.5rem !important;
  border-radius: 100px !important;
  box-shadow: 0 4px 20px rgba(232,87,10,0.42) !important;
  transition:
    transform 0.22s cubic-bezier(.34,1.3,.64,1),
    box-shadow 0.22s,
    background-position 0.4s !important;
}

.v21-rs__book-btn:hover {
  transform: translateY(-2px) scale(1.02) !important;
  box-shadow: 0 10px 32px rgba(232,87,10,0.60) !important;
  background-position: 100% 0 !important;
}

.v21-rs__note {
  text-align: center !important;
  font-size: 0.64rem !important;
  color: rgba(255,255,255,0.36) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.36) !important;
  margin: 0.75rem 0 0 !important;
}

/* Find Booking card */
.v21-rs__card--find {
  display: flex !important;
  flex-direction: column !important;
  gap: 0.85rem !important;
}

/* Shortcode wrapper */
.v21-rs__shortcode {
  flex: 1 !important;
}

.v21-rs__shortcode form,
.v21-rs__shortcode .hsr-check-booking {
  background: rgba(255,255,255,0.04) !important;
  border: 1px solid rgba(255,255,255,0.10) !important;
  border-radius: 12px !important;
  padding: 1rem !important;
}

.v21-rs__shortcode input[type="text"],
.v21-rs__shortcode input[type="email"],
.v21-rs__shortcode input[type="number"] {
  width: 100% !important;
  background: rgba(255,255,255,0.07) !important;
  border: 1px solid rgba(255,255,255,0.14) !important;
  border-radius: 8px !important;
  padding: 0.6rem 0.9rem !important;
  color: rgba(255,255,255,0.85) !important;
  font-size: 0.78rem !important;
  outline: none !important;
  margin-bottom: 0.6rem !important;
  transition: border-color 0.2s !important;
}

.v21-rs__shortcode input:focus {
  border-color: rgba(212,175,55,0.45) !important;
}

.v21-rs__shortcode input::placeholder {
  color: rgba(255,255,255,0.30) !important;
}

.v21-rs__shortcode button,
.v21-rs__shortcode input[type="submit"] {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  background: linear-gradient(135deg, #B52A1F 0%, #E8570A 50%, #FF9243 75%, #E8570A 100%) !important;
  background-size: 200% 100% !important;
  color: #fff !important;
  border: none !important;
  border-radius: 8px !important;
  padding: 0.68rem 1.2rem !important;
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  box-shadow: 0 3px 12px rgba(232,87,10,0.38) !important;
  transition: transform 0.2s, box-shadow 0.2s, background-position 0.4s !important;
}

.v21-rs__shortcode button:hover,
.v21-rs__shortcode input[type="submit"]:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 6px 20px rgba(232,87,10,0.52) !important;
  background-position: 100% 0 !important;
}

/* Contact stack (fallback) */
.v21-rs__contact-stack {
  display: flex !important;
  flex-direction: column !important;
  gap: 0.55rem !important;
}

.v21-rs__contact-btn {
  display: flex !important;
  align-items: center !important;
  gap: 0.6rem !important;
  background: rgba(255,255,255,0.04) !important;
  border: 1px solid rgba(255,255,255,0.10) !important;
  border-radius: 10px !important;
  padding: 0.65rem 1rem !important;
  color: rgba(255,255,255,0.68) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.68) !important;
  text-decoration: none !important;
  font-size: 0.74rem !important;
  transition: border-color 0.22s, background 0.22s, color 0.22s, transform 0.22s !important;
}

.v21-rs__contact-btn svg {
  color: #d4af37 !important;
}

.v21-rs__contact-btn:hover {
  border-color: rgba(212,175,55,0.30) !important;
  background: rgba(212,175,55,0.06) !important;
  color: #f5d97a !important;
  -webkit-text-fill-color: #f5d97a !important;
  transform: translateX(3px) !important;
}

/* Quick facts */
.v21-rs__facts {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 0.5rem !important;
  margin-top: 0.25rem !important;
}

.v21-rs__fact {
  text-align: center !important;
  padding: 0.6rem 0.4rem !important;
  background: rgba(255,255,255,0.03) !important;
  border: 1px solid rgba(255,255,255,0.07) !important;
  border-radius: 10px !important;
}

.v21-rs__fact span {
  display: block !important;
  font-size: 0.52rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: rgba(255,255,255,0.38) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.38) !important;
  margin-bottom: 0.2rem !important;
}

.v21-rs__fact strong {
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  color: rgba(255,255,255,0.75) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.75) !important;
}

/* ── Trust bar ── */
.v21-rs__trust {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  gap: 0 !important;
  padding-top: 1.75rem !important;
  border-top: 1px solid rgba(255,255,255,0.06) !important;
}

.v21-rs__trust-item {
  display: flex !important;
  align-items: center !important;
  gap: 0.45rem !important;
  font-size: 0.64rem !important;
  font-weight: 600 !important;
  color: rgba(255,255,255,0.48) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.48) !important;
  padding: 0.4rem 1.25rem !important;
  transition: color 0.22s !important;
}

.v21-rs__trust-item:hover {
  color: rgba(255,255,255,0.78) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.78) !important;
}

.v21-rs__trust-item svg { color: rgba(212,175,55,0.62) !important; }

.v21-rs__trust-sep {
  width: 1px !important;
  height: 16px !important;
  background: rgba(255,255,255,0.10) !important;
}

/* ── Responsive ── */
@media (max-width: 900px) {
  .v21-rs__card--why {
    grid-template-columns: 1fr !important;
    gap: 1.5rem !important;
  }
  .v21-rs__why-left {
    max-width: 100% !important;
  }
  .v21-rs__perks {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

@media (max-width: 640px) {
  .v21-rs__inner { padding: 3.5rem 1.25rem 4rem !important; }
  .v21-rs__row2  { grid-template-columns: 1fr !important; }
  .v21-rs__perks { grid-template-columns: 1fr !important; }
  .v21-rs__card--why { padding: 1.5rem !important; }
  .v21-rs__trust-sep { display: none !important; }
  .v21-rs__trust { justify-content: flex-start !important; }
  .v21-rs__badge { top: 1rem !important; right: 1rem !important; }
}

/* Badge on Check Availability */
.v21-rs__badge {
  position: absolute !important;
  top: 1.25rem !important;
  right: 1.25rem !important;
  background: linear-gradient(135deg, #d4af37, #e8570a) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-size: 0.48rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  padding: 0.3rem 0.75rem !important;
  border-radius: 20px !important;
}

/* ── design-v2_2.css (30,332b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v2.2
   ──────────────────────────────────────────────────────────────
   1. Reserve section — restore v2.0 mountain photo background
   2. Why Dhulikhel — gradient text, richer details, premium polish
   3. About Us page — full modern premium redesign
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   1. RESERVE SECTION — Restore mountain photo background (v2.0)
   The v2.1 section uses .v21-reserve-section + .v21-rs__bg.
   Override bg to use the same real mountain photo + dark overlay
   that was used in v2.0 / v1.7 (brightness 0.18 over photo).
───────────────────────────────────────────────────────────── */

.v21-reserve-section {
  background: #03080f !important;
}

.v21-rs__bg {
  position: absolute !important;
  inset: 0 !important;
  overflow: hidden !important;
  z-index: 0 !important;
}

/* Replace the plain color with real mountain photo */
.v21-rs__bg::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    linear-gradient(180deg, #03080f 0%, rgba(3,8,15,0) 25%, rgba(3,8,15,0) 70%, #03080f 100%),
    url('https://images.unsplash.com/photo-1506905925346-21bda4d32df4?w=1920&h=900&fit=crop&auto=format&q=80')
    center / cover no-repeat !important;
  filter: brightness(0.18) saturate(0.8) !important;
}

/* Remove the conflicting ::after plain background */
.v21-rs__bg::after {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    radial-gradient(ellipse 65% 50% at 50% 50%, rgba(212,175,55,0.06) 0%, transparent 70%),
    linear-gradient(135deg, rgba(232,87,10,0.05) 0%, transparent 60%) !important;
  filter: none !important;
}

/* ─────────────────────────────────────────────────────────────
   2. WHY DHULIKHEL — gradient text + richer premium polish
   Upgrades on top of v2.1 bento layout — same cells, better look.
───────────────────────────────────────────────────────────── */

/* Section eyebrow label */
.v19-why__label-pill {
  font-size: 0.66rem !important;
  letter-spacing: 0.24em !important;
}

/* Main headline — gradient on "The Art of" too */
.v19-why__headline {
  font-size: clamp(2.8rem, 5.8vw, 4.6rem) !important;
  line-height: 1.04 !important;
}

/* "The Art of" — subtle warm white gradient */
.v19-why__headline span.v22-gradient-plain {
  background: linear-gradient(135deg, #ffffff 0%, #e8e0d0 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

/* "Himalayan Luxury" italic gradient — richer spectrum */
.v19-why__headline em {
  background: linear-gradient(
    115deg,
    #fde68a  0%,
    #f5d97a 15%,
    #e8c14a 32%,
    #f0a830 50%,
    #e8770a 68%,
    #e8570a 84%,
    #c8380a 100%
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  filter: drop-shadow(0 3px 10px rgba(232,87,10,0.35)) !important;
}

/* Sub-headline — brighter */
.v19-why__headline-sub {
  color: rgba(255,255,255,0.68) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.68) !important;
  font-size: 0.94rem !important;
}

/* ALL cell titles — gradient text */
.v19-why__cell-title {
  background: linear-gradient(
    135deg,
    #ffffff  0%,
    #f0ece4 45%,
    #e8e0d0 100%
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  text-shadow: none !important;
}

/* Hero cell title — larger gradient */
.v19-why__cell--hero .v19-why__cell-title {
  background: linear-gradient(
    130deg,
    #ffffff  0%,
    #f5f0e8 30%,
    #f5d97a 65%,
    #e8c14a 85%,
    #d4a520 100%
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  filter: drop-shadow(0 2px 8px rgba(212,175,55,0.20)) !important;
  text-shadow: none !important;
}

/* Cell body text — improve contrast */
.v19-why__cell-text {
  color: rgba(255,255,255,0.72) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.72) !important;
  font-size: 0.86rem !important;
  line-height: 1.80 !important;
}

.v19-why__cell--hero .v19-why__cell-text {
  color: rgba(255,255,255,0.75) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.75) !important;
}

/* Stat numbers — wider richer gradient */
.v19-why__stat-num {
  background: linear-gradient(
    135deg,
    #fde68a  0%,
    #f5d97a 22%,
    #e8c14a 42%,
    #f0a830 60%,
    #e8770a 78%,
    #e8570a 100%
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  filter: drop-shadow(0 3px 10px rgba(212,175,55,0.35)) !important;
  font-size: 3.2rem !important;
}

/* Stat labels */
.v19-why__stat-lbl {
  background: linear-gradient(135deg, rgba(255,255,255,0.75), rgba(212,175,55,0.65)) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  letter-spacing: 0.18em !important;
}

/* Cell corner tag number — gradient */
.v19-why__cell-tag {
  background: linear-gradient(135deg, rgba(212,175,55,0.70), rgba(232,87,10,0.50)) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  font-size: 0.58rem !important;
}

/* CTA cell eyebrow — gradient */
.v19-why__cta-eyebrow {
  background: linear-gradient(135deg, #ffffff, #ffe8cc) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  font-size: 0.76rem !important;
  font-weight: 800 !important;
}

/* CTA note */
.v19-why__cta-note {
  color: rgba(255,255,255,0.72) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.72) !important;
}

/* Facility pill text */
.v19-why__pill {
  background: linear-gradient(
    135deg,
    rgba(212,175,55,0.16) 0%,
    rgba(232,87,10,0.10) 100%
  ) !important;
  border-color: rgba(212,175,55,0.26) !important;
  color: rgba(255,255,255,0.76) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.76) !important;
}

/* Hero cell left accent bar — thicker, brighter */
.v19-why__cell--hero > .v19-why__cell-inner::before {
  width: 4px !important;
  height: 70px !important;
  background: linear-gradient(180deg, #f5d97a 0%, #e8570a 60%, transparent 100%) !important;
  opacity: 0.9 !important;
}

/* Headline decorative left bar */
.v19-why__headline-wrap::before {
  width: 4px !important;
  background: linear-gradient(
    180deg,
    transparent 0%,
    #f5d97a 25%,
    #e8c14a 50%,
    #e8570a 75%,
    transparent 100%
  ) !important;
  opacity: 0.85 !important;
}

/* Wide (Hospitality) cell — warmer bg tint */
.v19-why__cell--wide {
  background: linear-gradient(
    140deg,
    rgba(212,175,55,0.07) 0%,
    rgba(255,255,255,0.04) 50%,
    rgba(232,87,10,0.04) 100%
  ) !important;
}

/* Pulsing dot animation — gold glow */
.v19-why__label-dot {
  background: radial-gradient(circle, #f5d97a 30%, #e8570a 100%) !important;
  box-shadow: 0 0 8px rgba(245,217,122,0.90), 0 0 16px rgba(212,175,55,0.50) !important;
}

/* ─────────────────────────────────────────────────────────────
   3. ABOUT US PAGE — Ultra-modern premium redesign v2.2
   Same content, completely different look:
   - Full-bleed hero with parallax-style overlay + gradient text
   - "Who We Are" — editorial asymmetric with floating badge
   - "Key Facts" — dark glass bento tiles (not plain white cards)
   - "Why Choose Us" — horizontal scroll-friendly icon strips
   - "Guest Reviews" — premium dark testimonial cards
   - "Contact CTA" — full-bleed gradient with mountain silhouette
───────────────────────────────────────────────────────────── */

/* ── Page Hero ── */
.page-hero {
  position: relative !important;
  overflow: hidden !important;
  min-height: 520px !important;
  display: flex !important;
  align-items: flex-end !important;
}

.page-hero-bg {
  position: absolute !important;
  inset: 0 !important;
}

.page-hero-bg img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center 40% !important;
  filter: brightness(0.52) saturate(1.05) !important;
}

/* Multi-layer overlay on hero */
.page-hero-bg::after {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    linear-gradient(0deg,   rgba(3,8,15,0.90) 0%, rgba(3,8,15,0.35) 45%, transparent 100%),
    linear-gradient(90deg,  rgba(3,8,15,0.55) 0%, transparent 60%),
    linear-gradient(135deg, rgba(232,87,10,0.08) 0%, transparent 50%) !important;
}

.page-hero-content {
  position: relative !important;
  z-index: 2 !important;
  padding-top: 2rem !important;
  padding-bottom: 4rem !important;
  max-width: 720px !important;
}

.page-hero-content .section-label {
  font-size: 0.64rem !important;
  letter-spacing: 0.24em !important;
  color: #e8c14a !important;
  background: rgba(212,175,55,0.14) !important;
  border: 1px solid rgba(212,175,55,0.28) !important;
  -webkit-text-fill-color: #e8c14a !important;
  margin-bottom: 1rem !important;
  display: inline-block !important;
}

.page-hero-title {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: clamp(2.2rem, 5vw, 3.8rem) !important;
  font-weight: 700 !important;
  font-style: italic !important;
  line-height: 1.1 !important;
  margin: 0 0 1rem !important;
  background: linear-gradient(
    130deg,
    #ffffff  0%,
    #f5f0e8 30%,
    #f5d97a 62%,
    #e8c14a 82%,
    #d4a520 100%
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  filter: drop-shadow(0 3px 12px rgba(0,0,0,0.4)) !important;
}

.page-hero-subtitle {
  font-size: 0.96rem !important;
  line-height: 1.80 !important;
  color: rgba(255,255,255,0.75) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.75) !important;
  max-width: 60ch !important;
  margin: 0 !important;
}

/* Mountain silhouette at hero bottom */
.page-hero::after {
  content: '' !important;
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 80px !important;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 80' preserveAspectRatio='none'%3E%3Cpath d='M0,80 L0,55 L80,42 L160,58 L240,28 L320,45 L400,15 L480,32 L560,8 L640,24 L720,4 L800,20 L880,0 L960,16 L1040,6 L1120,28 L1200,10 L1280,32 L1360,14 L1440,38 L1440,80 Z' fill='%23f8f5ee'/%3E%3C/svg%3E") center bottom / cover no-repeat !important;
  z-index: 3 !important;
  pointer-events: none !important;
}

/* ── WHO WE ARE — Editorial asymmetric section ── */
.v22-about__story {
  padding: 6rem 0 5rem !important;
  background: linear-gradient(175deg, #f8f5ee 0%, #fdf9f0 60%, #f4f0e8 100%) !important;
  position: relative !important;
  overflow: hidden !important;
}

.v22-about__story::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    radial-gradient(ellipse 55% 50% at 5% 50%, rgba(212,175,55,0.07) 0%, transparent 65%),
    radial-gradient(ellipse 40% 40% at 95% 20%, rgba(21,101,168,0.05) 0%, transparent 60%) !important;
  pointer-events: none !important;
}

.v22-about__story .container {
  position: relative !important;
  z-index: 1 !important;
}

/* Story layout */
.v22-about__story-grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 5rem !important;
  align-items: center !important;
}

/* Image wrapper — with decorative frame */
.v22-about__story-img-wrap {
  position: relative !important;
}

.v22-about__story-img-wrap img {
  width: 100% !important;
  border-radius: 24px !important;
  object-fit: cover !important;
  box-shadow:
    0 20px 60px rgba(14,26,42,0.16),
    0 4px 16px rgba(14,26,42,0.08) !important;
  position: relative !important;
  z-index: 1 !important;
  transition: transform 0.5s ease !important;
}

.v22-about__story-img-wrap:hover img {
  transform: scale(1.015) !important;
}

/* Decorative gold frame offset */
.v22-about__story-img-wrap::before {
  content: '' !important;
  position: absolute !important;
  top: -14px !important;
  left: -14px !important;
  right: 14px !important;
  bottom: 14px !important;
  border: 2px solid rgba(212,175,55,0.25) !important;
  border-radius: 26px !important;
  z-index: 0 !important;
  transition: border-color 0.35s !important;
}

.v22-about__story-img-wrap:hover::before {
  border-color: rgba(212,175,55,0.50) !important;
}

/* Floating badge */
.v22-about__story-badge {
  position: absolute !important;
  bottom: -1.5rem !important;
  right: -1.5rem !important;
  background: linear-gradient(135deg, #0C2040 0%, #1565A8 100%) !important;
  border: 2px solid rgba(212,175,55,0.30) !important;
  border-radius: 20px !important;
  padding: 1.25rem 1.6rem !important;
  text-align: center !important;
  box-shadow: 0 8px 32px rgba(12,32,64,0.30), 0 0 0 4px rgba(212,175,55,0.10) !important;
  z-index: 2 !important;
}

.v22-about__story-badge-num {
  display: block !important;
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 2rem !important;
  font-weight: 700 !important;
  font-style: italic !important;
  background: linear-gradient(135deg, #f5d97a, #e8570a) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  line-height: 1 !important;
}

.v22-about__story-badge-lbl {
  display: block !important;
  font-size: 0.58rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: rgba(255,255,255,0.70) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.70) !important;
  margin-top: 0.25rem !important;
}

/* Story content */
.v22-about__story-content {}

.v22-about__story-content .section-label {
  background: rgba(181,42,31,0.08) !important;
  border: 1px solid rgba(181,42,31,0.14) !important;
  color: #B52A1F !important;
  -webkit-text-fill-color: #B52A1F !important;
}

.v22-about__story-title {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: clamp(1.7rem, 3vw, 2.5rem) !important;
  font-weight: 700 !important;
  line-height: 1.18 !important;
  margin: 0.75rem 0 0.5rem !important;
  background: linear-gradient(130deg, #0C2040 0%, #1a3a6a 55%, #0C2040 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

.v22-about__story-body p {
  color: rgba(14,26,42,0.65) !important;
  -webkit-text-fill-color: rgba(14,26,42,0.65) !important;
  line-height: 1.90 !important;
  font-size: 0.92rem !important;
  margin-bottom: 1.1rem !important;
}

/* ── KEY FACTS — Dark glass bento tiles ── */
.v22-about__facts {
  background: #050d1a !important;
  padding: 5.5rem 0 6rem !important;
  position: relative !important;
  overflow: hidden !important;
}

.v22-about__facts::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    radial-gradient(ellipse 55% 45% at 15% 50%, rgba(212,175,55,0.08) 0%, transparent 60%),
    radial-gradient(ellipse 50% 40% at 85% 50%, rgba(21,101,168,0.10) 0%, transparent 58%) !important;
  pointer-events: none !important;
}

.v22-about__facts .container { position: relative !important; z-index: 1 !important; }

.v22-about__facts .section-title {
  background: linear-gradient(130deg, #ffffff 0%, #f5d97a 55%, #e8c14a 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

.v22-about__facts .section-label {
  color: rgba(212,175,55,0.85) !important;
  -webkit-text-fill-color: rgba(212,175,55,0.85) !important;
  background: rgba(212,175,55,0.10) !important;
  border: 1px solid rgba(212,175,55,0.22) !important;
}

/* Fact tile — glass dark */
.v22-fact-tile {
  background: linear-gradient(
    145deg,
    rgba(255,255,255,0.058) 0%,
    rgba(255,255,255,0.025) 100%
  ) !important;
  border: 1px solid rgba(255,255,255,0.09) !important;
  border-radius: 20px !important;
  padding: 1.75rem 1.6rem !important;
  position: relative !important;
  overflow: hidden !important;
  transition: transform 0.30s ease, border-color 0.30s, box-shadow 0.30s !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.07), 0 4px 20px rgba(0,0,0,0.20) !important;
}

.v22-fact-tile::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important; left: 0 !important; right: 0 !important;
  height: 1.5px !important;
  background: linear-gradient(90deg, transparent, rgba(212,175,55,0.40) 40%, rgba(232,87,10,0.35) 70%, transparent) !important;
}

.v22-fact-tile:hover {
  transform: translateY(-5px) !important;
  border-color: rgba(212,175,55,0.25) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.10),
    0 16px 44px rgba(0,0,0,0.32),
    0 0 0 1px rgba(212,175,55,0.10) !important;
}

.v22-fact-tile:hover::before {
  background: linear-gradient(90deg, transparent, rgba(212,175,55,0.70) 35%, rgba(245,217,122,0.85) 55%, rgba(232,87,10,0.55) 75%, transparent) !important;
}

.v22-fact-tile__icon {
  font-size: 1.9rem !important;
  line-height: 1 !important;
  margin-bottom: 0.85rem !important;
  display: block !important;
  transition: transform 0.3s cubic-bezier(.34,1.3,.64,1) !important;
  filter: drop-shadow(0 2px 6px rgba(0,0,0,0.4)) !important;
}

.v22-fact-tile:hover .v22-fact-tile__icon {
  transform: scale(1.15) rotate(-4deg) !important;
}

.v22-fact-tile__title {
  font-size: 0.88rem !important;
  font-weight: 700 !important;
  margin: 0 0 0.45rem !important;
  background: linear-gradient(135deg, #ffffff 0%, #f5d97a 60%, #e8c14a 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

.v22-fact-tile__text {
  font-size: 0.78rem !important;
  line-height: 1.75 !important;
  color: rgba(255,255,255,0.55) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.55) !important;
  margin: 0 !important;
}

/* ── WHY CHOOSE US — Horizontal card strips ── */
.v22-about__why {
  background: linear-gradient(175deg, #f8f5ee 0%, #fdf9f0 60%, #f4f0e8 100%) !important;
  padding: 5.5rem 0 6rem !important;
  position: relative !important;
  overflow: hidden !important;
}

.v22-about__why::before {
  content: 'WHY US' !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: clamp(6rem, 14vw, 13rem) !important;
  font-weight: 900 !important;
  font-style: italic !important;
  color: rgba(212,175,55,0.045) !important;
  white-space: nowrap !important;
  pointer-events: none !important;
  user-select: none !important;
}

.v22-about__why .section-title {
  background: linear-gradient(130deg, #0C2040 0%, #1a3a6a 55%, #0C2040 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

/* Why card — large horizontal strip */
.v22-why-card {
  display: grid !important;
  grid-template-columns: 72px 1fr !important;
  gap: 1.5rem !important;
  align-items: flex-start !important;
  background: #ffffff !important;
  border: 1px solid rgba(212,175,55,0.12) !important;
  border-radius: 18px !important;
  padding: 1.6rem 2rem !important;
  position: relative !important;
  overflow: hidden !important;
  transition: transform 0.28s ease, border-color 0.28s, box-shadow 0.28s !important;
  box-shadow: 0 2px 12px rgba(14,26,42,0.05) !important;
}

.v22-why-card::after {
  content: '' !important;
  position: absolute !important;
  left: 0 !important; top: 0 !important; bottom: 0 !important;
  width: 3px !important;
  background: linear-gradient(180deg, #d4af37, #e8570a) !important;
  opacity: 0 !important;
  transition: opacity 0.28s !important;
}

.v22-why-card:hover {
  transform: translateX(6px) !important;
  border-color: rgba(212,175,55,0.28) !important;
  box-shadow: 0 8px 32px rgba(14,26,42,0.10) !important;
}

.v22-why-card:hover::after {
  opacity: 1 !important;
}

.v22-why-card__icon-wrap {
  width: 72px !important;
  height: 72px !important;
  flex-shrink: 0 !important;
  border-radius: 18px !important;
  background: linear-gradient(135deg, rgba(212,175,55,0.12), rgba(232,87,10,0.08)) !important;
  border: 1px solid rgba(212,175,55,0.18) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 1.9rem !important;
  transition: transform 0.3s cubic-bezier(.34,1.3,.64,1) !important;
}

.v22-why-card:hover .v22-why-card__icon-wrap {
  transform: scale(1.10) rotate(-4deg) !important;
}

.v22-why-card__title {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 1.05rem !important;
  font-weight: 700 !important;
  margin: 0 0 0.4rem !important;
  background: linear-gradient(130deg, #0C2040 0%, #1a4080 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

.v22-why-card__text {
  font-size: 0.84rem !important;
  line-height: 1.78 !important;
  color: rgba(14,26,42,0.60) !important;
  -webkit-text-fill-color: rgba(14,26,42,0.60) !important;
  margin: 0 !important;
}

/* ── GUEST REVIEWS — Premium dark cards ── */
.v22-about__reviews {
  background: linear-gradient(175deg, #04080f 0%, #060d1a 50%, #04080f 100%) !important;
  padding: 5.5rem 0 6rem !important;
  position: relative !important;
  overflow: hidden !important;
}

.v22-about__reviews::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    radial-gradient(ellipse 60% 50% at 0% 50%, rgba(212,175,55,0.07) 0%, transparent 65%),
    radial-gradient(ellipse 50% 45% at 100% 50%, rgba(21,101,168,0.08) 0%, transparent 60%) !important;
  pointer-events: none !important;
}

.v22-about__reviews .section-title {
  background: linear-gradient(130deg, #ffffff 0%, #f5d97a 55%, #e8c14a 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

.v22-about__reviews .section-label {
  color: rgba(212,175,55,0.85) !important;
  -webkit-text-fill-color: rgba(212,175,55,0.85) !important;
  background: rgba(212,175,55,0.10) !important;
  border: 1px solid rgba(212,175,55,0.22) !important;
}

/* Review card */
.v22-review-card {
  background: rgba(255,255,255,0.042) !important;
  border: 1px solid rgba(255,255,255,0.09) !important;
  border-radius: 22px !important;
  padding: 2rem 2rem !important;
  position: relative !important;
  overflow: hidden !important;
  transition: transform 0.30s ease, border-color 0.30s, box-shadow 0.30s !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.07), 0 4px 20px rgba(0,0,0,0.22) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
}

.v22-review-card::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important; left: 0 !important; right: 0 !important;
  height: 1.5px !important;
  background: linear-gradient(90deg, transparent, rgba(212,175,55,0.45) 40%, rgba(232,87,10,0.38) 70%, transparent) !important;
}

.v22-review-card:hover {
  transform: translateY(-5px) !important;
  border-color: rgba(212,175,55,0.24) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.10),
    0 16px 48px rgba(0,0,0,0.36),
    0 0 0 1px rgba(212,175,55,0.10) !important;
}

/* Quote mark */
.v22-review-card__quote {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 4rem !important;
  line-height: 0.6 !important;
  margin-bottom: 1rem !important;
  display: block !important;
  background: linear-gradient(135deg, rgba(212,175,55,0.60), rgba(232,87,10,0.40)) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

.v22-review-card__text {
  font-size: 0.88rem !important;
  line-height: 1.85 !important;
  color: rgba(255,255,255,0.72) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.72) !important;
  font-style: italic !important;
  margin: 0 0 1.5rem !important;
}

/* Stars */
.v22-review-card__stars {
  background: linear-gradient(135deg, #f5d97a, #e8570a) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  font-size: 0.85rem !important;
  letter-spacing: 0.05em !important;
  display: block !important;
  margin-bottom: 1rem !important;
}

.v22-review-card__author {
  display: flex !important;
  align-items: center !important;
  gap: 0.85rem !important;
  padding-top: 1.25rem !important;
  border-top: 1px solid rgba(255,255,255,0.07) !important;
}

.v22-review-card__avatar {
  width: 44px !important;
  height: 44px !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-weight: 700 !important;
  font-size: 0.88rem !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  flex-shrink: 0 !important;
  border: 1.5px solid rgba(212,175,55,0.25) !important;
}

.v22-review-card__name {
  display: block !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-size: 0.88rem !important;
  font-weight: 700 !important;
  margin-bottom: 0.15rem !important;
}

.v22-review-card__role {
  display: block !important;
  font-size: 0.70rem !important;
  color: rgba(255,255,255,0.48) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.48) !important;
}

/* ── CONTACT CTA — Full-bleed gradient mountain ── */
.v22-about__cta {
  position: relative !important;
  background: linear-gradient(
    145deg,
    #0C2040 0%,
    #112d52 35%,
    #0d2244 70%,
    #0a1830 100%
  ) !important;
  padding: 6rem 0 7rem !important;
  text-align: center !important;
  overflow: hidden !important;
}

.v22-about__cta::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    radial-gradient(ellipse 70% 60% at 50% 50%, rgba(212,175,55,0.10) 0%, transparent 65%),
    radial-gradient(ellipse 40% 30% at 20% 100%, rgba(232,87,10,0.08) 0%, transparent 55%) !important;
  pointer-events: none !important;
}

/* Mountain silhouette at top */
.v22-about__cta::after {
  content: '' !important;
  position: absolute !important;
  top: 0 !important; left: 0 !important; right: 0 !important;
  height: 80px !important;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 80' preserveAspectRatio='none'%3E%3Cpath d='M0,0 L0,60 L80,45 L160,58 L240,28 L320,48 L400,18 L480,35 L560,10 L640,26 L720,6 L800,22 L880,2 L960,18 L1040,8 L1120,30 L1200,12 L1280,34 L1360,16 L1440,40 L1440,0 Z' fill='%23f8f5ee'/%3E%3C/svg%3E") center top / cover no-repeat !important;
  z-index: 1 !important;
  pointer-events: none !important;
}

.v22-about__cta .container {
  position: relative !important;
  z-index: 2 !important;
}

.v22-about__cta .section-label {
  color: rgba(212,175,55,0.85) !important;
  -webkit-text-fill-color: rgba(212,175,55,0.85) !important;
  background: rgba(212,175,55,0.10) !important;
  border: 1px solid rgba(212,175,55,0.22) !important;
}

.v22-about__cta .section-title {
  background: linear-gradient(130deg, #ffffff 0%, #f5d97a 50%, #e8c14a 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

.v22-about__cta .section-subtitle {
  color: rgba(255,255,255,0.65) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.65) !important;
}

.v22-about__cta .gold-divider {
  margin: 1rem auto 1.5rem !important;
}

/* ── RESPONSIVE — About page ── */
@media (max-width: 900px) {
  .v22-about__story-grid {
    grid-template-columns: 1fr !important;
    gap: 3rem !important;
  }
  .v22-about__story-badge {
    right: 1rem !important;
    bottom: 1rem !important;
  }
}

@media (max-width: 640px) {
  .page-hero { min-height: 420px !important; }
  .v22-about__facts,
  .v22-about__why,
  .v22-about__reviews,
  .v22-about__cta { padding: 3.5rem 0 4rem !important; }
  .v22-why-card {
    grid-template-columns: 52px 1fr !important;
    gap: 1rem !important;
    padding: 1.25rem 1.35rem !important;
  }
  .v22-why-card__icon-wrap {
    width: 52px !important;
    height: 52px !important;
    font-size: 1.5rem !important;
  }
}

/* ── design-v2_3.css (19,535b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v2.3
   ──────────────────────────────────────────────────────────────
   1. Reserve section — DEFINITIVE mountain photo BG fix
   2. About page "At a Glance" — gradient text (orange/red/skyblue)
   3. Sky-blue + red + white gradient combo across About sections
   4. Premium hover effects throughout About page
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   COLOUR TOKENS (v2.3 brand palette)
   --v23-sky:    #38bdf8   (sky blue)
   --v23-red:    #e8570a   (resort orange-red)
   --v23-gold:   #f5d97a   (gold)
   --v23-white:  #ffffff
   gradient A (titles):  sky→white→red/orange
   gradient B (accents): red→gold→sky
   gradient C (dark bg): navy→sky-tint
───────────────────────────────────────────────────────────── */

/* ─────────────────────────────────────────────────────────────
   1.  RESERVE SECTION — DEFINITIVE BG FIX
   The .v21-rs__bg div already exists in the HTML.
   We turn it into a proper full-cover mountain photo layer
   using the same technique as the original v1.7 design.
───────────────────────────────────────────────────────────── */

/* Section base */
.v21-reserve-section {
  background: #03080f !important;
  position: relative !important;
  overflow: hidden !important;
}

/* The BG div — fill the section */
.v21-rs__bg {
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  overflow: hidden !important;
  background: none !important;   /* kill any inherited color */
}

/* Strip the old ::before from v2.2 (had filter on bg-image which doesn't work) */
.v21-rs__bg::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  /* Real mountain photo — same as v1.7 original */
  background:
    url('https://images.unsplash.com/photo-1506905925346-21bda4d32df4?w=1920&h=900&fit=crop&auto=format&q=80')
    center / cover no-repeat !important;
  filter: brightness(0.18) saturate(0.75) !important;
  transform: scale(1.03) !important;   /* slight oversize prevents edge gaps */
}

/* Dark gradient overlay on top of photo */
.v21-rs__bg::after {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    linear-gradient(180deg,
      #03080f              0%,
      rgba(3,8,15,0.0)    22%,
      rgba(3,8,15,0.0)    72%,
      #03080f             100%
    ),
    radial-gradient(ellipse 65% 50% at 50% 50%,
      rgba(212,175,55,0.06) 0%, transparent 70%
    ),
    linear-gradient(135deg, rgba(232,87,10,0.05) 0%, transparent 60%) !important;
  filter: none !important;
}

/* Make sure the inner content sits above both pseudo-layers */
.v21-rs__inner {
  position: relative !important;
  z-index: 2 !important;
}

/* ─────────────────────────────────────────────────────────────
   2.  ABOUT PAGE — "At a Glance" gradient text + section polish
   Colour combo: sky-blue (#38bdf8) + red/orange (#e8570a) + white
───────────────────────────────────────────────────────────── */

/* ── Section background — richer dark ── */
.v22-about__facts {
  background: linear-gradient(
    170deg,
    #03060f  0%,
    #050d1a 40%,
    #061224 70%,
    #03080f 100%
  ) !important;
}

/* ── "At a Glance" section label pill ── */
.v22-about__facts .section-label {
  background: linear-gradient(
    135deg,
    rgba(56,189,248,0.18) 0%,
    rgba(232,87,10,0.14)  100%
  ) !important;
  border-color: rgba(56,189,248,0.32) !important;
  color: #38bdf8 !important;
  -webkit-text-fill-color: #38bdf8 !important;
}

/* ── "Key Facts" section title ── */
.v22-about__facts .section-title {
  background: linear-gradient(
    125deg,
    #38bdf8  0%,
    #7dd3fc 20%,
    #ffffff 45%,
    #fde68a 65%,
    #e8570a 85%,
    #c8380a 100%
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  filter: drop-shadow(0 2px 12px rgba(56,189,248,0.18)) !important;
}

/* ── Gold divider — sky→red in facts ── */
.v22-about__facts .gold-divider {
  background: linear-gradient(
    90deg, transparent, #38bdf8 25%, #ffffff 50%, #e8570a 75%, transparent
  ) !important;
  height: 2px !important;
}

/* ── Fact tile — sky-blue tinted borders + gradient title ── */
.v22-fact-tile {
  background: linear-gradient(
    145deg,
    rgba(56,189,248,0.06) 0%,
    rgba(255,255,255,0.03) 50%,
    rgba(232,87,10,0.04) 100%
  ) !important;
  border-color: rgba(56,189,248,0.12) !important;
}

/* Shimmer line: sky→white→red */
.v22-fact-tile::before {
  background: linear-gradient(
    90deg,
    transparent,
    rgba(56,189,248,0.45) 25%,
    rgba(255,255,255,0.60) 50%,
    rgba(232,87,10,0.40) 75%,
    transparent
  ) !important;
}

.v22-fact-tile:hover {
  border-color: rgba(56,189,248,0.28) !important;
  box-shadow:
    inset 0 1px 0 rgba(56,189,248,0.12),
    0 16px 48px rgba(0,0,0,0.36),
    0 0 0 1px rgba(56,189,248,0.10),
    0 0 30px rgba(56,189,248,0.07) !important;
}

.v22-fact-tile:hover::before {
  background: linear-gradient(
    90deg,
    transparent,
    rgba(56,189,248,0.80) 20%,
    #ffffff 45%,
    rgba(232,87,10,0.70) 75%,
    transparent
  ) !important;
}

/* Tile title — sky→white→orange gradient */
.v22-fact-tile__title {
  background: linear-gradient(
    125deg,
    #38bdf8  0%,
    #7dd3fc 28%,
    #ffffff 55%,
    #fde68a 78%,
    #e8570a 100%
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  font-size: 0.92rem !important;
  font-weight: 700 !important;
}

/* Tile body text — lighter for readability */
.v22-fact-tile__text {
  color: rgba(255,255,255,0.65) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.65) !important;
  font-size: 0.80rem !important;
  line-height: 1.78 !important;
}

/* Icon hover — sky glow */
.v22-fact-tile:hover .v22-fact-tile__icon {
  filter: drop-shadow(0 3px 10px rgba(56,189,248,0.40)) !important;
  transform: scale(1.18) rotate(-5deg) !important;
}

/* ─────────────────────────────────────────────────────────────
   3.  SKY-BLUE + RED + WHITE GRADIENT THROUGHOUT ABOUT PAGE
───────────────────────────────────────────────────────────── */

/* ── PAGE HERO title — sky→white→gold ── */
.page-hero-title {
  background: linear-gradient(
    130deg,
    #38bdf8  0%,
    #7dd3fc 18%,
    #ffffff 40%,
    #fde68a 65%,
    #f5d97a 80%,
    #e8570a 100%
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  filter: drop-shadow(0 3px 14px rgba(56,189,248,0.22)) !important;
}

/* ── STORY section title — navy gradient same as before, but add sky tint ── */
.v22-about__story-title {
  background: linear-gradient(
    130deg,
    #0C2040  0%,
    #1565A8 40%,
    #38bdf8  70%,
    #0C2040 100%
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

/* Story section label */
.v22-about__story-content .section-label {
  background: rgba(232,87,10,0.10) !important;
  border-color: rgba(232,87,10,0.20) !important;
  color: #e8570a !important;
  -webkit-text-fill-color: #e8570a !important;
}

/* Story gold divider — sky→red */
.v22-about__story .gold-divider {
  background: linear-gradient(
    90deg, transparent, #38bdf8 25%, #e8c14a 55%, #e8570a 80%, transparent
  ) !important;
  height: 2px !important;
  width: 80px !important;
  margin: 1rem 0 1.5rem !important;
}

/* Floating badge — sky-tinted gradient */
.v22-about__story-badge {
  background: linear-gradient(
    135deg,
    #0C2040 0%,
    #0a2850 40%,
    #0e3870 100%
  ) !important;
  border-color: rgba(56,189,248,0.28) !important;
  box-shadow:
    0 8px 32px rgba(12,32,64,0.35),
    0 0 0 4px rgba(56,189,248,0.10),
    0 0 20px rgba(56,189,248,0.08) !important;
}

.v22-about__story-badge-num {
  background: linear-gradient(135deg, #38bdf8, #ffffff, #e8570a) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

/* ── WHY section title — sky→white→red ── */
.v22-about__why .section-title {
  background: linear-gradient(
    130deg,
    #0C2040  0%,
    #1565A8 30%,
    #38bdf8  55%,
    #0C2040 100%
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

.v22-about__why .section-label {
  background: rgba(56,189,248,0.10) !important;
  border-color: rgba(56,189,248,0.22) !important;
  color: #38bdf8 !important;
  -webkit-text-fill-color: #38bdf8 !important;
}

/* Why divider — sky→red */
.v22-about__why .gold-divider {
  background: linear-gradient(
    90deg, transparent, #38bdf8 25%, #ffffff 50%, #e8570a 80%, transparent
  ) !important;
  height: 2px !important;
}

/* Why card title — navy→sky */
.v22-why-card__title {
  background: linear-gradient(
    130deg,
    #0C2040  0%,
    #1565A8 45%,
    #38bdf8  85%,
    #0C2040 100%
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

/* Why card left border — sky→red on hover */
.v22-why-card::after {
  background: linear-gradient(180deg, #38bdf8, #ffffff 50%, #e8570a) !important;
}

/* Why card icon wrap — sky tinted */
.v22-why-card__icon-wrap {
  background: linear-gradient(
    135deg,
    rgba(56,189,248,0.14) 0%,
    rgba(232,87,10,0.10)  100%
  ) !important;
  border-color: rgba(56,189,248,0.22) !important;
}

/* ── REVIEWS section title ── */
.v22-about__reviews .section-title {
  background: linear-gradient(
    125deg,
    #38bdf8  0%,
    #7dd3fc 22%,
    #ffffff 48%,
    #fde68a 70%,
    #e8570a 100%
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

.v22-about__reviews .section-label {
  background: linear-gradient(
    135deg,
    rgba(56,189,248,0.16) 0%,
    rgba(232,87,10,0.12)  100%
  ) !important;
  border-color: rgba(56,189,248,0.28) !important;
  color: #7dd3fc !important;
  -webkit-text-fill-color: #7dd3fc !important;
}

/* Reviews divider */
.v22-about__reviews .gold-divider {
  background: linear-gradient(
    90deg, transparent, #38bdf8 25%, #ffffff 50%, #e8570a 80%, transparent
  ) !important;
  height: 2px !important;
}

/* Review card shimmer — sky→red */
.v22-review-card::before {
  background: linear-gradient(
    90deg, transparent,
    rgba(56,189,248,0.45) 25%,
    rgba(255,255,255,0.55) 50%,
    rgba(232,87,10,0.40) 75%,
    transparent
  ) !important;
}

.v22-review-card:hover::before {
  background: linear-gradient(
    90deg, transparent,
    rgba(56,189,248,0.80) 20%,
    #ffffff 45%,
    rgba(232,87,10,0.70) 75%,
    transparent
  ) !important;
}

.v22-review-card:hover {
  border-color: rgba(56,189,248,0.22) !important;
  box-shadow:
    inset 0 1px 0 rgba(56,189,248,0.10),
    0 18px 52px rgba(0,0,0,0.38),
    0 0 0 1px rgba(56,189,248,0.10),
    0 0 30px rgba(56,189,248,0.06) !important;
}

/* Quote mark — sky gradient */
.v22-review-card__quote {
  background: linear-gradient(
    135deg,
    rgba(56,189,248,0.70) 0%,
    rgba(232,87,10,0.50) 100%
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

/* Stars — keep gold */
.v22-review-card__stars {
  background: linear-gradient(135deg, #f5d97a, #e8570a) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

/* Review name — sky gradient */
.v22-review-card__name {
  background: linear-gradient(135deg, #38bdf8, #7dd3fc) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

/* ── CTA section ── */
.v22-about__cta .section-title {
  background: linear-gradient(
    125deg,
    #38bdf8  0%,
    #7dd3fc 22%,
    #ffffff 50%,
    #fde68a 72%,
    #e8570a 100%
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

.v22-about__cta .section-label {
  background: rgba(56,189,248,0.12) !important;
  border-color: rgba(56,189,248,0.28) !important;
  color: #38bdf8 !important;
  -webkit-text-fill-color: #38bdf8 !important;
}

.v22-about__cta .gold-divider {
  background: linear-gradient(
    90deg, transparent, #38bdf8 25%, #ffffff 50%, #e8570a 80%, transparent
  ) !important;
  height: 2px !important;
}

/* ─────────────────────────────────────────────────────────────
   4.  PREMIUM HOVER EFFECTS THROUGHOUT ABOUT PAGE
───────────────────────────────────────────────────────────── */

/* ── Story image — sky glow on hover ── */
.v22-about__story-img-wrap:hover::before {
  border-color: rgba(56,189,248,0.45) !important;
  box-shadow: 0 0 0 4px rgba(56,189,248,0.06) !important;
}

.v22-about__story-img-wrap img {
  transition: transform 0.55s cubic-bezier(.25,.46,.45,.94),
              filter 0.55s ease !important;
}

.v22-about__story-img-wrap:hover img {
  transform: scale(1.025) !important;
  filter: brightness(1.04) saturate(1.08) !important;
}

/* ── Fact tiles — deeper 3D lift ── */
.v22-fact-tile {
  transition:
    transform    0.32s cubic-bezier(.25,.46,.45,.94),
    border-color 0.32s,
    box-shadow   0.32s,
    background   0.32s !important;
}

.v22-fact-tile:hover {
  transform: translateY(-7px) scale(1.01) !important;
}

.v22-fact-tile:hover .v22-fact-tile__text {
  color: rgba(255,255,255,0.80) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.80) !important;
}

/* ── Why cards — smooth slide + left border glow ── */
.v22-why-card {
  transition:
    transform    0.30s cubic-bezier(.25,.46,.45,.94),
    border-color 0.30s,
    box-shadow   0.30s,
    background   0.30s !important;
  cursor: default !important;
}

.v22-why-card:hover {
  transform: translateX(8px) !important;
  border-color: rgba(56,189,248,0.25) !important;
  box-shadow:
    0 8px 36px rgba(14,26,42,0.12),
    -4px 0 0 rgba(56,189,248,0.22) !important;
}

/* Icon wrap in why card — sky glow on hover */
.v22-why-card:hover .v22-why-card__icon-wrap {
  background: linear-gradient(
    135deg,
    rgba(56,189,248,0.22) 0%,
    rgba(232,87,10,0.16) 100%
  ) !important;
  border-color: rgba(56,189,248,0.36) !important;
  box-shadow: 0 0 16px rgba(56,189,248,0.18) !important;
}

/* Why card text — brighter on hover */
.v22-why-card:hover .v22-why-card__text {
  color: rgba(14,26,42,0.78) !important;
  -webkit-text-fill-color: rgba(14,26,42,0.78) !important;
}

/* ── Review cards — sky glow lift ── */
.v22-review-card {
  transition:
    transform    0.32s cubic-bezier(.25,.46,.45,.94),
    border-color 0.32s,
    box-shadow   0.32s !important;
  cursor: default !important;
}

.v22-review-card:hover {
  transform: translateY(-7px) !important;
}

/* Avatar ring glow on hover */
.v22-review-card:hover .v22-review-card__avatar {
  box-shadow: 0 0 0 3px rgba(56,189,248,0.28), 0 0 12px rgba(56,189,248,0.20) !important;
  transform: scale(1.06) !important;
  transition: box-shadow 0.28s, transform 0.28s !important;
}

/* Review text brightens */
.v22-review-card:hover .v22-review-card__text {
  color: rgba(255,255,255,0.88) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.88) !important;
}

/* ── Page hero badge ── */
.v22-about__story-badge {
  transition: transform 0.30s cubic-bezier(.34,1.3,.64,1),
              box-shadow 0.30s !important;
}

.v22-about__story-img-wrap:hover .v22-about__story-badge {
  transform: translateY(-4px) scale(1.04) !important;
  box-shadow:
    0 12px 40px rgba(12,32,64,0.40),
    0 0 0 4px rgba(56,189,248,0.16),
    0 0 24px rgba(56,189,248,0.12) !important;
}

/* ── CTA buttons — sky glow on secondary ── */
.v22-about__cta .btn--secondary {
  transition: transform 0.22s cubic-bezier(.34,1.3,.64,1),
              box-shadow 0.22s,
              border-color 0.22s,
              color 0.22s !important;
}

.v22-about__cta .btn--secondary:hover {
  border-color: rgba(56,189,248,0.55) !important;
  box-shadow: 0 0 0 3px rgba(56,189,248,0.14), 0 6px 20px rgba(56,189,248,0.16) !important;
  color: #38bdf8 !important;
  -webkit-text-fill-color: #38bdf8 !important;
}

/* ── Section label hover — sky pulse ── */
.v22-about__facts .section-label:hover,
.v22-about__why .section-label:hover,
.v22-about__reviews .section-label:hover,
.v22-about__cta .section-label:hover {
  box-shadow: 0 0 0 3px rgba(56,189,248,0.16), 0 4px 14px rgba(56,189,248,0.14) !important;
  background: rgba(56,189,248,0.18) !important;
}

/* ── Why section ghost watermark — richer sky tint ── */
.v22-about__why::before {
  color: rgba(56,189,248,0.04) !important;
}

/* ─────────────────────────────────────────────────────────────
   5.  RESPONSIVE HELPERS
───────────────────────────────────────────────────────────── */

@media (max-width: 640px) {
  .v22-fact-tile:hover {
    transform: translateY(-4px) !important;
  }
  .v22-why-card:hover {
    transform: translateX(4px) !important;
  }
  .v22-review-card:hover {
    transform: translateY(-4px) !important;
  }
}

/* ── design-v2_4.css (8,178b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v2.4
   ──────────────────────────────────────────────────────────────
   1. Reserve section — definitive mountain photo BG (v2.0 style)
      transparent glass cards, no white bleed
   2. "At a Glance" fact tile paragraph text — gradient/visible
   3. Guest Reviews paragraph text — gradient/visible
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   1. RESERVE SECTION — Mountain photo background, definitive fix
   Use background-image on the section itself (most reliable),
   with all cards truly transparent/glass on top.
───────────────────────────────────────────────────────────── */

.v21-reserve-section {
  /* Mountain photo direct on section — same as v1.7/v2.0 */
  background:
    linear-gradient(180deg,
      #03080f             0%,
      rgba(3,8,15,0.08)  20%,
      rgba(3,8,15,0.08)  78%,
      #03080f            100%
    ),
    url('https://images.unsplash.com/photo-1506905925346-21bda4d32df4?w=1920&h=900&fit=crop&auto=format&q=80')
    center / cover no-repeat !important;
  /* Dim the photo via a filter wrapper trick — we set the BG
     then overlay our content. Because we can't filter just the
     background, we use the ::before on the SECTION instead. */
  background-color: #03080f !important;
  position: relative !important;
  overflow: hidden !important;
}

/* Proper dimming layer — section::before sits between BG and content */
.v21-reserve-section::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  /* Dark semi-transparent overlay dims the photo to ~18% brightness feel */
  background:
    rgba(3, 8, 15, 0.82) !important;   /* 82% dark overlay = ~18% photo visible */
  z-index: 0 !important;
  pointer-events: none !important;
}

/* Atmospheric gold/orange glow on top of overlay */
.v21-reserve-section::after {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    radial-gradient(ellipse 65% 50% at 50% 50%, rgba(212,175,55,0.05) 0%, transparent 70%),
    linear-gradient(135deg, rgba(232,87,10,0.04) 0%, transparent 60%) !important;
  z-index: 0 !important;
  pointer-events: none !important;
}

/* The old .v21-rs__bg div — hide it, no longer needed
   (section background now handles everything) */
.v21-rs__bg,
.v21-rs__bg::before,
.v21-rs__bg::after {
  display: none !important;
}

/* Inner content above pseudo-layers */
.v21-rs__inner {
  position: relative !important;
  z-index: 2 !important;
}

/* Cards remain transparent glass — unchanged from v2.1 design */
.v21-rs__card {
  background: rgba(255,255,255,0.042) !important;
  backdrop-filter: blur(18px) !important;
  -webkit-backdrop-filter: blur(18px) !important;
}

.v21-rs__card--book {
  background: linear-gradient(
    155deg,
    rgba(212,175,55,0.10) 0%,
    rgba(255,255,255,0.05) 40%,
    rgba(232,87,10,0.07) 100%
  ) !important;
}

/* ─────────────────────────────────────────────────────────────
   2. "AT A GLANCE" FACT TILE — paragraph text visible + gradient
   Problem: rgba(255,255,255,0.55) too faint on dark bg.
   Fix: gradient text sky-blue→white, clear and legible.
───────────────────────────────────────────────────────────── */

.v22-fact-tile__text {
  /* Sky-blue → soft white gradient — readable on dark backgrounds */
  background: linear-gradient(
    135deg,
    #7dd3fc  0%,   /* pale sky-blue */
    #bae6fd 30%,   /* lighter sky */
    #e0f2fe 60%,   /* near-white sky */
    #f0f9ff 100%   /* almost white */
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  font-size: 0.82rem !important;
  line-height: 1.80 !important;
  margin: 0 !important;
  /* Fallback for browsers that don't support bg-clip */
  color: #bae6fd !important;
}

/* On hover — even brighter */
.v22-fact-tile:hover .v22-fact-tile__text {
  background: linear-gradient(
    135deg,
    #38bdf8  0%,   /* sky-blue */
    #7dd3fc 35%,
    #e0f2fe 70%,
    #ffffff 100%
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  color: #7dd3fc !important;
}

/* ─────────────────────────────────────────────────────────────
   3. GUEST REVIEWS — paragraph text visible + gradient
   Problem: text was same dark bg color = invisible.
   Fix: sky→pale-white gradient, fully legible.
───────────────────────────────────────────────────────────── */

.v22-review-card__text {
  background: linear-gradient(
    135deg,
    #bae6fd  0%,   /* pale sky-blue */
    #e0f2fe 35%,   /* lighter sky */
    #f0f9ff 65%,   /* near-white */
    #ffffff 100%   /* white */
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  font-size: 0.88rem !important;
  line-height: 1.88 !important;
  font-style: italic !important;
  margin: 0 0 1.5rem !important;
  /* Fallback */
  color: #bae6fd !important;
}

/* On hover — brighter */
.v22-review-card:hover .v22-review-card__text {
  background: linear-gradient(
    135deg,
    #7dd3fc  0%,
    #bae6fd 40%,
    #e0f2fe 75%,
    #ffffff 100%
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  color: #7dd3fc !important;
}

/* Review card role text — also make visible */
.v22-review-card__role {
  color: rgba(186,230,253,0.65) !important;
  -webkit-text-fill-color: rgba(186,230,253,0.65) !important;
}

/* Review author separator line — sky tint */
.v22-review-card__author {
  border-top-color: rgba(56,189,248,0.12) !important;
}

/* ─────────────────────────────────────────────────────────────
   4. BONUS: Story body text — ensure visible on cream BG
   (Not affected by gradient — keep dark for readability on light bg)
───────────────────────────────────────────────────────────── */

.v22-about__story-body p {
  color: rgba(14,26,42,0.68) !important;
  -webkit-text-fill-color: rgba(14,26,42,0.68) !important;
  background: none !important;
  -webkit-background-clip: unset !important;
  background-clip: unset !important;
}

/* Why card text — same, light bg needs dark text */
.v22-why-card__text {
  color: rgba(14,26,42,0.62) !important;
  -webkit-text-fill-color: rgba(14,26,42,0.62) !important;
  background: none !important;
  -webkit-background-clip: unset !important;
  background-clip: unset !important;
}

.v22-why-card:hover .v22-why-card__text {
  color: rgba(14,26,42,0.80) !important;
  -webkit-text-fill-color: rgba(14,26,42,0.80) !important;
}

/* ── design-v2_5.css (21,065b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v2.5
   ──────────────────────────────────────────────────────────────
   Brand palette:
     Sky-blue  #38bdf8 / #7dd3fc
     Red-Orange #e8570a / #B52A1F
     White      #ffffff
     Sunrise    #f5d97a / #e8c14a (gold-orange)
   ──────────────────────────────────────────────────────────────
   1. Reserve section — background-image DIRECTLY on the <section>
      element (most cross-browser reliable approach)
   2. Global brand colour upgrades across homepage & shared UI
   3. Booking search strip — reduced padding, improved BG, hover
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   1. RESERVE SECTION — DEFINITIVE PHOTO BG ON SECTION ELEMENT
   Approach: set the mountain photo directly on the <section>
   tag with a CSS multi-layer background (no child div needed).
   The dark color overlay sits as the first layer so it dims
   the photo without a filter stacking context issue.
───────────────────────────────────────────────────────────── */

.v21-reserve-section,
.v26-reserve-section.v21-reserve-section {
  /* Layer 1 (top): dark overlay dims the photo to ~18% */
  /* Layer 2 (bottom): actual mountain photo */
  background-image:
    linear-gradient(
      180deg,
      rgba(3,8,15,0.84)  0%,
      rgba(3,8,15,0.72) 15%,
      rgba(3,8,15,0.70) 50%,
      rgba(3,8,15,0.72) 85%,
      rgba(3,8,15,0.88) 100%
    ),
    url('https://images.unsplash.com/photo-1506905925346-21bda4d32df4?w=1920&h=900&fit=crop&auto=format&q=80') !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  background-color: #03080f !important;
  position: relative !important;
  overflow: hidden !important;
}

/* Gold + orange atmospheric glow over the photo */
.v21-reserve-section::before,
.v26-reserve-section.v21-reserve-section::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    radial-gradient(ellipse 60% 50% at 50% 50%, rgba(212,175,55,0.06) 0%, transparent 68%),
    radial-gradient(ellipse 40% 35% at 15% 80%, rgba(232,87,10,0.05) 0%, transparent 60%),
    radial-gradient(ellipse 35% 30% at 85% 20%, rgba(56,189,248,0.04) 0%, transparent 55%) !important;
  z-index: 0 !important;
  pointer-events: none !important;
}

/* Kill the v2.4 ::after that was an extra attempt */
.v21-reserve-section::after,
.v26-reserve-section.v21-reserve-section::after {
  display: none !important;
}

/* Hide the old BG div — section background handles everything */
.v21-rs__bg,
.v21-rs__bg::before,
.v21-rs__bg::after {
  display: none !important;
}

/* All inner content above pseudo-layers */
.v21-rs__inner {
  position: relative !important;
  z-index: 2 !important;
}

/* Glass cards stay transparent */
.v21-rs__card {
  background: rgba(255,255,255,0.048) !important;
  backdrop-filter: blur(18px) !important;
  -webkit-backdrop-filter: blur(18px) !important;
}

.v21-rs__card--book {
  background: linear-gradient(
    155deg,
    rgba(212,175,55,0.10) 0%,
    rgba(255,255,255,0.05) 42%,
    rgba(232,87,10,0.07) 100%
  ) !important;
}

.v21-rs__card--why {
  background: rgba(255,255,255,0.038) !important;
}

.v21-rs__card--find {
  background: rgba(255,255,255,0.038) !important;
}

/* ─────────────────────────────────────────────────────────────
   2. GLOBAL BRAND COLOUR UPGRADES
   Sky-blue + Red/Orange + White + Sunrise-Gold
   Applied across: nav, buttons, section labels, dividers,
   stats, amenity names, testimonials, footer, wow section,
   scroll progress, room cards, about section
───────────────────────────────────────────────────────────── */

/* ── Scroll progress bar — sunrise gradient ── */
.scroll-progress-bar {
  background: linear-gradient(
    90deg,
    #38bdf8 0%,
    #7dd3fc 20%,
    #ffffff 45%,
    #f5d97a 65%,
    #e8570a 85%,
    #B52A1F 100%
  ) !important;
  background-size: 200% 100% !important;
}

/* ── Section labels — sky tinted on LIGHT backgrounds ── */
.section--alt .section-label,
.section:not(.section--dark) .section-label,
.v22-about__why .section-label {
  background: linear-gradient(
    135deg,
    rgba(56,189,248,0.10) 0%,
    rgba(232,87,10,0.08) 100%
  ) !important;
  border-color: rgba(56,189,248,0.28) !important;
  color: #0369a1 !important;
  -webkit-text-fill-color: #0369a1 !important;
}

/* Section labels on DARK backgrounds */
.section--dark .section-label,
.v22-about__facts .section-label,
.v22-about__reviews .section-label,
.v22-about__cta .section-label,
.v19-why-section .section-label,
.v21-reserve-section .section-label {
  background: linear-gradient(
    135deg,
    rgba(56,189,248,0.16) 0%,
    rgba(232,87,10,0.12) 100%
  ) !important;
  border-color: rgba(56,189,248,0.32) !important;
  color: #7dd3fc !important;
  -webkit-text-fill-color: #7dd3fc !important;
}

/* ── Gold dividers — sunrise gradient ── */
.gold-divider {
  background: linear-gradient(
    90deg,
    transparent 0%,
    #38bdf8 18%,
    #f5d97a 45%,
    #e8570a 72%,
    transparent 100%
  ) !important;
  height: 2px !important;
}

/* ── Primary buttons — sunrise gradient ── */
.btn--primary {
  background: linear-gradient(
    135deg,
    #B52A1F 0%,
    #e8570a 40%,
    #f0a830 65%,
    #e8570a 100%
  ) !important;
  background-size: 200% 100% !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border-color: transparent !important;
  box-shadow: 0 4px 16px rgba(232,87,10,0.36) !important;
  transition:
    transform 0.22s cubic-bezier(.34,1.3,.64,1),
    box-shadow 0.22s,
    background-position 0.4s !important;
}

.btn--primary:hover {
  background-position: 100% 0 !important;
  transform: translateY(-2px) scale(1.02) !important;
  box-shadow: 0 8px 28px rgba(232,87,10,0.52) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

/* ── Secondary buttons — navy→sky gradient ── */
.btn--secondary {
  background: linear-gradient(
    135deg,
    #0C2040 0%,
    #1565A8 55%,
    #38bdf8 100%
  ) !important;
  background-size: 200% 100% !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border-color: transparent !important;
  box-shadow: 0 4px 14px rgba(12,32,64,0.30) !important;
  transition:
    transform 0.22s cubic-bezier(.34,1.3,.64,1),
    box-shadow 0.22s,
    background-position 0.4s !important;
}

.btn--secondary:hover {
  background-position: 100% 0 !important;
  transform: translateY(-2px) scale(1.02) !important;
  box-shadow:
    0 8px 24px rgba(56,189,248,0.28),
    0 0 0 2px rgba(56,189,248,0.18) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

/* ── Outline buttons — sky border + hover fill ── */
.btn--outline {
  background: transparent !important;
  border-color: rgba(56,189,248,0.55) !important;
  color: #38bdf8 !important;
  -webkit-text-fill-color: #38bdf8 !important;
  transition: background 0.25s, transform 0.22s, box-shadow 0.22s, border-color 0.25s !important;
}

.btn--outline:hover {
  background: linear-gradient(135deg, #0C2040, #1565A8, #38bdf8) !important;
  border-color: transparent !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 20px rgba(56,189,248,0.22) !important;
}

/* ── Header Book Now button — sunrise gradient ── */
.header-book-btn {
  background: linear-gradient(
    135deg,
    #e8570a 0%,
    #f0a830 50%,
    #e8570a 100%
  ) !important;
  background-size: 200% 100% !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  box-shadow: 0 3px 12px rgba(232,87,10,0.32) !important;
  transition:
    transform 0.22s cubic-bezier(.34,1.3,.64,1),
    box-shadow 0.22s,
    background-position 0.35s !important;
  border-radius: 100px !important;
}

.header-book-btn:hover {
  background-position: 100% 0 !important;
  transform: translateY(-1px) scale(1.02) !important;
  box-shadow: 0 6px 20px rgba(232,87,10,0.48) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

/* ── Stat numbers — sky→sunrise gradient ── */
.stat-number {
  background: linear-gradient(
    135deg,
    #38bdf8  0%,
    #7dd3fc 25%,
    #f5d97a 55%,
    #e8570a 80%,
    #B52A1F 100%
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  color: #38bdf8 !important;
}

.stat-number span {
  background: inherit !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

/* Stat items hover */
.stat-item {
  transition: transform 0.28s ease, box-shadow 0.28s !important;
}

.stat-item:hover {
  transform: translateY(-5px) !important;
  box-shadow: 0 12px 36px rgba(56,189,248,0.10), 0 4px 12px rgba(14,26,42,0.06) !important;
}

.stat-item:hover .stat-number {
  filter: drop-shadow(0 2px 8px rgba(56,189,248,0.22)) !important;
}

/* Stat top border — sky→red */
.stat-item::before {
  background: linear-gradient(90deg, #38bdf8, #f5d97a, #e8570a) !important;
}

/* ── Amenity cards ── */
.amenity-name {
  background: linear-gradient(
    135deg,
    #0C2040 0%,
    #1565A8 50%,
    #38bdf8 100%
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

.amenity-card {
  transition: transform 0.28s ease, box-shadow 0.28s, border-color 0.28s !important;
}

.amenity-card:hover {
  transform: translateY(-5px) !important;
  border-color: rgba(56,189,248,0.28) !important;
  box-shadow: 0 10px 32px rgba(56,189,248,0.08), 0 3px 10px rgba(14,26,42,0.06) !important;
}

.amenity-card::after {
  background: linear-gradient(90deg, transparent, rgba(56,189,248,0.35) 35%, rgba(232,87,10,0.28) 65%, transparent) !important;
}

/* ── Section titles — homepage light sections ── */
.section-title {
  /* Keep readable dark for light backgrounds by default */
  /* Only apply gradient where explicitly needed */
}

/* Wow section — full gradient */
.wow-title {
  background: linear-gradient(
    125deg,
    #38bdf8  0%,
    #7dd3fc 18%,
    #ffffff 42%,
    #f5d97a 62%,
    #e8570a 82%,
    #B52A1F 100%
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  filter: drop-shadow(0 3px 12px rgba(56,189,248,0.18)) !important;
}

/* Wow button */
.wow-btn {
  background: linear-gradient(
    135deg,
    #B52A1F 0%,
    #e8570a 40%,
    #f0a830 65%,
    #e8570a 100%
  ) !important;
  background-size: 200% 100% !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border-color: transparent !important;
  box-shadow: 0 5px 20px rgba(232,87,10,0.38) !important;
  transition:
    transform 0.25s cubic-bezier(.34,1.3,.64,1),
    box-shadow 0.25s,
    background-position 0.4s !important;
}

.wow-btn:hover {
  background-position: 100% 0 !important;
  transform: translateY(-3px) scale(1.02) !important;
  box-shadow: 0 10px 32px rgba(232,87,10,0.52) !important;
}

/* ── Footer links ── */
.footer-social a {
  transition: transform 0.22s cubic-bezier(.34,1.3,.64,1),
              color 0.22s,
              box-shadow 0.22s !important;
}

.footer-social a:hover {
  transform: translateY(-4px) scale(1.12) !important;
  color: #38bdf8 !important;
  -webkit-text-fill-color: #38bdf8 !important;
  box-shadow: 0 4px 16px rgba(56,189,248,0.22) !important;
}

.footer-menu a:hover {
  color: #38bdf8 !important;
  -webkit-text-fill-color: #38bdf8 !important;
}

.footer-menu a::before {
  background: linear-gradient(90deg, #38bdf8, #e8570a) !important;
}

/* ── Testimonial cards ── */
.testimonial-card {
  transition: transform 0.30s ease, box-shadow 0.30s, border-color 0.30s !important;
}

.testimonial-card:hover {
  transform: translateY(-5px) !important;
  box-shadow: 0 12px 40px rgba(56,189,248,0.08), 0 4px 14px rgba(14,26,42,0.06) !important;
  border-color: rgba(56,189,248,0.20) !important;
}

/* ── Room cards hover ── */
[class*="room-card"]:hover,
.room-card:hover {
  box-shadow:
    0 14px 44px rgba(56,189,248,0.10),
    0 4px 14px rgba(14,26,42,0.08) !important;
  border-color: rgba(56,189,248,0.18) !important;
}

/* ── Gallery hover ── */
.gallery-item:hover img {
  transform: scale(1.06) !important;
  filter: brightness(1.04) saturate(1.06) !important;
}

/* ── About snippet (homepage) ── */
.about-snippet__image img:hover {
  transform: scale(1.016) !important;
  filter: brightness(1.04) saturate(1.06) !important;
}

/* ─────────────────────────────────────────────────────────────
   3. BOOKING SEARCH STRIP — improved padding, BG, hover effects
   The booking-widget-section / booking-widget-wrap that appears
   below the hero (if it exists) gets upgraded styling.
───────────────────────────────────────────────────────────── */

.booking-widget-section {
  position: relative !important;
  background:
    linear-gradient(
      180deg,
      rgba(3,8,15,0.92) 0%,
      rgba(3,8,15,0.82) 100%
    ),
    url('https://images.unsplash.com/photo-1582719478250-c89cae4dc85b?w=1920&h=400&fit=crop&auto=format&q=75')
    center 40% / cover no-repeat !important;
  padding: 1.75rem 0 !important;   /* reduced from whatever base was */
  border-top: 1px solid rgba(212,175,55,0.14) !important;
  border-bottom: 1px solid rgba(212,175,55,0.10) !important;
}

.booking-widget-section::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    radial-gradient(ellipse 70% 100% at 50% 50%, rgba(56,189,248,0.04) 0%, transparent 65%),
    radial-gradient(ellipse 40% 100% at 0% 50%, rgba(232,87,10,0.04) 0%, transparent 55%),
    radial-gradient(ellipse 40% 100% at 100% 50%, rgba(212,175,55,0.04) 0%, transparent 55%) !important;
  pointer-events: none !important;
  z-index: 0 !important;
}

.booking-widget-wrap {
  position: relative !important;
  z-index: 1 !important;
  background: rgba(255,255,255,0.048) !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
  border: 1px solid rgba(255,255,255,0.10) !important;
  border-radius: 16px !important;
  padding: 1.5rem 2rem !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.07), 0 4px 20px rgba(0,0,0,0.25) !important;
  transition: border-color 0.30s, box-shadow 0.30s !important;
}

.booking-widget-wrap::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important; left: 0 !important; right: 0 !important;
  height: 1.5px !important;
  border-radius: 16px 16px 0 0 !important;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(56,189,248,0.50) 25%,
    rgba(255,255,255,0.65) 50%,
    rgba(232,87,10,0.45) 75%,
    transparent
  ) !important;
}

.booking-widget-wrap:hover {
  border-color: rgba(56,189,248,0.24) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.10),
    0 8px 32px rgba(0,0,0,0.32),
    0 0 0 1px rgba(56,189,248,0.10) !important;
}

.booking-widget-title {
  background: linear-gradient(
    135deg,
    #38bdf8 0%,
    #ffffff 45%,
    #f5d97a 75%,
    #e8570a 100%
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  font-size: 1.15rem !important;
  margin-bottom: 1.25rem !important;
}

/* Booking form inputs */
.booking-widget-wrap input[type="text"],
.booking-widget-wrap input[type="date"],
.booking-widget-wrap input[type="number"],
.booking-widget-wrap select {
  background: rgba(255,255,255,0.07) !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
  border-radius: 10px !important;
  color: rgba(255,255,255,0.88) !important;
  padding: 0.62rem 1rem !important;   /* reduced padding */
  font-size: 0.84rem !important;
  transition: border-color 0.22s, box-shadow 0.22s !important;
  outline: none !important;
}

.booking-widget-wrap input:focus,
.booking-widget-wrap select:focus {
  border-color: rgba(56,189,248,0.50) !important;
  box-shadow: 0 0 0 3px rgba(56,189,248,0.12) !important;
}

.booking-widget-wrap input::placeholder {
  color: rgba(255,255,255,0.35) !important;
}

/* Booking form submit / search button */
.booking-widget-wrap button[type="submit"],
.booking-widget-wrap input[type="submit"],
.booking-widget-wrap .search-btn,
.booking-widget-wrap .check-btn {
  background: linear-gradient(
    135deg,
    #B52A1F 0%,
    #e8570a 42%,
    #f0a830 65%,
    #e8570a 100%
  ) !important;
  background-size: 200% 100% !important;
  color: #fff !important;
  border: none !important;
  border-radius: 10px !important;
  padding: 0.68rem 1.5rem !important;  /* reduced */
  font-size: 0.80rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  box-shadow: 0 3px 14px rgba(232,87,10,0.40) !important;
  transition:
    transform 0.22s cubic-bezier(.34,1.3,.64,1),
    box-shadow 0.22s,
    background-position 0.4s !important;
}

.booking-widget-wrap button[type="submit"]:hover,
.booking-widget-wrap input[type="submit"]:hover,
.booking-widget-wrap .search-btn:hover,
.booking-widget-wrap .check-btn:hover {
  background-position: 100% 0 !important;
  transform: translateY(-2px) scale(1.02) !important;
  box-shadow: 0 7px 22px rgba(232,87,10,0.56) !important;
}

/* ─────────────────────────────────────────────────────────────
   4. RESERVE SECTION — additional card hover refinements
   with new brand colours
───────────────────────────────────────────────────────────── */

/* Why Book Direct card hover — sky shimmer */
.v21-rs__card--why:hover {
  border-color: rgba(56,189,248,0.24) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.10),
    0 14px 48px rgba(0,0,0,0.40),
    0 0 0 1px rgba(56,189,248,0.10),
    0 0 28px rgba(56,189,248,0.06) !important;
}

/* Check Availability hover — sunrise shimmer */
.v21-rs__card--book:hover {
  border-color: rgba(212,175,55,0.45) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.14),
    0 16px 56px rgba(0,0,0,0.46),
    0 0 0 1px rgba(212,175,55,0.16),
    0 0 40px rgba(212,175,55,0.08) !important;
}

/* Find Booking hover — sky shimmer */
.v21-rs__card--find:hover {
  border-color: rgba(56,189,248,0.24) !important;
  box-shadow:
    inset 0 1px 0 rgba(56,189,248,0.08),
    0 14px 48px rgba(0,0,0,0.40),
    0 0 0 1px rgba(56,189,248,0.08) !important;
}

/* Perk checkmarks — sky */
.v21-rs__perk svg {
  color: #38bdf8 !important;
}

/* Trust bar icons — sky */
.v21-rs__trust-item svg {
  color: rgba(56,189,248,0.70) !important;
}

/* ─────────────────────────────────────────────────────────────
   5. RESPONSIVE
───────────────────────────────────────────────────────────── */

@media (max-width: 768px) {
  .booking-widget-section {
    padding: 1.25rem 0 !important;
  }
  .booking-widget-wrap {
    padding: 1.25rem 1.25rem !important;
  }
}

/* ── design-v2_6.css (4,822b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v2.6
   ──────────────────────────────────────────────────────────────
   ROOT CAUSE FIX: .v8-hero is position:fixed; z-index:1.
   All page sections get position:relative; z-index:10 (from
   design-v8.css). They render ON TOP of hero but only if they
   have an OPAQUE background. Previous approach used background-
   image + gradient which some browsers don't treat as fully
   opaque when the fixed element is behind.

   SOLUTION:
   1. Section gets solid background-color: #03080f (opaque black)
      — this FULLY blocks the fixed hero underneath.
   2. .v21-rs__bg div (position:absolute, inset:0) sits inside
      the section and contains three children:
        .v21-rs__photo  — the mountain photo (background-image)
        .v21-rs__overlay — dark semi-transparent overlay
        .v21-rs__glow    — gold/sky/orange atmosphere
   3. All child divs are position:absolute, z-index layered,
      and don't interfere with the section's opaque background.
   ══════════════════════════════════════════════════════════════ */

/* ── SECTION — solid opaque background blocks the fixed hero ── */
.v21-reserve-section,
.v26-reserve-section.v21-reserve-section {
  /* Solid opaque color — this is the KEY that blocks the fixed hero */
  background-color: #03080f !important;
  /* NO background-image here — handled by child div */
  background-image: none !important;
  position: relative !important;
  z-index: 10 !important;           /* same as other sections */
  overflow: hidden !important;
  isolation: isolate !important;    /* extra stacking context safety */
}

/* Remove the pseudo-elements from v2.5 that were conflicting */
.v21-reserve-section::before,
.v21-reserve-section::after,
.v26-reserve-section.v21-reserve-section::before,
.v26-reserve-section.v21-reserve-section::after {
  display: none !important;
}

/* ── BG wrapper div — covers the section ── */
.v21-rs__bg {
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  overflow: hidden !important;
  display: block !important;        /* was being set to none — override */
}

/* ── PHOTO layer — mountain image, dimmed ── */
.v21-rs__photo {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  background-image:
    url('https://images.unsplash.com/photo-1506905925346-21bda4d32df4?w=1920&h=900&fit=crop&auto=format&q=80') !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  /* Dim to ~18% brightness using opacity — no filter stacking context */
  opacity: 0.18 !important;
  transform: scale(1.04) !important;  /* slight oversize prevents gaps */
}

/* ── OVERLAY layer — dark gradient vignette ── */
.v21-rs__overlay {
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;
  background: linear-gradient(
    180deg,
    rgba(3,8,15,0.55)  0%,
    rgba(3,8,15,0.10) 25%,
    rgba(3,8,15,0.10) 75%,
    rgba(3,8,15,0.65) 100%
  ) !important;
}

/* ── GLOW layer — atmospheric gold/sky/orange ── */
.v21-rs__glow {
  position: absolute !important;
  inset: 0 !important;
  z-index: 3 !important;
  background:
    radial-gradient(ellipse 65% 55% at 50% 50%,  rgba(212,175,55,0.06)  0%, transparent 68%),
    radial-gradient(ellipse 40% 40% at 15% 80%,  rgba(232,87,10,0.05)   0%, transparent 58%),
    radial-gradient(ellipse 35% 35% at 85% 20%,  rgba(56,189,248,0.04)  0%, transparent 55%) !important;
  pointer-events: none !important;
}

/* ── Inner content — highest z-index ── */
.v21-rs__inner {
  position: relative !important;
  z-index: 10 !important;
}

/* ── Cards — transparent glass on the photo ── */
.v21-rs__card {
  background: rgba(255,255,255,0.052) !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
  border-color: rgba(255,255,255,0.11) !important;
}

.v21-rs__card--why {
  background: rgba(255,255,255,0.042) !important;
}

.v21-rs__card--book {
  background: linear-gradient(
    155deg,
    rgba(212,175,55,0.11) 0%,
    rgba(255,255,255,0.05) 42%,
    rgba(232,87,10,0.08) 100%
  ) !important;
  border-color: rgba(212,175,55,0.20) !important;
}

.v21-rs__card--find {
  background: rgba(255,255,255,0.042) !important;
}

/* ── design-v2_7.css (29,877b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v2.7
   ──────────────────────────────────────────────────────────────
   Brand Palette:
     Sky-blue  : #38bdf8  /  #7dd3fc  /  #0ea5e9
     Red-Orange: #e8570a  /  #B52A1F
     Sunrise   : #f5d97a  /  #e8c14a  /  #f0a830
     White     : #ffffff  /  #f0f9ff
   ──────────────────────────────────────────────────────────────
   Comprehensive upgrade of every major homepage & global element:
   hero, section titles, room cards, testimonials, amenities,
   awards bar, newsletter, final CTA, footer, WoW, stats,
   WhatsApp float, page headers — advanced gradient + shadow
   + hover effects throughout.
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   HERO SECTION
───────────────────────────────────────────────────────────── */

/* Hero title — sky→white→sunrise */
.hero-title {
  background: linear-gradient(
    125deg,
    #38bdf8  0%,
    #7dd3fc 18%,
    #ffffff 42%,
    #f5d97a 65%,
    #e8c14a 80%,
    #e8570a 100%
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  color: #fff !important;
  filter: drop-shadow(0 3px 16px rgba(56,189,248,0.20)) !important;
  text-shadow: none !important;
}

/* Hero italic em — sunrise only */
.hero-title em {
  background: linear-gradient(
    135deg,
    #f5d97a 0%,
    #e8c14a 35%,
    #e8570a 70%,
    #B52A1F 100%
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  filter: drop-shadow(0 2px 10px rgba(232,87,10,0.32)) !important;
}

/* Hero subtitle — sky-tinted white */
.hero-subtitle {
  color: rgba(255,255,255,0.82) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.82) !important;
  text-shadow: 0 1px 6px rgba(0,0,0,0.45) !important;
}

/* Hero scroll indicator */
[class*="hero-scroll"],
[class*="scroll-indicator"] {
  color: rgba(56,189,248,0.75) !important;
  -webkit-text-fill-color: rgba(56,189,248,0.75) !important;
  transition: color 0.22s, transform 0.22s !important;
}

[class*="hero-scroll"]:hover {
  color: #38bdf8 !important;
  -webkit-text-fill-color: #38bdf8 !important;
  transform: translateY(3px) !important;
}

/* ─────────────────────────────────────────────────────────────
   SECTION TITLES — homepage light sections
───────────────────────────────────────────────────────────── */

/* Section title on LIGHT bg — navy→blue→sky */
.section-title {
  background: linear-gradient(
    130deg,
    #0C2040  0%,
    #1565A8 45%,
    #0ea5e9  75%,
    #38bdf8 100%
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  color: #0C2040 !important;
}

/* Section title on DARK bg — sky→white→sunrise */
.section--dark .section-title,
.v22-about__facts .section-title,
.v22-about__reviews .section-title,
.v22-about__cta .section-title,
.v19-why-section .section-title,
.newsletter-section .section-title,
.wow-section .section-title,
.final-cta-section .section-title {
  background: linear-gradient(
    125deg,
    #38bdf8  0%,
    #7dd3fc 22%,
    #ffffff 48%,
    #f5d97a 70%,
    #e8570a 100%
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  color: #fff !important;
  filter: drop-shadow(0 2px 10px rgba(56,189,248,0.15)) !important;
}

/* Section subtitle — darker readable */
.section-subtitle {
  color: rgba(14,26,42,0.62) !important;
  -webkit-text-fill-color: rgba(14,26,42,0.62) !important;
}

.section--dark .section-subtitle,
.newsletter-section .section-subtitle {
  color: rgba(255,255,255,0.68) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.68) !important;
}

/* ─────────────────────────────────────────────────────────────
   ROOM CARDS — advanced hover + gradient details
───────────────────────────────────────────────────────────── */

.room-card {
  border-color: rgba(14,26,42,0.08) !important;
  transition:
    transform    0.35s cubic-bezier(.25,.46,.45,.94),
    box-shadow   0.35s ease,
    border-color 0.35s !important;
  overflow: hidden !important;
}

/* Top shimmer bar */
.room-card::after {
  content: '' !important;
  position: absolute !important;
  top: 0 !important; left: 0 !important; right: 0 !important;
  height: 2px !important;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(56,189,248,0.35) 25%,
    rgba(255,255,255,0.55) 50%,
    rgba(232,87,10,0.35) 75%,
    transparent
  ) !important;
  opacity: 0 !important;
  transition: opacity 0.35s !important;
}

.room-card:hover {
  transform: translateY(-8px) !important;
  box-shadow:
    0 20px 56px rgba(56,189,248,0.12),
    0 8px 20px rgba(14,26,42,0.10) !important;
  border-color: rgba(56,189,248,0.20) !important;
}

.room-card:hover::after {
  opacity: 1 !important;
}

/* Room image zoom */
.room-card__image img {
  transition: transform 0.55s cubic-bezier(.25,.46,.45,.94), filter 0.55s !important;
}

.room-card:hover .room-card__image img {
  transform: scale(1.07) !important;
  filter: brightness(1.06) saturate(1.08) !important;
}

/* Room badge — sky→red gradient */
.room-card__badge {
  background: linear-gradient(135deg, #B52A1F 0%, #e8570a 55%, #f0a830 100%) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  box-shadow: 0 3px 12px rgba(232,87,10,0.40) !important;
  transition: transform 0.25s cubic-bezier(.34,1.3,.64,1) !important;
}

.room-card:hover .room-card__badge {
  transform: scale(1.06) !important;
}

/* Room category label — sky gradient */
.room-card__category {
  background: linear-gradient(135deg, #0ea5e9, #38bdf8) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  color: #38bdf8 !important;
}

/* Room title — navy→sky on hover */
.room-card__title {
  background: linear-gradient(130deg, #0C2040 0%, #1565A8 60%, #0ea5e9 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  transition: filter 0.25s !important;
}

.room-card:hover .room-card__title {
  filter: drop-shadow(0 1px 6px rgba(56,189,248,0.18)) !important;
}

/* Room price — sunrise gradient */
.room-card__price-amount {
  background: linear-gradient(135deg, #e8570a 0%, #f0a830 55%, #f5d97a 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  font-weight: 800 !important;
}

/* Room amenity tags — sky tinted */
.room-amenity-tag {
  background: linear-gradient(
    135deg,
    rgba(56,189,248,0.10) 0%,
    rgba(232,87,10,0.07) 100%
  ) !important;
  border: 1px solid rgba(56,189,248,0.18) !important;
  color: #0C2040 !important;
  -webkit-text-fill-color: #0C2040 !important;
  transition: background 0.22s, border-color 0.22s, transform 0.22s !important;
}

.room-card:hover .room-amenity-tag {
  background: linear-gradient(
    135deg,
    rgba(56,189,248,0.16) 0%,
    rgba(232,87,10,0.11) 100%
  ) !important;
  border-color: rgba(56,189,248,0.28) !important;
}

/* ─────────────────────────────────────────────────────────────
   TESTIMONIALS — premium gradient cards
───────────────────────────────────────────────────────────── */

.testimonial-card {
  border-color: rgba(14,26,42,0.08) !important;
  position: relative !important;
  overflow: hidden !important;
  transition:
    transform    0.32s cubic-bezier(.25,.46,.45,.94),
    box-shadow   0.32s ease,
    border-color 0.32s !important;
}

/* Shimmer top line */
.testimonial-card::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important; left: 0 !important; right: 0 !important;
  height: 2px !important;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(56,189,248,0.40) 22%,
    rgba(255,255,255,0.65) 50%,
    rgba(232,87,10,0.38) 78%,
    transparent
  ) !important;
  border-radius: 4px 4px 0 0 !important;
  transition: background 0.35s !important;
}

/* Quote mark — sky gradient */
.testimonial-card__quote-mark,
.testimonial-card > p::before,
.testimonial-card [class*="quote"] {
  background: linear-gradient(135deg, rgba(56,189,248,0.55), rgba(232,87,10,0.38)) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

.testimonial-card:hover {
  transform: translateY(-6px) !important;
  box-shadow:
    0 16px 48px rgba(56,189,248,0.10),
    0 6px 18px rgba(14,26,42,0.08) !important;
  border-color: rgba(56,189,248,0.18) !important;
}

.testimonial-card:hover::before {
  background: linear-gradient(
    90deg,
    transparent,
    rgba(56,189,248,0.70) 18%,
    rgba(255,255,255,0.90) 48%,
    rgba(232,87,10,0.65) 78%,
    transparent
  ) !important;
}

/* Stars — sunrise gradient */
.testimonial-rating .star {
  background: linear-gradient(135deg, #f5d97a, #e8570a) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

/* Testimonial name — navy→sky */
.testimonial-name {
  background: linear-gradient(130deg, #0C2040, #1565A8, #38bdf8) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

/* Avatar ring on hover */
.testimonial-card:hover .testimonial-avatar {
  box-shadow: 0 0 0 3px rgba(56,189,248,0.28), 0 0 10px rgba(56,189,248,0.16) !important;
  transition: box-shadow 0.28s !important;
}

/* ─────────────────────────────────────────────────────────────
   AMENITY CARDS — advanced hover
───────────────────────────────────────────────────────────── */

.amenity-card {
  border-color: rgba(14,26,42,0.06) !important;
  position: relative !important;
  overflow: hidden !important;
  transition:
    transform    0.30s cubic-bezier(.25,.46,.45,.94),
    box-shadow   0.30s ease,
    border-color 0.30s,
    background   0.30s !important;
}

/* Bottom shimmer on hover */
.amenity-card::after {
  content: '' !important;
  position: absolute !important;
  bottom: 0 !important; left: 0 !important; right: 0 !important;
  height: 2px !important;
  background: linear-gradient(
    90deg, transparent, #38bdf8 25%, #f5d97a 50%, #e8570a 75%, transparent
  ) !important;
  opacity: 0 !important;
  transition: opacity 0.30s !important;
}

.amenity-card:hover {
  transform: translateY(-6px) scale(1.01) !important;
  border-color: rgba(56,189,248,0.22) !important;
  box-shadow:
    0 14px 40px rgba(56,189,248,0.10),
    0 4px 14px rgba(14,26,42,0.07) !important;
  background: linear-gradient(
    155deg,
    rgba(56,189,248,0.04) 0%,
    #ffffff 50%,
    rgba(232,87,10,0.03) 100%
  ) !important;
}

.amenity-card:hover::after {
  opacity: 1 !important;
}

/* Amenity icon — bounce + glow */
.amenity-icon {
  transition: transform 0.35s cubic-bezier(.34,1.5,.64,1), filter 0.30s !important;
  display: block !important;
}

.amenity-card:hover .amenity-icon {
  transform: scale(1.18) translateY(-3px) !important;
  filter: drop-shadow(0 4px 10px rgba(56,189,248,0.28)) !important;
}

/* Amenity name — navy→sky gradient */
.amenity-name {
  background: linear-gradient(130deg, #0C2040 0%, #1565A8 50%, #38bdf8 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

/* Amenity desc — readable on hover */
.amenity-card:hover .amenity-desc {
  color: rgba(14,26,42,0.72) !important;
  -webkit-text-fill-color: rgba(14,26,42,0.72) !important;
}

/* ─────────────────────────────────────────────────────────────
   AWARDS BAR — sky + sunrise brand colours
───────────────────────────────────────────────────────────── */

.awards-bar {
  background: linear-gradient(
    135deg,
    #050d1a  0%,
    #071525 40%,
    #061220 70%,
    #03080f 100%
  ) !important;
  border-top: 1px solid rgba(56,189,248,0.10) !important;
  border-bottom: 1px solid rgba(212,175,55,0.10) !important;
}

.award-item {
  color: rgba(255,255,255,0.72) !important;
  transition: color 0.22s !important;
}

.award-item:hover {
  color: rgba(255,255,255,0.95) !important;
}

/* Award icon — sky→sunrise alternating */
.award-item:nth-child(odd) .award-item-icon {
  background: linear-gradient(135deg, #38bdf8, #7dd3fc) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

.award-item:nth-child(even) .award-item-icon {
  background: linear-gradient(135deg, #f5d97a, #e8570a) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

/* ─────────────────────────────────────────────────────────────
   NEWSLETTER SECTION — sky + dark premium
───────────────────────────────────────────────────────────── */

.newsletter-section {
  background: linear-gradient(
    145deg,
    #04080f  0%,
    #06101e 35%,
    #071525 65%,
    #04080f 100%
  ) !important;
  border-top: 1px solid rgba(56,189,248,0.10) !important;
  position: relative !important;
  overflow: hidden !important;
}

.newsletter-section::before {
  background:
    radial-gradient(ellipse 60% 60% at 10% 50%,  rgba(56,189,248,0.07)  0%, transparent 65%),
    radial-gradient(ellipse 50% 50% at 90% 50%,  rgba(232,87,10,0.06)   0%, transparent 60%),
    radial-gradient(ellipse 40% 40% at 50% 100%, rgba(212,175,55,0.05)  0%, transparent 55%) !important;
}

.newsletter-input {
  background: rgba(255,255,255,0.06) !important;
  border-color: rgba(56,189,248,0.22) !important;
  transition: border-color 0.22s, box-shadow 0.22s, background 0.22s !important;
}

.newsletter-input:focus {
  background: rgba(255,255,255,0.10) !important;
  border-color: rgba(56,189,248,0.52) !important;
  box-shadow: 0 0 0 3px rgba(56,189,248,0.12) !important;
}

/* Newsletter heading */
.newsletter-section h2,
.newsletter-section .section-title,
[class*="newsletter"] h2,
[class*="newsletter"] .section-title {
  background: linear-gradient(
    125deg,
    #38bdf8  0%,
    #7dd3fc 22%,
    #ffffff 48%,
    #f5d97a 70%,
    #e8570a 100%
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

/* ─────────────────────────────────────────────────────────────
   FINAL CTA SECTION — premium sky + sunrise
───────────────────────────────────────────────────────────── */

.final-cta-section {
  background: linear-gradient(
    160deg,
    #f0f9ff  0%,
    #e0f2fe 22%,
    #f8f5ee 50%,
    #fff7ed 78%,
    #fef3c7 100%
  ) !important;
  position: relative !important;
  overflow: hidden !important;
}

.final-cta-section::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    radial-gradient(ellipse 65% 70% at 50% 0%, rgba(56,189,248,0.09) 0%, transparent 65%),
    radial-gradient(ellipse 45% 45% at 0% 100%, rgba(232,87,10,0.06) 0%, transparent 55%),
    radial-gradient(ellipse 45% 45% at 100% 0%, rgba(212,175,55,0.06) 0%, transparent 55%) !important;
  pointer-events: none !important;
}

.final-cta-section .section-title {
  background: linear-gradient(
    130deg,
    #0C2040  0%,
    #1565A8 35%,
    #38bdf8  60%,
    #e8570a  85%,
    #B52A1F 100%
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  filter: drop-shadow(0 2px 10px rgba(56,189,248,0.14)) !important;
}

/* ─────────────────────────────────────────────────────────────
   FOOTER — sky + sunrise premium
───────────────────────────────────────────────────────────── */

/* Footer col titles — sky gradient */
.footer-col-title {
  background: linear-gradient(135deg, #7dd3fc 0%, #ffffff 55%, #f5d97a 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  border-bottom-color: rgba(56,189,248,0.22) !important;
}

/* Footer links hover — sky */
.footer-menu a:hover,
.footer-bottom-links a:hover {
  color: #38bdf8 !important;
  -webkit-text-fill-color: #38bdf8 !important;
}

.footer-menu a::before {
  background: linear-gradient(90deg, #38bdf8, #e8570a) !important;
}

/* Footer logo/tagline */
.footer-tagline {
  color: rgba(255,255,255,0.58) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.58) !important;
}

/* Social icons — sky glow on hover */
.footer-social a {
  transition:
    color 0.22s,
    transform 0.22s cubic-bezier(.34,1.3,.64,1),
    box-shadow 0.22s !important;
}

.footer-social a:hover {
  color: #38bdf8 !important;
  -webkit-text-fill-color: #38bdf8 !important;
  transform: translateY(-4px) scale(1.12) !important;
  box-shadow: 0 4px 16px rgba(56,189,248,0.26) !important;
}

/* ─────────────────────────────────────────────────────────────
   WOW / PARALLAX SECTION — sky + white + sunrise
───────────────────────────────────────────────────────────── */

.wow-eyebrow {
  background: linear-gradient(135deg, #38bdf8, #7dd3fc) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  letter-spacing: 0.22em !important;
  font-size: 0.66rem !important;
}

.wow-title {
  background: linear-gradient(
    125deg,
    #38bdf8  0%,
    #7dd3fc 18%,
    #ffffff 42%,
    #f5d97a 65%,
    #e8570a 82%,
    #B52A1F 100%
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  filter: drop-shadow(0 4px 16px rgba(56,189,248,0.18)) !important;
}

.wow-text {
  color: rgba(255,255,255,0.72) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.72) !important;
}

/* ─────────────────────────────────────────────────────────────
   STATS SECTION — glass tiles, sky gradient numbers
───────────────────────────────────────────────────────────── */

.stat-item {
  position: relative !important;
  overflow: hidden !important;
  border-color: rgba(14,26,42,0.07) !important;
  transition:
    transform    0.30s cubic-bezier(.25,.46,.45,.94),
    box-shadow   0.30s ease,
    border-color 0.30s !important;
}

/* Top bar — sky→sunrise on hover */
.stat-item::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important; left: 0 !important; right: 0 !important;
  height: 2.5px !important;
  background: linear-gradient(90deg, #38bdf8 0%, #f5d97a 50%, #e8570a 100%) !important;
  border-radius: 4px 4px 0 0 !important;
}

.stat-item:hover {
  transform: translateY(-7px) !important;
  border-color: rgba(56,189,248,0.18) !important;
  box-shadow:
    0 16px 44px rgba(56,189,248,0.12),
    0 5px 14px rgba(14,26,42,0.08) !important;
}

/* Stat number — sky→white→sunrise */
.stat-number {
  background: linear-gradient(
    130deg,
    #0ea5e9  0%,
    #38bdf8 22%,
    #7dd3fc 42%,
    #f5d97a 65%,
    #e8570a 82%,
    #B52A1F 100%
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  filter: drop-shadow(0 2px 8px rgba(56,189,248,0.18)) !important;
  transition: filter 0.30s, transform 0.30s !important;
}

.stat-item:hover .stat-number {
  filter: drop-shadow(0 4px 14px rgba(56,189,248,0.28)) !important;
  transform: scale(1.04) !important;
}

/* Stat label */
.stat-label {
  color: rgba(14,26,42,0.55) !important;
  -webkit-text-fill-color: rgba(14,26,42,0.55) !important;
  letter-spacing: 0.12em !important;
}

/* ─────────────────────────────────────────────────────────────
   ABOUT SNIPPET (homepage) — editorial upgrade
───────────────────────────────────────────────────────────── */

.about-snippet__title,
[class*="about-snippet"] h2,
[class*="about-snippet"] h3 {
  background: linear-gradient(
    130deg,
    #0C2040  0%,
    #1565A8 40%,
    #38bdf8  70%,
    #0C2040 100%
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

.about-snippet__image {
  position: relative !important;
}

.about-snippet__image img {
  transition: transform 0.55s cubic-bezier(.25,.46,.45,.94), filter 0.55s !important;
  border-radius: 20px !important;
}

.about-snippet__image:hover img {
  transform: scale(1.025) !important;
  filter: brightness(1.04) saturate(1.07) !important;
}

/* About snippet image border on hover */
.about-snippet__image::after {
  content: '' !important;
  position: absolute !important;
  inset: -3px !important;
  border-radius: 22px !important;
  background: linear-gradient(
    135deg,
    rgba(56,189,248,0.28) 0%,
    rgba(232,87,10,0.20) 50%,
    rgba(56,189,248,0.16) 100%
  ) !important;
  z-index: -1 !important;
  opacity: 0 !important;
  transition: opacity 0.35s !important;
}

.about-snippet__image:hover::after {
  opacity: 1 !important;
}

/* ─────────────────────────────────────────────────────────────
   WHATSAPP FLOAT BUTTON — brand gradient
───────────────────────────────────────────────────────────── */

.whatsapp-float__btn {
  background: linear-gradient(
    135deg,
    #25D366  0%,
    #128C7E 100%
  ) !important;
  box-shadow:
    0 4px 18px rgba(37,211,102,0.38),
    0 2px 8px rgba(0,0,0,0.18) !important;
  transition:
    transform 0.25s cubic-bezier(.34,1.3,.64,1),
    box-shadow 0.25s !important;
}

.whatsapp-float__btn:hover {
  transform: translateY(-4px) scale(1.10) !important;
  box-shadow:
    0 10px 32px rgba(37,211,102,0.50),
    0 4px 14px rgba(0,0,0,0.20) !important;
}

/* WhatsApp label bubble */
.whatsapp-float__label {
  background: linear-gradient(135deg, #0C2040, #1565A8) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border: 1px solid rgba(56,189,248,0.22) !important;
  box-shadow: 0 3px 12px rgba(12,32,64,0.28) !important;
}

/* ─────────────────────────────────────────────────────────────
   SCROLL PROGRESS BAR — full brand sweep
───────────────────────────────────────────────────────────── */

.scroll-progress-bar {
  background: linear-gradient(
    90deg,
    #38bdf8  0%,
    #7dd3fc 20%,
    #ffffff 42%,
    #f5d97a 62%,
    #e8570a 80%,
    #B52A1F 100%
  ) !important;
  background-size: 300% 100% !important;
  animation: v27-progress-shimmer 4s linear infinite !important;
}

@keyframes v27-progress-shimmer {
  0%   { background-position: 0% 0; }
  100% { background-position: 300% 0; }
}

/* ─────────────────────────────────────────────────────────────
   GOLD DIVIDERS — full brand sweep
───────────────────────────────────────────────────────────── */

.gold-divider {
  background: linear-gradient(
    90deg,
    transparent 0%,
    #38bdf8     15%,
    #f5d97a     45%,
    #e8570a     70%,
    transparent 100%
  ) !important;
  height: 2px !important;
  transition: width 0.4s ease !important;
}

section:hover .gold-divider {
  width: 100px !important;
}

/* ─────────────────────────────────────────────────────────────
   SECTION LABELS — brand colours by context
───────────────────────────────────────────────────────────── */

/* Light bg section labels */
.section-label {
  transition: background 0.22s, box-shadow 0.22s, border-color 0.22s !important;
}

.section-label:hover {
  box-shadow: 0 0 0 3px rgba(56,189,248,0.16), 0 4px 14px rgba(56,189,248,0.13) !important;
}

/* ─────────────────────────────────────────────────────────────
   VIRTUAL TOUR SECTION (if present) — sky tinted
───────────────────────────────────────────────────────────── */

.virtual-tour-section {
  border-top: 1px solid rgba(56,189,248,0.08) !important;
}

[class*="virtual-tour"] h2,
[class*="virtual-tour"] .section-title {
  background: linear-gradient(
    130deg,
    #0C2040 0%, #1565A8 45%, #38bdf8 75%, #0C2040 100%
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

/* ─────────────────────────────────────────────────────────────
   PAGE HERO (inner pages)
───────────────────────────────────────────────────────────── */

.page-hero-title {
  background: linear-gradient(
    130deg,
    #38bdf8  0%,
    #7dd3fc 18%,
    #ffffff 40%,
    #f5d97a 65%,
    #f5d97a 80%,
    #e8570a 100%
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  filter: drop-shadow(0 3px 14px rgba(56,189,248,0.22)) !important;
}

/* ── design-v2_8.css (25,504b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v2.8
   ──────────────────────────────────────────────────────────────
   Ultra-premium advanced hover effects + gradient upgrades:
   1. Header "Book Now" button — cinematic shine sweep + 3D
   2. All buttons — shimmer + magnetic lift + active press
   3. Dark sections — richer ambient BG gradients
   4. Gallery — overlay gradient + zoom + icon glow
   5. Gallery filter pills — animated active state
   6. Availability banner — sky-tinted premium card
   7. v19 Why bento cells — deeper 3D + perspective tilt
   8. Room cards — parallax image + card flip readiness
   9. Testimonial cards — glass morphism on hover
   10. About snippet badge — floating animation
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   1. HEADER "BOOK NOW" BUTTON — ultra-premium cinematic
───────────────────────────────────────────────────────────── */

.header-book-btn {
  position: relative !important;
  background: linear-gradient(
    135deg,
    #B52A1F  0%,
    #e8570a 35%,
    #f0a830 60%,
    #e8570a 80%,
    #B52A1F 100%
  ) !important;
  background-size: 250% 100% !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border: none !important;
  border-radius: 100px !important;
  padding: 0.62rem 1.55rem !important;
  font-size: 0.72rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  overflow: hidden !important;
  box-shadow:
    0 4px 16px rgba(232,87,10,0.42),
    0 1px 3px rgba(0,0,0,0.18),
    inset 0 1px 0 rgba(255,255,255,0.20) !important;
  transition:
    transform          0.28s cubic-bezier(.34,1.3,.64,1),
    box-shadow         0.28s ease,
    background-position 0.5s ease !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  z-index: 1 !important;
}

/* Cinematic shine sweep */
.header-book-btn::before {
  content: '' !important;
  position: absolute !important;
  top: -50% !important;
  left: -75% !important;
  width: 50% !important;
  height: 200% !important;
  background: linear-gradient(
    105deg,
    transparent 30%,
    rgba(255,255,255,0.28) 50%,
    transparent 70%
  ) !important;
  transform: rotate(-15deg) !important;
  transition: left 0.65s ease !important;
  pointer-events: none !important;
}

.header-book-btn:hover::before {
  left: 130% !important;
}

/* Pulse ring behind button */
.header-book-btn::after {
  content: '' !important;
  position: absolute !important;
  inset: -3px !important;
  border-radius: 100px !important;
  background: linear-gradient(135deg, #e8570a, #38bdf8, #e8570a) !important;
  background-size: 200% 200% !important;
  z-index: -1 !important;
  opacity: 0 !important;
  animation: v28-btn-pulse-ring 3s ease infinite !important;
  transition: opacity 0.28s !important;
}

.header-book-btn:hover::after {
  opacity: 0.55 !important;
}

@keyframes v28-btn-pulse-ring {
  0%,100% { background-position: 0% 50%;   opacity: 0.40; transform: scale(1.0); }
  50%      { background-position: 100% 50%; opacity: 0.65; transform: scale(1.06); }
}

.header-book-btn:hover {
  background-position: 100% 0 !important;
  transform: translateY(-3px) scale(1.04) !important;
  box-shadow:
    0 10px 32px rgba(232,87,10,0.55),
    0 4px 12px rgba(0,0,0,0.18),
    inset 0 1px 0 rgba(255,255,255,0.25) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

.header-book-btn:active {
  transform: translateY(-1px) scale(1.01) !important;
  box-shadow: 0 5px 16px rgba(232,87,10,0.40) !important;
}

/* ─────────────────────────────────────────────────────────────
   2. ALL BUTTONS — shimmer sweep + magnetic lift + press
───────────────────────────────────────────────────────────── */

/* Base btn — faster transition for magnetic feel */
.btn {
  transition:
    transform   0.28s cubic-bezier(.34,1.3,.64,1),
    box-shadow  0.28s ease,
    background-position 0.45s ease,
    border-color 0.22s !important;
  overflow: hidden !important;
  position: relative !important;
}

/* Shine sweep on all buttons */
.btn::before {
  content: '' !important;
  position: absolute !important;
  top: -50% !important;
  left: -80% !important;
  width: 55% !important;
  height: 200% !important;
  background: linear-gradient(
    105deg,
    transparent 30%,
    rgba(255,255,255,0.22) 50%,
    transparent 70%
  ) !important;
  transform: rotate(-12deg) !important;
  transition: left 0.60s ease !important;
  pointer-events: none !important;
  z-index: 1 !important;
}

.btn:hover::before {
  left: 130% !important;
}

/* White inner flash on ::after (already in base CSS — enhance it) */
.btn::after {
  background: linear-gradient(
    135deg,
    rgba(255,255,255,0.12) 0%,
    rgba(255,255,255,0.04) 100%
  ) !important;
  transition: opacity 0.20s !important;
  z-index: 0 !important;
}

/* Primary — sunrise + magnetic lift */
.btn--primary {
  background: linear-gradient(
    135deg,
    #B52A1F  0%,
    #e8570a 38%,
    #f0a830 65%,
    #e8570a 82%,
    #B52A1F 100%
  ) !important;
  background-size: 250% 100% !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border: none !important;
  border-radius: 100px !important;
  box-shadow:
    0 4px 18px rgba(232,87,10,0.38),
    inset 0 1px 0 rgba(255,255,255,0.18) !important;
}

.btn--primary:hover {
  background-position: 100% 0 !important;
  transform: translateY(-4px) scale(1.03) !important;
  box-shadow:
    0 12px 36px rgba(232,87,10,0.52),
    0 4px 12px rgba(0,0,0,0.14),
    inset 0 1px 0 rgba(255,255,255,0.22) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

.btn--primary:active {
  transform: translateY(-1px) scale(1.01) !important;
  box-shadow: 0 5px 18px rgba(232,87,10,0.38) !important;
}

/* Secondary — navy→sky + magnetic */
.btn--secondary {
  background: linear-gradient(
    135deg,
    #0C2040  0%,
    #1565A8 40%,
    #0ea5e9 65%,
    #38bdf8 80%,
    #0C2040 100%
  ) !important;
  background-size: 250% 100% !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border: none !important;
  border-radius: 100px !important;
  box-shadow:
    0 4px 16px rgba(12,32,64,0.32),
    inset 0 1px 0 rgba(255,255,255,0.14) !important;
}

.btn--secondary:hover {
  background-position: 100% 0 !important;
  transform: translateY(-4px) scale(1.03) !important;
  box-shadow:
    0 12px 36px rgba(56,189,248,0.32),
    0 0 0 3px rgba(56,189,248,0.16),
    inset 0 1px 0 rgba(255,255,255,0.18) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

.btn--secondary:active {
  transform: translateY(-1px) scale(1.01) !important;
}

/* Outline — sky border morphs to gradient fill */
.btn--outline {
  background: transparent !important;
  border: 2px solid rgba(56,189,248,0.55) !important;
  border-radius: 100px !important;
  color: #0ea5e9 !important;
  -webkit-text-fill-color: #0ea5e9 !important;
  transition:
    background 0.30s ease,
    border-color 0.30s,
    color 0.30s,
    transform 0.28s cubic-bezier(.34,1.3,.64,1),
    box-shadow 0.28s !important;
}

.btn--outline:hover {
  background: linear-gradient(135deg, #0C2040, #1565A8, #38bdf8) !important;
  border-color: transparent !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  transform: translateY(-3px) scale(1.02) !important;
  box-shadow: 0 8px 24px rgba(56,189,248,0.26) !important;
}

/* Outline-white — frosted glass on hover */
.btn--outline-white {
  background: rgba(255,255,255,0.06) !important;
  border: 2px solid rgba(255,255,255,0.45) !important;
  border-radius: 100px !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

.btn--outline-white:hover {
  background: rgba(255,255,255,0.18) !important;
  border-color: rgba(255,255,255,0.70) !important;
  transform: translateY(-3px) scale(1.02) !important;
  box-shadow:
    0 8px 28px rgba(255,255,255,0.14),
    inset 0 1px 0 rgba(255,255,255,0.30) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

/* Glass button */
.btn--glass {
  background: rgba(255,255,255,0.08) !important;
  border: 1px solid rgba(255,255,255,0.18) !important;
  border-radius: 100px !important;
  backdrop-filter: blur(14px) !important;
  -webkit-backdrop-filter: blur(14px) !important;
}

.btn--glass:hover {
  background: rgba(255,255,255,0.18) !important;
  border-color: rgba(56,189,248,0.45) !important;
  transform: translateY(-3px) scale(1.02) !important;
  box-shadow: 0 8px 28px rgba(56,189,248,0.18) !important;
}

/* ─────────────────────────────────────────────────────────────
   3. DARK SECTIONS — richer ambient backgrounds
───────────────────────────────────────────────────────────── */

/* Stats section BG */
.stats-section,
[class*="stats-section"],
section:has(.stats-grid) {
  position: relative !important;
  overflow: hidden !important;
}

/* Availability banner — premium glass card */
.availability-banner__inner {
  background: linear-gradient(
    145deg,
    rgba(255,255,255,0.98) 0%,
    rgba(240,249,255,0.96) 50%,
    rgba(255,255,255,0.98) 100%
  ) !important;
  border: 1px solid rgba(56,189,248,0.16) !important;
  box-shadow:
    0 8px 40px rgba(56,189,248,0.10),
    0 2px 12px rgba(14,26,42,0.06),
    inset 0 1px 0 rgba(255,255,255,0.90) !important;
  transition: border-color 0.30s, box-shadow 0.30s, transform 0.30s !important;
}

.availability-banner__inner:hover {
  border-color: rgba(56,189,248,0.28) !important;
  box-shadow:
    0 16px 56px rgba(56,189,248,0.14),
    0 5px 18px rgba(14,26,42,0.08),
    inset 0 1px 0 rgba(255,255,255,0.95) !important;
  transform: translateY(-2px) !important;
}

/* Banner title gradient */
.availability-banner__title {
  background: linear-gradient(130deg, #0C2040, #1565A8, #38bdf8) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

/* Banner badges */
.avail-badge--blue {
  background: linear-gradient(135deg, rgba(56,189,248,0.12), rgba(14,165,233,0.08)) !important;
  border: 1px solid rgba(56,189,248,0.22) !important;
  color: #0369a1 !important;
  -webkit-text-fill-color: #0369a1 !important;
}

.avail-badge--gold {
  background: linear-gradient(135deg, rgba(245,217,122,0.16), rgba(232,87,10,0.10)) !important;
  border: 1px solid rgba(245,217,122,0.28) !important;
  color: #92400e !important;
  -webkit-text-fill-color: #92400e !important;
}

/* ─────────────────────────────────────────────────────────────
   4. GALLERY ITEMS — dramatic overlay + zoom + icon
───────────────────────────────────────────────────────────── */

.gallery-item {
  transition:
    transform  0.40s cubic-bezier(.25,.46,.45,.94),
    box-shadow 0.40s ease !important;
  border-radius: 16px !important;
}

.gallery-item:hover {
  transform: scale(1.02) !important;
  box-shadow:
    0 20px 60px rgba(56,189,248,0.18),
    0 8px 24px rgba(0,0,0,0.16) !important;
  z-index: 2 !important;
}

.gallery-item img {
  transition:
    transform 0.55s cubic-bezier(.25,.46,.45,.94),
    filter    0.55s ease !important;
  border-radius: 16px !important;
}

.gallery-item:hover img {
  transform: scale(1.08) !important;
  filter: brightness(0.88) saturate(1.10) !important;
}

/* Overlay — sky→navy gradient (not plain dark) */
.gallery-item-overlay {
  background: linear-gradient(
    145deg,
    rgba(12,32,64,0.55) 0%,
    rgba(3,8,15,0.68) 40%,
    rgba(56,189,248,0.22) 100%
  ) !important;
  transition: opacity 0.35s ease !important;
}

/* Zoom icon — sky ring glow */
.gallery-zoom-icon {
  background: rgba(255,255,255,0.14) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  border: 1.5px solid rgba(56,189,248,0.45) !important;
  color: #fff !important;
  transition:
    transform 0.35s cubic-bezier(.34,1.4,.64,1),
    box-shadow 0.35s,
    background 0.35s !important;
}

.gallery-item:hover .gallery-zoom-icon {
  transform: scale(1.15) rotate(-5deg) !important;
  background: rgba(56,189,248,0.22) !important;
  box-shadow:
    0 0 0 6px rgba(56,189,248,0.18),
    0 4px 16px rgba(56,189,248,0.30) !important;
}

/* ─────────────────────────────────────────────────────────────
   5. GALLERY FILTER PILLS — animated active state
───────────────────────────────────────────────────────────── */

.gallery-filter-btn {
  position: relative !important;
  overflow: hidden !important;
  border-color: rgba(56,189,248,0.22) !important;
  color: rgba(14,26,42,0.65) !important;
  -webkit-text-fill-color: rgba(14,26,42,0.65) !important;
  background: rgba(255,255,255,0.85) !important;
  border-radius: 100px !important;
  transition:
    background    0.28s ease,
    border-color  0.28s,
    color         0.28s,
    transform     0.28s cubic-bezier(.34,1.3,.64,1),
    box-shadow    0.28s !important;
}

.gallery-filter-btn::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(
    135deg,
    #0C2040 0%,
    #1565A8 40%,
    #38bdf8 70%,
    #e8570a 100%
  ) !important;
  opacity: 0 !important;
  transition: opacity 0.28s !important;
  border-radius: 100px !important;
}

.gallery-filter-btn:hover,
.gallery-filter-btn.active {
  border-color: transparent !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  transform: translateY(-2px) scale(1.04) !important;
  box-shadow: 0 6px 20px rgba(56,189,248,0.26) !important;
  background: transparent !important;
}

.gallery-filter-btn:hover::before,
.gallery-filter-btn.active::before {
  opacity: 1 !important;
}

/* Span inside filter btn — keep above pseudo */
.gallery-filter-btn span,
.gallery-filter-btn > * {
  position: relative !important;
  z-index: 1 !important;
}

/* ─────────────────────────────────────────────────────────────
   6. v19 WHY BENTO CELLS — deeper 3D lift on hover
───────────────────────────────────────────────────────────── */

.v19-why__bento {
  perspective: 2000px !important;
}

.v19-why__cell {
  transition:
    transform    0.50s cubic-bezier(.25,.46,.45,.94),
    border-color 0.35s,
    box-shadow   0.50s ease !important;
  transform-style: preserve-3d !important;
}

/* Each cell tilts subtly toward cursor on hover */
.v19-why__cell:hover {
  transform: translateY(-8px) rotateX(2deg) scale(1.012) !important;
  box-shadow:
    0 24px 64px rgba(0,0,0,0.42),
    0 8px 24px rgba(56,189,248,0.10),
    0 0 0 1.5px rgba(212,175,55,0.22) !important;
}

/* Hero cell — bigger lift */
.v19-why__cell--hero:hover {
  transform: translateY(-6px) rotateX(1.5deg) scale(1.008) !important;
  box-shadow:
    0 28px 72px rgba(0,0,0,0.50),
    0 10px 30px rgba(56,189,248,0.12),
    0 0 0 1.5px rgba(212,175,55,0.32) !important;
}

/* CTA cell — scale + rotate on hover */
.v19-why__cell--cta:hover {
  transform: translateY(-8px) scale(1.022) !important;
  box-shadow:
    0 20px 56px rgba(232,87,10,0.50),
    0 0 0 1.5px rgba(232,87,10,0.45) !important;
}

/* ─────────────────────────────────────────────────────────────
   7. TESTIMONIAL CARDS — glass morphism effect on hover
───────────────────────────────────────────────────────────── */

.testimonial-card {
  transition:
    transform    0.38s cubic-bezier(.25,.46,.45,.94),
    box-shadow   0.38s ease,
    border-color 0.38s,
    background   0.38s !important;
}

.testimonial-card:hover {
  transform: translateY(-8px) scale(1.012) !important;
  background: linear-gradient(
    160deg,
    rgba(240,249,255,0.98) 0%,
    rgba(255,255,255,0.98) 55%,
    rgba(255,247,237,0.96) 100%
  ) !important;
  box-shadow:
    0 22px 60px rgba(56,189,248,0.13),
    0 8px 22px rgba(14,26,42,0.09),
    0 0 0 1px rgba(56,189,248,0.12) !important;
  border-color: rgba(56,189,248,0.16) !important;
}

/* ─────────────────────────────────────────────────────────────
   8. ABOUT SNIPPET BADGE — floating animation
───────────────────────────────────────────────────────────── */

.about-snippet__badge {
  animation: v28-badge-float 4s ease-in-out infinite !important;
  background: linear-gradient(135deg, #0C2040 0%, #1565A8 55%, #0ea5e9 100%) !important;
  border: 2px solid rgba(56,189,248,0.30) !important;
  box-shadow:
    0 8px 32px rgba(12,32,64,0.32),
    0 0 0 4px rgba(56,189,248,0.10) !important;
  transition: box-shadow 0.30s, transform 0.30s !important;
}

@keyframes v28-badge-float {
  0%,100% { transform: translateY(0px) rotate(-1deg); }
  50%      { transform: translateY(-8px) rotate(1deg); }
}

.about-snippet__badge:hover {
  animation-play-state: paused !important;
  box-shadow:
    0 14px 44px rgba(12,32,64,0.42),
    0 0 0 6px rgba(56,189,248,0.18) !important;
}

.about-badge-year {
  background: linear-gradient(135deg, #38bdf8, #7dd3fc) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

.about-badge-num {
  background: linear-gradient(135deg, #f5d97a, #e8570a) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

/* ─────────────────────────────────────────────────────────────
   9. ROOM CARDS — deeper hover + image parallax feel
───────────────────────────────────────────────────────────── */

.room-card {
  transition:
    transform    0.40s cubic-bezier(.25,.46,.45,.94),
    box-shadow   0.40s ease,
    border-color 0.40s !important;
}

.room-card:hover {
  transform: translateY(-10px) scale(1.008) !important;
  box-shadow:
    0 28px 72px rgba(56,189,248,0.14),
    0 10px 28px rgba(14,26,42,0.10),
    0 0 0 1px rgba(56,189,248,0.14) !important;
  border-color: rgba(56,189,248,0.18) !important;
}

.room-card__image img {
  transition:
    transform 0.65s cubic-bezier(.25,.46,.45,.94),
    filter    0.65s ease !important;
}

.room-card:hover .room-card__image img {
  transform: scale(1.10) !important;
  filter: brightness(1.07) saturate(1.10) !important;
}

/* ─────────────────────────────────────────────────────────────
   10. RESERVE SECTION CARD HOVER — pulse glow rings
───────────────────────────────────────────────────────────── */

/* Why Book Direct — sky pulse on hover */
.v21-rs__card--why {
  transition:
    transform    0.38s cubic-bezier(.25,.46,.45,.94),
    border-color 0.35s,
    box-shadow   0.38s !important;
}

.v21-rs__card--why:hover {
  transform: translateY(-5px) !important;
  border-color: rgba(56,189,248,0.32) !important;
  box-shadow:
    0 16px 52px rgba(0,0,0,0.44),
    0 0 0 1px rgba(56,189,248,0.14),
    0 0 36px rgba(56,189,248,0.08) !important;
}

/* Check Availability — sunrise pulse on hover */
.v21-rs__card--book:hover {
  transform: translateY(-7px) !important;
  border-color: rgba(212,175,55,0.48) !important;
  box-shadow:
    0 20px 60px rgba(0,0,0,0.48),
    0 0 0 1.5px rgba(212,175,55,0.22),
    0 0 40px rgba(212,175,55,0.10) !important;
}

/* Find Booking — sky on hover */
.v21-rs__card--find:hover {
  transform: translateY(-5px) !important;
  border-color: rgba(56,189,248,0.28) !important;
  box-shadow:
    0 16px 52px rgba(0,0,0,0.44),
    0 0 0 1px rgba(56,189,248,0.12) !important;
}

/* ─────────────────────────────────────────────────────────────
   11. STAT ITEMS — shimmer wave on hover
───────────────────────────────────────────────────────────── */

.stat-item {
  overflow: hidden !important;
}

/* Shimmer sweep on stat hover */
.stat-item::after {
  content: '' !important;
  position: absolute !important;
  top: -50% !important;
  left: -80% !important;
  width: 55% !important;
  height: 200% !important;
  background: linear-gradient(
    105deg,
    transparent 30%,
    rgba(56,189,248,0.12) 50%,
    transparent 70%
  ) !important;
  transform: rotate(-12deg) !important;
  transition: left 0.60s ease !important;
  pointer-events: none !important;
}

.stat-item:hover::after {
  left: 130% !important;
}

/* ─────────────────────────────────────────────────────────────
   12. AMENITY CARDS — icon spin + glass background morphism
───────────────────────────────────────────────────────────── */

.amenity-card:hover {
  background: linear-gradient(
    160deg,
    rgba(240,249,255,0.98) 0%,
    rgba(255,255,255,0.98) 55%,
    rgba(255,247,237,0.96) 100%
  ) !important;
}

.amenity-card:hover .amenity-icon {
  transform: scale(1.20) rotate(-8deg) !important;
  filter: drop-shadow(0 6px 14px rgba(56,189,248,0.32)) !important;
}

/* ─────────────────────────────────────────────────────────────
   13. SECTION LABELS — pill bounce on hover
───────────────────────────────────────────────────────────── */

.section-label {
  cursor: default !important;
}

.section-label:hover {
  transform: translateY(-1px) scale(1.03) !important;
  transition: transform 0.22s cubic-bezier(.34,1.3,.64,1),
              box-shadow 0.22s,
              background 0.22s !important;
}

/* ─────────────────────────────────────────────────────────────
   14. FOOTER SOCIAL ICONS — magnetic bounce
───────────────────────────────────────────────────────────── */

.footer-social a {
  transition:
    color      0.22s,
    transform  0.28s cubic-bezier(.34,1.5,.64,1),
    box-shadow 0.28s !important;
}

.footer-social a:hover {
  transform: translateY(-6px) scale(1.18) !important;
  box-shadow: 0 6px 20px rgba(56,189,248,0.30) !important;
}

/* ── design-v2_9.css (18,914b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v2.9
   ──────────────────────────────────────────────────────────────
   1. Book Now button — ultimate animated rainbow gradient
   2. Color-shift animations (background-position keyframes)
      across: scroll bar, stat numbers, wow title, hero title,
      section labels, bento cells, footer bar
   3. Animated gradient borders on key cards
   4. Subpage polish — dining, rooms, contact, events, packages
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   BRAND ANIMATION KEYFRAMES
   All use background-position shift — CSS-only, no JS.
───────────────────────────────────────────────────────────── */

/* A: Sunrise sweep — orange→gold→white→sky→gold→orange */
@keyframes v29-sunrise {
  0%   { background-position: 0%   50%; }
  50%  { background-position: 100% 50%; }
  100% { background-position: 0%   50%; }
}

/* B: Sky sweep — sky→white→orange→white→sky */
@keyframes v29-sky {
  0%   { background-position: 0%   50%; }
  50%  { background-position: 100% 50%; }
  100% { background-position: 0%   50%; }
}

/* C: Border rotate — gradient border animation */
@keyframes v29-border-spin {
  0%   { background-position: 0% 50%;   }
  50%  { background-position: 100% 50%; }
  100% { background-position: 0% 50%;   }
}

/* D: Float pulse — used for glow rings */
@keyframes v29-glow-pulse {
  0%,100% { opacity: 0.45; transform: scale(1.0); }
  50%      { opacity: 0.80; transform: scale(1.07); }
}

/* ─────────────────────────────────────────────────────────────
   1. HEADER "BOOK NOW" — ULTIMATE ANIMATED BUTTON
───────────────────────────────────────────────────────────── */

.header-book-btn {
  position: relative !important;
  /* 6-stop gradient animated continuously */
  background: linear-gradient(
    135deg,
    #B52A1F,
    #e8570a,
    #f0a830,
    #ffffff,
    #38bdf8,
    #0ea5e9,
    #38bdf8,
    #f0a830,
    #e8570a,
    #B52A1F
  ) !important;
  background-size: 400% 400% !important;
  animation: v29-sunrise 5s ease infinite !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-weight: 800 !important;
  font-size: 0.72rem !important;
  letter-spacing: 0.13em !important;
  text-transform: uppercase !important;
  padding: 0.65rem 1.6rem !important;
  border-radius: 100px !important;
  border: none !important;
  text-shadow: 0 1px 4px rgba(0,0,0,0.28) !important;
  box-shadow:
    0 4px 18px rgba(232,87,10,0.40),
    0 2px 6px rgba(0,0,0,0.18),
    inset 0 1px 0 rgba(255,255,255,0.22) !important;
  overflow: hidden !important;
  transition:
    transform  0.28s cubic-bezier(.34,1.3,.64,1),
    box-shadow 0.28s ease !important;
  /* Pause animation on hover — replaced by fast hover version */
  animation-play-state: running !important;
}

/* Shine sweep layer */
.header-book-btn::before {
  content: '' !important;
  position: absolute !important;
  top: -50% !important;
  left: -80% !important;
  width: 55% !important;
  height: 200% !important;
  background: linear-gradient(
    105deg,
    transparent 30%,
    rgba(255,255,255,0.35) 50%,
    transparent 70%
  ) !important;
  transform: rotate(-12deg) !important;
  transition: left 0.55s ease !important;
  pointer-events: none !important;
  z-index: 1 !important;
}

.header-book-btn:hover::before {
  left: 130% !important;
}

/* Pulse glow ring */
.header-book-btn::after {
  content: '' !important;
  position: absolute !important;
  inset: -4px !important;
  border-radius: 100px !important;
  background: linear-gradient(
    135deg,
    #e8570a, #38bdf8, #f5d97a, #B52A1F, #38bdf8, #e8570a
  ) !important;
  background-size: 300% 300% !important;
  animation: v29-border-spin 4s ease infinite, v29-glow-pulse 3s ease infinite !important;
  z-index: -1 !important;
  opacity: 0 !important;
  transition: opacity 0.28s !important;
  filter: blur(2px) !important;
}

.header-book-btn:hover::after {
  opacity: 0.60 !important;
}

.header-book-btn:hover {
  /* Speed up animation on hover */
  animation-duration: 1.8s !important;
  transform: translateY(-4px) scale(1.05) !important;
  box-shadow:
    0 14px 38px rgba(232,87,10,0.52),
    0 5px 16px rgba(56,189,248,0.22),
    0 2px 6px rgba(0,0,0,0.20),
    inset 0 1px 0 rgba(255,255,255,0.28) !important;
  text-shadow: 0 1px 6px rgba(0,0,0,0.35) !important;
}

.header-book-btn:active {
  transform: translateY(-1px) scale(1.01) !important;
  box-shadow: 0 5px 18px rgba(232,87,10,0.38) !important;
}

/* ─────────────────────────────────────────────────────────────
   2. ANIMATED COLOR-SHIFT — background-position keyframes
   Applied to: scroll bar, stat numbers, wow title, hero title,
   section labels on dark bg, bento cells border, footer bar
───────────────────────────────────────────────────────────── */

/* Scroll progress bar — animated sweep */
.scroll-progress-bar {
  background: linear-gradient(
    90deg,
    #B52A1F, #e8570a, #f0a830, #f5d97a,
    #ffffff, #38bdf8, #0ea5e9,
    #38bdf8, #f5d97a, #e8570a, #B52A1F
  ) !important;
  background-size: 400% 100% !important;
  animation: v29-sunrise 4s linear infinite !important;
}

/* Hero title text — color shift */
.hero-title {
  background: linear-gradient(
    125deg,
    #38bdf8, #7dd3fc, #ffffff,
    #f5d97a, #e8570a, #B52A1F,
    #e8570a, #f5d97a, #ffffff,
    #7dd3fc, #38bdf8
  ) !important;
  background-size: 400% 400% !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  animation: v29-sky 8s ease infinite !important;
  filter: drop-shadow(0 3px 14px rgba(56,189,248,0.20)) !important;
}

/* Wow title text — faster shift */
.wow-title {
  background: linear-gradient(
    125deg,
    #38bdf8, #7dd3fc, #ffffff,
    #f5d97a, #e8570a, #B52A1F,
    #38bdf8, #ffffff, #f5d97a, #38bdf8
  ) !important;
  background-size: 400% 400% !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  animation: v29-sky 6s ease infinite !important;
  filter: drop-shadow(0 4px 16px rgba(56,189,248,0.22)) !important;
}

/* Stat numbers — continuous sunrise cycle */
.stat-number {
  background: linear-gradient(
    130deg,
    #0ea5e9, #38bdf8, #7dd3fc,
    #f5d97a, #e8570a, #B52A1F,
    #e8570a, #f5d97a, #38bdf8, #0ea5e9
  ) !important;
  background-size: 400% 400% !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  animation: v29-sunrise 7s ease infinite !important;
}

/* Gold dividers — animated sweep */
.gold-divider {
  background: linear-gradient(
    90deg,
    transparent, #38bdf8, #f5d97a,
    #e8570a, #ffffff, #e8570a,
    #f5d97a, #38bdf8, transparent
  ) !important;
  background-size: 300% 100% !important;
  animation: v29-sunrise 5s linear infinite !important;
  height: 2px !important;
}

/* Section title on dark — animated */
.section--dark .section-title,
.v22-about__facts .section-title,
.v22-about__reviews .section-title,
.newsletter-section .section-title,
.wow-section .section-title,
.final-cta-section .section-title,
.v22-about__cta .section-title {
  background: linear-gradient(
    125deg,
    #38bdf8, #7dd3fc, #ffffff,
    #f5d97a, #e8570a, #7dd3fc,
    #ffffff, #f5d97a, #38bdf8
  ) !important;
  background-size: 400% 400% !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  animation: v29-sky 9s ease infinite !important;
}

/* ─────────────────────────────────────────────────────────────
   3. ANIMATED GRADIENT BORDERS on key cards
   Uses ::before pseudo with rotating gradient background
───────────────────────────────────────────────────────────── */

/* Bento why cells — animated top border */
.v19-why__cell::before {
  background: linear-gradient(
    90deg,
    transparent,
    #38bdf8, #ffffff, #f5d97a,
    #e8570a, #f5d97a, #ffffff,
    #38bdf8, transparent
  ) !important;
  background-size: 400% 100% !important;
  animation: v29-sunrise 6s linear infinite !important;
  height: 1.5px !important;
}

/* Reserve section card shimmer line — animated */
.v21-rs__card::before {
  background: linear-gradient(
    90deg,
    transparent,
    #38bdf8, #ffffff, #f5d97a,
    #e8570a, #ffffff, #38bdf8,
    transparent
  ) !important;
  background-size: 400% 100% !important;
  animation: v29-sunrise 5s linear infinite !important;
  height: 1.5px !important;
}

/* Room card shimmer */
.room-card::after {
  background: linear-gradient(
    90deg,
    transparent, #38bdf8, #f5d97a,
    #e8570a, #f5d97a, #38bdf8, transparent
  ) !important;
  background-size: 300% 100% !important;
  animation: v29-sky 4s linear infinite !important;
  opacity: 0 !important;
  transition: opacity 0.35s !important;
  height: 2px !important;
  top: 0 !important; bottom: auto !important;
}

.room-card:hover::after {
  opacity: 1 !important;
}

/* Fact tile shimmer — animated */
.v22-fact-tile::before {
  background: linear-gradient(
    90deg,
    transparent, #38bdf8, #ffffff,
    #f5d97a, #e8570a, #ffffff,
    #38bdf8, transparent
  ) !important;
  background-size: 400% 100% !important;
  animation: v29-sunrise 5s linear infinite !important;
}

/* Testimonial card shimmer — animated */
.testimonial-card::before {
  background: linear-gradient(
    90deg,
    transparent, #38bdf8, #ffffff,
    #f5d97a, #e8570a, #38bdf8, transparent
  ) !important;
  background-size: 400% 100% !important;
  animation: v29-sky 6s linear infinite !important;
}

/* ─────────────────────────────────────────────────────────────
   4. SECTION LABELS ON DARK — animated gradient pill
───────────────────────────────────────────────────────────── */

.section--dark .section-label,
.v22-about__facts .section-label,
.v22-about__reviews .section-label,
.v22-about__cta .section-label,
.v19-why-section .section-label {
  background: linear-gradient(
    135deg,
    rgba(56,189,248,0.22), rgba(232,87,10,0.16),
    rgba(245,217,122,0.18), rgba(56,189,248,0.22)
  ) !important;
  background-size: 300% 300% !important;
  animation: v29-border-spin 5s ease infinite !important;
  border-color: rgba(56,189,248,0.35) !important;
  color: #7dd3fc !important;
  -webkit-text-fill-color: #7dd3fc !important;
}

/* ─────────────────────────────────────────────────────────────
   5. SUBPAGE POLISH — rooms, dining, contact, events, packages
───────────────────────────────────────────────────────────── */

/* Rooms page — room card title gradient on subpage */
.page-rooms .room-card__title,
.page-template-page-rooms .room-card__title {
  background: linear-gradient(130deg, #0C2040, #1565A8, #38bdf8) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

/* Dining page — card hover shimmer */
.page-dining [class*="dining-card"]:hover,
.page-template-page-dining [class*="dining-card"]:hover {
  box-shadow: 0 14px 44px rgba(232,87,10,0.14), 0 5px 16px rgba(14,26,42,0.08) !important;
  border-color: rgba(232,87,10,0.22) !important;
  transform: translateY(-6px) !important;
}

/* Contact page — form input sky focus ring */
.page-contact input:focus,
.page-contact textarea:focus,
.page-contact select:focus {
  border-color: rgba(56,189,248,0.55) !important;
  box-shadow: 0 0 0 3px rgba(56,189,248,0.14) !important;
  outline: none !important;
}

/* Contact page — submit button sunrise */
.page-contact [type="submit"],
.page-contact .wpcf7-submit {
  background: linear-gradient(135deg, #B52A1F, #e8570a, #f0a830, #e8570a, #B52A1F) !important;
  background-size: 300% 100% !important;
  animation: v29-sunrise 5s ease infinite !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border: none !important;
  border-radius: 100px !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  padding: 0.85rem 2rem !important;
  cursor: pointer !important;
  box-shadow: 0 4px 18px rgba(232,87,10,0.38) !important;
  transition: transform 0.25s cubic-bezier(.34,1.3,.64,1), box-shadow 0.25s !important;
}

.page-contact [type="submit"]:hover,
.page-contact .wpcf7-submit:hover {
  transform: translateY(-3px) scale(1.02) !important;
  box-shadow: 0 10px 32px rgba(232,87,10,0.52) !important;
}

/* Events page — event card hover */
.page-events [class*="event-card"]:hover,
.page-template-page-events [class*="event-card"]:hover {
  box-shadow: 0 16px 48px rgba(56,189,248,0.12), 0 5px 16px rgba(14,26,42,0.08) !important;
  border-color: rgba(56,189,248,0.20) !important;
  transform: translateY(-6px) !important;
}

/* Events page icon gradient */
.page-events [class*="event-icon"],
.page-template-page-events [class*="event-icon"] {
  background: linear-gradient(135deg, rgba(56,189,248,0.14), rgba(232,87,10,0.10)) !important;
  border-color: rgba(56,189,248,0.22) !important;
}

/* Packages page — package card hover */
.page-packages [class*="package-card"]:hover,
.page-template-page-packages [class*="package-card"]:hover {
  box-shadow: 0 18px 52px rgba(56,189,248,0.13), 0 6px 18px rgba(14,26,42,0.09) !important;
  border-color: rgba(56,189,248,0.22) !important;
  transform: translateY(-8px) !important;
}

/* All subpages — animated page hero title */
.page-hero-title {
  background: linear-gradient(
    130deg,
    #38bdf8, #7dd3fc, #ffffff,
    #f5d97a, #e8570a, #7dd3fc,
    #ffffff, #38bdf8
  ) !important;
  background-size: 400% 400% !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  animation: v29-sky 8s ease infinite !important;
  filter: drop-shadow(0 3px 14px rgba(56,189,248,0.20)) !important;
}

/* Booking page — form wrap styling */
.page-booking .booking-widget-wrap,
.page-template-page-booking .booking-widget-wrap {
  border-color: rgba(56,189,248,0.18) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.08),
    0 6px 28px rgba(0,0,0,0.28),
    0 0 0 1px rgba(56,189,248,0.08) !important;
}

/* ─────────────────────────────────────────────────────────────
   6. HEADER NAV — animated active underline
───────────────────────────────────────────────────────────── */

/* Active / current menu item underline — animated */
.nav-menu > li > a::after {
  background: linear-gradient(
    90deg,
    #38bdf8, #f5d97a, #e8570a, #f5d97a, #38bdf8
  ) !important;
  background-size: 300% 100% !important;
  animation: v29-sunrise 4s linear infinite !important;
  height: 2px !important;
}

/* ─────────────────────────────────────────────────────────────
   7. FOOTER — animated border top
───────────────────────────────────────────────────────────── */

.site-footer {
  border-top: 2px solid transparent !important;
  background-clip: padding-box !important;
  position: relative !important;
}

.site-footer::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important; left: 0 !important; right: 0 !important;
  height: 2px !important;
  background: linear-gradient(
    90deg,
    #38bdf8, #f5d97a, #e8570a,
    #ffffff, #e8570a, #f5d97a, #38bdf8
  ) !important;
  background-size: 400% 100% !important;
  animation: v29-sunrise 7s linear infinite !important;
}

/* ─────────────────────────────────────────────────────────────
   8. MOBILE — reduce animations for performance
───────────────────────────────────────────────────────────── */

@media (max-width: 640px) {
  /* Keep header btn animation but simpler */
  .header-book-btn {
    animation-duration: 7s !important;
  }
  /* Simplify scroll bar */
  .scroll-progress-bar {
    animation-duration: 6s !important;
  }
}

/* Respect prefers-reduced-motion */
@media (prefers-reduced-motion: reduce) {
  .header-book-btn,
  .scroll-progress-bar,
  .hero-title,
  .wow-title,
  .stat-number,
  .gold-divider,
  .v19-why__cell::before,
  .v21-rs__card::before,
  .room-card::after,
  .v22-fact-tile::before,
  .testimonial-card::before,
  .page-hero-title {
    animation: none !important;
    background-size: 100% 100% !important;
  }
}

/* ── design-v3_0.css (24,306b) ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v3.0
   ──────────────────────────────────────────────────────────────
   Brand: Sky-blue #38bdf8 · Red #e8570a · White #fff · Gold #f5d97a
   ──────────────────────────────────────────────────────────────
   1. Auto color-motion: ambient background breathing on every
      dark section (aurora-style radial shift)
   2. Ultra-advanced hover: 3D magnetic tilt, depth shadows,
      ripple rings, icon levitation, light-sweep on cards
   3. Background gradient upgrades: rich aurora combos on
      dark sections, warm-cool on light sections
   4. Micro-interactions: button press depth, card reveal lines,
      underline wipe on links, icon orbit on amenity hover
   ══════════════════════════════════════════════════════════════ */

/* ═══════════════════════════════════════════════════════
   KEYFRAME LIBRARY v3.0
═══════════════════════════════════════════════════════ */

/* Aurora shift — background-position radial move */
@keyframes v30-aurora {
  0%   { background-position: 0%   0%;   opacity: 1;    }
  25%  { background-position: 100% 0%;   opacity: 0.85; }
  50%  { background-position: 100% 100%; opacity: 1;    }
  75%  { background-position: 0%   100%; opacity: 0.90; }
  100% { background-position: 0%   0%;   opacity: 1;    }
}

/* Breathe — subtle scale pulse */
@keyframes v30-breathe {
  0%,100% { opacity: 0.60; transform: scale(1.00); }
  50%      { opacity: 0.90; transform: scale(1.06); }
}

/* Orbit — rotate around center */
@keyframes v30-orbit {
  from { transform: rotate(0deg) scale(1.00); }
  to   { transform: rotate(360deg) scale(1.06); }
}

/* Ripple ring expand */
@keyframes v30-ripple {
  0%   { transform: scale(0.80); opacity: 0.75; }
  100% { transform: scale(2.20); opacity: 0;    }
}

/* Wipe-in from left */
@keyframes v30-wipe-in {
  from { transform: scaleX(0); }
  to   { transform: scaleX(1); }
}

/* Float up-down */
@keyframes v30-float {
  0%,100% { transform: translateY(0px); }
  50%      { transform: translateY(-9px); }
}

/* Color drift — hue shift on gradient text */
@keyframes v30-hue-drift {
  0%   { filter: hue-rotate(0deg)   drop-shadow(0 2px 10px rgba(56,189,248,0.18)); }
  33%  { filter: hue-rotate(15deg)  drop-shadow(0 2px 10px rgba(232,87,10,0.22));  }
  66%  { filter: hue-rotate(-10deg) drop-shadow(0 2px 10px rgba(245,217,122,0.20));}
  100% { filter: hue-rotate(0deg)   drop-shadow(0 2px 10px rgba(56,189,248,0.18)); }
}

/* Light sweep across card */
@keyframes v30-lightsweep {
  0%   { left: -80%; }
  100% { left: 130%;  }
}

/* ═══════════════════════════════════════════════════════
   1. AUTO COLOR-MOTION: DARK SECTION BACKGROUNDS
   Aurora-style radial glows drift continuously
═══════════════════════════════════════════════════════ */

/* Why bento section — aurora atmosphere */
.v19-why-section {
  background:
    radial-gradient(ellipse 70% 60% at 10% 30%,  rgba(56,189,248,0.10) 0%, transparent 60%),
    radial-gradient(ellipse 60% 55% at 90% 70%,  rgba(232,87,10,0.09)  0%, transparent 58%),
    radial-gradient(ellipse 50% 45% at 50% 10%,  rgba(245,217,122,0.07) 0%, transparent 55%),
    radial-gradient(ellipse 80% 80% at 50% 50%,  rgba(12,32,64,0.20)   0%, transparent 80%),
    #050c16 !important;
  background-size: 200% 200%, 200% 200%, 200% 200%, 100% 100%, 100% 100% !important;
  animation: v30-aurora 18s ease infinite !important;
}

/* About facts section — deep space aurora */
.v22-about__facts {
  background:
    radial-gradient(ellipse 65% 55% at 15% 50%, rgba(56,189,248,0.09)  0%, transparent 62%),
    radial-gradient(ellipse 55% 50% at 85% 50%, rgba(232,87,10,0.08)   0%, transparent 58%),
    radial-gradient(ellipse 45% 40% at 50% 90%, rgba(245,217,122,0.06) 0%, transparent 55%),
    linear-gradient(170deg, #03060f 0%, #050d1a 40%, #061224 70%, #03080f 100%) !important;
  background-size: 200% 200%, 200% 200%, 200% 200%, 100% 100% !important;
  animation: v30-aurora 22s ease infinite !important;
}

/* Guest reviews section */
.v22-about__reviews {
  background:
    radial-gradient(ellipse 60% 55% at 0% 50%,   rgba(56,189,248,0.08)  0%, transparent 62%),
    radial-gradient(ellipse 55% 50% at 100% 50%,  rgba(232,87,10,0.07)   0%, transparent 58%),
    radial-gradient(ellipse 40% 35% at 50% 0%,   rgba(245,217,122,0.05) 0%, transparent 55%),
    linear-gradient(175deg, #04080f 0%, #060d1a 50%, #04080f 100%) !important;
  background-size: 200% 200%, 200% 200%, 200% 200%, 100% 100% !important;
  animation: v30-aurora 20s ease-in-out infinite reverse !important;
}

/* CTA section */
.v22-about__cta {
  background:
    radial-gradient(ellipse 70% 65% at 50% 50%,  rgba(56,189,248,0.10) 0%, transparent 65%),
    radial-gradient(ellipse 45% 40% at 10% 90%,  rgba(232,87,10,0.08)  0%, transparent 58%),
    radial-gradient(ellipse 40% 35% at 90% 10%,  rgba(245,217,122,0.07) 0%, transparent 55%),
    linear-gradient(145deg, #0C2040 0%, #112d52 35%, #0d2244 70%, #0a1830 100%) !important;
  background-size: 200% 200%, 200% 200%, 200% 200%, 100% 100% !important;
  animation: v30-aurora 16s ease-in-out infinite !important;
}

/* Newsletter */
.newsletter-section {
  background:
    radial-gradient(ellipse 60% 60% at 10% 50%,  rgba(56,189,248,0.08)  0%, transparent 65%),
    radial-gradient(ellipse 55% 55% at 90% 50%,  rgba(232,87,10,0.07)   0%, transparent 60%),
    radial-gradient(ellipse 50% 45% at 50% 95%,  rgba(245,217,122,0.06) 0%, transparent 58%),
    linear-gradient(145deg, #04080f 0%, #06101e 35%, #071525 65%, #04080f 100%) !important;
  background-size: 200% 200%, 200% 200%, 200% 200%, 100% 100% !important;
  animation: v30-aurora 24s ease-in-out infinite reverse !important;
}

/* Light sections — subtle warm-cool breathing */
.v22-about__story,
.v22-about__why {
  background:
    radial-gradient(ellipse 60% 55% at 5%  50%,  rgba(56,189,248,0.05)  0%, transparent 65%),
    radial-gradient(ellipse 50% 45% at 95% 50%,  rgba(232,87,10,0.04)   0%, transparent 60%),
    radial-gradient(ellipse 80% 80% at 50% 50%,  rgba(212,175,55,0.03)  0%, transparent 70%),
    linear-gradient(175deg, #f8f5ee 0%, #fdf9f0 55%, #f4f0e8 100%) !important;
  background-size: 200% 200%, 200% 200%, 100% 100%, 100% 100% !important;
  animation: v30-aurora 28s ease-in-out infinite !important;
}

/* ═══════════════════════════════════════════════════════
   2. ULTRA-ADVANCED HOVER EFFECTS
═══════════════════════════════════════════════════════ */

/* ── ROOM CARDS — 3D magnetic tilt + depth layers ── */
.room-card {
  transform-style: preserve-3d !important;
  transition:
    transform    0.45s cubic-bezier(.25,.46,.45,.94),
    box-shadow   0.45s ease,
    border-color 0.45s !important;
  position: relative !important;
}

/* Ripple ring on hover */
.room-card::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  border-radius: inherit !important;
  border: 1.5px solid rgba(56,189,248,0.35) !important;
  opacity: 0 !important;
  transition: opacity 0.3s !important;
  pointer-events: none !important;
  z-index: 2 !important;
}

.room-card:hover {
  transform: translateY(-12px) rotateX(2.5deg) scale(1.010) !important;
  box-shadow:
    0 32px 80px rgba(56,189,248,0.16),
    0 14px 32px rgba(14,26,42,0.12),
    0  0   0 1.5px rgba(56,189,248,0.18),
    0 0  60px rgba(56,189,248,0.06) !important;
  border-color: rgba(56,189,248,0.22) !important;
}

.room-card:hover::before {
  opacity: 1 !important;
  animation: v30-ripple 0.65s ease-out forwards !important;
}

/* ── STAT ITEMS — 3D lift + color-shift border ── */
.stat-item {
  transform-style: preserve-3d !important;
  transition:
    transform    0.38s cubic-bezier(.25,.46,.45,.94),
    box-shadow   0.38s ease,
    border-color 0.38s !important;
}

.stat-item:hover {
  transform: translateY(-10px) rotateX(3deg) scale(1.015) !important;
  box-shadow:
    0 22px 56px rgba(56,189,248,0.16),
    0  8px 22px rgba(14,26,42,0.10),
    0  0   0  1.5px rgba(56,189,248,0.22),
    0  0  40px rgba(56,189,248,0.08) !important;
  border-color: rgba(56,189,248,0.25) !important;
}

.stat-item:hover .stat-number {
  animation-duration: 3s !important;  /* speed up color cycle on hover */
  filter: drop-shadow(0 4px 16px rgba(56,189,248,0.35)) !important;
}

/* ── AMENITY CARDS — icon orbit + glass depth ── */
.amenity-card {
  transform-style: preserve-3d !important;
  transition:
    transform    0.40s cubic-bezier(.25,.46,.45,.94),
    box-shadow   0.40s ease,
    border-color 0.40s,
    background   0.40s !important;
}

.amenity-card:hover {
  transform: translateY(-8px) rotateY(3deg) scale(1.012) !important;
  box-shadow:
    0 18px 52px rgba(56,189,248,0.13),
    0  6px 18px rgba(14,26,42,0.08),
    0  0   0 1.5px rgba(56,189,248,0.18),
    -8px 0 24px rgba(56,189,248,0.06) !important;
  border-color: rgba(56,189,248,0.24) !important;
  background: linear-gradient(
    160deg,
    rgba(240,249,255,1.00) 0%,
    rgba(255,255,255,1.00) 55%,
    rgba(255,247,237,0.98) 100%
  ) !important;
}

/* Icon: orbit on hover */
.amenity-card:hover .amenity-icon {
  animation: v30-orbit 4s linear infinite !important;
  filter: drop-shadow(0 6px 16px rgba(56,189,248,0.40)) !important;
}

/* ── TESTIMONIAL CARDS — cinematic glass morph ── */
.testimonial-card {
  transform-style: preserve-3d !important;
  transition:
    transform    0.42s cubic-bezier(.25,.46,.45,.94),
    box-shadow   0.42s ease,
    border-color 0.42s,
    background   0.42s !important;
  position: relative !important;
  overflow: hidden !important;
}

/* Light sweep inside testimonial on hover */
.testimonial-card .v30-sweep {
  position: absolute !important;
  top: -50% !important;
  left: -80% !important;
  width: 55% !important;
  height: 200% !important;
  background: linear-gradient(
    105deg,
    transparent 30%,
    rgba(56,189,248,0.10) 50%,
    transparent 70%
  ) !important;
  transform: rotate(-12deg) !important;
  pointer-events: none !important;
  z-index: 0 !important;
}

.testimonial-card:hover {
  transform: translateY(-10px) rotateX(2deg) scale(1.014) !important;
  box-shadow:
    0 26px 68px rgba(56,189,248,0.14),
    0 10px 28px rgba(14,26,42,0.10),
    0  0   0 1.5px rgba(56,189,248,0.16),
    0  0  50px rgba(56,189,248,0.07) !important;
  border-color: rgba(56,189,248,0.20) !important;
  background: linear-gradient(
    160deg,
    rgba(240,249,255,0.99) 0%,
    rgba(255,255,255,0.99) 50%,
    rgba(255,247,237,0.97) 100%
  ) !important;
}

.testimonial-card:hover .v30-sweep {
  animation: v30-lightsweep 0.70s ease forwards !important;
}

/* ── v22 FACT TILES — aurora depth hover ── */
.v22-fact-tile {
  transform-style: preserve-3d !important;
  transition:
    transform    0.38s cubic-bezier(.25,.46,.45,.94),
    box-shadow   0.38s ease,
    border-color 0.38s,
    background   0.38s !important;
  position: relative !important;
  overflow: hidden !important;
}

.v22-fact-tile:hover {
  transform: translateY(-9px) rotateX(3deg) scale(1.014) !important;
  box-shadow:
    0 22px 60px rgba(0,0,0,0.42),
    0  8px 24px rgba(56,189,248,0.14),
    0  0   0 1.5px rgba(56,189,248,0.22),
    0  0  40px rgba(56,189,248,0.08) !important;
  border-color: rgba(56,189,248,0.30) !important;
  background: linear-gradient(
    145deg,
    rgba(56,189,248,0.10) 0%,
    rgba(255,255,255,0.06) 50%,
    rgba(232,87,10,0.07) 100%
  ) !important;
}

.v22-fact-tile:hover .v22-fact-tile__icon {
  animation: v30-float 2.5s ease-in-out infinite !important;
  filter: drop-shadow(0 6px 18px rgba(56,189,248,0.45)) !important;
}

/* ── v22 WHY CARDS — magnetic slide + left glow ── */
.v22-why-card {
  transition:
    transform    0.35s cubic-bezier(.25,.46,.45,.94),
    box-shadow   0.35s ease,
    border-color 0.35s,
    background   0.35s !important;
}

.v22-why-card:hover {
  transform: translateX(10px) !important;
  border-color: rgba(56,189,248,0.28) !important;
  box-shadow:
    0 10px 38px rgba(56,189,248,0.12),
    -6px 0 0 rgba(56,189,248,0.25),
    0  3px 12px rgba(14,26,42,0.06) !important;
  background: linear-gradient(
    155deg,
    rgba(240,249,255,0.98) 0%,
    rgba(255,255,255,0.98) 100%
  ) !important;
}

.v22-why-card:hover .v22-why-card__icon-wrap {
  transform: scale(1.14) rotate(-6deg) !important;
  background: linear-gradient(135deg, rgba(56,189,248,0.22), rgba(232,87,10,0.16)) !important;
  border-color: rgba(56,189,248,0.38) !important;
  box-shadow: 0 0 20px rgba(56,189,248,0.22) !important;
}

/* ── v22 REVIEW CARDS — deep glass + avatar levitation ── */
.v22-review-card {
  transform-style: preserve-3d !important;
  transition:
    transform    0.40s cubic-bezier(.25,.46,.45,.94),
    box-shadow   0.40s ease,
    border-color 0.40s !important;
}

.v22-review-card:hover {
  transform: translateY(-10px) rotateX(2deg) scale(1.012) !important;
  border-color: rgba(56,189,248,0.25) !important;
  box-shadow:
    0 24px 64px rgba(0,0,0,0.45),
    0  8px 24px rgba(56,189,248,0.16),
    0  0   0 1.5px rgba(56,189,248,0.16),
    0  0  45px rgba(56,189,248,0.08) !important;
}

.v22-review-card:hover .v22-review-card__avatar {
  animation: v30-float 2.8s ease-in-out infinite !important;
  box-shadow:
    0 0 0 4px rgba(56,189,248,0.30),
    0 6px 20px rgba(56,189,248,0.25) !important;
}

/* ── GALLERY ITEMS — magnetic tilt ── */
.gallery-item {
  transform-style: preserve-3d !important;
  transition:
    transform  0.42s cubic-bezier(.25,.46,.45,.94),
    box-shadow 0.42s ease !important;
}

.gallery-item:hover {
  transform: scale(1.04) rotateX(1.5deg) rotateY(-1.5deg) !important;
  box-shadow:
    0 24px 64px rgba(56,189,248,0.20),
    0 10px 28px rgba(0,0,0,0.18),
    0  0   0  2px rgba(56,189,248,0.22) !important;
  z-index: 3 !important;
}

/* ── ABOUT SNIPPET IMAGE — parallax depth ── */
.about-snippet__image img {
  transition:
    transform 0.60s cubic-bezier(.25,.46,.45,.94),
    filter    0.60s ease,
    box-shadow 0.60s ease !important;
}

.about-snippet__image:hover img {
  transform: scale(1.035) translateY(-4px) !important;
  filter: brightness(1.06) saturate(1.10) !important;
  box-shadow:
    0 24px 64px rgba(56,189,248,0.18),
    0 10px 30px rgba(14,26,42,0.12) !important;
}

/* ── BENTO CELLS — deeper 3D + aurora glow on hover ── */
.v19-why__cell {
  transition:
    transform    0.50s cubic-bezier(.22,.68,0,1.2),
    box-shadow   0.50s ease,
    border-color 0.40s !important;
}

.v19-why__cell:hover {
  transform: translateY(-10px) rotateX(3deg) scale(1.015) !important;
  box-shadow:
    0 30px 80px rgba(0,0,0,0.48),
    0 10px 28px rgba(56,189,248,0.14),
    0  0   0 1.5px rgba(212,175,55,0.28),
    0  0  60px rgba(56,189,248,0.07) !important;
  border-color: rgba(212,175,55,0.32) !important;
}

.v19-why__cell--hero:hover {
  transform: translateY(-8px) rotateX(2deg) scale(1.008) !important;
  box-shadow:
    0 36px 90px rgba(0,0,0,0.55),
    0 14px 36px rgba(56,189,248,0.16),
    0  0   0 2px rgba(212,175,55,0.38),
    0  0  80px rgba(56,189,248,0.10) !important;
}

.v19-why__cell--cta:hover {
  transform: translateY(-10px) scale(1.025) !important;
  box-shadow:
    0 24px 64px rgba(232,87,10,0.55),
    0  0   0 2px rgba(232,87,10,0.50),
    0  0  50px rgba(232,87,10,0.20) !important;
}

.v19-why__cell--stat:hover,
.v19-why__cell--stat-alt:hover {
  transform: translateY(-8px) scale(1.020) !important;
}

/* Icon levitation on why cells */
.v19-why__cell:hover .v19-why__cell-icon {
  animation: v30-float 2.4s ease-in-out infinite !important;
  filter: drop-shadow(0 8px 18px rgba(56,189,248,0.35)) !important;
}

/* Stat number — fast color-cycle on cell hover */
.v19-why__cell:hover .v19-why__stat-num {
  animation-duration: 2.5s !important;
}

/* ── RESERVE SECTION CARDS ── */
.v21-rs__card {
  transform-style: preserve-3d !important;
  transition:
    transform    0.42s cubic-bezier(.22,.68,0,1.2),
    box-shadow   0.42s ease,
    border-color 0.35s !important;
}

.v21-rs__card:hover {
  transform: translateY(-7px) rotateX(2deg) scale(1.010) !important;
}

.v21-rs__card--book:hover {
  transform: translateY(-10px) rotateX(2.5deg) scale(1.014) !important;
  box-shadow:
    0 28px 72px rgba(0,0,0,0.52),
    0  8px 24px rgba(212,175,55,0.20),
    0  0   0 2px rgba(212,175,55,0.28),
    0  0  60px rgba(212,175,55,0.12) !important;
}

/* ── AVAILABILITY BANNER — lift + sky aurora ── */
.availability-banner__inner {
  transition:
    transform    0.35s cubic-bezier(.25,.46,.45,.94),
    box-shadow   0.35s ease,
    border-color 0.35s !important;
}

.availability-banner__inner:hover {
  transform: translateY(-4px) scale(1.005) !important;
  box-shadow:
    0 18px 56px rgba(56,189,248,0.16),
    0  6px 20px rgba(14,26,42,0.08),
    0  0   0 1.5px rgba(56,189,248,0.18),
    0  0  40px rgba(56,189,248,0.07) !important;
  border-color: rgba(56,189,248,0.30) !important;
}

/* ─────────────────────────────────────────────────────────────
   3. BACKGROUND GRADIENT UPGRADES — richer aurora combos
───────────────────────────────────────────────────────────── */

/* Stats section — subtle warm cream with sky tint */
.stats-section,
section:has(.stats-grid) {
  background: linear-gradient(
    175deg,
    #f0f9ff  0%,
    #e0f2fe 15%,
    #f8f5ee 45%,
    #fff7ed 80%,
    #fef3c7 100%
  ) !important;
}

/* Final CTA — sky-to-warm aurora */
.final-cta-section {
  background:
    radial-gradient(ellipse 70% 70% at 50% 0%,   rgba(56,189,248,0.10) 0%, transparent 65%),
    radial-gradient(ellipse 50% 45% at 0%  100%,  rgba(232,87,10,0.07)  0%, transparent 58%),
    radial-gradient(ellipse 50% 45% at 100% 0%,   rgba(245,217,122,0.07) 0%, transparent 55%),
    linear-gradient(160deg, #f0f9ff 0%, #e0f2fe 20%, #f8f5ee 50%, #fff7ed 80%, #fef3c7 100%) !important;
  background-size: 200% 200%, 200% 200%, 200% 200%, 100% 100% !important;
  animation: v30-aurora 26s ease-in-out infinite !important;
}

/* About story section — warmth with sky hints */
.v22-about__story {
  position: relative !important;
  overflow: hidden !important;
}

/* Fact tile base — richer glass with aurora hint */
.v22-fact-tile {
  background: linear-gradient(
    145deg,
    rgba(56,189,248,0.07)  0%,
    rgba(255,255,255,0.04)  50%,
    rgba(232,87,10,0.05)   100%
  ) !important;
  border-color: rgba(56,189,248,0.13) !important;
  box-shadow:
    inset 0 1px 0 rgba(56,189,248,0.08),
    0 4px 20px rgba(0,0,0,0.22) !important;
}

/* Review card base — deeper glass */
.v22-review-card {
  background: linear-gradient(
    145deg,
    rgba(56,189,248,0.05)  0%,
    rgba(255,255,255,0.04)  50%,
    rgba(232,87,10,0.04)   100%
  ) !important;
  box-shadow:
    inset 0 1px 0 rgba(56,189,248,0.07),
    0 4px 20px rgba(0,0,0,0.24) !important;
}

/* ─────────────────────────────────────────────────────────────
   4. MICRO-INTERACTIONS
───────────────────────────────────────────────────────────── */

/* Underline wipe on footer links */
.footer-menu a {
  position: relative !important;
  overflow: hidden !important;
}

.footer-menu a::after {
  content: '' !important;
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 1px !important;
  background: linear-gradient(90deg, #38bdf8, #e8570a) !important;
  transform: scaleX(0) !important;
  transform-origin: left !important;
  transition: transform 0.30s ease !important;
}

.footer-menu a:hover::after {
  transform: scaleX(1) !important;
}

/* Hue drift on section titles when visible */
.section-title {
  transition: filter 0.40s ease !important;
}

.section:hover .section-title {
  animation: v30-hue-drift 6s ease-in-out infinite !important;
}

/* Section label float on hover */
.section-label {
  transition:
    transform  0.25s cubic-bezier(.34,1.3,.64,1),
    box-shadow 0.25s,
    background 0.25s !important;
}

.section-label:hover {
  transform: translateY(-2px) scale(1.05) !important;
}

/* About snippet badge — continuous float */
.v22-about__story-badge,
.about-snippet__badge {
  animation: v30-float 3.5s ease-in-out infinite !important;
  will-change: transform !important;
}

/* Book Now badge subtle color-cycle glow */
.header-book-btn {
  /* Inherit the animated gradient from v2.9,
     add dynamic outer ring that breathes */
  will-change: transform !important;
}

/* Perk checkmarks — sky pulse on hover */
.v21-rs__perk svg {
  transition: transform 0.25s cubic-bezier(.34,1.5,.64,1), color 0.25s !important;
}

.v21-rs__card--why:hover .v21-rs__perk svg {
  transform: scale(1.30) !important;
  color: #38bdf8 !important;
  filter: drop-shadow(0 2px 6px rgba(56,189,248,0.45)) !important;
}

/* Trust bar icons — float on section hover */
.v21-reserve-section:hover .v21-rs__trust-item svg {
  animation: v30-float 2s ease-in-out infinite !important;
}

/* Room badge — bob on card hover */
.room-card:hover .room-card__badge {
  animation: v30-float 2.2s ease-in-out infinite !important;
  box-shadow:
    0 6px 18px rgba(232,87,10,0.50),
    0 0 0 2px rgba(232,87,10,0.20) !important;
}

/* Bento facility pills — wave on cell hover */
.v19-why__cell:hover .v19-why__pill {
  transition: transform 0.22s ease, background 0.22s, border-color 0.22s !important;
}

.v19-why__cell:hover .v19-why__pill:nth-child(odd) {
  transform: translateY(-2px) !important;
}

.v19-why__cell:hover .v19-why__pill:nth-child(even) {
  transform: translateY(2px) !important;
}

/* ─────────────────────────────────────────────────────────────
   5. ACCESSIBILITY — reduce motion
───────────────────────────────────────────────────────────── */

@media (prefers-reduced-motion: reduce) {
  .v19-why-section,
  .v22-about__facts,
  .v22-about__reviews,
  .v22-about__cta,
  .newsletter-section,
  .v22-about__story,
  .v22-about__why,
  .final-cta-section {
    animation: none !important;
    background-size: 100% 100% !important;
  }
  .amenity-card:hover .amenity-icon,
  .v22-fact-tile:hover .v22-fact-tile__icon,
  .v22-review-card:hover .v22-review-card__avatar,
  .v19-why__cell:hover .v19-why__cell-icon,
  .v22-about__story-badge,
  .about-snippet__badge,
  .room-card:hover .room-card__badge,
  .v21-reserve-section:hover .v21-rs__trust-item svg {
    animation: none !important;
  }
  * {
    transition-duration: 0.01ms !important;
  }
}

/* ── design-v3_2.css — Subpage classes + improvements ── */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v3.2
   ──────────────────────────────────────────────────────────────
   Improvements found in audit:
   1. Subpage cards — replace inline styles with proper CSS classes
   2. Section label colour fix — remove hardcoded #ff9f43 inline
   3. Rooms page — modern card grid with gradient hover
   4. Dining page — feature list items styled with brand colours
   5. Events page — event venue cards with 3D hover
   6. Contact page — contact detail cards modernised
   7. Packages page — package cards with aurora hover
   8. Gallery page — filter pill active state + image reveal
   9. Booking page — widget card improvement
   10. Global — VAT banner, dining split, shared utilities
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   1. GLOBAL SECTION LABEL — override inline colour
   All section-label inline style="color:#ff9f43" replaced
───────────────────────────────────────────────────────────── */

/* On light page backgrounds */
.page-hero-content .section-label,
.section .section-label,
.section--alt .section-label {
  color: #0369a1 !important;
  -webkit-text-fill-color: #0369a1 !important;
  background: linear-gradient(135deg, rgba(56,189,248,0.12), rgba(14,165,233,0.08)) !important;
  border: 1px solid rgba(56,189,248,0.28) !important;
}

/* On page-hero (dark overlay) — sky-blue */
.page-hero .section-label {
  color: #7dd3fc !important;
  -webkit-text-fill-color: #7dd3fc !important;
  background: linear-gradient(135deg, rgba(56,189,248,0.18), rgba(232,87,10,0.12)) !important;
  border-color: rgba(56,189,248,0.35) !important;
  -webkit-text-fill-color: #7dd3fc !important;
}

/* ─────────────────────────────────────────────────────────────
   2. VAT NOTICE BANNER — modern styled strip
───────────────────────────────────────────────────────────── */

.vat-notice-bar {
  background: linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 50%, #f8f5ee 100%) !important;
  border-top: 2px solid transparent !important;
  border-image: linear-gradient(90deg, #38bdf8, #f5d97a, #e8570a) 1 !important;
  padding: 0.9rem 2rem !important;
  text-align: center !important;
}

.vat-notice-bar p {
  margin: 0 !important;
  font-size: 0.82rem !important;
  color: rgba(14,26,42,0.68) !important;
}

.vat-notice-bar strong {
  color: #0C2040 !important;
  background: linear-gradient(135deg, #0C2040, #1565A8) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

/* ─────────────────────────────────────────────────────────────
   3. ROOMS PAGE — category cards
───────────────────────────────────────────────────────────── */

/* Room category card — replaces inline style */
.v32-room-card {
  background: #ffffff !important;
  border-radius: 20px !important;
  overflow: hidden !important;
  box-shadow: 0 4px 20px rgba(14,26,42,0.07), 0 1px 4px rgba(14,26,42,0.04) !important;
  display: flex !important;
  flex-direction: column !important;
  position: relative !important;
  border: 1px solid rgba(14,26,42,0.06) !important;
  transition:
    transform    0.40s cubic-bezier(.25,.46,.45,.94),
    box-shadow   0.40s ease,
    border-color 0.40s !important;
}

.v32-room-card::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important; left: 0 !important; right: 0 !important;
  height: 2px !important;
  background: linear-gradient(90deg, #38bdf8, #f5d97a, #e8570a) !important;
  background-size: 300% 100% !important;
  animation: v29-sunrise 5s linear infinite !important;
  z-index: 1 !important;
}

.v32-room-card:hover {
  transform: translateY(-8px) !important;
  box-shadow:
    0 20px 56px rgba(56,189,248,0.13),
    0 8px 20px rgba(14,26,42,0.09),
    0 0 0 1px rgba(56,189,248,0.16) !important;
  border-color: rgba(56,189,248,0.18) !important;
}

.v32-room-card__image {
  height: 220px !important;
  overflow: hidden !important;
  flex-shrink: 0 !important;
  position: relative !important;
}

.v32-room-card__image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
  transition: transform 0.60s cubic-bezier(.25,.46,.45,.94), filter 0.60s !important;
}

.v32-room-card:hover .v32-room-card__image img {
  transform: scale(1.08) !important;
  filter: brightness(1.06) saturate(1.08) !important;
}

.v32-room-card__badge {
  position: absolute !important;
  top: 1rem !important;
  left: 1rem !important;
  background: linear-gradient(135deg, #B52A1F, #e8570a, #f0a830) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-size: 0.58rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  padding: 0.28rem 0.75rem !important;
  border-radius: 50px !important;
  box-shadow: 0 3px 10px rgba(232,87,10,0.35) !important;
}

.v32-room-card__body {
  padding: 1.75rem !important;
  display: flex !important;
  flex-direction: column !important;
  flex: 1 !important;
}

.v32-room-card__category {
  font-size: 0.60rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  background: linear-gradient(135deg, #0ea5e9, #38bdf8) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  display: block !important;
  margin-bottom: 0.4rem !important;
}

.v32-room-card__title {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 1.15rem !important;
  font-weight: 700 !important;
  color: #0C2040 !important;
  -webkit-text-fill-color: #0C2040 !important;
  margin: 0 0 0.6rem !important;
  line-height: 1.22 !important;
  background: linear-gradient(130deg, #0C2040, #1565A8) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

.v32-room-card__desc {
  font-size: 0.82rem !important;
  line-height: 1.78 !important;
  color: rgba(14,26,42,0.60) !important;
  -webkit-text-fill-color: rgba(14,26,42,0.60) !important;
  margin: 0 0 1.25rem !important;
  flex: 1 !important;
}

.v32-room-card__amenities {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 0.35rem !important;
  margin-bottom: 1.25rem !important;
}

.v32-room-card__amenity {
  font-size: 0.64rem !important;
  font-weight: 600 !important;
  padding: 0.24rem 0.62rem !important;
  background: linear-gradient(135deg, rgba(56,189,248,0.10), rgba(232,87,10,0.07)) !important;
  border: 1px solid rgba(56,189,248,0.18) !important;
  border-radius: 50px !important;
  color: #0369a1 !important;
  -webkit-text-fill-color: #0369a1 !important;
  transition: background 0.22s, transform 0.22s !important;
}

.v32-room-card:hover .v32-room-card__amenity {
  background: linear-gradient(135deg, rgba(56,189,248,0.16), rgba(232,87,10,0.11)) !important;
  transform: translateY(-1px) !important;
}

.v32-room-card__price {
  display: flex !important;
  align-items: baseline !important;
  gap: 0.25rem !important;
  margin-bottom: 1.25rem !important;
  padding: 0.75rem 1rem !important;
  background: linear-gradient(135deg, rgba(245,217,122,0.12), rgba(232,87,10,0.08)) !important;
  border: 1px solid rgba(245,217,122,0.22) !important;
  border-radius: 10px !important;
}

.v32-room-card__price-amount {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 1.5rem !important;
  font-weight: 700 !important;
  background: linear-gradient(135deg, #e8570a, #f0a830, #f5d97a) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  line-height: 1 !important;
}

.v32-room-card__price-label {
  font-size: 0.66rem !important;
  color: rgba(14,26,42,0.50) !important;
  -webkit-text-fill-color: rgba(14,26,42,0.50) !important;
}

/* ─────────────────────────────────────────────────────────────
   4. DINING PAGE — feature list + cards
───────────────────────────────────────────────────────────── */

.v32-dining-feature-list {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 2rem !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 0.65rem !important;
}

.v32-dining-feature-item {
  display: flex !important;
  align-items: flex-start !important;
  gap: 0.75rem !important;
  font-size: 0.88rem !important;
  line-height: 1.62 !important;
  color: rgba(14,26,42,0.65) !important;
  -webkit-text-fill-color: rgba(14,26,42,0.65) !important;
  padding: 0.65rem 0 !important;
  border-bottom: 1px solid rgba(14,26,42,0.06) !important;
  transition: color 0.22s !important;
}

.v32-dining-feature-item:last-child {
  border-bottom: none !important;
}

.v32-dining-feature-item:hover {
  color: rgba(14,26,42,0.85) !important;
  -webkit-text-fill-color: rgba(14,26,42,0.85) !important;
}

.v32-dining-feature-icon {
  flex-shrink: 0 !important;
  width: 22px !important;
  height: 22px !important;
  border-radius: 50% !important;
  background: linear-gradient(135deg, rgba(56,189,248,0.14), rgba(232,87,10,0.10)) !important;
  border: 1px solid rgba(56,189,248,0.22) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #0ea5e9 !important;
  font-size: 0.72rem !important;
  margin-top: 0.12rem !important;
  transition: transform 0.25s cubic-bezier(.34,1.3,.64,1), background 0.22s !important;
}

.v32-dining-feature-item:hover .v32-dining-feature-icon {
  transform: scale(1.15) !important;
  background: linear-gradient(135deg, rgba(56,189,248,0.22), rgba(232,87,10,0.16)) !important;
}

/* ─────────────────────────────────────────────────────────────
   5. EVENTS PAGE — venue cards
───────────────────────────────────────────────────────────── */

.v32-event-card {
  background: #ffffff !important;
  border-radius: 20px !important;
  overflow: hidden !important;
  box-shadow: 0 4px 20px rgba(14,26,42,0.07) !important;
  display: flex !important;
  flex-direction: column !important;
  border: 1px solid rgba(14,26,42,0.06) !important;
  transition:
    transform    0.40s cubic-bezier(.25,.46,.45,.94),
    box-shadow   0.40s,
    border-color 0.40s !important;
  position: relative !important;
}

.v32-event-card::after {
  content: '' !important;
  position: absolute !important;
  top: 0 !important; left: 0 !important; right: 0 !important;
  height: 2px !important;
  background: linear-gradient(90deg, #38bdf8, #f5d97a, #e8570a) !important;
  background-size: 300% 100% !important;
  animation: v29-sunrise 6s linear infinite !important;
}

.v32-event-card:hover {
  transform: translateY(-8px) !important;
  box-shadow:
    0 22px 60px rgba(56,189,248,0.13),
    0 8px 22px rgba(14,26,42,0.09),
    0 0 0 1px rgba(56,189,248,0.18) !important;
  border-color: rgba(56,189,248,0.20) !important;
}

.v32-event-card__image {
  position: relative !important;
  height: 260px !important;
  overflow: hidden !important;
  flex-shrink: 0 !important;
}

.v32-event-card__image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  transition: transform 0.60s cubic-bezier(.25,.46,.45,.94), filter 0.60s !important;
}

.v32-event-card:hover .v32-event-card__image img {
  transform: scale(1.07) !important;
  filter: brightness(1.05) saturate(1.08) !important;
}

.v32-event-card__badge {
  position: absolute !important;
  bottom: 1rem !important;
  left: 1rem !important;
  background: linear-gradient(135deg, #B52A1F, #e8570a) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-size: 0.58rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  padding: 0.28rem 0.75rem !important;
  border-radius: 50px !important;
}

.v32-event-card__body {
  padding: 2rem !important;
  display: flex !important;
  flex-direction: column !important;
  flex: 1 !important;
}

.v32-event-card__title {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 1.35rem !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  margin: 0 0 0.85rem !important;
  background: linear-gradient(130deg, #0C2040, #1565A8) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

.v32-event-card__desc {
  font-size: 0.86rem !important;
  line-height: 1.80 !important;
  color: rgba(14,26,42,0.62) !important;
  -webkit-text-fill-color: rgba(14,26,42,0.62) !important;
  margin: 0 0 1.5rem !important;
}

.v32-event-features {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 0.45rem !important;
  margin-bottom: 1.75rem !important;
  flex: 1 !important;
}

.v32-event-feature {
  display: flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
  font-size: 0.76rem !important;
  color: rgba(14,26,42,0.62) !important;
  -webkit-text-fill-color: rgba(14,26,42,0.62) !important;
  line-height: 1.4 !important;
}

.v32-event-feature::before {
  content: '✦' !important;
  color: #e8570a !important;
  -webkit-text-fill-color: #e8570a !important;
  flex-shrink: 0 !important;
  font-size: 0.62rem !important;
}

/* ─────────────────────────────────────────────────────────────
   6. CONTACT PAGE — contact detail cards
───────────────────────────────────────────────────────────── */

.v32-contact-card {
  display: flex !important;
  gap: 1rem !important;
  align-items: flex-start !important;
  padding: 1.25rem 1.5rem !important;
  background: linear-gradient(135deg, #f8f5ee, #fdf9f0) !important;
  border-radius: 16px !important;
  border-left: 3px solid transparent !important;
  border-image: linear-gradient(180deg, #38bdf8, #f5d97a, #e8570a) 1 !important;
  transition: transform 0.28s cubic-bezier(.34,1.3,.64,1), box-shadow 0.28s !important;
  position: relative !important;
  overflow: hidden !important;
}

.v32-contact-card::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(135deg, rgba(56,189,248,0.04), transparent) !important;
  opacity: 0 !important;
  transition: opacity 0.28s !important;
}

.v32-contact-card:hover {
  transform: translateX(6px) !important;
  box-shadow: 0 6px 24px rgba(56,189,248,0.10), -4px 0 0 rgba(56,189,248,0.25) !important;
}

.v32-contact-card:hover::before {
  opacity: 1 !important;
}

.v32-contact-card__icon {
  font-size: 1.6rem !important;
  flex-shrink: 0 !important;
  margin-top: 0.1rem !important;
  transition: transform 0.30s cubic-bezier(.34,1.3,.64,1) !important;
  position: relative !important;
  z-index: 1 !important;
}

.v32-contact-card:hover .v32-contact-card__icon {
  transform: scale(1.15) rotate(-5deg) !important;
}

.v32-contact-card__label {
  display: block !important;
  font-size: 0.62rem !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.12em !important;
  background: linear-gradient(135deg, #0C2040, #1565A8) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  margin-bottom: 0.4rem !important;
  position: relative !important;
  z-index: 1 !important;
}

.v32-contact-card__value {
  font-size: 0.86rem !important;
  line-height: 1.65 !important;
  color: rgba(14,26,42,0.68) !important;
  -webkit-text-fill-color: rgba(14,26,42,0.68) !important;
  position: relative !important;
  z-index: 1 !important;
}

.v32-contact-card__value a {
  color: #e8570a !important;
  -webkit-text-fill-color: #e8570a !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  transition: color 0.22s !important;
}

.v32-contact-card__value a:hover {
  color: #38bdf8 !important;
  -webkit-text-fill-color: #38bdf8 !important;
}

/* ─────────────────────────────────────────────────────────────
   7. PACKAGES PAGE — package cards
───────────────────────────────────────────────────────────── */

.v32-package-card {
  background: #ffffff !important;
  border-radius: 20px !important;
  padding: 2.25rem !important;
  box-shadow: 0 4px 20px rgba(14,26,42,0.07) !important;
  display: flex !important;
  flex-direction: column !important;
  border-top: 3px solid transparent !important;
  position: relative !important;
  overflow: hidden !important;
  transition:
    transform    0.38s cubic-bezier(.25,.46,.45,.94),
    box-shadow   0.38s ease,
    border-color 0.38s !important;
}

.v32-package-card::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important; left: 0 !important; right: 0 !important;
  height: 3px !important;
  background: linear-gradient(90deg, #38bdf8, #f5d97a, #e8570a) !important;
  background-size: 300% 100% !important;
  animation: v29-sunrise 5s linear infinite !important;
}

.v32-package-card:hover {
  transform: translateY(-10px) scale(1.010) !important;
  box-shadow:
    0 24px 64px rgba(56,189,248,0.14),
    0 8px 22px rgba(14,26,42,0.09),
    0 0 0 1px rgba(56,189,248,0.14) !important;
}

.v32-package-card__icon {
  font-size: 2.5rem !important;
  margin-bottom: 0.9rem !important;
  display: block !important;
  transition: transform 0.35s cubic-bezier(.34,1.5,.64,1) !important;
}

.v32-package-card:hover .v32-package-card__icon {
  transform: scale(1.18) rotate(-5deg) !important;
}

.v32-package-card__duration {
  display: block !important;
  font-size: 0.60rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  background: linear-gradient(135deg, #e8570a, #f0a830) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  margin-bottom: 0.4rem !important;
}

.v32-package-card__title {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 1.22rem !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  margin: 0 0 0.75rem !important;
  background: linear-gradient(130deg, #0C2040, #1565A8) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

.v32-package-card__desc {
  font-size: 0.84rem !important;
  line-height: 1.80 !important;
  color: rgba(14,26,42,0.60) !important;
  -webkit-text-fill-color: rgba(14,26,42,0.60) !important;
  margin: 0 0 1.25rem !important;
  flex: 1 !important;
}

.v32-package-features {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 1.5rem !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 0.4rem !important;
}

.v32-package-feature {
  display: flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
  font-size: 0.78rem !important;
  color: rgba(14,26,42,0.65) !important;
  -webkit-text-fill-color: rgba(14,26,42,0.65) !important;
  transition: color 0.2s, transform 0.2s !important;
}

.v32-package-card:hover .v32-package-feature {
  color: rgba(14,26,42,0.80) !important;
  -webkit-text-fill-color: rgba(14,26,42,0.80) !important;
}

.v32-package-feature::before {
  content: '✦' !important;
  background: linear-gradient(135deg, #e8570a, #38bdf8) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  flex-shrink: 0 !important;
  font-size: 0.60rem !important;
}

.v32-package-card__price {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 1.12rem !important;
  font-weight: 700 !important;
  background: linear-gradient(135deg, #0C2040, #1565A8, #38bdf8) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  margin-bottom: 1.25rem !important;
  display: block !important;
}

/* ─────────────────────────────────────────────────────────────
   8. DINING SPLIT LAYOUT
───────────────────────────────────────────────────────────── */

.v32-dining-split {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 4.5rem !important;
  align-items: center !important;
}

.v32-dining-img-wrap {
  position: relative !important;
  border-radius: 22px !important;
  overflow: hidden !important;
}

.v32-dining-img-wrap img {
  width: 100% !important;
  border-radius: 22px !important;
  box-shadow: 0 20px 56px rgba(14,26,42,0.14) !important;
  transition: transform 0.55s cubic-bezier(.25,.46,.45,.94), filter 0.55s !important;
}

.v32-dining-img-wrap:hover img {
  transform: scale(1.035) !important;
  filter: brightness(1.05) saturate(1.08) !important;
}

/* ─────────────────────────────────────────────────────────────
   9. ROOMS PAGE — grid fix
───────────────────────────────────────────────────────────── */

.v32-rooms-grid {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 2rem !important;
}

@media (max-width: 768px) {
  .v32-rooms-grid { grid-template-columns: 1fr !important; }
  .v32-dining-split,
  .v32-events-grid { grid-template-columns: 1fr !important; gap: 2.5rem !important; }
  .v32-event-features { grid-template-columns: 1fr !important; }
}

.v32-events-grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 2.5rem !important;
}

/* ─────────────────────────────────────────────────────────────
   10. BOOKING PAGE
───────────────────────────────────────────────────────────── */

.v32-booking-wrap {
  background: rgba(255,255,255,0.96) !important;
  border: 1px solid rgba(56,189,248,0.16) !important;
  border-radius: 22px !important;
  padding: 2.5rem !important;
  box-shadow:
    0 8px 36px rgba(56,189,248,0.10),
    0 2px 10px rgba(14,26,42,0.06) !important;
  position: relative !important;
  overflow: hidden !important;
  transition: border-color 0.30s, box-shadow 0.30s !important;
}

.v32-booking-wrap::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important; left: 0 !important; right: 0 !important;
  height: 2px !important;
  background: linear-gradient(90deg, #38bdf8, #f5d97a, #e8570a) !important;
  background-size: 300% 100% !important;
  animation: v29-sunrise 5s linear infinite !important;
}

.v32-booking-wrap:hover {
  border-color: rgba(56,189,248,0.28) !important;
  box-shadow:
    0 14px 50px rgba(56,189,248,0.14),
    0 4px 16px rgba(14,26,42,0.08) !important;
}

/* ─────────────────────────────────────────────────────────────
   11. GALLERY PAGE — filter improvements
───────────────────────────────────────────────────────────── */

.gallery-filters {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 0.6rem !important;
  justify-content: center !important;
  margin-bottom: 2.5rem !important;
}

.gallery-section-title {
  background: linear-gradient(130deg, #0C2040, #1565A8, #38bdf8) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

/* Gallery image loading shimmer */
.gallery-item img {
  background: linear-gradient(
    90deg,
    rgba(56,189,248,0.06) 25%,
    rgba(245,217,122,0.08) 50%,
    rgba(56,189,248,0.06) 75%
  ) !important;
  background-size: 200% 100% !important;
}


/* ══ design-v3_3.css — Hero rating, room card text, amenity pills, reserve row3, mobile ══ */
/* ══════════════════════════════════════════════════════════════
   DHULIKHEL SUNRISE RESORT — Design v3.3
   ──────────────────────────────────────────────────────────────
   1. Hero trust/rating badges — animated multi-gradient, unique
   2. Room card title (pt 1) — visible gradient text over overlay
   3. Room card category badges (pt 2) — animated gradient visible
   4. Room amenity pills (pt 3) — hover highlight + rooms link
   5. Auto color-change text (keyframe animation) on key elements
   6. Reserve section Row 3 — Need Help + Good to Know
   7. Mobile responsive fixes
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   KEYFRAMES — v3.3 specific
───────────────────────────────────────────────────────────── */

/* Colour cycle for trust badge numbers */
@keyframes v33-color-cycle {
  0%   { background-position: 0%   50%; }
  33%  { background-position: 50%  50%; }
  66%  { background-position: 100% 50%; }
  100% { background-position: 0%   50%; }
}

/* Stars shimmer */
@keyframes v33-stars-shine {
  0%,100% { filter: brightness(1.0) drop-shadow(0 0 4px rgba(245,217,122,0.40)); }
  50%      { filter: brightness(1.4) drop-shadow(0 0 10px rgba(245,217,122,0.90)); }
}

/* Pill highlight wipe */
@keyframes v33-pill-wipe {
  from { background-position: -100% 0; }
  to   { background-position: 200%  0; }
}

/* Text colour auto-shift (for titles on light bg) */
@keyframes v33-text-shift {
  0%   { background-position: 0%   50%; }
  50%  { background-position: 100% 50%; }
  100% { background-position: 0%   50%; }
}

/* ─────────────────────────────────────────────────────────────
   1. HERO TRUST BADGES — v3.3 animated multi-gradient
───────────────────────────────────────────────────────────── */

/* Container — add a glassy card on mobile */
.v33-hero-trust {
  display: flex !important;
  align-items: center !important;
  gap: 0 !important;
  flex-wrap: wrap !important;
}

.v33-trust-item {
  text-align: center !important;
  padding: 0 1.25rem !important;
  position: relative !important;
}

/* Separator */
.v33-trust-sep {
  width: 1px !important;
  height: 32px !important;
  background: linear-gradient(
    180deg,
    transparent, rgba(56,189,248,0.35) 25%,
    rgba(245,217,122,0.35) 75%, transparent
  ) !important;
  flex-shrink: 0 !important;
}

/* ── Rating (4.9★) — most prominent, unique design ── */
.v33-trust-val--rating {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 0.1rem !important;
}

/* Stars — animated shimmer */
.v33-trust-stars {
  display: block !important;
  font-size: 0.72rem !important;
  letter-spacing: 0.04em !important;
  line-height: 1 !important;
  background: linear-gradient(
    90deg,
    #f5d97a, #e8c14a, #f0a830,
    #e8570a, #f0a830, #e8c14a, #f5d97a
  ) !important;
  background-size: 300% 100% !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  animation: v33-stars-shine 2.5s ease-in-out infinite !important;
  filter: drop-shadow(0 0 5px rgba(245,217,122,0.50)) !important;
}

/* 4.9 number — sky→gold→orange auto-cycle */
.v33-trust-num {
  display: block !important;
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 1.55rem !important;
  font-weight: 800 !important;
  font-style: italic !important;
  line-height: 1 !important;
  background: linear-gradient(
    135deg,
    #38bdf8, #7dd3fc, #ffffff,
    #f5d97a, #e8570a, #B52A1F,
    #e8570a, #f5d97a, #38bdf8
  ) !important;
  background-size: 400% 400% !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  animation: v33-color-cycle 5s ease-in-out infinite !important;
  filter: drop-shadow(0 2px 8px rgba(56,189,248,0.30)) !important;
}

/* Other trust values (1500m, 5000+, 30km) */
.v33-trust-val--alt {
  display: block !important;
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 1.25rem !important;
  font-weight: 700 !important;
  font-style: italic !important;
  line-height: 1.1 !important;
  background: linear-gradient(
    135deg,
    #f5d97a, #ffffff, #38bdf8,
    #f5d97a, #e8570a, #f5d97a
  ) !important;
  background-size: 400% 400% !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  animation: v33-color-cycle 7s ease-in-out infinite !important;
  animation-delay: 1s !important;
}

.v33-trust-unit {
  font-size: 0.72rem !important;
  font-style: normal !important;
  opacity: 0.85 !important;
}

/* Label text — sky tinted */
.v33-trust-item .v8-trust-lbl {
  color: rgba(255,255,255,0.65) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.65) !important;
  font-size: 0.55rem !important;
  letter-spacing: 0.14em !important;
}

/* ─────────────────────────────────────────────────────────────
   2. ROOM CARD TITLE (Point 1) — gradient visible over dark overlay
   The title sits on the dark image overlay — needs strong contrast
───────────────────────────────────────────────────────────── */

.v33-room-title {
  /* Multi-stop gradient: sky→white→gold — auto-animates */
  background: linear-gradient(
    125deg,
    #38bdf8, #7dd3fc, #ffffff,
    #f5d97a, #e8c14a, #ffffff, #38bdf8
  ) !important;
  background-size: 400% 400% !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  animation: v33-color-cycle 8s ease-in-out infinite !important;
  /* Strong text shadow for readability over dark photo */
  filter: drop-shadow(0 2px 8px rgba(0,0,0,0.70)) !important;
  font-size: clamp(1.1rem, 2.2vw, 1.5rem) !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
  text-shadow: none !important;
}

/* Description text — white with shadow for readability */
.v33-room-desc {
  color: rgba(255,255,255,0.88) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.88) !important;
  text-shadow: 0 1px 4px rgba(0,0,0,0.65) !important;
  font-size: 0.78rem !important;
}

/* ─────────────────────────────────────────────────────────────
   3. ROOM CARD CATEGORY BADGES (Point 2) — animated visible
───────────────────────────────────────────────────────────── */

/* Category badge (e.g. "PREMIUM CATEGORY") */
.v33-badge-cat {
  background: linear-gradient(
    135deg,
    #0C2040, #1565A8, #38bdf8, #1565A8, #0C2040
  ) !important;
  background-size: 300% 100% !important;
  animation: v33-color-cycle 5s linear infinite !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-size: 0.60rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  padding: 0.28rem 0.75rem !important;
  border-radius: 50px !important;
  border: 1px solid rgba(56,189,248,0.35) !important;
  box-shadow:
    0 2px 8px rgba(12,32,64,0.35),
    0 0 12px rgba(56,189,248,0.20) !important;
  text-shadow: 0 1px 3px rgba(0,0,0,0.40) !important;
  display: inline-block !important;
}

/* Featured badge (e.g. "★ TOP FLOOR") */
.v33-badge-featured {
  background: linear-gradient(
    135deg,
    #B52A1F, #e8570a, #f0a830, #e8570a, #B52A1F
  ) !important;
  background-size: 300% 100% !important;
  animation: v33-color-cycle 4s linear infinite !important;
  animation-delay: 0.5s !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-size: 0.60rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.10em !important;
  text-transform: uppercase !important;
  padding: 0.28rem 0.75rem !important;
  border-radius: 50px !important;
  border: 1px solid rgba(245,217,122,0.35) !important;
  box-shadow:
    0 2px 8px rgba(232,87,10,0.40),
    0 0 12px rgba(245,217,122,0.22) !important;
  text-shadow: 0 1px 3px rgba(0,0,0,0.40) !important;
  display: inline-block !important;
}

/* ─────────────────────────────────────────────────────────────
   4. AMENITY PILLS (Point 3) — hover = highlight + rooms link
───────────────────────────────────────────────────────────── */

/* Convert spans to links (already done in PHP) */
.v33-rcf {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.28rem !important;
  padding: 0.28rem 0.7rem !important;
  font-size: 0.70rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.04em !important;
  color: rgba(255,255,255,0.82) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.82) !important;
  background: rgba(255,255,255,0.12) !important;
  border: 1px solid rgba(255,255,255,0.22) !important;
  border-radius: 50px !important;
  text-decoration: none !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  cursor: pointer !important;
  position: relative !important;
  overflow: hidden !important;
  transition:
    background    0.28s ease,
    border-color  0.28s,
    color         0.28s,
    transform     0.25s cubic-bezier(.34,1.3,.64,1),
    box-shadow    0.28s !important;
}

/* Hover: sky→red highlight wipe */
.v33-rcf::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(
    90deg,
    rgba(56,189,248,0.25) 0%,
    rgba(245,217,122,0.20) 40%,
    rgba(232,87,10,0.22) 80%,
    rgba(56,189,248,0.15) 100%
  ) !important;
  background-size: 200% 100% !important;
  opacity: 0 !important;
  transition: opacity 0.28s, background-position 0.5s !important;
  pointer-events: none !important;
  z-index: 0 !important;
}

.v33-rcf:hover::before {
  opacity: 1 !important;
  animation: v33-pill-wipe 1s ease forwards !important;
}

.v33-rcf > span {
  position: relative !important;
  z-index: 1 !important;
}

.v33-rcf:hover {
  background: rgba(56,189,248,0.18) !important;
  border-color: rgba(56,189,248,0.50) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  transform: translateY(-2px) scale(1.05) !important;
  box-shadow:
    0 4px 14px rgba(56,189,248,0.28),
    0 0 0 2px rgba(56,189,248,0.14) !important;
  text-decoration: none !important;
}

/* ─────────────────────────────────────────────────────────────
   5. AUTO COLOR-CHANGE TEXT on key homepage elements
   Added where text already has gradient — extend to auto-shift
───────────────────────────────────────────────────────────── */

/* Room card price amount — auto sunrise */
.v8-price-amount {
  background: linear-gradient(
    135deg,
    #e8570a, #f0a830, #f5d97a,
    #ffffff, #38bdf8, #f5d97a, #e8570a
  ) !important;
  background-size: 400% 400% !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  animation: v33-color-cycle 6s ease-in-out infinite !important;
  font-family: 'Playfair Display', Georgia, serif !important;
  font-weight: 700 !important;
}

/* NPR price top-right on card */
.v8-npr-val {
  background: linear-gradient(
    90deg,
    #f5d97a, #e8c14a, #38bdf8, #e8c14a, #f5d97a
  ) !important;
  background-size: 300% 100% !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  animation: v33-color-cycle 5s linear infinite !important;
}

/* Section labels — light bg pages: auto shift */
.section .section-label:not([class*="dark"]) {
  background: linear-gradient(
    135deg,
    rgba(56,189,248,0.14), rgba(232,87,10,0.10),
    rgba(56,189,248,0.14)
  ) !important;
  background-size: 300% 100% !important;
  animation: v33-text-shift 6s ease infinite !important;
}

/* Why Dhulikhel headline em — faster auto-cycle */
.v19-why__headline em {
  animation: v33-color-cycle 5s ease-in-out infinite !important;
}

/* Stat numbers on homepage — already animated, speed varies per card */
.stat-item:nth-child(2) .stat-number { animation-delay: 0.8s !important; }
.stat-item:nth-child(3) .stat-number { animation-delay: 1.6s !important; }
.stat-item:nth-child(4) .stat-number { animation-delay: 2.4s !important; }

/* ─────────────────────────────────────────────────────────────
   6. RESERVE SECTION ROW 3 — Need Help + Good to Know
───────────────────────────────────────────────────────────── */

/* Row 3: 2 equal columns */
.v21-rs__row3 {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 1.25rem !important;
  margin-bottom: 2rem !important;
}

/* Need Help card */
.v21-rs__card--help {
  background: rgba(56,189,248,0.05) !important;
  border-color: rgba(56,189,248,0.14) !important;
}

.v21-rs__card--help:hover {
  border-color: rgba(56,189,248,0.30) !important;
  box-shadow:
    inset 0 1px 0 rgba(56,189,248,0.10),
    0 14px 44px rgba(0,0,0,0.40),
    0 0 0 1px rgba(56,189,248,0.12) !important;
  transform: translateY(-4px) !important;
}

/* WhatsApp button green tint */
.v21-rs__contact-btn--wa {
  border-color: rgba(37,211,102,0.28) !important;
}

.v21-rs__contact-btn--wa:hover {
  border-color: rgba(37,211,102,0.55) !important;
  color: #25D366 !important;
  -webkit-text-fill-color: #25D366 !important;
  background: rgba(37,211,102,0.06) !important;
}

.v21-rs__contact-btn--wa svg {
  color: #25D366 !important;
}

/* Good to Know card */
.v21-rs__card--info {
  background: rgba(245,217,122,0.05) !important;
  border-color: rgba(245,217,122,0.16) !important;
}

.v21-rs__card--info:hover {
  border-color: rgba(245,217,122,0.32) !important;
  box-shadow:
    inset 0 1px 0 rgba(245,217,122,0.08),
    0 14px 44px rgba(0,0,0,0.40),
    0 0 0 1px rgba(245,217,122,0.10) !important;
  transform: translateY(-4px) !important;
}

/* Good to Know list */
.v21-rs__good-list {
  list-style: none !important;
  margin: 0.75rem 0 0 !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 0.50rem !important;
}

.v21-rs__good-item {
  display: flex !important;
  align-items: flex-start !important;
  gap: 0.6rem !important;
  font-size: 0.78rem !important;
  line-height: 1.60 !important;
  color: rgba(255,255,255,0.68) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.68) !important;
  padding: 0.35rem 0 !important;
  border-bottom: 1px solid rgba(255,255,255,0.05) !important;
  transition: color 0.22s !important;
}

.v21-rs__good-item:last-child {
  border-bottom: none !important;
}

.v21-rs__card--info:hover .v21-rs__good-item {
  color: rgba(255,255,255,0.82) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.82) !important;
}

.v21-rs__good-icon {
  flex-shrink: 0 !important;
  font-size: 1rem !important;
  line-height: 1.3 !important;
  transition: transform 0.28s cubic-bezier(.34,1.3,.64,1) !important;
}

.v21-rs__card--info:hover .v21-rs__good-icon {
  transform: scale(1.15) !important;
}

/* ─────────────────────────────────────────────────────────────
   7. MOBILE RESPONSIVE FIXES
───────────────────────────────────────────────────────────── */

/* Hero trust — wrap gracefully on mobile */
@media (max-width: 640px) {
  .v33-hero-trust {
    gap: 0.5rem 0 !important;
    justify-content: center !important;
  }
  .v33-trust-item {
    padding: 0.4rem 0.75rem !important;
  }
  .v33-trust-sep {
    width: 60px !important;
    height: 1px !important;
    background: linear-gradient(90deg, transparent, rgba(56,189,248,0.30), transparent) !important;
  }
  .v33-trust-num {
    font-size: 1.25rem !important;
  }
  .v33-trust-val--alt {
    font-size: 1rem !important;
  }

  /* Room card title smaller on mobile */
  .v33-room-title {
    font-size: 1rem !important;
  }

  /* Reserve row3 — stack on mobile */
  .v21-rs__row3 {
    grid-template-columns: 1fr !important;
  }

  /* Room card features — 2-col grid on mobile */
  .v8-room-card__features {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

@media (max-width: 900px) {
  /* Reserve row3 stays 2-col until 640 */
  .v21-rs__row3 {
    grid-template-columns: 1fr 1fr !important;
    gap: 1rem !important;
  }
}

/* Room card overlay — stronger dark gradient for text readability */
.v8-room-card__overlay {
  background: linear-gradient(
    0deg,
    rgba(3,8,15,0.96)   0%,
    rgba(3,8,15,0.85)  40%,
    rgba(3,8,15,0.60)  70%,
    rgba(3,8,15,0.15) 100%
  ) !important;
}

/* Stat numbers stagger delay already set — ensure animation plays */
.stat-number {
  animation-play-state: running !important;
}

/* Why section headline stagger */
.v19-why__headline {
  animation: v29-sky 8s ease-in-out infinite !important;
}

/* Footer top border animation already present — ensure it runs */
.site-footer::before {
  animation-play-state: running !important;
}

/* ─────────────────────────────────────────────────────────────
   8. GLOBAL MOBILE POLISH
───────────────────────────────────────────────────────────── */

@media (max-width: 768px) {
  /* Section title — slightly smaller on mobile */
  .section-title {
    font-size: clamp(1.4rem, 5vw, 2rem) !important;
  }

  /* Reserve cards — single column on mobile */
  .v21-rs__row1 {
    grid-template-columns: 1fr !important;
  }
  .v21-rs__row2 {
    grid-template-columns: 1fr !important;
  }

  /* Why bento — already responsive via v1.9 CSS */

  /* Gallery filter wrap */
  .gallery-filters {
    gap: 0.45rem !important;
    padding: 0 1rem !important;
  }

  /* Availability banner */
  .availability-banner__inner {
    flex-direction: column !important;
    text-align: center !important;
  }

  /* Footer social — slightly smaller */
  .footer-social a {
    font-size: 1.1rem !important;
  }

  /* Room cards grid on front page */
  .rooms-grid,
  [class*="rooms-grid"] {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 480px) {
  /* Nav gradient text size */
  .nav-menu > li > a,
  .nav-menu > .menu-item > a {
    font-size: 0.55rem !important;
    padding: 0.3rem 0.5rem !important;
  }

  /* Why bento cells single col */
  .v19-why__bento {
    grid-template-columns: 1fr !important;
    gap: 0.65rem !important;
  }

  /* Book Now btn mobile */
  .header-book-btn {
    font-size: 0.65rem !important;
    padding: 0.55rem 1.2rem !important;
  }
}
