/* Table of Content
==================================================
	#Font-Face
	#Site Styles
	#Media Queries */

/* #Font-Face
================================================== */
@font-face {
  font-family: 'mosk-medium';
  src: url('assets/fonts/mosk-medium-500.ttf') format('truetype');
  font-weight: 500;
  font-style: normal;
}
@font-face {
  font-family: 'mosk-extra-bold';
  src: url('assets/fonts/mosk-extra-bold-800.ttf') format('truetype');
  font-weight: 800;
  font-style: normal;
}

/* #Site Styles
================================================== */

:root {
    --color-green: #007838;
    --color-green-darker: #005628;
    --color-lime: #ACBC39;
    --color-orange: #F39200;
    --color-black: #1A1A1A;
    --color-darkgrey: #454545;
    
    --default-font-family: mosk-medium;
    --default-font-size: 18px;
    --font-h1: 64px/100% mosk-extra-bold;
    --font-h2: 48px/100% mosk-extra-bold ;
    --font-h3: 40px/100% mosk-extra-bold ;
    --font-h4: 24px/100% mosk-extra-bold;
    --font-h5: 14px/100% mosk-extra-bold; /* letter-spacing:7px; */ 
    --font-h6: 14px/100% mosk-extra-bold;
    
    --font-large: 24px/150% mosk-medium;
    --font-normal: 18px/150% mosk-medium;
    
    --base-transition: all 0.3s;
}


.holder{position: relative;}
.slider_buttons{position: absolute; right:0; top:-20px; width:75px;}
.slider-nav.slider-nav-next{top:-8px;}
.slider-nav{padding:0 !important;}
.slider-nav::after {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' fill='%23000' viewBox='0 0 256 256'%3E%3Cpath d='M224 128a8 8 0 0 1-8 8H59.31l58.35 58.34a8 8 0 0 1-11.32 11.32l-72-72a8 8 0 0 1 0-11.32l72-72a8 8 0 0 1 11.32 11.32L59.31 120H216a8 8 0 0 1 8 8Z'/%3E%3C/svg%3E") !important;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' fill='%23000' viewBox='0 0 256 256'%3E%3Cpath d='M224 128a8 8 0 0 1-8 8H59.31l58.35 58.34a8 8 0 0 1-11.32 11.32l-72-72a8 8 0 0 1 0-11.32l72-72a8 8 0 0 1 11.32 11.32L59.31 120H216a8 8 0 0 1 8 8Z'/%3E%3C/svg%3E") !important;
width:2rem !important; height:2rem !important;
}


.wp-block-media-text{background: #F5F6F3; padding-right: calc((100% - 1338px) / 2); padding-left: calc((100% - 1338px) / 2); padding-top:120px; padding-bottom:120px;}
.wp-block-media-text .wp-block-heading{color:var(--color-green);}

.wp-block-media-text .wp-block-button__link {border-radius:0; height: fit-content; width: fit-content; padding: 13px 16px 13px 18px; color: #fff; background-color: var(--color-lime); font:var(--font-h5); letter-spacing: 0.07em; text-transform:uppercase; position: relative;}
.wp-block-media-text .wp-block-button__link:after{content:' '; height:40px; width:13px; background-image:url('assets/images/btn-right.svg'); background-repeat:no-repeat; position:absolute; right:-13px; top:0;}
.wp-block-media-text .wp-block-button__link:hover {background-color: #B2AF00; border-color:#B2AF00;}

/* ### general ### */
* { margin: 0; padding: 0; box-sizing: border-box; }
html,
body { font-family: var(--default-font-family), sans-serif; -webkit-font-smoothing:antialiased; -moz-font-smoothing:antialiased; -o-font-smoothing: antialiased; font-size: var(--default-font-size); color: var(--color-darkgrey) }
body { background: #fff;}
html{}

input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration {
	display: none;
}
ul,
li { list-style: none; }
:focus { outline: none; }
img { display: block; max-width: 100%; height: auto; border: 0; }
a { display: inline-block; transition: var(--base-transition); }
h1,
h2,
h3,
h4,
h5,
h6 {  }
h1 { font: var(--font-h1); margin-bottom:40px; text-transform: uppercase;}
h2 { font: var(--font-h2); margin-bottom:24px; text-transform: uppercase;}
h3 { font: var(--font-h3); margin-bottom:8px; text-transform: uppercase;}
h4 { font: var(--font-h4); text-transform: uppercase;}
h5 { font: var(--font-h5); text-transform: uppercase; letter-spacing:0.07em;}
h6 { font: var(--font-h6); text-transform: uppercase;}

p{margin-bottom:24px; line-height:150%; font-size: var(--default-font-size); opacity: 0.85;}

a{color: var(--color-darkgrey); text-decoration: none !important;}
a:hover{color:var(--color-lime);}

/* ### global classes ### */
.clear { visibility: hidden; clear: both; height: 0; line-height: 0; }
.center { margin: 0 auto; padding-right: 15px; padding-left: 15px; position: relative; max-width: 1368px; }
.centered { padding-right: calc((100% - 1338px) / 2); padding-left: calc((100% - 1338px) / 2); }
.hide{display:none !important;}
.text-green{color:var(--color-green);}
.text-lime{color:var(--color-lime);}
.text-orange{color:var(--color-orange);}
.text-green-darker{color:var(--color-green-darker)}

.type_text .inner ul, .wp-block-media-text ul{padding-left:20px;}
.type_text .inner ul li, .wp-block-media-text ul li{list-style: disc; list-style-position: inside; margin-bottom:5px;}

.post-header{background-color: var(--color-green); color:#ffffff; padding:120px 0 80px;}
.post-header .breadcrumbs{color:var(--color-lime); margin-bottom:16px;}
.post-header .breadcrumbs a{color:var(--color-lime);}

.widget{display:flex; flex-direction: column; border:1px solid #F0F0F0; padding:24px; margin-bottom:24px;}
.widget .widget_title{font: var(--font-h2); color:var(--color-green); margin-bottom:16px; }
.widget .widget_text{margin-bottom:16px; opacity: 0.85; line-height:150%; }
.widget .btn{margin-bottom:16px;}

.single-post .post_enty{margin-top:120px;}
.single-post .summary p{color:#454545; font-size:24px; line-height: 150%; opacity: 0.85;}
.single-post .summary .title{font: var(--font-h2); color:var(--color-green); margin-bottom:24px; }

.wp-block-media-text ul{margin-bottom:16px}
.wp-block-media-text ul li{display: flex; align-items: center; line-height:150%; min-height:56px; padding-left:68px; background-image: url('assets/images/icon-list.svg'); background-repeat: no-repeat; background-position: left top;}

.hero{background-color:var(--color-green); color:white; padding:144px 0 120px 0; background-repeat: no-repeat; background-position: center; background-size: cover;}
.hero .content_box{max-width:640px;}
.hero .page_description{margin-bottom:40px;}
.hero .links .btn{margin-right:32px;}

/* Buttons */
.btn {height: fit-content; width: fit-content; padding: 13px 16px 13px 18px; color: #fff; background-color: var(--color-lime); font:var(--font-h5); letter-spacing: 0.07em; text-transform:uppercase; position: relative;}
.btn:after{content:' '; height:40px; width:13px; background-image:url('assets/images/btn-right.svg'); background-repeat:no-repeat; position:absolute; right:-13px; top:0;}
.btn:hover {background-color: #B2AF00; border-color:#B2AF00;}

.btn.dark{background-color:var(--color-green-darker); }
.btn.dark:after{background-image:url('assets/images/btn-right-green.svg');}
.btn.dark:hover{}

.btn.secundair{}
.btn.secundair:hover{}

.btn.outline {background:white; color:var(--color-green); border:2px solid var(--color-green);}
.btn.outline:after{display: none;}

.btn.outline:hover {  border-color:#525110; }

.hexa{display: inline-block; width:57px; height:57px; position:relative; background-image:url('assets/images/polygon-filled.svg'); background-repeat: no-repeat; background-size:contain;}
.hexa:before{width:57px; height:57px; content: ' '; display:inline; position:absolute; left:-2px; top:-2px; background-image:url('assets/images/icon-arrow-right-white.svg'); background-repeat: no-repeat; background-size:32px; background-position: center;}
.hexa:hover{}

.hexa.outline{background-image:url('assets/images/polygon.svg');}
.hexa.outline:before{background-image:url('assets/images/icon-arrow-right.svg');}


.postcard{background:#ffffff; padding:16px; }
.postcard .image_container{margin-bottom:16px;}
.postcard .title{margin-bottom:16px;}
.postcard .bottom{display: flex; justify-content: space-between; gap:16px; align-items: center;}

.tile{color:#ffffff; position: relative; aspect-ratio: 1.3 / 1; width: 100%; display: flex; align-items: end;}
.tile .image_container{position: absolute; top: 0; left: 0; right: 0; bottom: 0; z-index: 0; }
.tile .image_container img:before{width:100%; height:100%; content: ' '; display:block; background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 100%);}
.tile .image_container img{width: 100%; height: 100%; object-fit: cover; display: block;}
.tile .content {position: relative; z-index: 1; padding:32px;}
.tile .content .title{margin-bottom:8px; font: var(--font-h3);}
.tile .content .description{margin-bottom:0; padding-right: 80px;}
.tile .content .hexa{position:absolute; bottom:36px; right:36px;}

.logobox{background:#ffffff; padding:16px; display:flex; justify-content: space-between; margin-bottom:16px;}

/* ### wrapper ### */
#wrapper { position: relative; display: block; width: 100%; min-height: 100%;}

/* ### main container ### */
#mainCntr { width: 100%; }


/* ### header container ### */
#headerCntr {display: flex; flex-wrap: wrap; align-items: center; width: 100%; transition: all 0.3s; background-color: #ffffff; height: 80px;}
.logged-in #headerCntr{top:32px;}
#headerCntr.active:after { opacity: 1; visibility: visible; }
#headerCntr:after { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: #f2f2ee; content: ''; transition: all 0.3s; opacity: 0; visibility: hidden; }
#headerCntr .logo { position: relative; z-index: 2; }
#headerCntr .logo img { max-width: 100%; }
#headerCntr .menu-btn { display: flex; flex-wrap: wrap; justify-content: flex-end;}
#headerCntr .menu-btn > li { margin-right: 8px; padding-top: 10px; padding-bottom: 10px; position: relative; }
#headerCntr .menu-btn > li:hover ul { opacity: 1; visibility: visible; }
#headerCntr .menu-btn > li:last-child { margin-right: 0; }
#headerCntr .menu-btn > li > a {  text-align: center; text-decoration: none; color: var(--color-black); vertical-align: middle; }
#headerCntr .menu-btn > li > a i { font-size: 20px; }
#headerCntr .menu-btn > li > ul { padding: 25px 23px; position: absolute; top: 100%; left: 50%; display: flex; flex-wrap: wrap; width: 125px; background-color: #fff; filter: drop-shadow(0px 8px 16px rgba(0, 0, 0, 0.08)); transform: translateX(-50%); opacity: 0; visibility: hidden; transition: all 0.3s; }
#headerCntr .menu-btn > li > ul > li { margin-right: 0; margin-bottom: 18px; padding-top: 0; padding-bottom: 0; }
#headerCntr .menu-btn > li > ul > li:last-child { margin-bottom: 0; }
#headerCntr .lang,
#headerCntr .search { display: flex; align-items: center; justify-content: center; width: 48px; height: 48px; border-radius: 50px; background-color: #fff; }

/* ### header-hamburger ### */
.header-hamburger { position: absolute; top: 14px; right: 20px; z-index: 5; display: block; width: 44px; height: 44px; border: solid 1px var(--color-white); ; cursor: pointer; border-bottom-right-radius: 15px; background: transparent; }
.header-hamburger.active { background-color: var(--color-white) }
.header-hamburger span { position: absolute; top: 50%; left: 50%; display: block; width: 22px; height: 2px; text-indent: -9999px; background: var(--color-white); transform: translate(-50%, -50%); transition: 0.2s; }
.header-hamburger span:before,
.header-hamburger span:after { position: absolute; left: 0; display: block; width: var(--width); height: 2px; background-color: var(--color-white); transition-duration: 0.2s, 0.2s; content: ''; }
.header-hamburger span:before { top: -8px; }
.header-hamburger span:after { bottom: -8px; }
.header-hamburger.active span { background: none; }
.header-hamburger.active span:before,
.header-hamburger.active span:after { background-color: var(--color-green); transition-delay: 0s, 0.2s; }
.header-hamburger.active span:before { top: 0; transform: rotate(45deg); }
.header-hamburger.active span:after { bottom: 0; transform: rotate(-45deg); }

/* ### menu box ### */
.menuBox { display: flex; flex-wrap: wrap; justify-content: end; width: 68%; }
.menuBox ul { display: flex; flex-wrap: wrap; }
.menuBox ul > li { margin-right: 24px; position: relative; }
.menuBox ul > li:last-child { margin-right: 0; }
.menuBox ul > li:hover ul { opacity: 1; visibility: visible; }
.menuBox ul > li > a { text-decoration: none; color:var(--color-black); }
.menuBox ul > li > a:hover { color:var(--color-lime); }
.menuBox ul > li > ul { padding: 40px; position: absolute; top: 100%; left: 50%; display: flex; flex-wrap: wrap; width: 664px; background-color: #fff; filter: drop-shadow(0px 8px 16px rgba(0, 0, 0, 0.08)); transform: translateX(-50%); opacity: 0; visibility: hidden; transition: all 0.3s; }
.menuBox ul > li > ul:before { position: absolute; top: -6px; left: 50%; width: 12px; height: 12px; background-color: #fff; content: ''; transform: translateX(-50%) rotate(45deg); z-index: -1; }
.menuBox ul > li > ul > li { margin-right: 0; padding-top: 0; padding-bottom: 0; width: 50%; }
.menuBox ul > li > ul > li > ul { padding: 0 20px 0 0; position: unset; width: auto; display: block; filter: none; transform: translateX(0); }
.menuBox ul > li > ul > li > ul:before { display: none; }
.menuBox ul > li > ul > li > ul > li { margin-bottom: 20px; width: 100%; }
.menuBox ul > li > ul > li > ul > li:last-child { margin-bottom: 0; }

.menuBox ul li ul .submenu_title a:not(.card-service){text-decoration:none; color:#243333 !important;}
.menuBox ul.submenu_columns li:not(:first-child) ul {margin-top: 41px;}


/* ### mobileMenu ### */
.mobileMenu { position: absolute; top: 50%; right: 15px; z-index: 15; display: none; align-items: center; justify-content: center; width: 48px; height: 48px; border-radius: 50%; background-color: #fff; transition: all 0.3s; cursor: pointer; overflow: hidden; transform: translateY(-50%); }
.mobileMenu span { position: absolute; top: 50%; left: 50%; display: block; width: 17px; height: 2px; text-indent: -9999px; border-radius: 20px; background: var(--color-black); transform: translateX(-50%) translateY(-50%); transition: all 0.2s ease-in-out; }
.mobileMenu span:before,
.mobileMenu span:after { position: absolute; left: 0; display: block; width: 100%; height: 2px; background-color: var(--color-black); transition-duration: 0.2s, 0.2s; content: ''; }
.mobileMenu span:before { top: -6px; width: 75%; }
.mobileMenu span:after { bottom: -6px; }
.mobileMenu.active span { background: none; }
.mobileMenu.active span:before,
.mobileMenu.active span:after { transition-delay: 0s, 0.2s; }
.mobileMenu.active span:before { top: 0; transform: rotate(45deg); width: 100%; }
.mobileMenu.active span:after { bottom: 0; transform: rotate(-45deg); }


/* ### search box ### */
.searchBox { padding: 10px 15px; position: fixed; top: 0; left: 0; z-index: 10; width: 100%; background-color: #fff; opacity: 0; visibility: hidden; transition: all 0.3s; }
.searchBox.open { opacity: 1; visibility: visible; }
.searchBox .form-field { position: relative; }
.searchBox input { padding: 15px 65px 15px 81px; width: 100%; height: 80px; font-size: 14px; background-color: #fff; border: 0; color: #838b8b; filter: drop-shadow(0px 8px 16px rgba(0, 0, 0, 0.08)); }
.searchBox button { position: absolute; top: 53%; left: 43px; border: 0; font-size: 20px; background-color: transparent; transform: translateY(-50%); cursor: pointer; }
.searchBox .close { position: absolute; top: 50%; right: 30px; font-size: 22px; color: var(--color-black); text-decoration: none; transform: translateY(-50%); }



/* Global footer cta */

.footer-cta{background-color:var(--color-green); color:#fff;}
.footer-cta .centered{padding-top:64px; padding-bottom:64px; display:flex; gap:64px;}
.footer-cta .column_title{margin-bottom:16px;}
.footer-cta .centered .column{flex:1;}



/* ### footer container ### */
.footer .footerContainer {display: flex; gap:24px; padding-top: 68px; padding-bottom: 68px;}
.footer .column{flex:1;}
.footer .column a{display: table; margin-bottom:8px;}

.footer .column.menus{ display: flex; width: 100%; gap:24px;}
.footer .column.menus > .subcolumn{flex:1;}

.footer .socials, .footer .company{ flex: 0 0 20%;}
.footer .socials a{line-height:24px;}
.footer .socials a img{float:left; margin-right:8px;}
.footer .contact_info{margin-top:27px;}

.footer .column_title{font: var(--font-h5); color: var(--color-green); margin-bottom:8px; text-transform: uppercase;}


.row {
  display: flex;
  flex-wrap: wrap;
  column-gap: 24px; /* horizontale gap */
  row-gap: 24px;    /* optioneel voor verticale gap */
}

[class*="col-"] {
  flex: 0 0 auto;
}

/* ----- SM ≥ 576px ----- */
@media (min-width: 576px) {
  .col-sm-12 { width: 100%; }
}

/* ----- MD ≥ 768px ----- */
@media (min-width: 768px) {
  .col-md-3  { width: calc(25% - 18px); }   /* 2 gaps voor 4 kolommen → 24px / 4 ? */
  .col-md-4  { width: calc(33.333333% - 16px); }
  .col-md-6  { width: calc(50% - 12px); }
  .col-md-8  { width: calc(66.666667% - 16px); }
  .col-md-9  { width: calc(75% - 18px); }
  .col-md-10 { width: calc(83.333333% - 16px); }
  .col-md-12 { width: 100%; }
}

/* ----- LG ≥ 992px ----- */
@media (min-width: 992px) {
  .col-lg-3  { width: calc(25% - 18px); }
  .col-lg-4  { width: calc(33.333333% - 16px); }
  .col-lg-6  { width: calc(50% - 12px); }
  .col-lg-8  { width: calc(66.666667% - 16px); }
  .col-lg-9  { width: calc(75% - 18px); }
  .col-lg-12 { width: 100%; }
}


/* ### footer box ### */



/* #Media Queries
================================================== */

@media only screen and (max-width: 1368px) {
	.centered { padding-right: 15px; padding-left: 15px; }
}

@media only screen and (max-width: 1199px) {
	.menuBox ul > li > ul { transform: translateX(-45%); }
	.menuBox ul > li > ul:before { left: 45%; }
}

@media only screen and (min-width: 992px) {
	#headerCntr .menu-btn > li > ul { display: block!important; height: auto!important; }
	.menuBox ul > li > ul { display: flex!important; height: auto!important; }
	.hide-desktop {display: none !important;}
}

@media only screen and (max-width: 991px) {
	#headerCntr { padding-top: 16px; padding-bottom: 16px; }
	#headerCntr .custom-logo-link{display:flex; margin-top:-10px; width:40%; z-index:1;}
	#headerCntr .menu-btn{flex-wrap:unset; width: 54%; margin-top: -10px; flex-direction: row-reverse; width:60%;}
	#headerCntr .menu-btn .button{ display:none; }
	#headerCntr .menu-btn > li:last-child { width: 100%; }
	#headerCntr .menu-btn > li > ul { margin-top: 0; margin-bottom: 0; left: 0; transition: unset; transform: translateX(0); z-index: 1; }
	#headerCntr .menu-btn > li > ul:before { left: 17px; display: block; transform: translateX(0) rotate(45deg); }
	#headerCntr .menu-btn.d-phone { padding-top: 20px; display: flex; justify-content: flex-start; width: 100%; }
	#headerCntr .menu-btn > li { margin-right: 10px; margin-bottom: 0; min-width:65px;}
	#headerCntr .logo { width: 100%; }
	.menuBox { padding: 100px 15px 60px; position: fixed; top: 0; left: 0; width: 100%; height: 100vh; display: block; background-color:#fff; opacity: 0; visibility: hidden; transition: all 0.3s; overflow-y: scroll; }
	.menuBox.open { opacity: 1; visibility: visible; margin-top:25px;}
	.menuBox ul { display: block; }
	.menuBox ul > li { margin-right: 0; margin-bottom: 20px; padding-top: 0; padding-bottom: 0; }
	.menuBox ul > li:last-child { margin-bottom: 0; }
	.menuBox ul > li > ul {max-width:100%; margin-top: 10px; margin-bottom: 10px; position: unset; width: 100%; transform: translateX(0); opacity: 1; visibility: visible; display: none; transition: unset; }
	.menuBox ul > li > ul:before { display: none; }
	.menuBox ul > li > ul > li { width: 100%; }
	.menuBox ul > li > ul > li > ul { margin-top: 0; margin-bottom: 0;}
	.menuBox ul > li > ul > li > ul > li:last-child { margin-bottom: 20px; }
	.mobileMenu { display: flex; }
	.hide-mobile {display: none !important;}
}


@media only screen and (max-width: 767px) {
	main#contentCntr{margin-top:35px;}
	#headerCntr .logo img { width: 95px; }
	#headerCntr .mobileMenu { display: block; }
	#headerCntr .menu-btn { }
	.menuBox ul > li > a { font-size: 16px; }
	.menuBox ul > li > ul { padding: 20px; }
	.menuBox ul > li > ul > li { width: 100%; }
	.menuBox ul > li > ul > li > ul { padding-right: 0; }
	.menuBox ul > li > ul.industries > li { width: 100%; }
	.searchBox input { padding: 15px 50px 15px 60px; width: 100%; height: 60px; }
	.searchBox button { left: 20px; }
	.searchBox .close { right: 20px; }
}