/*
Theme Name: Dickhof
Theme URI: 
Description: Wordpress thema voor Dickhof
Author: Comceptum
Author URI: http://comceptum.nl
Version: 1.0
License: GNU General Public License
License URI: licence/GPL.txt
Text Domain: 
*/

:root  {
    --base: 15px;
    --massive: calc(var(--base) * 24);
    --gigantic: calc(var(--base) * 15);
    --huge: calc(var(--base) * 8);
    --extralarge: calc(var(--base) * 6);
    --largehuge: calc(var(--base) * 5);
    --large: calc(var(--base) * 4);
    --mediumlarge: calc(var(--base) * 3);
    --medium: max(30px, calc(var(--base) * 2.5));
    --smallmedium: max(22.5px, calc(var(--base) * 2));
    --small: max(15px, calc(var(--base) * 1.5));
    --extrasmall: max(10px, calc(var(--base) * 1));
    --tiny: max(7.5px, calc(var(--base) * 0.675));


    --massive-negative: calc(var(--base) * -24);
    --gigantic-negative: calc(var(--base) * -15);
    --huge-negative: calc(var(--base) * -8);
    --extralarge-negative: calc(var(--base) * -6);
    --largehuge-negative: calc(var(--base) * -5);
    --large-negative: calc(var(--base) * -4);
    --mediumlarge-negative: calc(var(--base) * -3);
    --medium-negative: min(-30px, calc(var(--base) * -2.5));
    --smallmedium-negative: min(-22.5px, calc(var(--base) * -2));
    --small-negative: min(-15px, calc(var(--base) * -1.5));
    --extrasmall-negative: min(-10px, calc(var(--base) * -1));
    --tiny-negative: min(-7.5px, calc(var(--base) * -0.75));

    --container: 1240px;

    --border-radius: 20px;
    

    --color-primary: #6EDBF0; /* 110 219 240 */
    --color-secondary: #1E3050; /* 30 48 80 */
    --color-tertiary: #DD3429; /* 221 52 41 */
    --color-text: #1A1A1A;

}


@font-face {
  font-family: "Epilogue";
  src: url("./fonts/Epilogue-VariableFont_wght.woff2") format("woff2"),
       url("./fonts/Epilogue-VariableFont_wght.ttf") format("truetype");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Epilogue";
  src: url("./fonts/Epilogue-Italic-VariableFont_wght.woff2") format("woff2"),
       url("./fonts/Epilogue-Italic-VariableFont_wght.ttf") format("truetype");
  font-weight: 100 900;
  font-style: italic;
  font-display: swap;
}

@font-face {
    font-family: 'Font Awesome 7 Brands';
    src: url('fonts/FontAwesome7Brands-Regular.eot');
    src: url('fonts/FontAwesome7Brands-Regular.eot?#iefix') format('embedded-opentype'),
        url('fonts/FontAwesome7Brands-Regular.woff2') format('woff2'),
        url('fonts/FontAwesome7Brands-Regular.woff') format('woff'),
        url('fonts/FontAwesome7Brands-Regular.ttf') format('truetype'),
        url('fonts/FontAwesome7Brands-Regular.svg#FontAwesome7Brands-Regular') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Font Awesome 7 Pro';
    src: url('fonts/FontAwesome7Pro-Regular.eot');
    src: url('fonts/FontAwesome7Pro-Regular.eot?#iefix') format('embedded-opentype'),
        url('fonts/FontAwesome7Pro-Regular.woff2') format('woff2'),
        url('fonts/FontAwesome7Pro-Regular.woff') format('woff'),
        url('fonts/FontAwesome7Pro-Regular.ttf') format('truetype'),
        url('fonts/FontAwesome7Pro-Regular.svg#FontAwesome7Pro-Regular') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Font Awesome 7 Pro';
    src: url('fonts/FontAwesome7Pro-Light.eot');
    src: url('fonts/FontAwesome7Pro-Light.eot?#iefix') format('embedded-opentype'),
        url('fonts/FontAwesome7Pro-Light.woff2') format('woff2'),
        url('fonts/FontAwesome7Pro-Light.woff') format('woff'),
        url('fonts/FontAwesome7Pro-Light.ttf') format('truetype'),
        url('fonts/FontAwesome7Pro-Light.svg#FontAwesome7Pro-Light') format('svg');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Font Awesome 7 Pro Solid';
    src: url('fonts/FontAwesome7Pro-Solid.eot');
    src: url('fonts/FontAwesome7Pro-Solid.eot?#iefix') format('embedded-opentype'),
        url('fonts/FontAwesome7Pro-Solid.woff2') format('woff2'),
        url('fonts/FontAwesome7Pro-Solid.woff') format('woff'),
        url('fonts/FontAwesome7Pro-Solid.ttf') format('truetype'),
        url('fonts/FontAwesome7Pro-Solid.svg#FontAwesome7Pro-Solid') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Font Awesome 7 Pro Sharp';
    src: url('fonts/FontAwesome7Sharp-Solid.eot');
    src: url('fonts/FontAwesome7Sharp-Solid.eot?#iefix') format('embedded-opentype'),
        url('fonts/FontAwesome7Sharp-Solid.woff2') format('woff2'),
        url('fonts/FontAwesome7Sharp-Solid.woff') format('woff'),
        url('fonts/FontAwesome7Sharp-Solid.ttf') format('truetype'),
        url('fonts/FontAwesome7Sharp-Solid.svg#FontAwesome7Sharp-Solid') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}


@font-face {
    font-family: 'Font Awesome 7 Pro';
    src: url('fonts/FontAwesome7Pro-Thin.eot');
    src: url('fonts/FontAwesome7Pro-Thin.eot?#iefix') format('embedded-opentype'),
        url('fonts/FontAwesome7Pro-Thin.woff2') format('woff2'),
        url('fonts/FontAwesome7Pro-Thin.woff') format('woff'),
        url('fonts/FontAwesome7Pro-Thin.ttf') format('truetype'),
        url('fonts/FontAwesome7Pro-Thin.svg#FontAwesome7Pro-Thin') format('svg');
    font-weight: 100;
    font-style: normal;
    font-display: swap;
}


@font-face {
    font-family: 'Font Awesome 7 Pro Sharp';
    src: url('fonts/FontAwesome7Sharp-Light.eot');
    src: url('fonts/FontAwesome7Sharp-Light.eot?#iefix') format('embedded-opentype'),
        url('fonts/FontAwesome7Sharp-Light.woff2') format('woff2'),
        url('fonts/FontAwesome7Sharp-Light.woff') format('woff'),
        url('fonts/FontAwesome7Sharp-Light.ttf') format('truetype'),
        url('fonts/FontAwesome7Sharp-Light.svg#FontAwesome7Sharp-Light') format('svg');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}



@font-face {
    font-family: 'Font Awesome 7 Pro Sharp';
    src: url('fonts/FontAwesome7Sharp-Regular.eot');
    src: url('fonts/FontAwesome7Sharp-Regular.eot?#iefix') format('embedded-opentype'),
        url('fonts/FontAwesome7Sharp-Regular.woff2') format('woff2'),
        url('fonts/FontAwesome7Sharp-Regular.woff') format('woff'),
        url('fonts/FontAwesome7Sharp-Regular.ttf') format('truetype'),
        url('fonts/FontAwesome7Sharp-Regular.svg#FontAwesome7Sharp-Regular') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Font Awesome 7 Pro Sharp';
    src: url('fonts/FontAwesome7Sharp-Thin.eot');
    src: url('fonts/FontAwesome7Sharp-Thin.eot?#iefix') format('embedded-opentype'),
        url('fonts/FontAwesome7Sharp-Thin.woff2') format('woff2'),
        url('fonts/FontAwesome7Sharp-Thin.woff') format('woff'),
        url('fonts/FontAwesome7Sharp-Thin.ttf') format('truetype'),
        url('fonts/FontAwesome7Sharp-Thin.svg#FontAwesome7Sharp-Thin') format('svg');
    font-weight: 100;
    font-style: normal;
    font-display: swap;
} 




h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
    margin-bottom: var(--extrasmall);
    margin-top: 0;
    line-height: 1.1;
    position: relative;
    display: block;
    font-weight: 600;
    text-wrap: balance;
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
    color: var(--color-primary)
}

h1,
.h1 {
    font-size: 52px;
    margin-bottom: var(--smallmedium);
}

.h2,
h2 {
    font-size: 32px;
}

.h3,
h3 {
    font-size:24px;
}

.h4,
h4 {
    font-size: 22px;
}

.h5,
h5 {
    font-size: 18px;
    color: var(--color-primary);
    letter-spacing: 1.1px;
}

.h6,
h6 {
    font-size: 16px; 
}

:is(h2, h3, h4, h5, h6, .h2, .h3, .h4, .h5, .h6).large {
    font-size: 48px;
}

:is(h1, .h1).large {
    font-size: 62px;
}

html {
    margin-top: 0 !important;
}

body {
    font-size: 16px;
    font-weight: 300;
    font-family: "Epilogue", sans-serif;
    overflow-x: hidden;
    line-height: 1.5;
    color: var(--color-text);
    background: var(--color-primary);
    margin: 0;
}

body.overflow-hidden {
    overflow-y: hidden;
    overflow-x: hidden;
}

main {
    padding-bottom: var(--largehuge);
}



p {
    margin-top: 0;
    margin-bottom: var(--extrasmall);

}

a {
    color: currentColor;
    text-decoration: none;
}

/* a:hover {
    text-decoration: none;
} */

ul,
ol {
    line-height: 1.625;
    padding-left: 0;
    margin-top: 0;
    margin-bottom: var(--extrasmall);
}

ul li {
    list-style: none;
}

img {
    width: 100%;
    height: auto;
}

label {
    font-weight: bold;
    margin-bottom: 0;
    display: block;
}

sup {
    top: -5px;
}

abbr {
    text-decoration: none !important;
}

hr {
    margin-top: var(--extrasmall);
    margin-bottom: var(--extrasmall);
    border: 0;
    border-top: 1px solid rgba(0, 57, 77, 0.30);

}

.label {
    text-transform: uppercase;
    font-size: 20px;
    margin-bottom: 7.5px;
    color: inherit;
    font-weight: 600;
}

input[type="text"],
input[type="password"],
input[type="email"],
input[type="tel"],
input[type="search"],
input[type="number"],
textarea,
select {
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    box-sizing: border-box;
    outline: 0;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    line-height: 1.5;
    width: 100%;
    position: relative;
    padding: 12.5px 15px;
    border: 0;
	border-radius: 10px;
    background-color: #F1F2F4;
    font-weight: 300;

}

:is(input, textarea, select):focus {
    box-shadow: 0 0 0 1.5px #231F20;
}

select {
    background-image: linear-gradient(45deg,transparent 50%,rgb(25 25 25 / 50%) 50%),linear-gradient(135deg,rgb(25 25 25 / 50%) 50%,transparent 50%);
    background-position: calc(100% - 20px) 50%,calc(100% - 15px) 50%,100% 0;
    background-size: 5px 5px,5px 5px,5px 5px;
    background-repeat: no-repeat;
}

input[type="search"]::-webkit-search-cancel-button {
    display: none;
}



::-webkit-input-placeholder {
    color: rgb(25 25 25 / 30%);
}

::-moz-placeholder {
    color: rgb(25 25 25 / 30%);
}

:-ms-input-placeholder {
    color: rgb(25 25 25 / 30%);
}

::-moz-selection {
    background-color: var(--color-primary);
    color: #ffffff;
}

::selection {
    background-color: var(--color-primary);
    color: #ffffff;
}

::-moz-selection {
    background-color: var(--color-primary);
    color: #ffffff;
}



:focus-visible {
    outline-color: var(--color-primary);
    outline-offset: 5px;
}

:focus {
    outline: 0 !important;
}


table {
    margin-bottom: var(--extrasmall);
    width: 100%;
    border-collapse: collapse;
    text-align: left;
}

table tr td {
    color: var(--color-text);
}


table tr :is(td, th) {
    padding: 0 15px;
}

table tr :is(td, th):first-child {
    padding-left: 0;
}

table tr :is(td, th):last-child {
    padding-right: 0;
}


b,
strong {
    font-weight: 600;
}

small,
.small {
    font-size: 14px;
    font-weight: inherit;
    display: inline-block;
}

button {
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    background: transparent;
    border: 0;
    color: inherit;
    padding: 0
}

.screen-reader-text {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    word-wrap: normal !important;
}

.btn {
    appearance: none;
    -webkit-appearance: none;
    padding: 24px 36px 20px 36px;
    transition: all 0.3s;
    position: relative;
    border: 0;
    border-radius: 40px;
    z-index: 1;
    background: var(--color-primary);
    color: var(--color-secondary);
    text-decoration: none;
    line-height: 1.125;
    text-align: left;
    cursor: pointer;
    font-weight: 500;
    font-size: 16px;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 16px;
    white-space: nowrap;
    justify-content: space-between;
    overflow: hidden;

}

.btn:after {
    content: attr(data-icon, '\f178');
    font-family: 'Font Awesome 7 Pro Sharp';
    font-size: 16px;
    font-weight: 400;
    line-height: 1;
	transform: translateY(-10%);
    transition: all 0.3s;
}

.btn.btn--whatsapp:after {
    font-family: 'Font Awesome 7 Brands';
}

.btn:hover:after {
    transform: translateY(-10%) translateX(2.5px);
}

.btn.btn--whatsapp:hover:after {
    transform: translateY(-10%) translateX(0px) scale(1.1);
}

.btn.btn--secondary {
    color: #FFFFFF;
    background: var(--color-secondary)
}

.btn.btn--tertiary {
    color: #FFFFFF;
    background: var(--color-tertiary);
}

.btn.btn--white {
    background: #FFFFFF;
}

.btn.btn--transparent {
    color: white;
    background: rgba(255, 255, 255, 0.1);
    border: 0.5px solid rgba(255, 255, 255, 0.8);
    backdrop-filter: blur(2.5px);
    -webkit-backdrop-filter: blur(2.5px);
}



.btn:hover {
	background-color: color-mix(in srgb, var(--color-primary) 95%, #000000);
}

.btn.btn--secondary:hover {
    background-color: color-mix(in srgb, var(--color-secondary) 95%, #FFFFFF);
}

.btn.btn--tertiary:hover {
    background-color: color-mix(in srgb, var(--color-tertiary) 95%, #000000);
}

.btn.btn--white:hover {
    background-color: color-mix(in srgb, #FFFFFF 95%, #000000);
}

.btn.btn--transparent:hover {
    background: rgba(255, 255, 255, 0.2);
}



.background {
    background: #FFFFFF;
}

.background:not(:has(+ .background)) {
    border-bottom-left-radius: 60px;
    border-bottom-right-radius: 60px;
    padding-bottom: var(--huge);
    margin-bottom: var(--largehuge) !important;
}

.background:not(.background + *) {
    border-top-left-radius: 60px;
    border-top-right-radius: 60px;
    padding-top: var(--huge);
}





/* Header */

header {
    position: absolute;
    z-index: 10;
    color: #FFFFFF;
    /* top: calc(var(--topmenuheight) * -1); */
    top: 0;
    right: 0;
    left: 0;
    transition: all 0.3s;
    /* overflow: hidden; */
}

header .topmenu {
    margin-top: var(--mediumlarge);
}

header .topmenu .topmenu-navigation .top-menu {
    display: flex;
    justify-content: flex-end;
    gap: var(--large);
	text-shadow: 0 0 20px rgba(0, 0, 0, 0.18);
}


header nav.navigation {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0 var(--large);
}

header nav.navigation .navigation-logo {
    width: 100%;
    max-width: 190px;
    position: relative;
    margin: 0;
    z-index: 1;
    line-height: 0;
    transition: all .3s;
    display: block;
}


header nav.navigation .navigation-menu {
    flex: 1 1 auto;
    display: flex;
    flex-wrap: nowrap;
    justify-content: end;
    gap: 0;
    
}

header nav.navigation .navigation-menu > ul {
    /* position: relative; */
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: var(--large);
    margin-bottom: 0;   
}

header nav.navigation .navigation-menu > ul > li {
     height: 100%
}

header nav.navigation .navigation-menu > ul > li > a {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 7.5px;
    transition: all 0.3s;
    white-space: nowrap;
    font-weight: 600;
    height: 100%;
	text-shadow: 0 0 20px rgba(0, 0, 0, 0.18);
}

header nav.navigation .navigation-menu > ul > li > a:hover,
header nav.navigation .navigation-menu > ul > li.current-menu-item > a,
header .topmenu .topmenu-navigation .top-menu > li > a:hover {
	text-decoration-line: underline;
	text-decoration-style: solid;
	text-decoration-skip-ink: none;
	text-decoration-thickness: auto;
	text-underline-offset: auto;
	text-underline-position: from-font;
/*     color: var(--color-secondary); */
/* 	background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
	border-radius: var(--border-radius) */
}



header nav.navigation .navigation-menu ul > li.menu-item-has-children > a:after {
    content: '';
    font-weight: 400;
    font-family: 'Font Awesome 7 Pro';
    display: inline-block;
    line-height: 1;
    transition: all 0.3s;
    font-size: 12px;
    color: var(--color-primary);
}

header nav.navigation .navigation-menu ul > li.menu-item-has-children.open > a:after {
    transform: rotate(180deg);
}

header nav.navigation .navigation-menu ul > li.menu-item-has-children > ul {
    opacity: 0;
    visibility: hidden;
    position: absolute;
    left: 0;
    right: 0;
    margin-bottom: 0;
    width: calc(100% - var(--navactionswidth));
    background: var(--color-tertiary);
    top: 100%;
    padding: var(--mediumlarge) 0;
    transition: all 0.3s ease 0s;
    transform: rotateX(90deg);
    transform-origin: top center;
    display: flex;
    flex-direction: column;
    gap: 5px;
    line-height: 1;
    /* min-height: calc(var(--submenu-min-height, 0px) + (var(--mediumlarge) * 2)); */

    
}

header nav.navigation .navigation-menu ul > li.menu-item-has-children > ul:before {
    content: '';
    position: absolute;
    top: 0;
    left: calc(var(--container-overflow) * -1);
    /* right: 0; */
    bottom: 0;
    background: var(--color-tertiary);
    pointer-events: none;
    /* width: 100vw; */
    width: var(--container-overflow);
    z-index: -1;
}

header nav.navigation .navigation-menu ul > li.menu-item-has-children.open > ul {
    opacity: 1;
    visibility: visible;
    transform: rotateX(0deg);
}

header nav.navigation .navigation-menu ul > li.menu-item-has-children > ul > li {
    display: grid;
    grid-template-columns: 210px 1fr;
}

header nav.navigation .navigation-menu ul > li.menu-item-has-children > ul > li > a {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: space-between;
    gap: 7.5px;
    transition: all 0.3s;
    white-space: nowrap;
    font-weight: 600;
    height: 100%;
    padding: 15px 25px;
    
}

header nav.navigation .navigation-menu ul > li.menu-item-has-children > ul > li.open > a,
header nav.navigation .navigation-menu ul > li.menu-item-has-children > ul:not(:has(> li:hover)) > li:first-child> a {
    background: var(--color-primary);
    color: #ffffff;
}

header nav.navigation .navigation-menu ul > li.menu-item-has-children > ul > li > a:after {
    content: '';
    font-weight: 400;
    font-family: 'Font Awesome 7 Pro';
    display: inline-block;
    line-height: 1;
    transition: all 0.3s;
    font-size: 12px;
    color: var(--color-primary);
}

header nav.navigation .navigation-menu ul > li.menu-item-has-children > ul > li.open > a:after,
header nav.navigation .navigation-menu ul > li.menu-item-has-children > ul:not(:has(> li:hover)) > li:first-child > a:after {
    color: #ffffff;
    transform: translateX(2.5px)
}


header nav.navigation .navigation-menu ul > li.menu-item-has-children > ul > li > div {
    position: absolute;
    left: calc(210px + var(--mediumlarge));
    padding: var(--mediumlarge);
    top: 0;
    bottom: 0;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s;
    min-height: 100%;
    overflow: scroll;
    display: flex;
    align-items: start;
    flex-wrap: nowrap;
    flex-direction: column;
    align-items: start;
    line-height: 1.75;
}

header nav.navigation .navigation-menu ul > li.menu-item-has-children > ul > li > div::-webkit-scrollbar {
  	display: none;
}

header nav.navigation .navigation-menu ul > li.menu-item-has-children > ul > li.open > div,
header nav.navigation .navigation-menu ul > li.menu-item-has-children > ul:not(:has(> li:hover)) > li:first-child > div {
    opacity: 1;
    visibility: visible;
}

header nav.navigation .navigation-menu ul > li.menu-item-has-children > ul > li > div * {
    max-width: 600px
}

header nav.navigation .navigation-menu ul > li.menu-item-has-children > ul > li > div p:last-of-type {
    margin-bottom: var(--small);
}


header nav.navigation .navigation-actions .btn:after {
    content: '\f0d7';
}

header nav.navigation .navigation-actions .btn:hover:after {
    transform: translateX(0px);
}



header nav.navigation .navigation-toggler {
    position: relative;
    margin: 0;
    z-index: 1;
    display: none;
    color: #FFFFFF;
    background: rgba(255, 255, 255, 0.1);
    border: 0.5px solid rgba(255, 255, 255, 0.8);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border-radius: var(--border-radius);
/*     padding: var(--small); */
	padding: 10px;
}

header nav.navigation .navigation-toggler span {
    display: block;
    width: 22px;
    height: 2px;
}

header nav.navigation .navigation-toggler span + span {
    margin-top: 4px;
}

header nav.navigation .navigation-toggler span:nth-of-type(1) {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    top: 0;
}

header nav.navigation .navigation-toggler span:nth-of-type(2) {
    opacity: 1;
    width: 22px;
    margin-left: 0;
}

header nav.navigation .navigation-toggler span:nth-of-type(3) {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    bottom: 0;
}

header nav.navigation .navigation-toggler span {
    position: relative;
    transition: all 500ms ease-in-out;
    background-color: currentColor;
}

header nav.navigation .navigation-toggler.active span:nth-of-type(1) {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    top: 6px;
}

header nav.navigation .navigation-toggler.active span:nth-of-type(2) {
    opacity: 0;
    width: 0;
    margin-left: 50%;
}

header nav.navigation .navigation-toggler.active span:nth-of-type(3) {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    bottom: 6px;
} 


/* Main */
main > :first-child:not(section.hero, section.breadcrumbs) {
	margin-top: calc(var(--headerheight) + var(--largehuge) + var(--medium));
}

main > section.breadcrumbs:first-child + *:not(section.hero) {
    margin-top: calc(var(--headerheight) + var(--largehuge) + var(--medium));
}


/* Hero */

section.hero {
    position: relative;
    overflow: hidden;
    padding: calc(var(--gigantic) + var(--headerheight)) 0 var(--extralarge) 0;
    margin-bottom: var(--largehuge);
}

section.hero.hero--small {
    padding: calc(var(--huge) + var(--medium) + var(--headerheight)) 0 var(--extralarge) 0;
}

section.hero:has(+ section.blokken) {
    padding-bottom: var(--huge);
    margin-bottom: 0;
}

section.hero:has(.hero-info) {
    margin-bottom: var(--large);
}

section.hero .hero-image {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    overflow: hidden;
    border-radius: 0 0 60px 60px;
    z-index: 0;
}

section.hero .hero-image img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transition: all 0.3s;
}

section.hero.hero--large .hero-image:before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(270deg, rgba(128, 128, 128, 0) 15.9%, rgba(30, 48, 80, 0.36) 99.96%);
    z-index: 1;
}

section.hero.hero--large .hero-image:after {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(53.93% 108.12% at 50% 50%, #6EDBF0 0%, #1E3050 100%);
    mix-blend-mode: overlay;
    z-index: 2;
}

section.hero.hero--small .hero-image:before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(270deg, rgba(128, 128, 128, 0.00) -15.99%, rgba(26, 26, 26, 0.65) 58.29%);
    z-index: 1;
}

section.hero.hero--small.hero--whatsapp .hero-image:before {
	background:
        linear-gradient(270deg, rgba(128, 128, 128, 0.00) 1.23%, #1A1A1A 77.19%) left center / 50% 100% no-repeat,
        linear-gradient(90deg, rgba(128, 128, 128, 0.00) 1.23%, #1A1A1A 77.19%) right center / 50% 100% no-repeat;
}

section.hero.hero--small .hero-image:after {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(53.93% 108.12% at 50% 50%, #6EDBF0 0%, #1E3050 100%);
    mix-blend-mode: overlay;
    z-index: 2;
}

section.hero .hero-image .hero-image__play {
    position: absolute;
    right: var(--large);
    bottom: 0;
    border-radius: 50%;
    background: var(--color-primary);
    backdrop-filter: blur(10px);
    width: 75px;
    height: 75px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    margin-bottom: var(--large);
    animation: pulse 2s infinite;
}

section.hero .hero-image .hero-image__play:before {
    content: '';
    background: #000000;
    opacity: 0.25;
    width: 70px;
    height: 70px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: -1;
    border-radius: 50%;
    pointer-events: none;
}

section.hero .hero-image .hero-image__play:after {
    content: '';
    font-size: 22px;
    font-weight: 400;
    font-family: 'Font Awesome 7 Pro Solid';
    color: #FFFFFF;
}

section.hero .hero-content {
    position: relative;
    z-index: 1;
    color: #ffffff;
    font-size: 18px;
    font-weight: 600;
	text-shadow: 0 0 20px rgba(0, 0, 0, 0.5);
}

section.hero .hero-content .hero-content__label {
    font-weight: 400;
}

section.hero.hero--large .hero-content .hero-content__label {
    color: #FFFFFF;
}

section.hero .hero-content > *:not(.hero-content__buttons) {
    margin-right: var(--large);
}


section.hero .hero-content .hero-content__buttons {
    line-height: 0;
    display: flex;
    flex-wrap: wrap;
    gap: var(--extrasmall);
    margin-top: var(--extrasmall);
	text-shadow: none;
	flex-wrap: wrap;
}

section.hero .hero-content *:last-child {
    margin-bottom: 0
}

section.hero .hero-buttons {
    display: flex;
    justify-content: flex-end;
}

section.hero .hero-info {
    position: absolute;
    bottom: 0;
    display: flex;
    justify-content: space-between;
    background: var(--color-tertiary);
    width: var(--container);
    max-width: 100%;
    padding: var(--smallmedium) var(--huge) var(--small) var(--large);
    z-index: 1;
    transform: translateY(50%);
}

section.hero .hero-info ul li:first-child {
    color: #909090;
    line-height: 2;
    text-transform: uppercase;
    margin-bottom: 7.5px;
}

section.hero .hero-info ul li b {
    color: var(--color-primary);
}

section.hero .hero-cta {
    color: white;
    background: rgba(255, 255, 255, 0.1);
    border: 0.5px solid rgba(255, 255, 255, 0.8);
    border-radius: var(--border-radius);
    backdrop-filter: blur(2.5px);
    -webkit-backdrop-filter: blur(2.5px);
    padding: var(--smallmedium);
}

section.hero .hero-cta .hero-cta__label {
    font-weight: 400;
    color: #FFFFFF;
}

section.hero .hero-cta .hero-cta__buttons {
    display: flex;
    align-items: flex-start;
}




/* Breadcrumbs */
section.breadcrumbs {
    position: absolute;
    top: calc(var(--headerheight) + var(--mediumlarge));
    left: 0;
    right: 0;
    color: #FFFFFF;
    overflow: hidden;
    padding: var(--extrasmall) 0;
    /* margin: calc(var(--headerheight) + var(--large)) 0 var(--large) 0; */
	z-index: 1;
}

section.breadcrumbs .breadcrumbs > span {
    display: flex;
	align-items: center;
	flex-wrap: wrap;
}

section.breadcrumbs .breadcrumbs a {
	transition: all 0.3s; 
}

section.breadcrumbs .breadcrumbs a:hover {
    font-weight: 600;
}

section.breadcrumbs .breadcrumb_seperator {
    display: flex;
    align-items: center;
    margin: 0 2.5px;
}



/* Article */
article.article {
    position: relative;
    margin: var(--largehuge) 0;
}

article.article.background {
    padding-bottom: var(--largehuge);
    margin: 0;
}

article.article.article--blocks {
    padding-bottom: var(--extralarge);
}

article.article .article-image {
    position: relative;
    display: block;
    border-radius: var(--border-radius);
    overflow: hidden;
    padding-bottom: 45%;
    height: 100%;
}

article.article .article-image img {
    position: absolute;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
}

article.article .article-content {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    margin-top: var(--mediumlarge);
}

article.article.background .article-content {
	margin-top: var(--large);
}

article.article.background .article-content {
    margin-right: var(--large);
}

article.article.article--reverse.background .article-content {
    margin-right: 0;
}

article.article.article--blocks .article-content {
    padding: var(--extralarge) var(--huge) 0 0;
}

article.article.article--reverse.article--blocks .article-content {
    padding: var(--extralarge) 0 0 var(--huge);
}

article.article.article--blocks .article-content:before {
    content: '';
    position: absolute;
    right: 0;
    top: 0;
    width: calc(100% + var(--massive));
    height: calc(100% + var(--extralarge));
    background: #FFFFFF;
    border-radius: var(--border-radius);
    z-index: -1;
}

article.article.article--reverse.article--blocks .article-content:before {
    right: unset;
    left: 0;
}

article.article.article--text .article-content {
	color: var(--color-text);
}

article.article.article--text .article-content h2.h1 {
	color: var(--color-text);
}

article.article .article-content ul li {
    position: relative;
    padding-left: 15px;
}

article.article .article-content ul li:before {
    content: '•';
    position: absolute;
    left: 0;
}

article.article .article-content a:not(.btn) {
	text-decoration-line: underline;
	text-decoration-style: solid;
	text-decoration-skip-ink: none;
	text-decoration-thickness: auto;
	text-underline-offset: auto;
	text-underline-position: from-font;
}

article.article .article-content .article-content__label {
    font-weight: 400;
}

article.article .article-content .article-content__buttons {
    display: flex;
    gap: var(--smallmedium);
	flex-wrap: wrap;
}

article.article .article-content .article-content__buttons a.btn[href^="tel:"]:after {
    content: '\f095';
}

article.article .article-content .article-content__buttons a.btn[href^="tel:"]:hover:after {
	transform: translateY(-10%) translateX(0px) scale(1.1);
}

article.article .article-content .article-content__buttons a.btn[href*="wa.me"]:after {
	content: '\f232';
	font-family: 'Font Awesome 7 Brands';
}

article.article .article-content .article-content__buttons a.btn[href*="wa.me"]:hover:after {
	transform: translateY(-10%) translateX(0px) scale(1.1);
}



/* Blokken */
section.blokken {
    position: relative;
    margin: var(--largehuge) 0;
}

section.hero + section.blokken {
    margin-top: calc(var(--large-negative) + var(--extrasmall-negative));
    z-index: 2;
}

section.blokken .block {
    display: flex;
    flex-direction: column;
    background: #FFFFFF;
    border-radius: var(--border-radius);
    align-items: flex-start;
    height: 100%;
    padding: var(--smallmedium);
}

section.blokken .block .block-label {
    font-weight: 400;
}

section.blokken .block .block-title {
    font-weight: 600;
}



/* Comparison */
section.comparison {
    position: relative;
    margin: var(--largehuge) 0;
}

section.comparison .comparison-content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    background: #FFFFFF;
    border-radius: var(--border-radius);
    padding: var(--mediumlarge);
}

section.comparison .comparison-content .comparison-content__label {
    font-weight: 400;
}

section.comparison .compare {
    position: relative;
    display: block;
    width: calc(100% + var(--huge));
    aspect-ratio: 2 / 1;
    touch-action: none;
    user-select: none;
    margin-right: var(--huge-negative);
}

section.comparison .compare img {
    position: absolute;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
}

/* section.comparison .compare__before {
    clip-path: inset(0 100% 0 0);
} */

section.comparison .compare__handle {
    position: absolute;
    top: 0;
    left: 50%;
    width: 2px;
    height: 100%;
    background: #F2F2F2;
    transform: translateX(-50%);
}

section.comparison .compare__handle:after {
    content: '\f7a5';
    position: absolute;
    display: flex;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-family: "Font Awesome 7 Pro Sharp";
    font-size: 24px;
    font-weight: 400;
    color: var(--color-primary);
    text-align: center;
    white-space: nowrap;
    background: #fff;
    border-radius: 30px;
    box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
    align-items: center;
    justify-content: center;
    padding: 6px 10px;
}



/* Team */
section.team {
    position: relative;
    margin: var(--largehuge) 0;
}

section.team.background {
	padding-bottom: var(--largehuge);
	margin-bottom: unset;
}

section.team .team-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: var(--small);
    align-items: start;
}

section.team .team-grid .team-content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    grid-column: span 2;
	margin-right: var(--small);
}

section.team .team-grid .team-content .team-content__label {
    font-weight: 400;
}

section.team .team-grid .card {
    grid-column: span 1;
    height: 100%;
    background: var(--color-secondary);
    border-radius: var(--border-radius);
    overflow: hidden;
}

section.team .team-grid .card .card-image {
    position: relative;
    display: block;
    aspect-ratio: 4 / 5;
    background: var(--color-primary);
    border-radius: var(--border-radius);
    overflow: hidden;
}

section.team .team-grid .card .card-image img {
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
    -webkit-transition: all .3s;
    transition: all .3s;
    z-index: 1;
}

section.team .team-grid .card .card-image:before {
    content: '';
    position: absolute;
    inset: 0;
    background:
        radial-gradient(
            circle at center,
            rgba(30, 48, 80, 0.9) 0%,
            rgba(30, 48, 80, 0.6) 30%,
            rgba(30, 48, 80, 0.2) 55%,
            transparent 75%
        );
    mix-blend-mode: overlay;
    z-index: 0;
}

section.team .team-grid .card .card-content {
    padding: var(--small) var(--extrasmall) var(--small) var(--extrasmall);
}

section.team .team-grid .card .card-content .card-content__label {
    color: var(--color-primary);
}

section.team .team-grid .card .card-content .card-content__name {
    font-weight: 600;
    color: #F2F2F2;
}




/* Logoslider */
section.logos {
    position: relative;
    margin: var(--largehuge) 0;
}

section.logos.background {
    padding-bottom: var(--largehuge);
    margin: 0;
}

section.logos .logos-content {
    text-align: center;
}

section.logos .logos-content .logos-content__label {
    font-weight: 400;
}

section.logos [data-slider="logoslider"] {
    margin: var(--small) var(--mediumlarge) 0; 
}

section.logos .logo {
    position: relative;
    display: block;
    aspect-ratio: 16 / 9;
    width: 100%;
    max-height: 50px;
}

section.logos .logo img {
    position: absolute;
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    -o-object-position: center;
    object-position: center;
}



/* Modal */
.modal .modal-dialog {
    max-width: 550px;
}

.modal .modal-content {
    border-radius: var(--border-radius);
    padding: var(--smallmedium);
    padding-bottom: var(--mediumlarge);
}

.modal .modal-content .modal-header {
    border-bottom: none;
    padding: 0;
}

.modal .modal-content .modal-header .modal-label {
    font-weight: 400;
    margin-bottom: 0;
}

.modal .modal-content .modal-header button {
	width: 20px;
	height: 20px;
	justify-content: center;
	align-items: center;
	cursor: pointer;
}

.modal .modal-content .modal-header button:before {
	content: '\f00d';
	font-family: "Font Awesome 7 Pro";
	font-weight: 400;
	line-height: 1;
	color: var(--color-secondary);
}

.modal .modal-content .modal-body {
    padding: 0;
}

.modal .modal-content .modal-body .modal-title {
    margin-bottom: var(--tiny);
}

.modal .modal-content .modal-body .modal-body__buttons {
    display: flex;
    gap: var(--extrasmall);
}



/* Slick slider */

.slick-list {
    overflow: hidden;
}

.slick-dots {
    position: relative;
    margin-bottom: 0;
    line-height: 0;
    z-index: 2;
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    gap: 5px;
    margin-top: var(--small)
}

.slick-dots li {
    list-style: none;
}

.slick-dots li button {
    font-size: 0;
    height: 3px;
    width: 15px;
    display: inline-block;
    padding: 0;
    cursor: pointer;
    background: rgba(35, 31, 32, 0.25);
    border-radius: 15px;
}

.slick-dots li.slick-active button {
    background: #00B7BE;
}

.slick-prev, .slick-next {
    font-size: 0;
    line-height: 0;
    position: absolute;
    top: 50%;
    display: block;
    width: 20px;
    height: 20px;
    padding: 0;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    cursor: pointer;
    color: transparent;
    border: none;
    outline: none;
    background: transparent;
}

.slick-prev {
    left: var(--mediumlarge-negative);
}

.slick-next {
    right: var(--mediumlarge-negative);
}

.slick-prev:before, .slick-next:before {
    display: block;
    font-family: 'Font Awesome 7 Pro Sharp';
    font-size: 16px;
    color: var(--color-secondary);
}

.slick-prev:before {
    content: '\f177';
}

.slick-next:before {
    content: '\f178';
}



/* Gravity Forms */

.gform_wrapper {
  

}

.gform_wrapper .gform_heading {
    margin-bottom: var(--small);
}

.gform_wrapper form {
    position: relative;
}


.gform_wrapper form .gform_body {
   
}

.gform_wrapper form .gform_body .gform_fields,
.gform_wrapper form .gform_body .gform_fields .gfield .gform-grid-row {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    gap: var(--extrasmall) var(--small);
}

.gform_wrapper form .gform_body .gform_fields .gfield,
.gform_wrapper form .gform_body .gform_fields .gfield .gform-grid-row .gform-grid-col {
    position: relative;
    border: 0;
    padding: 0;
    grid-column: span 12 / span 12;
}

.gform_wrapper form .gform_body .gform_fields .gfield.gfield--width-half,
.gform_wrapper form .gform_body .gform_fields .gfield .gform-grid-row .gform-grid-col {
   grid-column: span 6 / span 6;
}

.gform_wrapper form .gform_body .gform_fields .gfield.gfield--width-three-quarter {
    grid-column: span 9 / span 9;
}

.gform_wrapper form .gform_body .gform_fields .gfield.gfield--width-quarter {
    grid-column: span 3 / span 3;
}

.gform_wrapper form .gform_body .gform_fields .gfield.gfield--width-third {
    grid-column: span 4 / span 4;
}

.gform_wrapper form .gform_body .gform_fields .gfield.gfield--width-two-thirds {
   grid-column: span 8 / span 8;
}

.gform_wrapper form .gform_body .gform_fields .gfield.gfield--width-seven-twelfths {
    grid-column: span 7 / span 7;
}

.gform_wrapper form .gform_body .gform_fields .gfield.gfield--width-five-twelfths {
   grid-column: span 5 / span 5;
}


.gform_wrapper form .gform_body .gform_fields .gfield.gform_validation_container,
.gform_wrapper form .gform_body .gform_fields .gfield.gfield_visibility_hidden {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    word-wrap: normal !important;
}

.gform_wrapper form .gform_body .gform_fields .gfield .gfield_label,
.gform_wrapper form .gform_body .gform_fields .gfield .gform-grid-row .gform-grid-col label {
    margin-bottom: 7.5px;
}


.gform_wrapper form .gform_body .gform_fields .gfield.hidden_label .gfield_label {
    display: none;
}

.gform_wrapper form .gform_body .gform_fields .gfield .ginput_container {

}

.gform_wrapper form .gform_body .gform_fields .gfield .ginput_container .gform_drop_area button {
	cursor: pointer;
}

.gform_wrapper form .gform_footer {
      margin-top: var(--extrasmall);
}

/* .gform_wrapper form .gform_body .gform_fields .gfield.gfield--type-fileupload > .ginput_container_fileupload {
	position: absolute;
	top: 50%;
	right: 15px;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	line-height: 1;
}

.gform_wrapper form .gform_body .gform_fields .gfield.gfield--type-fileupload > .ginput_container_fileupload input {

}

.gform_wrapper form .gform_body .gform_fields .gfield.gfield--type-fileupload > .ginput_container_fileupload input::file-selector-button {

	font-size: 18px;
	background: #AFD14E;
	color: #1C2428;
	font-weight: 300;
	padding: 10px 20px;
	border: 0;
	border-radius: 15px;
	margin-right: 7.5px;
}

.gform_wrapper form .gform_body .gform_fields .gfield.gfield--type-fileupload > .ginput_container_fileupload :is(.gform_fileupload_rules, .ginput_preview_list) {
	display: none;
}

.gform_wrapper form .gform_body .gform_fields .gfield.gfield_error:not(.gfield--type-fileupload) :is(input, textarea),
.gform_wrapper form .gform_body .gform_fields .gfield.gfield--type-fileupload.gfield_error > :is(label, legend) {
	box-shadow: 0 0 0 1.5px  #E12824 inset;
} */


@media (max-width: 992px) {
    .gform_wrapper form .gform_body .gform_fields .gfield.gfield--width-half,
    .gform_wrapper form .gform_body .gform_fields .gfield .gform-grid-row .gform-grid-col {
        grid-column: span 12 / span 12;
    }
}




/* Footer*/

footer {
    position: relative;
    background: #FFFFFF;
}

footer .footer-main .footer-content {
    display: flex;
    flex-direction: column;
    height: 100%;
}

footer .footer-main .footer-content.footer-content--default {
	padding-top: calc(var(--mediumlarge) + var(--large)); 
}

footer .footer-main .footer-content :is(h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6) {
    color: var(--color-text);
    margin-top: var(--mediumlarge);
    margin-bottom: var(--small);
}

footer .footer-main {
    margin-bottom: var(--smallmedium);
}

footer .footer-main .footer-main__label {
    font-weight: 400;
}

footer .footer-main .footer-main__title {
    color: var(--color-text);
}

footer .footer-main .footer-content *:last-child {
    margin-bottom: 0;
}

footer .footer-main .footer-menu {
    line-height: 1.7;
}

footer .footer-main .footer-menu li {
    display: flex;
    flex-wrap: nowrap;
    gap: 10px;
}

footer .footer-main .footer-menu li:hover {
    color: var(--color-primary);
}

footer .footer-main .footer-menu li a {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 15px;
}

footer .footer-main .footer-menu li.current-menu-item a {
    color: var(--color-primary);
}

footer .footer-main .footer-logo  {
    max-width: 215px;
    margin-right: var(--extralarge);
}

footer .footer-main .footer-logo img {
    line-height: 0;
    margin-bottom: var(--small);
}

footer .footer-main .footer-text *:last-child {
    margin-bottom: 0
}

footer .footer-main .footer-contact {
	display: flex;
	flex-direction: column;
}

footer .footer-main .footer-contact .contact-info {
    margin-bottom: var(--small);
}

footer .footer-main .footer-contact *:last-child {
    margin-bottom: 0;
}

footer .footer-main .footer-contact .contact-info b {
    color: var(--color-primary);
}

footer .footer-main .footer-contact .contact-info a {
    text-decoration-line: underline;
    text-decoration-style: solid;
    text-decoration-color: #1A1A1A;
}

footer .footer-main .footer-contact .contact-info a:hover {
    color: var(--color-primary);
}

footer .footer-main .footer-button {
    display: flex;
    align-items: flex-start;
    margin-top: auto;
} 

footer .footer-main .footer-image {
    position: relative;
    width: 115px;
    height: 160px;
    margin-top: var(--mediumlarge);
}

footer .footer-main .footer-image img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
    transition: all 0.3s;
}

footer .footer-copyright {
    position: relative;
    background: #FFFFFF;
    border-top: 1px solid var(--color-secondary);
    padding: var(--small) 0;
}

footer .footer-copyright .footer-text {
    margin-bottom: 0;
    opacity: 1;
}

footer .footer-copyright .footer-menu  {
    margin-bottom: 0;
    display: flex;
    flex-wrap: nowrap;
    gap: var(--tiny);
    opacity: 1;
}

footer .footer-copyright .footer-menu li {
    list-style: none;
    display: inline-block;
}

footer .footer-copyright .footer-menu li:not(:last-child):after {
    content: '-';
    margin-left: var(--tiny)
}

footer .footer-copyright .footer-menu li a {
    text-decoration: none;
}

footer .footer-copyright .footer-menu li a:hover {
    color: var(--color-primary);
}

.pswp-bg {
    background: rgb(25 25 25 / 75%);
}

body.loading {
    overflow-y: hidden;
    overflow-x: hidden;
}


body.loading:before {
    content: '';
    background: var(--color-secondary);
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index:11;
    position: fixed;
    opacity: 0.75;
}


body.loading:after {
    content: '';
    width: 60px;
    height: 60px;
    border-width: 7.5px;
    border-style: solid;
    border-color: var(--color-primary);
    border-bottom-color: transparent;
    border-radius: 50%;
    display: inline-block;
    box-sizing: border-box;
    animation: rotation 1s linear infinite;
    z-index: 12;
    position: fixed;
    top: 50%;
    left: 50%;
    margin-left: -30px;
    margin-top: -30px;
}





/* Social media */

.social-media {
    line-height: 1;
    margin-bottom: 0;
    display: flex;
    flex-wrap: nowrap;
    gap: 15px;
    justify-content: flex-start;
}

.social-media li {
    display: inline-block;
}

.social-media li:last-child {
    margin-right: 0
}

.social-media li a {
    height: auto;
    width: auto;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    color: var(--color-tertiary);
    border-radius: 0;
    text-decoration: none;
}

.social-media li a:hover {
    color: var(--color-primary);
}

.social-media li a:before {
    content: attr(data-icon);
    font-weight: normal;
    font-family: 'Font Awesome 7 Brands';
	font-size: 23px;
}



/* Responsive */


@media (max-width: 1600px) {
    :root  {
        --container: 1240px;
    }

    section.comparison .compare {
        width: calc(100% + var(--small));
        margin-right: var(--small-negative);
    }
}   

@media (max-width: 1400px) {
    :root  {
        --container: 1140px;
    }
	
	
	header nav.navigation {
		gap: var(--small);
	}
	
	header nav.navigation .navigation-menu > ul {
		gap: var(--medium);
	}
	
	header nav.navigation .navigation-actions .btn {
		padding: 14px 12.5px 10px 12.5px;
		gap: 7.5px;
	}


}

@media (max-width: 1200px) {

    :root  {
        --base: 12.5px;
        --container: 992px;    
        --container-overflow: var(--small);

    }

    :is(h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6).large {
        font-size: 42px;
    }

    .btn {
        padding: 20px 30px 16px 30px;
    }

    /* body {
        margin: 0 var(--extrasmall);
    } */
	
	header {
		position: fixed;
	}
	
	header:after {
		content: '';
		position: absolute;
		inset: 0;
		background: rgba(0, 0, 0, 0);
		backdrop-filter: blur(0);
		-webkit-backdrop-filter: blur(0);
		opacity: 0;
		z-index: -1;
		transition: all 0.3s;
	}

	header.scrolled:after {
		background: rgba(0, 0, 0, 0.2);
		backdrop-filter: blur(20px);
		-webkit-backdrop-filter: blur(20px);
		opacity: 1;
	}

    header nav.navigation {
        gap: var(--tiny);
        padding: var(--small) 0;
    }

    header nav.navigation .navigation-logo {
        z-index: 99;
    }

    header nav.navigation .navigation-toggler {
        display: block;
        z-index: 99;
    }

    header .topmenu .topmenu-navigation .top-menu {
        flex-direction: column;
        justify-content: flex-start;
		align-items: center;
        gap: 0;
    }

    header .topmenu .topmenu-navigation .top-menu > li  {
/*         width: 100%; */
        height: auto;
    }

    header .topmenu .topmenu-navigation .top-menu > li > a {
        display: flex;
        width: 100%;
        height: auto;
        padding: 7.5px var(--small);
    }

    header nav.navigation .navigation-menu {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
		font-size: 18px;
        background: rgba(255, 255, 255, 0.01);
        border: 0.5px solid rgba(255, 255, 255, 0.8);
        backdrop-filter: blur(20px);
        -webkit-backdrop-filter: blur(20px);
        overflow-y: scroll;
		overflow-x: hidden;
		-webkit-overflow-scrolling: touch;
        display: flex;
        flex-direction: column;
		transform: translateX(-100%);
        transition: .3s;
        z-index: 1;
		justify-content: start;
		align-items: center;
        padding-top: var(--headerheight);
	}

    header nav.navigation .navigation-menu.open {
		transform: translateX(0);
	}

    header nav.navigation .navigation-menu:after {
        content: '';
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        background-image: linear-gradient(0deg, rgba(128, 128, 128, 0.10) 1%, rgba(0, 0, 0, 0.2) 100%);
        mix-blend-mode: overlay;
		pointer-events: none;
    }

    header nav.navigation .navigation-menu > ul {
        flex-direction: column;
        align-items: center;
        gap: 0;
        width: 100%;
        padding: 0;
    }

    header nav.navigation .navigation-menu > ul > li {
/*         width: 100%; */
        height: auto;
    }

    header nav.navigation .navigation-menu > ul > li > a {
        width: 100%;
        height: auto;
        justify-content: space-between;
        padding: 7.5px var(--small);
    }

    header nav.navigation .navigation-menu ul > li.menu-item-has-children > ul {
        position: relative;
        top: auto;
        left: auto;
        right: auto;
        width: 100%;
        opacity: 1;
        visibility: visible;
        transform: none;
        padding: 0;
        display: block;
        max-height: 0;
        overflow: hidden;
        transition: max-height .3s ease;
    }

    header nav.navigation .navigation-menu ul > li.menu-item-has-children.open > ul {
        max-height: 2000px;
		min-height: unset;
    }

/*     header nav.navigation .navigation-menu ul > li.menu-item-has-children > ul:before {
        display: none;
    }
 */
    header nav.navigation .navigation-menu ul > li.menu-item-has-children > ul > li {
        grid-template-columns: 1fr;
    }

    header nav.navigation .navigation-menu ul > li.menu-item-has-children > ul > li > a {
        padding: 14px var(--medium);
        background: transparent !important;
        color: inherit !important;
    }

    header nav.navigation .navigation-menu ul > li.menu-item-has-children > ul > li > div {
        position: relative;
        left: 0;
        display: none;
    }

    header nav.navigation .navigation-menu ul > li.menu-item-has-children > ul > li.open > div {
        display: flex;
    }
	
	header nav.navigation .navigation-menu ul > li.menu-item-has-children > ul > li > a:after {
/* 		content: ''; */
		content: none;
/* 		transition: all 0.3s; */
	}
	
/* 	header nav.navigation .navigation-menu ul > li.menu-item-has-children > ul > li.open > a:after {
		transform: rotate(180deg);
	} */
	
	header nav.navigation .navigation-menu ul > li.menu-item-has-children > ul:not(:has(> li:hover)) > li:first-child > a:after {
		color: var(--color-primary);
	}
	
	header nav.navigation .navigation-menu ul > li.menu-item-has-children > ul > li.open > div,
	header nav.navigation .navigation-menu ul > li.menu-item-has-children > ul:not(:has(> li:hover)) > li:first-child > div {
		display: none;
	}

    header nav.navigation .navigation-actions {
        display: flex;
        /* padding: 30px 30px var(--medium); */
        margin-left: auto;
    }

    header nav.navigation .navigation-actions:after {
        display: none;
    }
    


    
    section.hero {
        padding: calc(var(--huge) + var(--headerheight)) 0 var(--extralarge) 0;
    }


    section.breadcrumb {
        top: calc(var(--headerheight) + var(--extrasmall));
    }


    section.team .team-grid {
        grid-template-columns: repeat(4, 1fr);
    }
    

    .slick-list {
        overflow: hidden;
    }

    .slick-arrows {
        padding-top: var(--small);
    }
	

}

@media (max-width: 992px) {

    
    :root  {
        --base: 7.5px;
    }

    body {
        font-size: 15px;
    }


    h1,
    .h1 {
        font-size: 26px;
    }

    .h2,
    h2 {
        font-size: 24px
    }

    .h3,
    h3 {
        font-size: 22px;
    }

    .h4,
    h4 {
        font-size: 18px;
    }

    .h5,
    h5 {
        font-size: 16px;
    }

    .h6,
    h6 {
        font-size: 15px;
    }

    :is(h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6).large {
        font-size: 26px;
    }

    .label {
        font-size: 18px;
    }

    .btn {
		font-size: 15px;
        gap: 15px;
        padding: 16.5px 22.5px 12.5px 22.5px;
    }

    .background:not(.background + *) {
/*         border-top-left-radius: var(--border-radius); */
/*         border-top-right-radius: var(--border-radius); */
		border-top-left-radius: 0;
        border-top-right-radius: 0;
    }

    .background:not(:has(+ .background)) {
/*         border-bottom-left-radius: var(--border-radius); */
/*         border-bottom-right-radius: var(--border-radius); */
		border-bottom-left-radius: 0;
        border-bottom-right-radius: 0;
    }
	
	.background:not(.background + *) {
		padding-top: var(--extralarge);
	}



	header nav.navigation {
		padding: var(--extrasmall) 0;
	}
	
    header nav.navigation .navigation-logo {
        width: 110px;
    }
	
	header.scrolled nav.navigation .navigation-logo {
		width: 75px;
	}
	
	header nav.navigation .navigation-actions .btn {
		padding: 11.5px 12.5px 7.5px 12.5px;
		gap: 7.5px;
	}
	
	header nav.navigation .navigation-actions .btn:after {
		font-size: 14px;
	}



	section.hero {
		padding: calc(var(--gigantic) + var(--huge) + var(--medium)) 0 var(--extralarge) 0	
	}
	
    section.hero .hero-image {
        border-radius: 0;
    }
    
    section.hero .hero-image .hero-image__play {
        width: 50px;
        height: 50px;
    }

    section.hero .hero-image .hero-image__play:before {
        width: 45px;
        height: 45px;
    }

    section.hero .hero-image .hero-image__play:after {
        font-size: 18px;
    }

    section.hero.hero--large .hero-image:before {
        background:
            linear-gradient(270deg, rgba(128, 128, 128, 0) 15.9%, rgba(30, 48, 80, 0.36) 99.96%),
            linear-gradient(90deg, rgba(128, 128, 128, 0) 15.9%, rgba(30, 48, 80, 0.36) 99.96%);
    }
	
	section.hero .hero-content {
		font-size: 16px;
	}

    section.hero .hero-content > *:not(.hero-content__buttons) {
        margin-right: 0;
    }
	
	section.hero .hero-cta {
		text-shadow: 0 0 20px rgba(0, 0, 0, 0.5);
		margin-top: var(--small);
	}



    article.article.article--blocks {
        padding-bottom: 0;
    }

    article.article.article--blocks .article-content:before {
        top: unset;
        bottom: 0;
        width: 100%;
        height: calc(100% + var(--large))
    }

    article.article.article--blocks .article-content {
        background: #FFFFFF;
        border-radius: var(--border-radius);
        padding: var(--smallmedium);
        padding-top: 0;
        margin-top: 0;
    }

    article.article.article--reverse.article--blocks .article-content {
        padding: var(--smallmedium);
        padding-top: 0;
    }
	
	article.article.background .article-content {
		margin-top: 0;
	}
	
	article.article .article-content .article-content__buttons {
		gap: var(--extrasmall);
	}
	
	article.article .article-image {
		padding-bottom: 66%;
	}



	section.logos [data-slider="logoslider"] {
		margin: var(--small) var(--small-negative) 0; 
	}
	
    section.logos .logos-slider img {
        padding: 20px 20px;
        margin: 0 var(--small);
    }



    section.comparison .compare {
        width: 100%;
        margin-right: 0;
    }
	
	section.comparison .compare__handle:after {
		font-size: 20px;
		padding: 3.25px 7.5px;
	}



    section.team .team-grid {
        grid-template-columns: repeat(2, 1fr);
    }
	
	section.team .team-grid .team-content {
		margin-right: 0;
	}
	
	section.team .team-grid .card .card-content {
		padding: var(--small) var(--extrasmall) var(--extrasmall);
	}
	
	section.team .team-grid .card .card-content .card-content__label {
		hyphens: auto;
	}




	
	footer .footer-main .footer-logo {
		margin-right: 0;
	}

    footer .footer-main .footer-logo img {
        max-width: 150px;
    }
	
	footer .footer-main .footer-content.footer-content--default {
		padding-top: unset;
	}
	
	footer .footer-main .footer-button {
		margin-top: var(--extrasmall);
	}

    

   

   
}   




@keyframes pulse {
    0% {
        box-shadow: 0 0 0 0px var(--color-primary);
    }
    100% {
        box-shadow: 0 0 0 15px rgba(0, 183, 190, 0);
    }
}






@keyframes rotation {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
} 
