@import url("//fonts.googleapis.com/css2?family=Ubuntu:ital,wght@0,400;0,500;0,700;1,400;1,700&display=swap");
:root,
:before,
:after {
  --site-width: 1024px;
}

:root,
:before,
:after {
  --font-1: "Ubuntu", sans-serif;
  --header-logo-width: 120px;
  --color-3: rgb(235,239,245);
  --color-3-over: black;
}

body {
  background-color: var(--color-3) !important;
}

#header_main {
  padding: 0;
  position: relative;
}
#header_main:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 2.75rem;
  background: var(--color-3);
}
#header_main .school-name {
  padding-top: 4.25rem;
  padding-bottom: 2.5rem;
}
#header_main .school-name a {
  font-size: 1.5rem;
  gap: 0.75rem;
}
#header_main .sitenav-main {
  --sitenav-dropdown-bg-color: white;
  --sitenav-dropdown-link-color: black;
  --sitenav-dropdown-link-hover-bg-color: var(--color-1);
  --sitenav-dropdown-link-hover-color: var(--color-1-over);
  --sitenav-desktop-bg-color: transparent;
  --sitenav-desktop-link-color: var(--color-1);
  --sitenav-desktop-link-hover-bg-color: var(--color-1);
  --sitenav-desktop-link-hover-color: var(--color-1-over);
  --sitenav-hamburger-icon-size: 44px;
  --sitenav-hamburger-icon-padding: 8px;
  --sitenav-hamburger-icon-gap: 5px;
  --sitenav-hamburger-icon-color: var(--color-1);
  --sitenav-desktop-item-spacing: space-around;
  --sitenav-sub-nav-padding: 20px;
  --sitenav-extra-content-width: 35%;
  color: var(--sitenav-dropdown-link-color);
  --sitenav-dropdown-link-hover-bg-color: var(--color-2);
  --sitenav-dropdown-link-hover-color: var(--color-2-over);
  --sitenav-desktop-link-hover-bg-color: var(--color-2);
  --sitenav-desktop-link-hover-color: var(--color-2-over);
}
#header_main .sitenav-main .nav-menu {
  background: var(--sitenav-dropdown-bg-color);
}
#header_main .sitenav-main .nav-mobile-toggle {
  color: var(--sitenav-hamburger-icon-color);
}
#header_main .sitenav-main .nav-mobile-toggle .nav-mobile-icon-indicator {
  height: var(--sitenav-hamburger-icon-size);
  width: var(--sitenav-hamburger-icon-size);
  padding: var(--sitenav-hamburger-icon-padding);
  gap: var(--sitenav-hamburger-icon-gap);
}
#header_main .sitenav-main .nav-mobile-toggle .nav-mobile-icon-indicator:before, #header_main .sitenav-main .nav-mobile-toggle .nav-mobile-icon-indicator:after,
#header_main .sitenav-main .nav-mobile-toggle .nav-mobile-icon-indicator .nav-mobile-icon-indicator-inner {
  height: var(--sitenav-hamburger-icon-gap);
  background-color: currentColor;
}
#header_main .sitenav-main .nav-mobile-toggle.open {
  color: var(--sitenav-dropdown-link-color);
}
#header_main .sitenav-main .nav-mobile-toggle.open.animated .nav-mobile-icon-indicator {
  gap: 0;
}
#header_main .sitenav-main .nav-mobile-toggle.open.animated .nav-mobile-icon-indicator:after {
  margin-top: calc(-1 * var(--sitenav-hamburger-icon-gap));
}
#header_main .sitenav-main .nav-item > a {
  height: 42px;
  padding: 0 10px;
  font-size: 1.125em;
  font-weight: 700;
  color: var(--sitenav-dropdown-link-color);
}
#header_main .sitenav-main .nav-item > a:focus, #header_main .sitenav-main .nav-item > a:hover, #header_main .sitenav-main .nav-item > a.open {
  color: var(--sitenav-dropdown-link-hover-color);
  background-color: var(--sitenav-dropdown-link-hover-bg-color);
}
#header_main .sitenav-main .sub-nav a {
  color: var(--sitenav-dropdown-link-color);
}
#header_main .sitenav-main .sub-nav a:focus, #header_main .sitenav-main .sub-nav a:hover, #header_main .sitenav-main .sub-nav a.open {
  color: var(--sitenav-dropdown-link-hover-color);
  background-color: var(--sitenav-dropdown-link-hover-bg-color);
}
@media screen and (max-width: 1023px) {
  #header_main .sitenav-main .icon-only svg {
    display: none;
  }
}
@media screen and (min-width: 1024px) {
  #header_main .sitenav-main.column .nav-menu, #header_main .sitenav-main.megamenu .nav-menu {
    justify-content: var(--sitenav-desktop-item-spacing);
    top: auto;
    max-height: none;
    overflow: visible;
    background: transparent;
  }
  #header_main .sitenav-main.column .nav-item.icon-only svg, #header_main .sitenav-main.megamenu .nav-item.icon-only svg {
    height: 1em;
    fill: currentColor;
  }
  #header_main .sitenav-main.column .nav-item.icon-only .icon-only-text, #header_main .sitenav-main.megamenu .nav-item.icon-only .icon-only-text {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    border: 0;
    overflow: hidden;
    clip: rect(0 0 0 0);
  }
  #header_main .sitenav-main.column .nav-item > a, #header_main .sitenav-main.megamenu .nav-item > a {
    text-align: center;
    color: var(--sitenav-desktop-link-color);
    background: var(--sitenav-desktop-bg-color);
  }
  #header_main .sitenav-main.column .nav-item > a:hover, #header_main .sitenav-main.column .nav-item > a:focus, #header_main .sitenav-main.column .nav-item > a.open, #header_main .sitenav-main.megamenu .nav-item > a:hover, #header_main .sitenav-main.megamenu .nav-item > a:focus, #header_main .sitenav-main.megamenu .nav-item > a.open {
    background-color: var(--sitenav-desktop-link-hover-bg-color);
    color: var(--sitenav-desktop-link-hover-color);
  }
  #header_main .sitenav-main.column .sub-nav, #header_main .sitenav-main.megamenu .sub-nav {
    background-color: var(--sitenav-dropdown-bg-color);
    box-shadow: rgba(0, 0, 0, 0.15) 0 3px 5px;
  }
  #header_main .sitenav-main.column .nav-item:nth-last-child(1) .sub-nav:focus, #header_main .sitenav-main.column .nav-item:nth-last-child(1) .sub-nav.open {
    left: auto;
    right: 0;
  }
  #header_main .sitenav-main.megamenu .sub-nav {
    box-sizing: border-box;
    width: 100%;
    max-width: var(--site-width);
    padding: var(--sitenav-sub-nav-padding);
  }
  #header_main .sitenav-main.megamenu .sub-nav .mm-extra-content {
    width: var(--sitenav-extra-content-width);
  }
}
#header_main .sitenav-main .nav-mobile-toggle:not(.open) {
  background: var(--color-3);
}
@media screen and (min-width: 768px) {
  #header_main .school-name a {
    align-items: flex-end;
    text-align: left;
  }
  #header_main .school-name a .school-name-inner {
    padding-bottom: 1.125rem;
  }
}
@media screen and (min-width: 1024px) {
  #header_main {
    --header-width: 22.5rem;
    display: grid;
    grid-template-areas: ". name translate ." ". name sitenav sitenav";
    grid-template-columns: var(--gutter-size) auto 1fr var(--gutter-size);
  }
  #header_main:before {
    display: none;
  }
  #header_main .school-name {
    box-sizing: border-box;
    max-width: var(--header-width);
    grid-area: name;
    padding-top: 1.25rem;
    padding-right: 2rem;
    padding-bottom: 1.875rem;
  }
  #header_main .sitenav-main {
    align-self: flex-start;
    background: var(--color-3);
    grid-area: sitenav;
  }
  #header_main .sitenav-main.nav-group .nav-item.icon-only svg {
    width: 2rem;
    height: 2rem;
  }
  #header_main .sitenav-main.nav-group .nav-item > a {
    padding: 0 0.75rem;
    height: 4.5rem;
    font-weight: 400;
  }
  #header_main .sitenav-main .nav-menu {
    max-width: calc(var(--site-width) - var(--header-width));
    margin-right: auto;
    margin-left: 0;
  }
  #header_main #google_translate_element {
    grid-area: translate;
    justify-self: flex-end;
  }
}

.content-container.slick-container.slick-mods {
  --slick-arrow-width: 5px;
  --slick-arrow-color: var(--color-1);
  --slick-side-margin: 0px;
  --slick-arrow-position-y: calc(100% + 4rem);
}
@media screen and (min-width: 768px) {
  .content-container.slick-container.slick-mods {
    --slick-arrow-position-x: calc(50% - 12rem);
  }
}
@media screen and (min-width: 1024px) {
  .content-container.slick-container.slick-mods {
    --slick-arrow-position-y: calc(100% + 4.5rem);
  }
}
.bg-color-1 .content-container .section-title {
  color: inherit;
}
.bg-color-1 .content-container .read-more-link:not(.type-2):hover, .bg-color-1 .content-container .read-more-link:not(.type-2):focus {
  background-color: white;
  color: black;
  box-shadow: rgba(255, 255, 255, 0.12) 0 0 0 12px;
}
.content-container .section-title {
  margin-bottom: 2.5rem;
  color: var(--color-1);
  font-weight: 700;
  font-size: 3rem;
}
.content-container .item-text {
  font-size: 1.125rem;
}
.content-container .item-name {
  margin-bottom: 0.5rem;
}
.content-container .item-name a {
  font-size: 1.5rem;
}
.content-container .read-more-links-group {
  flex-wrap: wrap;
  padding-top: 3.5rem;
  gap: 2rem 2.5rem;
}
.content-container .read-more-link {
  padding: 1.25rem 2.5rem;
  border-radius: 10rem;
  background: var(--color-2);
  box-shadow: rgba(var(--color-2-base), 0.12) 0 0 0 12px;
  color: var(--color-2-over);
  text-decoration: none;
  font-size: 1.125rem;
  font-weight: 700;
}
.content-container .read-more-link:hover, .content-container .read-more-link:focus {
  background-color: var(--color-1);
  color: var(--color-1-over);
  box-shadow: rgba(var(--color-1-base), 0.12) 0 0 0 12px;
}
.content-container .read-more-link.type-2 {
  border: 1px solid;
  background: transparent;
  box-shadow: none;
  color: inherit;
}
.content-container .read-more-link.type-2:hover, .content-container .read-more-link.type-2:focus {
  background-color: var(--color-2);
  color: var(--color-2-over);
}
@media screen and (min-width: 1024px) {
  .content-container .section-title {
    font-size: 4rem;
    marin-bottom: 3.5rem;
  }
  .content-container .read-more-links-group {
    padding-top: 4rem;
  }
}

#content_main .pageTitle {
  font-size: 1.6875rem;
}
@media screen and (min-width: 768px) {
  #content_main .pageTitle {
    font-size: 1.6875rem;
  }
}
@media screen and (min-width: 1024px) {
  #content_main .pageTitle {
    font-size: 2.25rem;
  }
}

#shuffle_main .shuffle-main {
  overflow: hidden;
  border-radius: 2rem;
}
@media screen and (min-width: 768px) {
  #shuffle_main {
    flex: none;
    align-self: center;
    padding-bottom: 6.25rem;
    width: 55%;
  }
}

#spotlight1_container {
  padding-top: 2.5rem;
  padding-bottom: 5rem;
}
#spotlight1_container .section-title {
  margin-bottom: 1rem;
  font-size: 3.5rem;
}
@media screen and (min-width: 768px) {
  #spotlight1_container {
    align-self: center;
    padding-top: 0;
    padding-bottom: 6.25rem;
    padding-left: 1.125rem;
  }
  #spotlight1_container .section-title {
    text-align: left;
  }
  #spotlight1_container .read-more-links-group {
    justify-content: flex-start;
  }
}
@media screen and (min-width: 1024px) {
  #spotlight1_container {
    padding-left: 2.25rem;
  }
  #spotlight1_container .section-title {
    font-size: 4.5rem;
  }
}

#links_container {
  padding-top: 5rem;
  padding-bottom: 5rem;
}
#links_container .links-list {
  justify-content: space-around;
  gap: 2.5rem;
}
#links_container .link-item a {
  padding: 1.25rem 1.75rem;
  border-radius: 5rem;
  background: var(--color-1);
  box-shadow: rgba(var(--color-1-base), 0.12) 0 0 0 12px;
  color: var(--color-1-over);
  font-size: 1.25rem;
  font-weight: 700;
  text-decoration: none;
  text-align: center;
}
#links_container .link-item a:hover, #links_container .link-item a:focus {
  background-color: var(--color-2);
  color: var(--color-2-over);
  box-shadow: rgba(var(--color-2-base), 0.12) 0 0 0 12px;
}
@media screen and (min-width: 1024px) {
  #links_container {
    padding-top: 6.5rem;
    padding-bottom: 6.5rem;
  }
  #links_container .section-title {
    margin-bottom: 3.75rem;
  }
  #links_container .links-list {
    justify-content: space-between;
  }
}

#news_tabs_container {
  color: var(--color-1);
  padding-top: 0;
  padding-bottom: 5rem;
}
#news_tabs_container .tab-labels-list {
  flex-wrap: wrap;
  justify-content: center;
  margin-bottom: 1rem;
  gap: 0.5rem;
}
#news_tabs_container .tab-label {
  padding: 1rem 0.5rem;
  position: relative;
}
#news_tabs_container .tab-label:before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0.125rem;
  border-radius: 1rem;
  background: var(--color-1);
  box-shadow: rgba(var(--color-1-base), 0.12) 0 0 0 5px;
}
#news_tabs_container .tab-label.ui-state-active:before {
  background: var(--color-2);
  box-shadow: rgba(var(--color-2-base), 0.12) 0 0 0 5px;
}
#news_tabs_container .tab-label a {
  text-decoration: none;
  color: var(--color-1);
  font-weight: 700;
  font-size: 1rem;
}
#news_tabs_container .tab-label a:hover, #news_tabs_container .tab-label a:focus {
  text-decoration: underline;
}
#news_tabs_container .item-inner {
  gap: 1rem;
}
#news_tabs_container .news-item-thumbnail-holder {
  overflow: hidden;
  border-radius: 1.75rem;
}
@media screen and (min-width: 768px) {
  #news_tabs_container .content-container-inner {
    display: flex;
    align-items: center;
  }
  #news_tabs_container .tab-labels-list {
    flex: none;
    flex-direction: column;
    order: 1;
    width: 37.5%;
    margin-bottom: 0;
    margin-left: 2.5rem;
  }
}
@media screen and (min-width: 1024px) {
  #news_tabs_container {
    padding-bottom: 6.5rem;
  }
  #news_tabs_container .tab-labels-list {
    gap: 1.5rem;
  }
  #news_tabs_container .tab-label a {
    font-size: 2rem;
  }
  #news_tabs_container .item-name a {
    font-size: 2rem;
  }
}

#events_container {
  padding-top: 0;
  padding-bottom: 5rem;
}
#events_container .item-inner {
  padding-top: 0.75rem;
  gap: 1.5rem;
  margin-right: 0.5rem;
  margin-left: 0.5rem;
}
#events_container .event-date {
  width: 9.375rem;
  height: 9.375rem;
  border-radius: 2rem;
  background: var(--color-1);
  box-shadow: rgba(var(--color-1-base), 0.12) 0 0 0 12px;
  color: var(--color-1-over);
  font-weight: 500;
  font-size: 2.5rem;
}
#events_container .event-day,
#events_container .event-month {
  font-size: inherit;
}
@media screen and (min-width: 1024px) {
  #events_container {
    padding-bottom: 6.5rem;
  }
}

#footer_main #footer_top {
  padding-top: 2.75rem;
  padding-bottom: 2.5rem;
}
#footer_main #footer_top .footer-row-inner {
  align-items: center;
  gap: 2rem;
}
#footer_main .school-name {
  box-sizing: border-box;
  text-align: center;
  font-size: 1.5rem;
  gap: 1.25rem;
}
#footer_main #footer_nav .links-list {
  gap: 0.25em;
}
#footer_main #footer_nav .link-item a {
  font-size: 1.125rem;
}
#footer_main #social_nav_footer .links-list {
  flex-direction: row;
}
#footer_main .footer-address {
  font-size: 1.125rem;
}
#footer_main #footer_bottom {
  color: var(--color-1);
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
#footer_main #footer_bottom .footer-row-inner {
  align-items: center;
  justify-content: center;
  gap: 2rem;
}
#footer_main #footer_extra .footer-row-inner {
  align-items: flex-start;
  box-sizing: border-box;
  margin-right: auto;
  margin-left: auto;
  max-width: 1024px;
  width: 100%;
}
@media screen and (min-width: 1024px) {
  #footer_main #footer_top {
    padding-top: 3.75rem;
    padding-bottom: 1rem;
  }
  #footer_main #footer_top .footer-row-inner {
    display: grid;
    align-items: flex-start;
    grid-template-areas: "name social social" "name links address";
    grid-template-columns: auto 2fr 1fr;
    gap: 0 2rem;
  }
  #footer_main .school-name {
    width: 20rem;
    grid-area: name;
    padding-right: 1.5rem;
    padding-left: 1.5rem;
  }
  #footer_main #social_nav_footer {
    grid-area: social;
  }
  #footer_main #social_nav_footer .links-list {
    justify-content: flex-start;
  }
  #footer_main #footer_nav {
    grid-area: links;
  }
  #footer_main #footer_nav .links-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }
  #footer_main .footer-address {
    align-items: flex-start;
    text-align: left;
    grid-area: address;
  }
}
