/* University navigation: scoped to the shared header. */
.site-header .main-bar { position: relative; }
.site-header .university-navigation { gap: 8px; }
.university-navigation .university-nav-section { position: relative; }
.university-navigation summary { cursor: pointer; list-style: none; }
.university-navigation summary::-webkit-details-marker { display: none; }
.university-navigation > a:not(.nav-cta),
.university-navigation > .university-nav-section > summary {
  display: flex; align-items: center; gap: 9px;
  min-height: 48px; padding: 12px 16px;
  color: #233e59; font-size: 15px; font-weight: 650; line-height: 1.4;
  border: 0; border-bottom: 2px solid transparent; border-radius: 0 !important;
}
.university-nav-section > summary::after,
.university-course-group > summary::after {
  content: ''; width: 6px; height: 6px; flex: 0 0 6px;
  border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor;
  transform: rotate(45deg); margin: -3px 2px 0 auto;
}
.university-nav-section[open] > summary::after,
.university-course-group[open] > summary::after { transform: rotate(225deg); margin-top: 3px; }
.university-navigation > .university-nav-section[open] > summary,
.university-navigation > .university-nav-section > summary:hover,
.university-navigation > a:not(.nav-cta):hover { color: #08679a; border-bottom-color: #08679a; }
.university-navigation summary:focus-visible,
.university-navigation a:focus-visible { outline: 3px solid #1987c2; outline-offset: -3px; }
.university-nav-dropdown {
  position: absolute; top: calc(100% + 9px); right: 0; z-index: 30;
  width: 300px; padding: 12px; color: #233e59;
  border: 1px solid #d5e0e8; border-top: 3px solid #0b2f53;
  background: #fff; box-shadow: 0 18px 42px rgba(7, 26, 47, .16);
  max-height: calc(100svh - 170px); overflow: auto; overscroll-behavior: contain;
}
.university-nav-dropdown a {
  display: block; padding: 12px; font-size: 14px; font-weight: 500;
  line-height: 1.55; color: #314d66; overflow-wrap: anywhere;
}
.university-nav-dropdown a:hover,
.university-nav-dropdown a[aria-current="page"] { background: #edf5fa; color: #075f92; }
.university-navigation .university-study { position: static; }
.university-study > .university-nav-dropdown { width: min(1040px, calc(100vw - 48px)); right: 24px; top: 100%; padding: 0; }
.university-study-heading { display: flex; justify-content: space-between; align-items: center; gap: 20px; padding: 24px 28px; border-bottom: 1px solid #dce5ec; }
.university-study-heading span { display: block; color: #5b7184; font-size: 12px; font-weight: 700; letter-spacing: .12em; }
.university-study-heading strong { display: block; margin-top: 5px; color: #0b2f53; font-size: 25px; font-weight: 650; }
.university-study-heading a, .university-study-footer a { color: #08679a; font-weight: 650; }
.university-study-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; padding: 24px 28px; }
.university-course-group { border-bottom: 1px solid #dce5ec; }
.university-course-group > summary { display: flex; align-items: center; gap: 12px; min-height: 52px; padding: 13px 6px; font-size: 15px; font-weight: 700; color: #0b2f53; }
.university-course-group > summary:hover { color: #08679a; }
.university-course-links { padding: 0 0 12px; }
.university-course-links a { padding: 10px; font-size: 14px; }
.university-course-group[open] > summary {
  background: #edf3f7; border-left: 3px solid #c5a462; padding-left: 11px;
}
.university-course-links > a {
  padding: 14px 11px; border-left: 3px solid transparent; border-radius: 0;
}
.university-course-links > a + a { border-top: 1px solid #c8d4df; }
.university-course-group .university-course-links > a:hover,
.university-course-group .university-course-links > a:focus-visible,
.university-course-group .university-course-links > a[aria-current="page"] {
  background: #e4edf4; color: #103451; border-left-color: #b58b3c;
}
.university-course-links strong { display: block; font-size: 14px; font-weight: 600; }
.university-course-links small { display: block; margin-top: 4px; color: #63778a; font-size: 12px; }
.university-course-links .menu-badge,
.university-course-links .degree-pathway-new-badge { display: inline-block; position: static; margin: 3px 0 3px 4px; font-size: 10px; line-height: 1.4; }
.university-study-footer { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 12px 28px; background: #f1f6fa; font-size: 14px; }
@media (min-width: 981px) {
  .site-header .university-navigation { display: flex; position: static; opacity: 1; visibility: visible; pointer-events: auto; transform: none; overflow: visible; }
  .site-header .nav-toggle { display: none; }
  .university-navigation .nav-cta { font-size: 14px; }
}
@media (min-width: 981px) and (max-width: 1180px) {
  .site-header .university-navigation { gap: 2px; }
  .university-navigation > a:not(.nav-cta), .university-navigation > .university-nav-section > summary { padding-inline: 10px; font-size: 14px; }
}
@media (max-width: 980px) {
  .site-header .university-navigation { top: var(--university-header-height, 106px); max-height: calc(100svh - var(--university-header-height, 106px)); visibility: hidden; }
  .nav-open .site-header .university-navigation { visibility: visible; }
  .university-navigation .university-nav-section { width: 100%; }
  .university-navigation > a:not(.nav-cta), .university-navigation > .university-nav-section > summary { width: 100%; min-height: 50px; padding: 13px 12px; font-size: 16px; color: #fff; border-bottom: 1px solid rgba(255,255,255,.15); }
  .university-navigation > .university-nav-section[open] > summary,
  .university-navigation > .university-nav-section > summary:hover,
  .university-navigation > a:not(.nav-cta):hover { color: #fff; border-bottom-color: #75c3e7; }
  .university-nav-dropdown, .university-study > .university-nav-dropdown { position: static; width: 100%; max-height: none; overflow: visible; margin: 4px 0 12px; box-shadow: none; border: 0; }
  .university-study-heading { display: block; padding: 18px 16px 10px; }
  .university-study-heading strong { font-size: 22px; }
  .university-study-heading a { padding: 10px 0; }
  .university-study-grid { grid-template-columns: 1fr; gap: 0; padding: 0 16px 16px; }
  .university-study-footer { display: block; padding: 16px; }
  .university-study-footer a { padding: 8px 0 0; }
}
