
/*
 * Homepage
 *--------------------------*/
section.section-hero {
    margin: 0;
    position: relative;
    height: 90vh;
    width: 100%;
	min-height: 580px;
}
.hero-texts {
    position: absolute;
    height: 100%;
    width: 100%;
    z-index: 10;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.hero__camper-site {
    margin-top: 30px;
    display: flex;
    flex-direction: column;
    align-items: center;
	position: relative;
}
a.hero__camper-site--icon i {
    color: var(--color-white);
    font-size: 60px;
    transition: all 0.25s ease-in-out;
}
a.hero__camper-site--icon i:hover {
    transform: scale(103%);
}
a.hero__camper-site--text {
    padding-top: 16px;
    color: var(--color-white);
    font-size: 28px;
    text-transform: uppercase;
	text-shadow: 0 0 3px #000;
	font-weight: 400;
    transition: all 0.25s ease-in-out;
    text-decoration: none;
}
a.hero__camper-site--text:hover {
    transform: scale(103%);
    color: var(--color-white);
}
.hero-title {
    color: var(--font-default-text-color);
    font-size: 62px;
    font-weight: 580;
	text-shadow: 0 0 10px rgba(255,255,255,0.5);
	text-align: center;
	letter-spacing: 2px;
	padding: 4% 60% 4% 4%;
}
.hero-title .sub-title {
	display: block;
	font-size: 22px;
	padding-top: 10px;
	text-shadow: 0 0 10px rgba(255,255,255,0);
	color: rgba(0,0,0,0.4);
	color: #c8c8c8;
}
.hero-image-box {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
	padding-top: 0;
	padding-left: 10%;
}
.hero-image-box img {
    position: relative;
    width: 100%;
    height: 100%;
    object-fit: cover;
	-webkit-clip-path: url(#clipshape);
	clip-path: url(#clipshape);
}
#hero-image-clip {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
}
.hero-logo {
	margin-bottom: -8px;
}
.hero-logo img {
	max-width: 60%;
	width: auto;
	max-height: 100px;
	height: auto;
}
@media only screen and (max-width: 1100px) {
    .hero-title {
		padding: 4% 41% 4% 4%;
		font-size: 50px;
	}
}
@media only screen and (max-width: 900px) {
    .hero-title {
		padding: 4% 31% 4% 4%;
		font-size: 50px;
	}
	
	
}
@media only screen and (max-width: 800px) {
    .hero-title {
		padding: 4%;
		font-size: 50px;
	}
	.hero-title .sub-title {
		color: #fff;
		text-shadow: 0 0 10px rgba(0,0,0,0.5);
	}
	.domain-search-bar__form-field--input {
		font-size: 1.4rem;
	}
	.hero-image-box img {
		width: 100%;
		left: 0%;
	}
}

@media only screen and (max-width: 600px) {
	.hero-texts {
		margin-top: 40px;
	}
	section.section-hero {
		height: 80vh;
	}
	.hero-image-box img {
		width: 200%;
		left: -65%;
	}
}

@media only screen and (max-width: 500px) {
	section.section-hero {
		height: 90vh;
	}
    .hero-title {
		font-size: 36px;
		height: 50%;
	}
	a.hero__camper-site--icon i {
		font-size:40px;
	}
	
	a.hero__camper-site--text {
		font-size:24px;
	}
}


.business-info-card {
	list-style: none;
	padding-left: 0;
}
.business-info-card li {
	display: flex;
	justify-content: flex-start;
	align-content: flex-start;
}
.business-info-card li i {
	width: 36px;
	line-height: 1.6;
}
.calendar .days .business-info-card li a {
	text-decoration: none;
	color: var(--color-primary);
}
.business-info-card li a:hover {
	text-decoration: underline;
}


.availability-form,
.availability-map-form {
	width: 100%;
	margin: 0 auto 60px auto;
	background: #fff;
	padding: 40px 60px;
	max-width: 590px;
	box-shadow: 0 0 20px rgba(0,0,0,0.1);
	border-radius: 6px;
}
.home .availability-form,
.home .availability-map-form {
	transform: translateY(0);
	box-shadow: 0 10px 20px rgba(0,0,0,0.1);
	margin: 0 auto 0 auto;
	position: absolute;
}
.availability-form .flex,
.availability-map-form .flex {
	justify-content: center;
	gap: 50px;
}
.availability-map-form .flex {
	gap: 16px;
}
.availability-map-form .flex {
	width: 100%;	
}
.mobile-show-map-box {
	display: none;
}

@media only screen and (max-width: 1200px) {
	.availability-form,
	.availability-map-form {
		padding: 40px 40px;
	}
}
@media only screen and (max-width: 1040px) {
	.availability-form,
	.availability-map-form {
		margin: 0;
	}
}
@media only screen and (max-width: 600px) {
	.availability-form,
	.availability-map-form {
		padding: 40px 20px;
	}
	.availability-form .flex,
	.availability-map-form .flex {
		display: block;
	}
	.availability-form .flex > *,
	.availability-map-form .flex > * {
		text-align: center;
	}
	.availability-map-form .label-wide {
		width: 70%;	
	}
	.availability-map-form .label-wide .input-wide {
  		width: 100%;
	}
/*
	#gmap-search .content-extra {
		padding-top: 220px;
	}
*/
	
	.mobile-show-map-box {
		display: block;
	}
	#marker-list-holder {
		width: 100%;
	}
	#map-canvas.map-hidden {
		display: none;
	}
	#map-canvas {
		display: block;
		position: fixed !important;
		z-index: 110;
		left: 0;
		width: 100%;
		height: 100vh !important;
		top: 0;
		padding: 0;
		margin: 0px;
	}
	#map-canvas.map-hidden {
		display: none;
	}
	
	#btn-map-close {
		display: block;
		position: fixed;
		z-index: 111;
		right: 0;
		top: 0;
		background: #000;
		color: #fff;
		box-shadow: 0 0 10px 0 #fff;
		font-family: "Font Awesome 6 Pro";
		font-weight: 900;
		font-size: 24px;
		line-height: 38px;
		padding: 0px;
		margin: 10px;
		height: 38px;
		width: 38px;
		border-radius: 50%;
		text-align: center;
		cursor: pointer;
		transition: all 250ms ease-in-out;
	}
	#btn-map-close:before {
		content: "\f00d";
	}
	#btn-map-close:hover {
		background: var(--color-accent);
	}
	
	
}
.availability-form label .label-faux,
.availability-map-form label .label-faux {
	font-weight: normal;
	padding-right: 8px;
}



.search-result h2 {
	margin-top: 100px;
}

.number-found {
	background: var(--color-accent);
	display: inline-block;
	width: 40px;
	text-align: center;
	border-radius: 50%;
	color: var(--color-white);
	font-weight: 500;
}
.places-overview {
	width: 100%;
}
.places-overview thead th {
  text-transform: uppercase;
  font-size: 13px;
  font-weight: 630;
  letter-spacing: 0.1rem;
}
.places-overview tbody td:last-child {
	text-align: right;
}







/*
 * Google Maps
 * ======================================================== */
#map-canvas {
	height: 600px;
	position: relative;
	overflow: hidden;
	border-radius: 14px;
	right: 0;
}
#map-canvas.fixed {
	position: fixed !important;
	overflow: hidden;
	transform: translate(0,-700px);
	right: calc( (100% - 980px) / 2);
	width: calc( 980px * 0.566667);
}
#map-canvas.bottom {
	bottom: 0;
}
#gmap-search {
	padding-top: 160px;	
}
.gmap {
	width: 100%;
	height: 400px;
	border: #ccc solid 1px;
	margin: 0;
}
/* fixes potential theme css conflict */
.gmap img {
	max-width: inherit !important;
}
.map-map.flex {
	align-items: flex-start;
}
.map-map.flex.align-bottom {
	align-items: flex-end;
}

.gm-style .gm-style-iw-c {
	border-radius: 0px !important;	
	padding: 15px 20px !important;
	box-shadow: 0 2px 7px 1px rgba(0,0,0,.3);
}
#marker-list {
	display: flex;
	flex-direction: column;
}
#marker-list .swiper-slide {
	flex-shrink: 1;
}

.markerSwiper-button-next,
.markerSwiper-button-prev {
	position: absolute;
	left: -80px;
	width: 40px;
	height: 40px;
	background: lime;
	top: 60px;
}
.markerSwiper-button-prev {
	background: aqua;
	top: 140px;
}

#marker-list .listitem {
	margin-bottom: 1em;
	box-shadow: 0px 7px 10px 0 rgba(0,0,0,0.1);
	border-radius: 4px;
	position: relative;
	cursor: pointer;
	z-index: 1;
	transition: all 150ms ease-in-out;
}
#marker-list .listitem:before,
#marker-list .listitem:after {
	content: "";
	background: #fff;
	width: 30px;
	height: 30px;
	position: absolute;
	right: 5px;
	top: calc( 50% - 10px );
	z-index: 3;
	transform: rotate(45deg);
	transition: all 150ms ease-in-out;
}
#marker-list .listitem:before {
	z-index: 1;
	box-shadow: 6px 6px 16px 0 rgba(0,0,0,0.15);
}
#marker-list > .listitem:hover,
#marker-list > .listitem.active {
	box-shadow: 0px 10px 16px 0 rgba(0,0,0,0.1);
	transform: scale(1.01);
}
#marker-list > .listitem:hover:before,
#marker-list > .listitem:hover:after,
#marker-list > .listitem.active:before,
#marker-list > .listitem.active:after {
	right: -16px;
}
#marker-list.fixed {
	position: fixed;
}
#marker-list .listitem.dummy {
	pointer-events: none;
	visibility: hidden;
	height: 200px; /* map height of 600px / 3 */
}
@media only screen and (max-width: 600px) {
	#marker-list .listitem.dummy {
		display: none;
	}
}

.location-pop-info {
	font-family: var(--font-text);
	background: #fff;
	padding: 18px 24px;
	position: relative;
	z-index: 4;
}
.location-pop-info h3 {
	font-size: 16px;
	color: var(--main-color-one);
	margin-bottom: 0.5em;
}
.location-pop-info .city {
	display: inline-block;
	padding-left: 8px;
	font-size: 14px;
	font-weight: 400;
	color: #8daaaa;
}

.location-pop-info .view-on-map {
	display: none;
	float: right;
	font-size: 12px;
	color: #8daaaa;
	text-transform: uppercase;
	font-weight: 400;
}
.location-pop-info .view-on-map i {
	font-size: 14px;
	margin-right: 4px;
}
@media only screen and (max-width: 600px) {
	.location-pop-info .view-on-map {
		display: inline-block;
	}
}
.location-pop-info .reviews {
	justify-content: flex-start;
	align-items: flex-start;
	padding-bottom: 0.5em;
}
.location-pop-info .location-stars {
	font-size: 13px;
	color: var(--color-rating-stars);
}
.location-pop-info .no_reviews {
	font-size: 14px;
	color: #8daaaa;
}
.location-pop-info .props ul {
	list-style: none;
	padding-left: 0;
	display: flex;
	justify-content: flex-start;
	align-content: flex-start;
	align-items: flex-start;
	gap: 9px;
	margin-top: 0.5em;
	margin-bottom: 1em;
	font-size: 13px;
}
.location-pop-info .props ul li {
	margin-bottom: 0;
}
.location-pop-info .props .fa-toilet {
	transform: translateY(-5px) translateX(0px);
}
.location-pop-info .props {
	color: var(--color-primary);
}


.location-pop-info .inner {
	align-items: flex-start;
	font-size: 15px;
}
.location-pop-info .inner em {
	font-weight: 500;
	font-style: normal;
	color: var(--color-accent);
}
.location-pop-info .inner .valuta {
	font-size: 13px;
}
.location-pop-info .inner > * {
	width: 47%;
	padding-bottom: 4px;
}
.location-pop-info .inner .right {
	padding-top: 10px;
}
#map-canvas .location-pop-info .inner > * {
	width: 100%;
}
.location-pop-info .inner img {
	max-width: 100%;
	width: auto;
	height: auto;
	border-radius: 3px;
}
.location-pop-info .button-pop-link {
	font-size: 15px;
	text-decoration: none;
}
.location-pop-info .button-pop-link i {
	font-size: 13px;
	margin-left: 4px;
}
.location-pop-info .button-pop-link:hover {
	text-decoration: none;
}
.location-pop-info .button-pop-link .name,
.location-pop-info .button-pop-link:hover .name {
	text-decoration: underline;
}
.map-nav #map-distance-select {
	display: inline-block;
	width: 80px;
	margin-right: 0;
}





.general-introduction {}


.general-introduction__top-box {
	display: flex;
	width: 100%;
}

.general-introduction__top-box--left {
	width: 65%;
	padding-right:40px;
	display: flex;
	flex-direction: column;
	justify-content: flex-start
}

.general-introduction__top-box--right {
	width: 35%;
}

.location-characteristics {
	margin-top:60px;
}

ul.location-characteristics__list {
	list-style: none;
	display: grid;
	grid-template-columns: 1fr 1fr;
	column-gap: 26px;
	row-gap: 6px;
	width: 100%;
}
.location-characteristics__list--item {
	display: flex;
	justify-content: space-between;
/*	width: 100%;*/
	line-height: 25px;
	padding: 4px 20px;
}
.location-characteristics__list--item.item-hidden {
	display: none;	
}


.location-characteristics__list--item:nth-child(4n+1),
.location-characteristics__list--item:nth-child(4n+2) {
	background: #f9f9f9;
}


.location-characteristics__list--item .fa-toilet {
	transform: translateY(-5px) translateX(7px);
}
.location-characteristics__list--item .fa-flask {
	transform: translateY(0px) translateX(-26px);
}

.location-characteristics__list--item-icon {
	width: 35px;
	display: inline-block;
}
.location-characteristics__list--item-label {
	font-size: 15px;
	font-weight: 360;
}
.location-characteristics__list--item .true-false {
	font-size: 11px;
	font-weight: 480;
	color: var(--color-secondary);
	padding-left: 20px;
	text-transform: uppercase;
	display: flex;
	justify-content: flex-end;
	gap: 10px;
	align-content: center;
	align-items: center;
}
.location-characteristics__list--item .true-false i {
	font-size: 14px;
}
.location-characteristics__list--item ul {
	display: flex;
	justify-content: flex-end;
	list-style: none;
	gap: 10px;
	margin: 0;
	
}
.location-characteristics__list--item ul.tags li {
	background: #eee;
	border-radius: 5px;
	padding: 0 8px;
	font-size: 14px;
	font-weight: 300;
	color: var(--font-default-text-color);
	text-transform: none;
	margin-bottom: 0;
}







/* Booking page
   ----------------------------------- */
.place-details {
	display: flex;
	justify-content: space-between;
	align-content: flex-start;
	align-items: flex-start;
}
.place-details .left {
	width: 54%;
}
.place-details .right {
	width: 38%;
}
@media only screen and (max-width: 600px) {
	.place-details {
		display: block;
	}
	.place-details .left,
	.place-details .right {
		width: 100%;
	}
}
.swiper.gallery-small {
	width: 100%;
	overflow: hidden;
	box-shadow: 5px 5px 10px 0 rgba(0,0,0,0.2);
}
.swiper.gallery-small .swiper-slide {
	position: relative;
	width: 100%;
	aspect-ratio: 1 /1;
	height: auto;

}
.swiper.gallery-small .swiper-slide a {
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-content: center;
	align-items: center;
	color: #fff;
	text-decoration: none;
}
.swiper.gallery-small .swiper-slide a .icon {
	width: 60px;
	height: 60px;
	line-height: 60px;
	font-size: 18px;
	background: rgba(0,0,0,0.5);
	text-align: center;
	border-radius: 50%;
	transition: all 250ms ease-in-out;
}
.swiper.gallery-small .swiper-slide a:hover .icon {
	width: 64px;
	height: 64px;
	line-height: 64px;
	font-size: 24px;
	background: #000;
}
.swiper.gallery-small .swiper-slide img {
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	object-fit: cover;
}
.main ul.place-services {
	list-style: none;
}
.main ul.place-services.services-search-availability {
	display: flex;
}

ul.place-services.services-search-availability {
	margin:0;
}
ul.place-services li {
	font-size: 16px;
	font-weight: 360;
	color: rgba(var(--color-primary-rgba), 0.7);
	color: rgba(0,0,0,1);
}
ul.place-services.services-search-availability li {
	font-size: 18px;
	margin-bottom: 0;
	position: relative;
	cursor: help;
}

.main ul.place-services li i {
	color: var(--color-primary);
	font-size: 22px;
	margin-right: 10px;
}


section#impressions {
	padding-top: 80px;
}
.swiper.gallery-impression,
.swiper.gallery-impression  .swiper-slide  {
	height: 500px;
	overflow: hidden;
}
.swiper.gallery-impression .swiper-slide img {
	width: 100%;
	height: 100%;
	object-position: center center;
	object-fit: cover;
}



/* Homepage Reviews 
   ------------------------------------*/
section.section-reviews {
	position: relative;
}


.section-reviews .fp-review__inner-top {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	margin-bottom: 60px;
}
	

.section-reviews h2 {
	padding-right: 40px;
}

.section-reviews .swiper-wrapper {
	padding-bottom: 70px;
}
.section-reviews .review-star-rating {
	padding-bottom: 20px;
}

.section-hero .star-rating {
	padding-top: 20px;
}
.star-rating {
	display: flex;
	justify-content: center;
}
.reviews__average-rating-box .star-rating {
	justify-content: flex-start;
}

.rating-without-stars {
	display: flex;
	justify-content: flex-start;
	align-items: center;
}
.rating-without-stars .average-rating {
	background: var(--color-rating-stars);
	height: 36px;
	padding: 0 6px;
	border-radius: 5px 5px 0 5px;
	color: #fff;
	margin-right: 10px;
	line-height: 36px;
	font-weight: 500;
}
.rating-without-stars .average-rating-meta {
	display: flex;
	justify-content: flex-start;
	flex-direction: column;
}
.rating-without-stars .average-rating-meta .average-rating-text {
	line-height: 19px;
}
.rating-without-stars .average-rating-meta .total-reviews {
	font-size: 15px;
	color: rgba(0,0,0,0.5);
}

.star-rating svg {
	color: var(--color-rating-stars);
}

.section-reviews .reviews__average-rating-box .star-rating svg,
.star-rating.big svg {
	width: 24px;
	height: 24px;
}

.section-reviews .star-rating svg,
.star-rating.normal svg {
	width: 18px;
	height: 18px;
}

.section-reviews .star-rating svg:not(:last-child),
.star-rating svg:not(:last-child) {
	margin-right: 3px;
}

.section-reviews .review-text {
	font-weight: 250;
}

.section-reviews .review-meta {}

.section-reviews .review-author {
	font-weight: 450;
}
.review-date {
	color: rgba(0,0,0,0.4);
	font-weight: 350;
	font-size: 15px;
}



.has-figures .row {
	margin-bottom: 42px;
}
.has-figures picture,
.has-figures img {
	position: relative;
	z-index: 2;
}
.has-figures picture {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 1 / 1;
}
.has-figures img {
  transform: scale(1.25);
  transform-origin: left center;
}
.has-figures picture:after {
	content: "";
	position: absolute;
	right: -40px;
	bottom: 0px;
	width: 80%;
	height: 80%;
	border-radius: 50%;
	background: var(--color-quaternary);
	transform: scale(1.25);
	transform-origin: left center;
	z-index: 1;
}
.entry-content.has-figures .row .left img {
	transform-origin: right center;
}
.entry-content.has-figures .row .left picture:after {
	left: -40px;
	top: 10px;
	background: var(--color-tertiary);
	transform-origin: right center;
}
@media only screen and (max-width: 600px) {
	.entry-content .flex {
		flex-wrap: wrap;
	}
	.entry-content .flex > * {
		width: 100%;
	}
	.has-figures .row {
		margin-bottom: 0px;
	}
	
	.small-col-reverse{
		flex-direction: column-reverse;
	}
	.entry-content .flex .columns:has(picture) {
		order: 1;
	}
	.entry-content .flex .columns:not(:has(picture)) {
		order: 2;
	}
	.has-figures picture {
		transform: translateY(20px);
	}
	.has-figures img,
	.has-figures picture:after {
		transform: scale(0.85);
	}
}


.page-title .subtitle {
	display: block;
	font-size: 75%;
	color: var(--color-grey-medium);
}
.page-title .subtitle.accent {
	color: var(--color-accent);
}



/* Footer
   ----------------------------------- */
.footer {
	font-size: 14px;
	color: #DBDBDB;
}
.footer p {
	margin-bottom: 0.5em;
}
.footer p.button-holder {
	padding-top: 1em;
}
.footer a {
	color: var(--color-white);
	text-decoration: underline;
	text-decoration-style: dashed;
}
.footer a:hover {
	color: var(--color-white);
	text-decoration: underline;
	text-decoration-style: solid;
}
.footer h4 {
	color: var(--color-secondary);
	font-size: 13px;
	font-weight: 531;
	text-transform: uppercase;
	letter-spacing: 1.4px;
}
.footer nav ul,
ul.contact {
	padding-left: 0;
	list-style: none;
	margin-bottom: 0;
}
.footer-menu ul li,
ul.contact li {
	display: flex;
	justify-content: flex-start;
	align-content: flex-start;
}
.footer-menu ul li i,
ul.contact li i {
	width: 30px;
	line-height: 1.6;
}



.footer.campernet-footer {
	background-color: var(--color-black);
	display: flex;
	justify-content: space-between;
	width: 100%;
	padding: 60px 20px;
	height: auto;
	flex-wrap: wrap;
}
.footer.campernet-footer > * {
	width: 23%;
}

.join p.bottom-links {
	display: flex;
}
.join p.bottom-links a:first-of-type {
	margin-right: 12px;	
}

@media only screen and (max-width: 600px) {
	.footer.campernet-footer {
		display: block;
	}
	.footer.campernet-footer > * {
		width: 100%;
		padding-bottom: 30px;
	}
}

/*  After footer
   ----------------------------------- */
.footer.after-footer {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	background-color: #323538;
	padding: 14px 20px;
}
.footer.after-footer nav ul {
	display: flex;
	justify-content: flex-end;
	align-content: center;
	align-items: center;
}
.footer.after-footer nav ul li {
	padding-left: 20px;
}
@media only screen and (max-width: 600px) {
	.footer.after-footer {
		display: block;
	}
	.footer.after-footer > * {
		width: 100%;
		padding-bottom: 10px;
	}
	.footer.after-footer nav ul {
		justify-content: flex-start;
	}
	.footer.after-footer nav ul li {
		padding-left: 0;
		padding-right: 20px;
	}
}



#header-nav {
    padding-top: 10px;
}
.header.sticky #header-nav {
    padding-top: 0;
}
.header.sticky #header-nav {
    padding-top: 0;
} 
.meta-menu-box {	
	position: fixed;
	z-index: 19;
	top: 0;
	right: 20px;
	border-radius: 0 0 5px 5px;
	background: rgba(0,0,0,0.8);
	max-height: 100px;
	height: auto;
	line-height: 24px;
	font-weight: 430;
	letter-spacing: 0.2px;
	font-size: 11px;
	text-transform: uppercase;
	transition: background 250ms ease-in-out, max-height 500ms ease-in-out;
}
.meta-menu-box:hover {
	background: rgba(0,0,0,1);
}
.meta-menu-box a {
	display: block;
	padding: 0px 12px;
	text-decoration: none;
	color: rgba(255,255,255,0.6);
	transition: all 250ms ease-in-out;
}
.meta-menu-box a:hover {
	text-decoration: none;
	color: rgba(255,255,255,1);
}
.meta-menu-box i {
	font-size: 11px;
	margin-right: 8px;
}
.header.sticky .meta-menu-box {
	max-height: 0px;
	overflow: hidden;
} 
@media only screen and (max-width: 1050px) {}

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

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

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




/*  Settings page
   ----------------------------------- */
.section-settings .setting-buttons {
	margin-bottom:40px;
}


.section-settings #company-settings-form,
.section-settings #services-form,
.section-settings #photos-form,
.section-settings #place-form {
	display:none;
}


.section-places ul {
	list-style: none;
}

li.settings__location--list-item {
	display:flex;
	width: 100%;
	justify-content: flex-start;
}

li.settings__location--list-item .panel-left {
	width: 30%;
	margin-right:15px;
}

/*
li.settings__location--list-item .panel-right .locatie-status {
	display: inline-block;
}
*/

li.settings__location--list-item .panel-right .locatie-status,
li.settings__location--list-item .panel-right a {
	width: 125px;
	padding-right: 15px;
	display: inline-block;
}

li.settings__location--list-item .panel-right .icon {
	padding-left:7px;
}

li.settings__location--list-item .panel-right .locatie-status {
	color: var(--color-grey);
}

.locatie-status .fa-globe-europe {
	color: green;
}

.locatie-status .fa-pause-circle {
	color: var(--color-grey);
}
.locatie-status .fa-trash {
	color: red;
}





/*  Revised settings page
   ----------------------------------- */
.settings-location-list {
	border-collapse: collapse;
	width: 100%;
	font-size: 15px;
}
.settings-location-list th,
.settings-location-list td {
	padding: 10px 15px;
}
.settings-location-list th:last-child,
.settings-location-list td:last-child {
	text-align: right;
}
.settings-location-list tr:nth-child(odd) td {
	background: #f6f6f6;
}
.settings-location-list .item-status a i {
	margin-right: 5px;
	font-size: 13px;
}




/*  Booking overview calendar
   ----------------------------------- */
.month-select-buttons {
	margin: 30px auto;
}
.current_month {
	font-weight: 600;
}
.calender-row {
    display: flex;
}
.calendar .days .day_num.location-name {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    padding: 15px 25px;
    font-size: 150%;
    font-weight: 600;
    font-style: var(--font-heading);
    background: var(--color-accent-darker);
/*    border-radius: 4px 0 0 4px;*/
    border-radius: 0;
    color: var(--color-white);
	min-width: 100px;
	max-width: 100px;
	border-bottom: 1px solid var(--color-white);
	position: sticky;
	left: 0;
	z-index:10;
	transition: all 250ms ease-in-out;
}
.calendar .days .day_num.location-name:hover {
    background: #000;
    color: var(--color-white);
	
}








.calendar {
    display: flex;
    flex-flow: column;
	overflow: scroll;
}
.resources-overview .calendar .header {
	display: none; /* temporary fix to hide the various calendar headers */
}
.calendar .header .month-year {
    font-size: 20px;
    font-weight: bold;
    color: #636e73;
    padding: 20px 0;
}
.calendar .days {
    display: flex;
    /*    flex-flow: wrap;*/
/*    overflow: scroll;*/
}
.calendar .days .day_name {
/*    width: calc(100% / 7);*/
    border-right: 1px solid #2c7aca;
    padding: 20px;
    text-transform: uppercase;
    font-size: 12px;
    font-weight: bold;
    color: #818589;
    color: #fff;
    background-color: #448cd6;
}
.calendar .days .day_name:nth-child(7) {
    border: none;
}
.calendar .days .day_num {
    display: flex;
    flex-flow: column;
    position: relative;
/*    width: calc(100% / 7);*/
    border-right: 1px solid #e6e9ea;
    border-bottom: 1px solid #e6e9ea;
/*    padding: 3px 3px;*/
    font-weight: bold;
    color: #7c878d;
    cursor: pointer;
    min-height: 60px;
    min-width: 120px;
}
/*
.calendar .days .day_num span {
    display: inline-flex;
    font-size: 14px;
	max-height: 36px;
}
*/

.calendar .days .day_num .day-number-span {
	padding: 0 0 0 8px;
}


.calendar .days .day_num .event {
    margin-top: 10px;
    font-weight: 500;
    font-size: 14px;
    padding: 3px 5px;
    border-radius: 0;
    background-color: var(--color-primary);
    color: #fff;
    word-wrap: break-word;
    position: relative;
}
.calendar .days .day_num .event.green {
    background-color: #51ce57;
}
.calendar .days .day_num .event.blue {
    background-color: #518fce;
}
.calendar .days .day_num .event.red {
    background-color: #ce5151;
}

.calendar .days .day_num .event.active-event {
	background-color: var(--color-accent);
}


.calendar .days .day_num:nth-child(7n+1) {
    border-left: 1px solid #e6e9ea;
}
.calendar .days .day_num:hover {
    background-color: #fdfdfd;
}
.calendar .days .day_num.ignore {
    background-color: #fdfdfd;
    color: #ced2d4;
    cursor: inherit;
}
.calendar .days .day_num.selected {
    background-color: #f1f2f3;
    cursor: inherit;
}
.calendar .days .event > a {
	color: var(--color-white);
	font-weight: 450;
}
a#info-box {
    text-decoration: none;
    color: var(--color-white);
}
.info-box {
    /*	display:none;*/
    position: absolute;
    bottom: -50px;
    left: 30%;
    width: auto;
    height: auto;
    z-index: 100;
    padding: 30px 20px;
    background: var(--color-grey-background);
    box-shadow: 0 0 5px rgba(0,0,0,0.2);
}
.button-filter,
.button-nav {
	background-color: var(--color-grey-medium);
	border: 1px solid var(--color-grey-medium);
	color: #000;
	background-color: transparent;
}
.button-filter {
	background-color: var(--color-grey-medium);
	background-color: rgba(0,0,0,0.07);
}
.button-filter:hover,
.button-nav:hover {
	background-color: #000;
	border-color: #000;
	color: var(--color-white);
}
.booking-detail-modal-header {
	display: flex;
	justify-content: space-between;
	padding-bottom: 20px;
}
.booking-detail-meta {
	display: flex;
	align-content: center;
	justify-content: flex-start;
	gap: 30px;
}

.booking-detail-meta {}

.booking-detail-meta p.check-in-out {
	margin-bottom: 0;
	color: #c2c2c2;
	font-size: 14px;
}
.booking-detail-meta p.check-in-out i {
	margin-right: 8px;
	color: #222;
	opacity: 0.7;
}
/* resetting colors for .modals inside .calendar */
.calendar .modal-content {
	color: var(--color-black);
	font-weight: 400;
}
.booking-detail-modal-panel {
	display: grid;
/*	grid-template-columns: 1fr 1fr;*/
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	grid-column-gap: 40px;
	align-items: start;
}
.booking-details.grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-column-gap: 10px;
	align-items: start;
}
.booking-details .booking-details-label,
.booking-details .booking-details-value {
    border-bottom: none;
    padding: 8px 8px 8px 0;
}
.booking-details .booking-details-label,
.table-extras th {
	text-transform: uppercase;
	font-size: 11px;
	font-weight: 500;
	color: #c2c2c2;
}
.booking-details .booking-details-label.label-faux {
	padding-bottom: 0;
}
.booking-details-value.date {
	font-weight: 500;
	padding-top: 0;
}
.license-plate {
	position: relative;
	display: inline-block;
	background: gold;
	padding: 2px 16px 2px 26px;
	border-radius: 5px;
	text-transform: uppercase;
	font-size: 14px;
	font-weight: 630;
	letter-spacing: 0.4px;
}
.license-plate::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	display: block;
	background: #003EF2;
	width: 12px;
	height: 100%;
	border-radius: 5px 0 0 5px;
}
.booking-details.personal-details .name {
	margin-bottom: 1rem;
}
.booking-details.personal-details .name .name-text {
	display: block;
	font-weight: 600;
}
.booking-details .payment-ok {
	color: #00c900;
}
.booking-details .payment-open {
	color: red;
}
.booking-details .payment-repay {
	color: blue;
}


.table-extras {
	width: 100%;
	border-collapse: collapse;
}
.table-extras td {
	font-size: 15px;
	padding-top: 8px;
	padding-bottom: 8px;
}
.table-extras td.has-amount {
	text-align: right;
}
.booking-details .currency,
.table-extras  .currency {
	font-weight: 400;
	font-size: 90%;
	color: #c2c2c2;
}
.table-booking-notes {
	width: 100%;
	border-collapse: collapse;
}
.table-booking-notes tr:first-of-type td {
	border-top: 1px solid #E1E1E1;
}
.table-booking-notes td {
	vertical-align: top;
	font-size: 15px;
}
.table-booking-notes td:first-child {
	font-size: 14px;
	font-weight: 500;
	color: #c2c2c2;
}

.no-extras,
.no-notes {
	color: #c2c2c2;
	padding-top: 21px;
}
.booking-details-notes {
	padding-top: 18px;
}
.booking-details-notes .no-notes {
	padding-top: 0;
}

.modal-inner.booking-details-inner {
	max-width: 500px;
}

@media only screen and (min-width : 890px) {
	.modal-inner.booking-details-inner {
		max-width: 600px;
	}
}
@media only screen and (min-width : 1200px) {
	.modal-inner.booking-details-inner {
		max-width: 900px;
	}
}

/* Booking overview
   ----------------------------------- */
#booking-overview {
	width: 100%;
}

.booking-details-inner .right {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	justify-content: flex-start;
}

.booking-details-inner .status {
	padding: 6px 18px;
	border-radius: 4px;
	color: var(--color-white);
	background: #f0f0f0;
	max-height: 36px;
	
    display: inline-flex;
    font-size: 14px;
	max-height: 36px;
}
.booking-details-inner .status-cancelled {
/*	background-color: red;*/
	color: red;
}

.booking-details-inner .status-booked {
/*	background-color: var(--color-primary);*/
	color: var(--color-primary);
}

.booking-details-inner .status-pending {
/*	background-color: var(--color-secondary);*/
	color: var(--color-secondary);
}

.booking-details-inner .status-completed {
/*	background-color: var(--color-grey);*/
	color: var(--color-grey);
}

#booking-overview .payment-ok {
	color: #00c900;
}
#booking-overview .payment-debet {
	color: red;
}
#booking-overview .payment-credit {
	color: blue;
}
.filters-options {
	background: #f6f6f6;
	padding: 1rem 2rem;
	text-align: center;
	border-radius: 6px;
	font-size: 15px;
	margin-bottom: 20px;
}
.filters-options input,
.filters-options input[type="date"],
.filters-options select {
	font-size: 15px;
	background: transparent;
	margin-left: 8px;
	margin-right: 8px;
	margin-bottom: 0;
}
.filters-options button {
	margin-left: 8px;
}

.booking-status.booked { color: var(--color-primary); }
.booking-status.pending { color: var(--color-secondary); }
.booking-status.cancelled { color: red; }




/* Booking page form
   ----------------------------------- */
.booking-result-header h2 {
	font-size: 17px;
	margin-bottom: 0.5em;
	color: rgba(0,0,0,0.4);
}
ul.booking-result-meta {
	padding-left: 0;
	list-style: none;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 40px;
}
ul.booking-result-meta li {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 8px;
}
.booking-result-meta .price-per-night {
	width: 58px;
	height: 58px;
	display: flex;
	justify-content: center;
	background: var(--color-accent);
	line-height: 58px;
	color: #fff;
	border-radius: 50%;
}
.booking-result-meta .price-per-night .price-currency {
	font-weight: 300;
	font-size: 14px;
	opacity: 0.7;
	padding-right: 3px;
}
.booking-result-meta .price-per-night .price-amount {
	font-weight: 600;
	font-size: 23px;
}

section.section-booking-form {
	padding-top: 80px;
}

.frm-flex {
	display: flex;
	justify-content: space-between;
	align-content: flex-start;
	align-items: flex-start;
	flex-wrap: wrap;
}
.frm-flex .frm-flex-col {
	margin-bottom: 1rem;
	margin-bottom: 0;
	padding-right: 10px;
	position: relative;
}
.frm-flex .col-12 {
	width: 100%;
}
.frm-flex .col-4 {
	width: 33.33%;
}
.frm-flex .col-6 {
	width: 50%;
}
.frm-flex .col-8 {
	width: 66.67%;
}
.frm-flex label,
.frm-flex input {
	width: 100%;
}
.frm-flex input[type="number"] {
	width: 100px;
}
.frm-flex label,
.frm-flex .label-faux-for-input-faux {
	font-size: 12px;
	text-transform: uppercase;
	font-weight: 500;
	letter-spacing: 0.3px;
	color: #333;
	margin-bottom: .5rem;
}
.frm-flex .label-info-tekst {
	padding-bottom: 20px;
	display: block;
	margin-top: -10px;
	font-size: 14px;
	color: rgba(0,0,0,0.5);
}
.frm-flex .label-faux-for-input-faux {
	display: block;
	text-align: right;
}
.frm-flex.booking-option .label-faux-for-input-faux {
	visibility: hidden;
}
.frm-flex .input-faux {
	display: block;
	line-height: 38px;
	text-align: right;
}
.frm-flex .price-highlight {
	font-weight: 700;
}
.frm-flex .iti {
	width: 100%;
}
.iti ul.iti__country-list {
	list-style: none;
	text-align: left;
	white-space: nowrap;
}
.frm-flex.total-booking-sum {
	margin-top: 10px;
	padding-top: 20px;
	padding-bottom: 40px;
	border-top: 1px solid #000;
	font-weight: 600;
}
.frm-flex.total-booking-sum .input-faux,
.frm-flex.total-booking-sum .input-faux > * {
	position: relative;
}
.frm-flex.total-booking-sum .input-faux:before {
	position: absolute;
	content: "";
	right: -10px;
	top: -10px;
	background: #f3f3f3;
	width: 100%;
	height: 56px;
}
.label-wide,
.label-wide .input-wide {
	width: 100%;
}

.option-input.input-switch {
	max-width: 0px;
	padding-left: 0px;
	padding-right: 0px;
	border-color: transparent;
}
.input-switch-faux {
	display: inline-block;
	cursor: pointer;
	width: 52px;
	height: 26px;
	background-color: #fff;
	border: 1px solid #D1D1D1;
	border-radius: 20px;
}
.input-switch-faux .input-switch-faux-switch {
	display: inline-block;
	width: 24px;
	height: 24px;
	background: grey;
	border: 1px solid white;
	border-radius: 20px;
	transition: all 250ms ease-in-out;
}
.option-input.input-switch.on + .input-switch-faux {
	background: #ECECEC;
}
.option-input.input-switch.on + .input-switch-faux .input-switch-faux-switch {
	margin-left: 24px;
	background: var(--color-primary);
	border: 1px solid #fff;
}


/* Z Calendar styles
   ----------------------------------- */
#z-calendar {
	border-collapse: collapse;
	width: 100%;
}
#z-calendar th,
#z-calendar td {
	text-align: center;
	padding: 0;
	width: calc( 100% / 7 );
}
#z-calendar td {
	padding: 5px 0;
	aspect-ratio: 1 / 1;
}
#z-calendar th {
  text-transform: uppercase;
  font-size: 13px;
  font-weight: 630;
  letter-spacing: 0.1rem;
}
#z-calendar .date-picked {
	background: var(--color-primary);
	color: #fff;
}
#z-calendar .bg-info {
	background: #dede9d;
}
#z-calendar .bg-info.date-picked {
	background: #3b6a2a;
}
#z-calendar .date-cell {
	cursor: pointer;
}
#z-calendar-box {
	padding-top: 50px;
}
#z-calendar-box .button-small {
	transition: all 250ms ease-in-out;
	height: 40px;
	padding: 0;
	font-size: 16px;
	line-height: 40px;
	width: 40px;
	border-radius: 24px;
	background-color: #efefef;
	border: #efefef;
	color: var(--color-primary);
}
#z-calendar-box .button-small:hover {
	background-color: var(--color-primary);
	border: var(--color-primary);
	color: var(--color-white);
}
.z-calendar-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	align-content: center;
}


#admin-info {
	position: absolute;
	top: 0;
	left: 50px;
	padding: 10px 40px 10px 20px;
	background: #DE0003;
	color: #fff;
	font-size: 14px;
	border-radius: 0 0 5px 5px;
}
#admin-info p {
	margin-bottom: 0;
}
#admin-info .btn-close-admin-info {
	position: absolute;
	bottom: 10px;
	right: 8px;
	width: 20px;
	height: 20px;
	background: rgba(255,255,255,0.3);
	border-radius: 50%;
	text-align: center;
	line-height: 20px;
	color: #fff;
	cursor: pointer;
	transition: all 250ms ease-in-out;
}
#admin-info .btn-close-admin-info:hover {
	background: rgba(255,255,255,1);
	color: #DE0003;
}


/* ACF front-end */
.acf-input th[data-name="booking_extra_total_amount"],
.acf-input td[data-name="booking_extra_total_amount"] {
	display: none;
}

.acf-form-fields .acf-field-6368ff076f783 {
	display: none;
}



/* Leave a review page */

.leave-a-review .acf-field--post-title {
/*	display: none;*/
}








/* tmp admin color test */
.calendar .days .day_num.location-name {
	background: #D0C6C6;
	background: #F1F2F3;
	color: rgb(124, 135, 141);
}

.calendar .days .day_num .event.active-event {
	background-color: #02BCE6;
}
.calendar .days .event > a {
  width: 100%;
  display: block;
}

.calendar .days .day_num .event.active-event:hover {
	background-color: #097F99;
}



/* Terms and Conditions page
   ----------------------------------- */

.download-terms-box {
	margin-top: 40px;
	display: flex;
	flex-wrap: wrap;
}
.download-terms-box a {
	margin-right: 16px;
}

.download-terms-box a i{
	margin-right: 6px;
}



/* Some Admin styles
   ----------------------------------- */
table.subscriptions-overview {
	width: 100%;
}
form.create-site-by-admin {
	margin-bottom: 0;
}




/* Accordion
   ----------------------------------- */
ul.accordion {
	margin-top: 2em;
	margin-bottom: 4em;
	margin-left: 0;
}
.accordion,
.accordion > li,
.main .accordion > li {
    list-style: none;
    padding-left: 0;
    position: relative;
}
.accordion h4.title {
	font-family: var(--font-text);
	font-size: 18px;
	cursor: pointer;
	border-bottom: 1px solid var(--color-grey-medium);
	padding-bottom: 8px;
	padding-left: 20px;
	padding-right: 20px;
	position: relative;
	display: flex;
	justify-content: space-between;
	align-content: center;
	align-items: center;
}
.accordion h4 .title-inner {
    max-width: 82%;
}
.accordion h4:hover .title-inner,
.accordion h4:hover .icon {
    color:var(--color-primary);   
}
.accordion .collapse {
	background: var(--color-grey-light);
	padding: 10px 20px 20px 20px;
	margin-bottom: 20px;
}
.accordion .collapse p:last-child,
.accordion .collapse ul:last-child {
    margin-bottom: 0;
}

.accordion .collapse ul {
	margin: 0 0 1.5rem 1em;
	font-size: 100%;
	list-style: outside square;
	padding-left: 0;
}
.accordion .collapse p + ul {
	margin: -1em 0 1.5rem 1em;
}
.accordion .collapse ul > li {
	margin-bottom: 0;
	padding-left: 10px;
}


/* FAQ accordion
   ----------------------------------- */
ul.faq.accordion {
	margin-top: 2em;
	margin-bottom: 4em;
}





/* Features accordion
   ----------------------------------- */
ul.features.accordion {
	margin-top: 0;
	margin-bottom: 2em;
}
.features.accordion h4 {
	font-size: 16px;
	cursor: pointer;
	padding-bottom: 6px;
	padding-left: 4px;
	padding-right: 4px;
	margin-bottom: 0;
}
.features.accordion .open h4 {
	border-bottom: 1px solid var(--color-grey-light);
}
.features.accordion h4 .icon .fa::before {
	font-size: 14px;
}
.features.accordion h4 .icon {
	color: #cacaca;
}
.features.accordion h4:hover .icon {
    color:var(--color-primary);   
}



/* Feature list simple
   ----------------------------------- */
ul.feature-list {
	list-style: none;
	margin-left: 0;
}
ul.feature-list > li {
	position: relative;
	padding-left: 35px;
}
ul.feature-list > li::before {
	position: absolute;
	left: 0;
	top: 1px;
	font-family: "Font Awesome 6 Pro";
	font-weight: 600;
	content: "\f058";
	content: "\f00c";
	color: var(--color-primary);
	color: #76df29;
}


/* Feature list enhanced
   ----------------------------------- */
ul.feature-list-enhanced {
	list-style: none;
	margin-left: 0;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    grid-gap: 2rem;
}
ul.feature-list-enhanced > li {
	position: relative;
	padding: 90px 20px 20px 20px;
	background: var(--color-grey-light);
	text-align: center;
	border-radius: 8px;
	font-size: 15px;
}
ul.feature-list-enhanced > li > i {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100px;
	color: var(--color-accent);
	text-align: center;
	display: flex;
	flex-direction: column;
	justify-content: center;
	font-size: 34px;
}
ul.feature-list-enhanced > li > i.icon-holder {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
}
.fa-smaller {
	font-size: 60%;
	transform: translate(2px,7px);
}
ul.feature-list-enhanced > li > i.icon-holder > i {
	display: inline-block;
}

ul.feature-list-enhanced > li .has-pop-info-title {
	color: #76df29;
}
ul.feature-list-enhanced > li.has-link:before {
	position: absolute;
	right: 0;
	bottom: 0;
	width: 100%;
	text-align: right;
	font-size: 15px;
	padding: 10px 20px 10px 20px;
	background: transparent;
	color: var(--color-accent);
	text-decoration: none;
	pointer-events: none;	
	content: "\f30b";
	font-weight: 400;
	font-family: "Font Awesome 6 Pro";
}
ul.feature-list-enhanced > li .learn-more {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	text-align: right;
	border-radius: 8px;
	font-size: 15px;
	padding: 10px 20px 10px 20px;
	background: var(--color-accent);
	color: #fff;
	text-decoration: none;
	
	transition: opacity 250ms ease-in-out;
	opacity: 0;
	pointer-events: none;
}
ul.feature-list-enhanced > li:hover .learn-more {
	opacity: 1;
	pointer-events: auto;
}
ul.feature-list-enhanced > li .learn-more i {
	margin-left: 4px;
	transition: all 250ms ease-in-out;
}
ul.feature-list-enhanced > li .learn-more:hover i {
	transform: translateX(5px);
}   