:root {
  --black: rgb(0,0,0);
  --white: rgb(255,255,255);
  --light: rgb(236,236,230);
  --blue: rgb(125,152,161);
  --bs-border-radius: 2rem;
}

html {
  font-size: 15px;
}

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

body {
  font-family: "Geologica", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-variation-settings: "slnt" 0, "CRSV" 0, "SHRP" 0;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: var(--dark);
  background: var(--dark);
  scroll-behavior: smooth;
}

/* -- Container ----------------------------*/
@media all and (min-width: 1500px) {
  html {
    font-size: 16px;
  }
  .container {
    max-width: 1440px;
  }
}
@media all and (min-width: 1700px) {
  .container {
    max-width: 1640px;
  }
}
/* -- Fonts --------------------------------*/
.fw-300 {
  font-weight: 300;
}

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

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

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

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

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

span.ts-1,
span.ts-2,
span.ts-3,
span.ts-4,
span.ts-5,
span.ts-6 {
  display: block;
}

.ts-1,
.ts-2,
.ts-3,
.ts-4,
.ts-5,
.ts-6 {
  line-height: 1;
  text-wrap: balance;
}

.ts-1 {
  font-size: clamp(3rem, 2.1513rem + 2.3739vw, 5rem);
}

.ts-2 {
  font-size: clamp(2.4rem, 2.1231rem + 1.2308vw, 3rem);
}

.ts-3 {
  font-size: clamp(1.9rem, 1.9154rem + 0.8205vw, 2.5rem);
}

.ts-4 {
  font-size: clamp(1.8rem, 1.7077rem + 0.4103vw, 2rem);
}

.ts-5 {
  font-size: clamp(1.6rem, 1.5308rem + 0.3077vw, 1.75rem);
}

.ts-6 {
  font-size: clamp(1.4rem, 1.3538rem + 0.2051vw, 1.5rem);
}

.ts-small {
  font-size: 0.9rem;
}

p {
  line-height: 1.6;
}

p + p {
  margin-top: 1rem;
}

.section--over-ons p a {
  color: inherit;
}

.section--over-ons ul li a {
  color: inherit;
}

p.lead {
  font-weight: 500;
  line-height: 1.4;
}

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

/* -- Buttons -------------------------------*/
.button {
  display: inline-flex;
  flex-shrink: 0;
  align-items: center;
  font-size: 1.125rem;
  text-decoration: none;
  border-radius: 3rem;
  border: 2px solid var(--button-outline);
  padding: 0.35rem 0.35rem 0.35rem 1.75rem;
  background-color: var(--button-bcg);
  color: var(--button-color);
  transition: ease-out 0.4s;
  box-shadow: inset 0 0 0 0 var(--button-outline);
}
.button:hover {
  box-shadow: inset 400px 0 0 0 var(--button-outline);
}
.button__arrow {
  display: inline-grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border-radius: 100%;
  color: var(--button-arrow-color);
  background: var(--button-arrow-bcg);
  margin-left: 0.75rem;
}

.button-social {
  display: grid;
  place-items: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 100%;
  color: #000;
  background: #A5A5A1;
  text-decoration: none;
}
.button-social:hover {
  color: #000;
  background: #fff;
}

.button--black {
  --button-bcg: transparent;
  --button-color: rgb(0,0,0);
  --button-outline: rgb(0,0,0);
  --button-arrow-bcg: rgb(236,236,230);
  --button-arrow-color: rgb(0,0,0);
}

.button--black:hover {
  --button-color: rgb(255,255,255);
  --button-arrow-bcg: rgb(125,152,161);
  --button-arrow-color: rgb(255,255,255);
  box-shadow: inset 400px 0 0 0 var(--button-outline);
}

.button--white {
  --button-bcg: transparent;
  --button-color: rgb(255,255,255);
  --button-outline: rgb(255,255,255);
  --button-arrow-bcg: rgb(236,236,230);
  --button-arrow-color: rgb(0,0,0);
}

.button--white:hover {
  --button-color: rgb(0,0,0);
  --button-arrow-bcg: rgb(125,152,161);
  --button-arrow-color: rgb(255,255,255);
}

.button--blue {
  --button-bcg: rgb(125,152,161);
  --button-color: rgb(255,255,255);
  --button-outline: rgb(125,152,161);
  --button-arrow-bcg: rgb(255,255,255);
  --button-arrow-color: rgb(125,152,161);
}

.button--blue:hover {
  --button-outline: rgb(0,0,0);
  --button-arrow-color: rgb(0,0,0);
}

.language {
  display: flex;
  gap: 0.5rem;
}
.language__button {
  display: grid;
  place-items: center;
  width: 42px;
  border: 2px solid var(--white);
  color: var(--white);
  aspect-ratio: 1;
  border-radius: 1rem;
  text-decoration: none;
  text-transform: uppercase;
}
.language__button:hover {
  color: var(--black);
  background: var(--white);
}
.language__button.active {
  color: var(--black);
  background: var(--white);
  border-radius: 100%;
}

@media all and (min-width: 768px) {
  .language {
    gap: 0.75rem;
  }
  .language__button {
    width: 55px;
  }
}
/* -- Links ---------------------------------*/
.link--black {
  color: var(--black);
}

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

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

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

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

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

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

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

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

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

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

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

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

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

/* -- Navigation ------------------------*/
.navigation {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 3rem;
  padding-bottom: 3rem;
}

.navigation__logo {
  display: block;
  max-width: 240px;
}

.menu-trigger {
  position: relative;
  text-decoration: none;
}
.menu-trigger__icon {
  position: relative;
  display: grid;
  place-items: center;
  width: 3.333rem;
  height: 3.333rem;
  border-radius: 100%;
  font-size: 1.65rem;
  color: var(--green);
  background: var(--light);
  box-shadow: 0px 0px 1rem 0px rgba(0, 0, 0, 0.25);
  transition: all 0.25s;
  z-index: 1;
}
.menu-trigger.is-active .menu-trigger__icon, .menu-trigger:hover .menu-trigger__icon {
  color: var(--light);
  background: var(--green);
}

.menu-trigger.is-active {
  z-index: 999;
}
.menu-trigger.is-active .menu-trigger__icon {
  color: var(--light);
  background: var(--dark);
}
.menu-trigger.is-active .menu-trigger__icon .fa-bars:before {
  content: "\f00d";
}

.navigation-menu {
  display: none;
  opacity: 0;
  animation: fadeInOut 0.6s ease-in-out;
}

.navigation-menu.is-open {
  display: flex;
  align-items: center;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: 888;
  padding: 3rem;
  opacity: 1;
  background: var(--green);
}

.menu {
  display: flex;
  flex-direction: column;
  list-style: none;
  gap: 3rem;
}
.menu__link {
  position: relative;
  font-size: 2.222rem;
  font-weight: 700;
  color: var(--light);
  text-decoration: none;
  text-transform: lowercase;
}
.menu__link:before {
  background-color: var(--light);
  bottom: -0.1em;
  content: "";
  height: 0.1em;
  left: 0;
  min-height: 1px;
  position: absolute;
  right: 0;
  transform: scaleX(0);
  transform-origin: right;
  transition: transform 0.75s cubic-bezier(0.19, 1, 0.22, 1);
}
.menu__link:hover:before {
  transform: scaleX(1);
  transform-origin: left;
}

@keyframes fadeInOut {
  0% {
    opacity: 0;
    display: none;
  }
  100% {
    opacity: 1;
    display: block;
  }
}
@media all and (min-width: 992px) {
  .navigation__logo {
    max-width: 280px;
  }
  .menu-trigger {
    display: none;
  }
  .navigation-menu {
    display: flex;
    opacity: 1;
    animation: none;
  }
  .menu {
    flex-direction: row;
    transition: all 0s;
  }
  .menu__link {
    font-size: 1rem;
    font-weight: 700;
    color: var(--light);
    text-decoration: none;
  }
}
@media all and (min-width: 1400px) {
  .navigation__logo {
    max-width: 360px;
  }
}
/* -- Tiles ---------------------------------*/
.tile--dienst {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 1fr max-content;
  gap: 1.5rem;
  height: 100%;
}
.tile--dienst .tile-media {
  position: relative;
  aspect-ratio: 3/4;
  border-radius: 2rem;
  overflow: hidden;
}
.tile--dienst .tile-media img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.5s;
}
.tile--dienst .tile-body {
  display: flex;
  gap: 1.5rem;
  padding: 2rem;
  border-radius: 2rem;
  color: var(--tile-body-color);
  background: var(--tile-body-bcg);
}
.tile--dienst .tile-body .tile__arrow {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border-radius: 1rem;
  font-size: 1.125rem; 
  background: var(--tile-arrow-bcg);
  color: var(--tile-arrow-color);
  flex-shrink: 0;
}
.tile--dienst .tile-body .tile__title {
  font-weight: 700;
}
.tile--dienst .tile-body p:last-of-type {
  margin: 0;
}

.tile--dienst.tile--black {
  --tile-body-color: var(--white);
  --tile-body-bcg: var(--black);
  --tile-arrow-color: var(--black);
  --tile-arrow-bcg: var(--white);
}

.tile--dienst.tile--blue {
  --tile-body-color: var(--white);
  --tile-body-bcg: var(--blue);
  --tile-arrow-color: var(--black);
  --tile-arrow-bcg: var(--white);
}

.tile--dienst.tile--light {
  --tile-body-color: var(--black);
  --tile-body-bcg: var(--light);
  --tile-arrow-color: var(--white);
  --tile-arrow-bcg: var(--blue);
}

.tile--person .tile-media {
  position: relative;
  aspect-ratio: 3/3.25;
  border-radius: 2rem;
  overflow: hidden;
}
.tile--person .tile-media img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.5s;
}
.tile--person .tile-label {
  position: absolute;
  bottom: 1.5rem;
  left: 1.5rem;
  background: #fff;
  padding: 0.5rem 1rem;
  border-radius: 2rem;
}
.tile--person .person__function {
  color: var(--blue);
  display: none;
  opacity: 0;
  transition: opacity 0.5s, display 0.5s;
}
.tile--person:hover .tile-media img {
  transform: scale(1.05);
}
.tile--person:hover .person__function {
  display: inline-block;
  opacity: 1;
}
@starting-style {
  .tile--person:hover .person__function {
    opacity: 0;
  }
}

.tile--step {
  display: flex;
  gap: 1.5rem;
  padding: 2rem;
  border-radius: 2rem;
  color: var(--tile-body-color);
  background: var(--tile-body-bcg);
  align-items: center;
  min-width: 320px;
  aspect-ratio: 4/2.5;
}
.tile--step .tile__arrow {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border-radius: 1rem;
  font-size: 1.125rem;
  background: var(--tile-arrow-bcg);
  color: var(--tile-arrow-color);
  flex-shrink: 0;
}
.tile--step .tile__title {
  font-weight: 700;
}


@media all and (min-width: 992px) {
  .tile--flip {
    grid-template-rows: max-content 1fr;
  }
  .tile--flip .tile-media {
    order: 1;
  }
  .tile--flip .tile-body {
    order: 2;
  }
  
  .tile--dienst .tile-body .tile__arrow,
  .tile--step .tile__arrow {
    width: 60px;
    height: 60px;
    border-radius: 1rem;
    font-size: 1.25rem;
  }
}
/* -- Header ------------------------------*/
.header {
  --clip-size: 1rem;
  --clip-border: 1.5rem;
  position: relative;
  background: var(--white);
}

.header__overlay {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  background: var(--white);
  z-index: 9999;
}

.header--frontpage {
  height: 100vh;
  min-height: 560px;
}

.header--subpage {
  background: var(--black);
  padding: 3rem 0;
}

.header-navigation {
  position: absolute;
  top: 4rem;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1.5rem;
  width: 100%;
  height: auto;
  z-index: 3;
}

.header--subpage .header-navigation {
  position: relative;
  top: 0;
  left: 0;
  transform: translateX(0);
}

.header-navigation .d-flex {
  gap: 0.75rem;
}
.header-navigation .button {
  display: none;
}
.header-content {
  position: relative;
  display: flex;
  height: 100%;
  z-index: 2;
}
.header-background {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 0;
}
.header-background:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background: rgba(19, 34, 39, 0.5);
  background-blend-mode: multiply;
  z-index: 10;
}
.header-background > * {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  z-index: 3;
}


.header__brand {
  position: relative;
  height: 100%;
}
.header__brand:before {
  content: "";
  height: 5px;
  width: 500px;
  background: #fff;
  position: absolute;
  top: 50%;
  transform: translateY(calc(-50% - 1px));
  right: calc(100% + 0.5rem);
  pointer-events: none;
}

@media all and (min-width: 992px) {
  .header-navigation .button {
    display: inline-block;
  }
}
/* -- Sections ----------------------------*/
.section {
  padding: 3rem 0;
}

.section__wrapper {
  position: relative;
  border-radius: 3rem;
  padding: 3rem 1.5rem;
  overflow: hidden;
  background: var(--wrapper-bcg);
}
.section__wrapper .row {
  position: relative;
  z-index: 1;
}
.section__wrapper:after {
  content: "";
  position: absolute;
  width: 100vw;
  height: 100vh;
  background: radial-gradient(circle closest-side, rgb(125, 152, 161), rgba(125, 152, 161, 0) 100%);
  z-index: 1;
  right: 25%;
  top: -10%;
  pointer-events: none;
  z-index: 0;
}

@media all and (min-width: 992px) {
  .section {
    padding: 4rem 0;
  }
}
@media all and (min-width: 1200px) {
  .section {
    padding: 5rem 0;
  }
}
@media all and (min-width: 1500px) {
  .section {
    padding: 6rem 0;
  }
}
/* -- Section--vacatures ----------------------------*/

/* -- Grid -- */

.container-grid--vacature {
	display: grid;
	grid-template-columns: repeat(24, 1fr);
	align-items: center;
}
.vacature-grid--image {
	grid-column: 1 / 25;
}

.vacature-grid--text {
  position: relative;
  margin-top: -3.5rem;
	grid-column: 2 / 24;
}
.vacature-grid--text a {
	text-decoration: none;
}

@media all and (min-width: 992px) {
	.container-grid--vacature {
		grid-template-columns: repeat(12, 1fr);
		grid-template-rows: auto;
	}
	.vacature-grid--image {
		grid-column: 1 / 7;
		grid-row: 1;
	}
	.vacature-grid--text {
		grid-column: 6 / 13;
		grid-row: 1;
    margin-top: 0;
	}
	
}

/* -- Einde Grid -- */

.section--vacatures {
	overflow: hidden;
}

.swiper--vacatures {
  --swiper-pagination-bullet-width: 12px;
  --swiper-pagination-bullet-height: 12px;
  --swiper-pagination-bullet-inactive-color: #272728;
  --swiper-theme-color: #7D98A1;
	overflow: hidden;
}

.vacature-card {
	position: relative;
	
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
	padding: clamp(2rem, 4vw, 3.75rem);
	padding-right: clamp(5rem, 8vw, 6.875rem);

	color: var(--white);
	border-radius: 2rem;

	font-size: 1rem;
	line-height: 1.5rem;	
	
	background:
		linear-gradient(
			to right,
			#7D98A1 0%,
			#7D98A1 50%,
			#272728 50%,
			#272728 100%
		);
	background-size: 200% 100%;
	background-position: 100% 0;

	transition: background-position .45s ease;
}

.container-grid--vacature:hover .vacature-card {
	background-position: 0 0;
}

.vacature-image--wrapper {
	position: relative;
	aspect-ratio: 4 / 3.5;
	border-radius: 2rem;
	overflow: hidden;
}

.vacature-media {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .35s ease;
}
.container-grid--vacature:hover .vacature-grid--image img {
	transform: scale(1.05);
}

.vacature-title {
	margin-bottom: 27px;
}

.vacature-icon {
	position: absolute;
	right: 2rem;
	bottom: 2rem;
	
	height: 60px;
	width: 60px;
	
	border-radius: 50%;
	background: #E3E3E3;
	color: #272728;

	display: flex;
	align-items: center;
	justify-content: center;

	flex-shrink: 0;

	transition: background-color .35s ease, color .35s ease;
}

.container-grid--vacature:hover .vacature-icon {
	background: #272728;
	color: #E3E3E3;
}

.vacature-icon i {
	font-size: 1.25rem;
	transition: transform .35s ease;
}

.container-grid--vacature:hover .vacature-icon i {
	transform: rotate(-45deg);
}

.vacatures-pagination {
	position: static;
	margin-top: 1rem;
	width: 100%;
	text-align: center;
}


/* -- Section--over-ons -------------------*/
.steps-row {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 1.5rem;
}

.steps-row + .steps-row {
  margin-top: 1.5rem;
}

.steps-row .tile--step:nth-of-type(odd) {
  --tile-body-color: var(--black);
  --tile-body-bcg: var(--light);
  --tile-arrow-color: var(--white);
  --tile-arrow-bcg: var(--blue);
}

.steps-row .tile--step:nth-of-type(even) {
  --tile-body-color: var(--white);
  --tile-body-bcg: var(--blue);
  --tile-arrow-color: var(--black);
  --tile-arrow-bcg: var(--white);
}

/* -- Section--werkwijze ------------------*/
.section--werkwijze {
  --wrapper-bcg: var(--black);
}

.bento {
  position: relative;
  z-index: 2;
}
.bento-grid {
  margin-top: 2rem;
}

.bento-grid {
  margin-top: 2rem;
}

@media all and (min-width: 1500px) {
  .bento {
    display: grid;
    grid-template-columns: max-content max-content 1fr;
    grid-template-rows: min-content min-content;
    gap: 0 1rem;
  }
  .bento-title {
    grid-area: 1/1/2/3;
    margin-top: 2rem;
  }
  .bento-grid {
    grid-area: 1/2/3/4;
    margin-top: 0;
  }
}
/* -- Section--faq ------------------------*/
.section--faq {
  --wrapper-bcg: var(--light);
}

.accordion-button {
  font-weight: 500;
  font-size: 1.25rem;
  background: #272728;
  color: var(--white);
  border-radius: 1.5rem !important;
  padding: 1rem 1.5rem 1rem 2.5rem;
  box-shadow: none;
  outline: 0;
}
.accordion-button:focus {
  box-shadow: none;
}

.accordion-button:not(.collapsed) {
  background: #000;
  color: var(--white);
  border: none;
  box-shadow: none;
  outline: 0;
}

.accordion-button::after {
  content: "\f061";
  display: grid;
  place-items: center;
  font-family: "Font Awesome 6 Pro";
  font-weight: 300;
  flex-shrink: 0;
  width: 48px;
  height: 48px;
  margin-left: auto;
  background: #000;
  border-radius: 100%;
  color: #fff;
}

.accordion-button:not(.collapsed)::after {
  color: #000;
  background: #E3E3E3;
  transform: rotate(45deg);
}

.accordion-item {
  border: none;
  margin-top: 1rem;
  background: #000;
  border-radius: 1.5rem !important;
}

.accordion-item:first-of-type {
  margin-top: 0;
}

.accordion-body {
  padding: 0 2.5rem 2.5rem 2.5rem;
  color: rgba(255, 255, 255, 0.6);
}

@media all and (min-width: 992px) {
  .accordion-button::after {
    width: 60px;
    height: 60px;
  }
}

/* -- Section--diensten -------------------*/
.section--diensten .col-lg-4:nth-child(1) .tile--dienst {
  --tile-body-color: var(--white);
  --tile-body-bcg: var(--black);  --tile-body-color: var(--white);
  --tile-body-bcg: var(--black);
  --tile-arrow-color: var(--black);
  --tile-arrow-bcg: var(--white);
  --tile-arrow-color: var(--black);
  --tile-arrow-bcg: var(--white);
}

.section--diensten .col-lg-4:nth-child(2) .tile--dienst {
  --tile-body-color: var(--white);
  --tile-body-bcg: var(--blue);
  --tile-arrow-color: var(--black);
  --tile-arrow-bcg: var(--white);
}

.section--diensten .col-lg-4:nth-child(3) .tile--dienst {
  --tile-body-color: var(--black);
  --tile-body-bcg: var(--light);
  --tile-arrow-color: var(--white);
  --tile-arrow-bcg: var(--blue);
}

/* -- Section--team -----------------------*/
.section--team {
  overflow: hidden;
}

.swiper--team {
  overflow: visible;
  z-index: 1;
}

@media all and (min-width: 1200px) {
  .section--team {
    position: relative;
  }
  .section--team .col-xl-3 {
    position: relative;
    z-index: 3;
  }
  .section--team:before {
    content: "";
    height: 100%;
    background: var(--white);
    position: absolute;
    top: 0;
    left: 0;
    width: calc((100vw - 1140px) / 2 + 285px);
    z-index: 2;
  }
}
@media all and (min-width: 1400px) {
  .section--team:before {
    width: calc((100vw - 1320px) / 2 + 330px);
  }
}
@media all and (min-width: 1500px) {
  .section--team:before {
    width: calc((100vw - 1440px) / 2 + 360px);
  }
}
@media all and (min-width: 1700px) {
  .section--team:before {
    width: calc((100vw - 1640px) / 2 + 410px);
  }
}

/* -- Section--partners -------------------*/


/* -- Section--contact --------------------*/

.hide--label label.gfield_label,
.hide--label legend.gfield_label_before_complex {
  display: none !important;
  visibility: hidden !important;
}

.ginput_container_consent input[type=checkbox],
.form-check-input[type=checkbox],
.gfield-choice-input[type=radio] {
  border-radius: 100%;
  background: none;
  box-shadow: none;
  cursor: pointer;
  width: 1em;
  height: 1em;
  margin-top: .25em;
  vertical-align: top;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  -webkit-print-color-adjust: exact;
  color-adjust: exact;
  print-color-adjust: exact;
}

.gfield-choice-input[type=radio],
.ginput_container_consent input[type=checkbox],
.form-check-input--primary {
  border: 1px solid #461861;
}

.gfield-choice-input[type=radio]:checked,
.ginput_container_consent input[type=checkbox]:checked,
.form-check-input--primary:checked[type=checkbox],
.form-check-input--primary:checked {
  background: #461861;
  border-color: #461861;
}

.gfield-choice-input[type=radio]:active,
.gfield-choice-input[type=radio]:focus,
.ginput_container_consent input[type=checkbox]:active,
.ginput_container_consent input[type=checkbox]:focus,
.form-check-input--primary:active,
.form-check-input--primary:focus {
  border-color: #461861;
}

.footer .ginput_container_consent input[type=checkbox],
.form-check-input--white {
  border: 1px solid #fff;
}

.footer .ginput_container_consent input[type=checkbox]:checked,
.form-check-input--white:checked[type=checkbox],
.form-check-input--white:checked {
  background: #fff;
  border-color: #fff;
}

.footer .ginput_container_consent input[type=checkbox]:active,
.footer .ginput_container_consent input[type=checkbox]:focus,
.form-check-input--white:active,
.form-check-input--white:focus {
  border-color: #fff;
}

.gform_wrapper.gravity-theme .ginput_product_price_wrapper {
  display: block !important;
  margin-bottom: 1rem !important;
}

.gform_required_legend {
  display: none;
}

.gfield_consent_label,
.form-check-label {
  font-size: 0.9rem;
}
.gfield_consent_label a,
.form-check-label a {
  color: inherit;
  text-decoration: underline;
}
.gfield_consent_label a:hover,
.form-check-label a:hover {
  text-decoration: none;
}

.gform_wrapper.gravity-theme #field_submit, .gform_wrapper.gravity-theme .gform_footer {
  display: flex;
  justify-content: flex-end;
}

.ginput_container textarea,
.ginput_container input {
  border: none;
  border-bottom: 2px solid #000;
  outline: 0;
  box-shadow: none;
  padding: 0.5rem 0rem !important;
}

.ginput_container_select .medium, 
.ginput_container_select .large,
.ginput_container .medium
.ginput_container .large,
.form-control {
  display: block;
  width: 100%;
  padding: 0.5rem 0;
  border-radius: 0;
  box-shadow: none;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ced4da;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}

.ginput_container .medium,
.ginput_container .medium:active,
.ginput_container .medium:focus,
.ginput_container .medium:focus-visible,
.ginput_container .large,
.ginput_container .large:active,
.ginput_container .large:focus,
.ginput_container .large:focus-visible,
.ginput_container_select .medium,
.ginput_container_select .medium:active,
.ginput_container_select .medium:focus,
.ginput_container_select .medium:focus-visible,
.ginput_container_select .large,
.ginput_container_select .large:active,
.ginput_container_select .large:focus,
.ginput_container_select .large:focus-visible,
.form-control,
.form-control:active,
.form-control:focus,
.form-control:focus-visible {
  padding: 0.5rem 0 !important;
  border-radius: 0;
  box-shadow: none;
  outline: 0;
}

.footer .ginput_container .large,
.footer .ginput_container .large:active,
.footer .ginput_container .large:focus,
.footer .ginput_container .large:focus-visible,
.form-control--white,
.form-control--white:active,
.form-control--white:focus,
.form-control--white:focus-visible {
  color: #fff;
  border: 1px solid #fff;
  background: none;
  outline: 0;
}

.gform_wrapper .gform_validation_errors,
.gform_wrapper .gform_validation_errors:focus,
.gform_wrapper .gform_validation_errors:active,
.gform_wrapper .gform_validation_errors:focus-visible {
  border: none !important;
  border-radius: 0 !important;
  margin-bottom: 1rem !important;
  outline: 0 !important;
  box-shadow: none !important;
}

.gfield_validation_message {
  display: none !important;
}


@media all and (min-width: 992px) {
  .section__wrapper {
    padding: 3rem 8.3333%;
  }
}



/* -- Footer ----------------------------------*/
.footer__main {
  position: relative;
  padding: 8rem 0;
  overflow: hidden;
}
.footer__main:after {
  content: "";
  position: absolute;
  width: 100vw;
  height: 100vh;
  background: radial-gradient(circle closest-side, rgb(125, 152, 161), rgba(125, 152, 161, 0) 100%);
  z-index: 1;
  right: 35%;
  top: 5%;
  pointer-events: none;
  z-index: 0;
}
.footer__main .container {
  position: relative;
  z-index: 1;
}

.footer__brand {
  display: inline-block;
  position: relative;
  padding-right: 3rem;
}
.footer__brand:before {
  content: "";
  height: 5px;
  width: 500px;
  background: #fff;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: calc(100% + 0.5rem);
  pointer-events: none;
}

.footer__address {
  color: rgba(255, 255, 255, 0.7);
  line-height: 1.8;
}
.footer__address a {
  color: rgba(255, 255, 255, 0.7);
  text-decoration: none;
}
.footer__address a:hover {
  color: rgb(255, 255, 255);
}

.footer__base {
  padding: 1.25rem;
}
.footer__base span {
  color: rgba(255, 255, 255, 0.4);
}
.footer__base a {
  color: rgba(255, 255, 255, 0.4);
  text-decoration: none;
}
.footer__base a:hover {
  color: rgba(255, 255, 255, 0.8);
}/*# sourceMappingURL=stylesheet.css.map */