/**
 * Site header / main menu fixes
 */
#site-header,
#site-header--logged-in {
  position: relative; /* Ensure the header respects its z-index */
  z-index: 9; /* Set a lower z-index for the header */
}

#site-header--logged-in {
  margin-bottom: 1rem;
}

.global-menu-panel {
  overflow-y: auto;
  display: none;
}

#globalUnderlay {
  position: absolute;
  width: 100%;
  height: calc(100vh - var(--globalHeaderHeight));
  top: var(--globalHeaderHeight);
  bottom: 0;
  left: 0;
  background-color: rgba(var(--barelynotblackNumeric), 0.75);
  z-index: 99;
  animation: fadeIn 0.25s ease;
  transition: opacity 0.25s ease;
  -webkit-backdrop-filter: saturate(100%) blur(3px);
          backdrop-filter: saturate(100%) blur(3px);
}
@media (prefers-reduced-motion) {
  #globalUnderlay {
    transition: none;
    opacity: 1;
  }
}

#globalUnderlay.exit {
  opacity: 0;
}

.main-menu .menu > li > ul {
  overflow: hidden; /* Prevent content overflow */
  transition: max-height 0.3s ease; /* Smooth transition for max-height */
}

.main-menu ul.menu ul.menu {
  margin: 0;
}

.main-menu .menu > li a.has-ul-active + ul {
  transition: max-height 0.5s linear;
}

/**
 * Search page
 */
#google-cse-results {
  width: var(--apply-global-max-width);
  max-width: var(--max-width) !important;
  margin: 0 auto;
}

.gsc-cursor-page {
  background-color: var(--darkgray) !important;
  color: #ffffff !important;
  padding: 0.25rem !important;
  height: 1.25rem !important;
  width: 1.25rem !important;
  display: inline-block !important;
  text-align: center !important;
  line-height: 1.5 !important;
  border-radius: 50% !important;
}

.gsc-tabHeader.gsc-tabhActive,
.gsc-refinementHeader.gsc-refinementhActive {
  border-color: transparent;
}

.gsc-refinementHeader.gsc-refinementhInactive.gsc-inline-block,
.gsc-refinementHeader.gsc-refinementhActive {
  margin-right: 1rem !important;
}

.gs-webResult.gs-result a.gs-title:link,
.gs-webResult.gs-result a.gs-title:link b,
.gs-imageResult a.gs-title:link,
.gs-imageResult a.gs-title:link b {
  color: var(--darkred) !important;
}

#google-cse-results {
  margin-bottom: 4rem;
  max-width: 700px;
}

.gsc-control-cse {
  padding: 0 !important;
}

.gsc-orderby-label {
  font-size: 13px;
}

/**
 * More stuff
 */
.full-width {
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}

.clearfix:not(.toolbar-lining):after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

#toolbar-administration ul {
  font-size: small;
}

body.user-logged-in .global-menu-panel {
  top: 73px;
}

.item-list--linkicon {
  margin: 2em 0;
}

ul.social-link-field {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  gap: 10px;
  font-size: 36px;
}

.form-actions {
  flex: none;
}

.menu--news-listing-menu.horizontal-menu__links {
  font-size: 0.875rem;
}

.menu--news-listing-menu.horizontal-menu__links .menu__item--active-trail a {
  background-color: var(--darkred);
  color: var(--white);
  font-weight: 700;
}

.menu--news-listing-menu.horizontal-menu__links .menu__item--active-trail a {
  pointer-events: none;
}

@media screen and (min-width: 769px) {
  .site-footer__wrapper--top #block-oberlin-mainnavigation {
    grid-area: left;
  }
  .site-footer__wrapper--bottom #block-oberlin-footer {
    grid-area: leftbottom;
  }
  .site-footer__wrapper--bottom #block-oberlin-audiencemenu {
    grid-area: right;
  }
}
@media screen and (min-width: 1025px) {
  .site-footer__wrapper--bottom #block-oberlin-footer {
    grid-area: downmiddle;
  }
  .site-footer__wrapper--bottom #block-oberlin-audiencemenu {
    grid-area: right;
  }
}
.site-footer__wrapper--top p {
  margin: 0;
}

.item-date {
  display: flex;
}

.card {
  height: 100%;
}

p.biography-box__title {
  max-width: 20rem;
}

div:has(> .event-dates-links) + .view-more-events-button {
  margin-top: 1rem;
}

.view-content details > summary {
  font-size: calc(var(--body-copy-size) * 0.94737);
}

.grid > .paragraph--type--para-el-ilb > a.icon-link-box {
  height: calc(100% - 4rem);
}

/**
 * Views Overrides
 */
.blog__filters .bef-exposed-form .form-actions {
  border-top: 0;
  padding-top: 0;
}

#views-exposed-form-news-listing-news-listing-block.views-exposed-form .form-item label,
#views-exposed-form-news-listing-campus-news-listing-block.views-exposed-form .form-item label,
#views-exposed-form-news-listing-news-release-listing-block.views-exposed-form .form-item label,
#views-exposed-form-facility-listing-facility-listing-block.views-exposed-form .form-item label,
#views-exposed-form-campus-directory-campus-directory-listing-block.views-exposed-form .form-item label {
  display: block;
}

#views-exposed-form-news-listing-news-listing-block.views-exposed-form .form-type__textfield:has(+ :not(.form-type__textfield)),
#views-exposed-form-news-listing-campus-news-listing-block.views-exposed-form .form-type__textfield:has(+ :not(.form-type__textfield)),
#views-exposed-form-news-listing-news-release-listing-block.views-exposed-form .form-type__textfield:has(+ :not(.form-type__textfield)),
#views-exposed-form-facility-listing-facility-listing-block.views-exposed-form .form-type__textfield:has(+ :not(.form-type__textfield)),
#views-exposed-form-campus-directory-campus-directory-listing-block.views-exposed-form .form-type__textfield:has(+ :not(.form-type__textfield)) {
  width: auto;
}

.form-item--aos-offerings {
  display: flex;
  flex-flow: row wrap;
  align-items: baseline;
}
.form-item--aos-offerings .form-radios {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
}

.aos-name-filter {
  padding: 0.75rem 1rem;
  font-size: 1.125rem;
  font-family: var(--gotham-stack);
}

div#edit_department_tag_chosen {
  width: 264px !important;
}

#block-oberlin-views-block-course-schedule-search-api-block-1 .view-header {
  font-weight: 700;
}
#block-oberlin-views-block-course-schedule-search-api-block-1 .views-exposed-form details {
  width: 100%;
}
#block-oberlin-views-block-course-schedule-search-api-block-1 caption {
  text-align: center;
  font-weight: bold;
  background-color: var(--almostblack);
  color: white;
  padding: 0.5em;
  font-size: 1.25rem;
  margin-bottom: 0;
}

#block-oberlin-views-block-group-bulletins-listing-group-block ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.view-content > .item-list > ul.list--clean {
  margin: 0;
}

.view-campus-directory ul {
  margin: 0;
  padding: 0;
}
.view-campus-directory article p {
  margin: 0;
}
.view-campus-directory article p.biography-grid-item__title {
  font-size: 1rem;
}

.chosen-container-single .chosen-single {
  border-color: var(--almostwhite);
  background: linear-gradient(var(--white) 50%, var(--almostwhite) 100%);
}

.chosen-container-active.chosen-with-drop .chosen-single {
  background: var(--white);
}

.chosen-container .chosen-drop {
  background: var(--white);
}

.chosen-container-active .chosen-single {
  border: 1px solid #5897fb;
}

ul.chosen-results li {
  font-size: 14px !important;
}

/**
 * Authorized Users
 * In D7 we had an "authorized-users.css" file, conditionally added.
 * May come back and duplicate that some day.
 */
.subsite-menu__links li.menu-node-unpublished a {
  background-color: #ECEBED;
  background-image: repeating-linear-gradient(315deg, #FAFAFA 0px, #FAFAFA 5px, #FFFFFF 5px, #FFFFFF 10px);
}
.subsite-menu__links li.menu-node-unpublished a:before {
  background-color: #585252;
}
.subsite-menu__links li.menu-node-unpublished a:after {
  content: " (Unpublished)";
  display: inline-block;
  margin-left: 1em;
  color: #a6192e;
  font-style: italic;
  font-size: 0.75rem;
}

/**
 * AJAX Progress
 * This is a temporary fix for the AJAX progress indicator.
 * It should be replaced with a more robust solution in the future.
 */
.ajax-progress {
  position: fixed;
  height: 100%;
  width: 100%;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  background: rgba(0, 0, 0, 0.7);
  z-index: 1000000;
  animation: fadeIn 0.35s ease-in-out;
}
.ajax-progress .fa-spinner {
  font-size: 100px;
  width: 100px;
  height: 100px;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
}

/**
 * Messages
 */
.messages {
  width: var(--apply-global-max-width);
  max-width: var(--max-width);
  margin: 0 auto 2rem;
  background-color: var(--lightgray);
  position: relative;
  z-index: 1;
  box-sizing: border-box;
  --hDist: 0;
  --vDist: -20px;
  animation: fadeInSlideIn 0.5s ease-in-out 0.25s both;
}
.messages.messages--status {
  background-color: var(--vintageyellow);
  border-color: var(--yellow);
  color: var(--black);
}
.messages .messages__icon {
  fill: var(--darkred);
}
.messages .messages__icon svg {
  display: block;
}
.messages .messages__content {
  font-size: 1.25rem;
}
.messages .messages__content a {
  color: var(--black);
}

/**
 * Unpublished content
 */
.node-unpublished::before {
  text-align: center;
  color: var(--darkred);
  font-size: 0.75rem;
  content: "Page is Unpublished or Draft";
  text-transform: uppercase;
  padding: 0.5rem;
  background: var(--vintageyellow);
  font-family: var(--gotham-stack);
  font-weight: 700;
}

/**
 * Main Menu (Sidebar) menu item visibility adjustments
 */
#block-oberlin-mainnavigation-2 li.menu__item {
  display: none;
}
#block-oberlin-mainnavigation-2 li.menu__item:has(li.menu__item--active-trail),
#block-oberlin-mainnavigation-2 .subsite-menu__links:has(> li.menu__item > a.active) li.menu__item {
  display: list-item;
}

/**
 * AJLC Section Menu.
 *
 * TODO: fix.
 */
.breadcrumbs.breadcrumbs--alt {
  padding: 0.375rem 0;
}

#ajlcSectionMenu {
  align-items: center;
}
#ajlcSectionMenu h2 {
  margin: 0.25rem 1.5rem 0.25rem 0;
}

.area-menu .horizontal-menu a.ajlcSectionMenu__home {
  flex-grow: 1;
  margin: 0.25rem 1rem 0.25rem 0;
  font-family: var(--gotham-stack);
  -webkit-text-decoration: none;
  text-decoration: none;
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--darkred);
}
.area-menu .horizontal-menu a.ajlcSectionMenu__home .fas {
  margin-right: 0.25rem;
}
.area-menu .horizontal-menu a.ajlcSectionMenu__home:hover {
  background-color: transparent;
  background-color: initial;
  color: var(--lightred);
}
.area-menu .horizontal-menu .menu__item a {
  color: var(--almostblack);
}
.area-menu .horizontal-menu .menu__item a:before {
  width: 0;
}
.area-menu .horizontal-menu .menu__item a:hover {
  background-color: var(--unset);
  color: var(--darkred);
  -webkit-text-decoration: underline;
  text-decoration: underline;
}
.area-menu .horizontal-menu .menu__item a:hover:before {
  width: 0;
}
.area-menu .horizontal-menu .menu__item.menu__item--active-trail a {
  background: transparent none repeat 0 0 / auto auto padding-box border-box scroll;
  background: initial;
  color: var(--darkred);
  font-weight: bold;
  text-decoration: none;
  text-decoration: initial;
}

/**
 * 2025 AB Test
 *
 * NOTE: the following block ONLY applies to the "B" (new) test page
 */
.site-header__cn__link {
  display: none;
}

body.abtest-fall2025-nav-new .site-header__logo {
  display: flex;
  align-items: center;
  gap: 2rem;
}
body.abtest-fall2025-nav-new .site-header__cn__link {
  display: flex;
  position: relative;
}
body.abtest-fall2025-nav-new .site-header__cn__link:before {
  display: block;
  content: "";
  position: absolute;
  left: -0.875rem;
  top: 0.25rem;
  height: calc(100% - 0.5rem);
  width: 1px;
  background-color: var(--white);
}
body.abtest-fall2025-nav-new .site-header__logo {
  transform: scale(1, 1);
  transition: transform 0.5s ease-out;
}
body.abtest-fall2025-nav-new .site-header__logo:hover {
  transform: none;
  transition: none;
}
body.abtest-fall2025-nav-new .site-header__cn__link {
  display: block;
}
@media screen and (max-width: 580px) {
  body.abtest-fall2025-nav-new .site-header__cn__link {
    display: none;
  }
}
@media screen and (min-width: 830px) {
  body.abtest-fall2025-nav-new .cta-menu#globalMenuPanelCtaMenu {
    display: block;
  }
}
@media screen and (min-width: 1090px) {
  body.abtest-fall2025-nav-new .cta-menu#globalMenuPanelCtaMenu {
    display: none;
  }
}
@media screen and (min-width: 830px) {
  body.abtest-fall2025-nav-new .cta-menu#headerBarCtaMenu {
    display: none;
  }
}
@media screen and (min-width: 1090px) {
  body.abtest-fall2025-nav-new .cta-menu#headerBarCtaMenu {
    display: block;
  }
}
@media screen and (min-width: 830px) {
  body.abtest-fall2025-nav-new .search-trigger::before {
    display: none;
  }
}
@media screen and (min-width: 1090px) {
  body.abtest-fall2025-nav-new .search-trigger::before {
    display: block;
  }
}
body.abtest-fall2025-nav-new .site-footer__logo__link:nth-child(2) {
  display: none;
}