.hero {
  --hero-btn-gap: 16px;
  --hero-btn-margin-top: 16px;
  --hero-buttons-direction: column;
  --hero-content-height: auto;
  --hero-col-gap: 0;
  --hero-col-grow: initial;
  --hero-col-left-width: 45%;
  --hero-col-right-width: 55%;
  --hero-col-width: 100%;
  --hero-date-picker-margin-top: 32px;
  --hero-desription-margin-top: 16px;
  --hero-heading-margin-top: 20px;
  --hero-highlight-margin-top: 24px;
  --hero-highlight-content-width: auto;
  --hero-highlight-width: auto;
  --hero-image-positioning: absolute;
  --hero-overlay-direction-x: right;
  --hero-overlay-direction-y: bottom;
}
@media (min-width: 567px) {
  .hero {
    --hero-buttons-direction: row;
  }
}
@media (min-width: 992px) {
  .hero {
    --hero-btn-gap: 24px;
    --hero-btn-margin-top: 32px;
    --hero-highlight-margin-top: 80px;
    --hero-overlay-direction-x: right;
    --hero-overlay-direction-y: bottom;
  }
}
.hero__wrapper {
  --hero-background: transparent;
  --hero-border-radius: 0;
  --hero-col-content-align: var(--hero-content-horizontal-mobile, flex-start);
  --hero-col-content-justify: var(--hero-content-vertical-mobile, flex-start);
  --hero-col-padding-bottom: 0;
  --hero-col-padding-left: var(--hero-padding-left);
  --hero-col-padding-right: var(--hero-padding-right);
  --hero-col-padding-top: 0;
  --hero-content-align: var(--hero-content-vertical-mobile, flex-start);
  --hero-content-direction: column;
  --hero-content-justify: var(--hero-content-horizontal-mobile, flex-start);
  --hero-content-text-align: var(--hero-content-text-align-mobile, left);
  --hero-date-picker-text-align: var(--hero-content-text-align);
  --hero-height: var(--hero-height-mobile, auto);
  --hero-overlay-background: var(--background-primary, #fff);
  --hero-padding-left: 0;
  --hero-padding-right: 0;
  --section-padding-bottom: var(--padding-bottom-mobile, 20px);
  --section-padding-top: var(--padding-top-mobile, 20px);
  display: flex;
  align-items: stretch;
  position: relative;
  color: var(--color-primary, #000);
  min-height: var(--hero-height);
  background: var(--hero-background);
  border-radius: var(--hero-border-radius);
  overflow: clip;
}
@media (min-width: 992px) {
  .hero__wrapper {
    --hero-col-content-align: var(--hero-content-horizontal-desktop, flex-start);
    --hero-col-content-justify: var(--hero-content-vertical-desktop, flex-start);
    --hero-col-padding-left: var(--hero-padding-left);
    --hero-col-padding-right: var(--hero-padding-right);
    --hero-content-align: var(--hero-content-vertical-desktop, flex-start);
    --hero-content-justify: var(--hero-content-horizontal-desktop, flex-start);
    --hero-content-text-align: var(--hero-content-text-align-desktop, left);
    --hero-height: var(--hero-height-desktop, 400px);
    --hero-padding-left: 0;
    --hero-padding-right: 0;
    --section-padding-bottom: var(--padding-bottom-desktop, 40px);
    --section-padding-top: var(--padding-top-desktop, 40px);
  }
}
@media (min-width: 1280px) {
  .hero__wrapper {
    --hero-content-direction: var(--hero-content-direction-desktop, column);
  }
}
.hero__wrapper--padding-top:not(:empty) {
  padding-top: var(--section-padding-top);
}
.hero__wrapper--padding-bottom:not(:empty) {
  padding-bottom: var(--section-padding-bottom);
}
.hero__container .hero__wrapper {
  --hero-border-radius: var(--border-radius-block);
  --hero-content-align: var(--hero-content-vertical-mobile, flex-start);
  --hero-padding-left: 16px;
  --hero-padding-right: 16px;
}
@media (min-width: 992px) {
  .hero__container .hero__wrapper {
    --hero-content-align: var(--hero-content-vertical-desktop, flex-start);
    --hero-padding-left: 40px;
    --hero-padding-right: 40px;
  }
}
.hero__wrapper:not(:has(.hero__columns)) {
  --hero-background: var(--background-primary, #fff);
}
.hero__container .hero__wrapper:has(.hero__columns) {
  --hero-content-align: stretch;
}
@media (max-width: 991px) {
  body:has(.header__inner--filled) .hero__wrapper[style*="--hero-height-mobile: 100vh"] {
    --hero-height: calc(var(--hero-height-mobile, 100vh) - var(--header-height, 65px));
  }
}
@media (min-width: 992px) {
  body:has(.header__inner--filled) .hero__wrapper[style*="--hero-height-desktop: 100vh"] {
    --hero-height: calc(var(--hero-height-desktop, 100vh) - var(--header-height, 65px));
  }
}
.hero__content {
  text-align: var(--hero-content-text-align);
  height: var(--hero-content-height);
  width: 100%;
  padding-left: var(--hero-padding-left);
  padding-right: var(--hero-padding-right);
}
.hero__content:not(:has(.hero__columns)) {
  display: flex;
  align-items: var(--hero-content-justify);
  justify-content: var(--hero-content-align);
  flex-direction: column;
}
.hero__wrapper .hero__container .hero__content:not(:has(.hero__columns)) {
  --hero-content-height: 100%;
}
.hero__container .hero__wrapper .hero__content:has(.hero__columns) {
  --hero-padding-left: 0;
  --hero-padding-right: 0;
}
.hero__content > *:not(.hero__image-holder, .hero__columns) {
  position: relative;
  z-index: 1;
}
.hero__col {
  position: relative;
  border-radius: var(--hero-border-radius);
  background: var(--hero-background);
  overflow: clip;
  padding: var(--hero-col-padding-top) var(--hero-col-padding-right) var(--hero-col-padding-bottom) var(--hero-col-padding-left);
  flex-grow: var(--hero-col-grow);
  width: var(--hero-col-width);
}
.hero__col--padding-top:not(:empty) {
  --hero-col-padding-top: var(--section-padding-top);
}
.hero__col--padding-bottom:not(:empty) {
  --hero-col-padding-bottom: var(--section-padding-bottom);
}
.hero__col:empty {
  display: none;
}
.hero__col:has(.hero__container) {
  --hero-col-grow: 1;
}
@media (min-width: 1280px) {
  [style*="--hero-content-direction-desktop: row"] .hero__col {
    --hero-col-width: var(--hero-col-left-width);
  }
}
.hero__container .hero__wrapper .hero__col {
  --hero-background: var(--background-primary, #fff);
  --hero-border-radius: var(--border-radius-block);
  --hero-col-grow: 1;
}
.hero__col .hero__container {
  display: flex;
  align-items: var(--hero-col-content-align);
  justify-content: var(--hero-col-content-justify);
  flex-direction: column;
  height: 100%;
}
@media (min-width: 1280px) {
  [style*="--hero-content-direction-desktop: row"] .hero__col .hero__container {
    --hero-col-content-align: var(--hero-content-horizontal-desktop, flex-start);
    --hero-col-content-justify: var(--hero-content-vertical-desktop, flex-start);
  }
}
.hero__container .hero__wrapper .hero__col .hero__container {
  padding-left: 0;
  padding-right: 0;
}
.hero__col:has(+ .hero__col .hero__image-holder) {
  --hero-col-padding-bottom: 0;
}
@media (min-width: 1280px) {
  [style*="--hero-content-direction-desktop: row"] .hero__col:has(+ .hero__col .hero__image-holder) {
    --hero-col-padding-bottom: var(--section-padding-bottom);
  }
}
@media (min-width: 1280px) {
  [style*="--hero-content-direction-desktop: row"] .hero__col:has(+ .hero__col .hero__image-holder) .hero__container {
    max-width: calc(var(--max-width) * var(--hero-col-left-width) - var(--hero-col-gap));
    padding-right: 0;
    margin-left: auto;
  }
}
.hero__container .hero__wrapper .hero__col:has(+ .hero__col .hero__image-holder) {
  --hero-col-padding-bottom: 20px;
}
@media (min-width: 1280px) {
  .hero__container .hero__wrapper[style*="--hero-content-direction-desktop: row"] .hero__col:has(+ .hero__col .hero__image-holder) {
    --hero-col-padding-bottom: var(--section-padding-bottom);
  }
}
.hero__col {
  /* stylelint-disable-next-line */
}
.hero__col:last-child {
  --hero-col-padding-left: 0;
  --hero-col-padding-right: 0;
  /* stylelint-disable-next-line */
}
@media (min-width: 1280px) {
  [style*="--hero-content-direction-desktop: row"] .hero__col:last-child {
    --hero-col-width: var(--hero-col-right-width);
  }
}
.hero__col:last-child {
  /* stylelint-disable-next-line */
}
.hero__container .hero__wrapper .hero__col:last-child {
  --hero-col-grow: 0;
}
.hero__columns {
  --hero-background: var(--background-primary, #fff);
  display: flex;
  flex-direction: var(--hero-content-direction);
  gap: var(--hero-col-gap);
  width: 100%;
  height: 100%;
  background: var(--hero-background);
}
@media (min-width: 1280px) {
  [style*="--hero-content-direction-desktop: row"] .hero__columns {
    --hero-content-align: var(--hero-content-vertical-desktop, flex-start);
    --hero-content-justify: stretch;
  }
}
.hero__container .hero__wrapper .hero__columns {
  --hero-background: transparent;
  --hero-content-align: var(--hero-content-vertical-mobile, flex-start);
  --hero-content-justify: var(--hero-content-horizontal-mobile, flex-start);
}
@media (min-width: 992px) {
  .hero__container .hero__wrapper .hero__columns {
    --hero-content-align: var(--hero-content-vertical-desktop, flex-start);
    --hero-content-justify: var(--hero-content-horizontal-desktop, flex-start);
  }
}
.hero__columns:has(.hero__col:last-child:not(:empty)) {
  --hero-col-gap: 16px;
}
@media (min-width: 992px) {
  .hero__columns:has(.hero__col:last-child:not(:empty)) {
    --hero-col-gap: 32px;
  }
}
.hero__heading {
  margin: var(--hero-heading-margin-top) 0 0;
}
.hero__heading:first-child {
  --hero-heading-margin-top: 0;
}
.hero__description:not(:first-child) {
  margin-top: var(--hero-desription-margin-top);
}
.hero__date-picker {
  display: flex;
  justify-content: var(--hero-content-justify);
  width: var(--button-width);
  text-align: var(--hero-date-picker-text-align);
}
@media (max-width: 991px) {
  [style*="--hero-content-horizontal-mobile: flex-end"] .hero__date-picker {
    --hero-date-picker-text-align: center;
  }
}
.hero__date-picker .date-picker__component {
  width: var(--button-width);
}
.hero__date-picker:not(:first-child) {
  margin-top: var(--hero-date-picker-margin-top);
}
.hero__buttons {
  display: flex;
  align-items: center;
  justify-content: var(--hero-content-justify);
  flex-direction: var(--hero-buttons-direction);
  flex-wrap: wrap;
  gap: var(--hero-btn-gap);
}
.hero__buttons:not(:first-child) {
  margin-top: var(--hero-btn-margin-top);
}
.hero__btn-wrapper {
  margin-top: var(--hero-btn-margin-top);
}
.hero__btn-wrapper + .hero__highlight {
  display: flex;
  align-items: var(--hero-content-justify);
  flex-direction: column;
}
.hero__btn-wrapper:first-child {
  --hero-btn-margin-top: 0;
}
.hero__btn-wrapper:first-child + .hero__btn-wrapper {
  --hero-btn-margin-top: 0;
}
.hero__btn-wrapper:first-child + .hero__image-holder + .hero__btn-wrapper {
  --hero-btn-margin-top: 0;
}
.hero__highlight {
  display: inline-block;
  vertical-align: top;
  margin-top: var(--hero-highlight-margin-top);
  width: var(--hero-highlight-width);
}
.hero__highlight-content {
  border-radius: var(--border-radius-block);
  border: 1px solid var(--color-primary, #000);
  padding: 24px;
  height: 100%;
  width: var(--hero-highlight-content-width);
}
.hero__highlight-heading {
  margin-bottom: 12px;
}
.hero__highlight-text {
  line-height: 1.3333;
}
.hero__highlight-text p:last-child {
  margin: 0;
}
.hero__highlight-wrapper {
  display: flex;
  align-items: stretch;
  justify-content: var(--hero-content-justify);
  gap: var(--hero-btn-gap);
}
.hero__highlight-wrapper .hero__highlight {
  --hero-highlight-margin-top: 0;
  --hero-highlight-width: 50%;
  display: flex;
  align-items: var(--hero-content-justify);
  flex-direction: column;
}
.hero__highlight-wrapper .hero__highlight-content {
  --hero-highlight-content-width: 100%;
}
.hero__highlight-wrapper:not(:first-child) {
  margin-top: var(--hero-highlight-margin-top);
}
.hero__highlight:first-child {
  --hero-highlight-margin-top: 0;
}
.hero__highlight:first-child + .hero__image-holder + .hero__highlight {
  --hero-highlight-margin-top: 0;
}
.hero__highlight:has(+ .hero__btn-wrapper) {
  display: flex;
  align-items: var(--hero-content-justify);
  flex-direction: column;
}
.hero__image {
  object-fit: cover;
  width: 100%;
  height: 100%;
  max-width: none;
}
.hero__image-overlay {
  position: absolute;
  inset: 0;
  background: var(--hero-overlay-background);
  pointer-events: none;
}
.hero__image-overlay--gradient {
  --hero-overlay-background: linear-gradient(to var(--hero-overlay-direction-y) var(--hero-overlay-direction-x), var(--background-primary, #fff) 0%, color-mix(in srgb, var(--background-primary, #fff) 0%, transparent) 100%);
}
@media (max-width: 991px) {
  [style*="--hero-content-horizontal-mobile: center"] .hero__image-overlay--gradient {
    --hero-overlay-direction-x: ;
  }
}
@media (max-width: 991px) {
  [style*="--hero-content-horizontal-mobile: flex-end"] .hero__image-overlay--gradient {
    --hero-overlay-direction-x: left;
  }
}
@media (max-width: 991px) {
  [style*="--hero-content-vertical-mobile: center"] .hero__image-overlay--gradient {
    --hero-overlay-direction-y: ;
  }
}
@media (max-width: 991px) {
  [style*="--hero-content-vertical-mobile: flex-end"] .hero__image-overlay--gradient {
    --hero-overlay-direction-y: top;
  }
}
@media (min-width: 992px) {
  [style*="--hero-content-horizontal-desktop: center"] .hero__image-overlay--gradient {
    --hero-overlay-direction-x: ;
  }
}
@media (min-width: 992px) {
  [style*="--hero-content-horizontal-desktop: flex-end"] .hero__image-overlay--gradient {
    --hero-overlay-direction-x: left;
  }
}
@media (min-width: 992px) {
  [style*="--hero-content-vertical-desktop: center"] .hero__image-overlay--gradient {
    --hero-overlay-direction-y: ;
  }
}
@media (min-width: 992px) {
  [style*="--hero-content-vertical-desktop: flex-end"] .hero__image-overlay--gradient {
    --hero-overlay-direction-y: top;
  }
}
@media (max-width: 991px) {
  [style*="--hero-content-horizontal-mobile: center"][style*="--hero-content-vertical-mobile: center"] .hero__image-overlay--gradient {
    --hero-overlay-direction-x: ;
    --hero-overlay-direction-y: bottom;
  }
}
@media (min-width: 992px) {
  [style*="--hero-content-horizontal-desktop: center"][style*="--hero-content-vertical-desktop: center"] .hero__image-overlay--gradient {
    --hero-overlay-direction-x: ;
    --hero-overlay-direction-y: bottom;
  }
}
.hero__image-holder {
  position: var(--hero-image-positioning);
  inset: 0;
  overflow: hidden;
  width: 100%;
  height: 100%;
}
.hero__col .hero__image-holder {
  --hero-image-positioning: static;
}
.hero__image-holder:first-child + * {
  --hero-date-picker-margin-top: 0;
  --hero-desription-margin-top: 0;
  --hero-heading-margin-top: 0;
  --hero-highlight-margin-top: 0;
}
.hero__image-holder:first-child {
  /* stylelint-disable-next-line */
}
.hero__image-holder:first-child + .hero__btn-wrapper {
  --hero-btn-margin-top: 0;
}
.hero__image-holder:first-child + .hero__btn-wrapper + .hero__btn-wrapper {
  --hero-btn-margin-top: 0;
}
.hero__image-holder:first-child + .hero__buttons {
  --hero-btn-margin-top: 0;
}