/* Sitewide custom overrides — enqueued in functions.php (sm-custom handle). */

/* Dropdown submenu — also lives in src/scss/_primary-nav.scss for the next build. */
@media (min-width: 951px) {
.primary-nav-wrap nav > ul > li.menu-item-has-children { position: relative; }
.primary-nav-wrap nav ul.sub-menu {
  position: absolute;
  top: calc(100% + 14px);
  left: 0;
  margin-top: 0;
  border: none;
  background: #ffffff;
  border-radius: 14px;
  box-shadow: 0 18px 40px -12px rgba(49, 48, 86,0.28), 0 4px 12px rgba(49, 48, 86,0.10);
  padding: 10px;
  min-width: 240px;
  overflow: hidden;
}
.primary-nav-wrap nav ul.sub-menu::before {
  content: "";
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 4px;
  background: linear-gradient(90deg, #5F1C62 0%, #D2222A 100%);
}
.primary-nav-wrap nav ul.sub-menu li { border: none; margin: 2px 0; }
.primary-nav-wrap nav ul.sub-menu li:first-child { margin-top: 6px; }
.primary-nav-wrap nav ul.sub-menu li a {
  font-family: "Open Sans", sans-serif;
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1.3;
  color: #5F1C62;
  padding: 11px 16px;
  border-radius: 9px;
  position: relative;
  transition: background-color .22s ease, color .22s ease, padding-left .22s ease;
}
.primary-nav-wrap nav ul.sub-menu li a::before {
  content: "";
  position: absolute;
  left: 8px; top: 50%;
  width: 0; height: 18px;
  background: #D2222A;
  border-radius: 3px;
  transform: translateY(-50%);
  transition: width .22s ease;
}
.primary-nav-wrap nav ul.sub-menu li a:hover,
.primary-nav-wrap nav ul.sub-menu li a.highlighted {
  background-color: #F0F0ED !important;
  color: #D2222A !important;
  padding-left: 22px;
}
.primary-nav-wrap nav ul.sub-menu li a:hover::before,
.primary-nav-wrap nav ul.sub-menu li a.highlighted::before { width: 4px; }
}

/* ---- CBUS Soul Fest: purple header bar (logo is white/gold) ---- */
.site-header,
.site-header.scrolling-up,
.site-header.no-hero {
  background: #5F1C62;
}
.site-header .primary-nav-wrap nav ul li a,
.site-header.scrolling-up .primary-nav-wrap nav ul li a {
  color: #FFFFFF;
}
.site-header .primary-nav-wrap nav ul.sub-menu,
.site-header.scrolling-up .primary-nav-wrap nav ul.sub-menu {
  background: #5F1C62;
}
.site-header .primary-nav-wrap nav ul.sub-menu li a {
  color: #FFFFFF;
}
.site-header .primary-nav-wrap nav ul li a:hover,
.site-header .primary-nav-wrap nav ul li a:focus {
  color: #F1BF2A;
}

/* SVG logo has no intrinsic dimensions - give it an explicit box */
.site-header img.header-logo {
  width: auto;
  height: 86px;
  max-width: 200px;
}
@media (max-width: 950px) {
  .site-header img.header-logo { height: 62px; }
}
/* nav bar itself must be transparent so white links read on the purple header */
.site-header .primary-nav-wrap nav.primary-nav,
.site-header .primary-nav-wrap nav.primary-nav ul.primary-menu,
.site-header.scrolling-up .primary-nav-wrap nav.primary-nav,
.site-header.scrolling-up .primary-nav-wrap nav.primary-nav ul.primary-menu {
  background: transparent;
}
