/*
==  THEME DETAILS  ============================================================
    Theme Name: Coaching Lemelerberg
	Theme URI: https://www.coachinglemelerberg.nl/
    Description: Stylesheet voor Coaching Lemelerberg
    Version: 1.0
   	Author: Kracht Internet Marketing
    Author URI: https://www.krachtinternetmarketing.nl/
===============================================================================
*/

/*---------------------------------------------- 
	1.1 Basics
------------------------------------------------*/
	html {
  		font-size: 20px;
	}

	body {
		font-family: 'Open Sans', sans-serif;
		font-size: 0.9rem;
	  	line-height: 1.5rem;
		color: #000;
		background: #FFF;
		-webkit-font-smoothing: antialiased;
  		-moz-osx-font-smoothing: grayscale;
	}
	
	a, a:hover, .btn, .btn:hover , .transition {
		-webkit-transition: all 0.3s ease-in-out;
		-moz-transition: all 0.3s ease-in-out;
		-ms-transition: all 0.3s ease-in-out;
		-o-transition: all 0.3s ease-in-out;
		text-decoration:none;	
	}
	
	p , figure {
		margin: 0;	
	}

	a {
		color: #00A9D4;
	}

	a:hover {
		color: #000;
	}

	button:focus ,
	:focus {
		outline: 0 !important;
	}
	
	h1, h2, h3, h4 {
		font-family: 'Trebuchet';
		color: #00A9D4;
		text-transform: uppercase;
		font-weight: 700;
		line-height: 1;
		margin: 0;
		padding: 0;
	}
	
	h1 {
		font-size: 2rem;
	}

	h2 {
		font-size: 1.75rem;
	}	

	h3 {
		font-size: 1.5rem;
	}

	h4 {
		font-size: 1.25rem;
	}

	ul {
		margin: 0;
		padding: 0;
	}

	.strong {
		font-family: 'Trebuchet';
		font-weight: 700;
	}

	.rounded {
		-webkit-border-radius: 5px;
		-moz-border-radius: 5px;
		border-radius: 5px;
	}

	@media all and (min-width: 1200px) {
		.container {
			max-width: 1200px !important;
		}	
	}

	@media all and (max-width: 1440px) {
		html {
			font-size: 18px;
		}
	}

	@media all and (max-width: 1200px) {
		html {
			font-size: 16px;
		}
	}

	@media all and (max-width: 767px) {
		html {
			font-size: 15px;
		}
	}

/* Buttons -------------------------------------- */
	.btn-primary, 
	.btn-primary:active {
		background: #00A9D4;
    	color: #FFF;
    	border: none;
	}
	
	.btn-primary:hover {
		background: #000;
		color: #FFF;
		text-decoration:none;
		border: none;
	}

	.btn-secondary {
		background: #FFF;
    	color: #00A9D4;
    	border: none;
	}
	
	.btn-secondary:hover {
		background: #000;
		color: #FFF;
		text-decoration:none;
		border: none;
	}

	.btn {
		font-size: 0.8rem;
		line-height: 1;
		padding: 0.9em 1em;
    	text-decoration: none !important;
		border-radius: 50px;
	}

/* Fonts -------------------------------------- */
	@font-face {
		font-family: 'Trebuchet';
		src: url('../fonts/trebuchet.eot'),
		   url('../fonts/trebuchet.woff') format('woff'),
		   url('../fonts/trebuchet.ttf') format('truetype');
		font-weight: normal;
		font-style: normal;
	}

/* Quote -------------------------------------- */
	blockquote {
		font-size: 1rem;
		line-height: 1.5rem;
		color: #76AD3B;
		margin: 0;
	}

/* Triangle -------------------------------------- */
	.triangle {
		position: relative;
	}

	.triangle:before {
		content: "";
		position: absolute;
		left: 0;
		top: 1.5rem;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 10px 0 10px 10px;
		border-color: transparent transparent transparent #ffffff;
	}

/* Formulier -------------------------------------- */	
	form .form-group {
		width: 100%;
		margin-bottom: 0;
	}
	
	form .form-group + .form-group {
		margin-top: 0.5em;
	}
	
	form .form-control {
    	background: #F5F5F5;
		color: #424242;
		height: 40px;
    	font-size: 14px;
    	line-height: 1.5;
    	background-image: none;
    	border: 0;
		margin: 0;
		box-shadow: none;
		-webkit-border-radius: 5px;
		-moz-border-radius: 5px;
		border-radius: 5px;
	}

	form .white .form-control {
		background: #FFF;	
	}

	::placeholder { 
		color: #424242 !important;
	  	opacity: 1;
	}

	:-ms-input-placeholder { 
		color: #424242 !important;
	}

	::-ms-input-placeholder {
		color: #424242 !important;
	}
	
	form textarea.form-control {
		height: auto;
	}
		
	form .btn input {
		background: none !important;
		box-sizing: border-box;
		padding-top: 2px;
		padding-bottom: 2px;
		border: none;
		text-align: center !important;
		cursor: pointer;
	}

	form .btn-secondary input {
		color: #00A9D4;
	} 

	form .btn-primary input {
		color: #FFF;
	}

	form .btn:hover input {
		color: #FFF !important;
	}
	
	.wpcf7-spinner {
		display: none;
		width: 0 !important;
	}
	
	div.wpcf7-mail-sent-ok {
		border: none !important;
	}
	
	div.wpcf7-validation-errors {
		border: none !important;
	}

	span.wpcf7-not-valid-tip {
		font-size: 0.8rem;
	}

	div.wpcf7-response-output {
		margin: 1em 0 0 0;
		padding: 0;
		color: #000;
		font-size: 0.8rem;
	}

	.grecaptcha-badge {
		display: none !important;
		visibility: hidden !important;
	}

/* Google Maps -------------------------------------- */	
	#google-maps .acf-map {
		width: 100%;
		height: 350px;
	}
	
	@media all and (max-width: 480px) {
		#google-maps .acf-map {
			height: 300px;
		}
	}

/*---------------------------------------------- 
	1.2 Colors
------------------------------------------------*/
	.bg-black {
		background: #000;
	}

	.bg-blue {
		background: #00A9D4;
	}

	.bg-green {
		background: #76AD3B;
	}

	.bg-orange {
		background: #E78B2D;
	}

	.bg-red {
		background: #CD4333;
	}

	.bg-grey {
		background: #DDD;
	}

	.text-white a {
		color: #FFF;
	}

	.text-white a:hover {
		color: #000;
	}

/*---------------------------------------------- 
	2.1 Header
------------------------------------------------*/
	#header {
		background: #FFF;
		padding: 1.25rem;
		-webkit-box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.25);
		-moz-box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.25);
		box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.25);
	}

	#header .brand img {
		max-width: 300px;
	}

	@media all and (max-width: 992px) {
		#header .brand img {
			max-width: 240px;
		}
	}

/*---------------------------------------------- 
	2.2 Navigation
------------------------------------------------*/	
	#navigation #hoofdmenu li a {
		font-family: 'Trebuchet';
		font-size: 1rem;
		color: #424242;
		line-height: 1;
		padding: 0.75rem 0.5rem;
		background: none;
	}

	#navigation #hoofdmenu .current-page-ancestor a ,
	#navigation #hoofdmenu li.active a {
		border-bottom: 3px solid #424242;
	}

	#navigation #hoofdmenu li a:hover {
		color: #00A9D4;
	}

	#navigation #hoofdmenu li:last-child a {
		padding-right: 0;
	}

	#navigation #hoofdmenu .text-blue a {
		color: #00A9D4;
	}

	/* Submenu openen bij hover (alleen desktop; mobiel heeft een eigen menu) */
	@media all and (min-width: 992px) {

		#navigation #hoofdmenu .dropdown:hover > .dropdown-menu,
		#navigation #hoofdmenu .dropdown:focus-within > .dropdown-menu {
			display: block;
			margin-top: 0;
		}

		/* Onzichtbare overbrugging zodat het submenu niet sluit tussen link en menu */
		#navigation #hoofdmenu .dropdown > .dropdown-toggle::after {
			margin-left: 0.25rem;
		}

		#navigation #hoofdmenu .dropdown-menu {
			border-radius: 0;
			border: none;
			box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
		}

		#navigation #hoofdmenu .dropdown-menu .dropdown-item {
			font-family: 'Trebuchet';
			font-size: 0.9rem;
			color: #424242;
			padding: 0.5rem 1rem;
		}

		#navigation #hoofdmenu .dropdown-menu .dropdown-item:hover {
			color: #00A9D4;
			background: none;
		}
	}

	@media all and (max-width: 1600px) {
		#navigation #hoofdmenu li a {
			font-size: 0.8rem;
			padding: 0.5rem;
		}
	}

	@media all and (max-width: 1300px) {
		
		#navigation #hoofdmenu .current-page-ancestor a ,
		#navigation #hoofdmenu li.active a {
			border-bottom: 2px solid #424242;
		}
	}

/*---------------------------------------------- 
	2.3 Navigation Mobile
------------------------------------------------*/
	#navigation-mobile .cd-dropdown-trigger {
		display: block;
    	position: relative;
    	padding: 0;
		font-size: 1.25rem;
    	line-height: 2em;
		height: 2em;
		width: 2em;
    	background: #000; 
		color: #FFF;	
		border: none;	
		border-radius: 0;
		text-align: center;
		margin: 0;
		float: right;
		z-index: 99;
	}
	
	#navigation-mobile .cd-dropdown-trigger i {
		margin: 0;	
	}
	
	#navigation-mobile .cd-dropdown-content a,
	#navigation-mobile .cd-dropdown-content ul a {
		font-family: 'Trebuchet';
		font-size: 1rem;
		color: #FFF;	
		text-align: left !important;
	}

	#navigation-mobile .cd-dropdown-content li.mobile-head a {
		color: #FFF;
	}
	
	#navigation-mobile .cd-dropdown {
		background: #00A9D4; 
		z-index: 999;
	}
	
	#navigation-mobile .cd-dropdown-wrapper {
		height: auto;
		margin: 0 !important;
	}
	
	#navigation-mobile ul {
		padding-left: 0;
	}
	
	#navigation-mobile .cd-dropdown-content a, 
	#navigation-mobile .cd-dropdown-content ul a {
		border-top-width: 1px;
    	border-bottom-width: 0;
    	border-left-width: 0;
    	border-right-width: 0;
    	border-color: #FFF;
    	border-style: solid;	
	}
	
	#navigation-mobile .current_page_item a {
		color: #000;
	}
	
	#navigation-mobile .cd-dropdown-content .go-back a {
		background: #000;
		color: #000;
	}

	#navigation-mobile .cd-secondary-dropdown > a,
	#navigation-mobile .cd-secondary-dropdown > .go-back a {
  		display: none !important;
		background: #FFF;
	}

	#navigation-mobile .has-children > a::before, 
	#navigation-mobile .has-children > a::after, 
	#navigation-mobile .go-back a::before, .go-back a::after ,
	#navigation-mobile .go-back a::before, .go-back a::after ,
	#navigation-mobile .cd-dropdown .cd-close::after, 
	#navigation-mobile .cd-dropdown .cd-close::before {
		background: #000;
	}

	#navigation-mobile .cd-secondary-dropdown > .go-back a + a {
		display: block !important;
	}
	

/*---------------------------------------------- 
	3.1 Presentation
------------------------------------------------*/
	#presentation {
		height: 600px;
   	 	width: 100%;
    	position: relative;
		margin-top: 4.5em;
	}

	#presentation .slider {
		height: 600px;
		position: absolute;
		margin-top: 0px;
		top: auto;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 8;
	}

	#presentation .panorama {
		height: inherit;
		width: inherit;
		overflow: hidden;
		position: absolute;
		z-index: 2;
	}

	#presentation .image {
		height: 600px;
		background-repeat: no-repeat;
		background-size: cover;
		background-position: center;	
		width: 100%;
		position: absolute;
		z-index: 2;
	}

	#presentation .panorama iframe {
		width: inherit;
		height: inherit;
		border: 0;
	}

	#presentation .bottom .badge {
		position: absolute;
		z-index: 9;
		width: 115px;
		height: 115px;
		background-color: #CD4333;
		color: #FFF;
		font-family: 'Trebuchet';
		border-radius: 100%;
		padding: 23px 0px;
		font-size: 22px;
		text-align: center;
		text-transform: uppercase;
		font-weight: bold;
		right: calc(50% + 485px);
		bottom: -18px;
	}

	#presentation .bottom .badge:after {
		content: '';
		position: absolute;
		top: 45px;
		right: -1px;
		width: 0;
		height: 0;
		border: 15px solid transparent;
		border-right: 15px solid #FFF;
		transform: rotate(3deg);
	}

	#presentation .bottom img.line {
		position: absolute;
		bottom: 25px;
		right: calc(50% + 78px);
		z-index: 7;
		transform: rotate(3deg);
		max-width: 450px;
	}

	#presentation .brand {
		position: absolute;
		bottom: 0;
		left: 0;
		right: 0;
		margin: 0 auto;
		z-index: 9;
	}

	@media all and (max-width: 1200px) {
		#presentation .bottom .badge {
			bottom: inherit;
			right: 15px;
			top: 55px;
			font-size: 15px;
			width: 90px;
			height: 90px;
		}
		#presentation .bottom .badge:after {
			display: none;	
		}
	}

	@media all and (max-width : 767px) {
		#presentation ,
		#presentation .slider ,
		#presentation .panorama ,
		#presentation .image {
			height: 450px;	
		}
	}

	@media all and (max-width : 500px) {
		#presentation ,
		#presentation .slider ,
		#presentation .panorama ,
		#presentation .image ,
		#rev_slider_2_1 ,
		#rev_slider_1_1 {
			height: 340px !important;
		}
	}

/*---------------------------------------------- 
	4. Frontpage Brand
------------------------------------------------*/
	#frontpage-brand {
		padding: 1.75em 0.75em 0;
	}

	#frontpage-brand img {
		max-width: 500px;
	}

/*---------------------------------------------- 
	5.1 Page Content
------------------------------------------------*/
	#page-content {
		padding: 12em 0 3em 0;
	}

	#presentation + #page-content ,
	#page-content.frontpage {
		padding-top: 3em !important;
	}

	#page-content h1 {
		margin-bottom: 1.25rem;
		line-height: 1.2;
	}
	
	#page-content p + p ,
	#page-content p + h2 ,
	#page-content p + h3 ,
	#page-content p + ul ,
	#page-content ul + p ,
	#page-content .form {
		margin-top: 1.5rem;
	}

	#page-content .content a {
		text-decoration: underline;
	}

	#page-content h3 {
		font-size: 1.25rem;
		color: #000;
		text-transform: inherit;
		margin-bottom: 0.15em;
	}
	
	#page-content img.aligncenter {
		margin: auto;
		display: block;
	}

	#page-content .content ul {
		list-style: none;
	  	padding: 0;
	}
	
	#page-content .content li {
  		position: relative;
		padding-left: 30px;
	}

	#page-content .content ul li:before {
		content: "\f00c";
		font-family: 'Font Awesome 5 Pro';
		font-weight: 100;
		position: absolute;
    	left: 0;
		color: #00A9D4;
	}

	#page-content .wp-caption {
		width: 100% !important;
		margin: 1.5rem 0;
	}

	#page-content .wp-caption img {
		display: block;
		margin: auto;
	}

	#page-content .aligncenter .wp-caption-text {
		text-align: center;
		font-size: 0.7rem;
		font-style: italic;
	}

	#page-content iframe {
		width: 100% !important;
		height: 658px;
	}

	@media all and (max-width : 1200px) {
		#page-content iframe {
			width: 100% !important;
			height: 523px;
		}
	}

	@media all and (max-width : 992px) {
		#page-content iframe {
			width: 100% !important;
			height: 388px;
		}	
	}

	@media all and (max-width : 767px) {
		#page-content iframe {
			width: 100% !important;
			height: 300px;
		}	
	}

/* Gallery -------------------------------------- */	
	#page-content .gallery {
		margin: 1.75rem 0 !important;
	}
	
	#page-content .gallery .gallery-item {
		padding: 2px !important;	
		margin: 0 !important;
	}
	
	#page-content .gallery img {
		border: none !important;
		width: 100% !important;
		height: auto !important;
	}

	@media all and (max-width : 1200px) {
		#page-content .gallery img {
			border: 2px solid #FFF !important;
		}
	}

	@media all and (max-width : 550px) {
		#page-content .gallery .gallery-item {
			float: none;
			width: 100%;
		}
	}

/* Sidebar -------------------------------------- */
	#page-content #sidebar .page-links.triangle:before {
		top: 1.75rem;
		border-width: 15px 0 15px 15px;
	}

	#page-content #sidebar li ,
	#page-content #sidebar li a {
		color: #FFF;
		line-height: 2rem;
		padding: 0;
	}

	#page-content #sidebar li a:hover {
		color: #000;
	}

	#page-content #sidebar li i {
		padding-right: 0.5rem;
	}

/*---------------------------------------------- 
	5.2 Page Blocks
------------------------------------------------*/
	#page-blocks {
		padding: 3em 0 1.5em 0;
	}

	#page-content + #page-blocks {
		padding-top: 0;	
	}

	#page-blocks .content {
		padding: 1.5em 1em;	
		height: 100%;
		min-height: 17.5rem;
	}

	#page-blocks .content h3 {
		color: #FFF;
	}

	#page-blocks .content .text p {
		font-size: 0.75rem;
	}

	#page-blocks .content .text a {
		text-decoration: underline;
		text-decoration-thickness: 1px;
		text-underline-offset: 0.2em;
		text-decoration-color: rgba(255, 255, 255, 0.5);
	}

	#page-blocks .content .text a:hover {
		text-decoration-color: rgba(255, 255, 255, 1);
	}

	#page-blocks .content .text p + p {
		margin-top: 1rem;
	}

	#page-blocks .content blockquote {
		font-size: 1.5rem;
		line-height: 2rem;
	}

	#page-blocks .content a.read-more {
		font-size: 0.75rem;
		font-weight: 700;
		color: #FFF;
		display: block;
	}
	
	#page-blocks .content a:hover {
		color: #000;
	}

	@media all and (max-width : 767px) {
		#page-blocks .content {
			min-height: inherit;
		}
	}


/* Bedrijven -------------------------------------- */	
	#page-blocks.bedrijven .item img {
		-webkit-border-top-left-radius: 5px;
		-webkit-border-top-right-radius: 5px;
		-moz-border-radius-topleft: 5px;
		-moz-border-radius-topright: 5px;
		border-top-left-radius: 5px;
		border-top-right-radius: 5px;
	}

/* Reacties -------------------------------------- */
	a.popup {
		cursor: pointer;
	}

	.modal-lg {
		max-width: 800px !important;
		margin: 10% auto 0 auto;
	}
	
	.modal-content {
		border-radius: 0 !important;
		z-index: 9999 !important;
	}
		
	.modal-content .modal-body {
		padding: 2em;
	}	

	.modal-content .modal-body p {
		font-size: 0.9rem;
		font-style: italic;
	}

	.modal-content .modal-body p + p {
		margin-top: 2rem;
	}
	
	@media all and (max-width : 1200px) {
		.modal-lg {
			width: 90% !important;
		}
	}

/*---------------------------------------------- 
	5.3 Page Actueel
------------------------------------------------*/
	#overzicht-nieuws article .title {
		color: #000;
		font-size: 1.25rem;
	}

	#overzicht-nieuws article hr {
		margin: 1.5rem 0;
		border-color: #DDD;
	}

/*---------------------------------------------- 
	7. Keurmerken
------------------------------------------------*/
	#keurmerken {
		padding-bottom: 1.5rem;
	}

	#keurmerken .item img {
		max-height: 80px;
	}

/*---------------------------------------------- 
	8. Footer
------------------------------------------------*/
	#footer {
		background: #00A9D4;
		padding: 2.5em 0;
	}
	
	#footer .brand img {
		max-width: 264px;
	}

	#footer h3 {
		color: #FFF;
		text-transform: inherit;
		margin-bottom: 1rem;
	}

	#footer p ,
	#footer li ,
	#footer a {
		color: #FFF;
	}

	#footer a:hover {
		color: #000;
	}

	#footer #footer-menu li a {
		padding: 0 0 0 1em;
	}

	#footer #footer-menu li a:before {
		font-family: 'Font Awesome 5 Pro';
    	font-weight: 100;
		font-size: 1.25rem;
    	line-height: 1.25;
		content: "\f105";
		position: absolute;
		left: 15px;
	}


	#footer ul.social-media li i {
		font-size: 1.25rem;
	}

	#footer .brand img {
		max-width: 300px;
	}