﻿@charset "UTF-8";
@layer base {
  :root {
    --hs-body-color: color-mix(in oklch, var(--wvu-neutral--coal) 80%, white);
    --hs-heading-color: var(--wvu-blue);
    --layout-max-width: 82.5rem;
    --display-heading-font-size: 2.5rem;
    --display-heading-line-height: 1.1;
  }
  @media screen and (min-width: 36em) {
    :root {
      --display-heading-font-size: 3rem;
      --display-heading-line-height: 1;
    }
  }
  @media screen and (min-width: 48em) {
    :root {
      --display-heading-font-size: 4rem;
    }
  }
  h1 {
    font-size: 3rem;
    line-height: 1.2;
  }
  @media screen and (max-width: 47.9375em) {
    h1 {
      font-size: 2.5rem;
    }
  }
}
@layer objects {
  .button {
    background-image: linear-gradient(rgb(var(--wvu-neutral--off-white-rgb)/0.15), rgb(var(--wvu-neutral--off-white-rgb)/0));
    letter-spacing: 0.02em;
    text-shadow: 0 1px 0 var(--wvu-blue);
  }
  .button:hover {
    text-shadow: 0 1px 0 var(--wvu-accent--blue-dark);
  }
  .button--wvu-gold,
  .button[disabled] {
    text-shadow: none;
  }
  .button--wvu-gold:hover,
  .button[disabled]:hover {
    text-shadow: none;
  }
  .button--wvu-gold {
    background-image: linear-gradient(rgb(var(--wvu-accent--yellow-rgb)/0.5), rgb(var(--wvu-accent--yellow-rgb)/0));
  }
  .button[disabled] {
    background-image: none;
  }
  .card--inline {
    --card-padding-y: 3rem;
    --card-padding-x: 3rem;
    flex-direction: row;
    flex-wrap: wrap;
    container-type: inline-size;
  }
  .card--inline:has(.card__image) {
    --card-padding-y: 2.25rem 3rem;
    min-height: 22.5rem;
    overflow: clip;
  }
  @container (min-width: 60em) {
    .card--inline .card__image {
      flex: 0 0 auto;
      order: 1;
      width: 30rem;
      object-fit: cover;
    }
  }
  .card--inline .card__body {
    flex: 100%;
  }
  @container (min-width: 60em) {
    .card--inline .card__body {
      flex: 1;
      align-self: flex-end;
    }
  }
  @container (min-width: 60em) {
    .card--inline:has(.card--inline__image) .card__title {
      margin-block-start: 6rem;
    }
  }
}
@layer components {
  .media-block__heading::after {
    content: "";
    display: block;
    width: 3rem;
    height: 0.5rem;
    margin-block-start: 1.125rem;
    background-color: var(--display-heading-accent-color, var(--wvu-gold));
  }
  .section {
    padding-block: 6rem;
    font-size: 1.25rem;
    overflow-x: clip;
  }
  .section__heading {
    margin-block: 0;
    scroll-margin-block-start: 3rem;
  }
  .section__copy p:last-child {
    margin-block-end: 0;
  }
  .subpage-header {
    background-image: linear-gradient(rgb(var(--wvu-secondary--safety-blue-rgb)/0), rgb(var(--wvu-secondary--safety-blue-rgb)/0.25));
  }
}
@layer components {
  .hero {
    position: relative;
  }
  .hero__image {
    object-fit: cover;
  }
  .hero__eyebrow {
    margin-block: 0 1.5rem;
    color: currentColor;
    font-size: 1.5rem;
    font-weight: 800;
    font-variation-settings: "slnt" 0, "wdth" 75;
    line-height: 1.1;
    text-transform: uppercase;
  }
  .hero__headline {
    margin-block: 0;
  }
  .hero__text:last-child {
    margin-block-end: 0;
  }
  .hero__buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 1.125rem;
    margin-block-start: 3em;
  }
  .hero__video-control {
    --button-padding-y: 0;
    --button-padding-x: 0;
    --button-bg-color: rgb(0 0 0 / 0.25);
    --button-hover-bg-color: var(--wvu-accent--blue);
    --button-border-width: 0;
    --button-box-shadow: none;
    position: absolute;
    z-index: 1;
    bottom: 3rem;
    right: 3rem;
    width: 3rem;
    aspect-ratio: 1;
    border-radius: 50%;
    background-image: none;
  }
  .hero__video-control-icon-container {
    fill: currentcolor;
  }
  .hero--background {
    margin-block-end: 6rem;
    color: white;
    text-align: center;
  }
  .hero--background .hero__layout {
    display: grid;
    grid-template-areas: "overlap";
  }
  .hero--background .hero__copy {
    --layout-max-width: 50rem;
    display: grid;
    align-items: center;
    grid-area: overlap;
    padding-block: 6rem;
    isolation: isolate;
  }
  .hero--background .hero__copy {
    background-color: var(--wvu-blue);
  }
  .hero--background:has(.hero__image) .hero__copy {
    background-color: rgb(var(--wvu-accent--blue-dark-rgb)/0.75);
  }
  .hero--background .hero__eyebrow {
    margin-block-start: 0;
  }
  .hero--background .hero__headline {
    color: currentColor;
    font-size: 3rem;
    font-weight: 800;
    line-height: normal;
    text-transform: none;
  }
  @media screen and (min-width: 36em) {
    .hero--background .hero__headline {
      font-size: 4.5rem;
    }
  }
  @media screen and (min-width: 48em) {
    .hero--background .hero__headline {
      font-size: 6rem;
    }
  }
  .hero--background .hero__headline-highlight {
    color: var(--wvu-gold);
  }
  .hero--background .hero__text {
    font-size: 1.25rem;
  }
  .hero--background .hero__buttons {
    justify-content: center;
  }
  .hero--background .hero__image-container {
    grid-area: overlap;
  }
  .hero--background .hero__image {
    width: 100%;
    height: 100%;
    aspect-ratio: 16/9;
  }
  @media screen and (min-width: 36em) {
    .hero--background .hero__image {
      height: 50rem;
    }
  }
  .hero__logo {
    width: 100%;
    max-width: 20rem;
    margin-block-end: 3rem;
    margin-inline: auto;
  }
  .hero--multi-feature {
    --display-heading-color: currentColor;
    --display-heading-font-size: 3rem;
    --display-heading-line-height: 1;
    --display-heading-font-size: 4rem;
    margin-block-end: 6rem;
    color: white;
    overflow-x: clip;
    view-timeline-name: --hero;
  }
  @media screen and (min-width: 60em) {
    .hero--multi-feature {
      --display-heading-font-size: 6rem;
      --display-heading-line-height: 0.9;
    }
  }
  .hero--multi-feature .hero__layout {
    background-color: var(--wvu-blue);
    background-image: linear-gradient(rgb(from var(--wvu-blue) r g b/0.75), rgb(from var(--wvu-blue) r g b/0.75)), url(../../images/1080x1920-295-DistressSlash.jpg);
    background-size: auto, 576px 1024px;
    background-blend-mode: normal, normal;
  }
  .hero--multi-feature .hero__feature {
    display: grid;
    grid-template-columns: 1fr 1fr;
    font-size: 1.125rem;
  }
  .hero--multi-feature .hero__feature--primary {
    display: grid;
    grid-template-columns: minmax(var(--layout-gutter), 1fr) repeat(2, minmax(0, calc(var(--layout-max-width) / 2))) minmax(var(--layout-gutter), 1fr);
    max-inline-size: 120rem;
    margin-inline: auto;
    font-size: 1.25rem;
  }
  .hero--multi-feature .hero__feature--primary .hero__copy {
    grid-column: 2/span 2;
    margin-block: 3rem;
  }
  @media screen and (min-width: 48em) {
    .hero--multi-feature .hero__feature--primary .hero__copy {
      margin-block-start: 6rem;
    }
  }
  @media screen and (min-width: 75em) {
    .hero--multi-feature .hero__feature--primary .hero__copy {
      grid-column-end: auto;
      margin-block-end: 6rem;
      margin-inline-end: 6rem;
    }
  }
  .hero--multi-feature .hero__headline {
    margin-block: 1.5rem 0.25em;
  }
  .hero--multi-feature .hero__feature--primary .hero__headline {
    margin-block-start: 0;
  }
  .hero--multi-feature .hero__text {
    max-inline-size: calc(var(--layout-max-width) / 4 * 3 - 6rem);
    margin-block-start: 0;
  }
  .hero--multi-feature .hero__copy > *:last-child {
    margin-block-end: 0;
  }
  .hero--multi-feature .hero__feature--primary .hero__image-container {
    grid-column: 1/-1;
  }
  @media screen and (min-width: 75em) {
    .hero--multi-feature .hero__feature--primary .hero__image-container {
      grid-column: span 2;
    }
  }
  .hero--multi-feature .hero__image {
    width: 100%;
    height: 100%;
    aspect-ratio: 4/3;
    object-fit: cover;
  }
  .hero--multi-feature .hero__secondary {
    position: relative;
    z-index: 1;
    display: grid;
    row-gap: 3rem;
    grid-template-columns: repeat(10, 1fr);
    align-items: start;
    margin-block-start: 3rem;
  }
  .hero--multi-feature .hero__secondary > * {
    grid-column-end: span 10;
  }
  @media screen and (min-width: 60em) {
    .hero--multi-feature .hero__secondary > * {
      grid-column-end: span 5;
    }
    .hero--multi-feature .hero__secondary > *:first-child {
      margin-inline-end: 1.5rem;
    }
    .hero--multi-feature .hero__secondary > *:last-child {
      margin-inline-start: 1.5rem;
    }
  }
  @media screen and (min-width: 75em) {
    .hero--multi-feature .hero__secondary > * {
      grid-column-end: span 4;
    }
    .hero--multi-feature .hero__secondary > *:first-child {
      margin-block-start: -6rem;
    }
  }
  .hero--multi-feature .hero__shape-container {
    position: relative;
  }
  @media screen and (min-width: 48em) {
    .hero--multi-feature .hero__shape-container {
      --smooth-entry-from: 3rem;
      --smooth-entry-to: -3rem;
      animation-name: SmoothEntryY;
      animation-timing-function: linear;
      animation-fill-mode: both;
      animation-timeline: --hero;
      animation-range: cover 0% cover 100%;
    }
  }
  .hero--multi-feature .hero__shape {
    position: absolute;
    translate: 0 -50%;
    display: block;
    stroke: var(--wvu-gold);
  }
  @media screen and (min-width: 36em) {
    .hero--multi-feature .hero__shape {
      scale: 2;
    }
  }
  .hero--multi-feature .hero__shape--right {
    inset-inline-end: 0;
  }
  .hero--multi-feature .hero__shape--center {
    inset-inline-start: 50%;
    translate: -50% -50%;
  }
  @media screen and (min-width: 36em) {
    .hero--multi-feature .card {
      --card-padding-y: 1.5rem 3rem;
      --card-padding-x: 3rem;
      --card-font-size: 1.125rem;
      --card-title-font-size: 2rem;
      --card-title-line-height: 1.2;
    }
  }
  @media screen and (min-width: 75em) {
    .hero--multi-feature .card {
      aspect-ratio: 2/3;
    }
  }
  .hero--multi-feature .card__image {
    aspect-ratio: 3/2;
    object-fit: cover;
  }
  .hero--multi-feature .card__body {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  .hero--multi-feature .card__title {
    margin-block-end: 0;
  }
  .hero--multi-feature .card .button {
    margin-block-start: auto;
  }
  /*// scroll-trigger based animations

  @media (prefers-reduced-motion: no-preference) {

  	.prepare &__image-clip {
  		animation-name: clipRevealWide;
  		animation-duration: 0.8s;
  		animation-timing-function: cubic-bezier(0.2, 0.0, 0, 1.0);
  		animation-fill-mode: backwards;
  		animation-play-state: paused;
  	}

  	.in-view &__image-clip {
  		animation-play-state: running;
  	}

  	.prepare &__image {
  		--scale-entry-from: 1.25;

  		width: 100%;
  		height: 100%;

  		animation-name: ScaleEntry;
  		animation-duration: 0.8s;
  		animation-timing-function: cubic-bezier(0.2, 0.0, 0, 1.0);
  		animation-fill-mode: both;
  		animation-play-state: paused;
  	}

  	.in-view &__image {
  		animation-play-state: running;
  	}


  	// Side-by-side

  	&--side-by.prepare &__image-clip {
  		animation-name: clipRevealRight;

  		@media screen and (min-width: 67.5em) {
  			animation-name: clipRevealLeft;
  		}
  	}
  }*/
  .hero--split {
    --hero-offset: calc((120rem - var(--layout-max-width)) / 2 * -1);
    --hero-accent-offset: 1.5rem 0 0;
    --hero-image-offset: -1rem;
    margin-block-end: 6rem;
    overflow-x: clip;
  }
  @media screen and (min-width: 67.5em) {
    .hero--split {
      --hero-offset: -7.5rem;
      --hero-accent-offset: 1.5rem -3rem 1.5rem calc(var(--hero-offset) + 3rem);
      --hero-image-offset: var(--hero-offset) 0;
      padding-block-start: 6rem;
    }
    .hero--split.hero--reverse {
      --hero-accent-offset: 1.5rem calc(var(--hero-offset) + 3rem) 1.5rem -3rem;
      --hero-image-offset: 0 var(--hero-offset);
    }
  }
  @media screen and (min-width: 75em) {
    .hero--split {
      --hero-accent-offset: 3rem -3rem 3rem calc(var(--hero-offset) + 3rem);
    }
  }
  @media screen and (min-width: 87.5em) {
    .hero--split.hero--wide {
      --hero-offset: calc((120rem - var(--layout-max-width)) / 2 * -1);
    }
  }
  .hero--split .hero__layout {
    position: relative;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-areas: "image image" "copy copy";
    align-items: center;
  }
  @media screen and (min-width: 67.5em) {
    .hero--split .hero__layout {
      grid-template-areas: "image copy";
    }
    .hero--split.hero--reverse .hero__layout {
      grid-template-areas: "copy image";
    }
  }
  .hero--split.hero--accent .hero__layout::before {
    content: "";
    position: absolute;
    z-index: 2;
    inset: var(--hero-accent-offset);
    border: 1px solid var(--wvu-neutral--not-quite-white);
    border-color: var(--hs-border-color);
    pointer-events: none;
  }
  .hero--split .hero__copy {
    grid-area: copy;
    margin: 3rem 1.5rem;
  }
  @media screen and (min-width: 67.5em) {
    .hero--split .hero__copy {
      margin: 0 0 0 6rem;
    }
  }
  @media screen and (min-width: 67.5em) {
    .hero--split.hero--reverse .hero__copy {
      margin-inline: 0 6rem;
    }
  }
  .hero--split .hero__headline {
    font-size: 2.5rem;
    font-size: 3rem;
    font-weight: 800;
    line-height: 1;
  }
  @media screen and (min-width: 48em) {
    .hero--split .hero__headline {
      font-size: 4rem;
      line-height: 0.9;
    }
  }
  @media screen and (min-width: 75em) {
    .hero--split .hero__headline {
      font-size: 5rem;
    }
  }
  @media screen and (min-width: 87.5em) {
    .hero--split.hero--wide .hero__headline {
      font-size: 6rem;
    }
  }
  .hero--split .hero__text {
    font-size: 1.25rem;
  }
  .hero--split .hero__image-container {
    position: relative;
    grid-area: image;
    margin-inline: var(--hero-image-offset);
  }
  .hero--split .hero__image {
    display: block;
    width: 100%;
    height: 100%;
    aspect-ratio: 4/3;
  }
  .hero--split .hero__video-control {
    inset-inline: 3rem auto;
  }
  .hero--split.hero--accent .hero__video-control {
    bottom: 4rem;
  }
  .hero--stacked {
    margin-block: 6rem;
    text-align: center;
  }
  .hero--stacked .hero__copy {
    --layout-max-width: 50rem;
  }
  .hero--stacked .hero__headline {
    font-size: 3rem;
    font-weight: 800;
    line-height: normal;
    text-transform: none;
  }
  @media screen and (min-width: 36em) {
    .hero--stacked .hero__headline {
      font-size: 4.5rem;
    }
  }
  @media screen and (min-width: 48em) {
    .hero--stacked .hero__headline {
      font-size: 6rem;
    }
  }
  .hero--stacked .hero__text {
    font-size: 1.25rem;
  }
  .hero--stacked .hero__image-container {
    margin-block-start: 3rem;
    margin-inline: -1rem;
  }
  @media screen and (min-width: 75em) {
    .hero--stacked .hero__image-container {
      margin-inline: -7.5rem;
    }
  }
  .hero--stacked .hero__image {
    width: 100%;
    height: 100%;
    min-height: 30rem;
    aspect-ratio: 16/9;
  }
  .profile-card {
    translate: var(--profile-card-translate-x, 0) var(--profile-card-translate-y, 0);
    max-inline-size: var(--profile-card-width, 22.5rem);
    aspect-ratio: 9/16;
    border-radius: 0.25rem;
    background-color: var(--wvu-neutral--coal);
    box-shadow: 0px 12px 24px -12px rgb(var(--wvu-accent--blue-dark-rgb)/0.25), 0px 24px 48px -24px rgba(0, 0, 0, 0.1);
    color: white;
    text-align: left;
    line-height: 1.5;
    overflow: clip;
    transition-property: translate;
    transition-duration: 0.3s;
    transition-timing-function: cubic-bezier(0.2, 0, 0, 1.5);
  }
  @media screen and (min-width: 48em) {
    .profile-card:first-child {
      --profile-card-translate-x: 1.5rem;
      --profile-card-translate-y: 2.25rem;
      rotate: -8deg;
    }
    .profile-card:nth-child(2) {
      z-index: 1;
    }
    .profile-card:last-child {
      --profile-card-translate-x: -1.5rem;
      --profile-card-translate-y: 2.25rem;
      rotate: 8deg;
    }
    .profile-card:hover, .profile-card:focus-visible, .profile-card:has(+ .profile-card:hover), .profile-card:has(+ .profile-card:focus-visible), .profile-card:hover + .profile-card, .profile-card:focus-visible + .profile-card {
      --profile-card-translate-x: 0;
    }
    .profile-card:hover, .profile-card:focus-visible {
      --profile-card-translate-y: -1.5rem;
    }
    .profile-card:first-child:hover ~ .profile-card, .profile-card:first-child:focus-visible ~ .profile-card {
      --profile-card-translate-x: 1.5rem;
    }
    .profile-card:has(~ .profile-card:last-child:hover), .profile-card:has(~ .profile-card:last-child:focus-visible) {
      --profile-card-translate-x: -1.5rem;
    }
  }
  .profile-card__figure {
    position: relative;
  }
  .profile-card__figure::after {
    content: "";
    position: absolute;
    inset: 1rem;
    border: 1px solid rgb(from white r g b/0.25);
    border-color: rgb(from var(--wvu-gold) r g b/0.75);
    pointer-events: none;
  }
  .profile-card__image {
    aspect-ratio: 9/16;
    object-fit: cover;
    -webkit-mask-image: linear-gradient(to top, rgba(0, 0, 0, 0.15) 0rem, rgba(0, 0, 0, 0.05) 6rem, rgb(0, 0, 0) 50%, rgb(0, 0, 0) 100%);
    mask-image: linear-gradient(to top, rgba(0, 0, 0, 0.15) 0rem, rgba(0, 0, 0, 0.05) 6rem, rgb(0, 0, 0) 50%, rgb(0, 0, 0) 100%);
  }
  .profile-card__body {
    position: absolute;
    inset: auto 0 0;
    padding: 3rem;
  }
  .profile-card__name {
    margin-block: 0 0.25rem;
    color: currentColor;
    font-size: 1.25rem;
  }
  .profile-card__link {
    color: white;
  }
  .profile-card__role {
    font-size: 0.875rem;
    font-weight: bold;
    text-transform: uppercase;
    opacity: 0.8;
  }
  .profile-cards {
    display: grid;
    grid-row-gap: 1.5rem;
    justify-content: center;
    margin-block-start: 4.5rem;
  }
  @media screen and (min-width: 48em) {
    .profile-cards {
      grid-template-columns: repeat(3, auto);
    }
  }
  .profile-signature {
    display: grid;
    gap: 1.5rem;
    grid-template-columns: auto 1fr;
    align-items: center;
    font-weight: bold;
    line-height: 1.5;
  }
  .profile-signature__image {
    width: 6rem;
    height: 6rem;
    object-fit: cover;
    border-radius: 100%;
  }
  @container (max-width: 26.1875em) {
    .profile-signature__image {
      justify-self: center;
    }
  }
  .profile-signature__details {
    margin-block: 0;
  }
  .profile-signature__name {
    display: block;
    color: currentColor;
    font-size: 1.125rem;
  }
  .profile-signature__role {
    display: block;
    margin-block-start: 0.25rem;
    font-size: 0.875rem;
    font-weight: bold;
    text-transform: uppercase;
    line-height: 1.4;
  }
  .profile-spotlight {
    grid-template-columns: [full-start label-start] 3rem [label-end image-start] auto [image-end body-start] 1fr [body-end full-end];
    grid-template-rows: [full-start] auto 1fr [full-end];
  }
  .profile-spotlight {
    --hs-link-color: var(--wvu-gold);
    display: grid;
    background-color: var(--wvu-blue);
    color: white;
    font-size: 1rem;
    line-height: 1.5;
    container-type: inline-size;
  }
  .profile-spotlight__label {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    grid-column: label;
    grid-row: full;
    margin: 0;
    padding: 3rem 1rem;
    background-color: rgba(0, 0, 0, 0.15);
    color: currentColor;
    font-size: 1.25rem;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    writing-mode: sideways-lr;
    isolation: isolate;
  }
  .profile-spotlight__media {
    grid-column: image-start/full-end;
    isolation: isolate;
  }
  @container (width < 768px) {
    .profile-spotlight__media {
      margin-inline: 3rem;
    }
  }
  @container (width >= 768px) and (width < 992px) {
    .profile-spotlight__media {
      margin-inline-start: 1.5rem;
    }
  }
  @container (width >= 768px) {
    .profile-spotlight__media {
      grid-column: image;
    }
  }
  .profile-spotlight__image {
    width: 100%;
    margin-block-start: -1.5rem;
    object-fit: cover;
  }
  @container (width >= 768px) {
    .profile-spotlight__image {
      width: 20rem;
      margin-block-end: 3rem;
    }
  }
  @container (width >= 992px) {
    .profile-spotlight__image {
      width: 30rem;
      margin-block-end: -1.5rem;
    }
  }
  .profile-spotlight__body {
    grid-column: image-start/full-end;
  }
  @container (width >= 768px) {
    .profile-spotlight__body {
      grid-column: body;
    }
  }
  @container (width > 1024px) {
    .profile-spotlight__body {
      --quote-font-size: 1.5rem;
      --quote-line-height: 1.4;
    }
  }
  .profile-spotlight__copy {
    padding: 3rem;
  }
  .profile-spotlight__copy > p {
    margin-block-start: 0;
    font-size: 1.125rem;
  }
  .profile-spotlight__copy > p:last-child {
    margin-block-end: 0;
  }
  .profile-spotlight__heading {
    margin-block-start: 0;
    color: currentColor;
    font-size: 1.5rem;
    line-height: 1.3;
  }
  .profile-spotlight .profile-signature {
    margin-block-start: 1.5rem;
    color: rgba(255, 255, 255, 0.8);
  }
  @media screen and (max-width: 59.9375em) {
    .program-list {
      grid-column: full;
    }
  }
  .program-list__item {
    padding-block-start: 1.5rem;
    border-block-start: 1px solid var(--hs-border-color);
  }
  .program-list__item + .program-list__item {
    margin-block-start: 1.5rem;
  }
  .program-list__name {
    margin-block-start: 0;
    font-size: 1.5rem;
    line-height: 1.3;
  }
  .program-list__description {
    margin-block-start: 0;
  }
  .program-list__description:last-child {
    margin-block-end: 0;
  }
  .program-list__links {
    display: flex;
    gap: 0.75rem 1.5rem;
    margin-block-start: 1.5rem;
    font-weight: bold;
  }
  .program-meta {
    --hs-link-color: var(--wvu-gold);
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    align-items: center;
    margin-block-start: 0.5rem;
    font-size: 1rem;
    font-weight: bold;
    line-height: 1.5;
  }
  .program-meta__item {
    flex: 0 0 auto;
  }
  .program-meta__divider {
    width: 6px;
    height: 6px;
    border-radius: 100%;
    background-color: currentColor;
  }
  .program-support {
    --column-layout-gap: 0 6rem;
    --hs-link-color: var(--wvu-gold);
    grid-column: full;
    background-color: var(--wvu-neutral--coal);
    color: white;
    font-size: 1.125rem;
  }
  .program-support__contact, .program-support__accreditation {
    max-inline-size: calc(var(--layout-max-width) * 0.6);
  }
  @media screen and (max-width: 67.4375em) {
    .program-support__contact, .program-support__accreditation {
      grid-column: full;
    }
  }
  .program-support__accreditation {
    align-self: end;
    font-size: 1rem;
  }
  .program-support__accreditation > p:last-child {
    margin-block-end: 0;
  }
  .program-support__heading {
    margin-block-start: 0;
    color: currentColor;
  }
  .program-support__accreditation .program-support__heading {
    font-size: 1.5rem;
    line-height: 1.3;
  }
  .program-support__accreditation:nth-child(2) .program-support__heading {
    margin-block-start: 6rem;
  }
  .program-support .directory-list {
    --hs-link-color: var(--wvu-accent--blue);
  }
  .quote {
    margin: 0;
    color: var(--quote-text-color, inherit);
    font-family: var(--sans-serif);
    font-size: 1rem;
    line-height: 1.5;
    text-align: left;
  }
  .quote p {
    position: relative;
    margin-block: 0;
    font-size: var(--quote-font-size, 1.25rem);
    font-weight: var(--quote-font-weight, normal);
    line-height: var(--quote-line-height, 1.5);
    quotes: "“" "”" "‘" "’";
  }
  .quote p:before, .quote p:after {
    display: inline-block;
  }
  .quote p:before {
    content: open-quote;
    text-indent: -0.5em;
  }
  .quote p:after {
    content: close-quote;
    display: inline;
  }
  .quote p:last-child {
    margin-block-end: 0;
  }
  .quote__attribution {
    margin-block-start: 1em;
  }
  .quote__attribution strong, .quote__attribution b {
    display: block;
  }
  .section {
    padding-block: 6rem;
  }
  .section--light, .section--wvu-blue, .section--wvu-gold {
    padding-block: 9rem;
  }
  .section--light {
    background-color: var(--wvu-neutral--not-quite-white);
  }
  .section--wvu-blue {
    --display-heading-color: currentColor;
    background-color: var(--wvu-blue);
    color: white;
  }
  .section--aurora {
    background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0.001) 40vh, white), linear-gradient(123.75deg, rgba(255, 255, 255, 0.001), rgba(from var(--wvu-gold) r g b/0.2) 80%, rgba(from var(--wvu-gold) r g b/0.25) 80%), linear-gradient(123.75deg, rgba(255, 255, 255, 0.001), rgba(255, 255, 255, 0.001) 80%, white 80%), linear-gradient(to left, rgba(255, 255, 255, 0.001), white 60vw);
    background-size: 100% 90vh, 100% 90vh, 100% 90vh, 100% 90vh;
    background-repeat: no-repeat;
    background-position: left top, left top, left top, left top;
  }
  .section--aurora-bottom {
    background-image: linear-gradient(to top, rgba(255, 255, 255, 0.001) 40vh, white), linear-gradient(123.75deg, rgba(255, 255, 255, 0.001), rgba(from var(--wvu-gold) r g b/0.2) 80%, rgba(from var(--wvu-gold) r g b/0.25) 80%), linear-gradient(123.75deg, rgba(255, 255, 255, 0.001), rgba(255, 255, 255, 0.001) 80%, white 80%), linear-gradient(to left, rgba(255, 255, 255, 0.001), white 60vw);
    background-size: 100% 90vh, 100% 90vh, 100% 90vh, 100% 90vh;
    background-repeat: no-repeat;
    background-position: left bottom, left bottom, left bottom, left bottom;
  }
  .section--aurora-topo {
    background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0.001) 40vh, white), linear-gradient(123.75deg, rgba(255, 255, 255, 0.001), rgba(from var(--wvu-gold) r g b/0.2) 80%, rgba(from var(--wvu-gold) r g b/0.25) 80%), linear-gradient(123.75deg, rgba(255, 255, 255, 0.001), rgba(255, 255, 255, 0.001) 80%, white 80%), linear-gradient(to left, rgba(255, 255, 255, 0.001), white 60vw), linear-gradient(to left, rgba(255, 255, 255, 0.9), rgba(255, 255, 255, 0.9)), url("/images/background__topo--coal.svg");
    background-size: 100% 90vh, 100% 90vh, 100% 90vh, 100% 90vh, 100%, 90vh;
    background-repeat: no-repeat;
    background-position: left top, left top, left top, left top, left top, right top;
  }
  .section--aurora-topo-bottom {
    background-image: linear-gradient(to top, rgba(255, 255, 255, 0.001) 40vh, white), linear-gradient(123.75deg, rgba(255, 255, 255, 0.001), rgba(from var(--wvu-gold) r g b/0.2) 80%, rgba(from var(--wvu-gold) r g b/0.25) 80%), linear-gradient(123.75deg, rgba(255, 255, 255, 0.001), rgba(255, 255, 255, 0.001) 80%, white 80%), linear-gradient(to left, rgba(255, 255, 255, 0.001), white 60vw), linear-gradient(to left, rgba(255, 255, 255, 0.9), rgba(255, 255, 255, 0.9)), url("/images/background__topo--coal.svg");
    background-size: 100% 90vh, 100% 90vh, 100% 90vh, 100% 90vh, 100%, 90vh;
    background-repeat: no-repeat;
    background-position: left bottom, left bottom, left bottom, left bottom, left top, right bottom;
  }
  .section--blue {
    --display-heading-color: currentColor;
    --hs-border-color: rgb(255 255 255 / 0.15);
    color: white;
    background-color: var(--wvu-blue);
  }
  .section--blue-topo {
    --display-heading-color: currentColor;
    --hs-border-color: rgb(255 255 255 / 0.15);
    color: white;
    background-image: linear-gradient(to bottom, rgba(from var(--wvu-blue) r g b/0.001) 40vh, var(--wvu-blue)), linear-gradient(123.75deg, rgba(from var(--wvu-blue) r g b/0.001), rgba(from var(--wvu-accent--blue-light) r g b/0.2) 80%, rgba(from var(--wvu-accent--blue-light) r g b/0.25) 80%), linear-gradient(123.75deg, rgba(from var(--wvu-blue) r g b/0.001), rgba(from var(--wvu-blue) r g b/0.001) 80%, var(--wvu-blue) 80%), linear-gradient(to left, rgba(from var(--wvu-blue) r g b/0.001), var(--wvu-blue) 60vw), linear-gradient(to left, rgba(from var(--wvu-blue) r g b/0.9), rgba(from var(--wvu-blue) r g b/0.9)), url("/images/background__topo--white.svg");
    background-size: 100% 90vh, 100% 90vh, 100% 90vh, 100% 90vh, 100%, 90vh;
    background-repeat: no-repeat;
    background-position: left top, left top, left top, left top, left top, right top;
    background-color: var(--wvu-blue);
  }
  .section--blue-topo-bottom {
    --display-heading-color: currentColor;
    --hs-border-color: rgb(255 255 255 / 0.15);
    color: white;
    background-image: linear-gradient(to top, rgba(from var(--wvu-blue) r g b/0.001) 40vh, var(--wvu-blue)), linear-gradient(123.75deg, rgba(from var(--wvu-blue) r g b/0.001), rgba(from var(--wvu-accent--blue-light) r g b/0.2) 80%, rgba(from var(--wvu-accent--blue-light) r g b/0.25) 80%), linear-gradient(123.75deg, rgba(from var(--wvu-blue) r g b/0.001), rgba(from var(--wvu-blue) r g b/0.001) 80%, var(--wvu-blue) 80%), linear-gradient(to right, rgba(from var(--wvu-blue) r g b/0.001), var(--wvu-blue) 60vw), linear-gradient(to right, rgba(from var(--wvu-blue) r g b/0.95), rgba(from var(--wvu-blue) r g b/0.95)), url("/images/background__topo--white.svg");
    background-size: 100% 90vh, 100% 90vh, 100% 90vh, 100% 90vh, 100%, 90vh;
    background-repeat: no-repeat;
    background-position: left bottom, left bottom, left bottom, left bottom, left top, left bottom;
    background-color: var(--wvu-blue);
  }
  .section:is(.section--light, .section--wvu-blue, .section--wvu-gold) + .section:not(.section--light, .section--wvu-blue, .section--wvu-gold), .section:not(.section--light, .section--wvu-blue, .section--wvu-gold) + .section:is(.section--light, .section--wvu-blue, .section--wvu-gold) {
    margin-block-start: 3rem;
  }
  .section--center {
    text-align: center;
  }
  .section .display-heading {
    margin-block-start: 0;
  }
  .section p:not([class]) {
    max-inline-size: calc(var(--layout-max-width) * 0.6 - 6rem);
  }
  .section--center p {
    margin-inline: auto;
  }
  .section :is(.card, .card-grid, .cta-banner, .profile-spotlight):nth-child(n+2) {
    margin-block-start: 3rem;
  }
  .section :is(.map-feature, .media-block, .media-feature):nth-child(n+2) {
    margin-block-start: 6rem;
  }
  .section *:last-child {
    margin-block-end: 0;
  }
  .section--engaging-across-the-globe {
    grid-column: full;
    margin-block-start: 6rem;
    padding-block: 6rem;
    background-color: var(--wvu-neutral--not-quite-white);
  }
  .section--engaging-across-the-globe .media-block {
    grid-column: content;
  }
  .supporting-content {
    display: grid;
    gap: 1.5rem;
    align-content: start;
  }
  @media screen and (max-width: 59.9375em) {
    .supporting-content {
      grid-column: full;
    }
  }
  .supporting-content .card + .stat,
  .supporting-content .stat + :is(.card, .stat) {
    margin-block-start: 1.5rem;
  }
  .supporting-content .testimonial + *,
  .supporting-content * + .testimonial {
    margin-block-start: 4.5rem;
  }
  .campuses__section {
    --column-layout-gap: 0 6rem;
  }
  .campuses__section:not(.campuses__section--online) {
    padding-block-start: 0;
  }
  .campuses__section--online {
    --hs-link-color: var(--wvu-gold);
    --hs-heading-color: white;
    --stat-highlight-color: var(--wvu-gold);
    --testimonial-quote-color: white;
    --testimonial-name-color: white;
  }
  .campuses__header {
    grid-column: full;
    margin-block-start: 3rem;
  }
  .campuses__heading {
    margin-block: 0;
  }
  .campuses__overview {
    font-size: 1.25rem;
  }
  .campuses__campus {
    --smooth-entry-from: 1rem;
  }
  .campuses__campus video-embed, .campuses__campus .caption {
    margin-block-end: 3rem;
    animation-name: FadeIn, SmoothEntryY;
    animation-timing-function: cubic-bezier(0.2, 0, 0, 1);
    animation-duration: 0.4s, 0.8s;
    animation-delay: 0.15s;
    animation-fill-mode: backwards;
  }
  .campuses__campus-name {
    margin-block-end: 1.125rem;
    scroll-margin-block-start: 3.375rem;
    animation-name: FadeIn, SmoothEntryY;
    animation-timing-function: cubic-bezier(0.2, 0, 0, 1);
    animation-duration: 0.4s, 0.8s;
    animation-fill-mode: backwards;
  }
  .campuses__campus-description {
    animation-name: FadeIn, SmoothEntryY;
    animation-timing-function: cubic-bezier(0.2, 0, 0, 1);
    animation-duration: 0.4s, 0.8s;
    animation-delay: 0.3s;
    animation-fill-mode: backwards;
  }
  .campuses__map {
    grid-column: full;
    grid-row: 2/3;
    margin-block-start: 3.375rem;
  }
  @media screen and (min-width: 95em) {
    .campuses__map {
      grid-row: 2/3;
      grid-column: col-2;
      margin-block-start: -9rem;
      margin-inline: -3rem -15rem;
    }
  }
  .campuses__map > .wv-map {
    position: sticky;
    top: 3.375rem;
  }
  .campuses__supporting-content {
    margin-block-start: 3rem;
  }
  .campuses__copy {
    grid-column: full;
    margin-bottom: 3rem;
    font-size: 1.125rem;
  }
  @media screen and (min-width: 95em) {
    .campuses__copy {
      grid-row: 2/3;
      grid-column: col-1;
    }
  }
  .campuses__program-name {
    font-size: 1.25rem;
  }
  .campuses__online-programs-heading {
    font-size: 2.25rem;
  }
  .campuses__campus-switcher [hidden] {
    display: none;
  }
  .program-meta {
    --hs-link-color: var(--wvu-gold);
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    align-items: center;
    margin-block-start: 0.5rem;
    font-size: 1rem;
    font-weight: bold;
    line-height: 1.5;
  }
  .program-meta__item {
    flex: 0 0 auto;
  }
  .program-meta__divider {
    width: 6px;
    height: 6px;
    border-radius: 100%;
    background-color: currentColor;
  }
  .program-support {
    --column-layout-gap: 0 6rem;
    --hs-link-color: var(--wvu-gold);
    grid-column: full;
    background-color: var(--wvu-neutral--coal);
    color: white;
    font-size: 1.125rem;
  }
  .program-support__contact, .program-support__accreditation {
    max-inline-size: calc(var(--layout-max-width) * 0.6);
  }
  @media screen and (max-width: 67.4375em) {
    .program-support__contact, .program-support__accreditation {
      grid-column: full;
    }
  }
  .program-support__accreditation {
    align-self: end;
    font-size: 1rem;
  }
  .program-support__accreditation > p:last-child {
    margin-block-end: 0;
  }
  .program-support__heading {
    margin-block-start: 0;
    color: currentColor;
  }
  .program-support__accreditation .program-support__heading {
    font-size: 1.5rem;
    line-height: 1.3;
  }
  .program-support__accreditation:nth-child(2) .program-support__heading {
    margin-block-start: 6rem;
  }
  .program-support .directory-list {
    --hs-link-color: var(--wvu-accent--blue);
  }
  .subpage-body {
    margin-block: 3rem 6rem;
    font-size: 1.125rem;
    overflow-x: clip;
  }
  .subpage-body:has(.hero) {
    margin-block-start: 0;
  }
  .subpage-body:has(.section:last-child) {
    margin-block-end: 0;
  }
  .subpage-body__grid {
    --gutter-size: minmax(var(--layout-gutter), 1fr);
    --breakout-size: minmax(0, calc((var(--breakout-max-width, 90rem) - var(--layout-max-width)) / 2));
    --content-size: min(100% - (var(--layout-gutter) * 2), var(--layout-max-width));
    display: grid;
    grid-template-columns: [full-start] var(--gutter-size) [breakout-start] var(--breakout-size) [content-start] var(--content-size) [content-end] var(--breakout-size) [breakout-end] var(--gutter-size) [full-end];
  }
  .subpage-body__grid > * {
    grid-column: content;
  }
  .subpage-body__content {
    display: grid;
    grid-template-columns: [full-start col-1-start] 1fr [col-1-end col-2-start] 1fr [col-2-end col-3-start] 1fr [col-3-end col-4-start] 1fr [col-4-end full-end];
    grid-column: content;
  }
  .subpage-body__primary {
    display: grid;
    grid-template-columns: subgrid;
    grid-column: full;
    grid-auto-rows: min-content;
  }
  @media screen and (min-width: 67.5em) {
    .subpage-body__primary {
      grid-row: 1;
    }
  }
  .subpage-body__primary > * {
    grid-column: full;
    max-inline-size: calc(var(--layout-max-width) / 4 * 2);
  }
  @media screen and (min-width: 67.5em) {
    .subpage-body__primary > * {
      grid-column: 1/span 3;
      margin-inline-end: 6rem;
    }
  }
  .subpage-body__grid > :is(p, ul:not([class]), ol:not([class])),
  .subpage-body__primary > :is(p, ul:not([class]), ol:not([class])) {
    margin-block-start: 0;
  }
  .subpage-body__grid > h2:has(+ h3, + h4),
  .subpage-body__grid > h3:has(+ h4),
  .subpage-body__grid > :is(p, ul:not([class]), ol:not([class])):has(+ h2, + h3, + h4),
  .subpage-body__primary > h2:has(+ h3, + h4),
  .subpage-body__primary > h3:has(+ h4),
  .subpage-body__primary > :is(p, ul:not([class]), ol:not([class])):has(+ h2, + h3, + h4) {
    margin-block-end: 0;
  }
  .subpage-body__grid > h1 {
    max-inline-size: calc(var(--layout-max-width) / 4 * 3 - 6rem);
    margin-block-start: 3rem;
    text-wrap: pretty;
  }
  .subpage-body__grid > :is(h2, h3, h4, p, ul:not([class]), ol:not([class]), .feature-list, .directory-list, .links-list, .testimonial) {
    max-inline-size: calc(var(--layout-max-width) * 0.6 - 6rem);
  }
  .subpage-body__grid .hero,
  .subpage-body__grid .section,
  .subpage-body__grid .card-slider {
    grid-column: full;
  }
  .subpage-body__grid > h2 {
    margin-block-start: 9rem;
    color: var(--display-heading-color, var(--wvu-blue));
    font-family: var(--display-heading-font-family, var(--sans-serif));
    font-size: var(--display-heading-font-size, 3rem);
    font-weight: var(--display-heading-font-weight, 800);
    line-height: var(--display-heading-line-height, 1);
    text-transform: var(--display-heading-text-transform);
    text-wrap: pretty;
  }
  .subpage-body__grid > h2::after {
    content: "";
    display: block;
    width: 3rem;
    height: 0.5rem;
    margin-block-start: 1.125rem;
    background-color: var(--display-heading-accent-color, var(--wvu-gold));
  }
  .subpage-body__grid > h1 + h2 {
    margin-block-start: revert;
  }
  .subpage-body__grid > .card-grid {
    margin-block-start: var(--content-spacing-tight);
  }
  .subpage-body__grid .section:not(.section--light, .section--wvu-blue, .section--wvu-gold) {
    margin-block-start: var(--content-spacing-base);
  }
  .subpage-body__grid > .button-group {
    margin-block: var(--content-spacing-base);
  }
  .subpage-body__grid > :is(.card, .cta-banner, .map-feature, .media-block, .media-feature, .profile-spotlight, .section, .statistics, .testimonial) {
    margin-block-start: var(--content-spacing-landmark);
  }
  .subpage-body__grid > :is(h2, h3, h4) + :is(.feature-list, .links-list) {
    margin-block-start: 0;
  }
  .subpage-body__grid > :is(h2, h3, h4, p, ul:not([class]), ol:not([class])) + .button-group {
    margin-block-start: 0;
  }
  .subpage-body__grid > :is(p, ul:not([class]), ol:not([class])):has(+ .card-grid, + .figure, + .links-list, + .media-feature) {
    margin-block-end: 0;
  }
  .subpage-body__grid .hero + * {
    margin-block-start: var(--content-spacing-base);
  }
  .subpage-body__grid .hero + .section {
    margin-block-start: 0;
  }
  .subpage-body__grid :is(.section--light, .section--wvu-blue, .section--wvu-gold) + :is(.section--light, .section--wvu-blue, .section--wvu-gold) {
    margin-block-start: 0;
  }
  .subpage-body__grid > :is(.links-list):has(+ h2, + h3, + h4) {
    margin-block-end: 0;
  }
  .subpage-body__grid > :is(.button-group, .feature-list, .links-list):has(+ .media-feature) {
    margin-block-end: 0;
  }
  .subpage-body__grid > .section:not(.section--light, .section--wvu-blue, .section--wvu-gold) + *:not(.section) {
    margin-block-start: var(--content-spacing-section);
  }
  .subpage-body__grid > :is(h2:first-child, .media-block:first-child) {
    margin-block-start: var(--content-spacing-section);
  }
  @media screen and (min-width: 90em) {
    .subpage-body__grid > .profile-spotlight {
      margin-inline: -3rem;
    }
  }
  .subpage-body__primary > :is(.bar-chart, .caption, .card-grid, .courses, .profile-spotlight, .publication-library, .statistics, .video-embed, .table) {
    max-inline-size: revert;
  }
  .subpage-body__primary > :is(.callout, .directory-list:not(:has(.directory-list__title)), .notice) {
    margin-block: var(--content-spacing-tight);
  }
  .subpage-body__primary > :is(.bar-chart, .button-group, .caption, .card-grid, .courses, .publication-library, .statistics, .video-embed) {
    margin-block: var(--content-spacing-base);
  }
  .subpage-body__primary > :is(.card, .profile-spotlight, .testimonial) {
    margin-block: var(--content-spacing-section);
  }
  .subpage-body__primary > :is(h2, h3, h4, p, ul:not([class]), ol:not([class])):has(+ .profile-spotlight, + .statistics) {
    margin-block-end: 0;
  }
  .subpage-body__primary > :is(p, ul:not([class]), ol:not([class])):has(+ .callout, + .caption, + .card, + .card-grid, + .directory-list, + .figure, + .links-list, + .profile-spotlight, + .testimonial, + .video-embed) {
    margin-block-end: 0;
  }
  .subpage-body__primary > :is(h2, h3, h4, p, ul:not([class]), ol:not([class])) + .button-group {
    margin-block-start: 0;
  }
  .subpage-body__primary > .directory-list:first-child .directory-list__title {
    margin-block-start: 0;
  }
  .subpage-body__primary > .links-list:has(+ .card) {
    margin-block-end: 0;
  }
  .subpage-body__primary > .notice:has(+ .notice) {
    margin-block-end: 1rem;
  }
  .subpage-body__primary > :is(.button-group, .callout, .links-list, .notice, .statistics, .video-embed):has(+ h2, + h3, + h4) {
    margin-block-end: 0;
  }
  .subpage-body__primary > .profile-spotlight + :is(h2, h3, h4) {
    margin-block-start: 0;
  }
  .subpage-body__primary > .card + .links-list {
    margin-block-start: 0;
  }
  .subpage-body__primary > :is(h2, h3, h4) + :is(.bar-chart, .callout, .caption, .card, .card-grid, .directory-list, .links-list) {
    margin-block-start: 0;
  }
  @media screen and (min-width: 90em) {
    .subpage-body__primary > .profile-spotlight {
      margin-inline-start: -3rem;
    }
  }
  .subpage-body__grid > *:first-child,
  .subpage-body__primary > *:first-child {
    margin-block-start: 0;
  }
  .subpage-body__grid > *:last-child,
  .subpage-body__primary > *:last-child {
    margin-block-end: 0;
  }
  @media screen and (min-width: 82.5em) {
    .subpage-header--split + .subpage-body .subpage-body__primary > *:first-child {
      padding-inline-end: 6rem;
    }
  }
  .subpage-body .sub-navigation {
    grid-column: full;
    margin-block-start: 6rem;
  }
  @media screen and (min-width: 67.5em) {
    .subpage-body .sub-navigation {
      grid-column: 4;
      grid-row: 1;
      align-self: start;
      margin-block-start: 0;
    }
  }
  .subpage-header--split + .subpage-body .sub-navigation {
    margin-block-start: 6rem;
  }
}
