/* ============================
	SITE STYLESHEET
	THE HOLIDAY HOME - GOING FORWARD 2025 AND BEYOND Â©
============================ */


/* ============================
	NAVIGATION
============================ */

/* STRUCTUUR */
.section--nav {
	background-color: rgba(255, 255, 255, 0.95);
	padding-bottom: 0.5rem;
	padding-top: 0.5rem;
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 1000;
}

/* CENTRERING BINNEN CONTAINER-FLUID */
.nav--inner {
	margin: 0 auto;
	width: 100%;
}

/* LOGO */
.nav--brand img {
	height: 50px;
}

/* MENU STRUCTUUR */
.nav--menu {
	align-items: center;
	display: flex;
	gap: 2rem;
}

/* MENU LINKS */
.nav--menu--link {
	color: #000000;
	display: inline-block;
	font-family: 'FinalSixExtraBold', Arial, sans-serif;
	font-size: 1.25rem;
	font-weight: 700;
	letter-spacing: 0;
	padding: 0.25rem 0 !important;
	position: relative;
	text-align: left;
	text-decoration: none;
	transition: var(--transition-default);
}

/* HOVER EFFECT â€“ PRECIES ONDER TEKST */
.nav--menu--link::after {
	background-color: #00C3FF;
	bottom: 0;
	content: '';
	height: 2px;
	left: 0;
	right: 0;
	opacity: 0;
	position: absolute;
	transform: scaleX(0);
	transform-origin: left;
	transition: all 0.3s ease;
}

.nav--menu--link:hover::after {
	opacity: 1;
	transform: scaleX(1);
}

.nav--menu--link:hover {
	color: #00C3FF;
	text-decoration: none;
}


/* TAALDROPDOWN */

.nav--menu--language--wrap {
	position: relative;
}

.nav--menu--language-toggle img {
	height: 24px;
	cursor: pointer;
	transition: transform 0.2s ease, filter 0.2s ease;
}

.nav--menu--language-toggle[aria-expanded="true"] img {
	filter: grayscale(100%);
}


/* DROPDOWN-MENU STIJLING */

.language-dropdown {
	background-color: #ffffff;
	border: 1px solid #EEE;
	border-radius: 0.5rem;
	margin-top: 0.75rem;
	min-width: auto;
	overflow: hidden;
	padding: 0;
	transition: opacity 0.2s ease, transform 0.2s ease;
	width: 100%;
}

.language-dropdown:not(.show) {
	opacity: 0;
	pointer-events: none;
	transform: translateY(-10px);
}

.language-dropdown.show {
	opacity: 1;
	pointer-events: auto;
	transform: translateY(0);
}


/* ITEMS BINNEN DE DROPDOWN */

.language-dropdown .dropdown-item {
	align-items: center;
	display: flex;
	justify-content: center;
	padding: 0.4rem 0;
	transition: background-color 0.2s ease;
	width: 100%;
}

.language-dropdown .dropdown-item:hover,
.language-dropdown .dropdown-item:focus {
	background-color: #EEE;
}

.language-dropdown .dropdown-item img {
	display: block;
	height: 24px;
	object-fit: contain;
	width: 24px;
}




/* ============================
   HERO
============================ */

.section--hero--portal {
	padding-top: 7rem;
	padding-bottom: 3rem;
}

.hero--portal--outer {
	background-color: #F6F6F6;
	border-radius: 2rem;
	margin: 0 auto;
	padding: 0.5rem;
	max-width: 2400px;
	width: 90%;
}

.hero--portal--inner {
	background-color: #FFFFFF;
	border-radius: 1.5rem;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.06);
	overflow: hidden;
	padding: 0.5rem;
}

.hero--portal--single {
	border-radius: 1rem;
	position: relative;
	width: 100%;
	height: 700px;
	/*height: 100%;
	max-height: 700px;*/
	overflow: hidden;
	/* kopt de afbeelding netjes af */
}

.hero--portal--single.next--page {
	height: auto !important;
}

.hero--portal--single img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.hero--portal--single.next--page .hero--headline {
	margin: 0 auto;
}



/* ============================
   HERO CENTER + HEADLINE
============================ */

.hero--center {
	position: absolute;
	inset: 50% auto auto 50%;
	transform: translate(-50%, -50%);
	text-align: center;
	max-width: 1600px;
	width: 100%;
	padding: 0 1rem;
	z-index: 2;
}

.hero--headline {
	margin: 0 auto 1.25rem auto;
	max-width: 1100px;
	padding: 0 0.5rem;
}

.hero--headline--h2 {
	margin: 0;
	color: #FFFFFF;
	font-family: 'FinalSixBlack', Arial, sans-serif;
	font-size: clamp(1.75rem, 3.2vw, 2.75rem);
	font-weight: 900;
	letter-spacing: 0;
	line-height: 1.15;
	text-shadow: 0 2px 10px rgba(0, 0, 0, 0.35);
}

.hero--headline--sub {
	margin: 0.35rem 0 0 0;
	color: #FFFFFF;
	font-family: 'Eina 01', Arial, sans-serif;
	font-size: clamp(1rem, 1.6vw, 1.25rem);
	font-weight: 400;
	line-height: 1.35;
	opacity: 0.95;
	text-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
}

.hero--portal--accommodations .hero--headline--h2 {
	margin: 0;
	color: #FFFFFF;
	font-family: 'FinalSixBlack', Arial, sans-serif;
	font-size: clamp(1.75rem, 3.2vw, 4rem);
	font-weight: 900;
	letter-spacing: 0;
	line-height: 1.15;
	text-shadow: 0 2px 10px rgba(0, 0, 0, 0.35);
}

.hero--portal--accommodations .hero--headline--sub {
	margin: 0.35rem 0 0 0;
	color: #FFFFFF;
	font-family: 'Eina 01', Arial, sans-serif;
	font-size: clamp(1rem, 1.6vw, 2rem);
	font-weight: 400;
	line-height: 1.35;
	opacity: 0.95;
	text-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
}

/* Zorg dat searchbar binnen hero--center niet opnieuw absoluut centreert */
.hero--center .hero--searchbar {
	position: static;
	inset: auto;
	transform: none;
	width: 100%;
}


/* ============================
   HERO SEARCHBAR
============================ */

.hero--searchbar {
	position: absolute;
	inset: 50% auto auto 50%;
	transform: translate(-50%, -50%);
	max-width: 1600px;
	width: 100%;
	padding: 0 1rem;
	z-index: 2;
}

.hero--searchbar--form {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	gap: 0.25rem;
	width: 100%;
	margin: 0 auto;
	padding: 0.5rem;
	border: 1.5px solid #EAEAEA;
	border-radius: 3rem;
	background-color: rgba(255, 255, 255, 0.95);
	backdrop-filter: blur(6px);
	box-shadow: 0 18px 40px rgba(0, 0, 0, 0.18), 0 2px 0 rgba(255, 255, 255, 0.85) inset;
}

.hero--searchbar--row {
	display: flex;
	flex: 1 1 auto;
	flex-wrap: nowrap;
	align-items: center;
	gap: 0.25rem;
	width: 100%;
}

.hero--searchbar--row.four-cols {
	display: flex;
	align-items: stretch;
	gap: 0.25rem;
}

/* SEGMENTS */
.hero--segment {
	position: relative;
	flex: 1 1 0;
	min-width: 0;
}

.hero--segment--submit {
	flex: 1 1 0;
	max-width: 240px;
}

/* BUTTON */
.hero--segment--btn {
	width: 100%;
	min-height: 54px;
	padding: .5rem .9rem;
	border: 0;
	border-radius: 2rem;
	background: transparent;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: .6rem;
	position: relative;
	transition: all .25s ease;
}

.hero--segment--btn:focus-visible {
	outline: 2px solid rgba(0, 195, 255, .55);
	outline-offset: 2px;
	border-radius: 2rem;
}

/* CONTENT */
.hero--lead {
	color: #111;
	flex: 0 0 auto;
	font-size: 1.05rem;
}

.hero--label {
	color: #000;
	font-family: 'Eina 01', Arial, sans-serif;
	font-size: 1.05rem;
	font-weight: 700;
}

.hero--value {
	color: #666;
	font-family: 'Eina 01', Arial, sans-serif;
	font-size: 1.05rem;
	font-weight: 400;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.hero--caret {
	color: #888;
	margin-left: auto;
	transition: all .25s ease;
}

.hero--segment.is-open .hero--caret,
.hero--segment .hero--segment--btn[aria-expanded="true"] .hero--caret {
	transform: rotate(180deg);
}

/* DIVIDER */
.hero--seg--divider {
	display: none;
	align-self: center;
	width: 1px;
	height: 28px;
	background-color: #E8E8E8;
}

/* CTA BUTTON */
.hero--searchbar--button {
	width: 100%;
	height: 54px;
	padding: 0 2rem;
	border: 0;
	border-radius: 3rem;
	font-family: 'Eina 01', Arial, sans-serif;
	font-weight: 700;
	color: #000;
	cursor: pointer;
	white-space: nowrap;
	background: linear-gradient(90deg, #a3d200 0%, #9bc800 100%);
	transition: transform .2s ease, box-shadow .2s ease, opacity .2s ease;
}

.hero--searchbar--button:hover {
	transform: translateY(-1px);
	box-shadow: 0 8px 24px rgba(113, 209, 124, .35);
}

.hero--searchbar--button:focus {
	outline: 2px solid rgba(255, 43, 119, .35);
	outline-offset: 2px;
}


/* ============================
   PANEL â€“ MODAL CENTER
============================ */

.hero--panel {
	position: fixed;
	/* niet clippen door hero overflow */
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	opacity: 0;
	pointer-events: none;
	z-index: 100;
	max-width: 94vw;

	background: #FFF;
	border: 2px solid #EEE;
	border-radius: 1.25rem;
	box-shadow: 0 14px 36px rgba(0, 0, 0, .18);
	padding: 1rem 1rem 1.25rem 1rem;
}

.hero--segment.is-open .hero--panel {
	opacity: 1;
	pointer-events: auto;
}

/* Breedtes per paneel */
.hero--panel--destination {
	min-width: 600px;
	max-width: 650px;
}

.hero--panel--guests {
	min-width: 420px;
	max-width: 500px;
}

.hero--panel--dates {
	min-width: 700px;
	max-width: 700px;
}

/* Panel labels */
.hero--panel .form-label {
	color: #000;
	font-family: 'Eina 01', Arial, sans-serif;
	font-size: 1.1rem;
	font-weight: 700;
	margin-bottom: 0.35rem;
}

/* Actieknoppen onder elkaar, gecentreerd */
.panel--actions {
	align-items: center;
	display: flex;
	flex-direction: row;
	justify-content: center;
	gap: .5rem;
	padding-top: .75rem;
}

.hero--panel--close,
.hero--panel--apply {
	background: #FFF;
	border: 1.5px solid #EEE;
	border-radius: 2rem;
	font-family: 'Eina 01', Arial, sans-serif;
	font-size: 1rem;
	font-weight: 700;
	padding: 0.5rem 1.25rem;
	transition: all .25s ease;
}

.hero--panel--apply {
	background: #00C3FF;
	border-color: #00C3FF;
}

.hero--panel--apply:hover {
	background: #000;
	border-color: #000;
	color: #FFF;
}

/* Tellers compact en gecentreerd */
.hero--counter {
	align-items: center;
	border: 1.5px solid #E2E2E2;
	border-radius: .75rem;
	display: flex;
	gap: .5rem;
	justify-content: space-between;
	padding: .5rem;
}

.hero--counter .counter--minus,
.hero--counter .counter--plus {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	background: #F7F7F7;
	border: 1.5px solid #E2E2E2;
	border-radius: .5rem;
	transition: all .25s ease;
}

.hero--counter .counter--minus:hover,
.hero--counter .counter--plus:hover {
	background: #000;
	border-color: #000;
	color: #FFF;
}

.hero--counter .counter--value {
	min-width: 1rem;
	text-align: center;
	font-size: .95rem;
	font-weight: 700;
}

/* Labels met extra hint */
.hero--panel label[data-short]::after {
	content: attr(data-short);
	margin-left: .25rem;
	color: #666;
	font-size: .9em;
	font-weight: 400;
	opacity: .7;
}

/* Datepicker styling */
.hero--panel--dates .dp__menu {
	border: 2px solid #EEE !important;
	border-radius: 1rem !important;
	padding: .5rem !important;
}

/* ============================
   OVERLAY STATE
============================ */

.hero--portal--single.is-overlay::after {
	content: "";
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, .6);
	z-index: 10;
}

/* tijdens overlay geen klik op hero-content */
.hero--portal--single.is-overlay .hero--center,
.hero--portal--single.is-overlay .hero--searchbar {
	pointer-events: none;
}

/* panel blijft klikbaar */
.hero--portal--single.is-overlay .hero--panel {
	pointer-events: auto;
}

/* ============================
   RESPONSIVE
============================ */

@media (min-width: 1200px) {
	.hero--seg--divider {
		display: inline-block;
	}
}

@media (max-width: 991.98px) {
	.hero--searchbar--form {
		border-radius: 1.5rem;
		flex-wrap: wrap;
		gap: 0.5rem;
	}

	.hero--segment {
		flex: 1 1 100%;
	}

	.hero--segment--submit {
		max-width: none;
	}

	.hero--seg--divider {
		display: none;
	}

	.hero--panel--destination,
	.hero--panel--guests,
	.hero--panel--dates {
		min-width: min(100%, 94vw);
		max-width: 94vw;
	}
}

@media screen and (min-width: 380px) and (max-width: 991px) {
	.hero--portal--single {
		height: 250px;
	}

	.hero--portal--single img {
		height: 250px;
	}

	.hero--headline {
		margin: 0;
	}

	.section--service {
		padding-bottom: 2.5rem !important;
	}

}

@media screen and (min-width: 992px) and (max-width: 1199px) {
	.hero--portal--single {
		height: 300px;
	}
}

@media screen and (min-width: 1200px) and (max-width: 1399px) {
	.hero--portal--single {
		height: 400px;
	}
}

@media screen and (min-width: 1400px) and (max-width: 1599px) {
	.hero--portal--single {
		height: 500px;
	}
}

@media screen and (min-width: 1600px) and (max-width: 1799px) {
	.hero--portal--single {
		height: 600px;
	}
}

@media screen and (min-width: 1800px) and (max-width: 1999px) {
	.hero--portal--single {
		height: 650px;
	}
}

@media screen and (min-width: 2000px) and (max-width: 2399px) {
	.hero--portal--single {
		height: 675px;
	}
}



/* ============================
   UTILITY
============================ */

.sr-only {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(1px, 1px, 1px, 1px) !important;
	border: 0 !important;
}



/* ============================
   HERO SEARCH SECTION BELOW HERO
============================ */

.section--hero--portal--search {
	display: none;
	padding-bottom: 3rem;
	padding-top: 0;

	z-index: 1;
	position: relative;
}

.hero--searchwrap {
	margin: 0 auto;
	max-width: 2400px;
	width: 90%;
}

.section--hero--portal--search .hero--searchbar {
	inset: auto;
	padding: 0;
	position: static;
	transform: none;
	width: 100%;
}

/* Rust tot en met 1399: geselecteerde waarden verbergen */
@media (max-width: 1399.98px) {

	.section--hero--portal--search .hero--segment--btn .hero--value {
		display: none;
	}
}

/* Vanaf 1400: geselecteerde waarden tonen */
@media (min-width: 1400px) {

	.section--hero--portal--search .hero--segment--btn .hero--value {
		display: inline;
	}
}

/* Van mobiel t/m 1599: hero searchbar uit, onder hero aan */
@media (max-width: 1599.98px) {

	.section--hero--portal .hero--searchbar--hero {
		display: none;
	}

	.section--hero--portal--search {
		display: block;
		margin-top: 1.25rem;
	}
}

/* Vanaf 1600: hero searchbar aan, onder hero uit */
@media (min-width: 1600px) {

	.section--hero--portal .hero--searchbar--hero {
		display: block;
	}

	.section--hero--portal--search {
		display: none;
	}
}


/* ============================
   PANEL STACKING FIX
============================ */

.hero--backdrop {
	z-index: 9998 !important;
}

.hero--panel {
	z-index: 9999 !important;
}



/* ============================
   HERO PANELS â€“ RESPONSIVE STACKING + PANEL POSITIONING
============================ */

/* 0 â€“ 767.98: alles onder elkaar + panel onder button */
@media (max-width: 767.98px) {

	.hero--searchbar--form {
		border-radius: 1.5rem;
		flex-wrap: wrap;
		gap: 0.5rem;
	}

	.hero--searchbar--row.four-cols {
		flex-wrap: wrap;
	}

	.hero--segment {
		flex: 1 1 100%;
	}

	.hero--segment--submit {
		max-width: none;
	}

	.hero--seg--divider {
		display: none;
	}

	/* panel onder de button (niet gecentreerd) */
	.hero--panel {
		left: auto;
		max-width: none;
		position: absolute;
		right: auto;
		top: calc(100% + .6rem);
		transform: none;
		width: 100%;
	}

	.hero--panel--destination,
	.hero--panel--guests,
	.hero--panel--dates {
		max-width: none;
		min-width: 0;
	}

	.hero--segment.is-open {
		z-index: 50;
	}
}


/* 768 â€“ 991.98: 3 segments naast elkaar + zoeken onderaan, panel modal center */
@media (min-width: 768px) and (max-width: 991.98px) {

	.hero--searchbar--form {
		border-radius: 2rem;
		flex-wrap: wrap;
		gap: 0.5rem;
	}

	.hero--searchbar--row.four-cols {
		flex-wrap: wrap;
	}

	/* 3 naast elkaar */
	.hero--segment {
		flex: 1 1 calc(33.333% - .25rem);
	}

	/* Zoeken onderaan full width */
	.hero--segment--submit {
		flex: 1 1 100%;
		max-width: none;
	}

	.hero--seg--divider {
		display: none;
	}

	/* panel terug naar modal center */
	.hero--panel {
		left: 50%;
		max-width: 94vw;
		position: fixed;
		top: 50%;
		transform: translate(-50%, -50%);
		width: auto;
	}

	.hero--panel--destination,
	.hero--panel--guests,
	.hero--panel--dates {
		min-width: min(100%, 94vw);
		max-width: 94vw;
	}
}



/* ============================
   SECTION SEARCH â€“ RESPONSIVE STACKING (ACCOMMODATIONS)
============================ */

/* Rust tot en met 1399.98: geselecteerde waarden verbergen */
@media (max-width: 1399.98px) {

	.section--search .hero--segment--btn .hero--value {
		display: none;
	}
}

/* Vanaf 1400: geselecteerde waarden tonen */
@media (min-width: 1400px) {

	.section--search .hero--segment--btn .hero--value {
		display: inline;
	}
}

/* 0 â€“ 767.98: alles onder elkaar, panel onder button */
@media (max-width: 767.98px) {

	.section--search .hero--searchbar--form {
		border-radius: 1.5rem;
		flex-wrap: wrap;
		gap: 0.5rem;
	}

	.section--search .hero--searchbar--row.four-cols {
		flex-wrap: wrap;
	}

	.section--search .hero--segment {
		flex: 1 1 100%;
	}

	.section--search .hero--segment--submit {
		max-width: none;
	}

	.section--search .hero--seg--divider {
		display: none;
	}

	.section--search .hero--panel {
		left: auto;
		max-width: none;
		position: absolute;
		right: auto;
		top: calc(100% + .6rem);
		transform: none;
		width: 100%;
	}

	.section--search .hero--panel--guests,
	.section--search .hero--panel--dates {
		max-width: none;
		min-width: 0;
	}

	.section--search .hero--segment.is-open {
		z-index: 50;
	}
}

/* 768 â€“ 991.98: 2 segments naast elkaar, zoeken eronder, panel modal center */
@media (min-width: 768px) and (max-width: 991.98px) {

	.section--search .hero--searchbar--form {
		border-radius: 2rem;
		flex-wrap: wrap;
		gap: 0.5rem;
	}

	.section--search .hero--searchbar--row.four-cols {
		flex-wrap: wrap;
	}

	/* 2 naast elkaar */
	.section--search .hero--segment {
		flex: 1 1 calc(50% - .25rem);
	}

	/* Zoeken onderaan full width */
	.section--search .hero--segment--submit {
		flex: 1 1 100%;
		max-width: none;
	}

	.section--search .hero--seg--divider {
		display: none;
	}

	/* panel terug naar modal center */
	.section--search .hero--panel {
		left: 50%;
		max-width: 94vw;
		position: fixed;
		top: 50%;
		transform: translate(-50%, -50%);
		width: auto;
	}

	.section--search .hero--panel--guests,
	.section--search .hero--panel--dates {
		max-width: 94vw;
		min-width: min(100%, 94vw);
	}
}




/* ============================
	SERVICE BANNER
============================ */

.section--service {
	padding-top: 1.25rem;
	padding-bottom: 0.5rem;
}

.service--banner {
	background: linear-gradient(180deg, #FFFFFF, #F9FBFB);
	border: 1px solid #A3D200;
	border-radius: 2.5rem;
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.05);
	padding: 1rem 1.5rem;
	transition: all .3s ease;
}

.service--banner:hover {
	border: 1px solid #A3D200;
}

.service--text {
	color: #000000;
	font-family: 'Eina 01', Arial, sans-serif;
	font-size: 1.125rem;
}

.service--btn {
	align-items: center;
	background-color: #FFFFFF;
	border: 1.5px solid #EEEEEE;
	border-radius: 999px;
	color: #000000;
	display: inline-flex;
	font-weight: 700;
	gap: .5rem;
	padding: .6rem 1rem;
	text-decoration: none;
	transition: all .3s ease;
}

.service--btn:hover {
	background-color: #000000;
	color: #FFFFFF;
	border-color: #000000;
	text-decoration: none;
}

.u-counter {
	align-items: center;
	display: inline-flex;
	font-size: .95rem;
	gap: .35rem;
	opacity: .8;
}



/* ============================
	INTRO
============================ */

/* STRUCTUUR & AFSTANDEN */
.section--intro {
	padding-bottom: 4rem;
	padding-top: 6rem;
}

.section--intro.next--page {
	padding-bottom: 4rem;
	padding-top: 10rem;
}

.section--intro.accommodation--page {
	padding-bottom: 4rem;
	padding-top: 5rem;
}


/* TITEL */
.intro--title {
	color: #000000;
	font-family: 'FinalSixBlack', Arial, sans-serif;
	font-size: 2.25rem;
	font-weight: 900;
	line-height: 1.4;
	margin-bottom: 1rem;
}

.section--intro h1.intro--h1 {
	color: #000;
	font-size: 3rem;
	margin: 0;
}

.section--intro h2.intro--h2 {
	color: #00C3FF;
	font-family: 'FinalSixBlack', Arial, sans-serif;
	font-size: 2.25rem;
	font-weight: 900;
	line-height: 1.4;
	margin-bottom: 1rem;
}

.section--intro h2.contactintro--h2 {
	color: #A1CF00;
	font-family: 'FinalSixBlack', Arial, sans-serif;
	font-size: 2.25rem;
	font-weight: 900;
	line-height: 1.4;
	margin-bottom: 1rem;
}

.section--intro p.intro--text {
	color: #000000;
	font-family: 'Eina 01', Arial, sans-serif;
	font-size: 1.25rem;
	font-weight: 400;
	line-height: var(--line-height);
	margin-top: 1rem;
	margin-bottom: 0;
}

/* LABELS */
.intro--labels {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.intro--label {
	background-color: #F6F6F6;
	border-radius: 2rem;
	color: #000000;
	display: flex;
	font-family: 'Eina 01', Arial, sans-serif;
	font-size: 1rem;
	font-weight: 400;
	height: 44px;
	justify-content: center;
	padding: 0 1.25rem;
	text-align: center;
}

.intro--label span {
	align-self: center;
	display: block;
	line-height: 1;
	margin-bottom: 0.2rem;
}


/* INTRO â€“ grotere paragraaf voor NL */
.section--intro .intro--text--lg {
	font-size: 1.125rem;
	line-height: 1.8;
}

@media (min-width: 1200px) {
	.section--intro .intro--text--lg {
		font-size: 1.2rem;
	}
}




/* ============================
	ACCOMMODATIONS
============================ */
.section--accommodations {
	padding-bottom: 4rem;
	padding-top: 4rem;
}

.accommodations--title {
	color: #000000;
	font-family: 'FinalSixBlack', Arial, sans-serif;
	font-size: 2.5rem;
	font-weight: 900;
	margin-bottom: 0;
	text-align: center;
}

/* link wrapper */
.accommodation--tile--outer {
	background-color: #F6F6F6;
	border: 1px solid #EEEEEE;
	border-radius: 2rem;
	display: block;
	outline: none;
	padding: 0.5rem;
	text-decoration: none;
	transition: all 0.3s ease;
}

.accommodation--tile--outer:hover,
.accommodation--tile--outer:focus-visible {
	background-color: #F9FFFB;
	box-shadow: 0 10px 24px rgba(0, 0, 0, 0.06);
	text-decoration: none;
}

.accommodation--tile--outer:focus-visible {
	outline: 2px solid rgba(0, 195, 255, 0.35);
	outline-offset: 4px;
}

/* inner card */
.accommodation--tile--inner {
	background: linear-gradient(180deg, #FFFFFF 95%, #FAFBFB 100%);
	border: 1px solid #EDEDED;
	border-radius: 1.5rem;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.06);
	overflow: hidden;
	position: relative;
	transition: all 0.3s ease;
}

.accommodation--tile--outer:hover .accommodation--tile--inner {
	transform: translateY(-2px);
	box-shadow: 0 14px 28px rgba(0, 0, 0, 0.08);
}

.accommodation--tile--outer:hover .accommodation--tile--inner::after {
	opacity: 1;
	transform: translateY(-1px);
}

/* image */
.accommodation--image {
	overflow: hidden;
	position: relative;
}

.accommodation--image img {
	border-top-left-radius: 1.5rem;
	border-top-right-radius: 1.5rem;
	display: block;
	height: 425px;
	object-fit: cover;
	transform: scale(1);
	transition: transform 0.35s ease;
	width: 100%;
}

.accommodation--tile--outer:hover .accommodation--image img {
	transform: scale(1.035);
}

/* content */
.accommodation--content {
	padding-top: 1.25rem;
	text-decoration: none;
}

.accommodation--name {
	color: #000000;
	font-family: 'FinalSixBlack', Arial, sans-serif;
	font-size: 1.75rem;
	letter-spacing: 0;
	margin-bottom: 1rem;
	margin-top: .75rem;
	text-decoration: none;
}

/* price pill + location under */
.accommodation--pricepill {
	align-items: center;
	background-color: #FFFFFF;
	border: 1px solid #EEEEEE;
	border-radius: 999px;
	box-shadow: 0 6px 16px rgba(0, 0, 0, 0.06);
	display: inline-flex;
	font-family: 'Eina 01', Arial, sans-serif;
	font-size: 1.05rem;
	font-weight: 700;
	gap: .35rem;
	justify-content: center;
	margin: 0 auto;
	padding: .4rem .9rem;
}

.accommodation--pricepill strong {
	font-weight: 800;
}

.accommodation--location {
	color: #666666;
	font-family: 'Eina 01', Arial, sans-serif;
	font-size: 1.025rem;
}

/* facts chips */
.accommodation--facts {
	display: flex;
	justify-content: center;
	gap: .5rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.accommodation--fact {
	background-color: #F6F6F6;
	border: 1px solid #EEEEEE;
	border-radius: 999px;
	color: #111111;
	font-family: 'Eina 01', Arial, sans-serif;
	font-size: .925rem;
	padding: .3rem .75rem .4rem .75rem;
}

/* amenities icon row */
.amenities--list {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: .5rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.amenities--item {
	align-items: center;
	background-color: #FFFFFF;
	border: 1px solid #EDEDED;
	border-radius: .75rem;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
	display: inline-flex;
	height: 44px;
	justify-content: center;
	transition: all 0.3s ease;
	width: 44px;
}

.amenities--item i {
	color: #000000;
	font-size: 1.05rem;
	line-height: 1;
	transition: transform 0.3s ease, opacity 0.3s ease;
}

.accommodation--tile--outer:hover .amenities--item {
	transform: translateY(-1px);
	box-shadow: 0 6px 14px rgba(0, 0, 0, 0.06);
}

.amenities--item:hover i {
	transform: scale(1.05);
	opacity: .9;
}

/* responsive nuance */
@media (max-width: 991.98px) {
	.accommodation--image img {
		height: 360px;
	}
}



/* ============================
	PARAGRAAF ALINEA
============================ */

.section--paragraph h2.paragraph--h2 {
	color: #000000;
	font-family: 'FinalSixBlack', Arial, sans-serif;
	font-size: 2.25rem;
	font-weight: 900;
	line-height: var(--line-height-heading);
	margin-bottom: 1rem;
}

.section--paragraph p.paragraph--text {
	color: #000000;
	font-family: 'Eina 01', Arial, sans-serif;
	font-size: 1.25rem;
	font-weight: 400;
	line-height: var(--line-height);
	margin-top: 1rem;
	margin-bottom: 0;
}



/* ============================
   PARAGRAPHS ARTICLES
============================ */

.section--paragraph--article {
	padding: 5rem 0;
}

.section--paragraph--article .img--box {
	border-radius: 1rem;
	box-shadow: 0 0px 20px rgba(0, 0, 0, 0.1);
	height: 400px;
	overflow: hidden;
}

.section--paragraph--article .img--box img {
	height: 100%;
	object-fit: cover;
	object-position: center;
	width: 100%;
}

.section--paragraph--article h2 {
	color: #000000;
	font-family: 'FinalSixBlack', Arial, sans-serif;
	font-size: 1.75rem;
	letter-spacing: 0;
	margin-bottom: 1rem;
	margin-top: 0.75rem;
	text-decoration: none;
}

.section--paragraph--article p {
	color: #222222;
	font-family: 'Eina 01', Arial, sans-serif;
	font-size: 1.2rem;
	line-height: 1.55;
	margin: 0;
}



/* ============================
	MORE INFORMATION SECTION
============================ */
.section--info {
	padding-bottom: 5rem;
	padding-top: 4rem;
}

/* Titelbalk */
.info--title {
	align-items: center;
	border-radius: 2rem;
	display: flex;
	height: 68px;
	justify-content: center;
	padding: 0 1.5rem;
	text-align: center;
	transition: all .3s ease;
}

.info--title span {
	align-self: center;
	color: #000000;
	display: block;
	font-family: 'FinalSixBlack', Arial, sans-serif;
	font-size: 2.75rem;
	font-weight: 900;
	line-height: 1;
	margin-bottom: .15rem;
}

/* Bubbles */
.info--bubble {
	background: linear-gradient(180deg, #FFFFFF 90%, #FAFBFB 100%);
	border: 1px solid #EDEDED;
	border-radius: 1.25rem;
	box-shadow: 0 10px 24px rgba(0, 0, 0, 0.06);
	display: flex;
	flex-direction: column;
	height: 100%;
	padding: 1.75rem 2rem;
	position: relative;
	transition: all .3s ease;
}

.info--bubble::after {
	/*background: linear-gradient(90deg, #00C3FF 0%, #8BE68C 100%);*/
	border-radius: 999px;
	content: "";
	height: 3px;
	left: 1rem;
	opacity: .85;
	position: absolute;
	right: 1rem;
	top: .75rem;
	transition: all .3s ease;
}

.info--bubble:hover {
	box-shadow: 0 16px 36px rgba(0, 0, 0, 0.08);
	transform: translateY(-2px);
}

.info--bubble--head {
	align-items: center;
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin-bottom: .75rem;
}

.info--bubble--icon {
	align-items: center;
	background-color: #FFFFFF;
	/* border: 1px solid #EEEEEE; */
	border-radius: 1rem;
	/* box-shadow: 0 8px 20px rgba(0, 0, 0, 0.05); */
	color: #BDDD6F;
	display: inline-flex;
	font-size: 2.5rem;
	height: 60px;
	justify-content: center;
	line-height: 1;
	margin-bottom: .5rem;
	transition: all .3s ease;
	width: 60px;
}

.info--bubble:hover .info--bubble--icon {
	transform: translateY(-1px);
}

.info--bubble--title {
	color: #000000;
	font-family: 'FinalSixExtraBold', Arial, sans-serif;
	font-size: 1.4rem;
	font-weight: 700;
	letter-spacing: 0;
	line-height: 1.3;
	margin-bottom: 0;
	text-align: center;
}

/* subtiele scheidslijn onder de titel */
.info--bubble--line {
	background: linear-gradient(90deg, #00C3FF 0%, #FFFF1C 100%);
	border-radius: 999px;
	height: 2px;
	margin: .25rem auto 1rem auto;
	width: 60%;
}

.info--bubble p {
	color: #000000;
	font-family: 'Eina 01', Arial, sans-serif;
	font-size: 1.05rem;
	font-weight: 400;
	line-height: 1.6;
	margin-bottom: 0;
	text-align: center;
}



/* ============================
   SEARCH INLINE OVERRIDES (PARK PAGINA)
============================ */

.section--search {
	padding: 2rem 0;
}

.section--search .hero--searchbar {
	position: sticky !important;
	top: 74px !important;
	z-index: 901;

	transform: none !important;
	inset: auto !important;
	left: auto !important;
	right: auto !important;
	bottom: auto !important;

	max-width: 1600px;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	padding: 0 1rem;
}

.section--search .hero--segment--btn {
	padding: .5rem 1.5rem;
}

.section--search .hero--searchbar--row {
	display: flex !important;
	align-items: stretch;
	gap: 0.5rem;
}

.section--search .hero--segment {
	flex: 1 1 0;
	min-width: 0;
}

.section--search .hero--segment--submit {
	flex: 0 0 auto;
}

.section--search .hero--seg--divider {
	width: 1px;
	background: #EEEEEE;
	margin: .25rem 0;
}

@media (max-width: 991.98px) {
	.section--search .hero--searchbar {
		top: 64px !important;
		padding: 0 .5rem;
	}

	.section--search .hero--searchbar--row {
		flex-direction: column;
		gap: .5rem;
	}

	.section--search .hero--seg--divider {
		display: none;
	}

	.section--search .hero--searchbar--button {
		width: 100%;
	}
}




/* ============================
	ACCOMMODATION TYPES (ROW)
============================ */

/* datepicker custom styles */
.dp__menu {
	background-color: #FFF !important;
	border: 2px solid #EEE !important;
	border-radius: 2rem !important;
	/*box-shadow: 0 0 10px rgba(0, 0, 0, 0.06);*/
	padding: 0.5rem !important;
}

.dp__month_year_wrap {
	align-items: center;
	display: flex;
	flex-direction: row;
	width: 100%;
}

.dp__today {
	border: 1.5px solid #00C3FF !important;
}

.dp__date_hover:hover {
	background: #00C3FF !important;
	color: #FFF !important;
}

.dp__range_end,
.dp__range_start,
.dp__active_date {
	background: #00C3FF !important;
	color: #FFF !important;
}

.dp--year-select,
.dp__month_year_select {
	font-weight: bold !important;
}




/* ============================
	ACCOMMODATION TYPES (ROW)
============================ */

.section--accommodationtypes {
	padding: 5rem 0;
}

/* frame + card */
.section--accommodationtypes .acctype--frame {
	background-color: #F3F4F6;
	border: 1px solid #EEEEEE;
	border-radius: 2rem;
	display: block;
	padding: .5rem;
	text-decoration: none;
	transition: all .3s ease;
}

.section--accommodationtypes .acctype--frame:hover {
	background-color: #EEEEEE;
	box-shadow: 0 10px 24px rgba(0, 0, 0, 0.06);
}

.section--accommodationtypes .acctype--card {
	background-color: #FFFFFF;
	border-radius: 1.5rem;
	padding: .5rem;
	transition: all .3s ease;
}

/* image */
.section--accommodationtypes .acctype--image {
	border-radius: 1rem;
	height: 100%;
	overflow: hidden;
}

.section--accommodationtypes .acctype--image img {
	display: block;
	height: 100%;
	object-fit: cover;
	transform: scale(1);
	transition: all .3s ease;
	width: 100%;
}

.section--accommodationtypes .acctype--frame:hover .acctype--image img,
.section--accommodationtypes .acctype--frame:focus-visible .acctype--image img {
	transform: scale(1.02);
}

/* inner pad voor kolom 2 en 3 */
.section--accommodationtypes .acctype--pad {
	padding: 2rem;
}

/* titel/meta/prijs */
.section--accommodationtypes .acctype--title {
	font-size: 1.75rem;
	font-weight: 800;
	line-height: 1.2;
	margin: 0 0 1rem;
}

/* Description onder de titel */
.section--accommodationtypes .acctype--desc {
	color: #222222;
	font-size: 1rem;
	line-height: 1.6;
}

.section--accommodationtypes .acctype--desc p {
	margin: 0;
}

.section--accommodationtypes .acctype--meta {
	color: #111111;
	font-size: 1rem;
	font-weight: 600;
}

.section--accommodationtypes .acctype--price {
	background-color: #FFFFFF;
	border: 1.5px solid #00C3FF;
	border-radius: 2rem;
	color: #000;
	display: inline-block;
	font-size: 1.25rem;
	font-weight: 800;
	padding: .5rem 1rem;
}

.section--accommodationtypes .acctype--details {
	color: #666;
	font-size: 1rem;
	font-weight: 400;
}

/* bullets */
.section--accommodationtypes .acctype--bullets {
	color: #000000;
	font-size: 1.05rem;
	line-height: 1.55;
	margin: 0;
	padding: 0;
}

.section--accommodationtypes .acctype--bullets li {
	margin: 0 0 .25rem;
}

.section--accommodationtypes .acctype--bullets i {
	color: #00C3FF;
}

/* amenities */
.section--accommodationtypes .acctype--amenities {
	display: flex;
	flex-wrap: wrap;
	gap: .5rem;
	list-style: none;
	margin: 0 0 .5rem;
	padding: 0;
}

.section--accommodationtypes .acctype--amenity {
	align-items: center;
	border: 1px solid #E7E7E7;
	border-radius: .75rem;
	display: inline-flex;
	height: 42px;
	justify-content: center;
	width: 42px;
}

.section--accommodationtypes .acctype--amenity i {
	font-size: 1.1rem;
}

/* buttons (uniek) */
.section--accommodationtypes .acctype--btn,
.section--accommodationtypes .acctype--btn--ghost {
	align-items: center;
	border-radius: 25rem;
	display: inline-flex;
	font-weight: 700;
	gap: .5rem;
	line-height: 1;
	padding: .9rem 1.25rem;
	text-decoration: none;
	transition: all .3s ease;
}

.section--accommodationtypes .acctype--btn {
	background-color: #a3d200;
	border: 1px solid #a3d200;
	color: #000;
}

.section--accommodationtypes .acctype--btn:hover,
.section--accommodationtypes .acctype--btn:focus-visible {
	background-color: #1A1A1A;
	border-color: #1A1A1A;
	color: #FFFFFF;
}

.section--accommodationtypes .acctype--btn--ghost {
	background-color: #FFFFFF;
	border: 1px solid #E7E7E7;
	color: #111111;
}

.section--accommodationtypes .acctype--btn--ghost:hover,
.section--accommodationtypes .acctype--btn--ghost:focus-visible {
	background-color: #F7F7F7;
	border-color: #DCDCDC;
	color: #111111;
}

/* focus */
.section--accommodationtypes .acctype--frame:focus-visible {
	outline: 2px solid rgba(0, 195, 255, 0.35);
	outline-offset: 4px;
}

/* mq */
@media (max-width: 991.98px) {
	.section--accommodationtypes .acctype--image {
		height: 280px;
	}

	.section--accommodationtypes .acctype--pad {
		padding: 1rem;
	}

	.section--accommodationtypes .acctype--btn,
	.section--accommodationtypes .acctype--btn--ghost {
		width: 100%;
	}
}

@media (min-width: 992px) {
	.section--accommodationtypes .acctype--image {
		height: 100%;
	}
}



/* ============================
	MARQUEE PHOTO IMPRESSIONS
============================ */

.section--impressions {
	overflow: hidden;
	padding-bottom: 4rem;
	padding-top: 4rem;
	position: relative;
	width: 100%;

}

.impression--marquee {
	display: flex;
	flex-wrap: nowrap;
	gap: 1rem;
	min-width: 100%;
}

.impression--item {
	flex: 0 0 auto;
	width: 25%;
}

.impression--image {
	border-radius: 1.75rem;
	display: flex;
	height: 500px;
	overflow: hidden;
	position: relative;
	width: 100%;
}

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



/* ============================
	LOCATION
============================ */

.section--location {
	padding-bottom: 3rem;
	padding-top: 4rem;
}

.location--title {
	color: #000000;
	font-family: 'FinalSixHeavy', Arial, sans-serif;
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.4;
	margin-bottom: 0.25rem;
}

.location--description {
	color: #555;
	font-family: 'Eina 01', Arial, sans-serif;
	font-size: 1.125rem;
	font-weight: 400;
	margin-bottom: 1.5rem;
}

/* LOCATION MAP WRAPPERS */
.location--map--outer {
	background-color: #F6F6F6;
	border-radius: 2rem;
	padding: 0.5rem;
}

.location--map--inner {
	background-color: #FFFFFF;
	border-radius: 1.5rem;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.06);
	padding: 0.5rem;
}

/* GOOGLE MAP */
#map {
	width: 100%;
	height: 500px;
	border-radius: 1rem;
	overflow: hidden;
}

.location--address p {
	color: #000000;
	font-family: 'Eina 01', Arial, sans-serif;
	font-size: 1.125rem;
	font-weight: 400;
	line-height: 1.6;
	margin-bottom: 0;
}



/* ============================
	GALLERY SECTION
============================ */

.section--gallery {
	padding-bottom: 7rem;
	padding-top: 2rem;
}

.gallery--outer {
	background-color: #F6F6F6;
	border-radius: 2rem;
	padding: 0.5rem;
	overflow: hidden;
}

.gallery--inner {
	background-color: #FFFFFF;
	border-radius: 1.5rem;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.06);
	padding: 0.5rem;
	overflow: hidden;
}

.gallery--grid {
	border-radius: 1rem;
	display: flex;
	flex-wrap: wrap;
	gap: 0.25rem;
	overflow: hidden;
}

.gallery--grid a {
	display: block;
	width: calc(25% - 0.1875rem);
}

.gallery--grid img {
	border-radius: 0;
	box-shadow: var(--box-shadow);
	display: block;
	height: auto;
	object-fit: cover;
	width: 100%;
}

@media (max-width: 992px) {
	.gallery--grid a {
		width: calc(50% - 0.125rem);
	}
}

@media (max-width: 576px) {
	.gallery--grid a {
		width: 100%;
	}
}


/* Lightgallery */
.lg-outer .lg-thumb-item.active,
.lg-outer .lg-thumb-item:hover {
	border-color: #00C3FF !important;
}

.lg-outer .lg-thumb-outer {
	display: flex;
	justify-content: center;
}



/* ============================
   NEWS / STORIES
============================ */

.section--articles {
	padding: 5rem 0;
}

.section--articles .img--box {
	border-radius: 1rem;
	box-shadow: 0 0px 20px rgba(0, 0, 0, 0.1);
	height: 400px;
	overflow: hidden;
}

.section--articles .img--box img {
	height: 100%;
	object-fit: cover;
	object-position: center;
	width: 100%;
}

.section--articles h2 {
	color: #000000;
	font-family: 'FinalSixBlack', Arial, sans-serif;
	font-size: 1.75rem;
	letter-spacing: 0;
	margin-bottom: 1rem;
	margin-top: 0.75rem;
	text-decoration: none;
}

.section--articles p {
	color: #222222;
	font-family: 'Eina 01', Arial, sans-serif;
	font-size: 1.2rem;
	line-height: 1.55;
	margin: 0;
}

.section--stories {
	padding: 5rem 0;
}

.section--stories .stories--title {
	color: #000000;
	font-family: 'FinalSixBlack', Arial, sans-serif;
	font-size: 2.5rem;
	font-weight: 900;
	line-height: 1;
	margin-bottom: 1.5rem;
	margin-top: 0;
}

.stories--body {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
	height: 100%;
	padding: 1.5rem 1.5rem 1.75rem 1.5rem;
}

.stories--buttonwrap {
	margin-top: auto;
}

.stories--card {
	background-color: #FFFFFF;
	border: 1px solid #EEEEEE;
	border-radius: 1.25rem;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.06);
	display: flex;
	flex-direction: column;
	height: 100%;
	overflow: hidden;
	transition: all 0.3s ease;
}

.stories--card:hover {
	box-shadow: 0 10px 24px rgba(0, 0, 0, 0.08);
	transform: translateY(-2px);
}

.stories--col {
	display: flex;
}

.stories--h3 {
	color: #000000;
	font-family: 'FinalSixExtraBold', Arial, sans-serif;
	font-size: 1.35rem;
	font-weight: 800;
	line-height: 1.3;
	margin: 0;
}

.stories--img {
	border-bottom: 1px solid #F2F2F2;
	display: block;
	position: relative;
	width: 100%;
}

.stories--img img {
	border-radius: 1.25rem 1.25rem 0 0;
	display: block;
	height: 300px;
	object-fit: cover;
	width: 100%;
}

.stories--p {
	font-family: 'Eina 01', Arial, sans-serif;
	font-size: 1.05rem;
	line-height: 1.55;
	margin: 0;
}

.stories--textwrap {
	align-items: flex-start;
	display: flex;
	flex: 1 1 auto;
	margin-bottom: 1rem;
	min-height: 4.2rem;
}

.stories--titlewrap {
	align-items: flex-start;
	display: flex;
	flex: 0 0 auto;
	min-height: 2rem;
}



/* ============================
	USP
============================ */

.usp--block {
	padding: 8rem 0 3rem 0;
}

.usp--block.next--page {
	padding: 8rem 0 2rem 0;
}

.usp--block .usp--wrapper {
	background-color: #ABDC00;
	border-radius: 2.75rem;
	padding: .85rem;
}

.usp--block ul {
	background-color: #FFF;
	border-radius: 2rem;
	box-shadow: 0 0 .65rem rgba(215, 208, 197, 0.25);
	display: flex;
	justify-content: space-between;
	list-style: none;
	margin: 0;
	padding: 2rem;
	width: 100%;
}

.usp--block li {
	border-right: 1.5px solid #EEE;
	flex: 1;
	padding: 1rem 2.25rem;
	text-align: center;
}

.usp--block li:last-child {
	border-right: none;
}

.usp--block h3 {
	font-size: 1.35rem;
	font-weight: 700;
	line-height: 1.3;
	margin-bottom: .75rem;
}

.usp--block p {
	font-size: 1.05rem;
	font-weight: 400;
	margin-bottom: 0;
}

.usp--block i {
	font-size: 3.75rem;
	margin-bottom: .25rem;
}

.icon--wrapper {
	display: block;
	text-align: center;
	margin-bottom: 1rem;
}

/* Responsive stacking */
@media (max-width: 991.98px) {
	.usp--block ul {
		flex-direction: column;
		padding: 1.5rem;
	}

	.usp--block li {
		border-right: none;
		border-bottom: 1px solid #EEE;
		padding: 1.25rem 1.5rem;
	}

	.usp--block li:last-child {
		border-bottom: none;
	}
}



/* ============================
	FAQ
============================ */

.section--faq {
	padding: 5rem 0;
}

.section--faq--title {
	color: #000000;
	font-family: 'FinalSixBlack', Arial, sans-serif;
	font-size: 2.5rem;
	font-weight: 900;
	text-align: center;
	margin-bottom: 0;
}

.faq--item {
	border-bottom: 1.5px solid #EEEEEE;
	cursor: pointer;
	padding: 1.5rem 0;
}

.faq--question h3 {
	font-family: 'FinalSixBlack', Arial, sans-serif;
	font-size: 1.35rem;
	margin: 0;
	color: #000000;
}

.faq--icon {
	font-size: 1.5rem;
	color: #AAAAAA;
	transition: all 0.3s ease;
}

.faq--item.open .faq--icon {
	transform: rotate(180deg);
	color: #000000;
}

/* CONTAINER (voor spacing rondom en visibility toggle) */
.faq--answer {
	display: none;
	margin-top: 1rem;
}

/* INHOUD (voor typografie en ruimte binnenin) */
.faq--answer p {
	font-family: 'Eina 01', Arial, sans-serif;
	font-size: 1.125rem;
	font-weight: 400;
	line-height: 1.6;
	color: #000000;
	margin-bottom: 0;
	padding-right: 2.5rem;
}

.faq--item.open .faq--answer {
	display: block;
}

.faq--item:last-child {
	border-bottom: none;
}



/* ============================
	REVIEWS
============================ */
.section--reviews {
	background-color: #38342E;
	padding: 7rem 0 1.5rem 0;
}

.section--reviews--title {
	color: #ffff1c;
	font-family: 'FinalSixBlack', Arial, sans-serif;
	font-size: 2.5rem;
	font-weight: 900;
	margin-bottom: 0;
	text-align: center;
}

/* card */
.review--bubble {
	background-color: #FFFFFF;
	border: 1px solid #EEEEEE;
	border-radius: 1.25rem;
	box-shadow: 0 6px 16px rgba(0, 0, 0, 0.06);
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	height: 100%;
	justify-content: space-between;
	padding: 1.5rem 1.75rem 1.5rem 1.75rem;
	position: relative;
	text-align: left;
	transition: all 0.3s ease;
	opacity: 1;
}

.review--bubble:hover {
	transform: translateY(-2px);
	box-shadow: 0 14px 28px rgba(0, 0, 0, 0.08);
}

.review--topline {
	border-radius: 999px;
	height: 3px;
	left: 1rem;
	position: absolute;
	right: 1rem;
	top: 0.75rem;
}

/* head */
.review--head {
	align-items: center;
	display: grid;
	grid-template-columns: 50px 1fr;
	grid-template-rows: auto auto;
	column-gap: 1rem;
	row-gap: 0.25rem;
	margin-top: 0.125rem;
}

.review--avatar {
	align-items: center;
	background: #000000;
	border-radius: 999px;
	color: #FFFFFF;
	display: inline-flex;
	font-family: 'FinalSixExtraBold', Arial, sans-serif;
	font-size: 0.95rem;
	height: 52px;
	justify-content: center;
	letter-spacing: 0.5px;
	width: 52px;
}

.review--meta {
	align-self: center;
	display: flex;
	flex-direction: column;
}

.review--author {
	color: #000000;
	display: inline-block;
	font-family: 'FinalSixExtraBold', Arial, sans-serif;
	font-size: 1.2rem;
	line-height: 1.2;
}

.review--badge {
	align-items: center;
	background-color: #F6F6F6;
	border: 1px solid #EEEEEE;
	border-radius: 999px;
	color: #111111;
	display: inline-flex;
	font-family: 'Eina 01', Arial, sans-serif;
	font-size: 0.8rem;
	gap: .25rem;
	margin-top: 0.4rem;
	padding: .2rem .55rem;
	width: fit-content;
}

/* rating */
.review--rating {
	grid-column: 1 / -1;
	color: #00C3FF;
	font-size: 1.2rem;
	letter-spacing: 2px;
	margin-top: .5rem;
}

.review--rating i {
	margin-right: 1px;
}

/* body */
.review--body {
	display: flex;
	flex-grow: 1;
	align-items: flex-start;
}

.review--body p {
	color: #000000;
	font-family: 'Eina 01', Arial, sans-serif;
	font-size: .975rem;
	line-height: 1.55;
	margin: 0.25rem 0 0.75rem 0;
}

/* footer chips */
.review--footer {
	margin-top: auto;
}

.review--chips {
	display: flex;
	flex-wrap: wrap;
	gap: .5rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.review--chips .chip {
	background-color: #FFFFFF;
	border: 1px solid #EDEDED;
	border-radius: 999px;
	color: #666666;
	font-family: 'Eina 01', Arial, sans-serif;
	font-size: 0.9rem;
	padding: .25rem .6rem;
}

/* decorative quote icon */
.review--quote {
	color: #EEEEEE;
	font-size: 2.25rem;
	position: absolute;
	right: 1rem;
	bottom: 0.85rem;
}

/* small screen polish */
@media (max-width: 991.98px) {
	.review--bubble {
		padding: 1.25rem;
	}

	.review--author {
		font-size: 1.15rem;
	}

	.review--rating {
		font-size: 1.1rem;
	}
}



/* ============================
	FORM SECTION (Contact & Reservering)
============================ */

.section--form {
	background-color: #ffffff;
	padding-top: 5rem;
	padding-bottom: 2rem;
}

.section--form.booking--page {
	padding-top: 4rem;
	padding-bottom: 4rem;
}

.form--outer {
	background-color: #F6F6F6;
	border-radius: 2rem;
	padding: 0.75rem;
}

.form--inner {
	background-color: #FFFFFF;
	border-radius: 1.5rem;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.06);
}

.form--content {
	padding: 2.25rem;
}

.section--form .paragraph--h2 {
	color: #000000;
	font-family: 'FinalSixBlack', Arial, sans-serif;
	font-size: 2.5rem;
	font-weight: 900;
	line-height: 1;
	margin-bottom: 1rem;
	margin-top: 0;
}

.section--form .paragraph--text {
	color: #000000;
	font-family: 'Eina 01', Arial, sans-serif;
	font-size: 1.25rem;
	font-weight: 400;
	line-height: var(--line-height);
	margin-bottom: 1.5rem;
}

.section--form .form-control {
	border: 1.5px solid #E2E2E2;
	border-radius: 0.5rem;
	color: #000000;
	font-family: 'Eina 01', Arial, sans-serif;
	font-size: 1.125rem;
	font-weight: 400;
	padding: 0.75rem 1rem;
	background-color: #ffffff;
}

.section--form .form-control::placeholder {
	color: #888888;
}

.section--form .form-control:focus {
	border-color: #00C3FF;
	outline: none;
	box-shadow: 0 0 0 0.15rem rgba(0, 195, 255, 0.25);
}

.section--form label {
	color: #000000;
	font-family: 'Eina 01', Arial, sans-serif;
	font-size: 1.125rem;
	font-weight: 700;
	margin-bottom: 0.5rem;
	display: inline-block;
}

.section--form label i.label--discount {
	color: #00C3FF;
}

.discount__message {
	color: #FF0036;
}

.discount__spinner {
	font-size: 1.05rem;
	line-height: 1;
}

.discount__status i {
	opacity: 0;
	transition: opacity .2s ease;
}

.discount__status.is-active i {
	opacity: 1;
}

.section--form .btn--form,
.section--form .button--submit {
	background-color: #00C3FF;
	border: 2px solid #00C3FF;
	border-radius: 2rem;
	color: #000000;
	font-size: 1.25rem;
	font-weight: 600;
	padding: 0.5rem 1.25rem;
	transition: all 0.3s ease;
	font-family: 'Eina 01', Arial, sans-serif;
	cursor: pointer;
	display: inline-block;
	text-align: center;
	text-decoration: none;
}

.section--form .btn--form:hover,
.section--form .button--submit:hover {
	background-color: #000000;
	color: #FFFFFF;
	border-color: #000000;
}

.section--form .button--submit span {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 0.15rem;
}

.section--form .terms--text p {
	color: #777777;
	font-size: 0.95rem;
	line-height: 1.4;
	margin: 0;
}

.section--form .form-check {
	display: flex;
	align-items: center;
	margin-bottom: 0.75rem;
}

.section--form .form-check-input {
	margin-top: 0 !important;
}

.section--form .form-check-label {
	color: #000000;
	font-size: 1rem;
	font-family: 'Eina 01', Arial, sans-serif;
	font-weight: 400;
	margin-bottom: 0;
	margin-left: 1rem;
}

.section--form label small {
	font-family: "Eina 01", Arial, sans-serif;
	font-size: .9rem;
	font-weight: 400;
}

.form--select--wrapper {
	position: relative;
	width: 100%;
}

.form--select--wrapper select.form-control {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: 1.5px solid #E2E2E2;
	border-radius: 0.5rem;
	color: var(--color-black);
	font-family: "Eina 01", Arial, sans-serif;
	font-size: 1.125rem;
	font-weight: 400;
	padding: 0.75rem 1rem;
	padding-right: 2.5rem;
	background-color: #FFF;
	background-image: none;
	cursor: pointer;
}

.form--select--wrapper select.form-control:focus {
	background-color: #FFF;
	border-color: #00C3FF;
	box-shadow: 0 0 0 0.15rem rgba(0, 195, 255, 0.25);
	outline: none;
}

.form--select--wrapper::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 1rem;
	transform: translateY(-50%);
	width: 0;
	height: 0;
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	border-top: 6px solid #333;
	pointer-events: none;
}




/* ============================
	DATEPICKER
============================ */

.section--datepicker {
	background-color: #ffffff;
	padding-top: 3rem;
	padding-bottom: 3rem;
}

.datepicker--summary-wrapper {
	background-color: #ffffff;
	border-radius: 1.5rem;
	border: 2px solid #EEE !important;
	/*box-shadow: 0 0 10px rgba(0, 0, 0, 0.06);*/
	padding: 1.5rem;
}

.datepicker--summary-list {
	list-style: none;
	margin: 0;
	padding: 0 1rem;
}

.datepicker--summary-item {
	align-items: center;
	border-bottom: 1.5px solid #F4F4F4;
	display: flex;
	gap: 1rem;
	padding: 1rem 0;
}

.datepicker--summary-item:last-child {
	border-bottom: none;
}

.datepicker--summary-icon {
	flex-shrink: 0;
	width: 42px;
	height: 42px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.datepicker--summary-icon i {
	font-size: 1.5rem;
	color: #000000;
}

.datepicker--summary-content {
	font-family: 'Eina 01', Arial, sans-serif;
	font-size: 1.125rem;
	color: #000000;
}

.datepicker--summary-content strong {
	display: block;
	font-weight: 700;
}

.datepicker--summary-content span.small {
	color: #888;
	font-size: 0.95rem;
	font-weight: 400;
	line-height: 1.4;
	display: flex;
}


/* datepicker custom styles */
.dp__menu {
	background-color: #FFF !important;
	border: 2px solid #EEE !important;
	border-radius: 2rem !important;
	/*box-shadow: 0 0 10px rgba(0, 0, 0, 0.06);*/
	padding: 0.5rem !important;
}

.dp__today {
	border: 1.5px solid #00C3FF !important;
}

.dp__date_hover:hover {
	background: #00C3FF !important;
	color: #FFF !important;
}

.dp__range_end,
.dp__range_start,
.dp__active_date {
	background: #00C3FF !important;
	color: #FFF !important;
}

.dp--year-select,
.dp__month_year_select {
	font-weight: bold !important;
}



/* ============================
	BOOK CTA SECTION
============================ */

.section--book {
	background-color: #87AE00;
	padding: 3rem 0 2.75rem 0;
}

.book--banner {
	background-color: rgba(255, 255, 255, 0.9);
	border: 1.5px solid #87AE00;
	border-radius: 1rem;
	box-shadow: 0 10px 26px rgba(0, 0, 0, 0.10);
	padding: 1.5rem 1.25rem;
	transition: all 0.3s ease;
}

.book--banner:hover {
	transform: translateY(-1px);
	box-shadow: 0 16px 34px rgba(0, 0, 0, 0.12);
}

.book--heading {
	color: #000000;
	font-family: 'FinalSixBlack', Arial, sans-serif;
	font-size: 1.65rem;
	font-weight: 900;
	margin-bottom: 0;
	text-align: center;
}

.book--text {
	color: #000000;
	font-family: 'Eina 01', Arial, sans-serif;
	font-size: 1.25rem;
	line-height: 2;
}

.book--counter {
	align-items: center;
	background-color: #F6F6F6;
	border: 1.5px solid #EAEAEA;
	border-radius: 2rem;
	color: #000000;
	display: inline-flex;
	font-family: 'Eina 01', Arial, sans-serif;
	font-size: 0.975rem;
	gap: 0.5rem;
	padding: 0.35rem 0.9rem;
	transition: all 0.3s ease;
}

.book--counter i {
	font-size: 1rem;
}

/* PRIMARY BUTTON */
.book--btn {
	align-items: center;
	background-color: #000000;
	border: 2px solid #000000;
	border-radius: 2rem;
	color: #FFFFFF;
	display: inline-flex;
	font-family: 'Eina 01', Arial, sans-serif;
	font-size: 1.05rem;
	font-weight: 700;
	gap: 0.5rem;
	padding: 0.55rem 1.15rem;
	text-decoration: none;
	transition: all 0.3s ease;
}

.book--btn:hover {
	background-color: #00C3FF;
	border-color: #00C3FF;
	color: #000000;
	text-decoration: none;
}

/* BLUE BUTTON */
.book--btn--blue {
	align-items: center;
	background-color: #00C3FF;
	border: 2px solid #00C3FF;
	border-radius: 2rem;
	color: #000000;
	display: inline-flex;
	font-family: 'Eina 01', Arial, sans-serif;
	font-size: 1.05rem;
	font-weight: 700;
	gap: 0.5rem;
	padding: 0.55rem 1.15rem;
	text-decoration: none;
	transition: all 0.3s ease;
}

.book--btn--blue:hover {
	background-color: #000000;
	border-color: #000000;
	color: #FFF;
	text-decoration: none;
}

/* GHOST BUTTON */
.book--btn--ghost {
	align-items: center;
	background-color: #FFFFFF;
	border: 2px solid #EAEAEA;
	border-radius: 2rem;
	color: #000000;
	display: inline-flex;
	font-family: 'Eina 01', Arial, sans-serif;
	font-size: 1.05rem;
	font-weight: 700;
	gap: 0.5rem;
	padding: 0.55rem 1.15rem;
	text-decoration: none;
	transition: all 0.3s ease;
}

.book--btn--ghost:hover {
	background-color: #000000;
	border-color: #000000;
	color: #FFFFFF;
	text-decoration: none;
}

/* TRUST LIST */
.book--trust--item {
	align-items: center;
	background-color: rgba(255, 255, 255, 0.75);
	border: 1px solid #FFFFFF;
	border-radius: 2rem;
	color: #000000;
	display: inline-flex;
	font-family: 'Eina 01', Arial, sans-serif;
	font-size: 0.925rem;
	gap: 0.5rem;
	padding: 0.35rem 1rem 0.4rem .9rem;
	transition: all 0.3s ease;
}

.book--trust--item i {
	font-size: 1rem;
}

/* RESPONSIVE */
@media (max-width: 575.98px) {
	.book--text {
		font-size: 1.05rem;
	}

	.book--btn,
	.book--btn--ghost {
		width: 100%;
		justify-content: center;
	}
}




/* ============================
	BOOK FLOATING BUTTON
============================ */

.book--button--wrapper {
	position: fixed;
	bottom: 40px;
	right: 40px;
	z-index: 1000;
}

.button--floating {
	background: linear-gradient(45deg, #00C3FF, #8BE68C, #FFF55C);
	border: none;
	border-radius: 2rem;
	color: #000000;
	cursor: pointer;
	display: inline-block;
	font-family: 'Eina 01', Arial, sans-serif;
	font-size: 1.5rem;
	font-weight: 600;
	padding: 0.7rem 1.45rem;
	text-align: center;
	text-decoration: none;
	transition: all 0.3s ease;
	animation: pulse-animation 2.5s infinite;
}

.button--floating span {
	align-items: center;
	display: flex;
	justify-content: center;
	margin-bottom: 0.175rem;
}

.button--floating:hover {
	background: #000;
	color: #FFF;
	text-decoration: none;
}

@keyframes pulse-animation {
	0% {
		box-shadow: 0 0 0 0px rgba(7, 226, 234, 0.7);
	}

	50% {
		box-shadow: 0 0 0 18px rgba(255, 255, 255, 0);
	}

	100% {
		box-shadow: 0 0 0 0px rgba(255, 255, 255, 0);
	}
}




/* ============================
	FOOTER
============================ */

.section--footer {
	background-color: #38342E;
	padding: 3rem 0 2rem 0;
}

/* Footer base */
.footer--base p {
	color: #DDD;
	font-family: 'Eina 01', Arial, sans-serif;
	font-size: 0.95rem;
	margin-top: 1rem;
	text-align: center;
}

/* Footer logo */
.footer--logo img {
	height: 150px;
}

/* Footer layout voor menu & legal */
.footer--menu,
.footer--legal {
	list-style: none;
	padding-left: 0;
	text-align: center;
}

.footer--menu li,
.footer--legal li {
	display: inline-block;
	margin: 0 0.75rem;
}

/* Bovenste menu links */
.footer--menu--link {
	color: #8ED90A;
	display: inline-block;
	font-family: 'FinalSixExtraBold', Arial, sans-serif;
	font-size: 1.125rem;
	font-weight: 700;
	letter-spacing: 0;
	padding: 0.25rem 0 !important;
	position: relative;
	text-decoration: none;
	transition: all 0.3s ease;
}

.footer--menu--link::after {
	background-color: #8ED90A;
	bottom: 0;
	content: '';
	height: 2px;
	left: 0;
	right: 0;
	opacity: 0;
	position: absolute;
	transform: scaleX(0);
	transform-origin: left;
	transition: all 0.3s ease;
}

.footer--menu--link:hover::after {
	opacity: 1;
	transform: scaleX(1);
}

.footer--menu--link:hover {
	color: #8ED90A;
	text-decoration: none;
}

/* Onderste juridische links â€“ Eina stijl */
.footer--legal a {
	color: #00C3FF;
	font-family: 'Eina 01', Arial, sans-serif;
	font-size: 1rem;
	font-weight: 400;
	text-decoration: none;
	transition: all 0.3s ease;
}

.footer--legal a:hover {
	color: #FFF;
	text-decoration: none;
}








/* ============================
	END SITE CSS
============================ */