
.mega-nav {
  color: #fff;
  position: relative;
}

/* MOBILE MENU BUTTON */
.menu-toggle {
  display: none;
  background: #fff;
  color: #0f0a41;
  border: 0;
  padding: 15px;
  width: 100%;
  text-align: left;
  font-size: 18px;
  cursor: pointer;
}

/* MAIN MENU */
.main-menu {
  display: flex;
  list-style: none;
  padding:0px;
}
.main-menu > li > a {
  font-family: 'Aeonik'!important;
  font-size: 17px;
  font-weight:500;
  color: #0f0a41;
  padding: 15px 10px;
  display: block;
  text-decoration: none;
  transition: all 300ms ease 0s;
}
.main-menu > li {
  position: relative;
}
.main-menu > li > a:hover {
  background: #4f17a8;
  color:#fff;
}
.main-menu > li > a.select {
  background: #4f17a8;
  color:#fff;
}
/* DESKTOP DROPDOWN */
.has-mega:hover .mega-dropdown {
  display: block;
}

.mega-dropdown {
  display: none;
  position: absolute;
  left: 0;
  background: #fff;
  color: #333;
  padding:10px 25px;
  top:52px;
  box-shadow: 0 5px 12px rgba(0,0,0,0.2);
  border-top:2px solid #4f17a8;
}
/* When there is only 1 column */
.mega-row.one-col .mega-dropdown,
.mega-dropdown.one-col {
  width: 255px;      /* small width */
}

/* When there are 2 columns */
.mega-row.two-col .mega-dropdown,
.mega-dropdown.two-col {
  width: 450px;      /* medium width */
}

/* When 3 or more columns */
.mega-row.three-col .mega-dropdown,
.mega-dropdown.three-col {
  width: 700px;     /* large width */
}
.mega-row {
  display: flex;
  gap: 40px;
}
.mega-dropdown h3{
  font-size:22px;
  color: #200f3b;
  font-weight: 400;
  padding: 10px 0px;
}
.mega-col h4{
  font-size:18px;
  color: #200f3b;
  font-weight:700;
}
.mega-col a {
  font-family: 'aeonikmedium';
  display: block;
  padding: 4px 0;
  font-size: 14px;
  text-decoration: none;
   font-size: 14px;
  color: #222;
}
.mega-col a:hover {
  text-decoration: underline;
}
.submenu-header {
    display: none;
  }
  .menu-toggle {
  transition: all 0.3s ease;
}
/* --------------------------- */
/* MOBILE VERSION              */
/* --------------------------- */
@media (max-width: 768px) {

  .menu-toggle {
    display: block;
    background: transparent;
    position: absolute;
    top: -58px;
    left: 0;
    padding: 10px;
    background: transparent;
    border: none;
    font-size: 22px;
    cursor: pointer;
    transition: all 0.3s ease;
  }
  /* WHEN MENU IS OPEN → MOVE RIGHT */
  .main-menu.show + .menu-toggle,
  .menu-open .menu-toggle {
    left: auto;
  }
  .submenu-header {
    display: block;
  }
  .main-menu {
    display: none;
    flex-direction: column;
    background: #fff;
    width: 100%;
    height: 100vh;
  }
  .main-menu.show {
    display: block;
  }
  .main-menu > li > a {
    color: #0f0a41;
    border-bottom: 1px solid #e5e7eb;
  }

  /* HIDE DESKTOP DROPDOWNS */
  .mega-dropdown {
    display: none !important;
  }

  .mega-row {
    flex-direction: column;   /* Stack vertically */
    width: 100%;
  }
  .mega-col {
    width: 100% !important;   /* Full width */
    flex: unset !important;
  }
  .mega-col a {
    width: 100%;
    display: block;
  }

  /* SLIDE PANEL */
  .submenu-panel {
    position: fixed;
    top: 0;
    left: 100%;
    width: 100%;
    height: 100%;
    background: #fff;
    color: #fff;
    transition: left 0.35s ease;
    z-index: 9999;
    overflow-y: auto;
  }

  .submenu-panel.active {
    left: 0;
  }

  .submenu-header {
    display: flex;
    justify-content: space-between;
    padding: 15px;
    background: #fff;
    border-bottom: 1px solid #e5e7eb;
  }

  .submenu-header button {
    background: none;
    border: 0;
    color: #200f3b;
    font-size: 16px;
    margin: 0px;
    top: 20px;
  }

  .submenu-content {
    width: 100%;
  }

  .submenu-content h4 {
    color: #0f0a41;
    padding:15px 20px 10px;
  }

  .submenu-content a {
    color: #5d5171;
    padding: 8px 0;
    border-bottom: 1px solid #e5e7eb;
    display: block;
    font-size: 15px;
    font-weight: 400;
    padding:10px 20px;
  }
}

/* Hide on desktop */
.mobile-close {
  display: none;
}

/* Show only on mobile */
@media (max-width: 768px) {
  .mobile-close {
    display: block;
    text-align: right;
    padding: 10px 15px;
  }

  .menu-close {
    background: none;
    border: none;
    font-size: 22px;
    color: #0f0a41;
    cursor: pointer;
  }
}