@import url("https://use.typekit.net/xuv7hye.css");
:root {
  --font-size: 16px;
  --container-width: 100%;
  --white: #ffffff;
  --light: #ededed;
  --primary: #F9EC60;
  --secondary: #003c5e;
  --tertiary: #527d8f;
  --quaternary: #003452;
  --fs1: clamp(2.75rem, 2rem + 1.5625vw, 3.875rem);
  --fs2: clamp(2.5rem, 2.1667rem + 0.6944vw, 3rem);
  --fs3: clamp(2rem, 1.6667rem + 0.6944vw, 2.5rem);
  --fs4: clamp(1.75rem, 1.4167rem + 0.6944vw, 2.25rem);
  --fs5: clamp(1.625rem, 1.375rem + 0.5208vw, 2rem);
  --fs6: clamp(1.375rem, 1.2917rem + 0.1736vw, 1.5rem);
  --fslead: clamp(1.25rem, 1.0833rem + 0.3472vw, 1.5rem);
  --spacing-sm: clamp(1.65rem, 1.2834rem + 0.7638vw, 2.2rem);
  --spacing-md: clamp(2.2rem, 0.7334rem + 3.0556vw, 4.4rem);
  --spacing-lg: clamp(2.75rem, 0.9167rem + 3.8194vw, 5.5rem);
}

@media (min-width: 576px) {
  :root {
    --container-width: 540px;
  }
}
@media (min-width: 768px) {
  :root {
    --container-width: 720px;
  }
}
@media (min-width: 992px) {
  :root {
    --container-width: 960px;
  }
}
@media (min-width: 1200px) {
  :root {
    --container-width: 1140px;
  }
}
@media (min-width: 1400px) {
  :root {
    --container-width: 1320px;
  }
}
@media all and (min-width: 1500px) {
  :root {
    --container-width: 1440px;
  }
}
@media all and (min-width: 1700px) {
  :root {
    --container-width: 1640px;
  }
}
html {
  font-size: var(--font-size);
}

* {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}

figure {
  margin: 0;
}

html {
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
}

body {
  font-family: "din-2014", sans-serif;
  font-weight: 300;
  font-style: normal;
  color: var(--secondary);
  background: var(--light);
  scroll-behavior: smooth;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  min-height: 100vh;
  overflow-x: hidden;
}

/* -- Container ----------------------------*/
.container {
  --bs-gutter-x: 2rem;
  max-width: var(--container-width);
}

/* -- Fonts --------------------------------*/
.fw-300 {
  font-weight: 300;
}

.fw-400 {
  font-weight: 400;
}

.fw-700 {
  font-weight: 700;
}

.fw-800 {
  font-weight: 800;
}

.fs-1,
.fs-2,
.fs-3,
.fs-4,
.fs-5,
.fs-6 {
  display: block;
  text-wrap: balance;
}

h1, .fs-1 {
  font-size: var(--fs1) !important;
  font-weight: 800;
  line-height: 0.85;
}

h2, .fs-2 {
  font-size: var(--fs2) !important;
  font-weight: 800;
  line-height: 0.85;
}

h3, .fs-3 {
  font-size: var(--fs3) !important;
  font-weight: 800;
  line-height: 1;
}

h4, .fs-4 {
  font-size: var(--fs4) !important;
  font-weight: 800;
  line-height: 1;
}

h5, .fs-5 {
  font-size: var(--fs5) !important;
  font-weight: 800;
  line-height: 1;
}

h6, .fs-6 {
  font-size: 1rem !important;
  font-weight: 800;
  line-height: 1;
}

h1, h2, h3, h4, h5, h6 {
  text-wrap: balance;
}

.fs-lead {
  font-size: var(--fslead);
}

p:not([class]) {
  line-height: 1.6;
}

strong, b {
  font-weight: 700;
}

/* -- Text ----------------------------------*/
@media all and (min-width: 576px) {
  .text-split {
    -moz-column-count: 2;
         column-count: 2;
    -moz-column-gap: 1.5rem;
         column-gap: 1.5rem;
  }
}
.caption {
  width: 100%;
  background-image: url("../images/hero-title-element.svg");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 0.75rem;
  aspect-ratio: 8/5;
  padding: 0 16.666%;
}
.caption__title {
  font-weight: 800;
  text-transform: uppercase;
}
.caption__payoff {
  text-transform: uppercase;
  font-weight: 400;
  font-size: clamp(1.125rem, 0.875rem + 0.5208vw, 1.5rem);
  line-height: 1;
}
.caption__payoff strong {
  display: block;
}

@media all and (min-width: 1200px) {
  .caption {
    justify-content: flex-start;
    padding: 4rem 16.666% 0 16.666%;
  }
}
/* -- Lists ---------------------------------*/
ol:not([class]),
ul:not([class]) {
  padding-left: 1rem;
}
ol:not([class]) li + li,
ul:not([class]) li + li {
  margin-top: 0.5rem;
}

/* -- Links ---------------------------------*/
a, a:hover, a:focus, a:active {
  box-shadow: none;
  text-decoration: none;
}

a:not([class]) {
  color: inherit;
}
a:not([class]):hover {
  color: inherit;
}

.link {
  display: inline-flex;
  gap: 0.5rem;
  align-items: center;
  font-weight: 700;
}

.link--primary {
  color: var(--primary);
}

.link--secondary {
  color: var(--secondary);
}

.link--tertiary {
  color: var(--tertiary);
}

.link--quaternary {
  color: var(--quaternary);
}

/* -- Buttons -------------------------------*/
.buttons-wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem 1rem;
}

.button-circle {
  width: 3.125rem;
  height: 3.125rem;
  display: grid;
  background: var(--button__bcg);
  color: var(--button__color);
  place-items: center;
  border-radius: 100%;
  transition: background 0.5s;
}
.button-circle i {
  font-size: 1.5rem;
}

.button {
  display: inline-flex;
  gap: 0.5rem;
  align-items: center;
  font-weight: 700;
  padding: 1.125rem 1.25rem;
  text-transform: uppercase;
  background: var(--button__bcg);
  color: var(--button__color);
}

.button--white {
  --button__color: var(--secondary);
  --button__bcg: var(--white);
}

.button--primary {
  --button__color: var(--secondary);
  --button__bcg: var(--primary);
}

.button--secondary {
  --button__color: var(--white);
  --button__bcg: var(--secondary);
}

.button--tertiary {
  --button__color: var(--white);
  --button__bcg: var(--tertiary);
}

.button--quaternary {
  --button__color: var(--white);
  --button__bcg: var(--quaternary);
}

.button--hover-primary:hover {
  --button__bcg: var(--primary);
}

.button--hover-secondary:hover {
  --button__color: var(--primary);
  --button__bcg: var(--secondary);
}

.button--hover-tertiary:hover {
  --button__bcg: var(--tertiary);
  color: var(--white) !important;
}

/* -- Backgrounds ---------------------------*/
.bcg--black {
  background: var(--black);
}

.bcg--white {
  background: var(--white);
}

.bcg--light {
  background: var(--light);
}

.bcg--dark {
  background: var(--dark);
}

.bcg--blue {
  background: var(--blue);
}

.bcg--primary {
  background: var(--primary);
}

/* -- Colors --------------------------------*/
.clr--black {
  color: var(--black);
}

.clr--white {
  color: var(--white);
}

.clr--light {
  color: var(--light);
}

.clr--dark {
  color: var(--dark);
}

.clr--blue {
  color: var(--blue);
}

.clr--primary {
  color: var(--primary);
}

.clr--secondary {
  color: var(--secondary);
}

.clr--tertiary {
  color: var(--tertiary);
}

.clr--quaternary {
  color: var(--quaternary);
}

/* -- Forms ---------------------------------*/
body .gform_wrapper input[type="text"],
body .gform_wrapper input[type="email"],
body .gform_wrapper input[type="tel"],
body .gform_wrapper input[type="number"],
body .gform_wrapper textarea,
body .gform_wrapper select {
    font-size: 1rem !important;
}

body .gform_wrapper input:focus,
body .gform_wrapper textarea:focus,
body .gform_wrapper select:focus {
    box-shadow: 0 0 0 2px var(--tertiary);
    outline: none; 
}

body .gform_wrapper input.gfield_error,
body .gform_wrapper textarea.gfield_error,
body .gform_wrapper select.gfield_error {
    box-shadow: 0 0 0 2px #ee5736;
}

.gfield_required_asterisk {
  color: #ee5736 !important;
}

.gfield_validation_message:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)) {
  --gf-local-color: #ee5736 !important;
  --gf-local-border-color:  #ee5736 !important;
}

.gform_fields {
  --gf-form-gap-y: 1rem !important;
}

.gform_required_legend {
  display: none !important;
}

#gform_2_validation_container,
#gform_1_validation_container {
  display: none;
}

#gform_submit_button_2,
#gform_submit_button_1 {
  --button-name: var(--primary);
  --button-bcg: var(--primary);
  --button-color: var(--secondary);
  --button-color-hover: var(--secondary);
  align-items: center;
  font-size: 1rem;
  font-weight: 700;
  text-decoration: none;
  text-transform: uppercase;
  border: none;
  border-radius: 0;
  padding: 0.85rem 1.5rem !important;
  background-color: var(--button-bcg);
  color: var(--button-color);
  transition: ease-out 0.4s;
  min-height: 60px !important;
}


#gform_submit_button_2:before,
#gform_submit_button_1:before {
  content: "\f061";
  font-family: "Font Awesome 6 Pro" !important;
  font-size: 1.5rem !important;
  font-weight: 300;
  padding-right: 0.5rem;
  color: var(--button-color);
}

.gfield_description.gform_fileupload_rules {
  color: rgba(255,255,255,.5) !important;
  font-size: .9rem !important;
}

.gform-field-label:not(.gform-field-label--type-inline) {
  font-size: .85rem !important;
  text-transform: uppercase !important;
  font-weight: 700 !important;
}

.gform-datepicker {
  width: 100% !important;
}

/* -- USPS ----------------------------------*/
.usps-wrapper {
  display: flex;
  flex-direction: column;
  gap: clamp(0.75rem, 0.4038rem + 0.9615vw, 1.125rem);
}
.usps-wrapper .usp-item {
  display: grid;
  gap: 1rem;
  align-items: center;
  grid-template-columns: min-content 1fr;
}
.usps-wrapper .usp-item__icon {
  width: 3.125rem;
  height: 3.125rem;
  display: grid;
  background: var(--icon__bcg, var(--secondary));
  color: var(--icon__color, var(--primary));
  place-items: center;
  border-radius: 100%;
}
.usps-wrapper .usp-item__icon i {
  font-size: 1.5rem;
}
.usps-wrapper .usp-item__content {
  flex: 1;
  text-wrap: balance;
}
.usps-wrapper .usp-item__content h6 {
  display: block;
  text-transform: uppercase;
}
.usps-wrapper .usp-item__content p {
  margin: 0;
}
.usps-wrapper--checks .usp-item__icon {
  color: var(--icon__color, var(--white));
}
.usps-wrapper--wide {
  gap: 0.5rem;
}
.usps-wrapper--wide .usp-item {
  display: flex;
  gap: 0;
  align-items: center;
  border-radius: 3rem;
  background: var(--secondary);
  padding: .5rem 1rem .5rem 0;
}
.usps-wrapper--wide .usp-item__icon {
  width: 5.125rem;
  height: 4.125rem;
}
.usps-wrapper--wide .usp-item__icon i {
  font-size: 2rem;
}
.usps-wrapper--wide .usp-item__content {
  flex: 1;
  color: var(--white);
  text-wrap: balance;
  line-height: 1.2;
  font-size: 1.125rem;
}

/* -- Images --------------------------------*/
.img-fluid {
  max-width: 100%;
  height: auto;
}

.img-fit-cover {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}

/* -- Content flow --------------------------*/
.content-flow > * + * {
  margin-block-start: var(--flow-space, 1em);
}
.content-flow :is(h1, h2, h3, h4, h5, h6, blockquote, .usps-wrapper, .buttons-wrapper) {
  --flow-space: 2rem;
}
.content-flow :is(h1, h2, h3, h4, h5, h6) + * {
  --flow-space: 1rem;
}

/* -- Fancybox -------------------------------*/
.fancybox__container.fbx-video {
  --fancybox-content-width: 100%;
  --fancybox-content-max-width: 1400px;
  --fancybox-content-height: auto;   
  --fancybox-content-max-height: 90vh;
  --fancybox-inner-padding: 0; 
}

.fancybox__container.fbx-video .fancybox__content {
  width: 100%;
  max-width: 1400px;
  height: auto !important;        
  aspect-ratio: 16 / 9;     
}

.fancybox__container.fbx-video .fancybox__iframe {
  width: 100%;
  height: 100%;
}
.fancybox__container.fbx-video .fancybox__content[style] {
  height: auto !important;
}

/* -- Swipers --------------------------------*/
.swiper-controls {
  position: absolute;
  bottom: 2rem;
  right: 2.35rem;
  display: flex;
  z-index: 10;
  --control-w: 3.375rem;
}
.swiper-controls__prev, .swiper-controls__next {
  position: relative;
  width: var(--control-w);
  height: var(--control-w);
  display: grid;
  place-items: center;
  margin: 0 0.25rem;
  background: var(--white);
  overflow: hidden;
  border-radius: 50%;
}
.swiper-controls__prev::before, .swiper-controls__prev::after, .swiper-controls__next::before, .swiper-controls__next::after {
  content: attr(data-icon);
  font-family: "Font Awesome 6 Sharp";
  font-weight: 300;
  font-size: 1.5rem;
  position: absolute;
  top: 50%;
  left: 50%;
  transition: transform 0.3s cubic-bezier(0.5, 0.5, 0.3, 1);
}
.swiper-controls__prev::before, .swiper-controls__next::before {
  z-index: 2;
}
.swiper-controls__prev::after, .swiper-controls__next::after {
  z-index: 1;
}
.swiper-controls__prev.swiper-controls__prev::after, .swiper-controls__next.swiper-controls__prev::after {
  transform: translate(calc(-50% - var(--control-w)), -50%);
}
.swiper-controls__prev.swiper-controls__prev::before, .swiper-controls__next.swiper-controls__prev::before {
  transform: translate(-50%, -50%);
}
.swiper-controls__prev.swiper-controls__prev:hover::before, .swiper-controls__next.swiper-controls__prev:hover::before {
  transform: translate(calc(-50% + var(--control-w)), -50%);
}
.swiper-controls__prev.swiper-controls__prev:hover::after, .swiper-controls__next.swiper-controls__prev:hover::after {
  transform: translate(-50%, -50%);
}
.swiper-controls__prev.swiper-controls__next::after, .swiper-controls__next.swiper-controls__next::after {
  transform: translate(calc(-50% + var(--control-w)), -50%);
}
.swiper-controls__prev.swiper-controls__next::before, .swiper-controls__next.swiper-controls__next::before {
  transform: translate(-50%, -50%);
}
.swiper-controls__prev.swiper-controls__next:hover::before, .swiper-controls__next.swiper-controls__next:hover::before {
  transform: translate(calc(-50% - var(--control-w)), -50%);
}
.swiper-controls__prev.swiper-controls__next:hover::after, .swiper-controls__next.swiper-controls__next:hover::after {
  transform: translate(-50%, -50%);
}

.swiper-pagination {
  position: relative;
  margin-top: 2rem;
}
.swiper-pagination-bullet {
  width: 34px;
  height: 8px;
  border-radius: 20px;
  background-color: var(--secondary);
}

/* -- Navigation ------------------------------*/
.site-navigation {
  position: relative;
  padding: 2.25rem 0;
  z-index: 999;
}
.site-navigation-inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.site-navigation-inner__left {
  display: flex;
  gap: 6rem;
}

.site-navigation__mobile {
  position: relative;
  z-index: 500;
  pointer-events: none;
  inset: 0;
}

.navigation__dark-bg {
  transition: all 0.7s cubic-bezier(0.5, 0.5, 0, 1);
  opacity: 0;
  pointer-events: auto;
  visibility: hidden;
  background-color: #000;
  position: absolute;
  inset: 0;
}

[data-navigation-status=active] .navigation__dark-bg {
  opacity: 0.33;
  visibility: visible;
}

.hamburger-nav {
  border-radius: 1.5em;
  position: absolute;
  top: -1.75rem;
  right: 0;
}

.hamburger-nav__bg {
  transition: all 0.7s cubic-bezier(0.5, 0.5, 0, 1);
  background-color: var(--secondary);
  border-radius: 1.75em;
  width: 3.5em;
  height: 3.5em;
  position: absolute;
  top: 0;
  right: 0;
}

[data-navigation-status=active] .hamburger-nav__bg {
  width: 100%;
  height: 100%;
}

.hamburger-nav__group {
  transition: all 0.5s cubic-bezier(0.5, 0.5, 0, 1), transform 0.7s cubic-bezier(0.5, 0.5, 0, 1);
  grid-column-gap: 1em;
  grid-row-gap: 1em;
  pointer-events: auto;
  transform-origin: 100% 0;
  flex-flow: column;
  padding: 2.25em 2.5em 2em 2em;
  display: flex;
  position: relative;
  transform: scale(0.15) rotate(0.001deg);
  opacity: 0;
  visibility: hidden;
}

[data-navigation-status=active] .hamburger-nav__group {
  transform: scale(1) rotate(0.001deg);
  opacity: 1;
  visibility: visible;
}

.hamburger-nav__menu-p {
  opacity: 1;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  margin-bottom: 0;
  font-family: RM Mono, Arial, sans-serif;
  font-size: 1em;
  font-weight: 400;
  color: var(--tertiary);
}

.hamburger-nav__ul {
  grid-column-gap: 0.375em;
  grid-row-gap: 0.375em;
  flex-flow: column;
  margin-top: 0;
  margin-bottom: 0;
  padding: 0;
  display: flex;
  position: relative;
}

.hamburger-nav__li {
  margin: 0;
  padding: 0;
  list-style: none;
}

.hamburger-nav__a {
  color: var(--white);
  justify-content: space-between;
  align-items: center;
  text-decoration: none;
  display: flex;
}

.hamburger-nav__a[aria-current] {
  color: var(--primary);
  font-weight: 700;
}

.hamburger-nav__p {
  white-space: nowrap;
  margin-bottom: 0;
  padding-right: 1.25em;
  font-size: 2em;
}

.hamburger-nav__dot {
  transition: all 0.7s cubic-bezier(0.5, 0.5, 0, 1);
  background-color: currentColor;
  border-radius: 50%;
  flex-shrink: 0;
  width: 0.5em;
  height: 0.5em;
  transform: scale(0) rotate(0.001deg);
  opacity: 0.5;
}

.hamburger-nav__a[aria-current] .hamburger-nav__dot {
  transform: scale(1) rotate(0.001deg);
  opacity: 1;
}

.hamburger-nav:has(.hamburger-nav__a:hover) .hamburger-nav__dot {
  transform: scale(0) rotate(0.001deg);
}

.hamburger-nav .hamburger-nav__a:hover .hamburger-nav__dot {
  transform: scale(1) rotate(0.001deg);
  opacity: 1;
}

.hamburger-nav__toggle {
  transition: transform 0.7s cubic-bezier(0.5, 0.5, 0, 1);
  pointer-events: auto;
  cursor: pointer;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 3.5em;
  height: 3.5em;
  display: flex;
  position: absolute;
  top: 0;
  right: 0;
  transform: translate(0em, 0em) rotate(0.001deg);
}

[data-navigation-status=active] .hamburger-nav__toggle {
  transform: translate(-1em, 1em) rotate(0.001deg);
}

.hamburger-nav__toggle-bar {
  transition: transform 0.7s cubic-bezier(0.5, 0.5, 0, 1);
  background-color: var(--primary);
  width: 40%;
  height: 0.125em;
  position: absolute;
  transform: translateY(-0.15em) rotate(0.001deg);
}

.hamburger-nav__toggle:hover .hamburger-nav__toggle-bar {
  transform: translateY(0.15em) rotate(0.001deg);
}

[data-navigation-status=active] .hamburger-nav__toggle .hamburger-nav__toggle-bar {
  transform: translateY(0em) rotate(45deg);
}

.hamburger-nav__toggle .hamburger-nav__toggle-bar:nth-child(2) {
  transition: transform 0.7s cubic-bezier(0.5, 0.5, 0, 1);
  transform: translateY(0.15em) rotate(0.001deg);
}

.hamburger-nav__toggle:hover .hamburger-nav__toggle-bar:nth-child(2) {
  transform: translateY(-0.15em) rotate(0.001deg);
}

[data-navigation-status=active] .hamburger-nav__toggle .hamburger-nav__toggle-bar:nth-child(2) {
  transform: translateY(0em) rotate(-45deg);
}

.site-navigation__brand {
  display: inline-block;
}
.site-navigation__brand img {
  max-width: 260px;
}

.site-navigation__nav,
.site-navigation__editions {
  display: none;
}

@media all and (min-width: 1200px) {
  .site-navigation__nav {
    display: inline-flex;
    gap: 1.5rem;
    align-items: center;
  }
  .site-navigation__nav .nav-link {
    font-size: 1rem;
    position: relative;
    display: inline-flex;
    color: var(--secondary);
    text-transform: uppercase;
    align-items: center;
    font-weight: 700;
    padding: 0;
  }
  .site-navigation__nav .nav-link:before {
    content: "";
    position: absolute;
    bottom: 0em;
    left: 0;
    width: 100%;
    height: 0.1em;
    background: currentColor;
    transition: transform 0.735s cubic-bezier(0.625, 0.05, 0, 1);
    transform-origin: right;
    transform: scaleX(0) rotate(0.001deg);
  }
  .site-navigation__nav .nav-link.active {
    background: var(--white);
    padding: 0.8rem 1rem;
  }
  .site-navigation__nav .nav-link:not(.active):hover:before {
    transform-origin: left;
    transform: scaleX(1) rotate(0.001deg);
  }
  .site-navigation__mobile {
    display: none;
    pointer-events: none;
  }
}

/* -- Hero ------------------------------------*/
.site-hero .container {
  max-width: 100vw;
  width: 100vw;
  padding: 0;
}
.site-hero .hero-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-template-rows: min-content 4em 4em max-content;
  gap: 0;
}
.site-hero .hero-grid__title {
  grid-area: 3/1/5/5;
  z-index: 2;
  pointer-events: none;
}
.site-hero .hero-grid__media {
  position: relative;
  grid-area: 1/1/4/5;
  aspect-ratio: 16/10;
  z-index: 1;
}
.site-hero .hero-grid__media img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.site-hero .hero-grid__media .video__trigger {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  
  width: 5rem;
  height: 5rem;
  display: grid;
  background: var(--white);
  color: var(--secondary);
  place-items: center;
  border-radius: 100%;
}

.site-hero .hero-grid__media .video__trigger i {
  position: relative;
  left: .125rem;
  font-size: 1.75rem;
}

@media all and (min-width: 576px) {
  .site-hero .hero-grid {
    grid-template-columns: repeat(8, 1fr);
  }
  .site-hero .hero-grid__title {
    grid-area: 1/1/5/6;
    align-self: center;
  }
  .site-hero .hero-grid__media {
    grid-area: 1/3/5/9;
  }
}
@media all and (min-width: 992px) {
  .site-hero .container {
    margin-left: auto;
    margin-right: 0;
    padding: 0 0 0 calc(var(--bs-gutter-x) * 0.5);
  }
  .site-hero .hero-grid {
    grid-template-columns: repeat(8, 1fr);
    grid-template-rows: min-content;
  }
  .site-hero .hero-grid__title {
    grid-area: 1/1/2/6;
    align-self: start;
    margin-top: 3rem;
  }
  .site-hero .hero-grid__media {
    grid-area: 1/2/2/9;
  }
}
@media all and (min-width: 1200px) {
  .site-hero .container {
    width: 100%;
    max-width: var(--container-width);
    margin-right: auto;
    padding: 0 calc(var(--bs-gutter-x) * 0.5);
  }
  .site-hero .hero-grid {
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: min-content;
  }
  .site-hero .hero-grid__title {
    grid-area: 1/1/2/3;
    margin-top: clamp(3rem, 1.3333rem + 2.2222vw, 4rem);
  }
  .site-hero .hero-grid__media {
    grid-area: 1/2/2/5;
  }
}

/* -- Tiles ---------------------------------*/
.tile-vacancy {
  position: relative;
  background: var(--white);
  padding: clamp(1.125rem, 0.2083rem + 1.9097vw, 2.5rem);
  display: grid;
  grid-template-columns: 1fr max-content;
  grid-template-rows: 1fr min-content;
  gap: 2rem 0;
  height: 100%;
}
.tile-vacancy:after {
  content: "";
  background-image: url("../images/vacancy-title-element.svg");
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: clamp(0.562rem, 0.1033rem + 0.9556vw, 1.25rem);
  left: clamp(1.125rem, 0.2083rem + 1.9097vw, 2.5rem);
  width: calc(100% - clamp(1.125rem, 0.2083rem + 1.9097vw, 2.5rem));
  height: 65%;
  pointer-events: none;
  z-index: 0;
}
.tile-vacancy .tile__heading {
  z-index: 2;
  grid-column: span 2;
}
.tile-vacancy .tile__heading .tile__title {
  text-transform: uppercase;
  color: var(--secondary);
}
.tile-vacancy .tile__heading .tile__subtitle {
  text-transform: uppercase;
  font-size: clamp(1.125rem, 0.875rem + 0.5208vw, 1.5rem);
  color: var(--tertiary);
}
.tile-vacancy .tile__content {
  z-index: 2;
  grid-column: 2;
}
.tile-vacancy .tile__meta {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  margin-bottom: 1.5rem;
}
.tile-vacancy .tile__meta span {
  display: flex;
  gap: 0.5rem;
  align-items: center;
  font-weight: 700;
  color: var(--secondary);
}

.tile-open-application {
  position: relative;
  background: var(--secondary);
  color: var(--white);
  padding: clamp(1.125rem, 0.2083rem + 1.9097vw, 2.5rem);
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 1fr min-content;
  gap: 2rem 0;
}
.tile-open-application .tile__heading {
  z-index: 2;
  grid-column: span 2;
}
.tile-open-application .tile__heading .tile__title {
  text-transform: uppercase;
  color: var(--primary);
}
.tile-open-application .tile__footer {
  text-align: right;
}
.tile-open-application .tile__footer a {
  color: var(--primary);
  font-weight: 700;
  display: block;
}

.tile-article {
  position: relative;
  background: var(--white);  
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: max-content 1fr;
  gap: 0;
  height: 100%;
}

.tile-article .tile-media {
  aspect-ratio: 16/10;
}

  .tile-article .tile-media img {
    width: 100%;
    height: auto;
    object-fit: cover;
  }

.tile-article .tile-content {
  padding: clamp(1.125rem, 0.2083rem + 1.9097vw, 2.5rem);
}

.tile-step {
  display: grid;
  grid-template-columns: min-content 1fr;
  gap: 1rem;
  background: var(--primary);
  padding: 3rem 1.5em;
  height: 100%;
}
.tile-step .tile__icon {
  font-size: clamp(2rem, 0.6667rem + 2.7778vw, 4rem);
  padding: 0 1rem;
  align-self: center;
}
.tile-step .tile__content {
  padding-right: clamp(1rem, 0.6667rem + 0.6944vw, 1.5rem);
}
.tile-step .tile__content h6 {
  text-transform: uppercase;
}
.tile-step .tile__content *:last-child {
  margin-block-end: 0;
}

.contactpersonen {
  display: flex;
  gap: 4rem;
}

.tile-contactpersoon {
  display: grid;
  grid-template-columns: 1fr min-content;
  align-items: center;
  gap: 1rem;
  padding: 1rem 0;
}

.tile-contactpersoon--vertical {
  grid-template-columns: 1fr;
  grid-template-rows: min-content min-content;
}

.tile-contactpersoon .tile__content {
  flex: 1;
}
.tile-contactpersoon .tile__content span {
  display: block;
}
.tile-contactpersoon .tile__photo {
  aspect-ratio: 1;
}
.tile-contactpersoon .tile__photo img {
  width: 120px;
  height: 120px;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 100%;
}

/* -- Module-introductie ---------------*/
.module {
  padding: var(--spacing-md) 0;
}

.module-content__meta {
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--module-box__body, var(--secondary));
  text-transform: uppercase;
  letter-spacing: 0.125em;
}

.module-content__title {
  margin-block-start: 0;
  font-weight: 800;
  color: var(--module-box__title, var(--secondary));
}

.module-box {
  padding: 3rem 1.5rem;
  background: var(--module-box__bcg);
  color: var(--module-box__body);
}
.module-box__split {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
}
.module-box--primary {
  --module-box__bcg: var(--primary);
  --module-box__title: var(--secondary);
  --module-box__body: var(--secondary);
  --icon__bcg: var(--secondary);
  --icon__color: var(--white);
}
.module-box--secondary {
  --module-box__bcg: var(--secondary);
  --module-box__title: var(--primary);
  --module-box__body: var(--white);
  --icon__bcg: var(--primary);
  --icon__color: var(--secondary);
}

@media all and (min-width: 992px) {
  .module-box__split {
    grid-template-columns: 1fr 1fr;
    gap: 2rem;
  }
  .col-lg-5 .module-box {
    padding: 3rem 19.9995199923%;
  }
  .col-lg-8 .module-box {
    padding: 3rem 12.4996249962%;
  }
}

/* -- Module-vacancies -------------------*/
.module-vacancies {
  margin: var(--spacing-md) 0;
  padding: var(--spacing-lg) 0;
  overflow: hidden;
  background: var(--secondary);
}
.module-vacancies .swiper {
  overflow: visible;
}
.module-vacancies .swiper .swiper-slide {
  height: auto;
}
.module-vacancies .swiper-controls-wrapper {
  display: flex;
  justify-content: space-between;
  position: relative;
  margin-top: 1.5rem;
  align-items: center;
}
.module-vacancies .swiper-controls-wrapper .swiper-controls {
  position: relative;
  top: auto;
  left: auto;
  right: auto;
  bottom: auto;
}
.module-vacancies .swiper-controls-wrapper .link {
  text-transform: uppercase;
}

@media all and (min-width: 992px) {
  .module-vacancies {
    background: none;
    padding: 0;
  }
  .module-vacancies .container {
    position: relative;
    padding-block: 5rem;
  }
  .module-vacancies .container:before {
    content: "";
    position: absolute;
    top: 0;
    left: calc(var(--bs-gutter-x) * 0.5);
    width: calc(66.667% - var(--bs-gutter-x) * 0.5);
    height: 100%;
    background: var(--secondary);
    z-index: -1;
  }
  .module-vacancies .swiper-controls-wrapper {
    max-width: 60%;
  }
}

/* -- Module-bcg-image -----------------*/
.module-bcg-image .module-grid {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: min-content 3rem 3rem min-content;
  gap: 0;
}
.module-bcg-image .module-grid__content {
  grid-area: 3/1/5/2;
  z-index: 2;
}
.module-bcg-image .module-grid__media {
  grid-area: 1/1/4/2;
  aspect-ratio: 32/15;
  z-index: 1;
}
.module-bcg-image .module-grid__media img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

@media all and (min-width: 992px) {
  .module-bcg-image .module-grid {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: min-content min-content min-content;
    gap: 0px 0px;
  }
  .module-bcg-image .module-grid__content {
    grid-area: 1/1/4/2;
    align-self: center;
    z-index: 2;
  }
  .module-bcg-image .module-grid__media {
    grid-area: 1/1/4/2;
    aspect-ratio: 32/15;
    z-index: 1;
  }
  .module-bcg-image .module-grid__media img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}

/* -- Module-introduction --------------*/
.module-introduction {
  margin: var(--spacing-lg) 0;
}
.module-introduction .container {
  position: relative;
}
.module-introduction .content {
  position: relative;
  color: var(--white);
  padding: var(--spacing-lg) 0.75rem;
}
.module-introduction .content:before {
  content: "";
  position: absolute;
  top: 0;
  left: calc(50% - 50vw);
  width: 100vw;
  height: 100%;
  background: var(--secondary);
  z-index: -1;
}
.module-introduction .aside {
  padding: 0 0.75rem;
}

@media all and (min-width: 992px) {
  .module-introduction .content {
    position: relative;
    padding: var(--spacing-lg) 0;
  }
  .module-introduction .content:before {
    content: "";
    position: absolute;
    top: 0;
    left: calc(-1rem - 14.285224487%);
    width: calc(133% + 1.5rem);
  }
  .module-introduction .aside:has(.usps-wrapper) {
    padding: 0;
  }
  .module-introduction .aside:has(.usps-wrapper) .usps-wrapper {
    padding: 0 0 0 calc(0.5rem + 24.9992499925%);
  }
}
@media all and (min-width: 1400px) {
  .module-introduction .content:before {
    left: calc(-1.5rem - 14.285224487%);
  }
}

/* -- Module-content -------------------*/
.module-content {
  margin: var(--spacing-lg) 0;
}

/* -- Module-content-image -------------*/
.module-content-image {
  margin: var(--spacing-lg) 0;
}
.module-content-image .module__media {
  aspect-ratio: 16/10;
}
.module-content-image .module__media img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.module-content-image .module__media .swiper-slide {
  overflow: hidden;
  aspect-ratio: 16/10;
}

/* -- Module-steps ---------------------*/
.module-steps {
  margin: var(--spacing-md) 0;
  overflow: hidden;
}
.module-steps .swiper {
  width: 100%;
  overflow: visible;
}
.module-steps .swiper .swiper-slide {
  height: auto;
}

/* -- Module-form ----------------------*/
.module-form {
  margin: var(--spacing-md) 0;
}
.module-form .sticky-top {
  top: 2rem;
}

.module-form .form-wrapper {
  padding: 2rem 0;
}

@media all and (min-width: 1200px) {
  .module-form .form-wrapper {
    padding: 2rem 8.333%;
  }
}

/* -- Module-gallery -------------------*/
.module-gallery {
  margin: var(--spacing-md) 0;
  overflow: hidden;
}
.module-gallery .container {
  position: relative;
  padding-block: 5rem;
}
.module-gallery .container:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: calc(66.667% - var(--bs-gutter-x) * 0.5);
  height: 100%;
  background: var(--white);
  z-index: 1;
}
.module-gallery .swiper {
  width: 100%;
  overflow: visible;
}
.module-gallery .swiper-slide {
  overflow: hidden;
  aspect-ratio: 16/10;
}
.module-gallery .swiper-slide img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: all 0.5s;
  transform: scale(1.05);
}
.module-gallery .swiper-slide:hover img {
  transform: scale(1);
}
.module-gallery .swiper-controls {
  left: auto;
  right: 0;
  bottom: -5rem;
}

/* -- Module-articles ----------------------*/
.module-articles {
  margin: var(--spacing-md) 0;
  padding: var(--spacing-lg) 0;
  background: var(--secondary);
  overflow: hidden;
}

.module-articles .swiper--double {
  overflow: visible;
}

.module-articles .swiper--double .swiper-controls {
  position: static;
  margin-top: 1.5rem;
  justify-content: flex-end;
}

.module-articles .swiper--double .swiper-slide {
  height: auto;
}

@media all and (min-width: 992px) {
  .module-articles {  
    background: none;
    padding: 0;
  }
  .module-articles .container {
    position: relative;
    padding-top: 5rem;
  }
  .module-articles .container:before {
    content: "";
    position: absolute;
    top: 0;
    left: calc(var(--bs-gutter-x) * 0.5);
    width: calc(66.667% - var(--bs-gutter-x) * 0.5);
    height: 100%;
    max-height: 38rem;
    background: var(--secondary);
    z-index: -1;
  }
}

/* -- Overview-vacancies -------------------*/
.alert-wrapper {
  margin: var(--spacing-md) 0 0 0;
}

.alert-wrapper .alert {
	background: #fff;
	border-radius: 0;
	border: none;
	border-left: 5px solid #ffdb6f;
	text-align: center;
  margin: 0;
}
	
.alert-wrapper .alert p {
	font-size: 1.025rem;
	margin: 1rem 0;
}

.module-vacancies-overview,
.overview-vacancies {
  margin: var(--spacing-md) 0;
  padding: var(--spacing-lg) 0;
  background: var(--secondary);
}

.filter-wrapper {
  background: var(--primary);
  padding: clamp(1.125rem, 0.2083rem + 1.9097vw, 2.5rem);
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  flex-wrap: wrap;
}
.filter-wrapper .filters {
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
}

.filter-wrapper .facetwp-facet {
  margin: 0;
}

.filter-wrapper .filters .filter .selectpicker {
	position: relative;
	font-weight: 700;
  color: var(--secondary);
	border: 2px solid var(--secondary);
	border-radius: 0;
	height: 100%;
  width: 100%;
	padding: 0.5rem 2.75rem 0.5rem 1.25rem;
	overflow: hidden;
}

.filter-wrapper .filters .filter .selectpicker::after {
  content: '\f107';
  font-family: "Font Awesome 6 Pro";
  font-weight: 400;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: .5rem;
}

.filter-wrapper .filters .filter .selectpicker select {
	width: calc(100% + 3rem);
	height: 100%;
  color: var(--secondary);
  font-weight: 700;
	background: none;
	border: none;
	border-radius: 0;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
}

.filter-wrapper .filters .filter .selectpicker select:disabled{
	background: rgba(0,66,94,0.1);
}

.filter-wrapper .facetwp-facet-resetten a {
  font-weight: 700;
  color: var(--secondary);
}


.grid-vacancies {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
}
@media all and (min-width: 1200px) {
  .grid-vacancies {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media all and (min-width: 992px) {
  .module-vacancies-overview,
  .overview-vacancies {
    background: none;
    padding: 0;
  }
  .module-vacancies-overview .container,
  .overview-vacancies .container {
    position: relative;
    padding-block: 5rem;
  }
  .module-vacancies-overview .container:before,
  .overview-vacancies .container:before {
    content: "";
    position: absolute;
    top: 0;
    left: calc(var(--bs-gutter-x) * 0.5);
    width: calc(66.667% - var(--bs-gutter-x) * 0.5);
    height: 100%;
    max-height: 38rem;
    background: var(--secondary);
    z-index: -1;
  }
}

/* -- Footer ----------------------------------*/
.site-footer {
  position: relative;
}
.site-footer__whatsapp {
  padding: 4rem 0;
}
.site-footer .whatsapp {
  display: flex;
  justify-content: center;
  gap: 0.5rem;
  margin: 1.5rem 0;
}
.site-footer .whatsapp__smile {
  width: 3.75rem;
  height: 3.75rem;
  display: grid;
  background: var(--white);
  color: var(--secondary);
  place-items: center;
  border-radius: 100%;
}
.site-footer .whatsapp__smile i {
  font-size: 2.5rem;
}
.site-footer .whatsapp__link {
  width: 3.75rem;
  height: 3.75rem;
  display: grid;
  background: #23D366;
  color: var(--white);
  place-items: center;
  border-radius: 100%;
  transition: all 0.5s;
}
.site-footer .whatsapp__link i {
  font-size: 2.188rem;
}
.site-footer .whatsapp__link:hover {
  transform: scale(1.1);
}
.site-footer__top {
  padding: 5rem 0;
  background: var(--secondary);
}
.site-footer .footer-socials {
  display: flex;
  align-items: center;
  color: var(--white);
  gap: 2.5rem;
  margin-top: 2rem;
}
.site-footer .footer-socials__desc .title {
  display: block;
  font-weight: 700;
  text-transform: uppercase;
}
.site-footer .footer-socials__links {
  display: flex;
  gap: 0.5rem;
}
.site-footer .footer-brand {
  width: 100%;
  height: auto;
  max-width: 260px;
}
.site-footer__bottom {
  background: var(--quaternary);
}
.site-footer__bottom .container {
  background: var(--quaternary);
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}
.site-footer__bottom span {
  display: block;
  font-size: 1rem;
  color: rgba(255, 255, 255, 0.6);
}
.site-footer__bottom span a {
  color: rgba(255, 255, 255, 0.6);
}
.site-footer__bottom span a:hover {
  color: rgb(255, 255, 255);
}

@media all and (min-width: 992px) {
  .site-footer__bottom {
    background: var(--secondary);
  }
}

#external-disclaimer--clone,
#external-disclaimer {
  max-width: 520px;
  border-radius: 3rem;
  color: var(--secondary);
  padding: 3rem 5rem;
}
/*# sourceMappingURL=stylesheet.css.map */