/**
 * Crossmediahouse - Wordpress theme
 *
 * @authors   Tom Morskieft <crossmediahouse.nl>
 * @version   1.0
 * @generated 2020-27-10
 * @copyright (c) 2020 Crossmediahouse
 * @license   All Rights Reserved
 */

/* Fonts
   ========================================================================== */

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

/* Globals
   ========================================================================== */

* {
	padding: 0;
	margin: 0;
}

*, *:before, *:after {
    box-sizing: border-box;
}

html, body {
	line-height: 1;
	height: 100%;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-family: 'Open Sans', sans-serif;
	font-size: 20px;
}

img {
	max-width: 100%;
	height: auto;
	display: block;
}

iframe {
	max-width: 100%;
	border: 0;
}

blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

a, a:before, a:after, button, input[type="submit"] {
	-webkit-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}

input[type="submit"], button {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
}

input[type="text"],
input[type="tel"],
input[type="email"],
input[type="search"],
textarea {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
}

/* Container
   ========================================================================== */

.container {
	position: relative;
	z-index: 1;
	width: 100%;
	max-width: 1170px;
	margin: auto;
	padding-left: 15px;
	padding-right: 15px;
}

/* Row
   ========================================================================== */

.row {
	display: flex;
	justify-content: space-between;
}

/* Alignments
   ========================================================================== */

.alignright {
	float: right;
}

.alignleft {
	float: left;
}

.aligncenter {
	display: block;
	margin: auto;
	text-align: center;
	clear: both;
}

.text-center {
	text-align: center;
}

/* Typography
   ========================================================================== */

.regular-content {
	font-weight: 400;
	line-height: 27px;
}

.regular-content p {
	margin-bottom: 30px;
}

.regular-content p:last-child {
	margin-bottom: 0;
}

.regular-content a {
	color: #000;
}

.text-bold {
	font-weight: 700;
}

.text-normal {
	font-weight: 300;
}

.text-white {
	color: #fff;
}

.text-black {
	color: #000;
}

.text-red {
	color: #008B39;
}

/* Spacers padding
   ========================================================================== */

.pt-10 {
	padding-top: 10px;
}

.pt-20 {
	padding-top: 20px;
}

.pt-27 {
	padding-top: 27px;
}

.pt-30 {
	padding-top: 30px;
}

.pt-40 {
	padding-top: 40px;
}

.pt-50 {
	padding-top: 50px;
}

.pt-60 {
	padding-top: 60px;
}

.pt-70 {
	padding-top: 70px;
}

.pt-80 {
	padding-top: 80px;
}

.pt-100 {
	padding-top: 100px;
}

.pt-150 {
	padding-top: 150px;
}

.pt-200 {
	padding-top: 200px;
}

.pb-10 {
	padding-bottom: 10px;
}

.pb-20 {
	padding-bottom: 20px;
}

.pb-27 {
	padding-bottom: 27px;
}

.pb-30 {
	padding-bottom: 30px;
}

.pb-40 {
	padding-bottom: 40px;
}

.pb-50 {
	padding-bottom: 50px;
}

.pb-60 {
	padding-bottom: 60px;
}

.pb-70 {
	padding-bottom: 70px;
}

.pb-80 {
	padding-bottom: 80px;
}

.pb-100 {
	padding-bottom: 100px;
}

.pb-150 {
	padding-bottom: 150px;
}	

.pb-200 {
	padding-bottom: 200px;
}

/* Spacers margin
   ========================================================================== */

.mt-10 {
	margin-top: 10px;
}

.mt-20 {
	margin-top: 20px;
}

.mt-30 {
	margin-top: 30px;
}

.mt-40 {
	margin-top: 40px;
}

.mt-50 {
	margin-top: 50px;
}

.mt-80 {
	margin-top: 80px;
}

.mt-100 {
	margin-top: 100px;
}

.mt-150 {
	margin-top: 150px;
}

.mt-200 {
	margin-top: 200px;
}

.mb-10 {
	margin-bottom: 10px;
}

.mb-20 {
	margin-bottom: 20px;
}

.mb-30 {
	margin-bottom: 30px;
}

.mb-40 {
	margin-bottom: 40px;
}

.mb-50 {
	margin-bottom: 50px;
}

.mb-80 {
	margin-bottom: 80px;
}

.mb-100 {
	margin-bottom: 100px;
}

.mb-150 {
	margin-bottom: 150px;
}	

.mb-200 {
	margin-bottom: 200px;
}

/* Headings
   ========================================================================== */

.heading-1 {
	font-size: 50px;
	position: relative;
	line-height: 55px;
}

.heading-2 {
	font-size: 40px;
	position: relative;
	line-height: 55px;
}

.heading-sub {
	font-size: 22px;
	position: relative;
	line-height: 32px;
	max-width: 70%;
	margin: 0 auto;
}

/* Background colors
   ========================================================================== */

.grey-bg {
	background: #F5F7F7;
}

.white-bg {
	background: #fff;
}

.bg-color-3 { /* Green */
	background: #008B39;
}

/* Buttons
   ========================================================================== */

.btn, .wpcf7-submit, form input[type="submit"] {
	padding: 15px 38px;
	text-decoration: none;
	border-radius: 21px;
	cursor: pointer;
	transition: all .3s ease-in-out;
	border: none;
}

.btn--red, .wpcf7-submit, form input[type="submit"] {
	background: #008B39;
	color: #fff !important;
}

.btn:hover {
	opacity: .8;
}

/* Heading lines
   ========================================================================== */

.heading-line:after {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	max-width: 120px;
	height: 7px;
	content: '';
}

.line--red:after {
	background: #008B39;
}

/* Default content
   ========================================================================== */

/* Header */

#header {
	width: 100%;
	height: 78px;
}

#header .inner-header {
	background: #fff;
	padding: 12px 0 17px;
	position: fixed;
	width: 100%;
	z-index: 999;
}

#header .inner-header .logo {
	width: 122px;
	height: 100%;
}

#header .inner-header .logo a img {
	width: 100%;
	height: 100%;
}

/* Menu */

#menu-main-menu {
	display: flex;
	padding-top: 17px;
}

#menu-main-menu > li {
	list-style-type: none;
	padding-right: 26px;
}

#menu-main-menu > li > a, #mobile-menu ul > li > a {
	color: #707070;
	text-decoration: none;
	font-weight: 900;
	font-size: 15px;
	position: relative;
}

#menu-main-menu > li > a:after {
	position: absolute;
	left: 0;
	bottom: -3px;
	width: 0;
	height: 2px;
	background: #008B39;
	content: '';
	transform: all .3s ease-in-out;
}

#menu-main-menu > li > a:hover:after {
	width: 100%;
}

#menu-main-menu > li > a:hover {
	color: #008B39;
}

#menu-main-menu > li.current_page_item > a:after {
	width: 100%;
}

#menu-main-menu > li.current_page_item > a {
	color: #008B39;
}

#mobile-menu {
	display: none;
}

.menu-active #mobile-menu {
	display: block;
}

.hamburger-button {
	display: none;
	padding: 19px 0 0 0;
	cursor: pointer;
}

.hamburger-button span {
	display: block;
	width: 30px;
	height: 4px;
	margin-bottom: 4px;
	border-radius: 8px;
	background-color: #008B39;
	transition: all .3s ease-in-out;
}

.menu-active .hamburger-button span:nth-child(1) {
	position: relative;
	top: 8px;
	transform: rotate(45deg);
}

.menu-active .hamburger-button span:nth-child(2) {
	opacity: 0;
}

.menu-active .hamburger-button span:nth-child(3) {
	position: relative;
	bottom: 8px;
	transform: rotate(-45deg);
}

/* Hero section */

.hero {
	background: #000;
	position: relative;
}

.hero, .hero figure, .hero figure img {
	width: 100%;
	height: 100%;
}

.hero figure img {
	object-fit: cover;
	opacity: .8;
}

.hero-text {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	z-index: 2;
	width: 100%;
	max-width: 450px;
}

/* Intro content */

.intro-content .content, .intro-content .content-image {
	width: 45%;
}

/* UPS'S */

.usp, .usp.cards a {
	width: 32.5%;
}

.usp-item {
	background: #F5F7F7;
	position: relative;
	width: 100%;
	height: 60%;
}

.usp-title {
	font-size: 14px;
}

.usp-item .card-content {
	padding: 20px 10px;
	line-height: 37px;
}

.usp-item .card-content ul {
	width: 80%;
	margin-left: 20px;
}

.usp-item .card-content ul li {
	list-style: none;
	position: relative;
}

.usp-item .card-content ul li:before {
	content: '';
	color: #30C25C;
	position: absolute;
	left: -20px;
	top: 12px;
	background: url('../images/check-solid.svg');
	width: 15px;
	height: 15px;
	background-size: 100%;
	background-position: 50%;
	background-repeat: no-repeat;
}

.usp-item .icon {
	position: absolute;
	top: 70px;
	right: 10px;
	width: 45px;
}

/* Company's */

.usp.cards {
	position: relative;
	height: 100%;
}

.usp.cards figure img {
	object-fit: cover;
	position: relative;
	z-index: 2;
	transition: all .3s ease-in-out;
	height: 100%;
	width: 100%;
}

.usp.cards figure img:hover {
	opacity: .4;
}

.usp.cards p {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	opacity: 0;
	transition: all .3s ease-in-out;
	z-index: 4;
}

.usp.cards:hover p {
	opacity: 1;
}

.usp-section .container {
	margin-bottom: 30px;
}

/* Carousel */

.carousel ul .flickity-slider li {
	list-style: none;
	margin-left: 5px;
	width: 390px;
}

.carousel .flickity-viewport {
	overflow-x: hidden;
}

.carousel ul .flickity-slider {
	width: 100%;
	height: 250px;
}

.carousel ul .flickity-slider li img {
	height: 250px;
	width: 380px;
	object-fit: cover;
}

.carousel-logo-section {
	overflow: hidden;
}

.carousel-logo-section .flickity-viewport {
	overflow: initial;
}

.carousel-logo-section .carousel ul .flickity-slider {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	height: initial;
}

.carousel-logo-section .carousel {
	margin-top: 75px;
}

.carousel-logo-section .carousel .flickity-enabled {
	outline: none;
}

.carousel-logo-section .carousel ul .flickity-slider li {
	display: flex;
	justify-content: center;
	align-items: center;
   margin: 0 50px;
	height: 100px;
	width: 175px;
}

.carousel-logo-section .carousel ul .flickity-slider li img {
	height: initial;
	max-height: 100%;
	width: auto;
	object-fit: initial;
}

/* Review section */

.review-section {
	position: relative;
	width: 100%;
}

.review-section .bg-image {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	opacity: .4;
}

.review-section .bg-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.rplgsw-container-horizontal > .rplgsw-pagination-bullets .rplgsw-pagination-bullet {
	background: #008B39;
	width: 15px;
	height: 15px;
	opacity: 1;
}

.rplgsw-pagination-bullet.rplgsw-pagination-bullet-active {
	background: #fff !important;
}

.rplg .rplg-review-time {
	color: #008B39 !important;
	text-shadow: none !important;
}

.rplg-review-name.rplg-trim {
	color: #000 !important;
}

/* Contact section */

.contact-content .content {
	width: 40%;
	position: relative;
}

.contact-content .content h3 {
	font-weight: 300;
	font-size: 40px;
	padding-bottom: 20px;
}

.socials {
	position: absolute;
	left: 0;
	bottom: 0;
}

.socials p a {
	display: inline-block;
	position: relative;
	top: 6px;
	transition: all .3s ease-in-out;
}

.socials p a:hover {
	opacity: .6;
}

.contactform {
	width: 55%;
}

form input[type="text"], form input[type="email"], form input[type="tel"], form textarea {
	border: none;
	padding: 10px 40px !important;
	font-family: 'Open Sans', sans-serif !important;
	font-size: 20px !important;
	color: #BABABA;
	width: 100% !important;
	border-radius: 21px;
	margin-bottom: 20px;
}

form textarea {
	height: 100%;
	max-height: 145px;
}

form input[type="submit"] {
	width: auto;
}

/* Vervolg pagina */

.content-left-right .content {
	width: 48%;
}

.content-left-right img {
	width: 100%:
	height 100%;
	object-fit: cover;
}

.content iframe {
	width: 100%;
}

/* Leden */

.board {
	width: 30%;
}

.board p {
	margin: 0;
}

.board figure {
	width: 100%;
	height: 350px;
}

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

.board .heading-sub {
	font-size: 18px;
}

.board .regular-content {
	font-size: 16px;
}

.grid {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-column-gap: 20px;
	grid-row-gap: 20px;
}

.grid .board {
	width: 100%;
}

.grid .board .row {
	width: 80px;
}

.grid .board .row img {
	transition: all .3s ease-in-out;
}

.grid .board .row img:hover {
	opacity: .6;
}

/* Breadcrumbs */

#breadcrumbs {
	padding-bottom: 10px;
	color: #000;
}

#breadcrumbs a {
	color: #008B39;
}

#breadcrumbs, #breadcrumbs a {
	text-decoration: none;
	font-size: 14px;
}

/* Facebook feed */

#ffwd_container1_0 #ffwd_container2_0 .blog_style_objects_conteiner_0 .blog_style_objects_conteiner_1_0, .blog_style_objects_conteiner_1_0, .blog_style_objects_0 {
	width: 100% !important;
}

/* Faq */

.faq-list h3 {
	margin: 0;
	min-width: 100%;
	cursor: pointer;
	padding: 5px 0 5px 35px;
	margin: 2px 0;
	position: relative;
}

.faq-list h3:after {
	content: '';
	background: url('../images/chevron-up-solid.svg');
	background-size: 80%;
	background-position: 50%;
	background-repeat: no-repeat;
	position: absolute;
	top: 0;
	left: 0;
	width: 25px;
	height: 100%;
	padding: 4px;
	background-color: #008B39;
	z-index: 2;
}

.faq-list h3:before {
	content: '';
	background: url('../images/chevron-down-solid.svg');
	background-size: 80%;
	background-position: 50%;
	background-repeat: no-repeat;
	position: absolute;
	top: 0;
	left: 0;
	width: 25px;
	height: 100%;
	padding: 4px;
	background-color: #008B39;
}

.faq-list h3:after {
	display: none;
}

h3.ui-state-active:after {
	display: block;
}

.faq-list .answer {
	line-height: 27px;
}

/* Nieuws berichten */

.hero-sub {
	max-height: 40%;
}

.news .cards {
	position: relative;
	height: 400px;
	width: 100%;
}

.news .cards a {
	text-decoration: none;
}

.news .cards p {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 4;
	opacity: 0;
	transition: all .3s ease-in-out;
}

.news .cards figure, .news .cards img {
	width: 100%;
	height: 100%;
}

.news .cards img {
	object-fit: cover;
	position: relative;
	z-index: 3;
	transition: all .3s ease-in-out;
}

.news .cards img:hover {
	opacity: .4;
}

.news .cards:hover p {
	opacity: 1;
}

.news .cards .overlay {
	width: 100%;
	height: 100%;
	left: 0;
	bottom: 0;
	position: absolute;
}

/* Footer */

#footer a {
	color: #fff;
	text-decoration: none;
	transition: all .3s ease-in-out;
	position: relative;
}

#footer a:after {
	width: 0;
	left: 0;
	bottom: 0;
	content: '';
	position: absolute;
	background: #fff;
	height: 1px;
}

#footer a:hover:after {
	width: 100%;
}

#footer .footer-block {
	width: 33.33%;
}

#footer .footer-block p {
	position: relative;
	padding: 0 0 30px 50px;
}

#footer .footer-block:nth-child(2) p:nth-child(1) {
	padding: 0 0 50px 50px;
}

#footer .footer-block:nth-child(3) p {
	padding: 0 0 30px 0;
}

#footer .block-title {
	position: relative;
	padding-bottom: 10px;
}

#footer .block-title:after {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	max-width: 90px;
	height: 1px;
	background: #fff;
	content: '';
}

#footer .textwidget {
	padding-top: 20px;
}

#footer .footer-block:nth-child(1) .textwidget p:before, #footer .footer-block:nth-child(2) .textwidget p:before {
	content: '';
	background-repeat: no-repeat;
	background-position: 50%;
	position: absolute;
	top: 0;
	left: 0;
}

#footer .footer-block:nth-child(1) .textwidget p:nth-child(1):before {
	background-image: url('../images/pinmap.svg');
	width: 27px;
	height: 29px;
}

#footer .footer-block:nth-child(1) .textwidget p:nth-child(2):before {
	background-image: url('../images/envelope.svg');
	width: 33px;
	height: 32px;
	top: -4px;
}

#footer .footer-block:nth-child(1) .textwidget p:nth-child(3):before {
	background-image: url('../images/facebook.svg');
	width: 35px;
	height: 27px;
}

#footer .footer-block:nth-child(2) .textwidget p:nth-child(1):before {
	background-image: url('../images/mail.svg');
	width: 33px;
	height: 32px;
	top: -4px;
}

#footer .footer-block:nth-child(2) .textwidget p:nth-child(2):before {
	background-image: url('../images/linkedin.svg');
	width: 35px;
	height: 27px;
	top: -4px;
}

#footer .footer-block:nth-child(3) .textwidget p:nth-child(1) {
	padding-bottom: 15px;
}

/* Responsive
   ========================================================================== */

@media only screen and (max-width: 900px) {

	.icon {
		display: none;
	}

	.usp-item .card-content ul {
		width: 100%;
	}

	.usp-item {
		height: 75%;
	}

	.container {
		max-width: 95%;
	}

	#footer .footer-block {
		width: 30%;
	}

	#menu-main-menu > li {
		padding-right: 16px;
	}

	#menu-main-menu > li > a {
		font-size: 13px;
	}

}

@media only screen and (max-width: 767px) {

	.hamburger-button {
		display: block;
	}

	#mainmenu-section {
		display: none;
	}

	#mobile-menu ul > li > a {
		font-size: 20px;
	}

	#mobile-menu ul > li {
		border-bottom: 1px solid #EFEFEF;
		padding: 10px 0;
		list-style: none;
	}

	#mobile-menu {
		width: 100%;
		height: 100%;
		position: fixed;
		left: 0;
		top: 78px;
		background-color: #fff;
		z-index: 999;
		padding: 40px 0;
	}

	.responsive-row {
		display: block;
	}

	.content, .content-image, .usp, .board {
		width: 100% !important;
	}

	.content-image {
		padding-top: 20px;
	}

	.usp {
		margin-bottom: 20px;
	}

	.usp img {
		width: 100%;
		max-height: 200px;
		object-fit: cover;
	}

	.usp.cards figure img {
		max-height: 400px;
	}

	.contactform {
		width: 100%;
		padding-top: 20px;
	}

	.contact-content .content {
		padding-bottom: 60px;
	}

	.hero-text {
		width: 95%
	}

	.heading-1 {
		font-size: 40px;
	}

	.heading-2 {
		font-size: 30px;
	}

	.content-left-right .content:first-child {
		margin-bottom: 20px;
	}

	.statistic {
		margin-bottom: 40px;
	}

	.grid {
		display: block;
		width: 100%;
	}

	.grid .board {
		margin-bottom: 40px;
	}
	
	.board-section .heading-sub {
		text-align: left;
		max-width: 90%;
	}

	.faq h3 {
		font-size: 20px;
	}

	#footer .footer-block {
		width: 100%;
		margin-bottom: 40px;
	}
	
	.usp-item .card-content ul li {
		font-size: 15px;
	}

}