/* Kept separate from site.css so legacy navbar rules cannot override this layout. */
@media (min-width: 1200px) {
    #navV1 > .legacy-desktop-nav {
        display: none !important;
    }

    #navV1 > .universal-nav-row {
        display: flex !important;
        align-items: center !important;
        width: 100% !important;
        min-height: 74px !important;
        gap: 20px !important;
    }

    #navV1 .universal-nav-brand {
        display: flex !important;
        order: 0 !important;
        flex: 0 0 auto !important;
        align-items: center !important;
        margin: 0 !important;
    }

    #navV1 .universal-nav-logo {
        display: block !important;
        width: 72px !important;
        height: 72px !important;
        object-fit: contain !important;
    }

    #navV1 .universal-nav-menu {
        display: flex !important;
        order: 1 !important;
        flex: 1 1 auto !important;
        align-items: center !important;
        gap: 2px !important;
        margin: 0 !important;
    }

    #navV1 .universal-nav-actions {
        display: flex !important;
        order: 2 !important;
        flex: 0 0 auto !important;
        align-items: center !important;
        gap: 10px !important;
        margin: 0 0 0 auto !important;
        padding: 0 !important;
    }

    #navV1 .universal-nav-actions .company-mobile-cta {
        display: inline-flex !important;
        align-items: center !important;
        gap: 8px !important;
        padding: 11px 16px !important;
        border-radius: 999px !important;
        background: #147dbb !important;
        color: #fff !important;
        white-space: nowrap !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    #navV1 .universal-nav-actions > li:first-child,
    #navV1 .universal-nav-actions > li:first-child > .company-mobile-cta {
        display: inline-flex !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    #navV1 .universal-nav-actions .navbar-pulse-btn {
        display: inline-flex !important;
        align-items: center !important;
        min-height: 44px !important;
        padding: 10px 18px !important;
        white-space: nowrap !important;
    }
}

/* Longosphere-inspired desktop nav: logo in its own white box, menu directly
   over the hero without a grey capsule. */
@media (min-width: 1200px) {
    header.z-index-master {
        inset: 0 0 auto 0 !important;
        padding: 0 clamp(26px, 2.8vw, 42px) !important;
    }

    header.z-index-master .solid-navbar {
        max-width: none !important;
        min-height: 96px !important;
        margin: 0 auto !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
    }

    header.z-index-master .solid-navbar > .container-fluid {
        padding: 0 !important;
    }

    #navV1 > .universal-nav-row {
        min-height: 96px !important;
        gap: clamp(26px, 3vw, 54px) !important;
    }

    #navV1 .universal-nav-brand {
        width: clamp(128px, 10vw, 164px) !important;
        height: 88px !important;
        display: grid !important;
        place-items: center !important;
        flex: 0 0 auto !important;
        margin: 0 !important;
        padding: 10px 18px !important;
        border-radius: 0 0 18px 18px !important;
        background: rgba(255, 255, 255, .96) !important;
        border: 1px solid rgba(255, 255, 255, .88) !important;
        box-shadow: 0 18px 44px rgba(8, 36, 25, .18) !important;
    }

    #navV1 .universal-nav-logo {
        width: 87% !important;
        height: 100% !important;
        object-fit: contain !important;
        filter: none !important;
        transform: none !important;
    }

    #navV1 .universal-nav-menu {
        gap: clamp(8px, 1.15vw, 22px) !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
    }

    #navV1 .universal-nav-menu .premium-link,
    #navV1 .universal-nav-actions .company-mobile-cta {
        min-height: 44px !important;
        padding: 0 4px !important;
        border-radius: 0 !important;
        background: transparent !important;
        color: #fff !important;
        border: 0 !important;
        outline: 0 !important;
        box-shadow: none !important;
        text-shadow: 0 2px 12px rgba(0, 0, 0, .46) !important;
        font-size: .78rem !important;
        font-weight: 900 !important;
        letter-spacing: .055em !important;
    }

    #navV1 .universal-nav-menu .premium-link:hover,
    #navV1 .universal-nav-menu .premium-link:focus,
    #navV1 .universal-nav-actions .company-mobile-cta:hover,
    #navV1 .universal-nav-actions .company-mobile-cta:focus {
        color: #e7c766 !important;
        transform: translateY(-1px) !important;
    }

    #navV1 .universal-nav-actions {
        gap: clamp(18px, 2vw, 32px) !important;
    }

    #navV1 .universal-nav-actions .company-mobile-cta {
        width: auto !important;
        min-width: 0 !important;
        gap: 7px !important;
        box-shadow: none !important;
    }

    #navV1 .universal-nav-actions .navbar-pulse-btn {
        width: auto !important;
        min-width: 172px !important;
        height: 54px !important;
        min-height: 54px !important;
        padding: 0 24px !important;
        border-radius: 999px !important;
        background: #4f7a3c !important;
        color: #fff !important;
        box-shadow: 0 18px 38px rgba(24, 66, 35, .26) !important;
    }

    #navV1 .universal-nav-actions .navbar-pulse-btn:hover,
    #navV1 .universal-nav-actions .navbar-pulse-btn:focus {
        background: #3f6930 !important;
        color: #fff !important;
        transform: translateY(-2px) !important;
    }
}

/* The universal row is the desktop-only navbar. Keeping it out of the
   mobile drawer prevents its large brand mark from appearing a second time. */
@media (max-width: 1199.98px) {
    #navV1 > .universal-nav-row {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        width: 100% !important;
        gap: 8px !important;
    }

    /* Drawer uses the standalone .mobile-top-logo. Legacy desktop brand
       elements must never enter the drawer on small screens. */
    #navV1 .navbar-brand,
    #navV1 .main-nav-logo,
    #navV1 .hero-nav-logo,
    #navV1 .solid-nav-logo,
    #navV1 .universal-nav-brand {
        display: none !important;
    }

    /* The drawer is a single vertical navigation stack. */
    #navV1 .navbar-nav,
    #navV1 .navbar-nav.navbar-nav,
    #navV1 .navbar-nav.ms-auto {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        width: 100% !important;
        gap: 8px !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    #navV1 .navbar-nav > .nav-item,
    #navV1 .navbar-nav > li {
        display: block !important;
        width: 100% !important;
        margin: 0 !important;
    }

    #navV1 .navbar-nav > .nav-item > .nav-link,
    #navV1 .navbar-nav > li > .nav-link,
    #navV1 .navbar-nav > li > .navbar-pulse-btn {
        display: flex !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }

    #navV1 .company-mobile-cta,
    #navV1 .company-mobile-cta:visited,
    #navV1 .company-mobile-cta:hover {
        background: transparent !important;
        box-shadow: none !important;
        color: #1f3f31 !important;
    }

    #navV1 .universal-nav-menu > li:first-child > a {
        justify-content: flex-start !important;
    }

    #navV1 .universal-nav-menu > li:first-child > a > .fa-house {
        display: none !important;
    }

    #navV1 .universal-nav-menu .fa-chevron-down {
        margin-left: auto !important;
    }

    #navV1 .universal-nav-actions > li:last-child,
    #navV1 .universal-nav-actions > li:last-child > .navbar-pulse-btn {
        width: 190px !important;
        align-self: flex-start !important;
        justify-content: center !important;
    }
}

/* These information pages use the light editorial surface of the allocation
   page instead of the oversized green masthead. */
.route-v2 > .subsite-head,
.references-v2 > .subsite-head,
.faq-v3 .faq-v3-hero {
    min-height: 0 !important;
    margin: 0 auto !important;
    padding: clamp(72px, 9vw, 120px) max(7vw, calc((100vw - 1320px) / 2)) 42px !important;
    background: transparent !important;
    color: #163b2a !important;
}

.route-v2 > .subsite-head h1,
.references-v2 > .subsite-head h1,
.faq-v3 .faq-v3-hero h1 {
    max-width: 900px !important;
    margin: 12px 0 16px !important;
    color: #163b2a !important;
    font-size: clamp(2.8rem, 5vw, 5.8rem) !important;
    line-height: 1.02 !important;
}

.route-v2 > .subsite-head p,
.references-v2 > .subsite-head p,
.faq-v3 .faq-v3-hero p {
    max-width: 640px !important;
    color: #66766c !important;
}

.route-v2 > .subsite-head span,
.references-v2 > .subsite-head span,
.faq-v3 .faq-v3-hero span {
    color: #bf7044 !important;
}

.faq-v3 .faq-v3-hero aside {
    position: static !important;
    width: max-content !important;
    min-width: 0 !important;
    margin-top: 24px !important;
    padding: 14px 18px !important;
    border: 1px solid #dbe5dc !important;
    border-radius: 8px !important;
    background: #fff !important;
    color: #163b2a !important;
    box-shadow: none !important;
}

/* Final desktop navbar revision: transparent at the hero, boxed only after scroll. */
@media (min-width: 1200px) {
    header.z-index-master {
        inset: 0 0 auto !important;
        padding: 0 clamp(32px, 2.7vw, 52px) !important;
        transition: padding .28s ease !important;
    }

    header.z-index-master .solid-navbar {
        min-height: 98px !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
        transition: min-height .28s ease, background .28s ease, box-shadow .28s ease, border-color .28s ease !important;
    }

    header.z-index-master.is-scrolled {
        padding-top: 0 !important;
    }

    header.z-index-master.is-scrolled .solid-navbar {
        min-height: 86px !important;
        background: rgba(18, 35, 32, .94) !important;
        border-bottom: 1px solid rgba(255, 255, 255, .11) !important;
        box-shadow: 0 18px 38px rgba(8, 20, 16, .22) !important;
        backdrop-filter: blur(16px) saturate(1.25) !important;
        -webkit-backdrop-filter: blur(16px) saturate(1.25) !important;
    }

    header.z-index-master .solid-navbar > .container-fluid {
        height: 100% !important;
        padding: 0 !important;
    }

    #navV1 > .universal-nav-row {
        display: flex !important;
        min-height: 98px !important;
        width: 100% !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 0 !important;
    }

    header.z-index-master.is-scrolled #navV1 > .universal-nav-row {
        min-height: 86px !important;
    }

    #navV1 .universal-nav-brand {
        width: clamp(238px, 15vw, 304px) !important;
        height: 88px !important;
        margin: 0 !important;
        padding: 14px 20px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        flex: 0 0 auto !important;
        border-radius: 0 0 10px 10px !important;
        background: rgba(255, 255, 255, .98) !important;
        border: 1px solid rgba(255, 255, 255, .9) !important;
        box-shadow: 0 18px 44px rgba(8, 30, 24, .16) !important;
    }

    header.z-index-master.is-scrolled #navV1 .universal-nav-brand {
        height: 86px !important;
        box-shadow: 0 14px 30px rgba(6, 22, 17, .2) !important;
    }

    #navV1 .universal-nav-logo {
        width: 87% !important;
        height: 100% !important;
        object-fit: contain !important;
        object-position: center !important;
        filter: none !important;
        transform: none !important;
    }

    #navV1 .universal-nav-menu {
        order: 1 !important;
        flex: 0 1 auto !important;
        justify-content: flex-start !important;
        gap: clamp(10px, 1.1vw, 20px) !important;
        margin: 0 0 0 clamp(22px, 2.6vw, 48px) !important;
        padding: 0 !important;
        background: transparent !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
    }

    #navV1 .universal-nav-actions {
        order: 2 !important;
        flex: 0 0 auto !important;
        margin-left: auto !important;
        gap: 0 !important;
    }

    #navV1 .universal-nav-actions .company-mobile-cta {
        display: none !important;
    }

    #navV1 .universal-nav-menu .premium-link,
    #navV1 .universal-nav-menu .company-mobile-cta {
        min-height: 44px !important;
        padding: 0 3px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 7px !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        color: #fff !important;
        text-shadow: 0 2px 12px rgba(0, 0, 0, .44) !important;
        font-size: clamp(.72rem, .72vw, .82rem) !important;
        font-weight: 900 !important;
        letter-spacing: .035em !important;
        white-space: nowrap !important;
    }

    header.z-index-master.is-scrolled #navV1 .universal-nav-menu .premium-link,
    header.z-index-master.is-scrolled #navV1 .universal-nav-menu .company-mobile-cta {
        text-shadow: none !important;
    }

    #navV1 .universal-nav-menu .premium-link:hover,
    #navV1 .universal-nav-menu .premium-link:focus,
    #navV1 .universal-nav-menu .company-mobile-cta:hover,
    #navV1 .universal-nav-menu .company-mobile-cta:focus {
        color: #f0cb62 !important;
        transform: translateY(-1px) !important;
    }

    #navV1 .universal-nav-actions .navbar-pulse-btn {
        position: relative !important;
        width: auto !important;
        min-width: 190px !important;
        min-height: 58px !important;
        height: 58px !important;
        padding: 0 26px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 10px !important;
        overflow: hidden !important;
        border-radius: 999px !important;
        border: 1px solid rgba(255, 255, 255, .26) !important;
        background: linear-gradient(135deg, #f0c85a 0%, #6f8b42 34%, #315f32 100%) !important;
        color: #fff !important;
        box-shadow: 0 18px 36px rgba(28, 70, 38, .34), inset 0 1px 0 rgba(255, 255, 255, .32) !important;
        font-size: .98rem !important;
        font-weight: 900 !important;
        letter-spacing: .01em !important;
        text-shadow: 0 1px 8px rgba(0, 0, 0, .22) !important;
    }

    #navV1 .universal-nav-actions .navbar-pulse-btn::before {
        content: "" !important;
        position: absolute !important;
        inset: 8px auto 8px 10px !important;
        width: 42px !important;
        border-radius: 999px !important;
        background: rgba(255, 255, 255, .16) !important;
        transform: translateX(-64px) !important;
        transition: transform .35s ease !important;
    }

    #navV1 .universal-nav-actions .navbar-pulse-btn:hover,
    #navV1 .universal-nav-actions .navbar-pulse-btn:focus {
        color: #fff !important;
        background: linear-gradient(135deg, #f5d36a 0%, #78984a 32%, #244d29 100%) !important;
        box-shadow: 0 22px 42px rgba(28, 70, 38, .4), inset 0 1px 0 rgba(255, 255, 255, .34) !important;
        transform: translateY(-2px) !important;
    }

    #navV1 .universal-nav-actions .navbar-pulse-btn:hover::before,
    #navV1 .universal-nav-actions .navbar-pulse-btn:focus::before {
        transform: translateX(168px) !important;
    }
}

@media (max-width: 1199.98px) {
    .mobile-top-logo img {
        content: url("/img/Avcikoru-Logo.png");
    }

    #navV1 .universal-nav-actions .company-mobile-cta {
        display: none !important;
    }
}

/* This file loads last, so keep the special-events compact pass safe here too. */
.special-refresh-page.special-compact-page {
    background:
        radial-gradient(circle at 84% 10%, rgba(230, 196, 96, .16), transparent 28%),
        linear-gradient(180deg, #f8faf4 0%, #eef6ef 44%, #fff 100%) !important;
}

.special-refresh-page.special-compact-page .special-compact-hero {
    min-height: 0 !important;
    padding: clamp(120px, 12vw, 168px) 0 clamp(54px, 7vw, 88px) !important;
}

.special-refresh-page.special-compact-page .special-compact-copy h1 {
    font-size: clamp(2.8rem, 5.3vw, 5.6rem) !important;
    line-height: .96 !important;
    letter-spacing: 0 !important;
}

.special-refresh-page.special-compact-page .special-compact-head h2,
.special-refresh-page.special-compact-page .special-compact-cta-box h2 {
    font-size: clamp(2rem, 3.2vw, 3.55rem) !important;
    line-height: 1.02 !important;
    letter-spacing: 0 !important;
}

.special-refresh-page.special-compact-page .special-gallery-section {
    padding: clamp(64px, 7vw, 104px) 0 !important;
}

@media (max-width: 575.98px) {
    .special-refresh-page.special-compact-page .special-compact-hero {
        padding-top: 112px !important;
    }

    .special-refresh-page.special-compact-page .special-compact-copy h1 {
        font-size: clamp(2.35rem, 15vw, 3.65rem) !important;
    }
}

/* Last-pass visual tightening after measuring the page. */
@media (min-width: 1200px) {
    #navV1 .universal-nav-menu {
        margin-left: 22px !important;
    }

    #navV1 .universal-nav-actions .company-mobile-cta,
    #navV1 .universal-nav-actions .company-mobile-cta.nav-link {
        display: none !important;
        visibility: hidden !important;
        width: 0 !important;
        min-width: 0 !important;
        height: 0 !important;
        padding: 0 !important;
        margin: 0 !important;
        overflow: hidden !important;
    }
}

.special-refresh-page.special-compact-page .special-compact-hero {
    padding: clamp(104px, 9vw, 136px) 0 clamp(44px, 6vw, 72px) !important;
}

.special-refresh-page.special-compact-page .special-compact-hero-grid {
    grid-template-columns: minmax(0, .94fr) minmax(380px, 1fr) !important;
    gap: clamp(30px, 4vw, 58px) !important;
}

.special-refresh-page.special-compact-page .special-compact-copy {
    max-width: 660px !important;
}

.special-refresh-page.special-compact-page .special-compact-copy h1 {
    max-width: 680px !important;
    font-size: clamp(2.65rem, 4vw, 4.35rem) !important;
    line-height: 1 !important;
}

.special-refresh-page.special-compact-page .special-compact-copy p {
    margin-top: 18px !important;
    line-height: 1.7 !important;
}

.special-refresh-page.special-compact-page .special-compact-visual,
.special-refresh-page.special-compact-page .special-compact-visual img {
    min-height: 360px !important;
}

.special-refresh-page.special-compact-page .special-compact-visual {
    height: clamp(340px, 31vw, 480px) !important;
}

.special-refresh-page.special-compact-page .special-compact-visual img {
    height: 100% !important;
    max-height: none !important;
}

@media (max-width: 991.98px) {
    .special-refresh-page.special-compact-page .special-compact-hero-grid {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 575.98px) {
    .special-refresh-page.special-compact-page .special-compact-hero {
        padding: 88px 0 40px !important;
    }

    .special-refresh-page.special-compact-page .special-compact-copy h1 {
        font-size: clamp(2rem, 10.6vw, 2.75rem) !important;
    }

    .special-refresh-page.special-compact-page .special-compact-copy p {
        margin-top: 14px !important;
        line-height: 1.58 !important;
    }

    .special-refresh-page.special-compact-page .special-compact-actions {
        margin-top: 18px !important;
    }

    .special-refresh-page.special-compact-page .special-compact-visual,
    .special-refresh-page.special-compact-page .special-compact-visual img {
        min-height: 240px !important;
        height: 240px !important;
    }

    .special-refresh-page.special-compact-page .special-compact-visual figcaption {
        left: 16px !important;
        right: 16px !important;
        bottom: 14px !important;
        font-size: .84rem !important;
    }
}

@media (min-width: 1200px) {
    #navV1 .universal-nav-actions > .nav-item > .company-mobile-cta.nav-link,
    #navV1 .universal-nav-actions > li > a.company-mobile-cta.nav-link {
        display: none !important;
        visibility: hidden !important;
    }
}

/* Navbar final pass: bigger logo, green hover, full-width scrolled bar, calmer CTA. */
@media (min-width: 1200px) {
    header.z-index-master {
        padding: 0 clamp(28px, 2.6vw, 50px) !important;
    }

    header.z-index-master.is-scrolled {
        padding: 0 !important;
    }

    header.z-index-master.is-scrolled .solid-navbar {
        width: 100vw !important;
        max-width: none !important;
        margin: 0 !important;
        border-radius: 0 !important;
        background: rgba(14, 35, 29, .96) !important;
        box-shadow: 0 18px 38px rgba(5, 18, 14, .24) !important;
    }

    header.z-index-master.is-scrolled .solid-navbar > .container-fluid {
        padding-inline: clamp(28px, 2.6vw, 50px) !important;
    }

    #navV1 .universal-nav-brand {
        width: clamp(288px, 16vw, 340px) !important;
        height: 88px !important;
        padding: 8px 12px !important;
        overflow: hidden !important;
    }

    #navV1 .universal-nav-logo {
        width: 87% !important;
        height: 100% !important;
        object-fit: contain !important;
        transform: scale(1.85) !important;
        transform-origin: center !important;
    }

    header.z-index-master.is-scrolled #navV1 .universal-nav-brand {
        height: 86px !important;
    }

    #navV1 .universal-nav-menu .premium-link:hover,
    #navV1 .universal-nav-menu .premium-link:focus,
    #navV1 .universal-nav-menu .company-mobile-cta:hover,
    #navV1 .universal-nav-menu .company-mobile-cta:focus {
        color: #9fd36f !important;
    }

    #navV1 .universal-nav-actions .navbar-pulse-btn {
        isolation: isolate !important;
        min-width: 188px !important;
        height: 56px !important;
        min-height: 56px !important;
        border: 1px solid rgba(159, 211, 111, .48) !important;
        background: rgba(18, 72, 48, .76) !important;
        color: #fff !important;
        box-shadow: 0 16px 32px rgba(15, 55, 36, .24), inset 0 1px 0 rgba(255,255,255,.18) !important;
        text-shadow: none !important;
        transition: transform .22s ease, background .22s ease, box-shadow .22s ease, border-color .22s ease !important;
    }

    #navV1 .universal-nav-actions .navbar-pulse-btn::before {
        content: "" !important;
        position: absolute !important;
        inset: -1px !important;
        z-index: -1 !important;
        border-radius: inherit !important;
        background: linear-gradient(110deg, transparent 0%, rgba(159, 211, 111, .28) 42%, transparent 72%) !important;
        transform: translateX(-120%) !important;
        transition: transform .55s ease !important;
    }

    #navV1 .universal-nav-actions .navbar-pulse-btn::after {
        content: "" !important;
        position: absolute !important;
        inset: 7px !important;
        z-index: -2 !important;
        border-radius: inherit !important;
        border: 1px solid rgba(159, 211, 111, .18) !important;
        animation: navReserveBreath 2.6s ease-in-out infinite !important;
    }

    #navV1 .universal-nav-actions .navbar-pulse-btn:hover,
    #navV1 .universal-nav-actions .navbar-pulse-btn:focus {
        background: rgba(20, 86, 55, .92) !important;
        border-color: rgba(185, 228, 143, .78) !important;
        box-shadow: 0 19px 38px rgba(15, 55, 36, .32), inset 0 1px 0 rgba(255,255,255,.2) !important;
        transform: translateY(-2px) !important;
    }

    #navV1 .universal-nav-actions .navbar-pulse-btn:hover::before,
    #navV1 .universal-nav-actions .navbar-pulse-btn:focus::before {
        transform: translateX(120%) !important;
    }
}

@keyframes navReserveBreath {
    0%, 100% { opacity: .35; transform: scale(1); }
    50% { opacity: .9; transform: scale(1.08); }
}

@media (min-width: 1200px) {
    #navV1 .universal-nav-actions .btn.navbar-pulse-btn,
    #navV1 .universal-nav-actions a.btn.navbar-pulse-btn,
    header.z-index-master #navV1 .navbar-pulse-btn {
        background-color: rgba(18, 72, 48, .84) !important;
        background-image: none !important;
        border-color: rgba(159, 211, 111, .54) !important;
        color: #fff !important;
    }

    #navV1 .universal-nav-actions .btn.navbar-pulse-btn:hover,
    #navV1 .universal-nav-actions .btn.navbar-pulse-btn:focus,
    header.z-index-master #navV1 .navbar-pulse-btn:hover,
    header.z-index-master #navV1 .navbar-pulse-btn:focus {
        background-color: rgba(20, 86, 55, .96) !important;
        background-image: none !important;
        border-color: rgba(185, 228, 143, .82) !important;
    }
}

/* Final navbar tuning: cropped logo asset and sharper premium reservation CTA. */
@media (min-width: 1200px) {
    #navV1 .universal-nav-brand {
        width: clamp(298px, 17vw, 356px) !important;
        height: 96px !important;
        padding: 8px 16px !important;
        display: grid !important;
        place-items: center !important;
        border-radius: 0 0 12px 12px !important;
    }

    #navV1 .universal-nav-logo {
        width: 87% !important;
        height: 100% !important;
        object-fit: contain !important;
        transform: none !important;
        transform-origin: center center !important;
    }

    header.z-index-master.is-scrolled #navV1 .universal-nav-brand {
        height: 96px !important;
    }

    header.z-index-master.is-scrolled .solid-navbar,
    header.z-index-master.is-scrolled #navV1 .universal-nav-row {
        min-height: 96px !important;
    }

    #navV1 .universal-nav-row {
        gap: clamp(22px, 2vw, 36px) !important;
    }

    #navV1 .universal-nav-menu {
        justify-content: flex-start !important;
    }

    #navV1 .universal-nav-actions .btn.navbar-pulse-btn,
    #navV1 .universal-nav-actions a.btn.navbar-pulse-btn,
    header.z-index-master #navV1 .navbar-pulse-btn {
        position: relative !important;
        min-width: 212px !important;
        height: 58px !important;
        min-height: 58px !important;
        padding: 0 18px 0 28px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 12px !important;
        overflow: hidden !important;
        border: 1px solid rgba(186, 229, 139, .62) !important;
        border-radius: 14px !important;
        clip-path: polygon(13px 0, calc(100% - 24px) 0, 100% 50%, calc(100% - 24px) 100%, 13px 100%, 0 50%) !important;
        color: #fff !important;
        background-color: #153d2c !important;
        background-image: radial-gradient(circle at 18% 18%, rgba(255,255,255,.24), transparent 26%), linear-gradient(135deg, #b5cf57 0%, #3f7f45 42%, #143928 100%) !important;
        box-shadow: 0 18px 36px rgba(7, 36, 24, .32), inset 0 1px 0 rgba(255,255,255,.26) !important;
        font-size: 1.02rem !important;
        font-weight: 950 !important;
        letter-spacing: 0 !important;
        text-shadow: none !important;
        transition: transform .22s ease, box-shadow .22s ease, filter .22s ease !important;
    }

    #navV1 .universal-nav-actions .navbar-pulse-btn i {
        width: 34px !important;
        height: 34px !important;
        margin-left: 2px !important;
        display: grid !important;
        place-items: center !important;
        border-radius: 10px !important;
        color: #fff !important;
        background: rgba(9, 45, 30, .28) !important;
        box-shadow: inset 0 1px 0 rgba(255,255,255,.18) !important;
        transition: transform .22s ease, background .22s ease !important;
    }

    #navV1 .universal-nav-actions .navbar-pulse-btn::before {
        content: "" !important;
        position: absolute !important;
        inset: 0 !important;
        z-index: -1 !important;
        border-radius: 0 !important;
        background: linear-gradient(115deg, transparent 0%, rgba(255,255,255,.34) 42%, transparent 62%) !important;
        transform: translateX(-130%) skewX(-14deg) !important;
        transition: transform .7s ease !important;
    }

    #navV1 .universal-nav-actions .navbar-pulse-btn::after {
        content: "" !important;
        position: absolute !important;
        right: 18px !important;
        top: 50% !important;
        width: 46px !important;
        height: 46px !important;
        z-index: -1 !important;
        border-radius: 14px !important;
        border: 1px solid rgba(255,255,255,.18) !important;
        transform: translateY(-50%) rotate(45deg) !important;
        animation: none !important;
    }

    #navV1 .universal-nav-actions .btn.navbar-pulse-btn:hover,
    #navV1 .universal-nav-actions .btn.navbar-pulse-btn:focus,
    header.z-index-master #navV1 .navbar-pulse-btn:hover,
    header.z-index-master #navV1 .navbar-pulse-btn:focus {
        background-color: #174832 !important;
        background-image: radial-gradient(circle at 18% 18%, rgba(255,255,255,.26), transparent 26%), linear-gradient(135deg, #cae06b 0%, #4b9650 44%, #123827 100%) !important;
        border-color: rgba(213, 242, 161, .82) !important;
        filter: saturate(1.08) !important;
        transform: translateY(-3px) !important;
        box-shadow: 0 24px 44px rgba(7, 36, 24, .38), inset 0 1px 0 rgba(255,255,255,.28) !important;
    }

    #navV1 .universal-nav-actions .navbar-pulse-btn:hover::before,
    #navV1 .universal-nav-actions .navbar-pulse-btn:focus::before {
        transform: translateX(135%) skewX(-14deg) !important;
    }

    #navV1 .universal-nav-actions .navbar-pulse-btn:hover i,
    #navV1 .universal-nav-actions .navbar-pulse-btn:focus i {
        background: rgba(9, 45, 30, .38) !important;
        transform: translateX(3px) !important;
    }
}

/* Reservation CTA soft pass: premium, calmer, less angular. */
@media (min-width: 1200px) {
    #navV1 .universal-nav-actions .btn.navbar-pulse-btn,
    #navV1 .universal-nav-actions a.btn.navbar-pulse-btn,
    header.z-index-master #navV1 .navbar-pulse-btn {
        min-width: 210px !important;
        height: 58px !important;
        padding: 0 14px 0 26px !important;
        border-radius: 18px !important;
        clip-path: none !important;
        border: 1px solid rgba(196, 226, 159, .58) !important;
        color: #f8fff4 !important;
        background-color: rgba(28, 78, 49, .92) !important;
        background-image: linear-gradient(135deg, rgba(255,255,255,.22) 0%, rgba(137,185,86,.34) 32%, rgba(24,78,49,.96) 100%) !important;
        box-shadow: 0 16px 34px rgba(7, 35, 23, .26), inset 0 1px 0 rgba(255,255,255,.28) !important;
        font-family: "Inria Sans", "Segoe UI", Arial, sans-serif !important;
        font-size: 1.05rem !important;
        font-weight: 800 !important;
    }

    #navV1 .universal-nav-actions .navbar-pulse-btn::after {
        right: 10px !important;
        width: 40px !important;
        height: 40px !important;
        border-radius: 13px !important;
        background: rgba(14, 56, 35, .28) !important;
        transform: translateY(-50%) !important;
    }

    #navV1 .universal-nav-actions .navbar-pulse-btn i {
        width: 38px !important;
        height: 38px !important;
        border-radius: 13px !important;
        background: rgba(8, 48, 29, .24) !important;
    }

    #navV1 .universal-nav-actions .btn.navbar-pulse-btn:hover,
    #navV1 .universal-nav-actions .btn.navbar-pulse-btn:focus,
    header.z-index-master #navV1 .navbar-pulse-btn:hover,
    header.z-index-master #navV1 .navbar-pulse-btn:focus {
        background-color: rgba(34, 91, 56, .98) !important;
        background-image: linear-gradient(135deg, rgba(255,255,255,.26) 0%, rgba(157,205,103,.42) 32%, rgba(24,82,51,.98) 100%) !important;
        transform: translateY(-2px) !important;
        box-shadow: 0 22px 42px rgba(7, 35, 23, .32), inset 0 1px 0 rgba(255,255,255,.32) !important;
    }
}

/* Rezervasyon CTA uzerindeki sol dekor katmani metnin ustune binmesin. */
@media (min-width: 1200px) {
    #navV1 .universal-nav-actions .navbar-pulse-btn::before {
        content: none !important;
        display: none !important;
    }
}

/* Final reservation CTA cleanup: remove decorative square layers. */
@media (min-width: 1200px) {
    #navV1 .universal-nav-actions .navbar-pulse-btn::before,
    #navV1 .universal-nav-actions .navbar-pulse-btn::after,
    header.z-index-master #navV1 .navbar-pulse-btn::before,
    header.z-index-master #navV1 .navbar-pulse-btn::after {
        content:none !important;
        display:none !important;
        width:0 !important;
        height:0 !important;
        border:0 !important;
        background:transparent !important;
        box-shadow:none !important;
    }

    #navV1 .universal-nav-actions .navbar-pulse-btn i,
    header.z-index-master #navV1 .navbar-pulse-btn i {
        width:auto !important;
        height:auto !important;
        min-width:0 !important;
        min-height:0 !important;
        padding:0 !important;
        background:transparent !important;
        box-shadow:none !important;
        border:0 !important;
        border-radius:0 !important;
        transform:none !important;
    }

    #navV1 .universal-nav-actions .navbar-pulse-btn:hover i,
    #navV1 .universal-nav-actions .navbar-pulse-btn:focus i,
    header.z-index-master #navV1 .navbar-pulse-btn:hover i,
    header.z-index-master #navV1 .navbar-pulse-btn:focus i {
        width:auto !important;
        height:auto !important;
        background:transparent !important;
        box-shadow:none !important;
        border:0 !important;
        border-radius:0 !important;
        transform:translateX(3px) !important;
    }
}

/* Reservation CTA arrow cleanup across breakpoints. */
#navV1 .navbar-pulse-btn::after,
header.z-index-master #navV1 .navbar-pulse-btn::after {
    content:none !important;
    display:none !important;
    width:0 !important;
    height:0 !important;
    border:0 !important;
    background:transparent !important;
    box-shadow:none !important;
}

#navV1 .navbar-pulse-btn i,
header.z-index-master #navV1 .navbar-pulse-btn i {
    width:auto !important;
    height:auto !important;
    min-width:0 !important;
    min-height:0 !important;
    padding:0 !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
}

#navV1 .navbar-pulse-btn:hover i,
#navV1 .navbar-pulse-btn:focus i,
header.z-index-master #navV1 .navbar-pulse-btn:hover i,
header.z-index-master #navV1 .navbar-pulse-btn:focus i {
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    transform:translateX(3px) !important;
}

/* Mobile hamburger stays visible above image-heavy detail pages. */
@media (max-width: 1199.98px) {
    header.z-index-master .navbar-toggler {
        position:fixed !important;
        top:18px !important;
        right:18px !important;
        z-index:1305 !important;
        width:48px !important;
        height:48px !important;
        display:grid !important;
        place-items:center !important;
        padding:0 !important;
        border-radius:999px !important;
        background:#fffdfa !important;
        box-shadow:0 14px 30px rgba(9,42,29,.18) !important;
    }

    header.z-index-master .navbar-toggler i {
        color:#123827 !important;
        font-size:1.35rem !important;
    }
}

/* Mobile pages should start at the hero, not below an empty navbar strip. */
@media (max-width: 1199.98px) {
    body {
        padding-top:0 !important;
    }

    header.z-index-master {
        position:fixed !important;
        inset:0 auto auto 0 !important;
        width:0 !important;
        height:0 !important;
        min-height:0 !important;
        padding:0 !important;
        margin:0 !important;
        background:transparent !important;
        border:0 !important;
        box-shadow:none !important;
        pointer-events:none !important;
    }

    header.z-index-master .solid-navbar,
    header.z-index-master .navbar,
    header.z-index-master .container-fluid {
        width:0 !important;
        height:0 !important;
        min-height:0 !important;
        padding:0 !important;
        margin:0 !important;
        overflow:visible !important;
        background:transparent !important;
        border:0 !important;
        box-shadow:none !important;
    }

    main.page-content-padding {
        padding-top:0 !important;
    }

    header.z-index-master .navbar-toggler,
    header.z-index-master .navbar-collapse.show,
    header.z-index-master .navbar-collapse.collapsing {
        pointer-events:auto !important;
    }
}

/* Mobile masthead polish for content pages measured from screenshots. */
@media (max-width: 575.98px) {
    .about-v2 .school-title-hero.school-title-compact,
    .school-events-page .school-title-hero {
        min-height: 360px !important;
        padding: 122px 0 48px !important;
        overflow: hidden !important;
    }

    .about-v2 .school-title-layout,
    .school-events-page .school-title-layout {
        width: 100% !important;
        max-width: 100% !important;
    }

    .about-v2 .school-title-hero.school-title-compact .school-title-layout h1 {
        max-width: calc(100vw - 48px) !important;
        font-size: clamp(2.65rem, 11.2vw, 3.1rem) !important;
        line-height: .92 !important;
        white-space: nowrap !important;
        overflow: visible !important;
    }

    .school-events-page .school-title-layout h1 {
        max-width: calc(100vw - 48px) !important;
        font-size: clamp(2.55rem, 11.4vw, 3.15rem) !important;
        line-height: .9 !important;
        overflow: visible !important;
    }

    .school-events-page .school-title-layout h1 b {
        max-width: 100% !important;
        white-space: nowrap !important;
    }

    .school-title-layout p {
        max-width: calc(100vw - 48px) !important;
        font-size: 1rem !important;
        line-height: 1.65 !important;
    }

    .faq-v3 .faq-v3-hero,
    .route-v2 > .subsite-head,
    .references-v2 > .subsite-head {
        padding-top: 150px !important;
        padding-left: 24px !important;
        padding-right: 24px !important;
    }

    .faq-v3 .faq-v3-hero h1,
    .route-v2 > .subsite-head h1,
    .references-v2 > .subsite-head h1 {
        font-size: clamp(2.75rem, 11.4vw, 3.35rem) !important;
        line-height: 1.02 !important;
        max-width: 100% !important;
    }

    .references-v2 > .subsite-head h1 {
        font-size: clamp(2.55rem, 10.8vw, 3.15rem) !important;
    }

    .faq-v3 .faq-v3-hero span,
    .route-v2 > .subsite-head span,
    .references-v2 > .subsite-head span {
        display: block !important;
        max-width: 100% !important;
        line-height: 1.4 !important;
    }
}

/* Desktop navbar mode: only home and company landing start transparent. */
@media (min-width: 1200px) {
    header.z-index-master.nav-boxed-top {
        padding: 0 !important;
    }

    header.z-index-master.nav-boxed-top .solid-navbar {
        width: 100vw !important;
        max-width: none !important;
        min-height: 96px !important;
        margin: 0 !important;
        border-radius: 0 !important;
        background: rgba(14, 35, 29, .96) !important;
        border: 0 !important;
        border-bottom: 1px solid rgba(255, 255, 255, .11) !important;
        box-shadow: 0 18px 38px rgba(5, 18, 14, .24) !important;
        backdrop-filter: blur(16px) saturate(1.25) !important;
        -webkit-backdrop-filter: blur(16px) saturate(1.25) !important;
    }

    header.z-index-master.nav-boxed-top .solid-navbar > .container-fluid {
        padding-inline: clamp(28px, 2.6vw, 50px) !important;
    }

    header.z-index-master.nav-boxed-top #navV1 > .universal-nav-row {
        min-height: 96px !important;
    }

    header.z-index-master.nav-boxed-top #navV1 .universal-nav-brand {
        height: 96px !important;
        box-shadow: 0 14px 30px rgba(6, 22, 17, .2) !important;
    }

    header.z-index-master.nav-boxed-top #navV1 .universal-nav-menu .premium-link,
    header.z-index-master.nav-boxed-top #navV1 .universal-nav-menu .company-mobile-cta {
        text-shadow: none !important;
    }

    header.z-index-master.nav-transparent-top:not(.is-scrolled) .solid-navbar {
        background: transparent !important;
        border-color: transparent !important;
        box-shadow: none !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
    }
}

/* Floating Whatsapp chat widget. */
.floating-whatsapp-widget {
    position: fixed;
    right: clamp(18px, 2.4vw, 34px);
    bottom: clamp(20px, 2.6vw, 34px);
    z-index: 1220;
    display: grid;
    justify-items: end;
    gap: 12px;
    pointer-events: none;
}

.floating-whatsapp-toggle,
.floating-whatsapp-panel,
.floating-whatsapp-send,
.floating-whatsapp-close {
    pointer-events: auto;
}

.floating-whatsapp-toggle {
    width: 66px;
    height: 66px;
    display: grid;
    place-items: center;
    border: 0;
    border-radius: 50%;
    color: #fff;
    background: linear-gradient(145deg, #31d16f, #128c4a);
    box-shadow: 0 18px 40px rgba(10, 94, 49, .32), inset 0 1px 0 rgba(255,255,255,.28);
    font-size: 2.05rem;
    transition: transform .22s ease, box-shadow .22s ease, filter .22s ease;
}

.floating-whatsapp-toggle:hover,
.floating-whatsapp-toggle:focus {
    transform: translateY(-3px) scale(1.03);
    filter: saturate(1.05);
    box-shadow: 0 23px 48px rgba(10, 94, 49, .4), inset 0 1px 0 rgba(255,255,255,.32);
}

.floating-whatsapp-panel {
    width: min(335px, calc(100vw - 32px));
    padding: 18px;
    border: 1px solid rgba(17, 85, 48, .14);
    border-radius: 18px;
    color: #123827;
    background: #fffdf8;
    box-shadow: 0 24px 58px rgba(11, 49, 30, .2);
    opacity: 0;
    transform: translateY(14px) scale(.96);
    transform-origin: right bottom;
    visibility: hidden;
    transition: opacity .22s ease, transform .22s ease, visibility .22s ease;
}

.floating-whatsapp-widget.is-open .floating-whatsapp-panel {
    opacity: 1;
    transform: translateY(0) scale(1);
    visibility: visible;
}

.floating-whatsapp-close {
    position: absolute;
    top: 10px;
    right: 10px;
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border: 0;
    border-radius: 50%;
    color: #315846;
    background: #eef5ef;
    transition: background .2s ease, color .2s ease, transform .2s ease;
}

.floating-whatsapp-close:hover {
    color: #fff;
    background: #123827;
    transform: rotate(8deg);
}

.floating-whatsapp-head {
    display: flex;
    gap: 13px;
    align-items: flex-start;
    padding-right: 32px;
}

.floating-whatsapp-head > span {
    width: 46px;
    height: 46px;
    flex: 0 0 46px;
    display: grid;
    place-items: center;
    border-radius: 14px;
    color: #fff;
    background: #15a85a;
    font-size: 1.45rem;
    box-shadow: 0 12px 24px rgba(21, 168, 90, .24);
}

.floating-whatsapp-head strong {
    display: block;
    margin-top: 2px;
    color: #123827;
    font-size: 1.04rem;
    line-height: 1.25;
    font-weight: 900;
}

.floating-whatsapp-head small {
    display: block;
    margin-top: 5px;
    color: #6a7a70;
    line-height: 1.45;
}

.floating-whatsapp-send {
    min-height: 48px;
    margin-top: 18px;
    display: inline-flex;
    width: 100%;
    align-items: center;
    justify-content: center;
    gap: 9px;
    border-radius: 999px;
    color: #fff;
    background: #123827;
    text-decoration: none;
    font-weight: 900;
    box-shadow: 0 14px 28px rgba(18, 56, 39, .18);
    transition: background .22s ease, transform .22s ease, box-shadow .22s ease;
}

.floating-whatsapp-send:hover,
.floating-whatsapp-send:focus {
    color: #fff;
    background: #15a85a;
    transform: translateY(-2px);
    box-shadow: 0 19px 34px rgba(21, 168, 90, .26);
}

@media (max-width: 767.98px) {
    .floating-whatsapp-widget {
        display: none;
    }

    .floating-whatsapp-toggle {
        width: 58px;
        height: 58px;
        font-size: 1.8rem;
    }
}

/* Whatsapp widget: chat-style opening state. */
.floating-whatsapp-widget {
    align-items: end;
}

.floating-whatsapp-widget.is-open .floating-whatsapp-toggle {
    opacity: 0;
    pointer-events: none;
    transform: translateY(12px) scale(.62) rotate(18deg);
}

.floating-whatsapp-panel {
    width: min(354px, calc(100vw - 28px));
    padding: 0;
    overflow: hidden;
    border: 1px solid rgba(16, 113, 66, .16);
    border-radius: 20px;
    background: #eef7ef;
    box-shadow: 0 28px 70px rgba(8, 42, 26, .28);
    transform: translateY(24px) scale(.82);
    transition: opacity .28s ease, transform .34s cubic-bezier(.2, .86, .25, 1), visibility .28s ease;
}

.floating-whatsapp-widget.is-open .floating-whatsapp-panel {
    animation: whatsappPanelPop .42s cubic-bezier(.2, .9, .2, 1) both;
}

.floating-whatsapp-close {
    top: 14px;
    right: 14px;
    z-index: 3;
    color: #dff8e8;
    background: rgba(255, 255, 255, .14);
}

.floating-whatsapp-close:hover,
.floating-whatsapp-close:focus {
    color: #123827;
    background: #fff;
}

.floating-whatsapp-chat-head {
    position: relative;
    display: flex;
    align-items: center;
    gap: 12px;
    min-height: 78px;
    padding: 16px 58px 16px 18px;
    color: #fff;
    background: linear-gradient(135deg, #075e54 0%, #128c4a 100%);
}

.floating-whatsapp-avatar {
    position: relative;
    width: 46px;
    height: 46px;
    flex: 0 0 46px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    color: #fff;
    background: rgba(255, 255, 255, .16);
    font-size: 1.55rem;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .22);
}

.floating-whatsapp-avatar::after {
    content: "";
    position: absolute;
    right: 1px;
    bottom: 2px;
    width: 10px;
    height: 10px;
    border: 2px solid #0b7d48;
    border-radius: 50%;
    background: #35e178;
}

.floating-whatsapp-chat-head strong,
.floating-whatsapp-chat-head small {
    display: block;
    font-size: 0;
}

.floating-whatsapp-chat-head strong::after {
    content: "AVCIKORU";
    font-size: 1.04rem;
    line-height: 1.15;
    font-weight: 900;
}

.floating-whatsapp-chat-head small::after {
    content: none;
    display: none;
}

.floating-whatsapp-status {
    position: absolute;
    left: 52px;
    bottom: 17px;
    width: 10px;
    height: 10px;
    border: 2px solid #0b7d48;
    border-radius: 50%;
    background: #35e178;
}

.floating-whatsapp-chat-body {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 9px;
    min-height: 156px;
    padding: 18px;
    background:
        radial-gradient(circle at 14% 16%, rgba(255, 255, 255, .72), transparent 18%),
        linear-gradient(135deg, #edf8ee 0%, #dff0df 100%);
}

.floating-whatsapp-chat-body::before {
    content: "";
    position: absolute;
    inset: 0;
    opacity: .22;
    background-image:
        linear-gradient(45deg, rgba(18, 56, 39, .08) 25%, transparent 25%),
        linear-gradient(-45deg, rgba(18, 56, 39, .08) 25%, transparent 25%);
    background-size: 26px 26px;
    pointer-events: none;
}

.floating-whatsapp-message {
    position: relative;
    z-index: 1;
    width: fit-content;
    max-width: 88%;
    padding: 10px 13px;
    border-radius: 0 14px 14px 14px;
    color: #153d2c;
    background: #fff;
    box-shadow: 0 8px 18px rgba(7, 39, 24, .08);
    font-size: .95rem;
    font-weight: 800;
    line-height: 1.35;
    opacity: 0;
    transform: translateX(-14px) translateY(8px) scale(.96);
}

.floating-whatsapp-message::before {
    content: "";
    position: absolute;
    left: -7px;
    top: 0;
    border-top: 8px solid #fff;
    border-left: 8px solid transparent;
}

.floating-whatsapp-widget.is-open .floating-whatsapp-message:nth-child(1) {
    animation: whatsappMessageIn .34s ease .22s forwards;
}

.floating-whatsapp-widget.is-open .floating-whatsapp-message:nth-child(2) {
    animation: whatsappMessageIn .34s ease .54s forwards;
}

.floating-whatsapp-typing {
    position: relative;
    z-index: 1;
    width: 58px;
    height: 31px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    border-radius: 0 14px 14px 14px;
    background: #fff;
    box-shadow: 0 8px 18px rgba(7, 39, 24, .08);
    opacity: 0;
    transform: translateX(-12px);
}

.floating-whatsapp-typing span {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #7f9589;
    animation: whatsappTypingDot .8s ease-in-out infinite;
}

.floating-whatsapp-typing span:nth-child(2) {
    animation-delay: .12s;
}

.floating-whatsapp-typing span:nth-child(3) {
    animation-delay: .24s;
}

.floating-whatsapp-widget.is-open .floating-whatsapp-typing {
    animation: whatsappTypingShow .68s ease .08s both;
}

.floating-whatsapp-send {
    min-height: 54px;
    margin: 0;
    border-radius: 0;
    background: #0f8f4c;
    box-shadow: none;
    font-size: .98rem;
}

.floating-whatsapp-send:hover,
.floating-whatsapp-send:focus {
    background: #075e54;
    transform: none;
    box-shadow: none;
}

@keyframes whatsappPanelPop {
    0% {
        opacity: 0;
        transform: translateY(24px) scale(.82);
    }
    64% {
        opacity: 1;
        transform: translateY(-3px) scale(1.02);
    }
    100% {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

@keyframes whatsappMessageIn {
    0% {
        opacity: 0;
        transform: translateX(-14px) translateY(8px) scale(.96);
    }
    100% {
        opacity: 1;
        transform: translateX(0) translateY(0) scale(1);
    }
}

@keyframes whatsappTypingShow {
    0%, 100% {
        opacity: 0;
        transform: translateX(-12px);
    }
    18%, 82% {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes whatsappTypingDot {
    0%, 100% {
        opacity: .38;
        transform: translateY(0);
    }
    50% {
        opacity: 1;
        transform: translateY(-3px);
    }
}

/* Customer revision: tighter logo card and colored mobile quick actions. */
@media (min-width: 1200px) {
    #navV1 .universal-nav-brand {
        width: clamp(252px, 14vw, 292px) !important;
        padding-inline: 6px !important;
    }

    #navV1 .universal-nav-logo {
        width: 96% !important;
    }
}

@media (max-width: 1199.98px) {
    .mobile-top-logo {
        padding-inline: 8px !important;
    }

    .mobile-app-nav .mobile-app-nav-item,
    .mobile-app-nav .mobile-app-nav-item:hover,
    .mobile-app-nav .mobile-app-nav-item:focus,
    .mobile-app-nav .mobile-app-nav-item.active {
        color: #fff !important;
    }

    .mobile-app-nav .mobile-app-nav-item i,
    .mobile-app-nav .mobile-app-nav-item span {
        color: #fff !important;
    }

    .mobile-app-nav .mobile-app-nav-home,
    .mobile-app-nav .mobile-app-nav-item:nth-child(1) {
        background: #d8242f !important;
    }

    .mobile-app-nav .mobile-app-nav-whatsapp,
    .mobile-app-nav .mobile-app-nav-item:nth-child(2) {
        background: #18a957 !important;
    }

    .mobile-app-nav .mobile-app-nav-reservation,
    .mobile-app-nav .mobile-app-nav-item:nth-child(3) {
        background: #f2b51d !important;
    }

    .mobile-app-nav .mobile-app-nav-phone,
    .mobile-app-nav .mobile-app-nav-item:nth-child(4) {
        background: #147dbb !important;
    }
}
