/*====================================
  IMPORTS & VARIABLES
====================================*/
@import url('https://fonts.googleapis.com/css2?family=Aleo:ital,wght@0,100..900;1,100..900&display=swap');

:root { 
  --zwart: #000;
  --wit: #fff;
  --rood: #d32f2f;
  --lichtgrijs: #f5f5f5;
  --grijs: #757575;
  --blauw: #1976d2;
  --beige: #F5EDE7;
  --donkerbruin: #994D16;
  --bruin: #CD9E7A;
}


/*====================================
  TYPOGRAFIE & BASISOPMAAK
====================================*/
html {
	font-size: 15px;
	color: var(--zwart);
}
body {
	font-size: 1rem;
	font-family: "Aleo", serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	color: var(--zwart);
	background-color: var(--wit);
	overflow-x: hidden;
}
.contentblok {
	position: relative;
}
h1, h2, h3, h4, h5, h6 {
	color: var(--grijs);
	font-weight: 400;
}
h1 { font-size: 3em; margin-bottom: 15px; }
h2 { font-size: 3.5em; margin-bottom: 30px; }
h3 { font-size: 2.5em; margin-bottom: 30px; }
h4 { font-size: 1.6rem; margin-bottom: 15px; }
p { 
	font-size: 1em; 
}
a {
	color: var(--donkerbruin);
	text-decoration: underline;
	transition: color 0.3s;
}
a:hover {
	text-decoration: none;
	color: var(--bruin);
}

/*Mail shortcode*/
.cryptedmail:after {
	content: attr(data-name) "@" attr(data-domain) "." attr(data-tld); 
}

/*====================================
  ALGEMENE KLASSEN
====================================*/
.rounded { border-radius: 100px; }
.pos-rel { position: relative; }
.h-100 { height: 100%; }

.marginBottomKlein { padding-bottom: 30px; }
.marginBottomMiddel { padding-bottom: 60px; }
.marginBottomGroot { padding-bottom: 90px; }

::selection {
  background: rgba(128, 0, 0, 0.42);
  color: var(--wit);
}

/*====================================
	QUOTES EN OPSOMMING
====================================*/
.wp-block-quote p {
	font-size: 1.5em;
	color: var(--blauw);
	padding: 10px 0px;
}
.wp-block-quote p::before {
	content: "\f10d";
	color: var(--blauw);
	font-family: "Font Awesome 6 Pro";
	display: inline-block;
	font-weight: bold;
	margin-right: 10px;
	position: relative;
	top: -10px;
}
.wp-block-quote p::after {
	content: "\f10e";
	color: var(--blauw);
	font-family: "Font Awesome 6 Pro";
	display: inline-block;
	font-weight: bold;
	margin-left: 10px;
	position: relative;
	bottom: -10px;
}
.wp-block-button__link {
	background-color: var(--blauw) !IMPORTANT;
	color: var(--wit) !IMPORTANT;
	border: none !IMPORTANT;
	margin-bottom: 15px !IMPORTANT;
	width: auto !IMPORTANT;
	font-size: 1em !IMPORTANT;
	font-weight: 600 !IMPORTANT;
	outline: 0 !IMPORTANT;
	padding: 12px 25px 12px 25px !IMPORTANT;
	text-decoration: none !IMPORTANT;
	display: inline-block !IMPORTANT;
	border-radius: 15px !IMPORTANT;
}
.contentblok ul {
	list-style-type: none;
	padding-left: 0px;
}
.contentblok ul li:before {
	content: "\f00c";
	color: var(--bruin);
	font-family: "Font Awesome 6 Pro";
	display: inline-block;
	font-weight: bold;
	margin-left: 10px;
	position: relative;
	bottom: 0px;
	left: -10px;
}
.contentblok ul.linkjes li:before {
	content: "\f054";
}
.contentblok ul.linkjes li a:hover {
	color:  var(--groen);
	font-weight:bold;
}
.contentblok ul.documenten-lijst li {
	float: left;
	margin-right: 10px;
}

.contentblok ul.documenten-lijst li:before {
	content: "";
	margin-left: 0px;
}



/*====================================
	MENU
====================================*/
nav.navbar {
	background-color: var(--wit);
	padding: 15px 5px;
	box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);	
}
nav.navbar.open {
	background-color: var(--wit);
}
.hoofdmenu li a {
  font-size: 1.1rem;
  text-decoration: none;
  padding: 10px 10px;
  display: block;
  font-weight: 400;
  color: var(--zwart);
  letter-spacing: 0.75px;
  transition: all .2s ease-in;
}
.hoofdmenu li a:hover {
  color: var(--bruin);
  text-decoration: none;
  transition: all .2s ease-in;
}
.hoofdmenu li.current-menu-item a {
  color: var(--bruin)!important;
}
.hoofdmenu li.current-menu-item .sub-menu a {
  color: var(--zwart);
}
.hoofdmenu li.current-menu-item .sub-menu li.current-menu-item a {
  color: var(--zwart);
}
.sub-menu li a:after {
	height: 0px!IMPORTANT;
	width: 0px!IMPORTANT;
}
.sub-menu li a {
    padding: 5px;
}
.navbar-toggler {
	background-color: transparent;
	border: none;
}

.navbar-toggler:focus, .navbar-toggler:active {
  outline: 0;
  box-shadow: none;
}
.navbar-toggler .icon-bar {
    display: block;
    width: 22px;
    height: 2px;
    border-radius: 1px;
}
.navbar-toggler .icon-bar {
    background-color: #fff;
}

/* SUB MENU */
.hoofdmenu ul li ul.sub-menu {
	padding: 10px;
	background-color: #fff;
	width: 300px;
	margin: 15px auto;
	border-radius: 25px;
	display: none;
	position: relative;
	-webkit-animation-duration: 0.4s;
	animation-duration: 0.4s;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation-name: fade;
	animation-name: fade;
	-webkit-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}
ul.sub-menu li {
	width: 100%;
	display: block;
}
.hoofdmenu ul li:hover ul.sub-menu {
	display: block;
}
@keyframes fade {
	from {
		opacity: 0;
		transform: translate3d(0, -20%, 0);
	}
	to {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
}	


/*====================================
	HEADER
====================================*/

.navbar-brand {
  height: 45px;
  padding: 10px;
  transition: all .2s ease-in;
}
.navbar-brand img {
  height: 100%;
}
.navbar ul.social {
	list-style-type: none;
	padding-left: 0px;
	margin: 0;
}
.navbar ul.social li {
	float: left;
	margin-left: 15px;
}
.navbar ul.social li a {
	padding: 15px 20px;
    border-radius: 50%;
    width: 55px;
    height: 55px;
    text-align: center;
}
ul.social li a:hover > i {
    color: var(--blauw)!important;
}


/*====================================
	SLIDER
====================================*/
.swiper-button-next:after, .swiper-rtl .swiper-button-prev:after, .swiper-button-prev:after, .swiper-rtl .swiper-button-next:after {
    color: var(--blauw);
}
.swiper-button-next:after, .swiper-button-prev:after {
	font-size: 30px;
}
.swiper-button-next {
	right: -15px;
	height: 50px;
	width: 50px;
}
.swiper-button-prev {
	left: -15px;
	height: 50px;
	width: 50px;
}
.slide-next, .slide-prev {
	font-size: 2rem;
}


/*====================================
	GRAVITY FORMS
====================================*/
.gform_button {
	background-color: var(--donkerbruin)!important;
	border-radius: 25px!important;
}

/*====================================
	BUTTONS
====================================*/
.button {
	width: auto;
	font-size: 1rem;
	outline: 0;
	padding: 10px 20px;
	text-decoration: none;
	display: inline-block;
	border-radius: 25px;
	background-color: transparent;
	border: none;
	-webkit-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}
.button-wit {
	border: 1px solid var(--bruin);
}
.button-wit:hover {
	color: var(--wit)!important;
}
.button-bruin {
	border: 1px solid var(--bruin)!important;
}
.button-bruin:hover {
	border: 1px solid var(--bruin)!important;
}

/*====================================
	LIJSTEN
====================================*/

/* LIJST EDITOR CHECKLIST */
ul.checklist {
    padding: 0 !important;
    list-style: none;
	margin-bottom: 5rem;
}
ul.checklist li {
	position: relative;
    padding-left: 3rem;
	margin-bottom: 15px;
}
ul.checklist li:before {
	content: "\f058";
	font-family: "Font Awesome 6 Pro";
    position: absolute;
    left: 0;
    top: 0.2rem;
	font-weight: bold;
}

/* LIJST EDITOR PIJLTJES */
ul.lijst_met_pijlen {
    padding: 0 !important;
    list-style: none;
	margin-bottom: 5rem;
}
ul.lijst_met_pijlen li {
	position: relative;
    padding-left: 3rem;
	margin-bottom: 15px;
}
ul.lijst_met_pijlen li:before {
	content: "\f054";
	font-family: "Font Awesome 6 Pro";
    position: absolute;
    left: 0;
    top: 0.2rem;
	font-weight: bold;
}

/* LIJST EDITOR ICONEN */
ul.lijst_met_iconen {
    padding: 0 !important;
    list-style: none;
	margin-bottom: 5rem;
}
ul.lijst_met_iconen li {
	position: relative;
    padding-left: 3rem;
	margin-bottom: 15px;
}
ul.lijst_met_iconen li:before {
	content: "\f005";
	font-family: "Font Awesome 6 Pro";
    position: absolute;
    left: 0;
    top: 0.2rem;
	font-weight: bold;
}

/*====================================
	FOOTER
====================================*/
footer {
	background-color: var(--lichtgrijs); 
}
footer, footer a, footer p {
	font-size: 0.9em;
}
footer h3 {
    font-size: 1.5em;
}
footer a {
	text-decoration: none;
	color: var(--blauw);
}
footer .opsomming-menu {
	list-style-type: none;
	padding-left: 15px;
}
footer .opsomming-menu li:before {
	content: "\f178";
	color: var(--blauw);
	font-family: "Font Awesome 6 Pro";
	position: relative;
    left: -15px;
    top: 0;
}
footer ul.social {
	list-style-type: none;
	margin-left: 30px;
	padding-left: 0px;
}
footer ul.social li {
	float: left;
	margin-right: 15px;
}
footer .footermenu ul {
    list-style-type: none;
	padding-left: 0;
}
footer .footermenu ul a {
    color: var(--wit);
}
footer table {
	color: var(--blauw);
}
footer table td {
	padding: 3px 15px 3px 0px;
}

/*====================================
	RESPONSIVE
====================================*/
@media (min-width: 768px) {
	.hoofdmenu li a {
		font-size: 1rem;
	}
}
@media (min-width: 1200px) {
	html {
		font-size: 17px;
	}
	h1, .h1 {
		font-size: 4.5rem;
		margin-bottom: 15px;
	}
	.navbar-brand {
		height: 65px;
		margin-left: 1rem;
		margin-top: 1rem;
	}
	nav.navbar {
		transition: all .2s ease-in;
		height: 95px;
		margin: 1rem 6rem 0 6rem;
		padding-right: 1rem;
		border-radius: 50px;
	}
    /* SUB MENU */
    .hoofdmenu ul li ul.sub-menu {
    	position: absolute;
    	margin: 0;
    }
	body.home #contentblok_3 {
		padding-bottom: 6rem;
	}
	body.home #contentblok_3::after {
        content: "";
        display: block;
        clear: both;
        background-size: cover;
        height: 120px;
        z-index: 9;
        width: 400px;
        position: absolute;
        left: -75px;
        bottom: -38px;
        background-image: url(../images/lach.svg);
    }
	body.home #contentblok_4 {
		padding-top: 6rem;
	}

}

@media (min-width: 1900px) {
	html {
		font-size: 19px;
	}
	.container {
		max-width: 1420px;
	}
}

@media (min-width: 2000px) {
	html {
		font-size: 21px;
	}
	.container {
		max-width: 1620px;
	}
	nav.navbar {
		height: 105px;
	}
}
