#main-content .glwa-hero {
  position: relative;
  z-index: 1;
  padding: 9vw 0 15vw;
  min-height: calc(100svh - 126px);
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  color: #02216E;
  background: transparent;
  top: 0;
  width: 100%;
  /*
   * Variant 1:
   * current behavior
   * white field, masked opening shows bg image beneath
   */
  /*
   * Variant 2:
   * reversed behavior
   * hero area stays transparent/image-based
   * only the masked/corner piece is white
   */
}

#main-content .glwa-hero__shape {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  -webkit-mask-image: var(--hero-mask);
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center bottom;
  -webkit-mask-size: 100vw auto;
  mask-image: var(--hero-mask);
  mask-repeat: no-repeat;
  mask-position: center bottom;
  mask-size: 100vw auto;
}

#main-content .glwa-hero__stage {
  margin: 0 auto;
  width: max(65vw, 960px);
  max-width: 960px;
  min-width: 500px;
  font-size: max(24px, 1.67vw);
  font-style: normal;
  font-weight: 300;
  line-height: 1.33; /* 133.333% */
}

#main-content .glwa-hero__stage h1 {
  color: #0031A7;
  margin: 0 auto 45px;
  text-align: center;
  font-family: "archivo-condensed", sans-serif;
  font-size: 80px;
  font-style: normal;
  font-weight: 800;
  line-height: 0.875;
  text-transform: uppercase;
}

#main-content .glwa-hero__stage p {
  margin: 0 auto 45px;
  max-width: max(680px, 47vw);
}

#main-content .glwa-hero__stage .section_links {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
}

#main-content .glwa-hero--panel-cutout .glwa-hero__shape {
  background: #f5f5f5;
}

#main-content .glwa-hero--panel-cutout .glwa-hero__stage {
  color: #02216E;
}

#main-content .glwa-hero--panel-cutout .glwa-hero__stage h1 {
  color: #0031A7;
}

#main-content .glwa-hero--cobalt_wave {
  background: transparent;
  overflow: visible;
}

#main-content .glwa-hero--cobalt_wave .glwa-hero__stage {
  color: #f5f5f5;
}

#main-content .glwa-hero--cobalt_wave .glwa-hero__stage h1 {
  color: #f5f5f5;
}

#main-content .glwa-hero--cobalt_wave #wave_background {
  position: absolute;
  width: 100vw;
  height: auto;
  left: 0;
  top: 10vw;
}

@media screen and (max-width: 767px) {
  #main-content .glwa-hero--cobalt_wave #wave_background {
    top: 55vw;
  }
}
#main-content .glwa-hero--cobalt_wave + section {
  background: transparent;
  z-index: 1;
}

#main-content .glwa-hero--cobalt_wave + section + section {
  z-index: 1;
}

#main-content .glwa-hero--image-with-white-cutout, #main-content .glwa-hero--image-with-cutout {
  position: relative;
  /*
   * Important:
   * in this version, the shape should only occupy the
   * corner/cutout area rather than filling the full hero.
   * So we constrain it to the mask bounds instead of
   * a full-bleed masked rectangle.
   */
}

#main-content .glwa-hero--image-with-white-cutout .glwa-hero__shape, #main-content .glwa-hero--image-with-cutout .glwa-hero__shape {
  inset: auto 0 0 0;
  height: 100%;
  background: none;
  background: var(--bg-image);
  background-size: cover;
  background-position: center center;
}

#main-content .glwa-hero--image-with-white-cutout .glwa-hero__shape::before, #main-content .glwa-hero--image-with-cutout .glwa-hero__shape::before {
  content: "";
  position: absolute;
  inset: 0;
  -webkit-mask-image: var(--hero-mask);
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center bottom;
  -webkit-mask-size: cover;
  mask-image: var(--hero-mask);
  mask-repeat: no-repeat;
  mask-position: center bottom;
  mask-size: cover;
}

#main-content .glwa-hero--image-with-white-cutout .glwa-hero__shape::before, #main-content .glwa-hero--image-with-cutout .glwa-hero__shape::before {
  background: linear-gradient(270deg, rgba(0, 0, 0, 0) -16.67%, rgba(0, 0, 0, 0.6) 83.75%), linear-gradient(0deg, rgba(68, 184, 243, 0.2) 0%, rgba(68, 184, 243, 0.2) 100%);
  background-blend-mode: multiply, hard-light, normal, normal, normal;
}

#main-content .glwa-hero--image-with-white-cutout .glwa-hero__stage, #main-content .glwa-hero--image-with-cutout .glwa-hero__stage {
  color: #f5f5f5;
}

#main-content .glwa-hero--image-with-white-cutout .glwa-hero__stage h1, #main-content .glwa-hero--image-with-cutout .glwa-hero__stage h1 {
  color: #f5f5f5;
}

#main-content .glwa-hero--image-with-white-cutout .glwa-hero__stage p, #main-content .glwa-hero--image-with-cutout .glwa-hero__stage p {
  color: #f5f5f5;
}

#main-content .glwa-hero--color-cutout {
  position: relative;
}

#main-content .glwa-hero--color-cutout .glwa-hero__shape {
  background: #0031A7;
}

#main-content .glwa-hero--color-cutout .glwa-hero__shape {
  inset: auto 0 0 0;
  height: 100%;
  background: none;
  background: #0031A7;
  background-size: cover;
  background-position: center center;
}

#main-content .glwa-hero--color-cutout .glwa-hero__shape::before {
  content: "";
  position: absolute;
  inset: 0;
  background: #0031A7;
  -webkit-mask-image: var(--hero-mask);
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center bottom;
  -webkit-mask-size: cover;
  mask-image: var(--hero-mask);
  mask-repeat: no-repeat;
  mask-position: center bottom;
  mask-size: cover;
}

#main-content .glwa-hero--color-cutout .glwa-hero__stage {
  color: #f5f5f5;
}

#main-content .glwa-hero--color-cutout .glwa-hero__stage h1 {
  color: #f5f5f5;
}

#main-content .glwa-hero--color-cutout .glwa-hero__stage p {
  color: #f5f5f5;
}

#main-content .glwa-hero--image-with-cutout + .glwa-intro {
  margin-top: 0;
  padding: 9vw 0 5vw;
}

#main-content .glwa-hero--image-with-cutout + .glwa-intro .glwa-intro__stage {
  width: 100%;
  max-width: unset;
  display: flex;
  justify-content: space-between;
  gap: 60px;
}

#main-content .glwa-hero--image-with-cutout + .glwa-intro .glwa-intro__stage .glwa-icon-mark {
  display: none;
}

#main-content .glwa-hero--image-with-cutout + .glwa-intro .glwa-intro__stage .glwa-section-title {
  width: 40%;
  margin-top: 0;
}

#main-content .glwa-hero--image-with-cutout + .glwa-intro .glwa-intro__stage .body {
  min-width: 50%;
}

#main-content .glwa-hero--image-with-cutout + .glwa-intro .glwa-intro__stage .body p {
  width: 100%;
}

@media screen and (max-width: 991px) {
  #main-content .glwa-hero--image-with-cutout + .glwa-intro .glwa-intro__stage .body p {
    max-width: 100%;
  }
}
@media screen and (max-width: 991px) {
  #main-content .glwa-hero--image-with-cutout + .glwa-intro .glwa-intro__stage {
    gap: 0;
    flex-direction: column;
  }
  #main-content .glwa-hero--image-with-cutout + .glwa-intro .glwa-intro__stage .glwa-section-title {
    width: 100%;
  }
  #main-content .glwa-hero--image-with-cutout + .glwa-intro .glwa-intro__stage .body {
    width: 100%;
  }
}
#main-content .glwa-hero--image-with-cutout + .glwa-intro--larger-text .glwa-intro__stage .glwa-section-title {
  width: 50%;
}

#main-content .glwa-hero--image-with-cutout + .glwa-intro--larger-text .glwa-intro__stage .body {
  min-width: 45%;
  width: 50%;
}

@media screen and (max-width: 991px) {
  #main-content .glwa-hero--image-with-cutout + .glwa-intro--larger-text .glwa-intro__stage {
    gap: 0;
    flex-direction: column;
    width: 100%;
    max-width: 640px;
    display: flex;
    justify-content: space-between;
    text-align: center;
    margin: 0 auto;
  }
  #main-content .glwa-hero--image-with-cutout + .glwa-intro--larger-text .glwa-intro__stage .glwa-section-title {
    width: 100%;
  }
  #main-content .glwa-hero--image-with-cutout + .glwa-intro--larger-text .glwa-intro__stage .body {
    width: 100%;
  }
}
