/* ============================================
   EFIAGES & FIAGES - Custom CSS Fixes
   Fixes: Header layout, Logo size, Nav overlap, Placeholder images
   ============================================ */

/* ---- HEADER FIX ---- */

/* Fix logo max height so it doesn't push nav out */
.xb-header-logo a.logo1 img {
    max-height: 55px;
    width: auto;
    object-fit: contain;
}

/* Fix header wrap - proper padding & vertical alignment */
.header-style .header__wrap {
    align-items: center !important;
    padding: 12px 50px 12px 40px !important;
    min-height: 80px;
}

/* *** KEY FIX: Override the -99px left shift that causes HOME to overlap logo *** */
.header-style .main-menu__wrap {
    transform: translateX(0) !important;
}

@media only screen and (min-width: 1200px) and (max-width: 1500px) {
    .header-style .header__wrap {
        padding: 12px 25px 12px 25px !important;
    }
    .header-style .main-menu__wrap {
        transform: translateX(0) !important;
    }
}

@media (max-width: 1199px) {
    .header-style .header__wrap {
        padding: 10px 15px !important;
        margin: 0 15px !important;
    }
    .xb-header-logo a.logo1 img {
        max-height: 48px;
    }
}

@media (max-width: 991px) {
    .header-style .header__wrap {
        padding: 15px 15px !important;
    }
    .xb-header-logo a.logo1 img {
        max-height: 42px;
    }
}

@media (max-width: 767px) {
    .xb-header-logo a.logo1 img {
        max-height: 36px;
    }
}

/* Make sure nav links are vertically centered */
.header-style .main-menu__wrap .main-menu,
.header-style .main-menu__wrap .main-menu ul {
    align-items: center;
    height: 100%;
}

.main-menu ul li a {
    align-items: center;
}

/* Fix active HOME link alignment */
.main-menu ul li.active > a {
    display: inline-flex;
    align-items: center;
}

/* ---- HERO SECTION IMAGES FIX ---- */
/* Hide the placeholder hero images (465X943, 453X920) */
.hero-content-img .img img {
    display: none;
}

/* Remove the entire hero content img section visually */
.hero-content-img {
    pointer-events: none;
}

/* ---- FEATURE SECTION IMAGES FIX ---- */
/* Feature item images are placeholder grays - hide them */
.xb-feature-item .xb-item--img {
    display: none;
}

/* Adjust feature item layout since images are hidden */
.xb-feature-item .xb-item--inner {
    padding: 20px;
    border-radius: 10px;
    background: #f8f9fa;
    transition: 0.3s;
}

.xb-feature-item .xb-item--inner:hover {
    background: #eef3ff;
    box-shadow: 0 4px 20px rgba(19, 16, 83, 0.08);
}

.xb-feature-item:not(:last-child) {
    margin-bottom: 15px;
}

/* ---- ABOUT SECTION IMAGES FIX ---- */
/* About images are placeholders - use a gradient fill instead */
.xb-about-img-item .img {
    min-height: 200px;
    background: linear-gradient(135deg, #260f8f 0%, #00b8ff 100%);
    border-radius: 10px;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}

.xb-about-img-item .img img {
    opacity: 0;
    position: absolute;
}

/* ---- SCHEDULE SECTION Z-INDEX FIX ---- */
.schedule-section {
    position: relative;
    z-index: 2;
}

/* ---- DROPDOWN MENU FIXES ---- */

/* Hide submenus by default */
.main-menu ul li .submenu,
.main-menu ul li ul.sub-menu {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    background: #fff;
    width: 150px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.1);
    border-radius: 0 0 8px 8px;
    z-index: 999;
    padding: 8px 0;
    margin: 0;
    list-style: none;
    white-space: nowrap;
    overflow: hidden;
    /* Smart containment */
    max-width: min(150px, calc(100vw - 20px));
    box-sizing: border-box;
}

/* Right-align last 3 menu items to prevent overflow */
.main-menu ul li:nth-last-child(-n+3) .submenu,
.main-menu ul li:nth-last-child(-n+3) ul.sub-menu {
    left: auto;
    right: 0;
}

/* For middle items, check if they overflow */
.main-menu ul li:nth-child(n+3):nth-last-child(n+3) .submenu,
.main-menu ul li:nth-child(n+3):nth-last-child(n+3) ul.sub-menu {
    /* Default left positioning, but can be adjusted if needed */
    left: 0;
}

/* Media queries for smaller screens */
@media (max-width: 1200px) {
    .main-menu ul li .submenu,
    .main-menu ul li ul.sub-menu {
        min-width: 140px;
        max-width: 180px;
    }
}

@media (max-width: 992px) {
    .main-menu ul li .submenu,
    .main-menu ul li ul.sub-menu {
        position: static;
        display: block;
        box-shadow: none;
        background: rgba(255,255,255,0.95);
        margin-top: 5px;
        border-radius: 4px;
        padding: 5px 0;
    }

    .main-menu ul li:hover .submenu,
    .main-menu ul li:hover ul.sub-menu {
        display: block;
    }
}

/* Show submenu on hover */
.main-menu ul li:hover .submenu,
.main-menu ul li:hover ul.sub-menu {
    display: block;
}

/* Style submenu items */
.main-menu ul li .submenu li,
.main-menu ul li ul.sub-menu li {
    display: block;
    width: 100%;
}

.main-menu ul li .submenu li a,
.main-menu ul li ul.sub-menu li a {
    display: block;
    padding: 4px 8px;
    color: #333;
    text-decoration: none;
    font-size: 12px;
    transition: background 0.3s;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.main-menu ul li .submenu li a:hover,
.main-menu ul li ul.sub-menu li a:hover {
    background: #f8f9fa;
    color: #260F8F;
}

/* Ensure parent li is positioned relatively for absolute submenu */
.main-menu ul li.menu-item-has-children,
.main-menu ul li.menu-item-has-children {
    position: relative;
}
