/* BN Olivero CSS
Current version: 1.0
Works with: Drupal 10.2 */

/* Constants */
:root {
  /* Olivero */
  --color1: #007fff;
  --color2: #003eff;
  --max-bg-color: 108rem;
  /* BN */
  --color3: #7e0e00;
  --color4: #770100;
  --color5: #a4d7e8;
  --color6: #569fb8;
  --color7: #535353;
  --color8: #4d4d4d;
  --color9: #b4e2d3;
  --color10: #56b89a;
  --color11: #f4f8ef;
  --color12: #e0ead6;
  --white: #fff;
  --offwhite: #f7f9fa;
  --black: #000;
  --offblack: #000602;
  --copyright-light: var(--color5);
  --copyright-dark: var(--color4);
}

/* Olivero layout overrides */
a,
.text-content a,
.cke_editable a {
  color: #7e0e00;
}

.container {
  max-width: none;
}



.mobile-nav-button__icon:before,
.mobile-nav-button__icon,
.mobile-nav-button__icon:after {
  border-top-color: #7e0e00;
}

.mobile-nav-button[aria-expanded=false] .mobile-nav-button__icon:before,
.mobile-nav-button[aria-expanded=false] .mobile-nav-button__icon,
.mobile-nav-button[aria-expanded=false] .mobile-nav-button__icon:after {
  box-shadow: 0 0 3px #fff;
}

.mobile-nav-button[aria-expanded="true"] .mobile-nav-button__icon:before,
.mobile-nav-button[aria-expanded="true"] .mobile-nav-button__icon:after {
  margin-top: -1px;
}

.mobile-nav-button:focus {
  outline: solid 2px #770100;
}

@media (min-width: 75rem) {
  body:not(.is-always-mobile-nav) .site-header__fixable {
    position: fixed;
    z-index: 102;
    top: -4.5rem;
    max-width: 98.125rem;
  }

  body:not(.is-always-mobile-nav).toolbar-vertical.toolbar-fixed .site-header__fixable,
  body:not(.is-always-mobile-nav).toolbar-horizontal.toolbar-fixed .site-header__fixable {
    top: -2.0625rem;
  }

  body:not(.is-always-mobile-nav).toolbar-horizontal.toolbar-fixed.toolbar-tray-open .site-header__fixable {
    top: 0.4375rem;
  }

  .site-header {
    min-height: 2.5rem;
  }

  .breadcrumb {
    padding: 1rem;
    overflow: hidden;
  }
}

.main-content .messages {
  background-color: #7e0e00;
}

/* BN ads module - OneTag footer ad block override */
.sovrn-connect-ad {
  z-index: 998 !important;
}

/* Responsive styling */
.layout__region--first {
  display: none;
}

.main-content__container {
  padding-top: 1rem;
}

@media (min-width: 75rem) {
  .layout__region--first {
    display: initial;
  }

  body:not(.is-always-mobile-nav) .primary-nav__menu-item--level-1:last-child {
    display: none;
  }

  .header-nav .block-hierarchical-taxonomy-menu,
  .header-nav .block-block-content {
    display: none;
  }

  .main-content__container {
    padding-top: 5.625rem;
  }
}

/* Search overrides and styling */
.search-block-form .search-form .ui-menu .ui-state-focus,
.search-block-form .search-form .ui-menu .ui-state-active {
  margin: 0;
}

.search-block-form .block-search-wide__wrapper {
  overflow: visible;
}

.search-block-form .search-form>ul {
  display: block !important;
  visibility: hidden;
  max-height: 0;
  width: auto !important;
  top: inherit !important;
  bottom: 0;
  overflow: hidden;
  transform: translateY(calc(100% + 1px));
  transition: max-height .3s .2s;
}

.search-block-form .is-active .search-form>ul {
  visibility: visible;
  max-height: 40rem;
}

.search-block-form .search-form>ul[data-sa-theme="basic-blue"] a.ui-menu-item-wrapper,
.search-block-form .search-form>ul[data-sa-theme="basic-blue"] a.ui-menu-item-wrapper.ui-state-active {
  border-bottom: 0;
}

.search-block-form .search-form>ul>.ui-autocomplete-field-group {
  color: #fff;
  background-color: #7e0e00;
}

.path-search .region--content {
  padding: 0;
}

@media (min-width: 62.5rem) {
  .path-search .sidebar-grid>.site-main {
    grid-column: 1/12;
  }
}

/* Added to correctly show focus styling on jump-menus - removed for forcing some pages' 3rd column to next line */
@media (min-width: 62.5rem) {
	
  .layout--threecol-section--25-50-25 > .layout__region--first {
    flex-basis: calc(22% - (var(--grid-gap) * 0.5));
  }
  
  .layout--threecol-section--25-50-25 > .layout__region--second {
    flex-basis: calc(53% - var(--grid-gap));
  }
	
  .layout--threecol-section .layout__region>.block {
    /* necessary for overflowing dropdown select boxes forcing third column to wrap */
    max-width: 650px;
  }

  .layout--threecol-section>.layout__region--second {
    /*margin-top: -.5rem;*/
    margin-left: 0;
  }
}

/* .region--content .block:nth-child(n+2) {
  margin-top: 1rem;
} */

/* Classes */
.combination-of {
  display: flex;
  flex-wrap: wrap;
}

.combination-of::before {
  content: "A combination of";
}

.combination-of .field__item {
  margin-left: .25rem;
}

.combination-of .field__item:nth-last-child(n+3)::after {
  content: ",";
  margin-left: -.2rem;
}

.combination-of .field__item:last-child::before {
  content: "and";
  padding-right: .313rem;
}

.full-width {
  width: 100%;
}

.indication-date {
  float: left;
  margin-right: .25rem;
}

.indication-date::before {
  content: "(";
}

.indication-date::after {
  content: ")";
}

.indication-date>time {
  margin: 0 -0.25rem;
}

.inline-center {
  display: inline-flex;
  justify-content: center;
}

.field-parentheses::before {
  content: "(";
}

.field-parentheses::after {
  content: ")";
}

.jump-label {
  margin-bottom: .5rem;
}

.margin-top-none {
  margin-top: 0;
}

.obsolete-message {
  padding: .5rem 1rem;
  font-weight: bold;
  color: #7e0e00;
  border: 2px solid #7e0e00;
  background: #f4f8ef;
}

/* Site header and navigation */
.site-branding,
.block-dropdown-language {
  display: flex;
  align-items: center;
}

.mobile-buttons {
  position: fixed;
  right: 1rem;
  margin: 1.25rem .5rem;
  z-index: 106;
}

.mobile-nav-button__icon {
  transform: scale(1.5);
}

@media (min-width: 31.25rem) {

  .site-branding,
  .block-dropdown-language {
    align-items: flex-end;
  }

  .mobile-nav-button__icon {
    transform: scale(1);
  }
}

@media (min-width: 75rem) {

  .site-branding,
  .block-dropdown-language {
    height: 11.25rem;
  }

  body:not(.is-always-mobile-nav) .site-header__fixable.js-fixed {
    max-width: 100%;
  }
}

.block-dropdown-language .block__content {
  height: 6.75rem;
  display: flex;
  align-items: center;
}

.block-dropdown-language .dropbutton-action {
  display: flex;
  align-items: center;
  height: 2rem;
  padding: 0 .5rem;
  background: #b4e2d3;
}

.block-dropdown-language .dropbutton-action:first-child {
  justify-content: center;
}

.block-dropdown-language .dropbutton-toggle button {
  height: 2rem;
  background: #b4e2d3;
}

.header-nav {
  border-top: none;
  margin-top: 80px;
}

/* General */
.main-content p,
.main-content div {
  max-width: 100%;
  color: #4d4d4d;
}

body .social-media-links {
  line-height: 2.75rem;
}

body .background-inset {
  margin-left: -1.125rem;
  margin-right: -1.125rem;
  max-width: calc(100% + 2.25rem);
}

body .background-inset .view-content,
body .gray-padding {
	margin: 0.5rem 0;
  padding: .625rem 1.125rem;
  background: #e6e6e6;
}

@media (min-width: 43.75rem) {
  body .background-inset {
    margin-left: inherit;
    margin-right: inherit;
    max-width: inherit;
  }
}

/* Chosen */
.chosen-container {
  height: 2.5rem;
  vertical-align: top;
  font-size: inherit;
}

.chosen-container .chosen-choices,
.chosen-container .chosen-single {
  height: 100%;
  display: flex;
  align-items: center;
  border-radius: 5px;
}

.chosen-container .chosen-single div {
  display: flex;
  align-items: center;
}

.chosen-container .chosen-single div b {
  height: 20px;
}

/* Messages */
.main-content .messages {
  background-color: #0d77b5;
}

.main-content .messages .messages__content {
  color: #fff;
}

/* Font - until fix for Olivero allowing fontyourface module to apply instead of in CSS */
a,
button,
p,
div,
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: 'Hind';
  font-style: normal;
  font-weight: normal;
}

a,
button,
h1,
h2,
h4,
h5,
h6 {
  font-weight: 500;
}

h3 {
  font-weight: 600;
}

/* Paragraphs */
[class$='-paragraph'] .field__item:nth-last-child(n+2) {
  margin-bottom: 1.5rem;
  padding-bottom: 1.5rem;
  border-bottom: 1px solid #4d4d4d;
}

/* Tables */
.main-content td {
  margin-top: 1rem;
  font-size: 21px;
  line-height: 35px;
  color: #3D4A54;
}

.main-content td img {
  max-width: 150px;
  margin-right: 1.5rem;
}

.main-content td .name-first {
  color: #567DB8;
}

.main-content td .title {
  font-weight: bold;
}

.pager__items {
  flex-wrap: nowrap;
}

/* Taxonomy */
.region--content .layout__region .block-views-blockdsm-criteria-block-1 {
  margin-top: 0;
}

h1 {
  margin: 0 auto 1.5rem;
  font-size: 2.4rem;
  color: #7e0e00;
}

.block__title,
.text-content h2,
.cke_editable h2 {
  font-size: 1.8rem;
  line-height: 2rem;
  color: #0B2027;
}

.block:nth-child(n+2) .block__title {
  margin: 1.5rem 0 1rem;
}

@media (min-width: 43.75rem) {
  h1 {
    line-height: 2.25rem;
  }

  .block__title,
  .text-content h2,
  .cke_editable h2 {
    font-size: 1.8rem;
  }
}

.main-content .text h2 {
  margin: 0;
}

.margin-1 {
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.margin-2 {
  margin-top: 2rem;
  margin-bottom: 2rem;
}

.margin-3 {
  margin-top: 3rem;
  margin-bottom: 3rem;
}

.lightblue-bg {
  padding: 2rem;
  background: rgba(86, 159, 184, 0.15);
}

.lilac-bg {
  padding: 2rem;
  background: rgba(86, 125, 184, 0.15);
}

.teal-bg {
  padding: 2rem;
  background: rgba(86, 184, 172, 0.15);
}

.offwhite-bg {
  padding: 2rem;
  background: #F6F6F6;
  border-radius: 1rem;
}

.page-wrapper {
  margin: 0 auto;
}

body {
  background-image: none;
}

.header__left {
  background-color: #569FB8;
}

.site-header__initial,
.feed-icon .feed-icon__icon {
  background-color: #7e0e00;
}

.tabs__link.is-active::after,
.primary-nav__menu .primary-nav__menu-link-inner::after {
  border-top-color: #7e0e00;
}

[dir="ltr"] .site-branding {
  padding: .35rem;
  background-image: none;
}

.site-branding__logo img {
  width: 200px;
  max-height: none;
}

.site-branding__text a {
  position: relative;
  padding: 1rem 0;
  color: #0B2027;
  font-size: 1.6rem;
}

.primary-nav__menu-link {
  color: #3D4A54;
  font-weight: 500;
}

@media (min-width: 75rem) {

  [dir="ltr"] .site-branding {
    padding: inherit;
  }

  .sticky-header-toggle {
    background-color: #7e0e00;
  }

  body:not(.is-always-mobile-nav) .primary-nav__menu .primary-nav__menu-link:focus:before {
    border-color: #7e0e00;
  }

  body:not(.is-always-mobile-nav) .primary-nav__menu-link {
    font-size: 1.25rem;
  }

  .nav-primary__button {
    background-color: #569FB8;
  }

  .site-header__fixable.js-fixed .site-header__inner {
    box-shadow: 0px 4px 4px rgba(0, 0, 0, .25);
  }
}

.secondary-nav ul.menu a:not(.button--primary) {
  color: #7e0e00;
  font-size: 1.25rem;
}

@media (min-width: 62.5rem) {
.layout--threecol-section--25-50-25 > .layout__region--third {
	        flex-basis: calc(25% -(var(--grid-gap)* 0.5));
	        max-width: 25%;
}
.layout--threecol-section--25-50-25 > .layout__region--first {
    flex-basis: calc(22% - (var(--grid-gap) * 0.5));
}
  .layout--content-medium,
  .layout--pass--content-medium>* {
    grid-column: 1 / 15;
  }
}

.main-content .section {
  margin-top: 5rem;
}

.main-content .section-flex {
  display: flex;
  gap: 3rem;
}

.main-content .section-flex>div {
  flex-basis: 50%;
}

.main-content .text-content button>a {
  box-shadow: none;
  color: inherit;
}

.main-content .text-content button>a:hover {
  text-decoration: inherit;
}

.main-content .cta-button {
  width: 11.8rem;
  height: 3.4rem;
  margin-right: 0;
  color: #fff;
  font-size: 25px;
  justify-content: center;
  background: #569FB8;
  border: 2.5px solid #569FB8;
  box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.25);
  border-radius: 3px;
  transition: background .15s ease, box-shadow .15s ease, transform .15s ease;
}

.main-content .cta-button:hover {
  color: #fff;
  text-decoration: none;
  background: #7e0e00;
  box-shadow: 3px 5px 10px #4d4d4d;
  transform: translatey(-5px);
}

/* Site footer */
.site-footer {
  color: #0B2027;
  background: white;
}

.menu--footer .menu {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
}

@media (min-width: 75rem) {
  [dir="ltr"] body:not(.is-always-mobile-nav) .site-footer {
    border-left: solid 90px #fff;
  }
}

.block-page-title-block {
  margin: 0;
}

@media (min-width: 75rem) {
  .region--content {
    padding: 1rem;
  }
}

/* Homepage */
.block-system-breadcrumb-block,
.block-system-main-block,
.block-ad-block,
.block-onetag-ad-block {
	margin-bottom: 0;
}

.page-node-type-page .node__content {
  padding-bottom: 0;
}

/* View headers */
.main-content .view .view-header {
  margin-bottom: 1rem;
}

/* .main-content .view .view-header h2 {
  margin: .5rem 0 1rem;
} */

/* About us */
.flex {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.fontyourface .flex .lh-10 {
  line-height: 10px;
}

.counter {
  margin-top: 2rem;
  margin-bottom: 2rem;
}

.counter-value {
  font-size: 35px;
  font-weight: 600;
  color: #569FB8;
  margin-right: .25rem;
  line-height: 30px;
}

@media (min-width: 43.75rem) {
  .flex {
    gap: 1.5rem;
  }

  .counter {
    margin-bottom: 0;
  }
}

.block-views-blockteam-block-1 .views-table {
  margin: 0;
}

.block-views-blockteam-block-1 .views-table td {
  border-bottom: none;
}

.view-open-positions .offwhite-bg {
  margin-bottom: 1rem;
}

.view-open-positions .offwhite-bg:last-child {
  margin-bottom: 0;
}

@media (min-width: 75rem) {
  .view-open-positions .offwhite-bg {
    margin-bottom: 1.5rem;
  }
}

/* Register form */
.path-user .children-flex .fieldset__wrapper>* {
  min-width: 0;
  padding: 0 0.5rem;
}

.path-user .children-nolabel>* label {
  display: none;
}

.path-user .field--name-field-grade-level .form-checkboxes {
  display: flex;
  justify-content: space-around;
  flex-wrap: wrap;
}

.path-user .field--name-field-grade-level .form-checkboxes>* {
  padding: 0 .45rem;
}

@media (min-width: 43.75rem) {
  .path-user .children-flex .fieldset__wrapper {
    display: flex;
  }
}

/* Contact forms */
.contact-message-open-position-application-form .field--name-field-resume-or-cv .description {
  display: none;
}

/* Fields */
.block .related-inline {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  margin: 0;
}

.block .related-inline li {
  list-style: none;
}

.block .related-inline li:nth-last-child(n+2)::after {
  content: "|";
  margin-left: .5rem;
  font-weight: bold;
}

.comma-separated {
  display: flex;
  flex-wrap: wrap;
}

.comma-separated .field__item {
  display: flex;
}

.comma-separated .field__item:nth-last-child(n+2)::after {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
}

/* Remove */
.comma-separated .field__item:nth-last-child(n+2)::after,
.path-taxonomy .view-related-terms-field .view-content .views-row:nth-last-child(n+2) .views-field::after {
  content: ",";
}

/* Terms by vocab */
.view-terms-by-vocab h3 {
  margin-bottom: 1rem;
}

.primary-nav__menu-link-inner--level-3,
.primary-nav__menu-link-inner--level-4 {
  font-weight: normal !important;
  font-size: initial !important;
}

.amazon-ad-block {
  text-align: center;
}

/* Opinion view */
.block-views-blockopinion-block-1 .view>* {
  margin-bottom: 1rem;
}

.behavenet-highlighted-content,
article.node__movie,
article.node__opinion,
.field--name-description,
.node__27647 .field--name-body {
  background-color: #eeeeee;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  padding-bottom: 1.5rem;
  padding-top: 1.5rem;
}

.behavenet-highlighted-content h3,
article.node__movie h3,
article.node__opinion h3,
.field--name-description h3,
.node__27647 .field--name-body h3 {
  margin-top: 0;
}
.layout--threecol-section {
    display: flex;
    gap: 1.125rem;
    flex-wrap: wrap;
}
