/*
Theme Name: Teraalst Theme
Version: 1.3
Author: Fanatiek media
Author URI: https://fanatiekmedia.nl/
*/

/***************************
          COLORS
***************************/

:root {
	--white: #fff;
	--black: #000;
	--darkgrey: #444;
	--green: #2AAC42;
}

/***************************
          GENERAL
***************************/

body {
	width: 100%;
	font-family: 'Open Sans', sans-serif;
	font-weight: 400;
	background-color: var(--white);
	color: var(--darkgrey);
	position: relative;
}

body.show-nav {
	overflow: hidden;
	height: 100%;
}

html {
	font-size: 100%;
	width: 100%;
}

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

a {
	color: var(--green);
	text-decoration: none;
	transition: all 0.3s ease;
}

a:hover {
	color: var(--green);
	text-decoration: underline;
}

p {
	margin: 0 0 15px;
	line-height: 150%;
}

ul, ol {
	margin: 0 0 15px;
}

ul li, ol li {
	line-height: 150%;
}

hr {
	border: 0px;
	width: 100%;
	height: 1px;
	background-color: #DADADA;
	margin: 30px 0;
}

.btn,
.inline-btn a,
.button {
	color: var(--white);
	background-color: #30261C;
	background-image: url('./assets/images/arrow-right.svg');
	background-size: 7px 12px;
	background-repeat: no-repeat;
	background-position: right 15px center;
	padding: 13px 35px 13px 25px;
	border-radius: 5px;
	text-decoration: none;
	font-size: 16px;
	font-weight: bold;
	margin: 0;
	display: inline-block;
	width: auto;
	border: 0px solid;
	border-radius: 25px;
	position: relative;
	transition: all 0.3s ease;
	line-height: 120%;
}

.btn:hover,
.btn:focus,
.inline-btn a:hover,
.inline-btn a:focus,
.button:hover,
.button:focus {
	background-color: var(--green);
	background-position: right 10px center;
	color: var(--white);
	text-decoration: none;
}

.more {
	position: relative;
	z-index: 1;
}

.inline-block {
	background-color: var(--green);
	padding: 20px 20px 5px;
	border-radius: 15px;
	margin: 30px 0 15px;
	position: relative;
}

.inline-block:before {
	content: '';
	background-image: url('./assets/images/arrow-right-green.svg');
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 100%;
	display: block;
	width: 28px;
	height: 42px;
	position: absolute;
	top: 100%;
	left: 50%;
	transform: rotate(90deg) translate(-9px, 15px);
}

.inline-block h2 {
	color: var(--white);
}

.inline-block p {
	color: var(--white);
}

.inline-block .inline-btn a:hover,
.inline-block .inline-btn a:focus {
	background-color: var(--white);
	background-image: url('./assets/images/arrow-right-black.svg');
	color: var(--black);
}

.btn:hover:after,
.inline-btn a:hover:after {
	right: -14px;
}

input, textarea {
    padding: 10px 15px;	
    width: 100%;
    max-width: 450px;
    background: var(--white);
    border: 1px solid #d6d6d6;
    border-radius: 0px;
    color: #30261C;
}

[type="checkbox"], [type="radio"] {
	width: auto;
	margin: 0 5px 0 0;
}

textarea {
	max-width: 100%;
	height: 150px;
}

select {
	width: 100%;
	max-width: 450px;
	border: 1px solid #d6d6d6;	 
	height: 40px;
}

.inline-link {
	background-image: url('./assets/images/arrow-right-black.svg');
	background-position: right 3px center;
	background-size: 16px 10px;
	background-repeat: no-repeat;
	color: var(--black);
	padding: 2px 25px 2px 0px;
	font-weight: bold;
	transition: all 0.3s ease;
	text-decoration: none;
}

.inline-link:hover,
.inline-link:focus {
	background-position: right 0px center;	
	background-image: url('./assets/images/arrow-right-green.svg');
	color: var(--green);
	text-decoration: none;
}

.container {
	max-width: 1160px;
	margin: 0 auto;
    padding: 0 20px;	
}

.container.small {
	max-width: 900px;
}

.aligncenter {
	margin: 0 auto;
	display: block;
}

/* Chrome, Safari, Opera */
@-webkit-keyframes zoom {
    0%  {
    	-webkit-transform: scale(1,1);
    }
    100% {
    	-webkit-transform: scale(1.2,1.2);
    }
}

/* Standard syntax */
@keyframes zoom {
    0% {
        -webkit-transform: scale(1,1);
    }
    100% {
        -webkit-transform: scale(1.2,1.2);
    }
}

@media only screen and (min-width:768px) {
	
	p, ul li {
		font-size: 18px;
	}
	
	.btn,
	.inline-btn a {
		font-size: 17px;
	}
	
	.container {
		padding: 0 40px;
	}
	
	.alignleft {
		float: left;
		margin: 0 15px 15px 0;
	}
	
	.alignright {
		float: right;
		margin: 0 0 15px 15px;
	}
	
	.inline-block:before {
		top: 50%;
		left: 100%;
		transform: rotate(0deg) translate(-2px, -15px);
	}
	
}

@media only screen and (min-width:1024px) {
	
	body.show-nav {
		overflow: auto;
	}
}

/* stop stacking issues */
.clearfix::after {
  content: " ";
  display: table;
}
.clearfix::after {
  clear: both;
}

/* use box-sizing: border-box */
*, *:before, *:after {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

/***************************
		   COLUMNS
***************************/

.row {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: -15px;
    margin-right: -15px;
}

.row.no-padding {
	margin-left: 0;
	margin-right: 0;
}

.row.small {
	margin-left: -5px;
	margin-right: -5px;
}

.column {
	display: block;
	width: 100%;
	float: left;
	padding-left: 15px;
	padding-right: 15px;
}

.no-padding .column {
	padding-left: 0;
	padding-right: 0;
}

.small .column {
	padding-left: 5px;
	padding-right: 5px;
}

@media only screen and (min-width:768px) { 

	.medium-1-4 {
		width: 25%;
	}
	
	.medium-1-3 {
		width: 33.33334%;
	}
	
	.medium-2-5 {
		width: 40%;
	}
	
	.medium-1-2 {
		width: 50%;
	}
	
	.medium-3-5 {
		width: 60%;
	}
	
	.medium-2-3 {
		width: 66.66666%;
	}
	
	.medium-3-4 {
		width: 75%;
	}

}

@media only screen and (min-width:1024px) {
	
	.large-1-4 {
		width: 25%;
	}

	.large-1-3 {
		width: 33.33334%;
	}
	
	.large-1-2 {
		width: 50%;
	}
	
	.large-2-3 {
		width: 66.66666%;
	}
	
	.large-3-4 {
		width: 75%;
	}
	
}


/***************************
		   HEADINGS
***************************/

h1, h2, h3, h4, h5 {
	margin: 0 0 15px 0;
	padding: 0;
	font-weight: bold;
	color: var(--black);
}

h1 {
	font-size: 24px;
	position: relative;
	padding: 0 0 15px;
	margin: 0 0 25px;
}

h1:before,
h1:after {
	content: '';
	display: block;
	width: 60px;
	height: 6px;
	background: var(--green);
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: 2;
}

h1:after {
	background: #DADADA;
	left: 10px;
	bottom: -4px;
	z-index: 1;
}

h2 {
	font-size: 20px;
}

h2.block-title {
	margin: 0 0 30px;
}

h3 {
	font-size: 18px;
}

h4 {
	font-size: 16px;
}

@media only screen and (min-width:768px) {
	
	h1 {
		font-size: 30px;
		margin: 0 0 50px;
	}
	
	h2 {
		font-size: 24px;
	}
	
	h2.block-title {
		margin: 0 0 50px;
	}
	
	h3 {
		font-size: 20px;
	}
	
}

/***************************
    HEADER & NAVIGATION
***************************/

.header {
	position: relative;
	background: #1F9134;
	height: 50px;
}

.header-top {
	background: #1F9134;
	position: fixed;
	width: 100%;
	height: 50px;
	top: 0;
	left: 0;
	z-index: 999;
	transition: all 0.3s ease;
	text-align: right;
	padding: 10px 120px 10px 0;
}

.show-nav .header-top {
	top: -50px;
}

.header-top .top-menu {
	display: none;
}

.header-top .top-menu .menu {
	display: inline-block;
	list-style-type: none;
	margin: 0 215px 0 0;
}

.header-top .top-menu .menu li {
	display: inline-block;
	position: relative;
	float: left;
	margin: 0;
	padding: 0 0 10px;
}

.header-top .top-menu .menu li.menu-item-has-children {
	background-image: url('./assets/images/dropdown.svg');
	background-repeat: no-repeat;
	background-position: right 1px top 18px;
	background-size: 9px 6px;
	padding-right: 15px;
}

.header-top .top-menu .menu li a {
	display: inline-block;
	font-size: 16px;
	font-weight: 400;
	margin: 0 0 0 25px;
	padding: 6px 0;
	position: relative;
	color: #def0e1;
	text-decoration: none;
}

.header-top .top-menu .menu .current-menu-item > a, 
.header-top .top-menu .menu .current-page-parent > a, 
.header-top .top-menu .menu li.menu-active > a {
    color: var(--white);
}

.header-top .top-menu .menu li a:hover, 
.header-top .top-menu .menu li a:focus {
 	color: var(--white);
}

.header-top .top-menu .sub-menu {
    display: none;
    position: absolute;
    background: #1F9134;
    -webkit-transition: 500ms ease all;
    transition: 500ms ease all;
    left: 65%;
    z-index: 999;
    padding: 10px 15px 20px 15px;
    width: 180px;
    margin: 10px 0 0;
    transform: translate(-50%,0);
}

.header-top .top-menu ul li:hover .sub-menu li {
	display: block;
	padding: 0;
}

.header-top .top-menu ul li .sub-menu li {
	display: block;
    margin: 0;
    width: 100%;
}

.header-top .top-menu ul li .sub-menu li a {
	font-size: 16px;
	width: 100%;
	padding: 0px 10px;
	margin: 0;
	color: #def0e1;
	display: block;
	text-decoration: none;
	margin: 0;
	text-align: center;
	background-color: transparent;
}

.header-top .top-menu ul li .sub-menu li a:before {
	display: none;
}

.header-top .top-menu ul li .sub-menu li:hover a {
    color: var(--white);
}

.header-top .top-menu .menu .sub-menu .current-menu-item > a, 
.header-top .top-menu .menu .sub-menu .current-page-parent > a, 
.header-top .top-menu .menu .sub-menu li.menu-active > a {
	color: var(--white);
}

.header-top .top-menu ul li .sub-menu li:after {
	display: none;
}

.header-top .top-menu ul li:hover .sub-menu {
	display: block;
}

.header-top .cta {
	background: var(--black);
	color: var(--white);
	border-radius: 20px;
	padding: 6px 10px;
	line-height: 120%;
    font-weight: bold;
    width: 130px;
    text-align: center;
    display: inline-block;
    text-decoration: none;
    font-size: 15px;
    margin: 0 0 0 5px;
}

.header-top .cta:hover {
	background: var(--white);
	color: var(--black);
}

.header-top .reserve {
	background: #6ec338;
	border-radius: 0;
	position: absolute;
	top: 0;
	right: 0;
	padding: 16px 10px;
}

.header-top .reserve:hover {
	background: #57c513;
	color: var(--white);
}

.header-main {
	position: fixed;
	top: 50px;
	left: 0;
	width: 100%;
	z-index: 10;
	transition: all 0.3s ease;
}

.show-nav .header-main {
	top: 0;
}

.header-main .container {
	padding: 0;
}

.header-logo {
	position: relative;
	display: block;
	width: 100%;
	text-align: left;
	padding: 15px 20px 15px 5px;
	transition: all 0.3s ease;
	z-index: 999;
	height: 95px;
	background: rgba(42, 172, 66, 0.9);
}

.show-nav .header-logo {
	background-color: var(--green);
}

.header-logo a {
	display: inline-block;
	width: 220px;
	max-width: 220px;
	transition: all 0.3s ease;
}

.header-logo a img {
	display: block;
    width: 100%;
}

.show-nav .header-main {
	height: 100vh;
}

.header-nav {
	padding: 0;
	display: block;
	position: static;
}

.header-nav .toggle-nav {
    background-image: url('./assets/images/icon-menu.svg');
    background-size: 30px 21px;
    background-position: center top 20px;
    background-repeat: no-repeat;
    background-color: transparent;
    display: block;
    position: absolute;
    border: 0px;
    top: 10px;
    right: 5px;
    color: var(--white);
    font-size: 12px;
    width: 75px;
    height: 75px;
    outline: 0;
    margin: 0;
    padding: 32px 0 0;
    text-align: center;
    z-index: 999;
    transition: all 0.3s ease;
}

.header-nav .toggle-nav:focus {
	outline: none;
}


.show-nav .header-nav .toggle-nav {
	background-image: url('./assets/images/icon-menu-close.svg');
	background-size: 21px 21px;	
}

.header-nav .site-menu {
	display: block;
	width: 100%;
	height: auto;
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	background-color: transparent;
	margin: 0;
    padding: 110px 10px 100px;
	list-style-type: none;
    transition: ease-in 0.3s all;
    -webkit-transform: translate(0,-150%);
    transform: translate(0,-150%);
    z-index: 99;    
    -webkit-box-shadow: 0 3px 6px 0 rgba(0,0,0,0.16);
    box-shadow: 0 3px 6px 0 rgba(0,0,0,0.16);
    text-align: center;
    background: #1F9134;
	overflow-y: auto;
}

.show-nav .header-nav .site-menu {
    display: block;
    width: 100%;
    height: auto;
    top: 0;
    right: 0;
    transition: ease-in 0.3s all;
    -webkit-transform: translate(0,0);
    transform: translate(0,0);
    position: absolute;
}

.header-nav .site-menu .menu {
	margin: 0;
	padding: 10px 0 0;
    list-style: none;
}

.header-nav .site-menu .menu li {
	line-height: 100%;
}

.header-nav .site-menu .menu li a {
	color: var(--white);
	display: block;
	font-weight: normal;
	padding: 9px 10px;
	font-weight: 700;
	line-height: 110%;
	font-size: 18px;
	text-decoration: none;
	position: relative;
	text-align: left;
	font-weight: 700;
	margin: 4px 0;
	transition: all 0.3s ease;
	text-align: left;
}

.header-nav .site-menu .menu > li.main-item > a {
	font-size: 22px;
}

.header-nav .site-menu .menu .current-menu-item > a,
.header-nav .site-menu .menu .current-page-parent > a,
.header-nav .site-menu .menu li.menu-active > a {
	background-color: rgba(0, 0, 0, 0.10);
	text-decoration: none;
}

.header-nav .site-menu .menu li a:hover, 
.header-nav .site-menu .menu li a:focus {
	background-color: rgba(0, 0, 0, 0.20);
	text-decoration: none;
}

.header-nav .site-menu .sub-menu {
	margin: 0 0 5px;
	padding: 0;
	list-style-type: none;
}

.header-nav .site-menu .sub-menu li a {
	font-weight: normal;
	padding: 2px 10px 6px;
}

.scroll .header-top {
	top: -50px;
}

.scroll .header-main {
	top: 0;
}

.scroll .header-main {
	background-color: var(--green);
}

.scroll .header-logo {
	padding: 15px 20px 15px 5px;
	height: 75px;
}

.scroll .header-logo a {
	max-width: 160px;
	width: 160px;
}

.scroll .header-cta-social .social {
	top: 95px;
}

.scroll .header-cta-social .cta {
	top: 95px;
}

.scroll .header-nav .toggle-nav {
	top: 0;
}

.scroll .header-nav .site-menu {
	padding: 90px 10px 100px;	
}

@media only screen and (min-width:600px) {

	.admin-bar .header-top {
		top: 46px;
	}
	
	.admin-bar .header-main {
		top: 96px;
	}

}

@media only screen and (min-width:768px) {

	
	.show-nav .header-main {
		top: 0;
	}
	
	.header-logo {
		height: 110px;
	}
	
	.header-logo a {
		width: 270px;
		max-width: 270px;
	}
	
	.header-nav .toggle-nav {
		top: 15px;
		right: 25px;
	}

}

@media only screen and (min-width:783px) {

	.admin-bar .header-top {
		top: 32px;
	}
	
	.admin-bar .header-main {
		top: 82px;
	}

}

@media only screen and (min-width:1024px) { 

	.header {
		height: 60px;
	}
	
	.header-top {
		height: 60px;
		padding: 10px 0;
	}
	
	.header-top .top-menu {
		display: block;
	}
	
	.header-top .cta {
	    position: absolute;
	    top: 97px;
	    font-size: 20px;
	    width: auto;
	    padding: 10px 25px;
	    border-radius: 22px;
	}
	
	.header-top .introduction {
	    right: 40px;		
	}
	
	.admin-bar .header-top .introduction {
		top: 96px;
	}
	
	.header-top .reserve {
		top: -10px;
		right: 40px;
	    padding: 18px 25px;
	    border-radius: 0;	
	}
	
	.show-nav .header-top {
		top: 0;
	}
	
	.admin-bar.show-nav .header-top {
		top: 32px;
	}
	
	.header .container {
		padding: 0 40px;
		position: relative;
	}
	
	.header-main {
		top: 60px;
		background: rgba(42, 172, 66, 0.9);
	}	

	.show-nav .header-main {
		height: auto;
		top: 60px;
	}
	
	.admin-bar .header-main,
	.admin-bar.show-nav .header-main {
		top: 92px; 
	}
	
	.header-logo {
		-webkit-box-shadow: 0 0 0 0 rgba(0,0,0,0.16);
   	 	box-shadow: 0 0 0 0 rgba(0,0,0,0.16);
   	 	text-align: left;
   	 	float: left;
   	 	width: auto;
   	 	padding: 25px 0;
   	 	height: 140px;
   	 	background-color: transparent;
	}
	
	.show-nav .header-logo {
		background-color: transparent;
	}
	
	.header-logo a {
	    max-width: 310px;
	    width: 310px;
	}
	
	.header-nav {
		width: 100%;
		padding: 0 200px 0 340px;
		transition: ease 0.3s all;
	}
	
	.header-nav .site-menu,
	.show-nav .header-nav .site-menu { 
	    position: relative;
	    width: 100%;
	    height: auto;
	    max-width: 100%;
	    display: inline-block;
	    top: auto;
	    left: auto;
	    z-index: 1;
	    padding: 45px 0 10px 0;
	    -webkit-transform: translate(0,0);
	    transform: translate(0,0);
	    transition: ease 0.3s all;
	    background-color: transparent;
	    right: 0;
	    -webkit-box-shadow: 0 0 0 0 rgba(0,0,0,0.16);
   	 	box-shadow: 0 0 0 0 rgba(0,0,0,0.16);
   	 	text-align: left;
	    filter: none;
	    text-align: right;
	    overflow: visible;
	}
	
	.header-nav .site-menu .menu {
		list-style: none;
		margin: 0;
		padding: 0;
	    display: inline-block;
	}
	
	.header-nav .site-menu .menu li {
		display: inline-block;
		position: relative;
		float: left;
		margin: 0;
		padding: 0 0 10px;
	}
	
	.header-nav .site-menu .menu > li {
		display: none;
	}
	
	.header-nav .site-menu .menu > li.main-item {
		display: inline-block;
	}
	
	.header-nav .site-menu .menu li a {
		display: inline-block;
		font-size: 20px;
		margin: 0 0 0 40px;
		padding: 13px 0 10px;
		position: relative;
	}
	.header-nav .site-menu .menu > li:nth-child(1) > a, 
	.header-nav .site-menu .menu > li:nth-child(2) > a, 
	.header-nav .site-menu .menu > li:nth-child(3) > a {
		font-size: 20px;
	}
	
	.header-nav .site-menu .menu li a:hover, 
	.header-nav .site-menu .menu li a:focus {
	    color: var(--white);
	    background-color: transparent;
	}
	
	.header-nav .site-menu .menu .current-menu-item > a, 
	.header-nav .site-menu .menu .current-page-parent > a, 
	.header-nav .site-menu .menu li.menu-active > a {
	    color: var(--white);
	    background-color: transparent;
	}
	
	.header-nav .site-menu .sub-menu {
	    display: none;
	    position: absolute;
	    background: var(--white);
	    -webkit-transition: 500ms ease all;
	    transition: 500ms ease all;
	    left: 15px;
	    z-index: 999;
	    padding: 25px 15px;
	    width: 270px;
	    margin: 10px 0 0;
	    box-shadow: -2px 2px 7px 0 rgba(174,174,174,0.50);
	}
	
	.header-nav .site-menu ul li:hover .sub-menu li {
		display: block;
		padding: 0;
	}
	
	.header-nav .site-menu ul li .sub-menu li {
		display: block;
	    margin: 0;
	    width: 100%;
	}
	
	.header-nav .site-menu ul li .sub-menu li a {
		font-size: 16px;
		width: 100%;
		padding: 5px 10px;
		color: #30261C;
		display: block;
		text-decoration: none;
		margin: 0;
		text-align: left;
		background-color: transparent;
		line-height: 125%;
	}
	
	.header-nav .site-menu ul li .sub-menu li a:before,
	.header-nav .site-menu ul li .sub-menu li a:after {
		display: none;
	}
	
	.header-nav .site-menu ul li .sub-menu li:hover a {
	    color: var(--green);
	}
	
	.header-nav .site-menu .menu .sub-menu .current-menu-item > a, 
	.header-nav .site-menu .menu .sub-menu .current-page-parent > a, 
	.header-nav .site-menu .menu .sub-menu li.menu-active > a {
		color: var(--green);
	}
	
	.header-nav .site-menu ul li .sub-menu li:after {
		display: none;
	}
	
	
	.header-nav .site-menu ul li:hover .sub-menu {
		display: block;
	}
	
	.header-nav .toggle-nav {
		display: none;
	}
	
	.scroll .header-top {
		top: -60px;
	}

	.admin-bar .scroll .header-top {
		top: -28px;
	}
	
	.scroll .header-top .introduction {
		top: 67px;
	}
	
	.scroll .header-main {
		top: 0;
	}

	.admin-bar .scroll .header-main {
		top: 32px;
	}
	
	.scroll .header-logo,
	.show-nav .scroll .header-logo {
		padding: 0;
	}
	
	.scroll .header-logo a {
	    max-width: 255px;
	    width: 255px;
	}
	
	.scroll .header-nav .site-menu {
		padding: 15px 0 0;
	}

}

/***************************
      BLOCKS
***************************/

.block-item {
	margin: 30px 0 0;
}

.block-item:first-child {
	margin: 0;
}

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

@media only screen and (min-width:768px) {
		
	.block-item {
		margin: 50px 0 0;
	}


}

/***************************
       HOME CONTENT
***************************/

.home-video {
	width: 100% !important;
	height: 350px;
	line-height: 350px;
	overflow: hidden;
	position: relative;
	z-index: 1;
	opacity: 1;
	text-align: center;
}

.home-video .overlay {
	width: 100%;
	height: 100%;
	background: transparent;
	top: 0;
	left: 0;
	display: block;
	position: absolute;
	z-index: 9;
}


.home-video .fallback {
	position: absolute;
	background-image: url('./assets/images/video-placeholder.jpg');
	background-position: center center;
	background-size: cover;
	top: 0; 
	left: 0;
	width: 100%; 
	height: 100%; 
	z-index: -1000; 
	display: block;
}

.home-video .inner {
    width: 640px;
    left: 50%;
    top: 50%; 
    transform: translate(-50%, -50%);
    position: absolute;
}

.w-vulcan-v2-button {
	display: none !important;
}

.w-bottom-bar-middle {
	display: none !important;
}

.home-alert {
	background-color: #d2691e;
	padding: 25px 0 10px;
	display: block;
}

a.home-alert {
	text-decoration: none;
}

a.home-alert:hover {
	background-color: #bc5409;
}

.home-alert p {
	font-size: 18px;
	color: var(--white);
	display: flex;
	flex-wrap: wrap;
}

.home-alert p span {
    display: inline-block;
    margin: 0 10px 10px 0;
    background-color: var(--black);
    font-size: 14px;
    padding: 1px 10px;
}

.home-featured {
	margin: 0 0 20px;
	padding: 0;
	list-style-type: none;
	justify-content: center;
}

.home-featured li a {
	display: block;
	color: var(--white);
	text-decoration: none;
	background-color: #6ec338;
	text-align: center;
	padding: 25px 30px;
	font-weight: bold;
	font-size: 20px;
	margin: 0 0 10px;
	line-height: 120%;
	background-image: url('./assets/images/arrow-right.svg');
	background-size: 7px 12px;
	background-repeat: no-repeat;
	background-position: right 10px bottom 10px;
}

.home-featured li a:hover {
	transform: scale(1.05);
}

.home-featured li a span {
	display: block;
	margin: 0 auto;
}

.home-featured li:nth-child(2) a {
	background-color: #5fb22b;
}

.home-featured li:nth-child(3) a {
	background-color: #34c14e;
}

.home-featured li:nth-child(4) a {
	background-color: var(--green);
}

.home-featured li:nth-child(5) a {
	background-color: #1F9134;
}

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

.home-happy a {
	display: inline-block;
	width: 150px;
}

@media only screen and (min-width:768px) {
		
	
	.home-video {
		height: 500px;
		line-height: 500px;
	}
	
	.home-video .inner {
		width: 1100px;		
	}


}

@media only screen and (min-width:1024px) {
	
	.home-video {
		height: 650px;
		line-height: 650px;
	}
	
	.home-video .inner {
		width: 1344px;		
	}

}

@media only screen and (min-width:1280px) {
	
	.home-video {
		height: 700px;
		line-height: 700px;
	}
	
	.home-video .inner {
	    min-width: 100%;
	    min-height: 100%;
	}

}

@media only screen and (min-width:1600px) {
	
	.home-video {
		height: 800px;
		line-height: 800px;
	}

}

/***************************
       PAGE CONTENT
***************************/

.main {
	min-height: 500px;
}

.page-top {
	width: 100%;
	display: block;
	height: 300px;
	line-height: 300px;
	position: relative;
	background-color: #F5F5F7;
	text-align: center;
	overflow: hidden;
}

.page-top .image {
	width: 100%;
	height: 300px;
	overflow: hidden;
	position: absolute;
	display: block;
	z-index: 1;
	-webkit-animation: zoom 7s infinite alternate; /* Chrome, Safari, Opera */
    animation: zoom 7s infinite alternate;	
    -webkit-animation-timing-function: linear;	
    animation-timing-function: linear;
}

.page-top .image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.page-content {
	padding: 25px 0 10px;
}

.page-content .last-updated {
    display: inline-block;
    margin: 0 10px 10px 0;
    background-color: var(--black);
	color: var(--white);
    padding: 5px 10px;
}

.page-content .image-slider {
	margin: 30px -10px 20px;
	padding: 0;
}

.page-content .image-slider li {
	padding: 0 10px;
}

.page-content .image-slider li:focus {
	outline: none;
}

.page-content .image-slider li .item {
	display: block;
	background-color: var(--white);
	margin: 0 0 15px;
}

.page-content .image-slider li .item:focus {
	outline: none;
}

.page-content .image-slider li .item:hover {
	transform: scale(0.95);
}

.page-content .image-slider .slick-arrow {
    font-size: 0;
    line-height: 0;
    position: absolute;
    bottom: 50%;
    display: block;
    width: 40px;
    height: 40px;
	margin: 0 0 -20px;
    padding: 0;
    transition: all 0.3s ease;
    border-radius: 0;
    cursor: pointer;
    color: transparent;
    border: none;
    outline: none;
    border-radius: 50%;
	background-color: #6ec338;
    background-position: right 16px center;
    background-size: 8px 13px;
    background-repeat: no-repeat;
    background-image: url('./assets/images/arrow-small-right.svg');
    z-index: 9;
}

.page-content .image-slider .slick-prev {
	left: -10px;
	background-position: left 16px center, 0 0;
	background-image: url('./assets/images/arrow-small-left.svg');
}

.page-content .image-slider .slick-next {
	right: -10px;
}

.page-content .image-slider .slick-arrow:hover {
	background-color: #57c513;
    background-position: right 12px center;
}

.page-content .image-slider .slick-prev:hover {
	background-color: #57c513;
    background-position: left 12px center;
}

.page-content .subpages {
	margin: 0 -5px 20px;
	padding: 0;
	list-style-type: none;
}

.page-content .subpages li {
	padding-bottom: 10px;
}

.page-content .subpages li a {
	background-color: var(--green);
	background-image: url('./assets/images/arrow-right.svg');
	background-size: 7px 12px;
	background-repeat: no-repeat;
	background-position: left 15px top 14px;
	color: var(--white);
	display: block;
	height: 100%;
	padding: 10px 15px 10px 35px;
	line-height: 120%;
	text-decoration: none;
}

.page-content .subpages li a:hover {
	background-color: #6ec338;
	background-position: left 20px top 14px;
}

.page-content .price-table {
	margin: 0 0 25px;
	padding: 0;
	list-style-type: none;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    line-height: 100%;
    border-top: 1px solid #DADADA;
}

.page-content .price-table .text {
	display: block;
	float: left;
	width: 100%;
	width: calc(100% - 80px);
	padding: 8px 10px 8px 0;
	border-bottom: 1px solid #DADADA;
	line-height: 120%;
}

.page-content .price-table .value {
	display: block;
	float: left;
	width: 80px;
	padding: 8px 0;
	border-bottom: 1px solid #DADADA;
	line-height: 120%;
}

.page-map iframe {
	width: 100%;
	height: 250px;
	display: block;
}

.page-content .iframe-container iframe {
	width: 100%;
	height: 700px;
}

@media only screen and (min-width:768px) {
	
	.page-top {
		height: 450px;
		line-height: 450px;
	}
	
	.page-top .inner .headline {
		font-size: 34px;
	}
	
	.page-top .image {
		height: 450px;
	}
	
	.page-content {
		padding: 45px 0 30px;
	}
	
	.page-content .price-table .text {
		width: 100%;
		width: calc(100% - 90px);		
	}
	
	.page-content .price-table .value {
		width: 90px;		
	}
		
}

@media only screen and (min-width:1024px) {
	
	.page-top {
		height: 550px;
		line-height: 550px;
	}
	
	.page-top .image {
		height: 550px;
	}
	
	.page-top .inner .headline {
		font-size: 38px;
	}
	
	.page-content {
		padding: 75px 0 70px;
	}
	
	.page-map iframe {
		height: 450px;
	}
	
}

@media only screen and (min-width:1280px) {
	
	.page-top {
		height: 600px;
		line-height: 600px;
	}
	
	.page-top .image {
		height: 600px;
	}
	
	.page-content {
		padding: 85px 0 80px;
	}
	
}

@media only screen and (min-width:1600px) {
	
	.page-top {
		height: 650px;
		line-height: 650px;
	}
	
	.page-top .image {
		height: 650px;
	}
	
}

/***************************
       Happy post
***************************/

.happy-top {
	width: 100%;
	display: block;
	position: relative;
	background-color: #F5F5F7;
	padding: 115px 0 30px;
}

.happy-top:before {
	content: '';
	display: block;
	width: 100%;
	height: 50%;
	z-index: 2;
	position: absolute;
	bottom: 0;
	left: 0;
	background: rgb(0,0,0);
	background: linear-gradient(0deg, rgba(0,0,0,0.7) 0%, rgba(0,0,0,0) 100%);
}

.happy-top .image {
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	overflow: hidden;
	position: absolute;
	display: block;
	z-index: 1;
}

.happy-top .image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.happy-top .inner {
	position: relative;
	z-index: 3;
	padding: 200px 0 0;
}

.happy-top .inner h1 {
	color: var(--white);
	margin: 0 0 10px;
	padding: 0;
}

.happy-top .inner h1:after,
.happy-top .inner h1:before {
	display: none;
}

.happy-top .inner p {
	color: var(--white);
	font-weight: bold;
}

.happy-top .inner .quote {
	width: 150px;
	position: absolute;
	top: 0;
	left: 0;
}

.happy-top .inner .icon {
	width: 100px;
	position: absolute;
	top: 0;
	right: 0;
}

.happy-book {
	background-color: #F39200;
}

.happy-book .inner {
	padding: 40px 80px 30px 0;
	position: relative;
}

.happy-book .inner h3 {
	color: var(--white);
}

.happy-book .inner p {
	color: var(--black);
}

.happy-book .image {
	position: absolute;
	top: -20px;
	right: -20px;
	width: 100px;
	overflow: hidden;
}

.happy-book .image img {
	width: 150px;
	max-width: 150px;
}

@media only screen and (min-width:768px) {
	
	.happy-top {
		padding: 140px 0 30px;
	}
	
	.happy-top .inner .quote {
		width: 200px;
	}
	
	.happy-top .inner .icon {
		width: 150px;
	}
	
	.happy-book .inner {
		padding: 40px 0 30px 300px;
		max-width: 650px;
	}
	
	.happy-book .image {
		position: absolute;
		top: -40px;
		right: auto;
		left: 0px;
		width: 300px;
		height: 278px;
		overflow: hidden;
	}
	
	.happy-book .image img {
		width: 400px;
		max-width: 400px;
	}
	
}

@media only screen and (min-width:1024px) {
	
	.happy-top {
		padding: 180px 0 50px;
	}
	
	.happy-top .inner {
		padding: 300px 300px 0 0;
	}
	
	.happy-top .inner .icon {
		width: 260px;
		top: 150px;
	}
	
	.happy-book .inner {
		padding: 50px 0 40px 50%;
		max-width: 100%;
	}
	
	.happy-book .image {
		position: absolute;
		top: -60px;
		right: auto;
		left: 25%;
		width: 350px;
		margin: 0 0 0 -175px;
		height: 318px;
		overflow: hidden;
	}
	
	.happy-book .image img {
		width: 450px;
		max-width: 450px;
	}
		
}

/***************************
       POST
***************************/

.post-top {
	height: 95px;
	background-color: var(--green);
}

.post-archive .column {
    padding-bottom: 30px;
}

.post-archive .navigation {
	margin: 20px 0;
}

.post-archive .navigation ul {
	list-style: none;
	margin: 0;
	padding: 0;
	text-align: left;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	gap: 5px;
}

.post-archive .navigation ul li {
    display: flex;
	align-items: center;
	justify-content: center;
    background-color: var(--white);
	width: 48px;
	height: 48px;
	text-align: center;
    font-size: 20px;
	font-weight: bold;
	line-height: 100%;
	transition: all 0.3s ease;
	border-radius: 10px;
	padding: 0;
}

.post-archive .navigation ul li:before {
	display: none;
}

.post-archive .navigation ul li span {
    display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 48px;
	border-radius: 10px;
}

.post-archive .navigation ul li a {
	color: var(--black);
	text-decoration: none;
	width: 100%;
	height: 100%;
    display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 0px;
}

.post-archive .navigation ul li.active,
.post-archive .navigation ul li:hover {
	background-color: var(--green);
	color: var(--white);
}

.post-archive .navigation ul li.active a,
.post-archive .navigation ul li:hover a {
	background-color: var(--green);
	color: var(--white);
}

.post-loop .item {
	text-decoration: none;
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	height: 100%;
	position: relative;
	transition: all 0.3s ease;
	box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
	background-color: var(--white);
	border-radius: 0px;
	overflow: hidden;
	color: var(--black);
	text-align: left;
}

.post-loop .item:hover {
	box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);	
	transform: scale(1.02);
}

.post-loop .item .image {
	margin: 0;
	flex: none;
	width: 100%;
    background-color: var(--black);	
	overflow: hidden;
}

.post-loop .item .image img {
	transition: all 0.3s ease;
	width: 100%;
	display: block;
}

.post-loop .item .top {
	padding: 20px 20px 0;
	width: 100%;
	flex: auto;
}

.post-loop .item h3 {
    font-weight: bold;
    font-size: 20px;
    letter-spacing: 0px;
    margin: 0 0 10px;
    padding: 0;
    transition: all 0.3s ease;
    line-height: 150%;
    color: var(--black);
}

.post-loop .item .more {
	padding: 0 20px;
	width: 100%
	flex: none;
}

.post-loop .item:hover .image img {
	opacity: 0.75;
}

.post-loop .item:hover .more .inline-link {
	color: var(--green);
	background-image: url('./assets/images/arrow-right-green.svg');	
}

.post-content .date {
	font-weight: bold;
}

.post-content .image {
	display: block;
	margin: 0 0 30px;
}



@media only screen and (min-width:768px) {
	
	.post-top {
		height: 110px;
	}

}

@media only screen and (min-width:1024px) {
	
	.post-top {
		height: 140px;
	}

}


/***************************
	    POPUP
***************************/

.promo-popup {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 999;
	visibility: hidden;
	opacity: 0;
	transition: all 0.3s ease;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
}

.promo-popup.visible {
	visibility: visible;
	opacity: 1;
}

.promo-popup .outer {
	position: absolute;
	left: 0;
	top: 0;
	background-color: rgba(0, 0, 0, 0.6);
	width: 100%;
	height: 100%;
	z-index: 9998;
	cursor: pointer;
}

.promo-popup .inner {
	background-color: var(--white);
	padding: 20px 15px 10px;
	width: 400px;
	max-height: calc(100% - 150px);
    max-width: calc(100% - 30px);
    overflow: auto;
    border-radius: 10px;
    position: relative;
    z-index: 9999;
	text-align: center;
}

.promo-popup .inner .close-button {
	position: absolute;
	top: 5px;
	right: 5px;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	display: block;
	background-color: var(--white);
	background-image: url('./assets/images/close.svg');
	background-size: 12px 12px;
	background-repeat: no-repeat;
	background-position: center center;
	cursor: pointer;
	z-index: 9999;
	transition: all 0.3s ease;
}

.promo-popup .inner .close-button:hover {
	transform: scale(1.05);
}

.promo-popup .inner h2 {
	margin: 0 0 5px;
	padding: 0 30px 0 0;
}

.promo-popup .inner p {
	margin: 0 0 10px;
}

.promo-popup .inner .btn,
.promo-popup .inner ._submit {
	margin: 0;
}

@media only screen and (min-width:768px) {
	
	.promo-popup .inner {
		padding: 30px 25px 20px 25px;
		width: 650px;
	}
	
	.promo-popup .inner .close-button {
		width: 34px;
		height: 34px;
		background-size: 14px 14px;
	}

}


/***************************
		   FORMS
***************************/

.gform_wrapper {
	margin: 0 0 25px 0;
}

.gform_title {
	margin: 20px 0 0;
	font-size: 22px;
}

.gform_fields {
	list-style-type: none;
	margin: 0 0 10px;
	padding: 0;
}

.gfield {
	margin: 0 0 10px 0;
	display: block;
	width: 100%;
	padding: 0;
	border: 0px;
}

.gfield_checkbox .gchoice, 
.gfield_radio .gchoice {
	position: relative;
    padding: 5px 0 5px 20px;
	line-height: 120%;
}


.gfield_checkbox .gchoice [type="checkbox"], 
.gfield_radio .gchoice [type="radio"] {
	position: absolute;
	left: 0;
	top: 7px;
}

.gform_body .gfield:before, .gform_body .gfield_checkbox li:before {
	display: none;
}

.gfield_checkbox, .gfield_radio {
	margin: 0;
	list-style-type: none;
	padding: 0;
}

.gform_required_legend {
	display: none;
}

.validation_error,
.validation_message {
	font-size: 14px;
	font-weight: bold;
	color: #e03333;
	padding: 0;
	margin: 0;
    display: block;
    width: 100%;
}

h2.gform_submission_error {
	font-size: 16px;
	color: #e03333;
}

.validation_error h2 {
	font-size: 16px;
	color: #e03333;
}

.gform_confirmation_message {
    background: #38da0f;
    color: var(--white);
    padding: 10px;
    margin: 0.5em 0 25px;
}

.gform_validation_container, .gform_wrapper .gform_validation_container, body .gform_wrapper .gform_body ul.gform_fields li.gfield.gform_validation_container, body .gform_wrapper li.gform_validation_container, body .gform_wrapper ul.gform_fields li.gfield.gform_validation_container {
    display: none!important;
    position: absolute!important;
    left: -9000px;
}

.gfield:after {
	content: " ";
	display: table;
	clear: both;	
}

input[readonly] {
	padding: 10px 0;
	border: 0px;
}

.gsection_title {
	font-size: 18px;
	margin: 20px 0 0;
}

.ginput_product_price_label {
	display: none;
}

.ginput_total_5:after,
.ginput_product_price:after {
	content: ' incl. BTW';
	font-size: 12px;
}

.ginput_product_price, .ginput_container_total {
    padding: 5px 0;
    display: block;
}

.labels_left .gfield {
	display: flex;
	flex-wrap: wrap;	
}

.labels_left .gfield_label {
	float: left;
	width: 140px;
	flex: 1 0 140px;
	max-width: 140px;
	padding: 5px 10px 5px 0;
}

.labels_left .gfield_checkbox {
	padding: 5px 0;
}

.labels_left .ginput_container {
 	flex: 1 0 240px;
}

@media only screen and (min-width:1024px) {

	.labels_left .gfield_label {
		float: left;
		width: 200px;
		flex: 1 0 200px;
		max-width: 200px;
		padding: 5px 10px 5px 0;
	}
	
	.labels_left .ginput_container {
	 	flex: 1 0 300px;
	}

}

/***************************
		   ACCORDION
***************************/

.accordion {
	margin: 0 0 30px;
}

.accordion .accordion-item .accordion-item-title {
	cursor: pointer;
	line-height: 100%;
	padding: 15px 0;
	font-size: 16px;
	font-weight: bold;
}

.accordion .accordion-item {
   	border-bottom: 1px solid #DADADA;
}

.accordion .accordion-item:first-child {
   	border-top: 1px solid #DADADA;	
}

.accordion .accordion-item .accordion-item-title.active {
	color: var(--green);
}

.accordion .accordion-item .accordion-item-title:hover {
	color: var(--green);
}

.accordion .accordion-item .accordion-item-text {
	display: none;
	position: relative;
}

@media only screen and (min-width:768px) {

	.accordion .accordion-item .accordion-item-title {
		font-size: 17px;
	}
	
}

/***************************
       Swipebox
***************************/

#swipebox-overlay {
	background: var(--white);
}

#swipebox-bottom-bar, #swipebox-top-bar {
	background: #eefbf1;
}

/***************************
      Video Container
***************************/

.video-container {
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
	margin: 30px 0 15px 0;
}

.video-container iframe,  
.video-container object,  
.video-container embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0px;
}

/***************************
          COOKIE BAR
***************************/

.cookie-bar {
	position: fixed;
	z-index: 9999;
	bottom: 0;
	left: 0;
	width: 100%;
	background-color: #6dc338;
	color: var(--white);
	text-align: center;
	padding: 10px 0;
	box-shadow: 0 -3px 6px 0px rgba(0, 0, 0, 0.25);
	opacity: 0;
	visibility: hidden;
}

.cookie-bar.visible {
	opacity: 1;
	visibility: visible;
}

.cookie-bar p {
	margin: 0;
}

.cookie-bar p .text {
	display: block;
}

.cookie-bar p .btn {
	margin: 5px 0;
	padding-top: 8px;
	padding-bottom: 8px;
	cursor: pointer;
}

@media only screen and (min-width:768px) {
	
	.cookie-bar p .text {
		display: inline-block;
	}
	
}

/***************************
          FOOTER
***************************/

.footer {
	background-color: var(--black);
}

.footer h3,
.footer p {
	color: var(--white);
}

.footer-main {
	padding: 30px 0 15px;
}

.footer-main h3 {
	margin: 0 0 10px;
	font-size: 20px;
}

.footer-main ul {
	margin: 0 0 25px;
	padding: 0;
	list-style-type: none;
    -moz-column-count: 2;
    -moz-column-gap: 20px;
    -webkit-column-count: 2;
    -webkit-column-gap: 20px;
    column-count: 2;
    column-gap: 20px;
}

.footer-main ul li {
	line-height: 120%;
	padding: 2px 0;
	color: var(--white);
}

.footer-main ul li a {
	color: var(--white);
}

.footer-main .social a {
	display: inline-block;
	padding: 0 5px 0 0;
}

.footer-main .social a svg {
	width: 50px;
	height: 50px;
}

.footer-main .social a:hover {
	transform: scale(1.1);
}

.footer-main .logos {
	display: flex;
	flex-wrap: wrap;
	align-content: center;
	align-items: center;
}

.footer-main .logos img {
	margin: 0 10px 0 0;
	width: 50px;
	height: auto;
}

.footer-bottom {
	position: relative;
	padding: 15px 0 5px;
}

.footer-bottom p {
	font-size: 16px;
	line-height: 140%;
}

.footer-bottom a {
	color: var(--white);
}

.footer-bottom .developer {
	font-size: 14px;
	color: #898989;
}

.footer-bottom .developer a {
	color: #898989;
}

@media only screen and (min-width:768px) {
	
	.footer-main {
		padding: 50px 0 15px;
	}
	
	.footer-bottom {
		padding: 15px 0 40px;
	}

	.footer-main ul {
	    -moz-column-count: 3;
	    -webkit-column-count: 3;
	    column-count: 3;
	}
	
}

@media only screen and (min-width:1024px) {

	.footer-main {
		padding: 85px 0 15px;
	}
	
	.footer-bottom {
		padding: 15px 0 40px;
	}
	
}