/* Author @ Rudy */
/* ==========================================================================
	Koppen en titels: Ubuntu
	Lopende teksten: Raleway
	Iconen: FontAwesome

	Kleuren:
	Groen: 66940a
	Groen (licht): a5c51c
	Groen (donker): 52620e
	Bruin: 545046
	Bruin (licht): b1a997
   ========================================================================== */

/* ==========================================================================
   Body
   ========================================================================== */

body {
	min-width: 320px;
	margin: 0 30px;
	background-color: #fff;
	color: #545046;
	font-size: 16px;
	line-height: 1.42857;
	font-family: 'Raleway', sans-serif;
}


/* ==========================================================================
   Base
   ========================================================================== */

a {
	color: #66940a;
	text-decoration: none;
}

a:hover {
	color: #52620e;
}

a:focus {
	outline: none;
}

h1, h2, h3, h4, h5, h6 {
	margin: 0;
	color: #66940a;
	font-weight: 700;
	font-family: 'Ubuntu', sans-serif;
}

p {
	margin-bottom: 1em;
}

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


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

.container {
	position: relative;
	max-width: 1170px;
	width: auto;
}

.container-fluid {
	position: relative;
}


/* ==========================================================================
   Header
   ========================================================================== */

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

/* logo */
.header .logo {
	float: left;
	display: block;
	width: 150px;
	margin: 10px 0 15px 0;
	transition: none;
}

/* book-button */
.header .book-button {
	position: absolute;
	top: 20px;
	right: 0;
	min-width: auto;
	padding: 5px 10px;
	font-size: 18px;
	text-align: right;
	text-transform: lowercase;
}

.header .book-button .small {
	color: #52620e;
	font-size: 14px;
	font-weight: 400;
	transition: color 0.5s;
}

.header .book-button:hover .small {
	color: #fff;
}

/* language */
.header .language {
	position: absolute;
	top: 95px;
	right: 0;
	margin: 0;
	padding: 0;
	list-style: none;
}

.header .language li {
	float: left;
	margin-left: 10px;
}

.header .language li.active {
	display: none;
}

.header .language li a:hover {
	opacity: 0.8
}


/* ==========================================================================
   Menu
   ========================================================================== */

.menu {
	float: right;
	margin: 95px 45px 0 0;
	padding: 0;
	list-style: none;
}

.menu > li {
	position: relative;
	float: left;
	margin-left: 20px;
	font-size: 16px;
	font-weight: 700;
	font-family: 'Ubuntu', sans-serif;
}

.menu > li > a {
	display: block;
	color: #545046;
	text-decoration: none;
	transition: color 0.5s, border 0.5s;
	border-bottom: 3px solid transparent;
}

.menu > li > a:hover, .menu > li.active > a {
	color: #66940a;
	border-bottom: 3px solid #66940a;
}

.menu li.sub .arrow {
	display: none;
}

/* menu > ul */
.menu li.sub > ul {
	display: none;
	z-index: 200;
	position: absolute;
	min-width: 150px;
	margin: 0;
	padding: 5px 10px;
	list-style: none;
	background-color: #a5c51c;
}

.menu li.sub:hover > ul {
	display: block;
}

.menu li.last > ul {
	right: 0;
}

.menu li.sub > ul > li {
	float: none;
	font-size: 14px;
	line-height: 1.42857;
	white-space: nowrap;
}

.menu li.sub > ul > li > a {
	display: block;
	padding: 5px 0;
	color: #fff;
}

.menu li.sub > ul > li > a:hover, .menu li.sub > ul > li.active > a {
	color: #545046;
	text-shadow: none;
}

/* collapse */
.nav-collapse.collapse {
	display: none;
	width: 100%;
	clear: both;
}

.nav-collapse.collapse .menu {
	float: none;
	margin: 0;
}

.nav-collapse.collapse .menu li {
	float: none;
	width: 100%;
	margin-left: 0;
	line-height: 40px;
	border-top: 1px solid rgba(0, 0, 0, 0.5);
}

.nav-collapse.collapse .menu li > a {
	padding-right: 30px;
	border-bottom: none;
}

.nav-collapse.collapse .menu li > a:hover,
.nav-collapse.collapse .menu li.active > a {
	border-bottom: none;
}

.nav-collapse.collapse .menu li.sub .arrow {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 25;
	display: block;
	width: 30px;
	color: #545046;
	text-align: center;
	cursor: pointer;
	transition: 0.3s;
}

.nav-collapse.collapse .menu li.sub .arrow:hover {
	color: #66940a;
}

.nav-collapse.collapse .menu li.sub > ul {
	position: relative;
	padding: 0;
	background: none;
}

.nav-collapse.collapse .menu li.sub:hover > ul {
	display: none;
}

.nav-collapse.collapse .menu li.sub > ul > li {
	line-height: 40px;
}

.nav-collapse.collapse .menu li.sub > ul > li > a {
	padding: 0 0 0 30px;
	color: #545046;
}

.nav-collapse.collapse .menu li.sub > ul > li > a:hover,
.nav-collapse.collapse .menu li.sub > ul > li.active > a {
	color: #66940a;
}

/* nav-toggle */
.nav-toggle {
	display: none;
	float: right;
	margin: 90px 35px 0 0;
	color: #545046;
	font-size: 16px;
	font-weight: 700;
	line-height: 35px;
	text-transform: uppercase;
	font-family: 'Ubuntu', sans-serif;
	cursor: pointer;
}

.nav-toggle:hover {
	color: #66940a;
}


/* ==========================================================================
   Eyecatcher
   ========================================================================== */

.eyecatcher {
	position: relative;
	background-color: #eee;
	overflow: hidden;
}

.eyecatcher .owl-carousel .item {
	background-size: cover;
	background-position: center center;
}

.eyecatcher, .eyecatcher .owl-carousel .item {
	height: 40vh;
	min-height: 200px;
	max-height: 400px;
}

.home .eyecatcher, .home .eyecatcher .owl-carousel .item {
	height: 70vh;
	min-height: 400px;
	max-height: 700px;
}

/* caption */
.eyecatcher .caption {
	position: absolute;
	top: 40px;
	left: 30px;
	right: 30px;
	max-width: 750px;
	padding: 30px;
	background-color: rgba(0, 0, 0, 0.5);
	border-radius: 2px;
	color: #fff;
	text-align: center;
}

.eyecatcher .caption .title {
	padding: 0 10%;
	font-size: 30px;
	font-weight: 700;
	line-height: 1.2;
	font-family: 'Ubuntu', sans-serif;
}

.eyecatcher .caption .divider {
	max-width: 256px;
	margin: 15px auto;
}

.eyecatcher .caption .description {
	font-size: 20px;
	line-height: 1.2;
}

.eyecatcher .caption .go {
	margin-top: 20px;
	font-size: 18px;
}

/* butterfly */
.eyecatcher .butterfly {
	z-index: 100;
	position: absolute;
	right: 5px;
	bottom: -1px;
	animation: 1.5s .2s fadeInUp both;
}

.eyecatcher .butterfly img {
	width: 35vw;
	max-width: 625px;
	max-height: 445px;
}


/*  ==========================================================================
    search-and-book-widget
    ========================================================================== */

.search-and-book-widget {
	z-index: 100;
	position: relative;
}

.search-and-book-widget .container-holder {
	margin-top: -45px;
	padding: 15px;
	border-radius: 4px;
	background-color: #a5c51c;
	box-shadow: 4px 5px 0 0 #52620e;
	transition: margin 0.5s;
}

@media (min-width: 1200px) {
	.search-and-book-widget.fixed {
		z-index: 998;
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
	}

	.search-and-book-widget.fixed .container-holder {
		margin-top: 0;
	}
}


/* ==========================================================================
   Home-blocks
   ========================================================================== */

.home-blocks {
	margin: 6vh 0;
}

.home-blocks .row {
	margin: -1px 0 0 -0.087719298245614%;
}

/* Item
   ========================================================================== */
.home-blocks .item {
	position: relative;
	display: block;
	float: left;
	width: 33.24561403508772%;
	margin: 1px 0 0 0.087719298245614%;
	background-position: center center;
	background-size: cover;
	overflow: hidden;
}

.home-blocks .item::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.3);
	transition: background-color 0.5s;
}

.home-blocks .item:hover::before {
	background-color: rgba(0, 0, 0, 0.5);
}

/* caption */
.home-blocks .item .caption {
	position: absolute;
	left: 0;
	right: 0;
	padding: 0 20px;
	color: #fff;
	font-weight: 700;
	text-align: center;
}

.home-blocks .item .caption .image {
	margin-bottom: 7vh;
}

.home-blocks .item .caption .image img {
	display: inline-block;
}

.home-blocks .item .caption .title {
	font-size: 20px;
}

.home-blocks .item .caption .description {
	font-size: 18px;
}


/* ==========================================================================
   Content
   ========================================================================== */

.content {
	margin: 6vh 0;
}

.content h1 {
	margin-bottom: 40px;
	font-size: 30px;
	text-align: center;
}

.content h1::after {
	content: "";
	display: block;
	width: 107px;
	height: 24px;
	margin: 20px auto 0 auto;
	background-image: url('../images/divider-small.png');
}

.content h2 {
	margin-bottom: 10px;
	font-size: 24px;
}

.content h3 {
	margin-bottom: 10px;
	font-size: 20px;
}

.content img, .content iframe {
	border: none;
}

/* content > brown */
.content.brown {
	position: relative;
	margin: 0;
	padding: 6vh 30px 10vh 30px;
	background-color: #545046;
	color: #fff;
}

.content.brown a {
	color: #fff;
	text-decoration: underline;
}

.content.brown a:hover {
	color: #b1a997;
}

.content.brown h1 {
	color: #fff;
}

.content.brown h2 {
	color: #b1a997;
}

.content.brown::after {
	content: "";
	z-index: 100;
	position: absolute;
	left: 0;
	right: 0;
	bottom: -83px;
	width: 126px;
	height: 153px;
	margin: 0 auto;
	background-image: url('../images/butterfly-small.png');
}

/* Ordered list 
   ========================================================================== */
.content ol {
	margin: 1em 0;
	padding: 0;
	list-style: none;
}

.content ol li {
	margin-bottom: 15px;
	padding-left: 35px;
}

.content ol li::before {
	content: "\f00c";
	font-family: FontAwesome;
	float: left;
	margin-left: -35px;
	color: #a5c51c;
	font-size: 24px;
	line-height: 1;
}

/* Gallery
   ========================================================================== */
.gallery .image {
	display: block;
	margin-bottom: 30px;
}

.gallery .image img {
	width: 100%;
}

.gallery .image:hover {
	opacity: 0.8;
}

/* Intro
   ========================================================================== */
.content .intro {
	padding: 0 10%;
	font-size: 18px;
	text-align: center;
}

.content .intro p:last-of-type {
	font-size: 24px;
	font-family: 'Satisfy', cursive;
}

.zvr-widget {
	width: 144px;
	margin: 0 auto;
}


/* ==========================================================================
   Photoalbum-gallery
   ========================================================================== */

.photoalbum-gallery .row {
	margin: 0 0 0 -0.05%;
}

.photoalbum-gallery .item {
	float: left;
	width: 19.95%;
	margin: 1px 0 0 0.05%;
}

.photoalbum-gallery .image {
	position: relative;
	display: block;
	background-position: center center;
	background-size: cover;
	overflow: hidden;
}

.photoalbum-gallery .image::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0);
	transition: background-color 0.5s;
}

.photoalbum-gallery .image:hover::before {
	background-color: rgba(0, 0, 0, 0.3);
}


/* ==========================================================================
   Highlights
   ========================================================================== */

.highlights {
	margin-top: 6vh;
	text-align: center;
}

.highlights .item {
	display: inline-block;
	width: 180px;
	margin: 0 30px 6vh 30px;
	vertical-align: top;
}

.highlights .item .caption {
	min-height: 160px;
	line-height: 1.2;
}

.highlights .item .title {
	margin-bottom: 10px;
	font-size: 18px;
}


/* ==========================================================================
   Tiles
   ========================================================================== */

.tiles .item {
	margin-bottom: 30px;
}

/* image */
.tiles .item .image {
	display: block;
}

.tiles .item .image img {
	width: 100%;
}

.tiles .item .image:hover {
	opacity: 0.8;
}

/* description */
.tiles .item .description .date {
	font-size: 13px;
}

/* overview */
.tiles .overview {
	margin-top: 30px;
}


/* ==========================================================================
	Photoalbum
	========================================================================== */

.photoalbum .image {
	position: relative;
	display: block;
	margin-bottom: 30px;
	background-color: #eee;
	overflow: hidden;
}

.photoalbum .image img {
	width: 100%;
}

.photoalbum .image:hover {
	opacity: 0.8;
}

.photoalbum .image .overlay {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	padding: 5px 10px;
	background-color: rgba(0, 0, 0, 0.5);
	color: #fff;
	text-align: center;
}

/* other-albums */
.photoalbum .other-albums {
	margin-bottom: 6vh;
}


/* ==========================================================================
   Properties-overview
   ========================================================================== */

.properties-overview {
	margin-bottom: 6vh;
}

/* Item
   ========================================================================== */
.properties-overview .item {
	position: relative;
	display: block;
	margin-bottom: 30px;
	color: #fff;
	text-align: center;
	overflow: hidden;
}

/* image */
.properties-overview .item .image {
	position: relative;
	display: block;
	margin-bottom: 1px;
	overflow: hidden;
}

.properties-overview .item .image img {
	width: 100%;
}

.properties-overview .item .image:after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 50%;
	background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.35));
	transition: opacity 0.5s;
}

.properties-overview .item .image:hover:after {
	opacity: 0;
}

.properties-overview .item .image .title {
	z-index: 100;
	position: absolute;
	bottom: 20px;
	left: 10px;
	right: 10px;
	color: #fff;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.2;
}

.properties-overview .item .status {
	z-index: 100;
	position: absolute;
	top: 10px;
	left: 10px;
	right: 10px;
	color: #fff;
	font-weight: 700;
}

/* caption */
.properties-overview .item .caption {
	padding: 15px;
	background-color: #a5c51c;
}

.properties-overview .item .caption .price {
	margin-bottom: 10px;
}


/* ==========================================================================
   Property-detail
   ========================================================================== */

.property-detail .tommy-booking {
	margin-top: 6vh;
}

/* sold */
.property-detail .sold {
	margin-bottom: 1em;
	color: #ff0004;
	font-weight: 700;
	text-transform: uppercase;
}

/* features */
.property-detail .features {
	margin-bottom: 1em;
}

/* youtube */
.property-detail .youtube {
	margin-bottom: 1em;
}


/* ==========================================================================
   Partners
   ========================================================================== */

.partners {
	margin: 10vh 0;
	text-align: center;
}

.home .partners {
	margin: 5vh 0;
}

.partners ul {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	display: -webkit-flex;
}

.partners li {
	flex-grow: 1;
	-webkit-flex-grow: 1;
}


/* ==========================================================================
   Footer
   ========================================================================== */

.footer {
	position: relative;
	margin: 0 -30px;
	background-color: #52620e;
	color: #fff;
}

.footer a {
	color: #fff;
}

.footer a:hover {
	color: #a5c51c;
}

.footer .holder {
	margin: 8vh 0 4vh 0;
}

.footer .col {
	margin-bottom: 30px;
}

.footer .col:last-of-type {
	margin-bottom: 0;
}

.footer .col h4 {
	margin-bottom: 10px;
	color: #fff;
	font-size: 16px;
	font-family: 'Raleway', sans-serif;
}

.footer .col ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.footer .col ul li {
	padding-left: 20px;
}

.footer .col ul li::before {
	content: "\f054";
	font-family: FontAwesome;
	float: left;
	margin-left: -20px;
	font-size: 16px;
}

.footer .col p:last-of-type {
	margin-bottom: 0;
}

/* social */
.footer .social {
	position: absolute;
	top: -32px;
	left: 0;
	right: 0;
	text-align: center;
}

.footer .social a {
	display: inline-block;
	width: 64px;
	height: 64px;
	margin: 0 5px;
	background-color: #66940a;
	border: 2px solid #fff;
	border-radius: 100%;
	color: #fff;
	font-size: 40px;
	line-height: 64px;
	text-align: center;
}

.footer .social a:hover {
	background-color: #a5c51c;
}


/* ==========================================================================
   Scroll-up
   ========================================================================== */

.scroll-up {
	z-index: 998;
	position: fixed;
	bottom: -65px;
	left: 25px;
	width: 40px;
	border: 1px solid #a5c51c;
	border-radius: 4px;
	background-color: #a5c51c;
	box-shadow: 3px 3px 5px 0 rgba(0, 0, 0, 0.1);
	color: #fff;
	font-size: 18px;
	line-height: 40px;
	text-align: center;
	transition: 0.5s;
}

.scroll-up:hover {
	background-color: #fff;
	color: #a5c51c;
	cursor: pointer;
}


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

.image img {
	display: block;
}

iframe {
	max-width: 100%;
}


/* ==========================================================================
   CSS3 transition
   ========================================================================== */

a, .btn {
	transition: 0.5s;
}


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

.btn {
	min-width: 160px;
	border-color: #66940a;
	background-color: #66940a;
	box-shadow: 4px 5px 0 0 #52620e;
	color: #fff;
	font-size: 16px;
	line-height: 20px;
	font-weight: 700;
	font-family: 'Ubuntu', sans-serif;
	text-decoration: none !important;
	white-space: inherit;
}

.btn:hover, .btn:focus, .btn.active {
	border-color: #66940a;
	background-color: #a5c51c;
	color: #fff;
}

.btn-inverse {
	border-color: #a5c51c;
	background-color: #a5c51c;
}

.btn-inverse:hover, .btn-inverse:focus {
	border-color: #a5c51c;
	background-color: #66940a;
}

.btn-block {
	display: block;
	width: auto;
	min-width: auto;
}

.btn-small {
	min-width: auto;
}


/* ==========================================================================
   Helper classes
   ========================================================================== */

.vertical-align {
	position: relative;
	top: 50%;
	transform: translateY(-50%);
}


/* ==========================================================================
   Logo-3w
   ========================================================================== */

.logo-3w {
	position: absolute;
	right: 5px;
	bottom: 5px;
}


/* ==========================================================================
	Owl-carousel
	========================================================================== */

/* owl-dots */
.owl-carousel .owl-dots {
	height: 16px;
	text-align: center;
	margin-top: 20px;
}

.owl-carousel .owl-dots .owl-dot {
	display: inline-block;
	width: 16px;
	height: 16px;
	margin: 0 3px;
	border: 2px solid #000;
	border-radius: 100%;
	cursor: pointer;
	transition: background-color 0.5s;
}

.owl-carousel .owl-dots .owl-dot:hover,
.owl-carousel .owl-dots .owl-dot.active {
	background-color: #000;
}

.owl-carousel .owl-dots .owl-dot.active {
	cursor: default;
}

/* owl-nav */
.owl-carousel .owl-nav div {
	display: block;
	position: absolute;
	top: 50%;
	z-index: 200;
	margin-top: -36px;
	transition: 0.5s;
	color: rgba(0, 0, 0, 0.8);
	cursor: pointer;
}

.owl-carousel .owl-nav div .fa {
	font-size: 72px;
}

.owl-carousel .owl-nav .owl-prev {
	left: 15px;
}

.owl-carousel .owl-nav .owl-prev:hover {
	left: 12px;
}

.owl-carousel .owl-nav .owl-next {
	right: 15px;
}

.owl-carousel .owl-nav .owl-next:hover {
	right: 12px;
}