  /* stylelint-disable order/order */
/* stylelint-enable order/order */
/*
 * Fonts
 *
 * The font settings are defined via the gulp figma task creates variables in the css/__base-includes/figma/_figma-font-styles.scss file based on the Figma file. Additional variables are defined here.
 */
/*
 * Colors
 *
 * The primary colors are defined via the gulp figma task creates variables in the css/__base-includes/figma/_figma-color-variables.scss file based on the Figma file. Additional variables are defined here.
 */
/*
 * Effects
 */
/*
 * Grid Settings
 */
/*
This file can be used for optional additions to the Figma-generated font style mixins in the figma/_figma-font-styles.scss file.

For example, if you want to add styles to the @overline mixin, just create a mixin here called @overline-custom and that CSS will be added to the primary mixin:

@mixin overline-custom() {
	font-weight: 700;
}
*/
.block-hero-home {
  position: relative;
  overflow: hidden;
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes fadeInOut {
  0%, 100% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
}
@media (min-width: 62rem) {
  @keyframes slideLeft {
    from {
      transform: translateX(100%);
    }
    to {
      transform: translateX(0);
    }
  }
}
@media (min-width: 62rem) {
  @keyframes slideRight {
    from {
      transform: translateX(-100%);
    }
    to {
      transform: translateX(0);
    }
  }
}
@media (max-width: 61.98rem) {
  @keyframes slideLeft {
    from {
      transform: translateX(100%);
    }
    to {
      transform: translateX(50%);
    }
  }
}
@keyframes scaleDown {
  from {
    transform: scale(1.25);
  }
  to {
    transform: scale(1);
  }
}
.block-hero-home.acf-block {
  padding: 0 !important;
}
.block-hero-home__image-wrapper, .block-hero-home__bg-video-wrapper, .block-hero-home__bg-video-embed-wrapper {
  width: 100%;
  height: 100vh;
  height: 52.5rem;
}
@media (max-width: 61.98rem) {
  .block-hero-home__image-wrapper, .block-hero-home__bg-video-wrapper, .block-hero-home__bg-video-embed-wrapper {
    height: 40rem;
  }
}
.block-hero-home__image-wrapper img,
.block-hero-home__image-wrapper video,
.block-hero-home__image-wrapper iframe, .block-hero-home__bg-video-wrapper img,
.block-hero-home__bg-video-wrapper video,
.block-hero-home__bg-video-wrapper iframe, .block-hero-home__bg-video-embed-wrapper img,
.block-hero-home__bg-video-embed-wrapper video,
.block-hero-home__bg-video-embed-wrapper iframe {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.block-hero-home__overlay {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  text-align: center;
}
.block-hero-home__overlay::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 100%;
  background-color: #0d0d0d;
  opacity: 0.4;
}
.block-hero-home__content {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  max-width: 54.0625rem;
  min-height: clamp(22.5rem, 8.2142857143rem + 29.7619047619vw, 35rem);
  margin: 0 auto;
  color: #fff;
  opacity: 0;
  animation: fadeIn 2s ease-in 1s forwards;
}
.block-hero-home__content .c-btn {
  margin-top: auto;
}
.block-hero-home__title-wrapper {
  height: 0;
  margin: 0 !important;
  opacity: 0;
}
.block-hero-home__title-wrapper--desc {
  text-transform: none !important;
}
.block-hero-home__title-wrapper.active {
  font-weight: var(--disp-font-weight);
  font-size: var(--disp-font-size);
  font-family: var(--disp-font-family);
  line-height: var(--disp-line-height);
  letter-spacing: var(--disp-letter-spacing);
  text-transform: var(--disp-text-transform);
  --margin-top: 2em;
  margin-bottom: var(--disp-margin-bottom);
  height: initial;
  font-size: clamp(3.125rem, 0.9821428571rem + 4.4642857143vw, 5rem);
  animation: fadeInOut 3s ease-in 0s forwards;
}
.block-hero-home__title-wrapper.active:last-child {
  margin-bottom: 0;
}
.block-hero-home__title-wrapper.active--desc {
  margin-top: auto !important;
  margin-bottom: auto !important;
  text-transform: none !important;
}
.block-hero-home__title-wrapper.active.text-1 {
  animation: fadeInOut 4s ease-in 0s forwards;
}
.block-hero-home__title-wrapper.active.text-2 {
  margin-bottom: auto !important;
}
.block-hero-home__title-wrapper.active.text-3 {
  margin-top: auto !important;
  margin-bottom: auto !important;
}
.block-hero-home__title-wrapper.active.text-4 {
  margin-top: auto !important;
}
.block-hero-home__title-wrapper.stay-active {
  font-weight: var(--disp-font-weight);
  font-size: var(--disp-font-size);
  font-family: var(--disp-font-family);
  line-height: var(--disp-line-height);
  letter-spacing: var(--disp-letter-spacing);
  text-transform: var(--disp-text-transform);
  --margin-top: 2em;
  margin-bottom: var(--disp-margin-bottom);
  height: initial;
  font-size: clamp(3.125rem, 0.9821428571rem + 4.4642857143vw, 5rem);
  line-height: clamp(3.125rem, 0.9821428571rem + 4.4642857143vw, 5rem);
  animation: fadeIn 2s ease-in 0s forwards;
}
.block-hero-home__title-wrapper.stay-active:last-child {
  margin-bottom: 0;
}
.block-hero-home__title-wrapper.stay-active.block-hero-home__title-wrapper--desc {
  margin-top: auto !important;
  margin-bottom: auto !important;
  font-size: clamp(3.125rem, 0.9821428571rem + 4.4642857143vw, 5rem);
  line-height: clamp(3.125rem, 0.9821428571rem + 4.4642857143vw, 5rem);
}
.block-hero-home__title-wrapper span {
  display: block;
}
.block-hero-home__top-text {
  position: relative;
  margin-bottom: 1rem;
}
.block-hero-home__title-wrapper.active .block-hero-home__bottom-text {
  will-change: transform;
  animation: scaleDown 2.5s ease-in 0s forwards;
}
body .block-hero-home__description {
  font-weight: var(--t2-font-weight);
  font-size: var(--t2-font-size);
  font-family: var(--t2-font-family);
  line-height: var(--t2-line-height);
  --margin-top: 2em;
  margin-bottom: var(--t2-margin-bottom);
  margin-top: auto !important;
  opacity: 0;
  transition: opacity 2s ease;
}
body .block-hero-home__description:last-child {
  margin-bottom: 0;
}
body .block-hero-home__description.stay-active {
  font-weight: var(--t2-font-weight);
  font-size: var(--t2-font-size);
  font-family: var(--t2-font-family);
  line-height: var(--t2-line-height);
  --margin-top: 2em;
  margin-bottom: var(--t2-margin-bottom);
  height: initial;
  font-size: clamp(2rem, 1.4285714286rem + 1.1904761905vw, 2.5rem);
  line-height: clamp(2.5rem, 1.9285714286rem + 1.1904761905vw, 3rem);
  opacity: 1;
}
body .block-hero-home__description.stay-active:last-child {
  margin-bottom: 0;
}
@media (max-width: 61.98rem) {
  body .block-hero-home__description.stay-active {
    padding: 0 0.375rem;
  }
}
body .block-hero-home__description:not(:last-child) {
  margin-bottom: 2rem;
}
.block-hero-home__element-decoration {
  position: absolute;
  top: 0;
  right: 0;
  transform: translateX(100%);
  animation: slideLeft 2.5s ease-in 1s forwards;
}
@media (max-width: 61.98rem) {
  .block-hero-home__element-decoration {
    right: -15rem;
    height: 100%;
  }
  .block-hero-home__element-decoration svg {
    height: 100%;
  }
  .block-hero-home__element-decoration .block-hero-home__element-decoration-w {
    display: none;
  }
}
.block-hero-home__element-decoration-left {
  position: absolute;
  top: 0;
  left: 0;
  transform: translateX(-100%);
  animation: slideRight 2.5s ease-in 1s forwards;
}
@media (max-width: 61.98rem) {
  .block-hero-home__element-decoration-left {
    width: 6.25rem;
  }
  .block-hero-home__element-decoration-left svg {
    width: 100%;
    height: 50%;
  }
}
@media (max-width: 47.98rem) {
  .block-hero-home .c-btn {
    width: 100%;
  }
}