/* ============================================
   HEADER MENU FIX - AGGRESSIVE FIX
   Prevents menu from appearing behind logo
   ============================================ */

/* FORCE LOGO TO STAY LEFT AND NOT OVERLAP */
.header-main .container {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    flex-wrap: nowrap !important;
    gap: 0 !important;
    width: 100% !important;
    position: relative !important;
    overflow: visible !important;
}

/* LOGO - FIXED WIDTH, NO EXPANSION */
.site-logo {
    position: relative !important;
    z-index: 1 !important;
    flex-shrink: 0 !important;
    flex-grow: 0 !important;
    flex-basis: auto !important;
    max-width: 280px !important;
    width: auto !important;
    margin-right: 40px !important;
    padding-right: 0 !important;
    overflow: visible !important;
}

.site-logo a,
.site-logo .custom-logo-link {
    display: block !important;
    width: auto !important;
    max-width: 280px !important;
    overflow: visible !important;
}

.site-logo img,
.site-logo .custom-logo-link img,
.site-logo-img,
.site-logo a img,
.site-logo .custom-logo-link img[style],
.site-logo img[style] {
    max-width: 280px !important;
    width: auto !important;
    height: 60px !important;
    object-fit: contain !important;
    object-position: left center !important;
    display: block !important;
}

/* NAVIGATION - FORCE TO RIGHT OF LOGO */
.main-navigation {
    position: relative !important;
    z-index: 100 !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    max-width: none !important;
    overflow: visible !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
    order: 2 !important;
}

.main-menu {
    position: relative !important;
    z-index: 100 !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: flex-start !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
}

.main-menu li {
    position: relative !important;
    z-index: 100 !important;
    flex-shrink: 0 !important;
}

.main-menu a {
    position: relative !important;
    z-index: 100 !important;
    white-space: nowrap !important;
}

/* STICKY APPOINTMENT CTA */
.sticky-appointment-cta {
    order: 3 !important;
    flex-shrink: 0 !important;
    margin-left: auto !important;
    z-index: 100 !important;
}

/* RESPONSIVE - TABLET */
@media (min-width: 769px) {
    .site-logo {
        max-width: 240px !important;
        margin-right: 30px !important;
    }
    
    .site-logo img,
    .site-logo .custom-logo-link img,
    .site-logo-img,
    .site-logo a img {
        max-width: 240px !important;
    }
}

/* RESPONSIVE - MEDIUM */
@media (min-width: 900px) {
    .site-logo {
        max-width: 260px !important;
        margin-right: 35px !important;
    }
    
    .site-logo img,
    .site-logo .custom-logo-link img,
    .site-logo-img,
    .site-logo a img {
        max-width: 260px !important;
    }
}

/* RESPONSIVE - LARGE */
@media (min-width: 1200px) {
    .site-logo {
        max-width: 280px !important;
        margin-right: 40px !important;
    }
    
    .site-logo img,
    .site-logo .custom-logo-link img,
    .site-logo-img,
    .site-logo a img {
        max-width: 280px !important;
    }
}
