/* GLOBAL SCOPE */
.custom-header,
.custom-header * {
    box-sizing: border-box;
    font-family: Arial, sans-serif;
}

/* HEADER POSITIONING */
.custom-header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    padding: 18px 60px;
    z-index: 999;
    transition: 0.4s;
    display: flex;
    justify-content: center;
}

.custom-header.transparent {
    background: transparent;
}

.custom-header.scrolled {
    background: #fff;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
}

/* CONTAINER */
.custom-container {
    width: 100%;
    max-width: 1300px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

/* LOGO */
.custom-logo {
    display: flex;
    align-items: center;
    gap: 14px;
}

.custom-logo img {
    height: 42px;
}

/* Only the FIRST logo inverts when transparent */
.custom-header.transparent .main-logo {
    filter: brightness(0) invert(1);
}

/* Partner logo stays original */
.custom-header.transparent .partner-logo {
    filter: none !important;
}

/* NAVIGATION */
.custom-nav-links {
    display: flex;
    list-style: none;
    gap: 32px;
    margin: 0;
    padding: 0;
}

.custom-nav-links a {
    text-decoration: none;
    color: #000;
    font-weight: 500;
}

/* Transparent → Top navigation items turn white */
.custom-header.transparent .custom-nav-links>li>a {
    color: #fff !important;
}

/* Transparent → Hamburger lines white */
.custom-header.transparent .custom-menu-btn span {
    background: #fff !important;
}

/* MEGA MENU */
.custom-has-mega {
    position: relative;
}

.custom-mega-menu {
    background-image: url("../images/Banner.png");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

    display: none;
    position: absolute;
    top: 100%;
    left: -100%;
    transform: translateX(-65%);

    /* background: #fff; */
    padding: 20px 300px;
    margin-top: 26px;

    width: 100vw;
    max-width: 1200px;
    /* container width */
    /* box-shadow: 0 6px 30px rgba(0,0,0,0.15); */
    justify-content: space-between;
    z-index: 9999;
    border-radius: 6px;
}

.custom-mega-menu ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.custom-mega-menu a {
    display: block;
    padding: 8px 0;
    font-size: 15px;
    color: #000 !important;
    /* ALWAYS black */
    filter: none !important;
}

/* SHOW ON HOVER (DESKTOP) */
@media (min-width: 901px) {

    .custom-has-mega:hover .custom-mega-menu {
        display: flex !important;
    }
}

/* MOBILE SUB-MENU OPEN */
@media (max-width: 900px) {
    .custom-mega-menu {
        display: none !important;
        position: static;
        transform: none;
        width: 100%;
        flex-direction: column;
        padding: 15px 20px;
        box-shadow: none;
    }

    .custom-mega-menu.open {
        display: block !important;
        margin: 0;
        padding: 0 15px;
    }
}

/* HAMBURGER */
.custom-menu-btn {
    display: none;
    flex-direction: column;
    gap: 6px;
    cursor: pointer;
}

.custom-menu-btn span {
    width: 26px;
    height: 3px;
    background: #000;
}

/* MOBILE */
@media (max-width: 900px) {
    .custom-menu-btn {
        display: flex;
    }

    .custom-nav-links {
        position: fixed;
        top: 75px;
        left: 0;
        width: 100%;
        height: 0;
        overflow: hidden;
        flex-direction: column;
        background: #fff;
        transition: 0.4s;
        padding-left: 25px;
        /* padding-bottom: 25px; */
    }

    .custom-nav-links.open {
        height: auto;
        padding: 20px;
        gap: 10px;
    }

    .custom-mega-menu {
        width: 100%;
        flex-direction: column;
        padding: 20px;
    }
}

@media (max-width: 500px) {
    .custom-header {
        padding: 18px 20px;
    }

}

/* MOBILE MENU TEXT FIX */
@media (max-width: 900px) {
    .custom-nav-links.open li a {
        color: #000 !important;
        /* Always black inside mobile menu */
        filter: none !important;
    }

    .custom-header.transparent .custom-nav-links.open li a {
        color: #000 !important;
        padding: 5px;
        /* Overrides transparent mode */
    }
}


/* ---------- HOVER UNDERLINE + BLUE TEXT ---------- */

.custom-nav-links > li > a {
    position: relative;
    transition: color 0.25s ease;
}

.custom-nav-links > li > a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -4px;
    height: 2px;
    width: 0;
    background: #007BFF;
    transition: width 0.25s ease;
}

/* Desktop hover */
.custom-nav-links > li > a:hover {
    color: #007BFF !important;
}
.custom-nav-links > li > a:hover::after {
    width: 100%;
}

/* Transparent header hover still blue */
.custom-header.transparent .custom-nav-links > li > a:hover {
    color: #007BFF !important;
}

/* ---------- ARROW STYLE ---------- */

.custom-arrow-link {
    display: flex;
    align-items: center;
    gap: 6px;
    cursor: pointer;
    position: relative;
}

.custom-arrow-link .arrow {
    width: 7px;
    height: 7px;
    border-left: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: rotate(-45deg);
    transition: transform 0.25s ease;
    margin-top: -2px;
}

/* Desktop hover → rotate arrow */
@media (min-width: 901px) {
    .custom-has-mega:hover .custom-arrow-link .arrow {
        transform: rotate(135deg);
    }
}

/* Mobile menu open → rotate arrow */
.custom-arrow-link.active .arrow {
    transform: rotate(135deg);
}

/* Mobile dropdown link hover */
.custom-mega-menu a:hover {
    color: #007BFF !important;
    text-decoration: underline;
}


/* footer */
/* ---------- CUSTOM FOOTER ---------- */
.custom-footer {
    background: #2f2f2f;
    padding: 28px 0;
    display: flex;
    justify-content: center;
    align-items: center;
}

.custom-footer-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 120px;
    flex-wrap: wrap;
    text-align: center;
    width: 100%;
    max-width: 1200px;
    padding: 0 20px;
}

.custom-footer-wrapper p {
    color: #ffffff;
    font-size: 16px;
    margin: 0;
    line-height: 1.5;
}

/* Mobile Responsive */
@media (max-width: 768px) {
  .custom-footer-wrapper {
      gap: 25px;
  }
  .custom-footer-wrapper p {
      font-size: 14px;
  }
}


/* Parent active */
.custom-nav-links a.active {
  color: #007BFF !important;
}

/* Sub-menu active */
.custom-mega-menu a.active-sub {
  color: #007BFF !important;
}
