/*
Theme Name: KRN Groep template
Theme URI: http://www.swiftweb.nl;
Author: SwiftWeb
Author URI: http://www.swiftweb.nl;
Description: Maatwerk template voor de KRN groep voor alle onderliggende bedrijven
Version: 1.0
*/

/* Reset CSS */
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{font-size:100%;font:inherit;padding:0;border:0;margin:0;vertical-align:baseline}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}table{border-collapse:collapse;border-spacing:0}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}.clear{clear:both}
.sticky{}.bypostauthor{}.wp-caption{}.wp-caption-text{}.gallery-caption{}.alignright{}.alignleft{}.aligncenter{}

/* Theme CSS */

@font-face {
    font-family: 'Frutiger';
    src: url('fonts/Frutiger-UltraBlack.eot');
    src: url('fonts/Frutiger-UltraBlack.eot?#iefix') format('embedded-opentype'),
        url('fonts/Frutiger-UltraBlack.woff2') format('woff2'),
        url('fonts/Frutiger-UltraBlack.woff') format('woff'),
        url('fonts/Frutiger-UltraBlack.ttf') format('truetype'),
        url('fonts/Frutiger-UltraBlack.svg#Frutiger-UltraBlack') format('svg');
    font-weight: 900;
    font-style: normal;
}

body {
	font-family: 'Poppins', sans-serif;
	color:#58595b;
	padding-top:80px;
}

header {
	background:#e5e5e4;
	height:80px;
	position:fixed;
	z-index:999;
	width:100%;
	top:0;
}

header .logo {
	position:absolute;
	left:20px;
	top:15px;
	z-index:99;
}

header .logo img {
	width:75px;
	max-width:100%;
}

.main-menu {
	display: flex;
    justify-content: center;
    align-items: center;
    border-bottom:6px solid #093C71;
    position:relative;
}

.calling {
	position:absolute;
	right:0;
	top:0;
	background:#093C71;
	border-bottom-left-radius: 4px;
	border-bottom-right-radius: 4px;
}

.calling a {
	color:white;
	font-size:13px;
	font-weight:700;
	display:block;
	padding:8px 10px;
}

.calling a:hover {
	text-decoration:none;
}

.calling a i {
	margin-right:5px;
}

.main-menu ul li {
	display:inline-block;
}

.main-menu ul li a {
	display:block;
	margin:0 15px;
	color:#093C71;
	font-weight:bold;
}

.main-menu ul li a:hover {
	text-decoration:none;
}

.headerfotoblock {
	margin:10px 0 30px;
	min-height:400px;
	background-size:cover !important;
	background-position:center !important;
	border-radius:6px;
	position:relative;
}

.headerfotoblock .hb-text {
	background:rgba(62, 132, 119, 0.8);
	display:inline-block;
	color:white;
	padding: 30px 50px;
	position:absolute;
	bottom:75px;
	left:0;
	border-top-right-radius: 8px;
	border-bottom-right-radius: 8px;
}

.headerfotoblock .hb-text h2 {
	font-family: 'Poppins', sans-serif;
	font-weight:bold;
	font-size:45px;
	color:white;
}

.headerfotoblock .hb-text .excerpt {
	font-size:18px;
	margin-top:8px;
}

.main-content {
	padding-bottom:40px;
}

.main-content h1 {
	font-family: 'Poppins', sans-serif;
	font-weight:bold;
	font-size:45px;
	color:#093C71;
}

.main-content h2 {
	font-family: 'Poppins', sans-serif;
	font-weight:bold;
	font-size:35px;
	color:#093C71;
}

.main-content h3 {
	font-size:21px;
	margin-top:8px;
	color:#58595b;
	font-weight:600;
	margin-bottom:15px;
}

.main-content strong {
	font-weight:bold;
}

.main-content em {
	font-style:italic;
}

.main-content p {
	line-height: 1.5;
    font-size: 14px;
    margin-bottom: 20px;
}

.main-content ul {
	line-height: 1.5;
    font-size: 16px;
    margin-bottom: 20px;
}

.main-content ul li {
	font-weight: bold;
    font-size: 14px;
    margin-bottom: 5px;
}

.main-content ul li:before {
	font: normal normal normal 16px/1 FontAwesome;
   	content: "\f00c";
   	display: inline-block;
   	padding-right: 3px;
   	vertical-align: middle;
   	font-weight: 900;
   	color:#093C71;
   	margin-right:15px;
}

.krnbutton_container a {
    display: inline-block;
    background: #093C71;
    padding: 15px 50px 15px 30px;
    text-align: center;
    color: white;
    text-decoration: none;
    font-weight: bold;
    border-radius: 8px;
    position:relative;
    font-size:14px;
    -webkit-transition: all 0.2s ease-out;
    -moz-transition: all 0.2s ease-out;
    -o-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;
}

.krnbutton_container a:hover {
	background:#2b2b2b;
}

.krnbutton_container a:hover i {
	right: 15px;
}

.krnbutton_container a i {
    -webkit-transition: all 0.2s ease-out;
    -moz-transition: all 0.2s ease-out;
    -o-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;
    position: absolute;
    right: 23px;
    top: 16px;
}

.buttonrechts {
	text-align:right;
}

.buttoncenter {
	text-align:center;
}

.krndivider {
	background:#093C71;
	padding:15px 10px;
	text-align:center;
	color:white;
	border-radius:8px;
	font-size:13px;
	font-weight:bold;
}

.krndivider-container {
	padding:25px 0;
	background:linear-gradient(180deg, #f2f2f2 50%, #FFFFFF 50%);
}

.krndivider .voordeel {
	margin:0 10px;
}


.krndivider .voordeel i {
	margin-right:3px;
}

.bigpaddingbottom {
	padding-bottom:75px;
}

.bigpaddingtop {
	padding-top:70px;
}

.dienst-single {
	min-height:250px;
	background-size:cover !important;
	background-position:center !important;
	margin-bottom:30px;
	position:relative;
}

.dienst-content {
	background:rgba(62, 132, 119, 0.8);
	display:inline-block;
	color:white;
	padding: 20px 30px 20px 40px;
	position:absolute;
	bottom:45px;
	left:0;
	border-top-right-radius: 8px;
	border-bottom-right-radius: 8px;
	max-width:375px;
}

.rechtsdienst .dienst-content {
	padding: 20px 40px 20px 30px;
	bottom:45px;
	right:0;
	left:inherit;
	border-top-left-radius: 8px;
	border-bottom-left-radius: 8px;
}

.dienst-content h4 {
	color:white;
	font-weight:bold;
	font-size:23px;
}

.dienst-content .excerpt {
	font-size:15px;
	margin-top:8px;
	line-height:1.3;
}

.linksdienst {
	border-top-left-radius: 8px;
	border-bottom-left-radius: 8px;
}

.rechtsdienst {
	border-top-right-radius: 8px;
	border-bottom-right-radius: 8px;
}

.small_divider {
	background: linear-gradient(180deg, #f2f2f2 50%, #FFFFFF 50%);
	padding: 10px 0;
    display:flex;
}

.small_divider.divrechts {
	background: linear-gradient(180deg, #FFFFFF 50%, #f2f2f2 50%);
    justify-content: flex-end;
}

.divver {
	height:7px;
	background:#093C71;
	width:50%;
	display:block;
}

.fototextvlak {
	display: flex;
    justify-content: center;
    align-items: center;
    background:white;
    border-radius:8px;
    overflow:hidden;
    margin:30px 0;
}

.fototextvlak.flexrechts {
	flex-direction: row-reverse;
}

.fototextvlak .fotovlak {
	height:280px;
	background-size:cover !important;
	background-position:center;
	border-right:5px solid #f2f2f2;
}

.fototextvlak.flexrechts .fotovlak {
	border-right:0;
	border-left:5px solid #f2f2f2;
}

.fototextvlak .hb-text {
	padding:0 50px;
}

.fototextvlak .fotovlak, .fototextvlak .hb-text {
	width:50%;
}

.fototextvlak h2 {
	position:relative;
	padding-bottom:10px;
}

.fototextvlak h2:after {
    content: " ";
    display: block;
    height: 6px;
    width: 75px;
    background: #093C71;
    margin-top: 8px;
    margin-bottom: 5px;
}

.project-slider-container {
	padding:40px 0;
	position:relative;
}

.project-slider-container .arrow {
	position:absolute;
	top:calc(50% - 40px);
	z-index:999;
	font-size:35px;
	color:#093C71;
	cursor:pointer;
}

.rightsw {
	right:-50px;
	-webkit-transition: all 0.2s ease-out;
    -moz-transition: all 0.2s ease-out;
    -o-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;
}

.rightsw:hover {
	right:-55px;
}

.leftsw {
	left:-50px;
	-webkit-transition: all 0.2s ease-out;
    -moz-transition: all 0.2s ease-out;
    -o-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;
}

.leftsw:hover {
	left:-55px;
}

.project-item {
	min-height:350px;
	border-radius:8px;
	position:relative;
	background-position: center !important;
    background-size: cover !important;
    cursor:pointer;
    -webkit-transition: all 0.2s ease-out;
    -moz-transition: all 0.2s ease-out;
    -o-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;
}

.project-item:hover {
	-webkit-filter: grayscale(0.4);
}

.project-title {
	position:absolute;
	bottom:40px;
	width:100%;
	text-align:center;
	color:white;
	font-weight:bold;
	font-size:21px;
	background:#093C71;
	padding:20px 0;
}

.project-title small {
	display: block;
    font-size: 12px;
    margin-top: 6px;
    font-weight: normal;
}

.owl-theme .owl-dots .owl-dot span {
	border:none;
	width:18px;
	height:18px;
	border-radius:4px;
	background:#dbdbdb;
}

.owl-theme .owl-dots .owl-dot.active span, .owl-theme .owl-dots .owl-dot:hover span {
	background: #093C71;
}

.owl-theme .owl-nav {
	margin-top:15px;
}

.partof {
	text-align:center;
	font-style:italic;
	font-size:14px;
	margin-bottom:10px;
}

.krndivisions {
	display:flex;
	margin-bottom:5px;
}

.division {
	width:25%;
	text-align:center;
}

.division img {
	max-width:50px;
	padding:12px 0;
	display:block;
	margin:auto;
}

.krngroep-bg {
	background:#b32025;
}

.metsel-bg {
	background: #3d8277;
}

.sdv-bg {
	background:#286f8b;
}

.jk-bg {
	background:#282827;
}

.montage-bg {
	background:#3d8277;
}

.widgetfooter {
	background:#093C71;
	padding:25px 0;
}

.footer-cont h3 {
    color: white;
    font-weight: bold;
    font-size: 25px;
    margin-bottom: 5px;
}

.footer-cont {
	color:white;
	line-height:1.5;
	font-size:14px;
}

.footer-cont img {
	max-width:125px;
	margin:auto;
	display:block;
}

.footer-cont strong {
	font-weight:bold;
}

.footer-cont a {
	color:white;
}

.footer-cont .mail {
	max-width:50px;
	display:block;
	margin:inherit;
	margin-right:10px;
}

.mailinfo a {
	font-weight:bold;
}

.mailinfo div {
	font-style: italic;
    font-size: 13px;
}

.flexer {
	display:flex;
}

/* hamburger CSS */

.hamburger-inner, .hamburger-inner:after, .hamburger-inner:before {
	width:30px;
}

.hamburger.is-active:hover, .hamburger:hover {
	opacity:1;
}

.menu-trigger {
	position: absolute;
	top: 8px;
    right: 0px;
    z-index:9999999;
    display:none;
    -webkit-transition: all 0.4s ease-out;
    -moz-transition: all 0.4s ease-out;
    -o-transition: all 0.4s ease-out;
    transition: all 0.4s ease-out;
}

button:focus {outline:0;}

.mobnav-trig {
	height: 18px;
    width: 90px;
    cursor: pointer;
    position: relative;
    margin: 10px auto;
}

.hamburger-inner, .hamburger-inner:after, .hamburger-inner:before {
	background:#093C71;
}

.hamburger.is-active .hamburger-inner, .hamburger.is-active .hamburger-inner:after, .hamburger.is-active .hamburger-inner:before {
	background:white;
}

.mobile-menu {
	display:none;
    position: fixed;
    top: 0;
    width: 100%;
    height: 100vh;
    background:rgba(24, 61, 108, 0.8);
    z-index: 999;
    scroll:no-scroll;
}

.mobile-menu .dashicons-no-alt {
	font-size:40px;
	color:white;
	position:absolute;
	right:30px;
	top:10px;
	cursor:pointer;
}

.mobile-menu .menu {
	margin-bottom:45px;
}

.mobile-menu .menu li {
	display:block;
	width:100%;
	text-align:center;
	margin-bottom:20px;
}

.mobile-menu .menu li a {
	color:white;
	font-size:25px;
}

.mobile-menu .menu li a:hover {
	text-decoration:none;
}

.mobile-menu .ticket-btn {
	font-size:21px;
}

.mobile-menu .ticket-btn img {
	top:16px;
}

.mobile-menu .socials {
	text-align:center;
	margin-top:40px;
}

.mobile-menu .socials a {
	color:white;
	font-size:40px;
	margin:0 7px;
}

.mobile-menu .socials img {
	max-width:83px;
}

.mobile-menu.active {
	display: flex;
    align-items: center;
    justify-content: center;
}

.mobile-menu .specialbutton a {
	background: #fe9d00;
    display: block;
    padding: 6px 20px;
    border-radius: 23px;
    color: black;
}

.floatingsocials {
	position: fixed;
    right: 0;
    top: 50vh;
    z-index: 899;
    background:#093C71;
    color:white;
    padding:5px 10px;
    border-top-left-radius: 8px;
	border-bottom-left-radius: 8px;
}

.floatingsocials a {
	display: block;
    width: 30px;
    height: 30px;
    background: white;
    border-radius: 50px;
    color: #093C71;
    text-align: center;
    padding: 7px;
    margin: 15px 0;
    -webkit-transition: all 0.2s ease-out;
    -moz-transition: all 0.2s ease-out;
    -o-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;
}

.floatingsocials a:hover {
	background:#093C71;
	color:white;
}

.mobilecalling {
	display:none;
}

body .gform_wrapper .top_label select.medium, body .gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]) {
	padding:8px 12px;
}

body .gform_wrapper .gform_footer input[type=submit] {
	background:#093C71;
}

body .gform_wrapper textarea.medium {
	width:100%;
}

#TB_window {
	border-radius:4px;
}

#TB_closeWindowButton {
	display:none;
}

#TB_ajaxWindowTitle {
	display:none;
}

#TB_title {
    background: none;
    border:none !important;
    height: inherit !important;
}

#TB_ajaxContent {
	padding:0 !important;
	overflow:hidden !important;
	width:100% !important;
}

#TB_ajaxContent img {
	width:100%;
}

#TB_ajaxContent .modal-content {
	padding: 5px 20px;
	border:none;
}

#TB_ajaxContent p {
	font-weight:400;
	text-transform:uppercase;
	border-bottom:1px solid #ccc;
	font-size: 13px;
    text-align: center;
}

.gform_wrapper .top_label .gfield_label {
	font-weight:300;
	font-weight: 300;
    font-size: 14px;
}

.gform_footer.top_label {
	margin-top:0px !important;
}

.modal-content .gform_wrapper {
	margin:8px 0;
}

.gform_wrapper .gform_button {
	background: #ffb033;
    border: none;
    width: 100% !important;
    padding: 13px;
    color: white;
    text-transform: uppercase;
    cursor:pointer;
}

.gfield_description.validation_message {
	display:none;
}

.modal-content  .gform_wrapper li.gfield.gfield_error, .modal-content  .gform_wrapper li.gfield.gfield_error.gfield_contains_required.gfield_creditcard_warning {
	background: none;
    margin-bottom: 0px !important;
    border-top:none;
    border-bottom: none;
    padding-bottom: 0px;
    padding-top: 0px;
    box-sizing: border-box;
}

.modal-content .gform_wrapper li.gfield.gfield_error.gfield_contains_required label.gfield_label {
	margin-top:0;
}

.modal-content .gform_wrapper li.gfield.gfield_error.gfield_contains_required div.ginput_container {
	margin-top:8px !important;
}

.modal-content .gform_wrapper div.validation_error {
	border-top: none !important;
    border-bottom: none !important;
    padding:0 !important;
    margin-bottom:5px !important;
    font-size:14px;
}

.modal-content .gform_wrapper li.gfield.gfield_error.gfield_contains_required {
	padding-right:16px;
}

.gform_validation_error li.gfield {
	min-height:75px;
}

.specsrow .wpb_text_column {
	margin-top:5px;
	margin-bottom:5px;
}

.gform_wrapper ul.gform_fields li.gfield {
	padding-right:0 !important;
}

.modal-content .gform_wrapper.gform_validation_error .gform_body ul li.gfield.gfield_error:not(.gf_left_half):not(.gf_right_half){
	max-width:100% !important;
}

.recentie_container {
	display:flex;
	align-items:center;
}

.recentie_container.flexrechts {
	flex-direction: row-reverse;
}

.recentie_logo {
	flex: 0 0 40%;
    max-width: 40%;
    flex-grow: 1;
    text-align:center;
}

.recentie_content {
	padding:40px;
	flex: 0 0 60%;
    max-width: 60%;
    flex-grow: 1;
}

.recentie_content h3 {
	margin-bottom:15px;
	font-style:italic;
}

.recentie_content .recentie_name {
	font-size:15px;
	font-weight:bold;
	margin-bottom:5px;
}

.recentie_content .recentie_company {
	font-size:15px;
	font-weight:bold;
}

.recentie_logo img {
	max-width:290px;
    max-height: 170px;
}

.dyna-content h2 {
	position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    text-align: center;
    background:#093C71;
    color:white;
    font-weight:bold;
    padding:8px;
    border-top-left-radius:4px;
    border-top-right-radius:4px;
}

.project-holder {
	display:none;
}

.project-image-holder {
	display: flex;
    gap: 10px;
    margin-top: 50px;
}

.fancybox__container {
	z-index:105000 !important;
}

@media (max-width:1366px){
}

@media (max-width:1200px){
}

@media (max-width:1024px){
	
	.project-slider-container .arrow {
		display:none;
	}
	
	.krndivider .voordeel {
	    margin: 10px 10px;
	    display: inline-block;
	}
}

@media (max-width:991px){
	
	.fototextvlak {
		display:block;
	}
	
	.fototextvlak .fotovlak, .fototextvlak .hb-text {
		width:100%;
	}
	
	.fototextvlak.flexrechts {
	    flex-direction: inherit;
	}
	
	.fototextvlak .hb-text {
		padding:30px 35px;
	}
}

@media (max-width:768px){
	
	.krnbutton_container a {
		padding:15px 15px;
	}
	
	.krnbutton_container a i {
		display:none;
	}
	
	.menu-trigger {
		display:block;
	}
	
	.main-menu {
		display:none;
	}
	
	header {
		border-bottom:6px solid #093C71;
	}
	
	header .logo {
	    top: 11px;
	}
	
	.mobilecalling {
		display:block;
		right: calc(50% - 65px);
		z-index:999;
	}
	
	.floatingsocials {
		display:none;
	}
	
	.gform_wrapper .top_label .gfield_label, .gform_wrapper legend.gfield_label {
		display:none !important;
	}
	
	.gform_wrapper textarea.medium {
		height:80px !important;
	}
	
		
	.recentie_container {
		display:block;
	}
	
	.recentie_logo {
		flex: 0 0 100%;
    	max-width: 100%;
    	flex-grow: 1;
	}
	
	.recentie_content {
		flex: 0 0 100%;
    	max-width: 100%;
    	flex-grow: 1;
	}
}

@media (max-width:550px){
	
	.headerfotoblock {
		margin:20px 0;
		min-height:190px;
	}
	
	.bigpaddingbottom {
		padding-bottom:30px;
	}
	
	.bigpaddingtop {
		padding-top:30px;
	}
	
	.main-content h1 {
		font-size:35px;
	}
	
	.main-content h3 {
		font-size:15px;
		line-height:1.5;
	}
	
	.headerfotoblock .hb-text h2 {
		font-size:25px;
	}
	
	.headerfotoblock .hb-text .excerpt {
	    font-size: 15px;
	    margin-top: 8px;
	    max-width: 222px;
	    line-height: 1.5;
	}
	
	.headerfotoblock .hb-text {
		padding: 17px 35px;
	    position: absolute;
	    bottom: 20px;
	}
	
	.dienst-single {
		border-radius:8px;
	}
	
	.footerlogo {
		display:none;
	}
	
	.footer-cont {
		margin:15px 0;
		text-align:center;
	}
	
	.flexer {
		justify-content: center;
	}
	
	.headerfotoblock .hb-text {
		display:none;
	}
	
	.main-content h2 {
		font-size:29px;
	}
	
	.project-slider-container {
		padding-top:10px;
	}

}