.hero-banner-global.hbg-content--bold .hbg-container .banner--large .banner__title, .hero-banner-global.hbg-content--bold .hbg-container .banner--screen .banner__title {
  font-size: var(--font-2);
  font-weight: 700;
  letter-spacing: 0;
  margin-block-end: 1.8rem; }

.hero-banner-global.hbg-content--bold .hbg-container .banner--large .header-subtitle, .hero-banner-global.hbg-content--bold .hbg-container .banner--screen .header-subtitle {
  font-size: var(--font-1);
  margin-block-end: 1.8rem;
  letter-spacing: 0;
  font-weight: 400;
  width: 700px;
  min-width: 50%;
  max-width: 93%; }

.hero-banner-global.hbg-content--bold .hbg-container .banner--large .header-desc, .hero-banner-global.hbg-content--bold .hbg-container .banner--screen .header-desc {
  font-size: var(--font-5);
  font-style: normal;
  font-weight: 700;
  line-height: 1.15;
  width: 870px;
  min-width: 50%;
  max-width: 93%; }
  @media screen and (min-width: 768px) {
    .hero-banner-global.hbg-content--bold .hbg-container .banner--large .header-desc, .hero-banner-global.hbg-content--bold .hbg-container .banner--screen .header-desc {
      font-size: 3.39795rem; } }
  @media screen and (min-width: 1024px) {
    .hero-banner-global.hbg-content--bold .hbg-container .banner--large .header-desc, .hero-banner-global.hbg-content--bold .hbg-container .banner--screen .header-desc {
      font-size: 80px; } }

@media screen and (min-width: 1024px) {
  .hero-banner-global.hbg-content--bold .hbg-container .has-bg-img .herobanner .content {
    min-width: 80%; } }

@media screen and (min-width: 1280px) {
  .hero-banner-global.hbg-content--bold .hbg-container .has-bg-img .herobanner .content {
    min-width: 65%; } }

.hero-banner-global .herobanner.banner--screen.has-no-foreground .header-desc {
  width: 100%; }

.hero-banner-global {
  font-kerning: normal; }
  .hero-banner-global .banner__title,
  .hero-banner-global .header-subtitle,
  .hero-banner-global .header-desc {
    margin-block-start: 0;
    margin-block-end: 0; }
  .hero-banner-global .header-ctas {
    margin-block-start: 2rem; }
  .hero-banner-global .hbg-container {
    position: relative;
    overflow: hidden;
    background-position: center center; }
    .hero-banner-global .hbg-container .dark-light-gradient {
      inset-block: 0;
      inset-inline: 0;
      position: absolute;
      z-index: 1;
      height: 100%;
      width: 100%; }
  .hero-banner-global .herobanner {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    position: relative;
    z-index: 1;
    text-align: center; }
    .hero-banner-global .herobanner.video-background {
      object-fit: cover;
      background-size: cover;
      inset-block: 0;
      inset-inline: 0;
      position: absolute;
      width: 100%;
      height: 100%; }
    .hero-banner-global .herobanner .content {
      overflow-wrap: break-word;
      width: 100%; }
    @media screen and (min-width: 1024px) {
      .hero-banner-global .herobanner {
        flex-direction: row;
        justify-content: flex-start;
        text-align: unset; }
        .hero-banner-global .herobanner .content {
          min-width: 0;
          padding-block: 0;
          padding-inline: 10px 20px;
          width: 50%; } }
    .hero-banner-global .herobanner .banner__title {
      font-weight: var(--calcite-font-weight-light);
      letter-spacing: -2px;
      line-height: 1.25; }
      .hero-banner-global .herobanner .banner__title.title--mega {
        font-weight: var(--calcite-font-weight-medium); }
    .hero-banner-global .herobanner .header-subtitle {
      line-height: 1.25; }
      @media (min-width: 1024px) {
        .hero-banner-global .herobanner .header-subtitle {
          letter-spacing: -2px; } }
    .hero-banner-global .herobanner .hero-icon {
      margin-block-end: 12px; }
      .hero-banner-global .herobanner .hero-icon img,
      .hero-banner-global .herobanner .hero-icon svg {
        height: 100%;
        width: 100%; }
    .hero-banner-global .herobanner .right-column {
      width: 100%;
      margin-block: 0;
      margin-inline: auto;
      margin-block-start: 25px; }
      @media (min-width: 480px) {
        .hero-banner-global .herobanner .right-column {
          width: 71%; } }
      @media (min-width: 1024px) {
        .hero-banner-global .herobanner .right-column {
          height: 100%;
          margin-block-start: 0;
          width: 50%; } }
    .hero-banner-global .herobanner .right-column-image {
      background-size: cover;
      background-repeat: no-repeat;
      background-position: center center;
      height: 0;
      width: 100%; }
      .hero-banner-global .herobanner .right-column-image img {
        display: none; }
      @media (min-width: 1024px) {
        .hero-banner-global .herobanner .right-column-image {
          background: none !important;
          position: relative;
          height: 100%;
          width: 100%;
          display: block; }
          .hero-banner-global .herobanner .right-column-image img {
            display: inline-block;
            position: absolute;
            inset-block: 0;
            left: 0;
            max-width: none;
            max-height: 100%;
            height: 100%; } }
  .hero-banner-global .banner--tiny {
    min-height: 80px;
    height: 12vh;
    max-height: 173px;
    padding-block-start: 5px;
    padding-block-end: 5px;
    text-align: center; }
    .hero-banner-global .banner--tiny .right-column {
      display: none; }
    .hero-banner-global .banner--tiny .banner__title {
      font-size: 32px;
      letter-spacing: -1px; }
      @media (min-width: 1024px) {
        .hero-banner-global .banner--tiny .banner__title {
          padding-block-start: 0;
          padding-block-end: 0; } }
      .hero-banner-global .banner--tiny .banner__title.title--mega {
        font-size: 32px; }
        @media (min-width: 860px) {
          .hero-banner-global .banner--tiny .banner__title.title--mega {
            font-size: 38px; } }
    @media screen and (min-width: 1024px) {
      .hero-banner-global .banner--tiny {
        text-align: unset; } }
  .hero-banner-global .banner--small {
    min-height: 230px; }
    .hero-banner-global .banner--small * {
      margin-inline-start: auto;
      margin-inline-end: auto; }
      @media screen and (min-width: 1024px) {
        .hero-banner-global .banner--small * {
          margin-inline-start: 0;
          margin-inline-end: auto; } }
    .hero-banner-global .banner--small .hero-icon {
      width: 54px;
      height: 54px;
      margin-block-end: 14px; }
    .hero-banner-global .banner--small .banner__title {
      font-size: 32px; }
      @media (min-width: 860px) {
        .hero-banner-global .banner--small .banner__title {
          font-size: 45px; } }
      .hero-banner-global .banner--small .banner__title.title--mega {
        font-size: 45px;
        letter-spacing: -1px; }
        @media (min-width: 480px) {
          .hero-banner-global .banner--small .banner__title.title--mega {
            font-size: 64px; } }
    .hero-banner-global .banner--small .header-subtitle {
      letter-spacing: -1px;
      font-size: 29; }
      @media (min-width: 480px) {
        .hero-banner-global .banner--small .header-subtitle {
          font-size: 32px; } }
      @media (min-width: 860px) {
        .hero-banner-global .banner--small .header-subtitle {
          font-size: 34px; } }
    .hero-banner-global .banner--small .right-column-image {
      padding-block-end: 51.42%; }
      @media (min-width: 1024px) {
        .hero-banner-global .banner--small .right-column-image {
          padding-block-end: 0; } }
    @media (min-width: 480px) {
      .hero-banner-global .banner--small {
        min-height: 260px; } }
    @media screen and (min-width: 1024px) {
      .hero-banner-global .banner--small {
        min-height: 276px;
        height: 25vh;
        max-height: 400px; } }
  .hero-banner-global .banner--medium {
    min-height: 400px; }
    .hero-banner-global .banner--medium * {
      margin-inline-start: auto;
      margin-inline-end: auto; }
      @media screen and (min-width: 1024px) {
        .hero-banner-global .banner--medium * {
          margin-inline-start: 0;
          margin-inline-end: auto; } }
    .hero-banner-global .banner--medium .hero-icon {
      width: 80px;
      height: 80px; }
    .hero-banner-global .banner--medium .banner__title {
      font-size: 45px; }
      @media (min-width: 480px) {
        .hero-banner-global .banner--medium .banner__title {
          font-size: 52px; } }
      .hero-banner-global .banner--medium .banner__title.title--mega {
        font-size: 55px; }
        @media (min-width: 480px) {
          .hero-banner-global .banner--medium .banner__title.title--mega {
            font-size: 62px; } }
    .hero-banner-global .banner--medium .header-subtitle {
      font-size: 30px; }
      @media (min-width: 480px) {
        .hero-banner-global .banner--medium .header-subtitle {
          font-size: 34px; } }
      @media (min-width: 480px) {
        .hero-banner-global .banner--medium .header-subtitle {
          font-size: 40px; } }
    .hero-banner-global .banner--medium .header-ctas {
      margin-block: 2rem 0;
      margin-inline: 0; }
    .hero-banner-global .banner--medium .right-column-image {
      padding-block-end: 61.27%; }
      @media (min-width: 1024px) {
        .hero-banner-global .banner--medium .right-column-image {
          padding-block-end: 0; } }
    @media screen and (min-width: 1024px) {
      .hero-banner-global .banner--medium {
        height: 576px; } }
  .hero-banner-global .banner--large {
    min-height: 60vh; }
    .hero-banner-global .banner--large * {
      margin-inline-start: auto;
      margin-inline-end: auto; }
      @media screen and (min-width: 1024px) {
        .hero-banner-global .banner--large * {
          margin-inline-start: 0;
          margin-inline-end: auto; } }
    .hero-banner-global .banner--large .hero-icon {
      width: 90px;
      height: 90px;
      margin-block-end: 17px;
      margin-block-start: 30px; }
      @media screen and (min-width: 768px) {
        .hero-banner-global .banner--large .hero-icon {
          width: 90px;
          height: 90px; } }
      @media screen and (min-width: 1024px) {
        .hero-banner-global .banner--large .hero-icon {
          margin-block-start: 0; } }
    .hero-banner-global .banner--large .banner__title {
      font-size: 47px;
      letter-spacing: -2px; }
      @media screen and (min-width: 480px) {
        .hero-banner-global .banner--large .banner__title {
          font-size: 62px; } }
      @media screen and (min-width: 1024px) {
        .hero-banner-global .banner--large .banner__title {
          font-size: 75px; } }
      .hero-banner-global .banner--large .banner__title.title--mega {
        font-size: 57px; }
        @media screen and (min-width: 480px) {
          .hero-banner-global .banner--large .banner__title.title--mega {
            font-size: 72px; } }
        @media screen and (min-width: 860px) {
          .hero-banner-global .banner--large .banner__title.title--mega {
            font-size: 100px; } }
    .hero-banner-global .banner--large .header-subtitle {
      font-size: 32px; }
      @media (min-width: 480px) {
        .hero-banner-global .banner--large .header-subtitle {
          font-size: 40px; } }
      @media (min-width: 860px) {
        .hero-banner-global .banner--large .header-subtitle {
          font-size: 2.82rem; } }
    .hero-banner-global .banner--large .header-desc {
      font-size: var(--font-1); }
    .hero-banner-global .banner--large .right-column-image {
      padding-block-end: 73.53%; }
      @media (min-width: 1024px) {
        .hero-banner-global .banner--large .right-column-image {
          padding-block-end: 0; } }
    @media screen and (min-width: 1024px) {
      .hero-banner-global .banner--large {
        height: 60vh;
        min-height: 700px;
        max-height: 864px; } }
  .hero-banner-global .banner--screen {
    height: 100vh;
    padding-block-start: 15px;
    flex-direction: row;
    text-align: unset;
    z-index: 10;
    width: 90vw; }
    @media screen and (min-width: 786px) {
      .hero-banner-global .banner--screen {
        width: 96vw;
        width: 1440px; } }
    @media screen and (min-width: 768px) {
      .hero-banner-global .banner--screen .banner__title,
      .hero-banner-global .banner--screen .header-subtitle,
      .hero-banner-global .banner--screen .header-desc {
        width: 58%; } }
    @media screen and (min-width: 1440px) {
      .hero-banner-global .banner--screen .banner__title,
      .hero-banner-global .banner--screen .header-subtitle,
      .hero-banner-global .banner--screen .header-desc {
        width: 50%; } }
    .hero-banner-global .banner--screen .content {
      flex-direction: row;
      max-width: 100%;
      position: relative; }
      @media screen and (min-width: 768px) {
        .hero-banner-global .banner--screen .content {
          flex-direction: column; } }
    .hero-banner-global .banner--screen .hero-icon {
      width: 90px;
      height: 90px; }
      @media screen and (min-width: 768px) {
        .hero-banner-global .banner--screen .hero-icon {
          width: 120px;
          height: auto; } }
    .hero-banner-global .banner--screen .banner__title {
      font-size: var(--font-2);
      letter-spacing: initial;
      font-weight: 700; }
      .hero-banner-global .banner--screen .banner__title.title--mega {
        font-size: 3.9rem; }
        @media screen and (min-width: 480px) {
          .hero-banner-global .banner--screen .banner__title.title--mega {
            font-size: 5.29rem; } }
        @media screen and (min-width: 860px) {
          .hero-banner-global .banner--screen .banner__title.title--mega {
            font-size: 6.4rem; } }
    .hero-banner-global .banner--screen .header-subtitle {
      font-size: var(--font-1);
      letter-spacing: 0;
      font-weight: 400; }
    .hero-banner-global .banner--screen .header-desc {
      font-size: var(--font-7);
      font-weight: 700;
      font-style: normal;
      line-height: 1.15; }
    .hero-banner-global .banner--screen .right-column {
      display: none; }
  .hero-banner-global .banner--full {
    min-height: 50vh;
    height: auto;
    max-height: 1152px;
    flex-direction: column;
    text-align: center;
    padding-block-start: 15px; }
    @media screen and (min-width: 600px) {
      .hero-banner-global .banner--full {
        padding-block-start: 30px;
        height: 80vh; } }
  @media screen and (min-width: 600px) and (orientation: landscape) {
    .hero-banner-global .banner--full {
      height: auto; } }
    @media screen and (min-width: 860px) and (orientation: landscape) {
      .hero-banner-global .banner--full {
        height: 80vh; } }
    @media screen and (min-width: 860px) {
      .hero-banner-global .banner--full {
        min-height: 650px; } }
    @media screen and (min-width: 1024px) {
      .hero-banner-global .banner--full {
        min-height: 740px;
        flex-direction: column; } }
    .hero-banner-global .banner--full * {
      margin-inline-start: auto;
      margin-inline-end: auto; }
    .hero-banner-global .banner--full .content {
      display: flex;
      flex-direction: column;
      justify-content: center;
      padding-block-end: 2%;
      height: 100%;
      max-width: 100%;
      overflow-wrap: break-word; }
    .hero-banner-global .banner--full .hero-icon {
      width: 90px;
      height: 90px; }
      @media screen and (min-width: 768px) {
        .hero-banner-global .banner--full .hero-icon {
          width: 120px;
          height: auto; } }
    .hero-banner-global .banner--full .banner__title {
      font-size: 3.2rem; }
      @media screen and (min-width: 400px) {
        .hero-banner-global .banner--full .banner__title {
          font-size: 3.65rem; } }
      @media screen and (min-width: 440px) {
        .hero-banner-global .banner--full .banner__title {
          font-size: 3.95rem; } }
      @media screen and (min-width: 480px) {
        .hero-banner-global .banner--full .banner__title {
          font-size: 55px; } }
      @media screen and (min-width: 860px) {
        .hero-banner-global .banner--full .banner__title {
          font-size: 5.294rem; } }
      .hero-banner-global .banner--full .banner__title.title--mega {
        font-size: 3.9rem; }
        @media screen and (min-width: 480px) {
          .hero-banner-global .banner--full .banner__title.title--mega {
            font-size: 5.29rem; } }
        @media screen and (min-width: 860px) {
          .hero-banner-global .banner--full .banner__title.title--mega {
            font-size: 6.4rem; } }
    .hero-banner-global .banner--full .header-subtitle {
      line-height: 1.25; }
    .hero-banner-global .banner--full .scroll-down-ghost {
      margin-block-start: 10px; }
      @media (min-width: 600px) {
        .hero-banner-global .banner--full .scroll-down-ghost {
          margin-block-start: 0;
          height: 60px; } }
  @media screen and (min-width: 600px) and (orientation: landscape) {
    .hero-banner-global .banner--full .scroll-down-ghost {
      height: 120px; } }
      @media (min-width: 860px) and (orientation: landscape) {
        .hero-banner-global .banner--full .scroll-down-ghost {
          height: 60px; } }
    .hero-banner-global .banner--full .scroll-down {
      display: none;
      width: 50px;
      height: 50px;
      background-color: rgba(255, 255, 255, 0.9);
      border-radius: 50px;
      margin-block: 0 20px;
      margin-inline: auto;
      padding-block: 13px 0;
      padding-inline: 9px 0;
      color: var(--calcite-ui-text-1);
      transition: background-color 100ms linear; }
      .hero-banner-global .banner--full .scroll-down .icon-ui-down::before {
        padding-left: 0;
        padding-right: 0;
        padding-inline-start: 0;
        padding-inline-end: 9px; }
      @media (min-width: 600px) {
        .hero-banner-global .banner--full .scroll-down {
          display: block;
          position: absolute;
          inset-block-end: 50px;
          inset-inline: 10px 20px;
          margin-block: 0;
          margin-inline: auto; } }
      .hero-banner-global .banner--full .scroll-down:hover {
        background-color: var(--calcite-ui-brand); }
    .hero-banner-global .banner--full .header-subtitle {
      font-size: 34px;
      letter-spacing: -2px; }
      @media (min-width: 480px) {
        .hero-banner-global .banner--full .header-subtitle {
          font-size: 45px; } }
      @media (min-width: 860px) {
        .hero-banner-global .banner--full .header-subtitle {
          font-size: 3rem;
          letter-spacing: 0; } }
    .hero-banner-global .banner--full .header-desc {
      font-size: var(--font-1); }
    .hero-banner-global .banner--full .header-ctas {
      margin-block-start: 2rem; }
    .hero-banner-global .banner--full .right-column {
      display: none; }
  .hero-banner-global [data-overlay="overlay"].has-bg-img:not(.hgb-container--no-vignette) .dark-light-gradient {
    background: linear-gradient(180deg, var(--esri-ui-opacity80-inverse), transparent 60%); }
    @media (min-width: 1024px) {
      .hero-banner-global [data-overlay="overlay"].has-bg-img:not(.hgb-container--no-vignette) .dark-light-gradient {
        background: linear-gradient(90deg, var(--esri-ui-opacity80-inverse), transparent 60%); } }
  .hero-banner-global .banner__title,
  .hero-banner-global .header-tagline,
  .hero-banner-global .header-desc {
    color: var(--calcite-ui-text-1); }
  .hero-banner-global .header-subtitle {
    color: var(--esri-ui-opacity80); }

@media screen and (min-width: 1024px) {
  html[dir="rtl"] body .hero-banner-global .herobanner:not(.banner--full) {
    flex-direction: row-reverse; } }

.hero-banner-global.hbg-content--heroVideo .hbg-container {
  width: 100%;
  height: 0;
  padding-block-end: 60%; }
  @media screen and (min-width: 768px) {
    .hero-banner-global.hbg-content--heroVideo .hbg-container {
      padding-block-end: 48%; } }
  @media screen and (min-width: 1024px) {
    .hero-banner-global.hbg-content--heroVideo .hbg-container {
      padding-block-end: 43.75%; } }
  .hero-banner-global.hbg-content--heroVideo .hbg-container .banner__title,
  .hero-banner-global.hbg-content--heroVideo .hbg-container .header-subtitle,
  .hero-banner-global.hbg-content--heroVideo .hbg-container .header-desc,
  .hero-banner-global.hbg-content--heroVideo .hbg-container .header-tagline,
  .hero-banner-global.hbg-content--heroVideo .hbg-container .separator,
  .hero-banner-global.hbg-content--heroVideo .hbg-container a.btn {
    display: none; }

.hero-banner-global.background-parallax .has-bg-img {
  background-attachment: fixed; }
  .hero-banner-global.background-parallax .has-bg-img .video-background {
    padding-block-start: 0; }
  .hero-banner-global.background-parallax .has-bg-img .banner--large,
  .hero-banner-global.background-parallax .has-bg-img .banner--screen {
    min-height: 550px;
    height: 55vw; }
    @media (orientation: landscape) and (min-width: 0px) {
      .hero-banner-global.background-parallax .has-bg-img .banner--large,
      .hero-banner-global.background-parallax .has-bg-img .banner--screen {
        min-height: 440px;
        height: 52vw; } }
    @media screen and (min-width: 768px) {
      .hero-banner-global.background-parallax .has-bg-img .banner--large,
      .hero-banner-global.background-parallax .has-bg-img .banner--screen {
        height: 48vh;
        min-height: 500px; } }
    @media screen and (min-width: 1024px) {
      .hero-banner-global.background-parallax .has-bg-img .banner--large,
      .hero-banner-global.background-parallax .has-bg-img .banner--screen {
        height: 80vh;
        min-height: 900px; } }
    @media (orientation: portrait) and (min-width: 1024px) {
      .hero-banner-global.background-parallax .has-bg-img .banner--large,
      .hero-banner-global.background-parallax .has-bg-img .banner--screen {
        height: 80vh;
        min-height: 900px; } }
    @media (orientation: portrait) and (min-width: 1024px) {
      .hero-banner-global.background-parallax .has-bg-img .banner--large,
      .hero-banner-global.background-parallax .has-bg-img .banner--screen {
        min-height: 600px;
        height: 72vw; } }
  .hero-banner-global.background-parallax .has-bg-img .herobanner {
    align-items: flex-start;
    padding-block-start: 100px; }
