:root {
	/* Colors */
	--primary: #282D36;
	--primary-bg: #e3f4ff;
	--primary-dark: #1d1e21;
	--primary-light: #4f5664;

	--secondary: #FCD538;
	--secondary-bg: #e4f1f7;
	--secondary-dark: #d3af1e;
	--secondary-light: #ffe57b;

	--tertiary: #F0F3F7;
	--tertiary-bg: #ecedef;
	--tertiary-dark: #cdced0;
	--tertiary-light: #ffffff;

	/* Fonts */
	--font-family-heading: "Staatliches", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
		"Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif,
		"Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
	--font-family-sans-serif: "Overpass", -apple-system, BlinkMacSystemFont, "Segoe UI",
		Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif,
		"Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
	--line-height: 1.5;

	/* Borders */
	--button-border: 2px;
	--dropdown-border: 1px;
	--input-border: 2px;
	--panel-border: 10px;

	/* Radii */
	--button-radius: 0.25rem;
	--dropdown-radius: 0.25rem;
	--input-radius: 0.25rem;
	--panel-radius: 0.5rem;

	/* Padding */
	--button-padding: 1rem;
	--dropdown-padding: 1rem;
	--input-padding: 1rem;
	--panel-padding: 1rem;

	--navigation-height: 6rem;
}

/* Responsive breakpoints, mobile first. Graag bij gerelateerde component gebruiken, niet één per style sheet. */
@media only screen and (min-width: 576px) {
	/* Small (sm) */
}

@media only screen and (min-width: 768px) {
	/* Medium (md) */
}

@media only screen and (min-width: 992px) {
	/* Large (lg) */
}

@media only screen and (min-width: 1200px) {
	/* Extra large (xl) */
}

/* Scroll smooth naar anchors op de pagina. */
html {
	scroll-behavior: smooth;
}

@media (prefers-reduced-motion) {
	html {
		scroll-behavior: unset;
	}
}

/* Zorg dat er niet buiten de pagina gescrolt kan worden. */
body {
	overscroll-behavior-y: none;
}

hr {
	background-color: currentColor;
}

h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6 {
	hyphens: auto;
	text-wrap: balance;
}

b,
strong,
.strong {}

p,
.p,
label,
.label,
legend,
.legend {}

input {
	accent-color: var(--primary-dark);
}

small,
.small {}

h1,
.h1 {
	font-size: 2rem;
	line-height: 2.125rem;
	margin-bottom: 2rem;
}

h2,
.h2 {
	font-size: 1.75rem;
	line-height: 2rem;
	margin-bottom: 1.25rem;
}

p {
	font-size: 1.125rem;
	line-height: 1.875rem;
}

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

	h1,
	.h1 {
		font-size: 2.8rem;
		line-height: 3.125rem;
	}

	h2,
	.h2 {
		font-size: 2.5rem;
		line-height: 3.125rem;
	}
}

/* Navigatie balk mee laten scrollen. */
.nav-header {
	position: sticky;
	top: 0;
	z-index: 100;
}

@media screen and (min-width: 992px) {
	#adminbar+* .nav-header {
		top: 3.5rem;
	}
}

/* Navigatie toggler met open en sluit animatie. */
.navbar-toggler {
	border: none;
}

.navbar-toggler-icon {
	position: relative;
	background-image: none !important;
}

.navbar-toggler-icon i {
	display: block;
	position: absolute;
	height: 0.1em;
	width: 100%;
	left: 0;

	background-color: black;
	transition-property: left, top, transform, width;
	transition-duration: 250ms;
}

.navbar-toggler-icon i:nth-child(1) {
	top: calc(20% - 0.05em);
}

.navbar-toggler-icon i:nth-child(2) {
	top: calc(50% - 0.05em);
}

.navbar-toggler-icon i:nth-child(3) {
	top: calc(80% - 0.05em);
}

.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon i:nth-child(1) {
	top: calc(50% - 0.1em);
	transform: rotate(45deg);
}

.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon i:nth-child(2) {
	width: 0;
	left: 50%;
}

.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon i:nth-child(3) {
	top: calc(50% - 0.1em);
	transform: rotate(-45deg);
}

/* Buttons */
.btn.btn-primary:not(.btn-admin),
.btn.btn-secondary:not(.btn-admin),
.btn.btn-tertiary:not(.btn-admin),
.btn.btn-link:not(.btn-admin, header .btn) {
	border-radius: 9999px;
	display: flex;
	padding-right: 0.5rem;
	transition: 0.3s ease-out;
	font-family: var(--font-family-heading);
	width: fit-content;
}

/* primary */

.btn.btn-primary:not(.btn-admin) {
	background-color: var(--primary) !important;
	border-color: var(--primary) !important;
}

.btn.btn-primary:not(.btn-admin)::after {
	content: "";
	background-image: url(assets/primary.svg);
	background-repeat: no-repeat;
	background-size: contain;
	display: inline-block;
	width: 1.5rem;
	height: 1.5rem;
	margin-left: 0.5rem;
	position: relative;
	transition: 0.3s ease-out;
}

.btn.btn-primary:not(.btn-admin):hover::after,
.btn.btn-primary:not(.btn-admin):focus::after,
.btn.btn-primary:not(.btn-admin):active::after {
	margin-left: 1rem;
	transform: rotate(-180deg);
}

/* secondary */

.btn.btn-secondary:not(.btn-admin) {
	background-color: var(--secondary) !important;
	border-color: var(--secondary) !important;
	color: var(--primary);
}

.btn.btn-secondary:not(.btn-admin)::after {
	content: "";
	background-image: url(assets/secondary.svg);
	background-repeat: no-repeat;
	background-size: contain;
	display: inline-block;
	width: 1.5rem;
	height: 1.5rem;
	margin-left: 0.5rem;
	position: relative;
	transition: 0.3s ease-out;
}

.btn.btn-secondary:not(.btn-admin):hover::after,
.btn.btn-secondary:not(.btn-admin):focus::after,
.btn.btn-secondary:not(.btn-admin):active::after {
	margin-left: 1rem;
	transform: rotate(-180deg);
}

/* link */

.btn.btn-link:not(.btn-admin, header .btn) {
	padding-left: 0;
}

.btn.btn-link:not(.btn-admin, header .btn)::after {
	content: "";
	background-image: url(assets/link.svg);
	background-repeat: no-repeat;
	background-size: contain;
	display: inline-block;
	width: 1.5rem;
	height: 1.5rem;
	margin-left: 0.5rem;
	position: relative;
	transition: 0.3s ease-out;
}

.btn.btn-link:not(.btn-admin):hover::after,
.btn.btn-link:not(.btn-admin):focus::after,
.btn.btn-link:not(.btn-admin):active::after {
	margin-left: 1rem;
	transform: rotate(-180deg);
}

/* [NAVBAR] */

header {
	background-color: var(--primary);
}

header .navbar-toggler-icon i {
	background-color: white;
}

header a span {
	color: white;
	transition: 0.3s ease-out;
}

header .header-contact .btn:last-of-type {
	padding-right: 0;
}

header .navigation {
	gap: 1rem;
}

header .header-contact i {
	color: var(--secondary);
}

header a.nav-link span {
	font-size: 1.125rem;
	font-family: var(--font-family-heading);
}

header a:hover span,
header a:focus span,
header a:active span {
	color: var(--secondary);
}

header a.active span {
	color: var(--secondary) !important;
}

header a.active:hover span,
header a.active:focus span,
header a.active:active span {
	color: white !important;
}

/* [HEADER HOME] */

.header {
	overflow: clip;
}

.header img {
	max-height: 500px;
	object-fit: cover;
	object-position: bottom;
}

@media screen and (min-width: 992px) {
	.header img {
		position: relative;
		left: 4rem;
		border-bottom-left-radius: var(--panel-border);
	}
}

/* [MAIN HOME] */

.main {
	margin-top: 2rem;
}

.main .row>.col-lg-5 img {
	border-radius: var(--panel-border);
	object-fit: cover;
}

.main .py-4 {
	display: none;
}

@media screen and (min-width: 992px) {
	.main .row>.col-lg-7 {
		flex: 0 0 50%;
		max-width: 50%;
		padding-top: 1rem;
	}

	.main .row>.col-lg-7 p {
		/* padding-right: 2rem; */
	}

	.main .row>.col-lg-5 {
		flex: 0 0 50%;
		max-width: 50%;
		position: relative;
		justify-items: end;
	}

	body:not(body[data-editor-mode="layout"]) .main .row>.col-lg-5 * {
		height: 100%;
	}

	body:not(body[data-editor-mode="layout"]) .main .row>.col-lg-5 > div {
		width: 90%;
	}

	.main .row>.col-lg-5 .my-4 {
		margin: 0 !important;
	}

	.main {
		margin-top: 4rem;
	}

	.main .row>.col-lg-5::after {
		content: "";
		background-image: url(assets/icoon.png);
		background-repeat: no-repeat;
		background-size: contain;
		width: 75%;
		height: 100%;
		pointer-events: none;
		position: absolute;
		bottom: -7rem;
		right: 0;
		background-position: bottom right;
	}
}

/* [ITEM BLOCKS] */

.item-blocks {
	background-color: var(--primary);
	padding: 2rem 0 3rem 0;
	margin-top: 1rem;
}

.item-blocks .container>[data-partial="text"] {
	color: white;
}

.blocks {
	display: flex;
	flex-wrap: wrap;
	margin-right: -15px;
	margin-left: -15px;
	margin-bottom: 1rem;
	margin-top: 2rem;
}

.blocks p {
	font-size: 1.45rem;
	line-height: 2rem;
	hyphens: auto;
}

.blocks>* {
	flex: 0 0 100%;
	width: 100%;
	padding-right: 15px;
	padding-left: 15px;
}

@media screen and (min-width: 768px) {
	.blocks>* {
		flex: 0 0 50% !important;
		max-width: 50% !important;
	}
}

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

	.item-blocks {
		padding: 4rem 0;
		margin-top: 8rem;
	}

	.blocks img {
		height: 250px;
	}
}

@media screen and (min-width: 1200px) {
	.blocks>* {
		flex: 0 0 25% !important;
		max-width: 25% !important;
	}
}

.blocks>.block-text>*,
.blocks>.block-text-full>*,
.blocks>.block-text-on-image>* .position-overlay,
.blocks>.block-text-full-on-image>* .position-overlay {
	height: 250px;
}

.blocks img {
	object-fit: cover;
}

.blocks>.block-image,
.blocks>.block-text,
.blocks>.block-text-full,
.blocks>.block-text-on-image,
.blocks>.block-text-full-on-image {
	margin-top: 15px;
	margin-bottom: 15px;
}

.blocks>.block-text>*,
.blocks>.block-text-full>*,
.blocks>.block-text-on-image>* .position-overlay,
.blocks>.block-text-full-on-image>* .position-overlay {
	padding: 2rem 2rem 1rem 2rem;
}

.blocks>.block-text-full>div {
	position: relative;
	/* height: 100%; */
}

body:not(body[data-editor-mode="content"]) .blocks>.block-text-full>div p:last-of-type {
	bottom: 0;
	position: absolute;
}

.blocks>.block-image [data-partial="image"] img,
.blocks>.block-text-on-image [data-partial="image"] img,
.blocks>.block-text-full-on-image [data-partial="image"] img {
	border-radius: unset !important;
}

.blocks>.block-text>[data-partial="element"],
.blocks>.block-text-on-image>* [data-partial="element"] {
	font-size: 1.5em;
	line-height: 1.25;
	color: var(--white);
	height: 100%;
}

.blocks>.block-text>[data-partial="text"],
.blocks>.block-text-on-image>* [data-partial="text"] {
	color: var(--primary) !important;
	height: 100%;
}

.blocks>.block-text-on-image>* p.position-overlay,
.blocks>.block-text-full-on-image>* p.position-overlay,
.blocks>.block-text-on-image>* .position-overlay p,
.blocks>.block-text-full-on-image>* .position-overlay p {
	text-shadow: 0 0 4px #0008;
}

.blocks>*:nth-child(1n)>* {
	background-color: var(--tertiary);
	---color: var(--primary);
}

.blocks>*:nth-child(2n)>* {
	background-color: var(--secondary);
	---color: var(--secondary);
}

.blocks>*:nth-child(3n)>* {
	background-color: var(--tertiary);
	---color: var(--tertiary);
}

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

	.blocks>.block-text>[data-partial="element"],
	.blocks>.block-text-on-image>* [data-partial="element"] {
		font-size: 1.625em;
	}
}

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

	.blocks>.block-text>[data-partial="element"],
	.blocks>.block-text-on-image>* [data-partial="element"] {
		font-size: 1.75em;
	}
}

[data-editor-mode="content"] .blocks>.block-text-full-on-image>* .position-overlay,
[data-editor-mode="content"] .blocks>.block-text-on-image>* .position-overlay {
	position: relative;
	padding: 0;
}

/* [CONTENT SPLIT] */

.content-split-section {
	margin-bottom: 3rem;
	margin-top: 3rem;
	padding: 0 1rem;
}

.content-subtemplate-content .content-split-section {
	margin-top: 1rem;
}

.content-split-section .row {
	border-radius: var(--panel-border);
	background-color: var(--secondary);
	padding: 1rem 0;
}

.content-split-section img {
	border-radius: var(--panel-border);
	object-fit: cover;
}

.image-album-slider-animated {
	padding-top: 4rem;
}

.image-album-slider-animated .img-fluid {
	width: 320px;
}


.image-album-slider-animated .flex-slider {
	animation-duration: 60000ms;
}
.image-album-slider-animated > * img {
	padding-left: 1rem;
	padding-right: 1rem;
}

.flex-auto-responsive > *, .flex-auto-responsive > picture > img, .flex-auto-responsive > a > picture > img {

}



@media screen and (min-width: 992px) {
	.content-split-section {
		margin-bottom: 10rem;
		margin-top: 5rem;
		padding: 0;
	}

	.content-subtemplate-content .content-split-section {
		margin-top: 6rem;
	}

	.content-split-section .row>.col-lg-6:first-of-type [data-partial="partial-list"] {
		padding: 3rem 5rem 1rem 2rem;
	}

	.content-split-section .row>.col-lg-6:last-of-type [data-partial="partial-list"] {
		position: relative;
		top: 4rem;
		right: 3rem;
		height: 100%;
	}

	.content-split-section .row>.col-lg-6:last-of-type [data-partial="partial-list"] * {
		height: 100%;
	}

	.content-split-section .row {
		padding: 0;
	}
}

/* [CONTACT] */

.content-subtemplate-contact .main {
	margin-bottom: 2rem;
}

.content-subtemplate-contact form {
	background-color: var(--secondary);
	padding: 2rem;
	border-radius: var(--panel-border);
}

@media screen and (min-width: 992px) {
	.content-subtemplate-contact .main {
		margin-bottom: 4rem;
	}
}

/* [FOOTER] */

footer.nav-footer {
	background-color: var(--primary);
	color: white;
	position: relative;
}

footer.nav-footer .top {
	padding-top: 2rem;
}

footer.nav-footer .footer-contact-info i {
	margin-right: 0.75rem;
	vertical-align: top;
}

footer.nav-footer .footer-opening_times ul {
	columns: 2;
	column-gap: 30px;
	padding-inline-start: 0px;
}

footer.nav-footer .footer-opening_times li {
	display: flex;
	justify-content: space-between;
}

footer.nav-footer .footer-opening_times .opening_times-day_of_week {
	/* color: var(--primary); */
}

footer.nav-footer .footer-opening_times .opening_times-times {
	text-align: right;
}

footer.nav-footer .title {
	font-size: 1.5rem;
	line-height: 1.55rem;
	font-family: var(--font-family-heading);
}

footer.nav-footer a {
	color: white;
	text-decoration: none !important;
	transition: 0.3s ease-out;
}

footer.nav-footer a:hover,
footer.nav-footer a:focus,
footer.nav-footer a:active {
	color: var(--secondary);
}

footer.nav-footer i {
	color: var(--secondary);
	font-size: 1.25rem;
}

footer.nav-footer .footer-socials i {
	color: white;
}

footer.nav-footer .tagline {
	font-size: 80%;
	line-height: 1.5;
	margin: 0;
}

footer.nav-footer hr {
	/* background-color: var(--secondary); */
	margin-top: 3rem;
	margin-bottom: 3rem;
}

@media only screen and (min-width: 992px) {
	footer.nav-footer hr {
		/* background-color: var(--secondary); */
		margin-top: 1rem;
		margin-bottom: 1rem;
	}

	footer.nav-footer .top {
		padding-top: 5rem;
	}

	footer.nav-footer::after {
		content: "";
		background-image: url(assets/icoon-dubbel.png);
		background-repeat: no-repeat;
		background-size: contain;
		pointer-events: none;
		position: absolute;
		top: 0;
		left: -1.25rem;
		width: 30%;
		height: 100%;
	}
}

footer.nav-footer .footer-socials {
	text-align: center;
	position: absolute;
	bottom: 0;
}

footer .bottom button small {
	color: white !important;
}

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

	footer.nav-footer::after {
		content: "";
		background-image: url(assets/icoon-dubbel.png);
		background-repeat: no-repeat;
		background-size: contain;
		pointer-events: none;
		position: absolute;
		top: 0;
		left: -1.25rem;
		width: 25%;
		height: 100%;
	}
}


.content-template-kwik  tr:first-child td {
	text-align: center;
	font-size: 2rem;
	color: var(--secondary);
}

.content-template-kwik .content-split-section tr:first-child td {
		color: var(--primary);
}

.content-template-kwik  td {
	text-align: center;
}



.content-template-kwik .table-bordered tr:first-child td {
  border-top: 1px solid var(--primary);
  border-left: 1px solid var(--primary);
  border-right: 1px solid var(--primary);
  border-bottom: 0;
}

/* Tweede rij: geen bovenrand */
.content-template-kwik .table-bordered tr:nth-child(2) td {
  border-top: 0;
  border-left: 1px solid var(--primary);
  border-right: 1px solid var(--primary);
  border-bottom:  1px solid var(--primary);
}