.university {
  .hero__content {
    .lede {
      max-inline-size: 40ch;
      font-size: var(--c6-font-size-fluid-2);
    }
  }

  .hero {
    background: var(--c6-color-masthead);
    padding-block-start: var(--c6-size-fluid-7);
    padding-block-end: clamp(7rem, calc(6.2rem + 1.95vw), 9rem);
    position: relative;

    &::before {
      content: '';
      block-size: 50%;
      inline-size: 40%;
      background: var(--c6-bg-pattern-shl-eye);
      background-position: left bottom;
      background-repeat: repeat;
      background-size: 3rem;
      position: absolute;
      inset-inline-end: 0;
      inset-block-start: 0;
      filter: var(--c6-bg-pattern-color-2);
    }
  }

  .hero__columns {
    position: relative;
    z-index: 1;
  }

  .hero__title,
  .headline__title {
    font-weight: var(--c6-font-weight-bold);
    font-display: optional;
  }

  .hero__title {
    font-size: var(--c6-font-size-fluid-6);
    max-inline-size: var(--c6-size-header-2);
    color: transparent;
    word-wrap: normal;
    max-inline-size: unset;

    em,
    strong {
      color: var(--c6-color-brand-1);
    }
  }

  .hero-bg {
    position: relative;
    border-radius: var(--c6-border-radius-base);
    padding: 0;
    background-color: var(--c6-color-masthead);
    box-shadow: var(--c6-border-size-heavy) var(--c6-border-size-heavy) 0 -1px
      var(--c6-color-hero-em);

    figure {
      border-radius: inherit;
      overflow: hidden;
      position: relative;

      :is(img, svg) {
        max-inline-size: 100%;
      }
    }

    :is(.hero-item-1, .hero-item-2, .hero-item-3, .hero-item-4) {
      position: absolute;
      z-index: 1;
    }

    .hero-item-1 {
      inset-inline-end: 8px;
      inset-block-start: 16px;
      transform: scale(0.8);
      max-inline-size: 50%;
    }
  }

  @media (prefers-reduced-motion: no-preference) {
    :is(.hero-bg, .hero-item-1) {
      opacity: 0;
      animation:
        var(--c6-animation-fade-in) forwards,
        var(--c6-animation-slide-in-down) forwards;
      animation-timing-function: var(--c6-ease-out-4);
      animation-delay: 0.5s;
    }

    .hero-item-1 {
      animation: var(--c6-animation-fade-in) forwards;
      animation-delay: 0.7s;
    }
  }

  .region--services {
    background-color: var(--c6-color-surface-content);
    padding-block: var(--c6-size-fluid-8);

    .headline {
      padding-block-start: 0;
    }

    .headline__title {
      font-size: var(--c6-font-size-fluid-5);
      color: var(--c6-color-primary);
    }

    .eyebrow {
      font-size: var(--c6-font-size-fluid-2);
      color: var(--c6-color-text-pink);
    }

    .card__hero {
      background-color: var(--c6-color-masthead);
      aspect-ratio: var(--c6-ratio-widescreen);
      border-radius: var(--c6-border-radius-base);
      padding: var(--c6-size-base);

      &:has(img, svg) {
        justify-content: space-evenly;
      }

      .featured-icon {
        inline-size: var(--c6-size-fluid-8);
        background-color: var(--c6-color-bg-4);
      }

      :is(svg, .icon) {
        max-inline-size: unset;
        inline-size: var(--c6-size-fluid-4);
        padding: 0;
      }
    }

    .card__title {
      font-size: var(--c6-font-size-fluid-3);
      color: var(--c6-color-primary);
    }

    .card__content {
      padding: var(--c6-size-narrow);
      text-align: center;
    }
  }

  .region--support {
    /* --c6-region-grad: 45, 167, 213;  
    --c6-region-grad: 82, 177, 185;
    --c6-region-grad: 106, 153, 188;
    --c6-region-grad: 0, 48, 105;
    --c6-region-grad: 229, 80, 68;
    --c6-region-grad: 224, 136, 38;
    --c6-region-grad: 199, 103, 133; */

    --c6-region-grad: 82, 177, 185;
    --c6-region-pattern: 0, 48, 105;

    position: relative;
    padding-block: var(--c6-size-fluid-4);

    background-color: var(--c6-color-bg-1);

    * {
      z-index: 1;
    }

    &::before {
      content: '';
      block-size: 40%;
      inline-size: 30%;
      background: var(--c6-bg-pattern-shl-shard);
      background-position: right top;
      background-repeat: repeat;
      background-size: 3rem;
      position: absolute;
      inset-inline-start: 0;
      inset-block-end: 0;
      filter: var(--c6-bg-pattern-color-4);
      opacity: 0.5;
    }

    .headline__title {
      font-size: var(--c6-font-size-fluid-5);
      color: var(--c6-color-primary);
    }

    .headline p {
      max-inline-size: unset;
    }
  }

  .region--process {
    background-color: var(--c6-color-surface-content);
    padding-block: var(--c6-size-fluid-4);
    position: relative;

    /* &::before {
      content: '';
      block-size: 40%;
      inline-size: 30%;
      background: var(--c6-bg-pattern-shl-gherkin);
      background-position: left top;
      background-repeat: repeat;
      background-size: 2rem;
      position: absolute;
      inset-inline-end: 0;
      inset-block-end: 4rem;
      filter: var(--c6-bg-pattern-color-3);
      opacity: .25;
    } */

    .feature-img {
      border-radius: var(--c6-border-radius-base);
      overflow: hidden;
    }

    .headline {
      padding-block-start: 0;
    }

    .headline__title {
      font-size: var(--c6-font-size-fluid-5);
      color: var(--c6-color-primary);
    }

    .eyebrow {
      font-size: var(--c6-font-size-fluid-2);
      color: var(--c6-color-primary);
    }

    .well {
      background-color: var(--c6-color-masthead);
    }

    .card__title {
      font-size: var(--c6-font-size-fluid-3);
      color: var(--c6-color-primary);
    }

    svg.icon {
      inline-size: var(--c6-icon-size-lg);
    }
  }

  .region--ad {
    background-color: var(--c6-color-bg-3);

    .card {
      background-color: var(--c6-color-bg-4);
      position: relative;
      border: 0;
      box-shadow: none;
    }

    :is(.card__title, .lede) {
      color: #fff;
    }

    .card__title {
      font-size: var(--c6-font-size-fluid-4);
    }

    .card__content {
      padding: var(--c6-size-fluid-5);
      position: relative;

      &::before {
        content: '';
        block-size: 100%;
        inline-size: 30%;
        background: var(--c6-bg-pattern-shl-eye);
        background-position: left top;
        background-repeat: repeat;
        background-size: 2rem;
        position: absolute;
        inset-inline-end: 0;
        inset-block-end: 0;
        filter: var(--c6-bg-pattern-color-3);
      }
    }

    .button.ghost,
    .button[data-type='contrast'] {
      color: #fff;
    }
  }
}
