/* =====================================================
   BCD HEADER - RESPONSIVE FIX
   Keeps desktop layout intact and switches to mobile
   navigation before logo/menu collision
===================================================== */


/* Keep header above page content */
.site-header,
.elementor-location-header {
    position: relative;
    z-index: 1000;
}


/* Stop sticky header transforms from resizing logo */
.elementor-sticky--effects,
.elementor-sticky--effects * {
    transform: none !important;
}


/* Prevent individual menu labels from wrapping */
.elementor-location-header .elementor-nav-menu a {
    white-space: nowrap !important;
}


/* =====================================================
   LARGE DESKTOP
   1201px+
===================================================== */

@media (min-width: 1201px) {

    /* Logo */
    .elementor-location-header .elementor-widget-image img {
        width: 235px !important;
        max-width: 235px !important;
        height: auto !important;
        object-fit: contain !important;
    }

    /* Navigation */
    .elementor-location-header .elementor-nav-menu a {
        font-size: 14px !important;
        line-height: 1.2 !important;
        padding: 10px 8px !important;
    }

    /* Full desktop menu */
    .elementor-location-header .elementor-nav-menu--main {
        display: flex !important;
    }

}


/* =====================================================
   SMALL DESKTOP
   951px - 1200px
   Same header structure, just slightly smaller
===================================================== */

@media (min-width: 951px) and (max-width: 1200px) {

    /*
    IMPORTANT:
    Do NOT wrap the Elementor containers.
    Keep the existing 3-column header intact.
    */

    .elementor-location-header .elementor-container,
    .elementor-location-header .e-con-inner {
        flex-wrap: nowrap !important;
    }

    /* Make logo smaller */
    .elementor-location-header .elementor-widget-image img {
        width: 175px !important;
        max-width: 175px !important;
        height: auto !important;
        object-fit: contain !important;
    }

    /* Tighten menu text */
    .elementor-location-header .elementor-nav-menu a {
        font-size: 11px !important;
        line-height: 1.2 !important;
        padding: 8px 5px !important;
        letter-spacing: 1px !important;
    }

    /* Keep full navigation visible */
    .elementor-location-header .elementor-nav-menu--main {
        display: flex !important;
    }

}


/* =====================================================
   TABLET + MOBILE
   950px and below
   Switch to Elementor hamburger BEFORE collision
===================================================== */

@media (max-width: 950px) {

    /* Do NOT force containers into artificial 50/50 rows */
    .elementor-location-header .elementor-container,
    .elementor-location-header .e-con-inner {
        flex-wrap: nowrap !important;
    }

    /* Logo stays visible and centered */
    .elementor-location-header .elementor-widget-image img {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        width: auto !important;
        max-width: 165px !important;
        height: auto !important;
        object-fit: contain !important;
    }

    /* Hide desktop menu before it reaches the logo */
    .elementor-location-header .elementor-nav-menu--main {
        display: none !important;
    }

    /* Show Elementor's hamburger */
    .elementor-location-header .elementor-menu-toggle {
        display: flex !important;
        visibility: visible !important;
        opacity: 1 !important;
        position: relative !important;
        z-index: 99999 !important;
        cursor: pointer !important;
        pointer-events: auto !important;
    }

    /* Dropdown background */
    .elementor-location-header .elementor-nav-menu--dropdown,
    .elementor-location-header .elementor-nav-menu--dropdown ul {
        background-color: #000000 !important;
        z-index: 99998 !important;
    }

    /* Dropdown links */
    .elementor-location-header .elementor-nav-menu--dropdown a,
    .elementor-location-header .elementor-nav-menu--dropdown a span {
        color: #81D8D0 !important;
        opacity: 1 !important;
    }

    .elementor-location-header .elementor-nav-menu--dropdown a:hover,
    .elementor-location-header .elementor-nav-menu--dropdown a:focus {
        color: #ffffff !important;
    }

}


/* =====================================================
   PHONE
   767px and below
===================================================== */

@media (max-width: 767px) {

    .elementor-location-header .elementor-widget-image img {
        max-width: 145px !important;
    }

    .elementor-location-header .elementor-section,
    .elementor-location-header .elementor-container {
        padding-top: 5px !important;
        padding-bottom: 5px !important;
    }

}