body {
  background-color: white;
  width: 100%;
}

/* Remove news diamond styles */
.node--news .page-header.page-header--news-story::after {
  content: none;
}
.node--news .page-header.page-header--news-story {
  padding-top: 0;
}
.node--news .news-story:after {
  content: none;
}

.feature--light-teal .meta-collection .social-media-links a {
  background-color: unset;
}

/*
 * Fix cases where inset elements on the right
 * overlap the container, hiding the parent
 * contextual menu
 */
.editorial--aside-right > .contextual {
  right: auto;
  left: 0;
}

/*
 * Name collision between quickedit and main theme,
 * need to reset display value to block
 */
.quickedit .icon {
  display: block;
}

/* These styles are temporary */

.block {
  position: relative;
}

.content-header {
  background-color: #D42121;
  color: white;
}

.majors-and-programs header {
  margin-bottom: 2.5rem;
}

.content-header h1 {
  font-size: 2.875rem;
  line-height: 1.195;
  padding: .3rem 2rem .3rem 0;
}

.with-sidebar--major-left > .with-sidebar__sidebar {
  order: 10 !important;
}

span.link--fancy::after {
  display: none;
}

span.link--fancy:hover {
  background-color: initial;
  color: initial;
}

.views-element-container table td,
.views-element-container table th {
  font-size: .8rem;
  padding: .4rem;
}

.views-view-grid .views-row {
  margin-bottom: 1rem;
  font-size: 1.2rem;
  font-weight: bold;
}

/* course form has no selection options for semester, rare instance */
.no-semester-options {
  display: none;
}

.table--class-details {
  font-size: .8em;
}

.region--content {
  min-height: 20rem;
}


#block-davidson-breadcrumbs li {
  font-weight: bold;
}

#block-davidson-local-tasks li {
  font-weight: bold;
  font-size: 1.4rem;
}

#block-davidson-local-tasks a {
  text-decoration: none;
}

#block-davidson-local-tasks a:hover {
  text-decoration: underline;
}

#block-davidson-local-tasks li:after {
  padding-left: 1rem;
  padding-right: 1rem;
  color: #a09e9f;
}

a.block:link,
a.block:visited {
  text-decoration: none;
}

div.block form * {
  max-width: 100%;
}

.sidebar-details__content .social-media-links a,
.meta-collection .social-media-links a {
  background-image: none;
  display: inline-block;
  text-align: center;
  background-color: #ccc;
  line-height: 1.2em;
  padding-top: .2em;
  color: #0f4354;
  background-color: white;
}

.cta .icon {
  margin-top: 0 !important;
}

.icon-library li {
  margin-bottom: 2rem !important;
}

.icon-library .icon__glyph {
  display: inline-block;
  text-align: center;
  min-width: 1em;
}

.icon-library .icon--no-label .icon__label {
  position: static;
  display: inline;
}

/* Override Google Custom Search issues */

.gsc-results .gsc-cursor-box .gsc-cursor-page {
  color: #D42121 !important;
}

.gsc-results .gsc-cursor-box .gsc-cursor-page.gsc-cursor-current-page {
  color: #0f4354 !important;
}

.workflow--unpublished::before,
.workflow--unpublished::after {
  content: 'This content is not published';
  padding: 1rem;
  font-weight: bold;
  background-color: #f7d7d7;
  display: block;
  color: #442020;
}

.workflow--unpublished.workflow--draft::before,
.workflow--unpublished.workflow--draft::after {
  content: 'Draft';
}

.workflow--unpublished.workflow--in_review::before,
.workflow--unpublished.workflow--in_review::after {
  content: 'In Review';
  background-color: #d7f7d7;
  color: #204420
}

.workflow--unpublished.workflow--archived::before,
.workflow--unpublished.workflow--archived::after {
  content: 'Archived';
  background-color: #303030;
  color: #f7f7f7;
}

.paragraph--type--news-cards .teaser .headline-group + div {
  display: none;
}

.social-media-directory:not(.accordion) {
  background-color: #f5f5f6;
}

.social-media-directory:not(.accordion) h3 {
  position: absolute;
  left: -99999em;
}

.social-media-directory:not(.accordion) .social-media-directory-display {
  margin-left: 0;
  margin-right: 0;
  padding-left: 2rem;
  padding-right: 1rem;
}

aside .social-media-directory-display {
  display: block;
  background-color: #f5f5f6;
  padding: 1rem;
}

/* Fix stylesheet incompatibility with ShareThis */

.st-btn img {
  display: inline;
}

.slab--orange-diagonal-offset .teaser.teaser--archive {
  border-width: 0;
  padding-top: 0;
}

.slab--orange-diagonal-offset .grid--xlarge {
  overflow: visible;
}

.slab--orange-diagonal-offset .teaser.teaser--archive h3 {
  margin-bottom: 0;
}

.slab--orange-diagonal-offset .teaser.teaser--archive:first-child {
  border-width: 0;
  padding-top: 0;
}

.slab--orange-diagonal-offset .teaser.teaser--archive time,
.slab--orange-diagonal-offset .teaser.teaser--archive .taxonomy {
  white-space: nowrap;
}

.teaser .teaser__icon .fa-fw {
  font-size: 2.8125rem;
  color: #555;
}

/* Featured paragraph view mode override */
.collection-grid.collection-grid--fancy--white .taxonomy {
  display: none !important;
}

/* News Listing form overrides */
#views-exposed-form-news-archive .chosen-container, #views-exposed-form-news-archive .chosen-drop,
#views-exposed-form-events-archive .chosen-container, #views-exposed-form-events-archive .chosen-drop{
  background-color: #fff;
}
#views-exposed-form-news-archive .form-item-keyword input,
#views-exposed-form-events-archive .form-item-keyword input {
  width: calc(100% - 1.25rem);
  max-width: 292px;
}
#views-exposed-form-news-archive .feature.feature--horizontal,
#views-exposed-form-events-archive .feature.feature--horizontal {
  display: block;
}
#views-exposed-form-news-archive .chosen-select.chosen-container,
#views-exposed-form-events-archive .chosen-select.chosen-container {
  /* Overrides the inline chosen attr */
  width: 300px !important;
  max-width: 100%;
}
#views-exposed-form-news-archive .form-item-keyword input,
#views-exposed-form-events-archive .form-item-keyword input {
  width: 100%;
  max-width: 324px;
}
#views-exposed-form-news-archive .form-item-year select,
#views-exposed-form-events-archive .form-item-department select,
#views-exposed-form-events-archive .form-item-study select,
#views-exposed-form-events-archive .form-item-type select {
   width: 100%;
   max-width: 342px;
 }
@media screen and (min-width: 1028px) {
  #views-exposed-form-news-archive select.chosen-select,
  #views-exposed-form-events-archive select.chosen-select {
    max-width: 250px;
  }
  #views-exposed-form-news-archive .chosen-select.chosen-container,
  #views-exposed-form-events-archive .chosen-select.chosen-container {
    /* Overrides the inline chosen attr */
    max-width: 250px;
  }
  #views-exposed-form-news-archive .form-item-keyword input,
  #views-exposed-form-events-archive .form-item-keyword input {
    max-width: calc(100% - 1.25rem);
  }
  #views-exposed-form-news-archive .feature.feature--horizontal,
  #views-exposed-form-events-archive .feature.feature--horizontal {
    flex-direction: column;
    flex-wrap: wrap;
  }
  #views-exposed-form-news-archive .feature--horizontal .row,
  #views-exposed-form-events-archive .feature--horizontal .row {
    display: flex;
  }
  #views-exposed-form-news-archive .feature--horizontal .row > *,
  #views-exposed-form-events-archive .feature--horizontal .row > * {
    margin-left: 2rem;
  }
  #views-exposed-form-news-archive .feature--horizontal .row > *:first-child,
  #views-exposed-form-events-archive .feature--horizontal .row > *:first-child {
    margin-left: 0;
  }
  #views-exposed-form-news-archive .form-item-keyword,
  #views-exposed-form-events-archive .form-item-keyword {
    flex: 1 0 auto;
  }
  #views-exposed-form-news-archive .form-item-year {
    flex: 1 0 auto;
  }
  #views-exposed-form-events-archive .form-item-type,
  #views-exposed-form-events-archive .form-item-study,
  #views-exposed-form-events-archive .form-item-department {
    flex: 0 0 auto;
  }
  #views-exposed-form-news-archive .form-item-year select,
  #views-exposed-form-events-archive .form-item-study select,
  #views-exposed-form-events-archive .form-item-department select,
  #views-exposed-form-events-archive .form-item-type select {
    width: 100%;
    max-width: 292px;
  }
  #views-exposed-form-news-archive label,
  #views-exposed-form-events-archive label{
    text-transform: uppercase;
  }
}

/* Fixes overflow caused by huge tables. */
.with-sidebar__main {
  max-width: 100%;
}

/* Search isn't visible on very small screens */
@media screen and (max-width: 400px) {
  .site-search .site-search__inputs input {
    font-size: .8rem;
  }
}

/* the icon is a different size from the flat. */
.megamenu .accordion__header .accordion__icon::before {
  font-size: 22px;
}
.megamenu .accordion__item button.accordion__header[aria-expanded='true'] .accordion__icon::before {
  font-size: 22px;
}
@media only screen and (min-width: 1024px) {
  .megamenu .accordion__header .accordion__icon::before {
    font-size: 29px;
  }
  .megamenu .accordion__item button.accordion__header[aria-expanded='true'] .accordion__icon::before {
    font-size: 29px;
  }
}

/* News overrides the intro text styling */
.news-story p.intro {
  font-size: 2rem;
  line-height: 2.5rem;
  font-family: "Rubik", sans-serif;
}
@media screen and (min-width: 77rem) {
  .news-story p.intro {
    font-size: 2rem;
    line-height: 2.5rem;
  }
}

@media screen and (min-width: 35rem) {
  .teaser--archive-listing .teaser__content {
    margin-left: 20px;
  }

  .teaser--archive-listing img{
    width: 120px;
  }

  .teaser--archive .teaser__content p {
    font-size: 1.25rem;
    line-height: 2rem;
  }
}
.teaser--archive-listing.teaser.teaser--archive {
  border-bottom: none;
}
.teaser--archive-listing.teaser.teaser--archive:first-child {
  border-top: none;
  padding-top: 0;
}
.teaser--archive-listing .teaser__title {
  margin-bottom: 5px;
  font-weight: 700;
}

.social-media-links.social-media-links--row .tiktok:hover {
  color: #3b5998;
}

/* Additional links come with an icon that increases the line height and throws off the bg underline size. */
.editorial__content .additional-links a:not(.button) {
  background-position: 0 0.65em;
}
.editorial__content .additional-links a:not(.button):hover, .editorial__content .additional-links a:not(.button):focus {
  background-position: 0 0.6em;
}

/* Normalizing the social media link styles. The duplicate styles are for the two different sidebars without hitting the footer. */
.meta-collection ul.social-media-links--platforms li,
.sidebar-details__content ul.social-media-links--platforms li {
  padding-right: 0;
  font-size: 32px;
  line-height: 32px;
}
.meta-collection ul.social-media-links--platforms li:not(last-child),
.sidebar-details__content ul.social-media-links--platforms li:not(last-child) {
  padding-right: 0;
}
.meta-collection ul.social-media-links--platforms li a,
.sidebar-details__content ul.social-media-links--platforms li a {
  background: none;
  font-size: 32px;
  line-height: 32px;
}

.link-icon-wrapper .fa {
  color: #0F4354;
  font-size: 1.2rem;
}

.news-story .alert__content a:not(.button) {
  font-size: 1.1667rem;
}

.alert a.link--fancy:not(.button) {
  font-size: 1.1667rem;
  font-weight: 700;
}

/* Sidebar meta collection UL isn't spaced normally. Match p. */
.meta-collection.block ul {
  margin-bottom: 16px;
}

/* Homepage Redesign Overrides */
/* New Atoms */
body .node--home .button.button--inverted {
  background: #D42121;
  color: #fff;
  border: 1px solid #fff;
}
body .node--home .button.button--inverted:hover, body .button.button--inverted:focus {
  background: #fff;
  color: #D42121;
  border-color: #fff;
}
body .button.button--inverted--blue:link {
  background: #0F4354;
  color: #fff;
  border: 1px solid #fff;
}
body .button.button--inverted--blue:link:hover, body .button.button--inverted--blue:link:focus {
  color: #0F4354;
  background: #fff;
}
.background {
  padding: 50px 25px;
}
.background--light-grey {
  background: #F5F5F6;
}
a.link-arrow {
  text-decoration: none;
  font-family: "Rubik", sans-serif;
  font-weight: 500;
}
a.link-arrow:after {
  color: #559CB4;
  content: "\f061";
  font-family: "Font Awesome 5 Free";
  /* Bold is the only available font for this icon set. */
  font-weight: 900;
  margin-left: 8px;
}
/* End New Atoms */
/* Global overrides */
.node--home h2 {
  font-weight: 500;
  font-size: 28px;
  line-height: 130%;
  margin-bottom: 8px;
}
.node--home p {
  font-weight: 400;
  font-size: 16px;
  line-height: 167.5%;
}
.node--home a.link-arrow:hover:after, .node--home a.link-arrow:focus:after {
  margin-left: 10px;
}
@media all and (min-width: 70rem) {
  .node--home h2 {
    font-size: 32px;
    line-height: 40px;
  }
  .node--home p {
    font-size: 20px;
  }
}

/***** Hero Slider *****/
.paragraph.paragraph--type--hero-slider {
  margin: 0;
  background: #E6EFF2;
  padding: 20px 24px 50px 20px;
  overflow: hidden;
}
.paragraph--type--hero-slide .hero-slide--content--inner {
  box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.2);
  padding: 24px;
}
.paragraph--type--hero-slider .hero-slide--content {
  background: #fff;
}
.paragraph--type--hero-slider h2 {
  font-size: 24px;
  line-height: 130%;
}
.paragraph--type--hero-slider .hero-slide--quotation {
  font-weight: 400;
  font-size: 16px;
  line-height: 167.5%;
  padding-top: 16px;
  margin-top: 16px;
  border-top: 1px solid #559CB4;
}
.paragraph--type--hero-slider .hero-slide--source {
  font-weight: 700;
}
.paragraph--type--hero-slider ul.clean {
  padding-top: 16px;
  margin-top: 16px;
  border-top: 1px solid #559CB4;
}
.paragraph--type--hero-slider .desktop-media {
  display: none;
}
.hero-slider--inner:after {
  content: ' ';
  position: absolute;
  top: 0;
  left: -20px;
  height: 100%;
  width: 20px;
  background: #E6EFF2;
}
.paragraph--type--hero-slider .slick-arrow {
  border: none;
  background: #D42121;
  height: 37px;
  width: 44px;
  color: #fff;
  font-size: 28px;
  line-height: 37px;
  /* IOS specific override. It automatically adds large l/r padding and breaks the layout. */
  padding: 1px 0;
}
.paragraph--type--hero-slider .slick-arrow.prev {
  position: absolute;
  bottom: 0;
  left: 0;
}
.paragraph--type--hero-slider .slick-arrow.next {
  margin-top: 20px;
  margin-left: 62px;
}
.paragraph--type--hero-slider .slick-slide {
  background: none;
  opacity: 0.5;
  transition: opacity 0.3s, visibility 0.3s;
  margin: 0 4px; /* Doubles to 8 */
}
.paragraph--type--hero-slider .slick-slide.slick-active {
  opacity: 1;
}
.paragraph--type--hero-slider .grid, .paragraph--type--hero-slider .slick-list {
  overflow: visible;
}
.paragraph--type--hero-slider .mobile-media .video-modal {
  position: relative;
  display: block;
}
.paragraph--type--hero-slider .mobile-media button {
  border: 3px solid #fff;
  background: #D42121;
  color: #fff;
  border-radius: 50%;
  padding: 10px;
  opacity: 0.8;

  position: absolute;
  bottom: 16px;
  right: 16px;
}
.paragraph--type--hero-slider .mobile-media button .icon__glyph {
  font-size: 14px;
  line-height: 14px;
  margin: 2px 0 2px 4px;

}
.paragraph--type--hero-slider .mobile-media button .icon__label {
  position: absolute;
  overflow: hidden;
  clip: rect(0 0 0 0);
  height: 1px;
  width: 1px;
}
@media all and (min-width: 1024px) {
  /* Comes out to the aprox aspect ratio required for the images*/
  .paragraph--type--hero-slider .hero-slider--inner {
    min-height: 51vw;
  }
  .paragraph.paragraph--type--hero-slider {
    padding: 40px 0;
  }

  /* Ambient video. */
  .paragraph--type--hero-slider .mobile-media {
    display: none;
  }
  .paragraph--type--hero-slide .desktop-media {
    display: block;
    position: relative;
  }
  .paragraph--type--hero-slide .desktop-media .ambient-video {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    min-height: unset;
  }
  .paragraph--type--hero-slide .desktop-media .ambient-video.ambient-paused .ambientVideo {
    display: none;
  }
  /* No auto play for any ambient video, per client request in UAT. */
  /* .paragraph--type--hero-slide.active .desktop-media .ambient-video, */
  .paragraph--type--hero-slide:hover .desktop-media .ambient-video,
  .paragraph--type--hero-slide:focus .desktop-media .ambient-video {
    display: block;
  }
  .paragraph--type--hero-slide .desktop-media .ambient-video .ambientVideo {
    height:100%;
    width: 100%;
  }
  .paragraph--type--hero-slide .desktop-media iframe {
    position: relative;
    top: unset;
    left: unset;
    width: 100%;
    height: 100%;
    transform: unset;
  }
  .paragraph--type--hero-slide .desktop-media .ambient-pause {
    top: 8px;
    left: 8px;
    bottom: unset;
    padding: 8px;
    color: #D42121;
  }
  .paragraph--type--hero-slide .desktop-media .ambient-pause:hover, .paragraph--type--hero-slide .desktop-media .ambient-pause:focus {
    color: #fff;
  }
  /* Excessive specificity to override defaults. */
  .paragraph--type--hero-slide .desktop-media .ambient-video button .icon .icon__label {
    margin-left: 10px;
    position: relative;
    height: auto;
    width: auto;
  }

  /* Desktop active play button. */
  .paragraph--type--hero-slide .desktop-media .inline-video-play {
    display: none;
    z-index: 1;

    position: absolute;
    left: calc(50% - 38px);
    bottom: 22px;
    -webkit-transition: bottom 500ms ease-in-out;
    -moz-transition: bottom 500ms ease-in-out;
    -o-transition: bottom 500ms ease-in-out;
    transition: bottom 500ms ease-in-out;
  }
  .paragraph--type--hero-slide.active .desktop-media .inline-video-play {
    display: block;
    bottom: 257px;
  }
  .paragraph--type--hero-slide .desktop-media .inline-video-play button {
    border: 3px solid #fff;
    background: #D42121;
    color: #fff;
    border-radius: 50%;
    padding: 28px;
  }
  .paragraph--type--hero-slide .desktop-media .inline-video-play .icon__label {
    position: absolute;
    overflow: hidden;
    clip: rect(0 0 0 0);
    height: 1px;
    width: 1px;
  }
  .paragraph--type--hero-slide .desktop-media .inline-video-play .icon__glyph {
    margin: 0;
    font-size: 21px;
    line-height: 21px;
  }
  .paragraph--type--hero-slide .desktop-media iframe.video-embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transform: unset;
  }

  /* Changes while the active video is open. */
  .paragraph--type--hero-slide.active.active-video-open .hero-slide--content {
    margin-top: 0;
    background-color: #D42121;
    color: #fff;
  }
  .paragraph--type--hero-slide.active.active-video-open .inline-video-play {
    display: none;
  }
  /* Removed by client request. Ambient play is only on hover. */
  .paragraph--type--hero-slide .ambient-pause {
    display: none;
  }
  .paragraph--type--hero-slide.active.active-video-open .ambient-pause {
    display: none;
  }
  .paragraph--type--hero-slide.active.active-video-open .close-active-video {
    position: absolute;
    top: 0;
    left: calc(50% - 10px);
  }
  .paragraph--type--hero-slide .close-active-video {
    background: #D42121;
    color: #fff;
    padding: 10px 9px 7px 10px;
  }
  .paragraph--type--hero-slide .close-active-video:hover, .paragraph--type--hero-slide .close-active-video:focus {
    background: #fff;
    color: #D42121;
  }
  .paragraph--type--hero-slide .close-active-video .icon__label {
    position: absolute;
    overflow: hidden;
    clip: rect(0 0 0 0);
    height: 1px;
    width: 1px;
  }
  .paragraph--type--hero-slide .close-active-video .icon__glyph {
    margin: 0;
    font-size: 21px;
    line-height: 21px;
  }

  .paragraph--type--hero-slide .hero-slide--content--inner {
    padding: 40px;
  }
  /* View width and margin to keep text from sliding. */
  .paragraph--type--hero-slide .hero-slide--content--inner > * {
    max-width: 10vw;
    margin: auto;
  }
  .paragraph--type--hero-slide.active .hero-slide--content--inner > * {
    max-width: 18vw;
    margin: auto;
  }
  .paragraph--type--hero-slide.has-video-button .hero-slide--content--inner {
    padding-top: 50px;
  }

  .paragraph--type--hero-slide {
    align-self: flex-start;
  }
  .paragraph--type--hero-slide:not(.active) {
    cursor: pointer;
  }
  .paragraph--type--hero-slide .hero-slide--content h2 {
    margin-bottom: 0;
  }
  .paragraph--type--hero-slide .hero-slide--content {
    background-color: #D42121;
    color: #fff;
    text-align: center;
    margin: -60px 40px 0 40px;
    position: relative;
    -webkit-transition: color 500ms ease-in-out,
      background 500ms ease-in-out,
      margin-top 500ms ease-in-out;
    -moz-transition: color 500ms ease-in-out,
      background 500ms ease-in-out,
      margin-top 500ms ease-in-out;
    -o-transition: color 500ms ease-in-out,
      background 500ms ease-in-out,
      margin-top 500ms ease-in-out;
    transition: color 500ms ease-in-out,
      background 500ms ease-in-out,
      margin-top 500ms ease-in-out;
  }
  .paragraph--type--hero-slide.active .hero-slide--content {
    background-color: #fff;
    color: #000;
    margin-top: -300px;
  }
  .paragraph--type--hero-slide .hero-slide--content .hero-slide--to-reveal {
    display: none;
  }
  .paragraph--type--hero-slide.active--finished .hero-slide--content .hero-slide--to-reveal {
    display: block;
  }

  .hero-slider--inner {
    max-width: 1440px;
    margin: auto;
  }
  .hero-slider--inner {
    display: flex;
    flex-direction: row;
  }
  .paragraph.paragraph--type--hero-slide {
    margin: 0 4px;
    flex: 1 1 23%;
    transition: flex-basis 500ms ease-in-out;
  }
  .paragraph--type--hero-slide.active {
    flex: 1 1 31%;
  }
  .paragraph--type--hero-slide:not(.active):hover, .paragraph--type--hero-slide:not(.active):focus {
    flex: 1 1 25%;
  }

  .paragraph--type--hero-slide:nth-of-type(2n) {
    margin-top: 40px;
  }
}
@media all and (min-width: 1300px) {
  .paragraph--type--hero-slider .hero-slider--inner {
    min-height: 816px;
  }
}
@media all and (min-width: 1440px) {
  /* Keep the width of the content from changing unless the active has been changed. */
  .paragraph--type--hero-slide .hero-slide--content--inner > * {
    max-width: 157px;
  }
  .paragraph--type--hero-slide.active .hero-slide--content--inner > * {
    max-width: 267px;
  }
}


/***** Promo *****/
.paragraph.paragraph--type--promo {
  background: #0F4354;
  color: #fff;
  padding: 50px 25px;
  margin: 0;
}
.paragraph--type--promo li + li {
  margin-top: 16px;
}
.paragraph--type--promo .promo--image {
  margin-top: 24px;
}
@media all and (min-width: 58rem) {
  .paragraph.paragraph--type--promo {
    padding: 80px;
  }
  .paragraph.paragraph--type--promo .paragraph--type--promo--inner {
    max-width: 1160px;
    margin: auto;
    display: flex;
    column-gap: 40px;
  }
  .paragraph--type--promo ul {
    display: flex;
    row-gap: 24px;
    column-gap: 24px;
    flex-wrap: wrap;
  }
  .paragraph--type--promo li {
    flex: 0 0 auto;
  }
  .paragraph--type--promo li + li {
    margin-top: 0;
  }
  .paragraph--type--promo .promo--content {
    align-self: center;
  }
  .paragraph--type--promo .promo--image {
    flex: 0 0 50%;
    align-self: center;
    margin-top: 0;
  }
}


/***** Community Highlight Component *****/
.paragraph.paragraph--type--community-highlight {
  background: #E6EFF2;
  margin-bottom: 0;
  padding-bottom: 50px;
}
/* content section can be generalized between this and the highlight section.*/
.paragraph--type--community-highlight .community-highlight--content--wrapper {
  border-top: 5px solid #D42121;
  box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.2);
}
.paragraph--type--community-highlight .community-highlight--content {
  padding: 50px 25px;
  background: #fff;
}
.paragraph--type--community-highlight .desktop-media {
  display: none;
}
.paragraph--type--community-highlight .community-highlight--image {
  position: relative;
}
.paragraph--type--community-highlight .inline-ambient-video {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}
.paragraph--type--community-highlight .ambient-video {
  min-height: 0;
}
.paragraph--type--community-highlight .ambient-video button {
  bottom: 8px;
  right: 8px;
  left: unset;
  padding: 8px;

  font-weight: 700;
  font-size: 14px;
  line-height: 150%;
}
.paragraph--type--community-highlight .ambient-video button .ic:before {
  display: block;
}
/* Excessive specificity to override defaults. */
.paragraph--type--community-highlight .inline-ambient-video .ambient-video button .icon .icon__label {
  margin-left: 10px;
  position: relative;
  height: auto;
  width: auto;
}
@media all and (min-width: 58rem) {
  .paragraph--type--community-highlight .mobile-media {
    display: none;
  }
  .paragraph--type--community-highlight .desktop-media {
    display: block;
  }
  .paragraph--type--community-highlight .inline-ambient-video {
    display: block;
  }
  .paragraph.paragraph--type--community-highlight .paragraph--type--community-highlight--inner {
    max-width: 1440px;
    margin: auto;
    display: flex;
  }
  .paragraph.paragraph--type--community-highlight .community-highlight--image {
    order: 1;
  }
  .paragraph.paragraph--type--community-highlight .community-highlight--content--wrapper {
    align-self: center;
    width: 460px;
    flex: 0 0 auto;

    z-index: 1;
    margin-right: -60px;
  }
  .paragraph.paragraph--type--community-highlight .community-highlight--content {
    padding: 40px;
  }
}


/***** Highlight Component *****/
.paragraph.paragraph--type--highlight {
  background: #E6EFF2;
  margin-bottom: 0;
  padding-bottom: 50px;
}
/* The second one should have a white background. */
.paragraph.paragraph--type--highlight + .paragraph--type--highlight, .paragraph--type--community-highlight + .paragraph--type--highlight {
  background: #fff;
}
.paragraph--type--highlight--inner {
  max-width: 1440px;
  margin: auto;
}
.paragraph--type--highlight .highlight--content--wrapper {
  border-top: 5px solid #D42121;
  box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.2);
}
.paragraph--type--highlight .highlight--content {
  padding: 50px 25px;
  background: #fff;
}
.paragraph--type--highlight .highlight--stat {
  background: #F5F5F6;
}
.paragraph--type--highlight li + li {
  margin-top: 16px;
}

.paragraph--type--highlight .desktop-media {
  display: none;
}
/* Stat card, can come first or last in its wrapper. */
.paragraph--type--stat-card {
  background: #F5F5F6;
  padding: 50px 25px;
}
.paragraph--type--stat-card .stat-card--icon {
  font-family: "Rubik", sans-serif;
  font-weight: 700;
  font-size: 72px;
  line-height: 125%;
  color: #D42121;
}
.paragraph--type--stat-card h3 {
  font-size: 20px;
  line-height: 150%;
  margin-bottom: 24px;
}
.paragraph--type--stat-card p {
  font-size: 16px;
  line-height: 167.5%;
}
@media all and (min-width: 58rem) {
  .paragraph--type--highlight .mobile-media {
    display: none;
  }
  .paragraph--type--highlight .desktop-media {
    display: block;
  }
  .paragraph.paragraph--type--highlight {
    padding-bottom: 80px;
    margin-bottom: 0;
  }
  .paragraph--type--highlight .highlight--content--wrapper {
    max-width: 1160px;
    margin: auto;
    display: flex;
    position: relative;
    margin-top: -60px;
  }
  .paragraph--type--highlight .highlight--content{
    padding: 40px;
    flex: 1 1 auto;
  }
  .paragraph--type--highlight .highlight--stat {
    width: 360px;
    flex: 0 0 auto;
  }
  .paragraph--type--highlight .highlight--stat > div {
    display: flex;
  }
  .paragraph--type--highlight .paragraph--type--stat-card {
    align-self: center;
    padding: 40px;
  }
  .paragraph--type--highlight p {
    margin-bottom: 0
  }
  .paragraph--type--highlight ul {
    display: flex;
  }
  .paragraph--type--highlight li, .paragraph--type--highlight li + li {
    margin-right: 24px;
    margin-top: 24px;
  }
}

/***** News Feature *****/
.paragraph--type--news-feature {
  overflow: hidden;
}
.news-feature--content--inner {
  margin: 50px 25px 25px 25px;
}
/* The top margin is handled by the previous padding here. */
.paragraph.paragraph--type--highlight + .paragraph--type--highlight + .paragraph--type--news-feature .news-feature--content--inner,
.paragraph--type--community-highlight + .paragraph--type--highlight  + .paragraph--type--news-feature .news-feature--content--inner {
  margin-top: 0;
}
/* New view mode; teaser, featured */
.paragraph--type--news-feature .teaser--featured .teaser__content {
  margin: 25px 25px 0 25px;
}
.paragraph--type--news-feature .teaser--featured .teaser__eyebrow {
  font-family: "Rubik", sans-serif;
  text-transform: uppercase;
  font-weight: 700;
  font-size: 14px;
  line-height: 150%;
  margin-bottom: 10px;
}
.paragraph--type--news-feature .teaser--featured .teaser__content a {
  text-decoration: none;
}
.paragraph--type--news-feature .teaser--featured .teaser__content h3 {
  font-weight: 500;
  font-size: 28px;
  line-height: 130%;
  margin-bottom: 10px;
}
.paragraph--type--news-feature  .views-element-container {
  margin-top: 24px;
  /* Arrow offset on mobile. */
  margin-left: 17px;
  /* 44px widht + 8px margin */
  margin-right: 52px;
  position: relative;
}
.paragraph--type--news-feature  .views-element-container:after {
  content: ' ';
  position: absolute;
  top: 0;
  left: -17px;
  height: 100%;
  width: 17px;
  background: #fff;
}
.paragraph--type--news-feature  .views-element-container .teaser--archive-listing {
  display: flex;
  flex-direction: column;
  padding-bottom: 0;
}
.paragraph--type--news-feature  .views-element-container .cover-image {
  order: 1;
  width: 100%;
}
.paragraph--type--news-feature  .views-element-container .cover-image img {
  order: 1;
  width: 100%;
}
.paragraph--type--news-feature  .views-element-container .teaser__content {
  margin-left: 0;
  margin-top: 20px;

}
.paragraph--type--news-feature  .views-element-container .teaser__title {
  margin-bottom: 0;
}
.paragraph--type--news-feature  .views-element-container .teaser__title a {
  text-decoration: none;
  font-family: "Rubik", sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 150%;
}
/* Duplicates the link-arrow class */
.paragraph--type--news-feature  .views-element-container .teaser__title a:after {
  color: #559CB4;
  content: "\f061";
  font-family: "Font Awesome 5 Free";
  /* Bold is the only available font for this icon set. */
  font-weight: 900;
  margin-left: 8px;
}
.paragraph--type--news-feature  .views-element-container .teaser__title a:hover:after, .paragraph--type--news-feature  .views-element-container .teaser__title a:focus:after {
  margin-left: 10px;
}
.paragraph--type--news-feature  .views-element-container .slick-list {
  margin-bottom: 50px;
}
/* show the prev/next slides */
.paragraph--type--news-feature  .views-element-container .grid, .paragraph--type--news-feature  .views-element-container .slick-list {
  overflow: visible;
}
.paragraph--type--news-feature  .views-element-container .slick-slide {
  background: none;
  opacity: 0.5;
  transition: opacity 0.3s, visibility 0.3s;
  margin: 0 8px;
}
.paragraph--type--news-feature  .views-element-container .slick-slide.slick-active {
  opacity: 1;
}
.paragraph--type--news-feature  .views-element-container .slick-arrow {
  border: none;
  background: #D42121;
  height: 37px;
  width: 44px;
  color: #fff;

  font-size: 28px;
  line-height: 37px;

  position: absolute;
  z-index: 1;
  /* height of image = aspect ratio * width of image */
  /* (133/236) * (100vw - 85px) */
  /* .5 height of image - 1/2 height of button */
  top: calc(.5 * ((133/236) * (100vw - 85px)) - 18px);

  transition: 0.3s ease-in-out;
}
.paragraph--type--news-feature  .views-element-container .slick-arrow:hover {
  cursor: pointer;
  border-color: #0F4354;
  background-color: #0F4354;
}
.paragraph--type--news-feature  .views-element-container .slick-arrow.prev {
  left: -17px;
}
.paragraph--type--news-feature  .views-element-container .slick-arrow.next {
  right: -52px;
}

/* arrow spacing on the slider based on slider breaks (image max width) */
@media all and (min-width: 520px) {
  .paragraph--type--news-feature .views-element-container .slick-arrow {
    /* move the button. The height is the same but the width is double + spacing. */
    top: calc(.5 * ((133/488) * (100vw - 85px)) - 18px);
  }
}
@media all and (min-width: 900px) {
  .paragraph--type--news-feature .views-element-container .slick-arrow {
    /* move the button. The height is the same but the width is triple + 2xspacing. */
    top: calc(.5 * ((133/740) * (100vw - 85px)) - 18px);
  }
}
@media all and (min-width: 1288px) {
  .paragraph--type--news-feature  .views-element-container {
    /* centers the 20px margin */
    max-width: 1200px;
    margin: auto;
    margin-top: 40px;
  }
  .paragraph--type--news-feature  .views-element-container:after {
    content: none;
  }
  .paragraph--type--news-feature  .views-element-container .slick-arrow {
    width: 78px;
    height: 74px;
    line-height: 74px;
    top: 65px;
  }
  .paragraph--type--news-feature  .views-element-container .slick-list {
    margin-bottom: 80px;
  }
  .paragraph--type--news-feature  .views-element-container .slick-arrow.prev {
    left: calc(((100vw - 1200px) / 2) * -1);
  }
  .paragraph--type--news-feature  .views-element-container .slick-arrow.next {
    right: calc(((100vw - 1200px) / 2) * -1);
  }
  .paragraph--type--news-feature  .views-element-container .slick-slide {
    margin: 0 20px;
  }
  .paragraph--type--news-feature  .views-element-container .teaser__title a {
    font-size: 20px;
  }
}
@media all and (min-width: 1440px) {
  .paragraph--type--news-feature  .views-element-container .slick-arrow.prev {
    left: -120px;
  }
  .paragraph--type--news-feature  .views-element-container .slick-arrow.next {
    right: -120px;
  }
}

@media all and (min-width: 58rem) {
  .news-feature--content {
    /* Allow for the margin on the header section. */
    max-width: 1210px;
    margin: auto;
  }
  .news-feature--content--news {
    max-width: 1160px;
    margin: auto;
  }
  .news-feature--content--subheading {
    display: flex;
  }
  .news-feature--content--subheading p {
    flex: 1 0 auto;
  }
  .news-feature--content--subheading a {
    flex: 0 0 auto;
  }
  .paragraph--type--news-feature .teaser--featured {
    display: flex;
  }
  .paragraph--type--news-feature .teaser--featured .cover-image {
    flex: 1 0 57%;
    align-self: center;
  }
  .paragraph--type--news-feature .teaser--featured .teaser__content {
    flex: 1 1 43%;
    margin: 20px 0 20px 40px;
    align-self: center;
  }
  .paragraph--type--news-feature .teaser--featured .teaser__content h3 {
    font-size: 24px;
    line-height: 150%;
  }
  .paragraph--type--news-feature .teaser--featured .teaser__content p {
    font-size: 20px;
    line-height: 167.5%;
    margin-bottom: 0;
  }
}

/***** Event Feature *****/
.paragraph.paragraph--type--event-feature {
  margin-bottom: 0;
  /* See the sock */
  padding-bottom: calc(((100vw - 50px) * .57 * 1/3) + 50px);
}
.paragraph--type--event-feature .media {
  margin-top: 25px;
}
.paragraph--type--event-feature .collection__button {
  display: none;
}
.paragraph--type--event-feature .listing {
  margin-top: 24px;

  background: #fff;
  border-top: 5px solid #D42121;
  box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.2);

  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  padding: 32px 24px;
  gap: 24px;
}
.paragraph--type--event-feature .listing .grid {
  display: block;
}
.paragraph--type--event-feature .teaser.teaser--top-stroke + .teaser--top-stroke {
  margin-top: 24px;
  padding-top: 24px;
  border-top: 1px solid #559CB4;
}
.paragraph--type--event-feature .teaser.teaser--top-stroke .block-link {
  border-top: none;
}
.paragraph--type--event-feature .teaser.teaser--top-stroke .block-link .teaser__content {
  margin-top: 0;
  display: flex;
  flex-direction: column;
}
.paragraph--type--event-feature .teaser .event-meta {
  order: 1;
  margin-bottom: 0;

  color: #000;
  font-weight: 400;
  font-size: 16px;
  line-height: 167.5%;
}
.paragraph--type--event-feature .teaser .event-meta .daterange__date:before, .paragraph--type--event-feature .teaser .event-meta .daterange__time:before {
  content: "\f133";
  font-weight: 400;
  font-size: 18px;
  line-height: 150%;
  font-family: "Font Awesome 5 Free";
  margin-right: 16px;
  color: #559CB4;
}
.paragraph--type--event-feature .teaser .event-meta .daterange__time {
  color: #000;
}
.paragraph--type--event-feature .teaser .event-meta .daterange__time:before {
  content: "\f017";
  margin-right: 14px;
}
.paragraph--type--event-feature .teaser .event-meta span + span {
  margin-top: 10px;
}
.paragraph--type--event-feature .headline-group {
  margin-bottom: 10px;
}
.paragraph--type--event-feature .teaser .headline-group .headline-group__head {
  font-weight: 500;
  font-size: 18px;
  line-height: 150%;
}
/* Duplicates the link-arrow class. */
.paragraph--type--event-feature .teaser .headline-group .headline-group__head:after {
  color: #559CB4;
  content: "\f061";
  font-family: "Font Awesome 5 Free";
  font-size: 18px;
  /* Bold is the only available font for this icon set. */
  font-weight: 900;
  margin-left: 8px;
}
.paragraph--type--event-feature .teaser .headline-group .headline-group__head:hover:after, .paragraph--type--event-feature .teaser .headline-group .headline-group__head:focus:after {
  margin-left: 10px;
}
@media all and (min-width: 58rem) {
  .paragraph.paragraph--type--event-feature {
    /* Handle the image overlay below. */
    padding: 80px 0 120px 0;
  }
  .paragraph--type--event-feature--inner {
    max-width: 1440px;
    margin: auto;

    display: flex;
    flex-direction: row;
  }
  .paragraph--type--event-feature--content--inner {
    padding-left: 140px;
  }
  .paragraph--type--event-feature .listing {
    flex: 0 0 auto;
    margin-top: 0;
    margin-left: 40px;
    /* 360 - 24px padding * 2 */
    width: 312px;
    /* takes the place of padding on the inner div which threw off centering. */
    margin-right: 140px;
  }
  .paragraph--type--event-feature .media {
    margin-top: 40px;
  }

  /* this margin is included in the padding here. */
  .paragraph.paragraph--type--event-feature + .paragraph.paragraph--type--sock {
    margin-top: 0;
  }

  /* Reflow the section when there is no listing. */
  .paragraph--type--event-feature.no-feed .paragraph--type--event-feature--content {
    display: flex;
  }
  .paragraph--type--event-feature.no-feed .paragraph--type--event-feature--content--inner {
    flex: 1 0 auto;
    order: 2;
    padding: 0 40px;
    margin-left: 40px;
    margin-right: 60px;
    width: 360px;
    align-self: center;
  }
  .paragraph--type--event-feature.no-feed .media {
    order: 1;
    align-self: center;
    margin-top: 0;
  }
}
@media all and (min-width: 1200px) {
  .paragraph--type--event-feature.no-feed .media {
    margin-top: -120px;
  }
}


/***** Sock. This is entirely new from molecule up. *****/
/* Setting up the red footer. */
.has-sock main {
  padding-bottom: 0;
}
.has-sock footer.site-footer .footer__top {
  position: relative;
  border-top: 0;
}
@media all and (min-width: 70rem) {
  .has-sock .footer__top:before {
    content: "";
    width: calc(100% + 16px);
    display: block;
    position: absolute;
    height: 56px;
    top: -56px;
    left: -16px;
    background: #D42121;
  }
  .has-sock footer.site-footer .footer__top .vcard .headline-group:before {
    border-top: 0;
  }
}

.paragraph.paragraph--type--sock {
  padding: 50px 25px;
  background: #D42121;
  color: #fff;

  position: relative;

  /* Leave room for the abs positioned image. */
  /* element top = 2/3 height image + 24 px (margin to header) */
  /* image height = (vw - 50px) * ratio of height/width of image or .57. */
  padding-top: calc(((100vw - 50px) * .57 * 2/3) + 24px);
  /* Margin is the rest of the image + 50px */
  /* margin-top: calc(((100vw - 50px) * .57 * 1/3) + 50px); */
}
.paragraph.paragraph--type--sock h2 {
  font-weight: 500;
  font-size: 24px;
  line-height: 130%;
  text-align: center;
  margin-bottom: 0;
}
.paragraph.paragraph--type--sock h2 + ul {
  margin-top: 24px;
}
.paragraph.paragraph--type--sock a {
  display: block;
  font-size: 16px;
  line-height: 150%;
}
.paragraph.paragraph--type--sock li + li {
  margin-top: 24px;
}
.paragraph.paragraph--type--sock .media {
  position:absolute;
  top: calc((100vw - 50px) * -.57 * 1/3);
  width: calc(100vw - 50px);
}
@media all and (min-width: 58rem) {
  .paragraph.paragraph--type--sock {
    display: block;
    padding: 0;
    margin-top: 120px;
  }
  .paragraph.paragraph--type--sock h2 {
    font-size: 32px;
    line-height: 40px;
  }
  .paragraph.paragraph--type--sock a {
    font-size: 18px;
    line-height: 150%;
  }
  .paragraph.paragraph--type--sock .paragraph--type--sock--inner {
    max-width: 1440px;
    margin: auto;
    display: flex;
  }
  .paragraph.paragraph--type--sock .paragraph--type--sock--content {
    padding: 40px;
  }
  .paragraph.paragraph--type--sock .paragraph--type--sock--content--inner {
    width: 400px;
  }
  .paragraph.paragraph--type--sock .media {
    position: relative;
    top: unset;
    left: unset;
    margin-top: -40px;
    align-self: center;
  }
}
@media all and (min-width: 1100px) {
  .paragraph.paragraph--type--sock .media {
    align-self: end;
  }
}
@media all and (min-width: 78rem) {
  .paragraph.paragraph--type--sock .paragraph--type--sock--content {
    padding: 80px 40px 80px 80px;
  }
}

.footer__top .headline-group__head img {
  max-width: 233px;
  z-index: 1;
  position: relative;
}

/*** Stripped down print styles ***/
@media print {
  /*** Laundry list of elements that should always be hidden ***/
  .strip-print .masthead__actions,
  .strip-print .local-tasks,
  .strip-print .breadcrumb,
  .strip-print .with-sidebar__sidebar,
  .strip-print .paragraph--type--grid-of-buttons,
  .strip-print .site-footer,
  .strip-print [data-entity-substitution="media_download"],
  .strip-print .si-toggle-container {
    display: none !important;
  }
  .strip-print .site-header .slab canvas {
    max-height: 40px;
    width: 180px;
  }
  .strip-print .site-header .slab svg {
    max-height: 40px;
    width: auto;
  }
  .strip-print .site-header .slab.masthead {
    padding: 0;
  }
  .strip-print .site-header .slab {
    float: left;
    margin-right: 20px;
  }
  .strip-print h1,
  .strip-print h1 span {
    font-size: 24px !important;
    line-height: 36px !important;
  }
  .strip-print h1.headline-group {
    padding: 0 !important;
  }
  .strip-print .slab {
    clear: both;
    padding: 0;
  }
  .strip-print .page-header {
    float: right;
    max-width: calc(100% - 320px);
  }
  .strip-print .page-header,
  .strip-print .page-header .slab .slab__wrapper .headline-group,
  .strip-print .page-header .slab .slab__wrapper .headline-group::before {
    background: none;
    color: #000;
  }

  /** body content **/
  .strip-print .with-sidebar__main {
    padding: 0 !important;
  }
  .strip-print h2,
  .strip-print h2 span {
    font-size: 14px !important;
    line-height: 21px !important;
    font-weight: 500;
    margin-bottom: 0;
  }
  .strip-print p,
  .strip-print ul li,
  .strip-print .editorial__content ul li,
  .strip-print ol li,
  .strip-print .editorial__content ol li,
  .strip-print table {
    font-size: 10px;
  }
  .strip-print ul,
  .strip-print ol {
    padding-left: 15px;
    margin:  0;
  }
  .strip-print ul li,
  .strip-print ol li,
  .strip-print .editorial__content ul li,
  .strip-print .editorial__content ol li {
    margin:  0;
  }
  .strip-print tr > td:first-of-type {
    text-align: right;
    width: 90px;
  }
  .strip-print table td,
  .strip-print .editorial table td {
    padding: 6px 15px;
  }
  .strip-print table p {
    margin-bottom: 0;
  }
  .strip-print table p + p {
    margin-top: 6px;
  }
  .strip-print main {
    padding-bottom: 0 !important;
  }
}
header.site-header {
  z-index: 5;
}
header.site-header:after {
  height: 4px !important;
  mix-blend-mode: unset !important;
}
