.ast-above-header-bar,
.ast-above-header{ background:var(--navy) !important; }

.tb-item{
  display:inline-block; color:#fff !important; text-decoration:none;
  font-size:14px; margin-right:26px; transition:color .2s ease;
}
.tb-item:hover{ color:var(--accent) !important; }
.tb-phone::before, .tb-mail::before{ color:#fff; }

.main-header-bar,
.ast-primary-header-bar{
  background:#fff !important; padding-top:6px !important; padding-bottom:0 !important;
}
.site-primary-header-wrap,
.ast-primary-header-bar .ast-builder-grid-row{ min-height:0 !important; }
.ast-site-identity{ padding:0 !important; }

.site-logo-img img,
.custom-logo-link img{
  max-width:300px !important; height:auto !important;
  margin-top:0 !important; margin-bottom:-14px !important;
}

.main-header-menu > .menu-item > .menu-link{
  font-size:17px; font-weight:500; padding:10px 16px; border-radius:8px;
  border-bottom:3px solid transparent; color:var(--navy) !important;
  transition:background .25s ease, border-color .25s ease, color .25s ease;
}
.main-header-menu > .menu-item:hover > .menu-link{ background:var(--light); }
.main-header-menu > .menu-item.current-menu-item > .menu-link{
  background:var(--light); border-bottom-color:var(--accent);
}

.ast-desktop .main-header-menu .sub-menu{
  min-width:270px; background:#fff; border-top:3px solid var(--navy);
  border-radius:0 0 12px 12px; box-shadow:0 10px 28px rgba(0,0,0,.12);
  padding:8px 0; overflow:hidden; transform:translateY(10px);
  transition:opacity .25s ease, transform .25s ease, visibility .25s;
}
.ast-desktop .main-header-menu .menu-item:hover > .sub-menu,
.ast-desktop .main-header-menu .menu-item.focus > .sub-menu{ transform:translateY(0); }

.ast-desktop .main-header-menu .sub-menu .menu-link{
  font-size:15px; font-weight:600; padding:10px 22px;
  color:#1a1a1a !important; border-left:4px solid transparent;
  transition:background .2s ease, padding-left .2s ease, border-color .2s ease, color .2s ease;
}
.ast-desktop .main-header-menu .sub-menu .menu-item:hover > .menu-link,
.ast-desktop .main-header-menu .sub-menu .current-menu-item > .menu-link{
  padding-left:30px; border-left-color:var(--accent);
  background:var(--light); color:var(--navy) !important;
}

.ast-mobile-svg,
.menu-toggle .ast-mobile-svg{ fill:var(--navy) !important; }
.main-header-menu-toggle,
.menu-toggle{ color:var(--navy) !important; }

@media (max-width:921px){
  .site-logo-img img,
  .custom-logo-link img{ max-width:170px !important; }
  .tb-item{ font-size:13px; margin-right:14px; }
}

.ast-desktop .main-header-menu > .menu-item > .menu-link{
  font-size:15px; font-weight:500; padding:9px 13px; border-radius:6px;
  border-bottom:2px solid transparent; line-height:21px;
}
.ast-desktop .main-header-menu > .menu-item:hover > .menu-link,
.ast-desktop .main-header-menu > .menu-item:focus-within > .menu-link,
.ast-desktop .main-header-menu > .menu-item.focus > .menu-link,
.ast-desktop .main-header-menu > .menu-item.current-menu-item > .menu-link,
.ast-desktop .main-header-menu > .menu-item.current-menu-ancestor > .menu-link,
.ast-desktop .main-header-menu > .menu-item.current-menu-parent > .menu-link{
  background:var(--light); border-bottom-color:var(--accent); color:var(--navy) !important;
}

/* arrow: small gap, flips up when open */
.ast-desktop .main-header-menu .menu-item-has-children > .menu-link .dropdown-menu-toggle{ margin-left:6px; }
.ast-desktop .main-header-menu .menu-item-has-children > .menu-link .ast-icon{ display:inline-flex; transition:transform .25s ease; }
.ast-desktop .main-header-menu > .menu-item-has-children:hover > .menu-link .ast-icon,
.ast-desktop .main-header-menu > .menu-item-has-children:focus-within > .menu-link .ast-icon,
.ast-desktop .main-header-menu > .menu-item-has-children.focus > .menu-link .ast-icon{ transform:rotate(180deg); }

/* dropdown card */
.ast-desktop .main-header-menu .sub-menu{
  min-width:240px; padding:8px 0; border:1px solid #d9e2ef; border-top:1px solid #d9e2ef;
  border-radius:8px; box-shadow:0 12px 28px rgba(20,40,80,.14);
}
.ast-desktop .main-header-menu .sub-menu .menu-link{
  font-size:13px; font-weight:600; line-height:1.3; color:#2c2c2c !important;
  padding:10px 18px; border-left:3px solid transparent;
}
.ast-desktop .main-header-menu .sub-menu .menu-item:hover > .menu-link,
.ast-desktop .main-header-menu .sub-menu .menu-item:focus-within > .menu-link,
.ast-desktop .main-header-menu .sub-menu .current-menu-item > .menu-link,
.ast-desktop .main-header-menu .sub-menu .current-menu-ancestor > .menu-link{
  background:var(--light); border-left-color:var(--accent); color:var(--navy) !important; padding-left:22px;
}

/* desktop: menu sits right after the logo (small gap) and spreads to the right edge, like udgamschool.com */
@media (min-width:922px){
  .ast-primary-header-bar .ast-builder-grid-row{ grid-template-columns:auto 1fr !important; column-gap:36px; }
  .ast-primary-header-bar .site-header-primary-section-left{ padding-right:0 !important; }
  .ast-primary-header-bar .site-header-primary-section-right{ justify-content:stretch !important; }
  .ast-primary-header-bar .site-header-primary-section-right > .ast-builder-layout-element,
  .ast-primary-header-bar .main-header-bar-navigation{ flex:1 1 auto; width:100%; }
  .ast-primary-header-bar .main-header-menu{ width:100%; justify-content:space-between; }
}
@media (min-width:922px){
  .ast-primary-header-bar .ast-main-header-bar-alignment{ flex:1 1 auto; width:100%; }
  .ast-primary-header-bar .main-navigation{ display:flex; width:100%; }
  .ast-primary-header-bar .main-navigation .main-header-menu{ flex:1 1 auto; }
}

/* ---- hover: only the TEXT colour changes (no background), and a right arrow on dropdown links ---- */
.ast-desktop .main-header-menu > .menu-item > .menu-link{ transition:color .2s ease; }
.ast-desktop .main-header-menu > .menu-item:hover > .menu-link,
.ast-desktop .main-header-menu > .menu-item:focus-within > .menu-link,
.ast-desktop .main-header-menu > .menu-item.focus > .menu-link{
  background:transparent; border-bottom-color:transparent; color:var(--accent) !important;
}
.ast-desktop .main-header-menu > .menu-item:hover > .menu-link .ast-icon svg,
.ast-desktop .main-header-menu > .menu-item:focus-within > .menu-link .ast-icon svg,
.ast-desktop .main-header-menu > .menu-item.focus > .menu-link .ast-icon svg{ fill:var(--accent); }
/* the page you are on keeps its light highlight and yellow line */
.ast-desktop .main-header-menu > .menu-item.current-menu-item > .menu-link,
.ast-desktop .main-header-menu > .menu-item.current-menu-ancestor > .menu-link,
.ast-desktop .main-header-menu > .menu-item.current-menu-parent > .menu-link{
  background:var(--light); border-bottom-color:var(--accent);
}

.ast-desktop .main-header-menu .sub-menu .menu-link{ position:relative; padding-right:44px; transition:color .2s ease, padding-left .2s ease; }
.ast-desktop .main-header-menu .sub-menu .menu-item:hover > .menu-link,
.ast-desktop .main-header-menu .sub-menu .menu-item:focus-within > .menu-link,
.ast-desktop .main-header-menu .sub-menu .menu-item > .menu-link:active{
  background:transparent; color:var(--drawer) !important; border-left-color:transparent; padding-left:22px;
}
.ast-desktop .main-header-menu .sub-menu .current-menu-item > .menu-link{ background:var(--light); border-left-color:var(--accent); }
.ast-desktop .main-header-menu .sub-menu .menu-item:not(.menu-item-has-children) > .menu-link::after{
  content:"\2192"; position:absolute; right:16px; top:50%; transform:translate(-8px,-50%);
  opacity:0; font-size:16px; line-height:1; transition:opacity .2s ease, transform .2s ease;
}
.ast-desktop .main-header-menu .sub-menu .menu-item:not(.menu-item-has-children):hover > .menu-link::after,
.ast-desktop .main-header-menu .sub-menu .menu-item:not(.menu-item-has-children):focus-within > .menu-link::after,
.ast-desktop .main-header-menu .sub-menu .menu-item:not(.menu-item-has-children) > .menu-link:active::after,
.ast-desktop .main-header-menu .sub-menu .current-menu-item:not(.menu-item-has-children) > .menu-link::after{
  opacity:1; transform:translate(0,-50%);
}
