@import url('https://fonts.googleapis.com/css2?family=Bodoni+Moda:wght@400;500;700&display=swap');

:root{
	--themeRed: 		#C0001E;

	--themeGreen: 		#00885E;
	--themeGreenDark: 	rgb(36,87,61);
	--themeGreenLight: 	#E9F3EF;
	--themeGreenOverlay: rgba(0,36,25,0.61);
	
	--themeTint: 		#fff;

	--themeBlue:		rgb(10,22,38);

	--themeGrey:		rgb(232,232,232);
	--themeGreyDark: 	#222222;
	--themeGreyLight:	#f9f8f6;
	--themeGreyLight2:	#FCFCFC;
	--themeGreyLight3:	rgb(249,248,247);
	--themeGreyBg: 		var(
	--themeGreyLight);
	--themeGreyLightBg: var(
	--themeGreyLight3);

	--themeText:		#3A4245;
	--themeTextLink:	#434343;
	
	--themeMenuText:	var(
	--themeGreyDark);
	--themeTitles:		var(
	--themeGreyDark);
	--themeTitlesGrey:	#646464;
	--themeBorderColor: #ededed;
	--themeBorderRadius:20px;
	font-size:16px;
}

body{
	background-color:#fff;
	font-family: 'Space Grotesk', sans-serif;
	color:var(--themeText);
	overflow-x: clip;
}
body.showMenu{
	overflow:hidden;
}
h1,h2,h3,h4{
	font-family: 'Space Grotesk', sans-serif;
	color: var(--themeTitles);
	font-weight: bold;
	letter-spacing: 0em;
	margin: 0.5em 0;
	text-transform:uppercase;
	line-height: 1.0em;
}

h1{
	font-size:64px;
}
h2{
	font-size:48px;
}
h3{
	font-size:30px;
}
h4{
	font-size:18px;
}

h1 font,
h2 font,
h3 font,
h4 font{
	color:var(--themeRed);
}

h1 small{
	font-size: 0.3em;
	color:var(--themeGreen);
}

small.subTitle{
	color:var(--themeGreen);
	font-size: 1.1em;
	text-transform:uppercase;
}

h2 small{
	font-size:0.9em;
	color:var(--themeGreen);
}

@media screen and (max-width: 769px){
	h1{
		font-size: 33px;
	}
	h2{
		font-size: 18px;
	}
	h3{
		font-size: 28px;
	}
	h4{
		font-size: 18px;
	}
}

h1.subTitle,h2.subTitle,h3.subTitle,h4.subTitle{
    letter-spacing: normal;
    color: #aab0b5;
    text-align: center;
    margin: 20px 0;
}
p{
	color: var(--themeText);
}

a{
	color: var(--themeTextLink);
	text-decoration:none;
	cursor:pointer;
}
a:not(.underline):hover{
	text-decoration:none;
}
a:active, a:focus { 
 outline: none; 
}
a.underline{
	text-decoration:underline;
}

.pointer{
	cursor:pointer;
}

form {
	margin:0;
}
::selection {
    background: #3d4f58;
    color: #fff;
    text-shadow: none;
}

.noselect {
  -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
     -khtml-user-select: none; /* Konqueror HTML */
       -moz-user-select: none; /* Firefox */
        -ms-user-select: none; /* Internet Explorer/Edge */
            user-select: none; /* Non-prefixed version, currently
                                  supported by Chrome and Opera */
}

.noUppercase{
	text-transform:none;
}

.grecaptcha-badge{
	display: none !important;
}
.hidden{
	display:none;
}
.relative{
	position:relative;
}
.fixed{
	position:fixed;
}
.ellipsis {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

select{
	-moz-border-radius: 0px;
    -webkit-border-radius: 0px;
    -webkit-appearance: none;	
}select::-ms-expand {
    display: none;
}
select,
textarea,
input:not([type=radio]):not([type=checkbox]){
    height: 38px;
    line-height: 1.8em;
    padding: 24px 15px;
    font-size: 15px;
    border:0;
    transition:border-color .2s ease-in-out;
    background-color: white;
    color: var(--themeTitles);
    width: 100%;
    resize: vertical;
    position: relative;
    z-index: 1;
    border-radius: 4px;
    border: 1px solid #9EA9A8;
}
input:hover {
	border: 1px solid var(--themeGrey) !important;
}
textarea{
    padding: 10px 20px;
    height: auto;
}
select{
	padding: 10px 15px;
	height: auto !important;
}
input:focus{
	outline: none;
}	
input{
	resize:none !important;
}

.transparent    {background-color:transparent;}

.py-4{
	margin-bottom:0px;
}
.bigpadding{
	padding:80px 0;
}

.nopadding{
	padding:0px;
}
body .nopadding_i{
	padding:0px !important;	
}
.nopadding_l{
	padding-left:0px;
}
.nopadding_r{
	padding-right:0px;	
}
.nomargin{
	margin:0;
}
.nobackground{
	background-color:inherit !important;
}
.container_white{
	background-color:#FFF;
}
.transbackground{
	background-color:rgba(0,0,0,0.0);
}
.lightGreyBg{
	background-color: var(--themeGreyLightBg);
}

.greenLightBg{
	background-color: var(--themeGreenLight);
}

body .htmlblok p{
}

.white{
	background-color: #fff;
}
.brown{
	background-color: var(--themeBrown);
}
.greyLight{
	background-color: var(--themeGreyBg);
}
.grey{
	background-color: var(--themeGrey);
}

.greenText{
	color: var(--themeGreen);
}

.left_align{
	text-align:left;
}
.right_align{
	text-align:right;
}

.right{
	float:right;	
}
.left{
	float:left;
}

a.buster {position:Absolute;top:0;left:0;width:10px;height:10px;}
a.buster img{opacity:0.01; width:10px; height:10px;}

.py-4.default{
	margin:80px 0;
}
.lightbox{
	display:none;
}

.alignCenter{
	text-align: center;
}

.button, .button {

	--bgColor: var(--themeGreen);
	--txtColor: var(--themeTint);
	--borderColor: var(--bgColor);display: inline-flex;letter-spacing: normal;text-align: center;border-radius: 5px;cursor: pointer;box-sizing: border-box;transition: all .1s ease-in-out;border: none;font-size: 14px;font-weight: 400;text-transform: uppercase;padding: 14px 30px;align-items: center;justify-content: center;background-color: var(--bgColor);color: var(--txtColor);border: 1px solid var(--borderColor);}

.button svg{
    height: 25px;
}

.button:hover{
	transform:translateY(-1px);
	/* border-bottom:1px solid rgba(0,0,0,.2); */
}
.button:active{
	transform:translateY(0px);
	/* border-bottom:0px solid rgba(0,0,0,.2); */
}

.button.white{
	--bgColor: #fff;
	--txtColor: var(--themeBlue);
}
.button.red{
	--bgColor: var(--themeRed);
	--txtColor: var(--themeTint);
}
.button.hollow{
	background:transparent;
	--txtColor: var(--bgColor);
	--borderColor: var(--bgColor);
}

.button.greenText{
	--txtColor: var(--themeGreen);
}
.button.arrowButton{
	gap: 20px;
	transition: gap .2s ease-in-out;
}
.button.arrowButton svg{

}
.button.arrowButton:hover{
	gap:40px;
}

blockquote {
	display: inline-block;
	padding: 10px 0;
	margin-left: 0;
	margin-right: 0;
	font-style: normal;
}
.py-4 blockquote p{
	font-size: 34px !important;
	line-height: 1.2em;
	font-weight: 300;
	color: var(--themeGreen) !important;
}
blockquote p:before{
	content:'"';
}
blockquote p:after{
	content:'"';
}

.miniTitle{
	color:var(--themeGreen);
	font-size: 1.125rem;
	text-transform: uppercase;
	margin:0;
	font-weight: 400;
}


.background{
	position:absolute;
	z-index:0;
	height:100%;
}

body .big_container{
	max-width:1920px !important;
}


.greenBox{
    background-color:var(--themeGreen);
    background-image: url(/images/background-info.svg);
    background-size: cover;
}
.redBox{
    background-color:var(--themeRed);
    background-image: url(/images/background-red.svg);
    background-size: cover;
}

.pageBlock{
	min-height:150px;
	padding: 35px 50px;
	border-radius: 10px;
}
.pageBlock h3,
.pageBlock p{
	color: white;
}

.pageBlock{
    padding: 30px;
}

.largeQuote{
	
}
.largeQuote h1{
	color:var(--themeGreen);
	font-size: 105px;
	line-height: 0.84em;
	margin: 0;
}
.largeQuote h1 small{font-size: 40%;line-height: 1.1em;text-transform: none;}

@media screen and (max-width: 1024px) and (min-width:769px){
	.largeQuote h1{
		font-size:80px;
	}
}

@media screen and (max-width: 769px){
	.largeQuote h1{
		font-size: 41px;
	}
}

.gradientLine{
	height: 3px;
	width:100%;
	background: linear-gradient(90deg, #ffffffd4, rgba(255, 255, 255, 0.0));
}

.fullImageRow{
	position:relative;
	background: center/cover no-repeat;
	aspect-ratio: 2;
	width: 100%;
	margin: 0;
}
.fullImageRow *{
	color:var(--themeTint);
	color:var(--themeTint);
	z-index:1;
}
.fullImageRow::after{
	position:absolute;
	content:'';
	top:0;
	left:0;
	width:100%;
	height:100%;
	background: var(--themeGreenOverlay);
	z-index:0;
}
.fullImageRow small.subTitle{
	color:#fff;
}

.gridItemHolder{
	--columns: 3;
	--gap: 15px;
	display: grid;
	grid-template-columns: repeat(var(--columns), minmax(0, 1fr));
	grid-gap: 12px var(--gap);
	padding: var(--gap);
}

.gridItemHolder .gridItemHeader{
	width: 100%;
	height: max-content;
	display:flex;
	border-bottom: 1px solid var(--themeTextLightGrey3);
	flex-direction: row;
	padding: 0 15px;
}
.gridItemHolder .gridItemHeader span{
	color:var(--themeBlueLight2);
	font-size:13px;
	flex: 1;
	display: inline-flex;
	align-items: center;
	justify-content: flex-start;
	height: 63px;
	font-weight: 400;
}

.gridItemHolder .gridItem{
	width: 100%;
	height: 100%;
}

.gridItemHolder .gridItem h2{
	margin:0;
	font-size: 15px;
}

.gridItemHolder .gridItem.titleItem h2{font-weight: 700;border-bottom: 1px solid var(--themeColorLightGrey);padding-bottom: 5px;margin: 10px 0 5px;}

.gridItemHolder .gridItem div > font{
	color: var(--themeRed);
	line-height: 1em;
	font-weight: 600;
	display: inline-flex;
	align-items: center;
	gap: 5px;
	padding: 7px 0 0;
	font-size: 12px;
}
.gridItemHolder .gridItem font svg{
	height: 1.0em;
}
.gridItemHolder .gridItem .gridItem-image{
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	gap: 5px;
}
.gridItemHolder .gridItem .gridItem-image > div{
    flex: 1;
    display: flex;
    flex-direction: row;
}
.gridItemHolder .gridItem .gridItem-image > div .gridItem-sub{
	width:100%;
}

.gridItemHolder .gridItem .gridItem-image > img{
	height: auto;
    width: auto;
    max-height: 67px;
    max-width: 90px;
    border-radius: 6px;
}
.gridItemHolder .gridItem .gridItem-image .noImage{
	height: 21px;
    padding: 23px;
    box-sizing: content-box;
    background-color: rgb(221 221 221 / 13%);
    border: 1px solid rgb(221 221 221 / 37%);
}

.navigatorHolder{
	width: 100%;
	max-width: 1000px;
	margin:20px auto;
	display: flex;
	justify-content: center;
	align-items: center;
}

.jumbo-header{position: relative;}
  
/* -- messages -- */
div.messagePopupBox{
	position:fixed;
	max-height:100vh;
	overflow-y:auto;
	overflow-x:hidden;	
	bottom:0;
	right:0;
    z-index: 1111111;
    padding: 27px;
}
div.messagePopupBox:empty{
	display:none;
}

div.messagePopupBox .popupMessage {
    width: 100%;
    background-color: #3ac73f;
    padding: 25px;
    margin-top: 10px;
    color: #000;
    opacity: 0.0;
    transition: opacity .6s ease-in-out;
    box-shadow: 3px 3px 0px -1px rgba(0, 0, 0, 0.09);
	cursor:pointer;
}
div.messagePopupBox .popupMessage.shown{
	opacity:1.0;
}
div.messagePopupBox .popupMessage.error{
	background-color: #ff2b2b;	
}
div.messagePopupBox .popupMessage.warning{
	background-color: orange;
}

div.container.textField a{
	/* color:#6d820d; */
}
div.container.textField h4 ~ h2{
	margin-top:0;
}

body div.titleBar h1,
body .textField h1,
body div.titleBar h2,
body .textField h2,
body div.titleBar h3,
body .textField h3{
	/* color: #709840; */
}
/* --------------------- */

div.sideInfo div.sideContent{
    padding: 30px;
}

div.sideInfo .sideImage{
	height:200px;
}

div.imageHolderHolder{
    margin: 0;
    padding: 0;
    width: 100%;
    height: 400px;
    overflow: hidden;	
}
div.imageHolderHolder div.imageHolder:hover {
    transform: scale(1.05);
}


element.style {
    background-image: url(upload/fotoalbum/9/114.jpg);
}
div.imageHolder{
	position: relative;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	margin: 0;
	padding: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
	border-radius: var(--themeBorderRadius);
	transition: transform 0.2s ease-in-out;
}
div.imageHolder img{
	min-width: 100%;
    min-height: 100%;
    height: auto;
    width: 100%;
    position: absolute;
    z-index: 0;
    object-fit: cover;
    transition: all .2s ease-in-out;
}

div.imageHolder.vertical img{
	height:100%;
	width:auto;
}
div.imageHolder.incr img{
	transform: translateX(-50%) translateY(-50%) scale(1.01);
}

div.loader{
	position:absolute;
	width:100%;
	height:100%;
	top:0;
	left:0;
	z-index:9999;
	background-color: rgba(255,255,255,0.8);
	opacity: 0.0;
	transition: opacity .1s ease-in-out;
}
div.loader img{
    position: absolute;
    width: 10%;
    min-width: 80px;
    max-width: 140px;
    height: auto;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);	
}
div.loader.show{
	opacity:1.0;
}

#map{
	width:100%;
	height:400px;
}

select.wrong,
textarea.wrong,
label.fileInput.wrong,
label.checkbox.wrong,
input.wrong{
	background-color: rgba(205, 0, 57, 0.06) !important;
    border-color: rgba(205, 0, 57, 0.18) !important;
}

div.viewer_error,
div.viewer_message{
	background-color: #008005;
	padding: 15px;
	margin-bottom: 20px;
}
div.viewer_error{
	background-color: #ca0000;
	color: #fff;
}


label.fileInput {
    display: block;
    min-height: 55px;
    height: auto;
    float: left;
    width: 100%;
    padding: 5px;
    margin-bottom: 20px;
    border-radius: 2px;
    box-sizing: border-box;
    border: 2px solid transparent;
}
label.fileInput span{	
    width: 100%;
    line-height: 37px;
    height: 37px;
    font-size: 16px;
    display: inline-block;
    vertical-align: middle;
    padding-left: 12px;
}
label.fileInput a:not(.button){	    
    padding: 0 10px;
}

@media (max-width: 800px){
	label.fileInput{		
		text-align: center;
	}
}
@media (min-width: 801px){
	label.fileInput a{	    
		float:right;
	}
}

label.fileInput input{
	display:none;
}

label.checkbox{
    position: relative;
    display: inline-block;
    width: 100%;
    padding: 10px 20px 7px;
    background-color: #eee;
    margin-bottom: 8px;
	cursor:pointer;
}
label.checkbox input{
    display: block;
    position: Absolute !important;
    width: 15px !important;
    height: 15px !important;
    top: 12px;
    right: 10px;
}

p.error {
    color: #ff2b2b;
    margin: -12px 0 10px 0 !important;
    font-weight: 600;
    font-size: 15px;
}

div.textBox{
	width:100%;
	height:auto;
}

.boxShadow{
	box-shadow: 0 0 7px rgb(0 0 0 / 34%);
}

/* -- template -- */

.noiseBackground{
	background-color: #fff;
	background-image: url(/images/background-noise.png);
}

.imageBox{
	width:100%;
	float: left;
	height: auto;
	padding-right: 4vw;
}
.imageBox img{
	float:left;
	width:50%;
}

.pageContent{
	padding: 50px 15px;
}

.messageHolder{
	position:relative;
	width:100%;	
    float: left;	
    padding-top: 10px;
}
.messageHolder:empty{
	display:none;
}

.success, .warning, .attention, .information {
    width: 100%;
    z-index: 10;
    padding: 10px 10px 10px 33px;
    margin-bottom: 10px;
    color: #555555;
}
.success {
    background: #EAF7D9 url(../image/success.png) 10px center no-repeat;
}
.warning {
    background: #FFD1D1 url(../image/warning.png) 10px center no-repeat;
}
.attention {
    background: #FFF5CC url(../image/attention.png) 10px center no-repeat;
}
.information {
    background: #f7f3ec;
}
.success .close, .warning .close, .attention .close, .information .close {
    float: right;
    padding-top: 4px;
    padding-right: 4px;
    cursor: pointer;
}

.underlined{
    position:relative;
}
.underlined:after {
    content:'';
    height:3px;
    width:100%;
    max-width:200px;
    background: linear-gradient(90deg, var(--themeGreen),transparent);
    position: absolute;
    top: 100%;
    left: 0;
}

.parallax-mirror{
	overflow:visible !important;
}

.card{
	display: flex;
	background: white;
	flex-direction: column;
	align-items: stretch;
	gap: 0;
	padding: 1.8rem;
	border-radius:15px;
	border:1px solid var(--themeBorderColor);
	transition: all .2s ease-in-out;
	box-shadow: 0 8px 20px rgba(0,0,0,0.04);
}

.onzeBeloftes h3{
	color:#fff;
	margin-top: 0;
	transform:translateY(-5px);
}
.onzeBeloftes li{
	padding-bottom: 25px;
	padding-left: 20px;
	color: #f3f3f3;
	list-style-image: url(../images/icons/arrow-right-circle.svg);
}

::placeholder {
	color: #9EA9A8;
	opacity: 1; /* Firefox */
}
  
  ::-ms-input-placeholder { /* Edge 12 -18 */
	color: #9EA9A8;
}


@media (min-width: 768px){
	*::-webkit-scrollbar {
		width: 4px;
		height: 4px;
		background-color: var(--themeTint);
	}
	*::-webkit-scrollbar-thumb {
		width: 4px;
		height: 4px;
		background-color: var(--themeGreen);
	}
}
@media (min-width: 2000px){
	.{
		max-width:1400px !important;
	}
	.py-4 .container{
		max-width:100%;
	}
}
@media (max-width: 1500px){
	div.menuMax div.fslide img{
		min-height:100%;
		height:100% !important;
		width:auto !important;
		position: absolute;
		left: 50%;
		top: 50%;		
		transform: translateX(-50%) translateY(-50%);		
	}
}

@media (max-width: 1200px){
	.not_tablet{
		display:none;
	}
	.tablet_nomargin{
		margin:0 !important;
	}
	.tablet_nopadding{
		padding:0;
	}
	.tablet_container_customWidth{
		width: 670px;
	}	
	.py-4 .container {
		max-width: 100% !important;
	}
	.container {
		max-width: 100%;
	}
	.tablet_fullwidth{
		width: 100%;
	}
	.{
		max-width: 100% !important;
	}
	
	.infoBoxes div.col {
		min-height: 200px;
	}
}

@media (max-width: 769px){	
	div.sliderTextBox {
		margin-top: -40px;
	}

	.pageContent img{
		max-width:100%;
		height:auto !important;
	}
	.py-4{
		overflow-x:hidden;
	}
	body .jumbo-diensten {
	    padding-top: 173px;
	    padding-bottom: 0px;
	    margin-bottom: 0;
	}
	.directWeten .col-md-5 .content {
	    justify-content: center;
	    min-height: auto;
	}
}
@media (max-width: 1024px){	
	.py-4{
		overflow: hidden;
	}
	div.sliderTextBox {
		margin-top: -70px;	
	}
	div.textBox {
		padding: 10px 35px 45px;
	}
}


@media (min-width: 1025px){
	body .mobile_only{
		display:none !important;
	}
	.not_mobile_nopadding_r{
		padding-right:0;
	}
    div.divider{
        border-bottom: 1px solid var(--themeText);
        width: 1600px;
		max-width:100%;
        margin: auto;
    }
}
@media (min-width: 1025px){
	.not_mobile_nopadding{
		padding:0;
	}
	.not_mobile_nomargin{
		margin:0;
	}	
	.only_mobile{
		display:none;
	}
}
@media (max-width: 1024px){

	.not_mobile{
		display:none;
	}
	.not_mobile_i{
		display:none !important;
	}
	.mobile_nomargin{
		margin:0;
	}
	.mobile_nopadding{
		padding:0;
	}

	.mobile_fullwidth{
		width:100%;
	}
}	
@media (max-width: 993px){	
}
@media (min-width: 769px){	
	.phone_only{
		display:none !important;
	}
}
@media (max-width: 769px){	
	.not_phone{
		display:none !important;
	}
	div.background{
		display:none;
	}

	.fullImageRow {
		padding: 35px 0;
	}
	html{
		overflow-x:clip;
	}
}
