.hero__container {
  display: grid;
  gap: 0.625rem;
}
@media (min-width: 47.9375em) {
  .hero__container {
    padding-top: 1.25rem;
  }
}
@media (min-width: 30em) and (max-width: 47.9375em) {
  .hero__container {
    padding-top: clamp( 0.5rem , -0.7543554007rem  +  4.181184669vw , 1.25rem );
  }
}
@media (max-width: 30em) {
  .hero__container {
    padding-top: 0.5rem;
  }
}
@media (min-width: 75em) {
  .hero__container {
    padding-bottom: 6.25rem;
  }
}
@media (min-width: 62em) and (max-width: 75em) {
  .hero__container {
    padding-bottom: clamp( 0.625rem , -26.2019230769rem  +  43.2692307692vw , 6.25rem );
  }
}
@media (max-width: 62em) {
  .hero__container {
    padding-bottom: 0.625rem;
  }
}
@media (min-width: 120em) {
  .hero__container {
    --spacer-size: 5.625rem;
  }
}
@media (min-width: 75em) and (max-width: 120em) {
  .hero__container {
    --spacer-size: clamp( 1.875rem , -4.375rem  +  8.3333333333vw , 5.625rem );
  }
}
@media (max-width: 75em) {
  .hero__container {
    --spacer-size: 1.875rem;
  }
}
@media (width >= 61.99875em) {
  .hero__container {
    grid-template-columns: auto 23.75rem var(--spacer-size);
    gap: 3.125rem;
  }
}
.hero__image {
  height: 25rem;
  border-radius: 0.625rem;
  overflow: hidden;
}
@media (width >= 61.99875em) {
  .hero__image {
    grid-column: 1/span 3;
  }
}
@media (width < 61.99875em) {
  .hero__image {
    height: 20rem;
  }
}
@media (width < 47.99875em) {
  .hero__image {
    height: 17.5rem;
  }
}
.hero__image img, .hero__image video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.hero__content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.625rem;
}
@media (min-width: 47.9375em) and (max-width: 60em) {
  .hero__content:not(:last-child) {
    margin-bottom: clamp( 1.875rem , -5.5764248705rem  +  15.5440414508vw , 3.75rem );
  }
}
@media (max-width: 47.9375em) {
  .hero__content:not(:last-child) {
    margin-bottom: 1.875rem;
  }
}
.hero__content p {
  line-height: 1.3;
  font-size: var(--font-size);
  letter-spacing: calc(var(--font-size) / 100 * -3);
}
@media (min-width: 47.9375em) {
  .hero__content p {
    --font-size: 1rem;
  }
}
@media (min-width: 30em) and (max-width: 47.9375em) {
  .hero__content p {
    --font-size: clamp( 0.8125rem , 0.4989111498rem  +  1.0452961672vw , 1rem );
  }
}
@media (max-width: 30em) {
  .hero__content p {
    --font-size: 0.8125rem;
  }
}
.hero__content h1, .hero__content h2, .hero__content h3, .hero__content h4, .hero__content h5 {
  font-family: Evolventa;
  max-width: 33.3125rem;
  line-height: 0.8;
  font-size: var(--font-size);
  letter-spacing: calc(var(--font-size) / 100 * -5);
  text-align: center;
}
@media (min-width: 60em) {
  .hero__content h1, .hero__content h2, .hero__content h3, .hero__content h4, .hero__content h5 {
    --font-size: 2.625rem;
  }
}
@media (min-width: 30em) and (max-width: 60em) {
  .hero__content h1, .hero__content h2, .hero__content h3, .hero__content h4, .hero__content h5 {
    --font-size: clamp( 1.875rem , 1.125rem  +  2.5vw , 2.625rem );
  }
}
@media (max-width: 30em) {
  .hero__content h1, .hero__content h2, .hero__content h3, .hero__content h4, .hero__content h5 {
    --font-size: 1.875rem;
  }
}
@media (min-width: 47.9375em) and (max-width: 60em) {
  .hero__content h1:not(:last-child), .hero__content h2:not(:last-child), .hero__content h3:not(:last-child), .hero__content h4:not(:last-child), .hero__content h5:not(:last-child) {
    margin-bottom: clamp( 1.875rem , -0.6088082902rem  +  5.1813471503vw , 2.5rem );
  }
}
@media (max-width: 47.9375em) {
  .hero__content h1:not(:last-child), .hero__content h2:not(:last-child), .hero__content h3:not(:last-child), .hero__content h4:not(:last-child), .hero__content h5:not(:last-child) {
    margin-bottom: 1.875rem;
  }
}
.hero__content span {
  color: var(--grey-on-white-color);
  line-height: 1.3;
  font-size: var(--font-size);
  letter-spacing: calc(var(--font-size) / 100 * -3);
}
@media (min-width: 47.9375em) {
  .hero__content span {
    --font-size: 1rem;
  }
}
@media (min-width: 30em) and (max-width: 47.9375em) {
  .hero__content span {
    --font-size: clamp( 0.8125rem , 0.4989111498rem  +  1.0452961672vw , 1rem );
  }
}
@media (max-width: 30em) {
  .hero__content span {
    --font-size: 0.8125rem;
  }
}
@media (width >= 61.99875em) {
  .hero__content span {
    margin-top: auto;
    align-self: stretch;
  }
}
@media (width >= 61.99875em) {
  .hero__cardwrapper {
    margin-top: -8.875rem;
  }
}
.hero__card {
  background-color: var(--dark-blue-color);
  color: var(--main-white-color);
  display: grid;
  border-radius: 0.5rem;
  grid-template-rows: auto auto 2.75rem;
}
@media (min-width: 30em) {
  .hero__card {
    padding: 1.25rem;
  }
}
@media (min-width: 22.5em) and (max-width: 30em) {
  .hero__card {
    padding: clamp( 1rem , 0.25rem  +  3.3333333333vw , 1.25rem );
  }
}
@media (max-width: 22.5em) {
  .hero__card {
    padding: 1rem;
  }
}
@media (width >= 61.99875em) {
  .hero__card {
    grid-template-rows: 2.75rem auto 2.75rem;
    height: 25rem;
  }
}
@media (width < 61.99875em) {
  .hero__card {
    padding-top: 3.75rem;
  }
}
.hero__cardtext {
  position: relative;
  grid-row-start: 2;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  min-height: 12.5rem;
}
@media (width < 61.99875em) {
  .hero__cardtext:not(:last-child) {
    margin-bottom: 3.75rem;
  }
}
.hero__cardtext > *:not(.hero__crystal) {
  position: relative;
  z-index: 2;
  line-height: 1.3;
  font-size: var(--font-size);
  letter-spacing: calc(var(--font-size) / 100 * -3);
}
@media (min-width: 47.9375em) {
  .hero__cardtext > *:not(.hero__crystal) {
    --font-size: 1rem;
  }
}
@media (min-width: 30em) and (max-width: 47.9375em) {
  .hero__cardtext > *:not(.hero__crystal) {
    --font-size: clamp( 0.9375rem , 0.8329703833rem  +  0.3484320557vw , 1rem );
  }
}
@media (max-width: 30em) {
  .hero__cardtext > *:not(.hero__crystal) {
    --font-size: 0.9375rem;
  }
}
.hero__cardtext p {
  font-weight: 500;
}
.hero__cardtext span {
  color: var(--golden-color);
}
.hero__crystal {
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  --base-transition-delay: 0.5s;
}
.hero__crystal path {
  opacity: 0;
}
.loaded .hero__crystal path {
  transition: all 0.3s ease calc(var(--i, 0) * var(--base-transition-delay));
}
.loaded ._watcher-view .hero__crystal path {
  opacity: 1;
}
.hero__button {
  grid-row-start: 3;
}
@media (any-hover: hover) {
  .hero__button:hover svg {
    translate: 10% -10%;
  }
}
.loaded .hero__button svg {
  transition: all 0.3s ease 0s;
}
@media (width >= 61.99875em) {
  .hero__button {
    justify-content: center;
  }
}
@media (width < 61.99875em) {
  .hero__button {
    justify-content: space-between;
    --bgc: var(--main-white-color);
    --color: var(--main-blue-color);
    --bgc-hover: var(--light-grey-color);
  }
  .hero__button svg [stroke] {
    stroke: var(--color);
  }
  .hero__button svg [fill] {
    fill: var(--color);
  }
}