/*!
Theme Name: OnTrack
Theme URI: 
Author: 
Author URI: 
Description: 
Version: 1.0.0
Requires at least: 5.0
Tested up to: 6.5
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: ontrack
*/
/*--------------------------------------------------------------
# Fonts
--------------------------------------------------------------*/

@font-face {
	font-family: 'Roboto';
	font-weight: 300;
	font-style: normal;
	src: url('../fonts/Roboto-Light.woff2') format('woff2');
	font-display: swap;
}


/* use !important to prevent issues with browser extensions that change fonts */
@font-face {
	font-family: 'icomoon';
	font-weight: normal;
	font-style: normal;
	src: url('../fonts/icomoon.eot?ou1n1a');
	src: url('../fonts/icomoon.eot?ou1n1a#iefix') format('embedded-opentype'), url('../fonts/icomoon.ttf?ou1n1a') format('truetype'), url('../fonts/icomoon.woff?ou1n1a') format('woff'), url('../fonts/icomoon.svg?ou1n1a#icomoon') format('svg');
	font-display: swap;
}

[class^='icon-'],
[class*=' icon-'] {
	font-family: 'icomoon' !important;
	font-weight: normal;
	font-style: normal;
	font-variant: normal;
	line-height: 1;
	text-transform: none;
	speak: never;

	/* Better Font Rendering =========== */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.icon-search:before {
	content: '\e90f';
}
.icon-facebook:before {
	content: '\e90c';
}
.icon-insta:before {
	content: '\e90d';
}
.icon-youtube:before {
	content: '\e90e';
}
.icon-contacts:before {
	content: '\e90b';
}
.icon-check-solid:before {
	content: '\e902';
}
.icon-image:before {
	content: '\e907';
}
.icon-newspaper:before {
	content: '\e908';
}
.icon-angle-down:before {
	content: '\e900';
}
.icon-angle-right:before {
	content: '\e901';
}
.icon-check:before {
	content: '\e903';
}
.icon-cross:before {
	content: '\e904';
}
.icon-email:before {
	content: '\e905';
}
.icon-footsteps:before {
	content: '\e906';
}
.icon-quote:before {
	content: '\e909';
}
.icon-star:before {
	content: '\e90a';
}


/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/

html { line-height: 1.15; -webkit-text-size-adjust: 100%; box-sizing: border-box; }
*, *::before, *::after { box-sizing: inherit; }
body { margin: 0; }
main { display: block; }

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/

img { height: auto; max-width: 100%; }
embed, iframe, object { max-width: 100%; }
.custom-logo-link { display: inline-block; }

/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/

.alignleft { float: left; margin-right: 1.5em; margin-bottom: 1.5em; }
.alignright { float: right; margin-left: 1.5em; margin-bottom: 1.5em; }
.aligncenter { clear: both; display: block; margin-left: auto; margin-right: auto; margin-bottom: 1.5em; }

.screen-reader-text { border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute !important; width: 1px; word-wrap: normal !important; }
.screen-reader-text:focus { background-color: #f1f1f1; border-radius: 3px; box-shadow: 0 0 2px 2px rgba(0,0,0,0.6); clip: auto !important; clip-path: none; color: #21759b; display: block; font-size: 0.875rem; font-weight: 700; height: auto; left: 5px; line-height: normal; padding: 15px 23px 14px; text-decoration: none; top: 5px; width: auto; z-index: 100000; }
#primary[tabindex="-1"]:focus { outline: 0; }

/*--------------------------------------------------------------
# Custom Style
--------------------------------------------------------------*/

/* ### general ### */
:root {
	--width-base: 1232px;
	--width-large: 1880px;
	--font-size-base: 16px;
	--color-info: #291919;
	--color-white: #fff;
	--color-black: #000;
	--color-blue: #457fbb;
	--color-yellow: #fbbc02;
	--color-grey: #f9f9f9;
	--color-grey-dark: #010103;
	--color-daisy: #fbfaf1;
	--color-green: #1ba212;
	--color-vintage: #8a2b23;
	--color-primary: #d9982d;
	--color-secondary: #a5c5d4;
	--line-height-base: 1.72;
	--font-family-base: 'peridot-pe-variable', sans-serif;
	--font-family-roboto: 'Roboto', sans-serif;
	--font-family-icon: 'icomoon', sans-serif;
	--font-size-h1: 40px;
	--font-size-h2: 25px;
	--font-size-h3: 20px;
	--font-size-h4: 18px;
	--font-size-h5: 17px;
	--font-size-h6: 16px;
	--border-radius: 32px;
	--line-decoration: none;
	--line-height-heading: 1.18;
	--duration: all 0.25s ease-in-out;
}

/* ### general ### */
* { margin: 0; padding: 0; box-sizing: border-box; }
html,
body { font-family: var(--font-family-base), sans-serif; font-size: var(--font-size-base); font-weight: 300; line-height: var(--line-height-base); color: var(--color-info); -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
body { background: var(--color-daisy); }
input,
select,
textarea { padding: 8px 20px 11px; width: 100%; height: 48px; font-family: var(--font-family-base), sans-serif; font-size: var(--font-size-base); font-weight: 500; color: var(--color-info); border: solid 1px rgba(41, 25, 25, 0.16); border-radius: 75px; background-color: var(--color-white); appearance: none; }
textarea { padding-top: 10px; height: 150px; resize: none; }
label { margin-bottom: 1px; display: block; font-size: 16px; font-weight: 500; color: var(--color-info); }
select { cursor: pointer; padding: 0px 20px; font-weight: 500; color: var(--color-vintage); background-color: var(--color-daisy); background-image: url('images/select-arrow.png'); background-repeat: no-repeat; background-position: center right 16px; appearance: none; }
select.form-select { font-weight: 300; background-color: var(--color-white); }
input::placeholder,
textarea::placeholder { color: var(--color-info); }
img { display: block; max-width: 100%; border: 0; }
ul,
li { list-style: none; }
li a:focus,
li a:hover { text-decoration: underline; color: var(--color-vintage); }
a { display: inline-block; text-decoration: none; color: var(--color-info); transition: var(--duration); }
a.glink{ color: var(--color-vintage); }
:focus { outline: none; }
p { margin-bottom: 20px; }
.h1,
h1,
.h2,
h2,
.h3,
h3,
.h4,
h4,
.h5,
h5,
h6 { margin-bottom: 20px; font-family: var(--font-family-base), sans-serif; font-weight: 500; line-height: var(--line-height-heading); color: var(--color-info); }
.h1,
h1 { font-size: var(--font-size-h1); font-weight: 300; }
h1 strong { font-weight: 500; }
.h2,
h2 { font-size: var(--font-size-h2); }
.h3,
h3 { font-size: var(--font-size-h3); }
.h4,
h4 { font-size: var(--font-size-h4); }
.h5,
h5 { font-size: var(--font-size-h5); }
.h6,
h6 { font-size: var(--font-size-h6); }
blockquote { padding: 17px 20px 20px 70px; position: relative; font-weight: 300; font-style: italic; border: 1px solid rgba(0, 0, 0, 0.1); border-radius: var(--border-radius); }
blockquote i { position: absolute; top: 50%; left: 20px; font-size: 25px; color: rgba(41, 25, 25, 0.1); transform: translateY(-50%); }


/* ### button ### */
a.button { padding: 10px 32px; position: relative; display: inline-flex; align-items: baseline; justify-content: center; min-height: 48px; font-family: var(--font-family-base), sans-serif; font-size: var(--font-size-base); font-weight: 500; text-decoration: var(--line-decoration); color: var(--color-white); border: 0; border-radius: 75px; background-color: var(--color-primary); transition: var(--duration); cursor: pointer; }
button.button { padding: 10px 20px; position: relative; min-height: 48px; font-family: var(--font-family-base), sans-serif; font-size: var(--font-size-base); font-weight: 500; text-decoration: var(--line-decoration); color: var(--color-white); border: 0; border-radius: 75px; background-color: var(--color-primary); transition: var(--duration); cursor: pointer; line-height: unset!important; }
.button.button-arrow:after { margin-left: 10px; display: inline-block; font-family: var(--font-family-icon), sans-serif; font-size: 9px; vertical-align: middle; content: '\e901'; }
.button.button-secondary { background-color: var(--color-secondary); }
.button.button-white { color: var(--color-vintage); background-color: var(--color-white); }
.button.button-outline { color: var(--color-primary); border: solid 1px var(--color-primary); background-color: transparent; }
.button.button-outline-white { color: var(--color-white); border: solid 1px var(--color-white); background-color: transparent; }
.button.button-outline:focus,
.button.button-outline:hover { color: var(--color-white); background-color: var(--color-primary); }
.button.button-outline-white:focus,
.button.button-outline-white:hover { color: var(--color-info); background-color: var(--color-white); }
.button.button-black { font-weight: 700; text-transform: uppercase; background-color: var(--color-info); }
.button.button-black:focus,
.button.button-black:hover { background-color: var(--color-primary); }
.button:focus,
.button:hover { text-decoration: none; color: var(--color-white); background-color: var(--color-secondary); }
.button.button-submit { cursor: pointer; }
.button.button-secondary:focus,
.button.button-secondary:hover { color: var(--color-white); background-color: var(--color-primary); }
.button.button-white:focus,
.button.button-white:hover { color: var(--color-white); background-color: var(--color-primary); }

/* ### form-check ### */
.form-check { padding-left: 34px; position: relative; display: block; font-size: 14px; font-weight: 500; cursor: pointer; }
.form-check input { display: none; }
.form-check .checkmark:after { position: absolute; top: 0; left: 0; width: 22px; height: 22px; border: solid 1px rgba(41, 25, 25, 0.16); border-radius: 75px; background-color: var(--color-white); content: ''; }
.form-check .checkmark:before { position: absolute; top: 5px; left: 9px; z-index: 1; display: none; width: 4px; height: 10px; border: solid var(--color-white); border-width: 0 2px 2px 0; transform: rotate(45deg); content: ''; }
.form-check input:checked ~ .checkmark:after { background-color: var(--color-blue); }
.form-check input:checked ~ .checkmark:before { display: block; }
.form-check a { text-decoration: underline; color: var(--color-grey-dark); }
.form-check a:focus,
.form-check a:hover { text-decoration: var(--line-decoration); color: var(--color-vintage); }


/* ### global classes ### */
.clear { visibility: hidden; clear: both; height: 0; line-height: 0; }
.centered,
.centered-lg { padding-right: 80px; padding-left: 80px; }
.sr-only {position: absolute;width: 1px;height: 1px;padding: 0;margin: -1px;overflow: hidden;clip: rect(0, 0, 0, 0);white-space: nowrap;border: 0;}


/* ==============================================
   Intro tekst 2 kolommen met CTA blok
   ============================================== */

/* ### text-block ### */
.text-block { margin-bottom: 54px; }
.text-block-left,
.text-block-right { width: 100%; }
.text-block-bottom { width: 100%; }

/* ### button ### */
.button { padding: 10px 32px; position: relative; display: inline-flex; align-items: baseline; justify-content: center; min-height: 48px; font-family: var(--font-family-base), sans-serif; font-size: var(--font-size-base); font-weight: 500; line-height: normal; text-decoration: var(--line-decoration); color: var(--color-white); border: 0; border-radius: 75px; background-color: var(--color-primary); transition: var(--duration); cursor: pointer; }
.button.button-arrow:after { margin-left: 10px; display: inline-block; font-family: var(--font-family-icon), sans-serif; font-size: 9px; vertical-align: middle; content: '\e901'; }
.button:focus,
.button:hover { text-decoration: none; color: var(--color-white); background-color: var(--color-secondary); }


/* ==============================================
   Intro tekst blok (2 kolommen ongelijk)
   ============================================== */

.text-block { margin-bottom: 54px; }
.text-block-left,
.text-block-right { width: 100%; }


/* ==============================================
   SEO blok
   ============================================== */

.seo { margin-bottom: 50px; display: grid; grid-template-columns: 1fr; gap: 40px; }
.seo-intro img { width: 100%; height: auto; border-radius: var(--border-radius); margin: 20px 0; display: block; }
.seo-text h2 { margin-bottom: 16px; }
.seo-text p { margin-bottom: 16px; }
.seo-text p:last-child { margin-bottom: 0; }


/* ==============================================
   Simpel tekst kader blok
   ============================================== */

/* ### specialist ### */
.specialist { margin-bottom: 50px; }
.specialist-block { padding: 30px; border: solid 1px rgba(0, 0, 0, 0.1); border-radius: var(--border-radius); }
.specialist-block p { margin-bottom: 15px; }
.specialist-block p:first-of-type { font-weight: 500; }
.specialist-block ul { margin-bottom: 20px; }
.specialist-block *:last-child { margin-bottom: 0; }


/* ==============================================
   Social deel blok
   ============================================== */

.share { margin-bottom: 40px; }
.share ul { display: flex; flex-wrap: wrap; justify-content: center; }
.share li { font-weight: 500; }
.share li:not(:last-of-type):after { margin: 0 11px; display: inline-block; content: '|'; }
.share li:first-of-type { width: 100%; text-align: center; }
.share li:first-of-type:after { display: none; }
.share li a { color: var(--color-primary); }
.share li a:focus,
.share li a:hover { text-decoration: none; color: var(--color-info); }


/* ==============================================
   USP icon titel tekst blok
   ============================================== */

.track { margin-bottom: 56px; }
.track h2 { margin-bottom: 28px; text-align: center; }
.track-column { display: grid; grid-template-columns: repeat(1, 1fr); column-gap: 40px; row-gap: 40px; }
.track-info { text-align: center; }
.track-info img { margin: 0 auto 20px; width: 50px; }
.track-info strong { margin-bottom: 13px; display: block; font-size: 20px; font-weight: 500; }
.track-info p:last-of-type { margin-bottom: 0; }


/* ==============================================
   Certificaat blok
   ============================================== */

/* ### certificate ### */
.certificate { margin-bottom: 50px; }
.certificate h2 { margin-bottom: 30px; text-align: center; }
.certificate-column { display: grid; grid-template-columns: repeat(1, 1fr); column-gap: 30px; row-gap: 40px; }

/* ### card-certificate ### */
.card-certificate { text-align: center; }
.card-certificate-image { margin-bottom: 10px; display: flex; justify-content: center; }
.card-certificate-text { line-height: 1.6; }
.card-certificate-text h4 { margin-bottom: 10px; }
.card-certificate-text p:last-of-type { margin-bottom: 0; }


/* ==============================================
   Header CSS — gefilterd uit main.css
   Bevat: .wrapper, .header, .usp, .mobile-menu
   ============================================== */

/* ### wrapper ### */
.wrapper { padding-top: 114px; position: relative; display: block; width: 100%; min-height: 100%; overflow-x: clip; }

/* ### header ### */
.header { position: fixed; top: 0; left: 0; z-index: 12; width: 100%; }
.header-holder { padding: 15px 20px; position: relative; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; background-color: var(--color-white); }
.header-logo { width: 170px; }
.header-logo img { width: 100%; }
.header-right { display: none; flex-wrap: wrap; align-items: center; }
.header-en { display: flex; }
.header-en img { margin-right: 6px; }
.header-en-items { position: relative; }
.header-flag { display: flex; flex-wrap: wrap; align-items: center; font-family: var(--font-size-base), sans-serif; font-size: 18px; font-weight: 500; text-transform: uppercase; color: var(--color-vintage); border: 0; background-color: transparent; cursor: pointer; }
.header-flag i { margin-left: 5px; font-size: 6px; transition: var(--duration); }
.header-flag.is-active i { transform: rotate(-180deg); }
.header-language { padding-bottom: 5px; position: absolute; top: 100%; left: -5px; opacity: 0; visibility: hidden; border-radius: 0 0 5px 5px; background-color: var(--color-white); transition: var(--duration); }
.header-language li { padding: 5px 5px 1px; line-height: normal; }
.header-language li a { font-size: 18px; font-weight: 500; text-transform: uppercase; text-decoration: var(--line-decoration); color: var(--color-vintage); }
.header-language li a:hover { color: var(--color-info); }
.header .button { padding: 10px 22px; display: none; }
.header.sticky-up .usp { margin-top: -48px; }
.header.sticky-up .header-menu li { padding-top: 15px; padding-bottom: 15px; }
.header.sticky-up .header-menu li li { padding: 6px 20px; }
.header-en-items:hover .header-language,
.header-en-items:focus .header-language { opacity: 1; visibility: visible; }

.header-en-mobile a{ color: #ffffff; }
.header-en-mobile img{ width: 20px; height: 20px; object-fit:contain; }
.header-en-mobile{ display: flex; align-items: center; justify-content: center;margin-top: auto;position: absolute;bottom: 0;width: 100%;left: 0; }
/* ### header-menu ### */
.header-menu { display: none; }
.header-menu ul { display: flex; flex-wrap: wrap; }
.header-menu li { margin: 0 19px; padding: 29px 0 30px; position: relative; transition: var(--duration); }
.header-menu li a { font-size: 18px; font-weight: 500; text-decoration: var(--line-decoration); color: var(--color-vintage); transition: var(--duration); }
.header-menu li a:focus,
.header-menu li a:hover { color: var(--color-black); }
.header-menu li.dropdown > a:after { margin-top: -2px; margin-left: 4px; display: inline-block; font-family: var(--font-family-icon), sans-serif; font-size: 6px; vertical-align: middle; content: '\e900'; }
.header-menu li ul { padding: 5px 0; position: absolute; top: calc(100% - 15px); left: 0; display: block; opacity: 0; visibility: hidden; width: max-content; border-radius: 10px; background-color: var(--color-white); transition: var(--duration); box-shadow: 0 3px 10px rgb(0, 0, 0, 0.16); }
.header-menu li:hover ul { opacity: 1; visibility: visible; }
.header-menu li li { margin: 0; padding: 6px 20px; position: relative; display: block; }
.header-menu li li a { display: block; color: var(--color-info); }
.header-menu li li a:focus,
.header-menu li li a:hover { font-weight: 700; }
.header-menu li li:after { display: none; }
.header-menu li li ul { top: 0; left: 100%; display: none; width: max-content; }
.header-menu li li:hover ul { display: block; }

/* ### usp ### */
.usp { padding-top: 5px; padding-bottom: 5px; font-size: 14px; font-weight: 500; color: var(--color-white); background-color: var(--color-vintage); transition: var(--duration); }
.usp-block { position: relative; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; width: 100%; min-height: 38px; }
.usp-text { display: flex; align-items: center; justify-content: center; }
.usp-text img { margin-right: 6px; }
.usp-text p { white-space: nowrap; text-overflow: ellipsis; overflow: hidden; }
.usp-text p:last-of-type { margin-bottom: 0; }
.usp-info { display: none; align-items: center; text-decoration: var(--duration); color: var(--color-white); }
.usp-info i { margin-right: 6px; font-size: 13px; }
.usp-info:hover span { text-decoration: underline; }
.usp-info:focus,
.usp-info:hover { text-decoration: none; color: var(--color-white); }
.usp .swiper { margin-left: auto; width: 100%; overflow: hidden; }

/* ### Mobile Menu ### */
.mobile-menu { position: absolute; top: 50%; right: 0; }
.mobile-menu .hamburger { position: absolute; top: 50%; right: 15px; display: flex; align-items: center; color: var(--color-primary); transform: translateY(-50%); transition: all 0.3s ease-in-out; cursor: pointer; }
.mobile-menu label { margin-bottom: 0; }
.m-menu__checkbox { display: none !important; }
.m-menu__toggle { margin-left: -8px; padding-top: 5px; cursor: pointer; }
.m-menu { position: fixed; top: 0; right: -768px; z-index: 2; opacity: 0; visibility: hidden; width: calc(100vw - 30px); max-width: 768px; height: 100vh; background-color: var(--color-vintage); -o-transform: translate3d(-450px, 0, 0); transform: translate3d(768px, 0, 0); transition: transform 0.35s; overflow: hidden; }
.m-menu__overlay { position: absolute; top: 0; bottom: 0; z-index: 1; display: none; width: 100%; background-color: rgba(103, 103, 103, 0.5); }
.m-menu__header { padding: 0 16px; display: flex; align-items: center; height: 50px; border-bottom: 1px solid var(--color-white); }
.m-menu__header span { width: 100%; font-size: 20px; text-align: center; color: var(--color-white); }
.m-menu .m-menu { transform: translate3d(768px, 0, 0); }
.header-submenu { padding: 5px 0; border-bottom: 1px solid var(--color-white); }
.m-menu ul { overflow-y: auto; }
.m-menu ul li { margin-right: 0 !important; position: relative; display: block !important; }
.m-menu ul li ul { display: block !important; }
.m-menu ul li a { font-size: 16px; font-weight: 500; }
.m-menu ul li a:focus,
.m-menu ul li a:hover { text-decoration: none !important; }
.m-menu ul li a,
nav .m-menu ul li label { padding: 0 15px; position: relative; display: block; line-height: 47px; text-align: left; text-decoration: none; color: var(--color-white); border-bottom: 1px solid var(--color-white); cursor: pointer; }
nav .m-menu ul li label { border-bottom: 0; }
.m-menu .btn-last { padding: 15px 10px; border-bottom: 1px solid var(--color-white); }
.m-menu .button { display: flex; align-items: center; justify-content: center; color: var(--color-white); border-bottom: none; }
.m-menu .button:focus,
.m-menu .button:hover { background-color: var(--color-vintage); }
.m-menu .button.button-arrow:after { height: 42px; }
.m-menu ul li label.a-label__chevron { padding: 0 25px; position: absolute; top: 0; right: 0; display: inline-block; height: 48px; border-left: solid 1px var(--color-white); }
.m-menu ul li label.a-label__chevron:after { padding: 5px; position: absolute; top: 19px; right: 20px; display: inline-block; width: 0; height: 0; border-color: var(--color-white); border-style: solid; border-width: 1px 1px 0 0; transform: rotate(45deg); content: ''; }
.m-menu ul li .-invisible { border-bottom: 0; }
.m-menu .m-menu label.m-menu__toggle { margin: 0 !important; padding: 0 0 0 10px; display: flex; border-bottom: 0; }
.m-menu__checkbox:checked ~ .m-menu__overlay { display: block; }
.m-menu__checkbox:checked ~ .m-menu { right: 0; opacity: 1; visibility: visible; transform: translate3d(0, 0, 0); }

.m-menu .btn-last a:after{ padding-top: 15px; }

/* ==============================================
   Footer CSS — gefilterd uit main.css
   Bevat: .footer en alle sub-elementen
   ============================================== */

/* ### footer ### */
.footer { padding-top: 21px; padding-bottom: 20px; font-size: 14px; font-weight: 400; color: var(--color-grey-dark); background-color: var(--color-daisy); }
.footer-partners { margin-bottom: 40px; padding-bottom: 19px; display: flex; flex-wrap: wrap; gap: 20px; align-items: center; justify-content: center; border-bottom: solid 1px rgba(41, 25, 25, 0.1); }
.footer ul { list-style: none; }
.footer-top { margin-bottom: 30px; padding-bottom: 30px; display: flex; flex-wrap: wrap; column-gap: 20px; border-bottom: solid 1px rgba(41, 25, 25, 0.1); }
.footer-top .footer-title { padding: 0; }
.footer-top .footer-title:after { display: none; }
.footer-title { margin-bottom: 7px; padding: 10px 40px 10px 15px; position: relative; font-size: 16px; font-weight: 500; }
.footer-title:after { position: absolute; top: 52%; right: 10px; font-family: var(--font-family-icon), sans-serif; font-size: 10px; transform: translateY(-50%); transition: var(--duration); content: '\e900'; }
.footer-title.active:after { transform: translateY(-50%) rotate(-180deg); }
.footer-info { margin-bottom: 25px; width: 100%; }
.footer-name { display: flex; align-items: center; font-size: 20px; font-weight: 500; }
.footer-name i { margin-right: 6px; font-size: 25px; }
.footer-email,
.footer-time { margin-bottom: 1px; padding-left: 32px; font-weight: 300; }
.footer-email a { font-weight: 500; text-decoration: var(--line-decoration); color: var(--color-grey-dark); }
.footer-email a:focus,
.footer-email a:hover { text-decoration: underline; }
.footer-subscribe { margin-bottom: 30px; width: 100%; }
.footer-social-media { width: 100%; }
.footer-social-media .footer-title { margin-bottom: 18px; }
.footer-social-media ul { display: flex; align-items: center; }
.footer-social-media li a { display: block; font-size: 25px; line-height: 1; text-decoration: none; color: var(--color-vintage); }
.footer-social-media li a:focus,
.footer-social-media li a:hover { color: var(--color-secondary); }
.footer-social-media li:not(:last-child) { margin-right: 20px; }
.footer-column { padding-bottom: 20px; border-bottom: solid 1px rgba(41, 25, 25, 0.1); }
.footer-menu .footer-title { margin-bottom: 3px; }
.footer-menu { margin-bottom: 10px; border: 1px solid var(--color-vintage); border-radius: 10px; }
.footer-menu li a { font-size: 16px; font-weight: 300; text-decoration: var(--line-decoration); color: var(--color-info); }
.footer-menu li a:focus,
.footer-menu li a:hover { text-decoration: underline; color: var(--color-vintage); }
.footer-menu li:not(:last-child) { margin-bottom: 3px; }
.footer-hidden-link { padding: 0 15px; max-height: 0; overflow: hidden; transition: max-height 0.3s ease; }
.footer-hidden-link ul { padding-bottom: 21px; }
.footer-copyright { padding-top: 8px; display: flex; flex-wrap: wrap; justify-content: center; font-family: var(--font-family-roboto), sans-serif; font-weight: 300; }
.footer-copyright ul { display: flex; flex-wrap: wrap; justify-content: center; }
.footer-copyright li { position: relative; color: var(--color-grey-dark); }
.footer-copyright li a { font-size: 14px; text-decoration: var(--line-decoration); color: var(--color-grey-dark); }
.footer-copyright li a:focus,
.footer-copyright li a:hover { text-decoration: underline; color: var(--color-vintage); }
.footer-copyright li:not(:last-child):after { margin: 0 12px; display: inline-block; width: 1px; height: 12px; vertical-align: middle; background-color: var(--color-grey-dark); content: ''; }
.footer.is-alt { padding-bottom: 70px; }


.review_btn_holder { display: flex; justify-content: center; margin-bottom: 40px; }
.review_btn_holder-wrap { margin: 0 auto; max-width: 816px; }


/* ==============================================
   Hero blok
   ============================================== */

/* ### hero ### */
.hero { margin-bottom: 50px; padding-top: 60px; padding-bottom: 54px; position: relative; background-color: var(--color-info);  min-height: calc(100vh - 154px);}
.hero h1 { margin-bottom: 50px; color: var(--color-white); }
.hero-block { position: relative; z-index: 1; width: 100%; text-align: center; }
.hero-intro { position: relative; }
.hero-bg-image { position: absolute; top: 0; left: 0; opacity: 0.7; width: 100%; height: 100%; }
.hero-bg-image img { width: 100%; height: 100%; object-fit: cover; }
.hero-bottom { position: absolute; bottom: -24px; left: 0; width: 100%; }

/* ### form-travel ### */
.form-travel { padding: 14px; display: flex; flex-wrap: wrap; gap: 15px; align-items: center; width: 100%; border-radius: 26px; background-color: var(--color-daisy); }
.form-travel .form-travel-select,
.form-travel .button { width: 100%; }

/* ### card-panel ### */
.card-panel { padding: 8px 15px; display: flex; gap: 5px; align-items: center; justify-content: space-between; background-color: var(--color-white); box-shadow: 0 8px 8px rgba(0, 0, 0, 0.16); }
.card-panel span { font-weight: 500; }
.card-panel a { color: var(--color-info); }
.card-panel a:focus,
.card-panel a:hover { text-decoration: var(--line-decoration); }
.card-panel ul { display: flex; }
.card-panel li { font-size: 15px; line-height: normal; color: var(--color-yellow); }
.card-panel li:not(:last-child) { margin-right: 1px; }

/* ==============================================
   Kleine banner blok
   ============================================== */

/* ### hero ### */
.hero { margin-bottom: 50px; padding-top: 60px; padding-bottom: 54px; position: relative; background-color: var(--color-info); }
.hero h1 { margin-bottom: 50px; color: var(--color-white); }
.hero-block { position: relative; z-index: 1; width: 100%; text-align: center; }
.hero-intro { position: relative; }
.hero-bg-image { position: absolute; top: 0; left: 0; opacity: 0.7; width: 100%; height: 100%; }
.hero-bg-image img { width: 100%; height: 100%; object-fit: cover; }
.hero-bottom { position: absolute; bottom: -24px; left: 0; width: 100%; }
.hero.is-alt{min-height: calc(100vh - 154px);}
.hero.is-alt h1 { margin-bottom: 0; }
.hero.is-alt .hero-intro { display: flex; flex-direction: column; }
.hero .breadcrumbs { position: absolute; bottom: 30px; left: 50%; transform: translateX(-50%); }

/* ### breadcrumbs ### */
.breadcrumbs { margin-top: auto; width: 100%; }
.breadcrumbs ul { display: flex; flex-wrap: wrap; justify-content: center; }
.breadcrumbs li { position: relative; font-size: 12px; color: var(--color-white); }
.breadcrumbs li a { color: var(--color-white); }
.breadcrumbs li:not(:last-child):after { margin: 0 10px; display: inline-block; width: 1px; height: 10px; vertical-align: middle; background-color: var(--color-white); content: ''; }
.breadcrumbs li a:hover { text-decoration: var(--line-decoration); }
.breadcrumbs .rank-math-breadcrumb { text-align: center; }
.breadcrumbs .rank-math-breadcrumb p { display: flex; flex-wrap: wrap; justify-content: center; margin-bottom: 0; font-size: 12px; color: var(--color-white); }
.breadcrumbs .rank-math-breadcrumb a { font-size: 12px; color: var(--color-white); }
.breadcrumbs .rank-math-breadcrumb a:hover { text-decoration: underline; color: var(--color-white); }
.breadcrumbs .rank-math-breadcrumb .separator { margin: 0 5px; color: var(--color-white); }
.breadcrumbs .rank-math-breadcrumb .last { color: var(--color-white); }

/* ### card-panel ### */
.card-panel { padding: 8px 15px; display: flex; gap: 5px; align-items: center; justify-content: space-between; background-color: var(--color-white); box-shadow: 0 8px 8px rgba(0, 0, 0, 0.16); }
.card-panel span { font-weight: 500; }
.card-panel a { color: var(--color-info); }
.card-panel a:focus,
.card-panel a:hover { text-decoration: var(--line-decoration); }
.card-panel ul { display: flex; }
.card-panel li { font-size: 15px; line-height: normal; color: var(--color-yellow); }
.card-panel li:not(:last-child) { margin-right: 1px; }


/* ==============================================
   Blog banner blok
   ============================================== */

/* ### hero ### */
.hero { margin-bottom: 50px; padding-top: 60px; padding-bottom: 54px; position: relative; background-color: var(--color-info); }
.hero h1 { margin-bottom: 50px; color: var(--color-white); }
.hero-block { position: relative; z-index: 1; width: 100%; text-align: center; }
.hero-intro { position: relative; }
.hero-bg-image { position: absolute; top: 0; left: 0; opacity: 0.7; width: 100%; height: 100%; }
.hero-bg-image img { width: 100%; height: 100%; object-fit: cover; }
.hero-bottom { position: absolute; bottom: -24px; left: 0; width: 100%; }
.hero.is-alt { min-height: 360px; }
.hero.is-alt h1 { margin-bottom: 0; }
.hero.is-alt .hero-intro { display: flex; flex-direction: column; }
.hero .breadcrumbs { position: absolute; bottom: 30px; left: 50%; transform: translateX(-50%); }

/* ### blog-banner titel ### */
.blog-banner-titel { font-size: 28px; font-weight: 300; line-height: 1.2; margin-bottom: 0; }

/* ### breadcrumbs ### */
.breadcrumbs { margin-top: auto; width: 100%; }
.breadcrumbs ul { display: flex; flex-wrap: wrap; justify-content: center; }
.breadcrumbs li { position: relative; font-size: 12px; color: var(--color-white); }
.breadcrumbs li a { color: var(--color-white); }
.breadcrumbs li:not(:last-child):after { margin: 0 10px; display: inline-block; width: 1px; height: 10px; vertical-align: middle; background-color: var(--color-white); content: ''; }
.breadcrumbs li a:hover { text-decoration: var(--line-decoration); }
.breadcrumbs .rank-math-breadcrumb { text-align: center; }
.breadcrumbs .rank-math-breadcrumb p { display: flex; flex-wrap: wrap; justify-content: center; margin-bottom: 0; font-size: 12px; color: var(--color-white); }
.breadcrumbs .rank-math-breadcrumb a { font-size: 12px; color: var(--color-white); }
.breadcrumbs .rank-math-breadcrumb a:hover { text-decoration: underline; color: var(--color-white); }
.breadcrumbs .rank-math-breadcrumb .separator { margin: 0 5px; color: var(--color-white); }
.breadcrumbs .rank-math-breadcrumb .last { color: var(--color-white); }

/* ### card-panel ### */
.card-panel { padding: 8px 15px; display: flex; gap: 5px; align-items: center; justify-content: space-between; background-color: var(--color-white); box-shadow: 0 8px 8px rgba(0, 0, 0, 0.16); }
.card-panel span { font-weight: 500; }
.card-panel a { color: var(--color-info); }
.card-panel a:focus,
.card-panel a:hover { text-decoration: var(--line-decoration); }
.card-panel ul { display: flex; }
.card-panel li { font-size: 15px; line-height: normal; color: var(--color-yellow); }
.card-panel li:not(:last-child) { margin-right: 1px; }


/* ==============================================
   Bestemmingen blok
   ============================================== */

.place { margin-bottom: 50px; position: relative; }
.place h2 { margin-bottom: 32px; }
.place-block { position: relative; }
.place-title { margin-bottom: 20px; justify-content: space-between; }
.place-column { margin-bottom: 40px; display: grid; grid-template-columns: repeat(1, 1fr); column-gap: 16px; row-gap: 16px; }
.place-button { display: flex; justify-content: center; }

/* ### card-place ### */
.card-place { position: relative; display: block; min-height: 296px; text-decoration: var(--line-decoration); color: var(--color-white); border-radius: var(--border-radius); overflow: hidden; }
.card-place-photo { position: relative; width: 100%; height: 100%; }
.card-place-photo:after { position: absolute; bottom: 0; left: 0; width: 100%; height: 70%; background: linear-gradient(to top, rgba(51, 0, 0, 0.99) 20%, rgba(51, 0, 0, 0) 100%); content: ''; mix-blend-mode: luminosity; }
.card-place-photo img { width: 100%; height: 100%; object-fit: cover; transition: var(--duration); }
.card-place-info { padding: 23px 20px 30px; position: absolute; top: 0; display: flex; flex-direction: column; width: 100%; height: 100%; text-align: center; }
.card-place-lead { margin-bottom: 20px; }
.card-place-info span { padding: 0 20px; display: inline-block; font-size: 12px; font-weight: 700; color: var(--color-white); border-radius: 55px; background-color: var(--color-secondary); }
.card-place-info strong { margin-bottom: 25px; display: block; font-size: 20px; font-weight: 500; line-height: normal; }
.card-place-bottom { margin-top: auto; }
.card-place:focus img,
.card-place:hover img { transform: scale(1.04); }
.card-place:focus .button,
.card-place:hover .button { background-color: var(--color-secondary); }
.card-place:focus,
.card-place:hover { color: var(--color-white); }


/* ==============================================
   Reis thema's blok
   ============================================== */

.place { margin-bottom: 50px; position: relative; }
.place h2 { margin-bottom: 32px; }
.place-block { position: relative; }
.place-title { margin-bottom: 20px; justify-content: space-between; }
.place-column { margin-bottom: 40px; display: grid; grid-template-columns: repeat(1, 1fr); column-gap: 16px; row-gap: 16px; }
.place-button { display: flex; justify-content: center; }

/* ### card-place ### */
.card-place { position: relative; display: block; min-height: 296px; text-decoration: var(--line-decoration); color: var(--color-white); border-radius: var(--border-radius); overflow: hidden; }
.card-place-photo { position: relative; width: 100%; height: 100%; }
.card-place-photo:after { position: absolute; bottom: 0; left: 0; width: 100%; height: 70%; background: linear-gradient(to top, rgba(51, 0, 0, 0.99) 20%, rgba(51, 0, 0, 0) 100%); content: ''; mix-blend-mode: luminosity; }
.card-place-photo img { width: 100%; height: 100%; object-fit: cover; transition: var(--duration); }
.card-place-info { padding: 23px 20px 30px; position: absolute; top: 0; display: flex; flex-direction: column; width: 100%; height: 100%; text-align: center; }
.card-place-lead { margin-bottom: 20px; }
.card-place-info span { padding: 0 20px 3px; display: inline-block; font-size: 12px; font-weight: 700; color: var(--color-white); border-radius: 55px; background-color: var(--color-secondary); }
.card-place-info strong { margin-bottom: 25px; display: block; font-size: 20px; font-weight: 500; line-height: normal; }
.card-place-bottom { margin-top: auto; }
.card-place:focus img,
.card-place:hover img { transform: scale(1.04); }
.card-place:focus .button,
.card-place:hover .button { background-color: var(--color-secondary); }
.card-place:focus,
.card-place:hover { color: var(--color-white); }


/* ==============================================
   Contact blok
   ============================================== */

/* ### contact ### */
.contact { margin-bottom: 50px; }
.contact-left { margin-bottom: 30px; }

/* ### card-form GF reset ### */
.card-form { padding: 20px; border: solid 1px rgba(0, 0, 0, 0.1); border-radius: var(--border-radius); }
.card-form .gform_wrapper { background: transparent !important; border: none !important; padding: 0 !important; margin: 0 !important; }
.card-form .gfield_label { display: none !important; }
.card-form .gfield_required { display: none !important; }
.card-form .gform_footer { display: none !important; }
.card-form .ginput_container { margin: 0 !important; }
.card-form .gform_fields { display: flex !important; flex-wrap: wrap !important; gap: 10px !important; margin: 0 !important; padding: 0 !important; list-style: none !important; align-items: flex-start !important; }
.card-form .gfield { padding: 0 !important; margin: 0 !important; width: 100% !important; }
.card-form .gfield--width-half { width: 100% !important; }
.card-form .gfield--width-full { width: 100% !important; }
.card-form .gfield--type-consent { order: 10; }
.card-form .gfield--type-submit { order: 11; width: 100% !important; }
.card-form .ginput_container_text input,
.card-form .ginput_container_email input,
.card-form .ginput_container_phone input { margin-bottom: 0 !important; padding-left: 20px!important; }
.card-form .ginput_container_textarea textarea { height: 130px; border-radius: 20px; padding: 20px!important; }
.card-form .gform_wrapper .gform-button,
.card-form .gform_wrapper input[type="submit"] { padding: 10px 32px !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; min-height: 48px !important; font-family: var(--font-family-base), sans-serif !important; font-size: var(--font-size-base) !important; font-weight: 500 !important; line-height: normal !important; color: var(--color-white) !important; border: 0 !important; border-radius: 75px !important; background-color: var(--color-secondary) !important; box-shadow: none !important; transition: var(--duration) !important; cursor: pointer !important; white-space: nowrap !important; }
.card-form .gform_wrapper .gform-button:hover,
.card-form .gform_wrapper input[type="submit"]:hover { background-color: var(--color-primary) !important; color: var(--color-white) !important; }
.card-form .gform_wrapper .gform-button::after,
.card-form .gform_wrapper input[type="submit"]::after { margin-left: 10px; display: inline-block; font-family: var(--font-family-icon), sans-serif; font-size: 9px; vertical-align: middle; content: '\e901'; }

/* Consent styling */
.card-form .ginput_container_consent { display: flex; align-items: flex-start; }
.card-form .ginput_container_consent input[type="checkbox"] { display: none !important; }
.card-form .gfield_consent_label { padding-left: 30px !important; position: relative !important; display: block !important; font-size: 14px !important; font-weight: 500 !important; color: var(--color-info) !important; cursor: pointer !important; margin-bottom: 10px !important; line-height: 1.5 !important; }
.card-form .gfield_consent_label::after { position: absolute; top: 0; left: 0; width: 22px; height: 22px; border: solid 1px rgba(41, 25, 25, 0.16); border-radius: 75px; background-color: var(--color-white); content: ''; }
.card-form .gfield_consent_label::before { position: absolute; top: 5px; left: 9px; z-index: 1; display: none; width: 4px; height: 10px; border: solid var(--color-white); border-width: 0 2px 2px 0; transform: rotate(45deg); content: ''; }
.card-form .ginput_container_consent input[type="checkbox"]:checked + .gfield_consent_label::after { background-color: var(--color-blue); }
.card-form .ginput_container_consent input[type="checkbox"]:checked + .gfield_consent_label::before { display: block; }
.card-form .gfield_consent_label a { text-decoration: underline; color: var(--color-grey-dark); }
.card-form .gfield_consent_label a:hover { text-decoration: none; color: var(--color-vintage); }


/* Validatie */
.card-form .gfield_error input,
.card-form .gfield_error textarea { border-color: red !important; }
.card-form .gform_validation_errors,
.card-form .validation_message { display: none !important; }
.card-form .gform_confirmation_message { font-size: 14px; font-weight: 500; color: var(--color-green); }

/* ### card-help GF reset ### */
.card-help { border: solid 1px rgba(0, 0, 0, 0.1); border-radius: var(--border-radius); overflow: hidden; }
.card-help-photo { width: 100%; height: 200px; }
.card-help-photo img { width: 100%; height: 100%; object-fit: cover; }
.card-help-info { padding: 20px; }
.card-help-info strong { margin-bottom: 15px; display: block; font-size: 18px; font-weight: 500; line-height: normal; }
.card-help p { margin-bottom: 13px; }
.card-help ul { display: flex; flex-wrap: wrap; }
.card-help li a { font-size: 28px; text-decoration: var(--line-decoration); color: var(--color-vintage); }
.card-help li a:hover { color: var(--color-primary); }
.card-help li:not(:last-child) { margin-right: 20px; }
.card-help .gform_wrapper { background: transparent !important; border: none !important; padding: 0 !important; margin: 0 0 15px !important; }
.card-help .gfield_label { display: none !important; }
.card-help .gfield_required { display: none !important; }
.card-help .gform_footer { display: none !important; }
.card-help .ginput_container { margin: 0 !important; }
.card-help .gform_fields { margin: 0 !important; padding: 0 !important; list-style: none !important; }
.card-help  input[type=tel]{ padding-left: 20px!important; }
.card-help .gfield { padding: 0 !important; margin-bottom: 10px !important; }
.card-help .gform_wrapper .gform-button,
.card-help .gform_wrapper input[type="submit"] { padding: 10px 32px !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; width: 100% !important; min-height: 48px !important; font-family: var(--font-family-base), sans-serif !important; font-size: var(--font-size-base) !important; font-weight: 500 !important; line-height: normal !important; color: var(--color-white) !important; border: 0 !important; border-radius: 75px !important; background-color: var(--color-primary) !important; box-shadow: none !important; transition: var(--duration) !important; cursor: pointer !important; }
.card-help .gform_wrapper .gform-button:hover,
.card-help .gform_wrapper input[type="submit"]:hover { background-color: var(--color-secondary) !important; }
.card-help .gfield_error input { border-color: red !important; }
.card-help .gform_validation_errors,
.card-help .validation_message { display: none !important; }
.card-help .gform_confirmation_message { font-size: 14px; font-weight: 500; color: var(--color-green); }

/* ### button ### */
.button { padding: 10px 32px; position: relative; display: inline-flex; align-items: baseline; justify-content: center; min-height: 48px; font-family: var(--font-family-base), sans-serif; font-size: var(--font-size-base); font-weight: 500; text-decoration: var(--line-decoration); color: var(--color-white); border: 0; border-radius: 75px; background-color: var(--color-primary); transition: var(--duration); cursor: pointer; }
.button.button-arrow:after { margin-left: 10px; display: inline-block; font-family: var(--font-family-icon), sans-serif; font-size: 9px; vertical-align: middle; content: '\e901'; }
.button.button-secondary { background-color: var(--color-secondary); }
.button.button-secondary:focus,
.button.button-secondary:hover { color: var(--color-white); background-color: var(--color-primary); }
.button:focus,
.button:hover { text-decoration: none; color: var(--color-white); background-color: var(--color-secondary); }


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

.description { margin-bottom: 35px; padding-top: 40px; }
.description-wrap { margin: 0 auto; max-width: 816px; }
.description-bold { font-weight: 500; }
.description p a { color: var(--color-info); }
.description p a:focus,
.description p a:hover { text-decoration: none; }
.description ul { margin-bottom: 20px; }
.description .button { margin-bottom: 30px; }
.description-collage img { margin-bottom: 16px; width: 100%; border-radius: var(--border-radius); overflow: hidden; }


/* ==============================================
   CTA blok afbeelding tekst
   ============================================== */

.over { margin-bottom: 50px; }
.over h2 { margin-bottom: 28px; max-width: 640px;}
.over-column { display: flex; flex-wrap: wrap; align-items: center; }
.over-photo { margin-bottom: 30px; width: 100%; }
.over-photo img { width: 100%; border-radius: var(--border-radius); overflow: hidden; }
.over-intro { width: 100%; }
.over-intro p:first-of-type { font-weight: 500; }
.over-intro ul { margin-bottom: 20px; }


/* ==============================================
   CTA centered blok
   ============================================== */

.cta h2 { color: var(--color-white); }
.cta-block { border-radius: var(--border-radius); background-color: var(--color-vintage); overflow: hidden; }
.cta-photo { width: 100%; }
.cta-intro { padding: 35px 20px; text-align: center; color: var(--color-white); }
.cta-photo img { width: 100%; height: 100%; object-fit: cover; }
.cta .button { margin: 0 5px; }
.cta .button:not(:last-child) { margin-bottom: 15px; }


/* ==============================================
   E-book downloaden blok
   ============================================== */

/* ### book ### */
.book { margin-bottom: 50px; }
.book h2 { margin-bottom: 25px; }
.book-intro { padding-top: 30px; padding-bottom: 30px; width: 100%; }
.book-photo-left,
.book-photo-right { width: 100%; overflow: hidden; border-radius: var(--border-radius) var(--border-radius) 0 0; }
.book-photo-right { border-radius: 0 0 var(--border-radius) var(--border-radius); }
.book-photo-left img,
.book-photo-right img { width: 100%; height: 100%; object-fit: cover; }

/* ### button ### */
.button { padding: 10px 32px; position: relative;  min-height: 48px; font-family: var(--font-family-base), sans-serif; font-size: var(--font-size-base); font-weight: 500; text-decoration: var(--line-decoration); color: var(--color-white); border: 0; border-radius: 75px; background-color: var(--color-primary); transition: var(--duration); cursor: pointer; }
.button.button-arrow:after { margin-left: 10px; display: inline-block; font-family: var(--font-family-icon), sans-serif; font-size: 9px; vertical-align: middle; content: '\e901'; }
.button.button-secondary { background-color: var(--color-secondary); }
.button.button-submit { cursor: pointer; }
.button.button-secondary:focus,
.button.button-secondary:hover { color: var(--color-white); background-color: var(--color-primary); }
.button:focus,
.button:hover { text-decoration: none; color: var(--color-white); background-color: var(--color-secondary); }

/* ### card-subscribe ### */
.card-subscribe .button-submit { margin-bottom: 15px; width: 100%; }
.card-subscribe .gform_wrapper { background: transparent !important; border: none !important; padding: 0 !important; margin: 0 !important; }
.card-subscribe .gfield_label { display: none !important; }
.card-subscribe .gfield_required { display: none !important; }
.card-subscribe .gform_footer { display: none !important; }
.card-subscribe .ginput_container { margin: 0 !important; }
.card-subscribe .gform_fields { display: flex; flex-wrap: wrap; align-items: center; margin: 0 !important; padding: 0 !important; list-style: none; }
.card-subscribe .gfield--type-text { order: 1; width: 100%; padding: 0 !important; margin-bottom: 10px !important; }
.card-subscribe .gfield--type-email { order: 2; width: 100%; padding: 0 !important; margin-bottom: 10px !important; }
.card-subscribe .gfield--type-submit { order: 3; width: 100%; padding: 0 !important; margin-bottom: 10px !important; }
.card-subscribe .gfield--type-consent { order: 4; width: 100%; padding: 0 !important; margin-bottom: 0 !important; }
.card-subscribe .ginput_container_text input,
.card-subscribe .ginput_container_email input { padding: 8px 20px 11px !important; width: 100% !important; height: 48px !important; font-family: var(--font-family-base), sans-serif !important; font-size: var(--font-size-base) !important; font-weight: 500 !important; color: var(--color-info) !important; border: solid 1px rgba(41, 25, 25, 0.16) !important; border-radius: 75px !important; background-color: var(--color-white) !important; box-shadow: none !important; appearance: none; }
.card-subscribe .ginput_container_text input::placeholder,
.card-subscribe .ginput_container_email input::placeholder { color: var(--color-info) !important; opacity: 1; }
.card-subscribe .ginput_container_text input:focus,
.card-subscribe .ginput_container_email input:focus { outline: none !important; border-color: rgba(41, 25, 25, 0.4) !important; box-shadow: none !important; }
.card-subscribe .gform_wrapper .gform-button,
.card-subscribe .gform_wrapper input[type="submit"] { padding: 10px 32px !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; width: 100% !important; min-height: 48px !important; font-family: var(--font-family-base), sans-serif !important; font-size: var(--font-size-base) !important; font-weight: 500 !important; line-height: normal !important; color: var(--color-white) !important; border: 0 !important; border-radius: 75px !important; background-color: var(--color-secondary) !important; box-shadow: none !important; transition: var(--duration) !important; cursor: pointer !important; margin-bottom: 0 !important; white-space: nowrap !important; }
.card-subscribe .gform_wrapper .gform-button:hover,
.card-subscribe .gform_wrapper input[type="submit"]:hover { background-color: var(--color-primary) !important; color: var(--color-white) !important; }
.card-subscribe .gform_wrapper .gform-button::after,
.card-subscribe .gform_wrapper input[type="submit"]::after { margin-left: 10px; display: inline-block; font-family: var(--font-family-icon), sans-serif; font-size: 9px; vertical-align: middle; content: '\e901'; }
.card-subscribe .ginput_container_consent { display: flex; align-items: flex-start; }
.card-subscribe .ginput_container_consent input[type="checkbox"] { display: none !important; }
.card-subscribe .gfield_consent_label { padding-left: 30px !important; position: relative !important; display: block !important; font-size: 12px !important; font-weight: 300 !important; color: var(--color-info) !important; cursor: pointer !important; margin-bottom: 0 !important; line-height: 1.5 !important; }
.card-subscribe .gfield_consent_label::after { position: absolute; top: 0; left: 0; width: 18px; height: 18px; border: solid 1px var(--color-blue); border-radius: 5px; background-color: var(--color-white); content: ''; }
.card-subscribe .gfield_consent_label::before { position: absolute; top: 3px; left: 7px; z-index: 1; display: none; width: 4px; height: 10px; border: solid var(--color-white); border-width: 0 2px 2px 0; transform: rotate(45deg); content: ''; }
.card-subscribe .ginput_container_consent input[type="checkbox"]:checked + .gfield_consent_label::after { background-color: var(--color-blue); }
.card-subscribe .ginput_container_consent input[type="checkbox"]:checked + .gfield_consent_label::before { display: block; }
.card-subscribe .gfield_consent_label a { text-decoration: underline; color: var(--color-grey-dark); }
.card-subscribe .gfield_consent_label a:hover { text-decoration: none; color: var(--color-vintage); }
.card-subscribe .gfield_error .ginput_container_text input,
.card-subscribe .gfield_error .ginput_container_email input { border-color: red !important; }
.card-subscribe .gform_validation_errors,
.card-subscribe .validation_message { display: none !important; }
.card-subscribe .gform_confirmation_message { font-size: 14px; font-weight: 500; color: var(--color-green); }


/* ==============================================
   404 blok
   ============================================== */

/* ### error ### */
.error { margin-bottom: 50px; display: flex; flex-wrap: wrap; }
.error-intro { order: 2; }
.error-intro p { margin-bottom: 13px; }
.error-intro ul { margin-bottom: 28px; }
.error-intro li a { color: var(--color-info); }
.error-intro li a:focus,
.error-intro li a:hover { text-decoration: var(--line-decoration); }
.error-photo { margin-bottom: 25px; order: 1; width: 100%; border-radius: var(--border-radius); overflow: hidden; }
.error-photo img { width: 100%; height: 100%; object-fit: cover; }

/* ### button ### */
.button { padding: 10px 32px; position: relative; display: inline-flex; align-items: baseline; justify-content: center; min-height: 48px; font-family: var(--font-family-base), sans-serif; font-size: var(--font-size-base); font-weight: 500; line-height: normal; text-decoration: var(--line-decoration); color: var(--color-white); border: 0; border-radius: 75px; background-color: var(--color-primary); transition: var(--duration); cursor: pointer; }
.button.button-arrow:after { margin-left: 10px; display: inline-block; font-family: var(--font-family-icon), sans-serif; font-size: 9px; vertical-align: middle; content: '\e901'; }
.button:focus,
.button:hover { text-decoration: none; color: var(--color-white); background-color: var(--color-secondary); }


/* ==============================================
   Afbeelding tekst quote blok
   ============================================== */

/* ### over ### */
.over { margin-bottom: 50px; }
.over h2 { margin-bottom: 28px; }
.over-column { display: flex; flex-wrap: wrap; align-items: center; }
.over-photo { margin-bottom: 30px; width: 100%; }
.over-photo img { width: 100%; border-radius: var(--border-radius); overflow: hidden; }
.over-intro { width: 100%; }
.over-intro p:first-of-type { font-weight: 500; }
.over-intro ul { margin-bottom: 20px; }

/* ### blockquote ### */
blockquote { padding: 17px 20px 20px 70px; position: relative; font-weight: 300; font-style: italic; border: 1px solid rgba(0, 0, 0, 0.1); border-radius: var(--border-radius); }
blockquote i { position: absolute; top: 50%; left: 20px; font-size: 25px; color: rgba(41, 25, 25, 0.1); transform: translateY(-50%); }


/* ==============================================
   Auteur blok
   ============================================== */

.person { margin-bottom: 40px; }
.person h2 { margin-bottom: 32px; text-align: center; }

/* ### card-person ### */
.card-person { margin-bottom: 30px; }
.card-person-image { margin: 0 auto 20px; flex: 0 0 auto; width: 180px; }
.card-person-image img { width: 100%; border-radius: 100%; }
.card-person-text { font-weight: 500; }


/* ==============================================
   Teamleden blok
   ============================================== */

/* ### person ### */
.person { margin-bottom: 40px; }
.person h2 { margin-bottom: 32px; text-align: center; }

/* ### card-person ### */
.card-person { margin-bottom: 30px; }
.card-person-image { margin: 0 auto 20px; flex: 0 0 auto; width: 180px; }
.card-person-text { font-weight: 500; }

/* ### blockquote ### */
blockquote { padding: 17px 20px 20px 70px; position: relative; font-weight: 300; font-style: italic; border: 1px solid rgba(0, 0, 0, 0.1); border-radius: var(--border-radius); }
blockquote i { position: absolute; top: 50%; left: 20px; font-size: 25px; color: rgba(41, 25, 25, 0.1); transform: translateY(-50%); }


/* ==============================================
   Populaire reizen blok
   ============================================== */

.travel { margin-bottom: 50px; }
.travel h2 { margin-bottom: 32px; }
.travel-block { position: relative; }
.travel-top { margin-bottom: 18px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; }
.travel-column { margin-bottom: 40px; display: grid; grid-template-columns: repeat(1, 1fr); column-gap: 16px; row-gap: 20px; }
.travel-button { display: flex; justify-content: center; }

/* ### card-travel ### */
.card-travel { position: relative; display: block; min-height: 550px; border-radius: var(--border-radius); overflow: hidden; }
.card-travel-photo { position: relative; width: 100%; height: 100%; }
.card-travel-photo:after { position: absolute; bottom: 0; left: 0; width: 100%; height: 85%; background: linear-gradient(to top, rgba(51, 0, 0, 0.99) 20%, rgba(51, 0, 0, 0) 100%); content: ''; mix-blend-mode: luminosity; transition: var(--duration); }
.card-travel-photo img { width: 100%; height: 100%; object-fit: cover; transition: var(--duration); }
.card-travel-info { padding: 20px; position: absolute; bottom: 0; left: 0; z-index: 1; width: 100%; font-weight: 400; color: var(--color-white); }
.card-travel-lead { margin-bottom: 12px; }
.card-travel-info span { padding: 0 20px 1px; display: inline-block; font-size: 14px; font-weight: 700; color: var(--color-white); border-radius: 55px; background-color: var(--color-secondary); }
.card-travel-info strong { margin-bottom: 10px; display: block; font-size: 24px; font-weight: 500; line-height: normal; }
.card-travel-info p { margin-bottom: 12px; }
.card-travel-info li { margin-bottom: 9px; padding-left: 17px; position: relative; font-size: 14px; line-height: 1.3; }
.card-travel-info li:after { position: absolute; top: 7px; left: 0; font-family: var(--font-family-icon), sans-serif; font-size: 8px; color: var(--color-white); content: '\e903'; }
.card-travel-text { transition: opacity 1s ease, max-height 0.3s ease; }
.card-travel-bottom { display: flex; flex-wrap: wrap; gap: 20px; align-items: center; justify-content: space-between; }
.card-travel-price { font-size: 20px; font-weight: 500; }
.card-travel-price em { font-size: 14px; font-style: normal; }
.card-travel .button { width: 100%; max-width: 200px; }
.card-travel:focus img,
.card-travel:hover img { transform: scale(1.05); }
.card-travel:hover .button { background-color: var(--color-secondary); }


/* ==============================================
   Reizen overzicht blok
   ============================================== */

.travel { margin-bottom: 50px; }
.travel h2 { margin-bottom: 32px; }
.travel-block { position: relative; }
.travel-top { margin-bottom: 18px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; }
.travel-column { margin-bottom: 40px; display: grid; grid-template-columns: repeat(1, 1fr); column-gap: 16px; row-gap: 20px; }
.travel-load,
.travel-button { display: flex; justify-content: center; }
.travel-load { margin-top: 40px; }

/* ### card-filter ### */
.card-filter { margin-bottom: 40px; }
.card-filter label { padding-left: 20px; font-size: 20px; }
.card-filter-form { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; column-gap: 17px; row-gap: 16px; }
.card-filter-group,
.card-filter .button { width: 100%; }
.card-filter.inner label { font-size: 16px; }

/* ### card-travel ### */
.card-travel { position: relative; display: block; min-height: 550px; border-radius: var(--border-radius); overflow: hidden; }
.card-travel-photo { position: relative; width: 100%; height: 100%; }
.card-travel-photo:after { position: absolute; bottom: 0; left: 0; width: 100%; height: 85%; background: linear-gradient(to top, rgba(51, 0, 0, 0.99) 20%, rgba(51, 0, 0, 0) 100%); content: ''; mix-blend-mode: luminosity; transition: var(--duration); }
.card-travel-photo img { width: 100%; height: 100%; object-fit: cover; transition: var(--duration); }
.card-travel-info { padding: 20px; position: absolute; bottom: 0; left: 0; z-index: 1; width: 100%; font-weight: 400; color: var(--color-white); }
.card-travel-lead { margin-bottom: 12px; }
.card-travel-info span { padding: 0 20px 1px; display: inline-block; font-size: 14px; font-weight: 700; color: var(--color-white); border-radius: 55px; background-color: var(--color-secondary); }
.card-travel-info strong { margin-bottom: 10px; display: block; font-size: 24px; font-weight: 500; line-height: normal; }
.card-travel-info p { margin-bottom: 12px; }
.card-travel-info li { margin-bottom: 9px; padding-left: 17px; position: relative; font-size: 14px; line-height: 1.3; }
.card-travel-info li:after { position: absolute; top: 7px; left: 0; font-family: var(--font-family-icon), sans-serif; font-size: 8px; color: var(--color-white); content: '\e903'; }
.card-travel-text { transition: opacity 1s ease, max-height 0.3s ease; }
.card-travel-bottom { display: flex; flex-wrap: wrap; gap: 20px; align-items: center; justify-content: space-between; }
.card-travel-price { font-size: 20px; font-weight: 500; }
.card-travel-price em { font-size: 14px; font-style: normal; }
.card-travel .button { width: 100%; max-width: 200px; }
.card-travel:focus,
.card-travel:hover img { transform: scale(1.05); }
.card-travel:hover .button { background-color: var(--color-secondary); }


/* ==============================================
   Laatste blogs blok
   ============================================== */

.blog { margin-bottom: 50px; }
.blog-holder { position: relative; }
.blog-top { margin-bottom: 18px; display: flex; align-items: center; justify-content: space-between; }
.blog-column { display: grid; grid-template-columns: repeat(1, 1fr); column-gap: 16px; row-gap: 20px; }

/* ### card-blog ### */
.card-blog { position: relative; display: block; min-height: 420px; border-radius: var(--border-radius); overflow: hidden; text-decoration: none; color: var(--color-white); }
.card-blog-photo { position: relative; width: 100%; height: 100%; }
.card-blog-photo:after { position: absolute; bottom: 0; left: 0; width: 100%; height: 70%; background: linear-gradient(to top, rgba(0,0,0,0.85) 20%, rgba(0,0,0,0) 100%); content: ''; }
.card-blog-photo img { width: 100%; height: 100%; object-fit: cover; transition: var(--duration); }
.card-blog-info { padding: 20px; position: absolute; top: 0; left: 0; width: 100%; height: 100%; display: flex; flex-direction: column; }
.card-blog-lead { margin-bottom: auto; }
.card-blog-lead span { padding: 0 14px; display: inline-block; font-size: 12px; font-weight: 700; color: var(--color-white); border-radius: 55px; background-color: var(--color-secondary); }
.card-blog-bottom { position: relative; z-index: 1; }
.card-blog-bottom strong { margin-bottom: 16px; display: block; font-size: 18px; font-weight: 500; line-height: 1.4; }
.card-blog:hover .card-blog-photo img { transform: scale(1.04); }
.card-blog:hover .button { background-color: var(--color-secondary); }


/* ==============================================
   Uitgelichte reis blok
   ============================================== */

.action { margin-bottom: 50px; }
.action h3 { margin-bottom: 16px; color: var(--color-white); }
.action-block { padding-bottom: 40px; position: relative; min-height: 376px; border-radius: var(--border-radius); background-color: var(--color-vintage); overflow: hidden; }
.action-photo { margin-right: -20px; margin-bottom: 30px; margin-left: -20px; width: calc(100% + 40px); }
.action-photo img { width: 100%; }
.action-lead { margin-bottom: 11px; display: flex; flex-wrap: wrap; }
.action-lead span { padding: 0 14px 3px; width: 80px; font-size: 12px; font-weight: 700; text-align: center; color: var(--color-white); border-radius: 55px; background-color: var(--color-secondary); }
.action-lead span:nth-child(2) { color: var(--color-vintage); background-color: var(--color-white); }
.action-lead span:not(:last-child) { margin-right: 10%; }
.action-intro { width: 100%; color: var(--color-white); }
.action-intro p { margin-bottom: 13px; }
.action-intro ul { margin-bottom: 18px; }
.action-intro li { margin-bottom: 3px; padding-left: 17px; position: relative; }
.action-intro li:after { position: absolute; top: 10px; left: 0; font-family: var(--font-family-icon), sans-serif; font-size: 8px; color: var(--color-green); content: '\e903'; }
.action-bottom { display: flex; flex-wrap: wrap; gap: 20px; align-items: center; justify-content: space-between; }
.action-price { font-size: 20px; font-weight: 500; }
.action-price em { font-size: 14px; font-style: normal; }
.action-bottom .button { width: 100%; max-width: 182px; }


/* ==============================================
   Veelgestelde vragen blok
   ============================================== */

/* ### faq ### */
.faq { margin-bottom: 50px; }
.faq h2 { margin-bottom: 26px; }
.faq p strong { font-weight: 500; }
.faq-tab { margin-bottom: 20px; }
.faq-tab li { padding: 3px 30px 7px; font-weight: 500; text-align: center; border: solid 1px rgba(0, 0, 0, 0.1); border-radius: 40px; transition: var(--duration); }
.faq-tab li:not(:last-of-type) { margin-bottom: 10px; }
.faq-tab li:focus,
.faq-tab li:hover,
.faq-tab-link.active { color: var(--color-white); cursor: pointer; background-color: var(--color-black); }
.faq-tab-content { display: none; }
.faq-tab-content.active { display: block; }
.faq-item:not(:last-of-type) { margin-bottom: 16px; }

/* ### card-accordion ### */
.card-accordion { border: solid 1px rgba(0, 0, 0, 0.1); border-radius: 40px; }
.card-accordion-title { padding: 10px 40px 13px 20px; position: relative; width: 100%; font-family: var(--font-family-base), sans-serif; font-size: var(--font-size-base); font-weight: 500; text-align: left; border: none; background-color: transparent; cursor: pointer; }
.card-accordion-title:after { position: absolute; top: 20px; right: 18px; font-family: var(--font-family-icon), sans-serif; font-size: 6px; transition: var(--duration); content: '\e900'; }
.card-accordion-title.active:after { transform: rotate(-180deg); }
.card-accordion-text { max-height: 0; transition: max-height 0.4s ease; overflow: hidden; }
.card-accordion-text ul { margin-bottom: 20px; }
.card-accordion-space { padding: 0 19px 19px; }
.card-accordion-space *:last-child { margin-bottom: 0; }


/* ==============================================
   Reis banner blok
   ============================================== */

/* ### photo-block ### */
.photo-block { padding-top: 13px; padding-bottom: 30px; }
.photo-block-left { margin-bottom: 16px; }
.photo-block-item { margin-bottom: 16px; position: relative; display: block; width: 100%; color: #000; border-radius: var(--border-radius); overflow: hidden; }
.photo-block-item img { width: 100%; min-height: 250px; object-fit: cover; }
.photo-block-item a { display: block; width: 100%; }
.photo-block-item:nth-child(2) { margin-bottom: 0; }
.photo-block-right { display: none; }
.photo-block-all { padding: 9px 20px 11px; position: absolute; right: 10px; bottom: 10px; display: inline-flex !important; align-items: center; justify-content: center; width: auto !important; font-weight: 500; text-decoration: none; color: var(--color-info); border-radius: 75px; background-color: var(--color-white); cursor: pointer; }
.photo-block-all:focus,
.photo-block-all:hover { text-decoration: none; }
.photo-block-all i { margin-top: 3px; margin-right: 10px; font-size: 25px; }
.photo-block.is-alt { padding-top: 0; }
.photo-column { position: relative; }

/* ### card-photo ### */
.card-photo { position: relative; }
.card-photo .button { position: absolute; top: 10px; left: 10px; }
.card-photo-tags { position: absolute; top: 10px; right: 10px; display: flex; }
.card-photo-tags span { margin-right: 5px; padding: 5px 9px 8px; display: block; min-width: 80px; font-size: 10px; font-weight: 700; line-height: 1; text-align: center; color: var(--color-white); border-radius: 12px; background-color: var(--color-secondary); }
.card-photo-tags span:last-of-type { margin-right: 0; }
.card-photo-image img { width: 100%; min-height: 250px; object-fit: cover; border-radius: var(--border-radius); }
.card-photo-image a { display: block; width: 100%; }
.card-photo .breadcrumbs { padding: 0 15px; position: absolute; bottom: 27px; left: 50%; transform: translateX(-50%); }
.card-photo-star { position: absolute; bottom: -23px; left: 50%; width: 100%; border-radius: 32px; transform: translateX(-50%); overflow: hidden; }

/* ### card-panel ### */
.card-panel { padding: 8px 15px; display: flex; gap: 5px; align-items: center; justify-content: space-between; background-color: var(--color-white); box-shadow: 0 8px 8px rgba(0, 0, 0, 0.16); }
.card-panel span { font-weight: 500; }
.card-panel a { color: var(--color-info); }
.card-panel a:focus,
.card-panel a:hover { text-decoration: var(--line-decoration); }
.card-panel ul { display: flex; }
.card-panel li { font-size: 15px; line-height: normal; color: var(--color-yellow); }
.card-panel li:not(:last-child) { margin-right: 1px; }

/* ### breadcrumbs ### */
.breadcrumbs { margin-top: auto; width: 100%; }
.breadcrumbs ul { display: flex; flex-wrap: wrap; justify-content: center; }
.breadcrumbs li { position: relative; font-size: 12px; color: var(--color-white); }
.breadcrumbs li a { color: var(--color-white); }
.breadcrumbs li:not(:last-child):after { margin: 0 10px; display: inline-block; width: 1px; height: 10px; vertical-align: middle; background-color: var(--color-white); content: ''; }
.breadcrumbs li a:hover { text-decoration: var(--line-decoration); }
.breadcrumbs .rank-math-breadcrumb { text-align: center; }
.breadcrumbs .rank-math-breadcrumb p { display: flex; flex-wrap: wrap; justify-content: center; margin-bottom: 0; font-size: 12px; color: var(--color-white); }
.breadcrumbs .rank-math-breadcrumb a { font-size: 12px; color: var(--color-white); }
.breadcrumbs .rank-math-breadcrumb a:hover { text-decoration: underline; color: var(--color-white); }
.breadcrumbs .rank-math-breadcrumb .separator { margin: 0 5px; color: var(--color-white); }
.breadcrumbs .rank-math-breadcrumb .last { color: var(--color-white); }


/* ==============================================
   Reis titel blok
   ============================================== */

/* ### luxury ### */
.luxury { margin-bottom: 40px; padding-top: 18px; display: flex; flex-wrap: wrap; justify-content: space-between; }
.luxury h1 { margin-bottom: 18px; font-size: 30px; font-weight: 500; }
.luxury-left { margin-bottom: 30px; }
.luxury-left li { margin-bottom: 2px; padding-left: 17px; position: relative; }
.luxury-left li:before { position: absolute; top: 9px; left: 0; font-family: var(--font-family-icon), sans-serif; font-size: 9px; content: '\e903'; }
.luxury-left li:last-of-type { margin-bottom: 0; }

/* ### card-luxury ### */
.card-luxury { padding: 30px 29px; text-align: center; border: 1px solid rgba(0, 0, 0, 0.1); border-radius: var(--border-radius); background-color: var(--color-white); }
.card-luxury-tags { margin-bottom: 19px; display: flex; flex-wrap: wrap; }
.card-luxury-tags span { margin-right: 14px; padding: 5px 9px 8px; position: relative; display: inline-flex; align-items: center; justify-content: center; min-width: 100px; font-size: 14px; font-weight: 700; line-height: 1; text-align: center; color: var(--color-white); border-radius: 12px; background-color: var(--color-secondary); }
.card-luxury-tags span.tag-steps:before { position: absolute; top: -7px; right: -7px; display: flex; align-items: center; justify-content: center; width: 14px; height: 14px; font-size: 8px; color: var(--color-white); border-radius: 15px; background-color: var(--color-primary); content: 'i'; }
.card-luxury-tags span.tag-steps { padding: 2px 9px 4px; min-width: 121px; font-weight: 400; background-color: var(--color-info); position: relative;}
.card-luxury-tags span.tag-steps i { margin-right: 6px; display: inline-block; font-size: 17px; }
.card-luxury-tags span.tag-steps sup { font-size: 8px; transform: translateY(-2px); }
.card-luxury-tags span:last-of-type { margin-right: 0; }
.card-luxury-price { margin-bottom: 21px; font-size: 14px; font-weight: 400; }
.card-luxury-price span { font-size: 20px; font-weight: 500; }
.card-luxury .button { width: 100%; }
.card-luxury .button i { margin-left: 10px; font-size: 9px; }
.card-luxury ul { margin-top: 10px; padding: 0 20px; display: flex; align-items: center; justify-content: space-between; gap:6px; }
/* ### sticky-block ### */
.sticky-block { padding-top: 6px; padding-bottom: 6px; position: fixed; bottom: 0; z-index: 22; width: 100%; font-weight: 400; text-align: center; color: var(--color-white); background-color: var(--color-vintage); }
.sticky-block h5 { margin-bottom: 0; display: none; color: inherit; }
.sticky-block span { margin-top: 5px; padding: 1px 11px 4px; display: none; font-size: 18px; font-weight: 700; line-height: 1; border-radius: 50px; background-color: var(--color-secondary); }
.sticky-block-text { margin-top: 5px; padding: 2px 15px 4px; position: relative; display: none; font-size: 18px; line-height: 1; border-radius: 50px; background-color: var(--color-black); position: relative; }
.sticky-block-text i { margin-right: 6px; font-size: 17px; }
.sticky-block-text sup { font-size: 11px; }
.sticky-block-text em { position: absolute; top: -7px; right: -5px; display: flex; align-items: center; justify-content: center; width: 14px; height: 14px; font-size: 8px; font-style: normal; border-radius: 100%; background-color: var(--color-primary); }
.sticky-block-price { margin-bottom: 10px; display: none; font-size: 14px; }
.sticky-block-price strong { font-size: 20px; font-weight: 500; }
.sticky-block .button { width: 100%; }

.sticky-block-text::after {
    content: attr(data-tooltip);
    position: absolute;
    bottom: calc(100% + 8px);
    left: 50%;
    transform: translateX(-50%);
    background: #000;
    color: #fff;
    font-size: 12px;
    max-width: 280px;
    min-width: 200px;
    padding: 6px 8px  8px;
    border-radius: 4px;
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.2s;
}
.sticky-block-text:hover::after {
    opacity: 1;
}
.tag-steps::after {
    content: attr(data-tooltip);
    position: absolute;
    bottom: calc(100% + 8px);
    left: 50%;
    transform: translateX(-50%);
    background: #000;
    color: #fff;
    font-size: 12px;
    max-width: 280px;
    min-width: 200px;
    padding: 6px 8px  8px;
    border-radius: 4px;
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.2s;
}

.tag-steps:hover::after {
    opacity: 1;
}


/* ==============================================
   Reis tabs blok
   ============================================== */

/* ### tabs-block ### */
.tabs-block { margin-bottom: 80px; }
.tabs-block-sticky { position: sticky; top: 67px; left: 0; z-index: 2; width: 100%; }
.tabs-block .custom-select { border-radius: 0; margin-left: -20px; width: calc(100% + 40px); margin-bottom: 40px; font-size: 16px; color: var(--color-info); background-color: var(--color-white); }

/* ### nav-tabs ### */
.nav-tabs { margin-bottom: 40px; padding: 0 20px; display: none; border: solid 1px rgba(0, 0, 0, 0.16); border-radius: var(--border-radius); background-color: var(--color-white); }
.nav-tabs ul { display: flex; flex-wrap: wrap; justify-content: space-between; column-gap: 10px; }
.nav-tabs li a { padding-top: 7px; padding-bottom: 7px; position: relative; font-size: 16px; font-weight: 500; text-decoration: var(--line-decoration); color: var(--color-info); }
.nav-tabs li a:after { position: absolute; bottom: -1px; left: 0; opacity: 0; visibility: hidden; width: 0; height: 3px; background-color: var(--color-primary); transition: var(--duration); content: ''; }
.nav-tabs li.is-active a:after,
.nav-tabs li a:hover:after { opacity: 1; visibility: visible; width: 100%; }

/* ### about ### */
.about { margin-bottom: 50px; }
.about h2 { margin-bottom: 16px; }
.about-holder { margin-bottom: 30px; display: flex; flex-wrap: wrap; align-items: flex-start; }
.about-intro { margin-bottom: 30px; width: 100%; }
.about-intro p { margin-bottom: 14px; }
.about-intro p:first-of-type { font-weight: 500; }
.about-intro p:last-of-type { margin-bottom: 0; }
.about-intro ul { margin-bottom: 20px; }
.about-photo { position: relative; width: 100%; border-radius: var(--border-radius); overflow: hidden; }
.about-photo img { width: 100%; height: 100%; object-fit: cover; }
.about-photo-zoom { position: absolute; top: 50%; left: 50%; display: flex; align-items: center; justify-content: center; width: 48px; height: 48px; font-size: 27px; text-decoration: var(--line-decoration); color: var(--color-info); border-radius: 75px; background-color: var(--color-white); transform: translate(-50%, -50%); }
.about-photo-zoom:focus,
.about-photo-zoom:hover { text-decoration: none; color: var(--color-white); background-color: var(--color-primary); }
.about-column { display: grid; grid-template-columns: repeat(1, 1fr); column-gap: 16px; row-gap: 16px; }
.about-column img { width: 100%; border-radius: var(--border-radius); }

/* ### journey ### */
.journey { margin-bottom: 50px; }
.journey h2 { margin-bottom: 16px; }
.journey p { margin-bottom: 35px; }
.journey p strong { font-weight: 500; }
.journey-items { margin-bottom: 20px; }
.journey-bottom { display: flex; justify-content: center; }

/* ### card-journey ### */
.card-journey { display: flex; flex-wrap: wrap; align-items: flex-start; text-decoration: var(--line-decoration); color: var(--color-info); }
.card-journey-photo { margin-bottom: 20px; width: 100%; border-radius: var(--border-radius); overflow: hidden; }
.card-journey-photo img { width: 100%; }
.card-journey-info h3 { margin-bottom: 17px; font-size: 22px; }
.card-journey-info span { margin-bottom: 14px; display: block; font-weight: 500; }
.card-journey-info p { margin-bottom: 26px; }
.card-journey:focus,
.card-journey:hover { text-decoration: none; color: var(--color-info); }

/* ### information ### */
.information { margin-bottom: 40px; }
.information h2 { margin-bottom: 17px; }
.information h3 { margin-bottom: 17px; font-size: 24px; }
.information p { margin-bottom: 28px; }
.information p strong { font-weight: 500; }
.information-items { margin-bottom: 27px; display: grid; grid-template-columns: repeat(1, 1fr); column-gap: 18px; row-gap: 18px; }
.information-exclusive li,
.information-list li { margin-bottom: 2px; padding-left: 17px; position: relative; }
.information-exclusive li:after,
.information-list li:after { position: absolute; top: 10px; left: 0; font-family: var(--font-family-icon), sans-serif; font-size: 9px; content: '\e903'; }
.information-exclusive li:after { font-size: 11px; content: '\e904'; }
.information-table { font-size: 14px; }
.information-lead { margin-bottom: 3px; display: flex; flex-wrap: wrap; }
.information-lead span { padding-left: 11px; display: block; font-weight: 500; color: var(--color-info); }
.information-holiday { margin-bottom: 10px; display: flex; flex-wrap: wrap; line-height: normal; border: 1px solid rgba(0, 0, 0, 0.1); border-radius: 10px; }
.information-label { padding: 10px; border-right: 1px solid rgba(0, 0, 0, 0.1); }
.information-label:last-of-type { border-right: 0; }
.information-lead span:nth-child(1),
.information-lead span:nth-child(2),
.information-label:nth-child(1),
.information-label:nth-child(2) { width: 27%; }
.information-lead span:nth-child(3),
.information-label:nth-child(3) { width: 46%; }

/* ### accommodations ### */
.accommodations { margin-bottom: 72px; }
.accommodations h2 { margin-bottom: 16px; }
.accommodations p { margin-bottom: 24px; }
.accommodations-block { position: relative; }
.accommodations .swiper-button-prev { left: 20px; }
.accommodations .swiper-button-next { right: 20px; }
.accommodations.gap { margin-bottom: 0; }

/* ### card-inclusive ### */
.card-inclusive { position: relative; display: block; height: 296px; text-decoration: var(--line-decoration); color: var(--color-white); border-radius: var(--border-radius); overflow: hidden; }
.card-inclusive-photo { position: relative; width: 100%; height: 100%; }
.card-inclusive-photo:after { position: absolute; bottom: 0; left: 0; width: 100%; height: 50%; background: linear-gradient(to top, rgba(51, 0, 0, 0.99) 20%, rgba(51, 0, 0, 0) 100%); content: ''; mix-blend-mode: luminosity; }
.card-inclusive-photo img { width: 100%; height: 100%; object-fit: cover; transition: var(--duration); }
.card-inclusive-info { padding: 24px 20px 25px; position: absolute; top: 0; display: flex; flex-direction: column; width: 100%; height: 100%; text-align: center; }
.card-inclusive-lead { margin-bottom: 20px; }
.card-inclusive-info span { padding: 0 25px 3px; display: inline-block; font-size: 12px; font-weight: 700; color: var(--color-white); border-radius: 55px; background-color: var(--color-primary); }
.card-inclusive-info strong { display: block; font-size: 20px; font-weight: 500; line-height: normal; }
.card-inclusive-bottom { margin-top: auto; }
.card-inclusive:focus img,
.card-inclusive:hover img { transform: scale(1.04); }
.card-inclusive:focus,
.card-inclusive:hover { color: var(--color-white); }

/* ### faq ### */
.faq { margin-bottom: 50px; }
.faq h2 { margin-bottom: 26px; }
.faq p strong { font-weight: 500; }
.faq-tab { margin-bottom: 20px; }
.faq-tab li { padding: 3px 30px 7px; font-weight: 500; text-align: center; border: solid 1px rgba(0, 0, 0, 0.1); border-radius: 40px; transition: var(--duration); }
.faq-tab li:not(:last-of-type) { margin-bottom: 10px; }
.faq-tab li:focus,
.faq-tab li:hover,
.faq-tab-link.active { color: var(--color-white); cursor: pointer; background-color: var(--color-black); }
.faq-tab-content { display: none; }
.faq-tab-content.active { display: block; }
.faq-item:not(:last-of-type) { margin-bottom: 16px; }

/* ### card-accordion ### */
.card-accordion { border: solid 1px rgba(0, 0, 0, 0.1); border-radius: 40px; }
.card-accordion-title { padding: 10px 40px 13px 20px; position: relative; width: 100%; font-family: var(--font-family-base), sans-serif; font-size: var(--font-size-base); font-weight: 500; text-align: left; border: none; background-color: transparent; cursor: pointer; }
.card-accordion-title:after { position: absolute; top: 20px; right: 18px; font-family: var(--font-family-icon), sans-serif; font-size: 6px; transition: var(--duration); content: '\e900'; }
.card-accordion-title.active:after { transform: rotate(-180deg); }
.card-accordion-text { max-height: 0; transition: max-height 0.4s ease; overflow: hidden; }
.card-accordion-space { padding: 0 19px 19px; }
.card-accordion-space *:last-child { margin-bottom: 0; }

/* ### support ### */
.support { padding-top: 20px; padding-bottom: 40px; position: fixed; top: 100%; left: 0; width: 100%; height: 100vh; overflow-y: scroll; z-index: 25; background-color: var(--color-daisy); overflow-x: hidden; transition: var(--duration); opacity: 0; visibility: hidden; }
.support-left,
.support-right { position: relative; z-index: 1; background-color: var(--color-white); border: solid 1px rgba(0, 0, 0, 0.1); }
.support-left:after,
.support-right:after { position: absolute; z-index: -1; top: -1px; right: -20px; width: 100vw; height: 100%; background-color: var(--color-white); content: ''; border-top: solid 1px rgba(0, 0, 0, 0.1); border-bottom: solid 1px rgba(0, 0, 0, 0.1); }
.support-right { border-radius: 32px 0 0 32px; }
.support-right:after { right: auto; left: -20px; }
.support-left { margin-bottom: 30px; padding: 7px 0 20px; border-radius: 0 32px 32px 0; }
.support-left h2 { margin-bottom: 10px; display: flex; align-items: center; }
.support-back { cursor: pointer; margin-top: 3px; margin-right: 20px; display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; font-size: 16px; text-decoration: none; color: var(--color-white); border-radius: 100%; background-color: var(--color-secondary); transform: rotate(-180deg); transition: var(--duration); border: 0; }
.support-back:hover { color: var(--color-vintage); }
.support-tab { margin-bottom: 10px; padding: 8px 10px; position: relative; align-items: center; font-weight: 500; text-decoration: none; color: var(--color-info); border: solid 1px rgba(0, 0, 0, 0.1); border-radius: 50px; transition: var(--duration); cursor: pointer; display: none; }
.support-left li { margin-bottom: 10px; }
.support-tab strong { padding-right: 15px; font-weight: 500; }
.support-tab span { margin-right: 10px; font-size: 12px; color: rgba(41, 25, 25, 0.6); }
.support-tab i { position: absolute; top: 50%; right: 20px; font-size: 9px; transform: translateY(-50%); }
.support-tab.active,
.support-tab:hover { color: var(--color-white); background-color: var(--color-primary); }
.support-right { padding: 30px 0; }
.support-image { margin-bottom: 20px; height: 150px; border-radius: var(--border-radius); overflow: hidden; }
.support-image img { width: 100%; height: 380px; object-fit: cover; }
.support-right h6 { margin-bottom: 10px; }
.support-right h3 { margin-bottom: 17px; font-size: 24px; }
.support-right p { margin-bottom: 13px; }
.support-right ul { margin-bottom: 15px; max-width: 1172px; }
.support-right li { margin-bottom: 3px; padding-left: 17px; position: relative; }
.support-right li:after { position: absolute; top: 9px; left: 0; font-family: var(--font-family-icon), sans-serif; font-size: 9px; color: var(--color-info); content: '\e903'; }
.support .accommodations { margin-bottom: 53px; }
.support .accommodations-block { margin-top: 24px; }
.support-tab-content { display: none; }
.support-tab-content.active { display: block; }
.support.is-active { top: 0; opacity: 1; visibility: visible; }
.support select { font-size: 14px; }

/* ### modal-popup ### */
.modal-popup { padding: 0 15px; position: fixed; top: 0; left: 0; z-index: 50; opacity: 0; visibility: hidden; width: 100%; height: 100%; background-color: var(--color-white); transition: var(--duration); overflow-y: scroll; }
.modal-popup.is-active { opacity: 1; visibility: visible; }
.js-close-model { position: absolute; top: -25px; right: 0; display: flex; align-items: center; justify-content: center; opacity: 1; width: 35px; height: 35px; font-size: 16px; font-weight: 700; color: var(--color-white); border: 0; border-radius: 100%; background: var(--color-secondary); transition: var(--duration); cursor: pointer; }
.white-popup-block { margin: 40px auto; padding: 15px; position: relative; max-width: 1232px; border: solid 1px rgba(0, 0, 0, 0.1); border-radius: var(--border-radius); background-color: var(--color-white); }
.popup-tag { margin-bottom: 25px; display: flex; }
.popup-tag span { margin-right: 17px; padding: 3px 17px; font-size: 12px; font-weight: 500; text-align: center; color: rgba(41, 25, 25, 0.6); border: solid 1px rgba(0, 0, 0, 0.1); border-radius: 50px; transition: var(--duration); }
.popup-tag span.active { font-size: 14px; font-weight: 700; color: var(--color-white); background-color: var(--color-primary); }
.popup-wrap h3 { font-size: 24px; }
.popup-wrap h4 { margin-bottom: 16px; font-size: 20px; }
.popup-list { margin-bottom: 18px; display: flex; flex-wrap: wrap; }
.popup-list li { margin-right: 21px; margin-bottom: 15px; padding-left: 32px; position: relative; }
.popup-list li:before { position: absolute; top: -6px; left: 0; font-family: var(--font-family-icon), sans-serif; font-size: 23px; color: var(--color-secondary); content: '\e908'; pointer-events: none; }
.popup-holder { margin-bottom: 30px; position: relative; }
.popup-photo-item { display: grid; grid-template-columns: 1fr; column-gap: 16px; row-gap: 16px; }
.popup-photo-item a { display: none; border-radius: var(--border-radius); overflow: hidden; }
.popup-photo-item a img { width: 100%; height: 100%; object-fit: cover; }
.popup-photo-item a:first-child { grid-row: 1 / span 2; grid-column: span 2; }
.popup-photo-item a:nth-child(-n+1) { display: block; }
.photo-block-all { padding: 9px 20px 11px; position: absolute; right: 10px; bottom: 10px; display: inline-flex !important; align-items: center; justify-content: center; width: auto !important; font-weight: 500; text-decoration: none; color: var(--color-info); border-radius: 75px; background-color: var(--color-white); cursor: pointer; }
.photo-block-all i { margin-top: 3px; margin-right: 10px; font-size: 25px; }

/* ### swiper ### */
.swiper-button-prev svg,
.swiper-button-next svg { display: none; }
.swiper-button-prev,
.swiper-button-next { display: flex; align-items: center; justify-content: center; width: 48px; height: 48px; font-size: 13px; color: var(--color-vintage); border: solid 1px rgba(0, 0, 0, 0.1); border-radius: 75px; background-color: var(--color-white); transition: var(--duration); }
.swiper-button-prev i { transform: rotate(180deg); }
.swiper-button-prev:hover,
.swiper-button-next:hover { color: var(--color-white); background-color: var(--color-vintage); }


/* ==============================================
   Review slider blok
   ============================================== */

/* ### review ### */
.review { margin-bottom: 50px; }
.review-holder { padding-top: 50px; padding-bottom: 50px; position: relative; }
.review h2 { margin-bottom: 26px; color: var(--color-white); }
.review-block { position: relative; z-index: 1; }
.review-wrap,
.review-intro { position: relative; }
.review-photo { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border-radius: var(--border-radius); overflow: hidden; background-color: var(--color-info); }
.review-photo img { opacity: 0.7; width: 100%; height: 100%; object-fit: cover; }
.review .swiper { margin-bottom: 35px; border-radius: var(--border-radius); }
.review-button { display: flex; justify-content: center; }
.review.is-alt { padding-top: 0; padding-bottom: 0; }
.review-item:not(:last-of-type) { margin-bottom: 20px; }
.review.is-alt .card-review { border: solid 1px rgba(0, 0, 0, 0.1); }
.review.is-alt .review-holder { margin-bottom: 40px; padding-bottom: 0; }
.review-link { display: flex; justify-content: center; }
.review .swiper-button-prev,
.review .swiper-button-next { left: -15px; }
.review .swiper-button-next { right: -15px; left: unset; }

/* ### Swiper ### */
.js-review-slider { overflow: hidden; }
.js-review-slider .swiper-wrapper { align-items: stretch; }
.js-review-slider .swiper-slide { height: auto!important; }

/* ### Navigatie ### */
.review-prev,
.review-next { position: absolute; top: 50%; transform: translateY(-50%); z-index: 10; width: 48px; height: 48px; border-radius: 50%; background: var(--color-white); display: flex; align-items: center; justify-content: center; cursor: pointer; box-shadow: 0 2px 12px rgba(0,0,0,.12); }
.review-prev { left: -24px; }
.review-next { right: -24px; }
.review-prev i { transform: rotate(180deg); }
.review-prev.swiper-button-disabled,
.review-next.swiper-button-disabled { opacity: .4; pointer-events: none; }

/* ### card-review ### */
.card-review { display: flex; flex-wrap: wrap; border-radius: var(--border-radius); background-color: var(--color-daisy); overflow: hidden; }
.card-review-photo { width: 100%; aspect-ratio: 1/0.7; }
.card-review-photo img { width: 100%; height: 100%; object-fit: cover; object-position: 0 -70px; }
.card-review-info { padding: 30px; }
.card-review-info strong { margin-bottom: 16px; display: block; font-size: 20px; font-weight: 500; line-height: 1.35; }
.card-review-info p a { text-decoration: underline; color: var(--color-info); }
.card-review-info p a:hover { text-decoration: var(--line-decoration); }
.card-review-top { margin-bottom: 11px; display: flex; align-items: center; justify-content: space-between; }
.card-review-top span { padding: 0 20px 3px; display: inline-block; font-size: 12px; font-weight: 700; color: var(--color-white); border-radius: 55px; background-color: var(--color-secondary); }
.card-review-star { display: flex; flex-wrap: wrap; align-items: center; }
.card-review-star ul { margin-right: 9px; display: flex; }
.card-review-star li { font-size: 14px; line-height: normal; color: var(--color-yellow); }
.card-review-star li:not(:last-child) { margin-right: 1px; }
.card-review-name { padding-top: 23px; padding-bottom: 23px; display: flex; flex-wrap: wrap; justify-content: space-between; font-size: 12px; font-weight: 400; color: var(--color-info); column-gap: 20px; border-top: solid 1px rgba(41, 25, 25, 0.1); margin-top: auto; }

/* ### swiper ### */
.swiper-button-prev svg,
.swiper-button-next svg { display: none; }
.swiper-button-prev,
.swiper-button-next { display: flex; align-items: center; justify-content: center; width: 48px; height: 48px; font-size: 13px; color: var(--color-vintage); border: solid 1px rgba(0, 0, 0, 0.1); border-radius: 75px; background-color: var(--color-white); transition: var(--duration); }
.swiper-button-prev i { transform: rotate(180deg); }
.swiper-button-prev:hover,
.swiper-button-next:hover { color: var(--color-white); background-color: var(--color-vintage); }


/* ==============================================
   Review overzicht blok
   ============================================== */

.review { margin-bottom: 50px; }
.review-holder { position: relative; }
.review.is-alt { padding-top: 0; padding-bottom: 0; }
.review.is-alt .card-review { border: solid 1px rgba(0, 0, 0, 0.1); }
.review.is-alt .review-holder { margin-bottom: 40px; padding-bottom: 0; }
.review-item:not(:last-of-type) { margin-bottom: 20px; }
.review-link { display: flex; justify-content: center; }

/* ### card-review ### */
.card-review { display: flex; flex-wrap: wrap; border-radius: var(--border-radius); background-color: var(--color-daisy); overflow: hidden; height: 100%; }
.card-review-photo { width: 100%; aspect-ratio: 1/0.7; }
.card-review-photo img { width: 100%; height: 100%; object-fit: cover; object-position: 0 -70px; }
.card-review-info { padding: 30px;display: flex; flex-direction: column; }
.card-review-info strong { margin-bottom: 16px; display: block; font-size: 20px; font-weight: 500; line-height: 1.35; }
.card-review-info p a { text-decoration: underline; color: var(--color-info); }
.card-review-info p a:hover { text-decoration: var(--line-decoration); }
.card-review-top { margin-bottom: 11px; display: flex; align-items: center; justify-content: space-between; }
.card-review-top span { padding: 0 20px; display: inline-block; font-size: 12px; font-weight: 700; color: var(--color-white); border-radius: 55px; background-color: var(--color-secondary); }
.card-review-star { display: flex; flex-wrap: wrap; align-items: center; }
.card-review-star ul { margin-right: 9px; display: flex; }
.card-review-star li { font-size: 14px; line-height: normal; color: var(--color-yellow); }
.card-review-star li:not(:last-child) { margin-right: 1px; }
.card-review-name { padding-top: 23px; display: flex; flex-wrap: wrap; justify-content: space-between; font-size: 12px; font-weight: 400; color: var(--color-info); column-gap: 20px; border-top: solid 1px rgba(41, 25, 25, 0.1); margin-top: auto; }


/* ==============================================
   Blog overzicht blok
   ============================================== */

.blog { margin-bottom: 50px; }
.blog h2 { margin-bottom: 27px; }
.blog-holder { position: relative; }
.blog-column { margin-bottom: 40px; display: grid; grid-template-columns: repeat(1, 1fr); column-gap: 16px; row-gap: 16px; }
.blog .card-filter { margin: 0 auto 40px; width: 100%; max-width: 816px; }
.blog.is-alt .blog-column { margin-bottom: 40px; }
.blog-bottom,
.blog-button { display: flex; justify-content: center; }

/* ### card-blog ### */
.card-blog { position: relative; display: block; text-decoration: var(--line-decoration); color: var(--color-white); border-radius: var(--border-radius); overflow: hidden; }
.card-blog-photo { position: relative; width: 100%; height: 100%; }
.card-blog-photo:after { position: absolute; bottom: 0; left: 0; width: 100%; height: 70%; background: linear-gradient(to top, rgba(51, 0, 0, 0.99) 20%, rgba(51, 0, 0, 0) 100%); content: ''; mix-blend-mode: luminosity; }
.card-blog-photo img { width: 100%; height: 100%; object-fit: cover; transition: var(--duration); }
.card-blog-info { padding: 24px 31px 30px; position: absolute; top: 0; display: flex; flex-direction: column; width: 100%; height: 100%; }
.card-blog-lead { margin-bottom: 20px; }
.card-blog-info span { padding: 0 27px; display: inline-block; font-size: 12px; font-weight: 700; color: var(--color-white); border-radius: 55px; background-color: var(--color-secondary); }
.card-blog-info strong { margin-bottom: 27px; display: block; font-size: 20px; font-weight: 500; line-height: 1.24; }
.card-blog-bottom { margin-top: auto; display: flex;flex-direction: column; align-items: end; }
.card-blog:focus img,
.card-blog:hover img { transform: scale(1.04); }
.card-blog:focus .button,
.card-blog:hover .button { background-color: var(--color-primary); }
.card-blog:focus,
.card-blog:hover { color: var(--color-white); }

/* ### card-filter ### */
.card-filter { margin-bottom: 40px; }
.card-filter label { padding-left: 20px; font-size: 20px; }
.card-filter-form { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; column-gap: 17px; row-gap: 16px; }
.card-filter-group,
.card-filter .button { width: 100%; }
.card-filter.inner label { font-size: 16px; }


/* ==============================================
   Media Queries
   ============================================== */

@media only screen and (min-width: 768px) {
.text-block { display: flex; flex-wrap: wrap; }
    .text-block-left { margin-right: 65px; padding-top: 4px; width: 37%; }
    .text-block-right { flex: 1; }
    .text-block { display: flex; flex-wrap: wrap; }
    .text-block-left { margin-right: 65px; padding-top: 4px; width: 37%; }
    .text-block-right { flex: 1; }
	.share { margin-bottom: 78px; }
	.share li:first-of-type { margin-right: 11px; width: auto; text-align: unset; }
    .track-column { grid-template-columns: repeat(2, 1fr); }
    .certificate { margin-bottom: 83px; }
    .certificate h2 { margin-bottom: 35px; text-align: center; }
    .certificate-column { grid-template-columns: repeat(3, 1fr); }
    .card-certificate-image { margin-bottom: 24px; }
    .card-certificate-text h4 { margin-bottom: 18px; }
	:root {
		--font-size-h1: 70px;
	}
    .usp .swiper { margin-left: 0; width: 80%; }
    .usp-text { justify-content: start; }
    .usp-info { display: flex; }
    .header-right { margin-right: 50px; display: flex; }
    .card-subscribe-group { display: flex; align-items: flex-start; column-gap: 10px; }
    .card-subscribe input { width: 33.33%; }
    .card-subscribe .button-submit { padding: 10px 26px; width: auto; } 
    .footer-partners { flex-wrap: unset; justify-content: space-between; }
    .hero-bottom { left: 50%; width: auto; transform: translateX(-50%); }
    .card-panel { padding: 8px 38px; min-width: 400px; border-radius: 75px; }
    .form-travel .form-travel-select,
    .form-travel .button { width: 48.5%; }
    .card-panel { padding: 8px 38px; min-width: 400px; border-radius: 75px; }
    .hero-bottom { left: 50%; width: auto; transform: translateX(-50%); }
    .card-panel { padding: 8px 38px; min-width: 400px; border-radius: 75px; }
    .hero-bottom { left: 50%; width: auto; transform: translateX(-50%); }
    .place-column { grid-template-columns: repeat(2, 1fr); }
    .place-button { position: absolute; top: 0; right: 0; }
    .place-column { grid-template-columns: repeat(2, 1fr); }
    .place-button { position: absolute; top: 0; right: 0; }
    .contact { display: flex; flex-wrap: wrap; }
    .contact-left { margin-bottom: 0; flex: 1; }
    .contact-right .card-help,
    .contact-left .card-form { height: 100%; }
    .contact-right { margin-left: 16px; width: 40%; }
    .card-help-info { padding: 22px 30px 20px; }
    .card-help-info strong { font-size: 20px; }
    .card-help-info strong:last-of-type { margin-bottom: 10px; }
    
    .card-form fieldset.gfield--type-consent{ width: 65%!important; padding-top: 14px!important; }
	.card-form .gfield--type-submit{ width: 33%!important; }
	.card-form .gfield--type-submit input{ width: 100%!important; }
	.card-form .gfield--width-half { width: calc(50% - 5px) !important; }
	.description .button { margin-bottom: 57px; }
	.description-collage { margin-bottom: 16px; }
	.description-collage img { margin-bottom: 0; }
	.description-collage.column { margin-bottom: 0; display: grid; grid-column-gap: 16px; grid-template-columns: repeat(2, 1fr); }
    .error-intro { margin-top: 23px; flex: 1; order: 1; }
    .error-photo { margin-left: 50px; order: 2; width: 41%; border-radius: var(--border-radius); overflow: hidden; }
    .over-photo { margin-right: 30px; margin-bottom: 0; width: 41%; }
    .over-intro { flex: 1; }
    .over.reverse .over-column { flex-direction: row-reverse; }
    .over.reverse .over-photo { margin-right: 0; margin-left: 30px; }
	.person { margin-bottom: 78px; }
	.card-person { display: flex; align-items: center; justify-content: space-between; }
	.card-person-image { margin: 0; width: 296px; }
	.card-person-text { padding-left: 16px; }
	.card-person-text h3 { margin-bottom: 17px; }
    .card-person { display: flex; align-items: center; justify-content: space-between; }
    .card-person-image { margin: 0; width: 296px; }
    .card-person-text { padding-left: 16px; }
    .card-person-text h3 { margin-bottom: 17px; }
    .travel-column { margin-bottom: 0; grid-template-columns: repeat(2, 1fr); }
    .card-travel-info li { font-size: 16px; }
    .card-travel-info li:after { top: 10px; }
	.travel-column { grid-template-columns: repeat(2, 1fr); }
	.card-filter-group { flex: auto; width: auto; }
	.card-travel-text { opacity: 0; visibility: hidden; max-height: 0; overflow: hidden; }
	.card-travel:hover .card-travel-text { margin-bottom: 15px; opacity: 1; visibility: visible; max-height: 270px; }
	.card-travel:hover .card-travel-photo:after { height: 90%; }
	.card-travel-photo:after { height: 40%; }
	.card-travel-info li { font-size: 16px; }
	.card-travel-info li:after { top: 10px; }
    .blog-column { grid-template-columns: repeat(2, 1fr); }
    .faq { margin-bottom: 80px; }
    .faq-tab { margin-bottom: 30px; display: flex; }
    .faq-tab li:not(:last-of-type) { margin-right: 16px; margin-bottom: 0; }
    .card-accordion-title { padding: 14px 19px 13px; }
	.card-panel { padding: 8px 38px; min-width: 400px; border-radius: 75px; }
	.card-photo-star { width: auto; }
	.photo-column { display: flex; flex-wrap: wrap; }
	.photo-block-left { margin-bottom: 0; width: 65%; }
	.photo-block-right { padding-left: 16px; display: block; width: 35%; }
	.photo-block-item { display: none; }
	.photo-block-item:nth-child(-n+2) { display: block; }
	.photo-block-item img { min-height: 282px; }
	.card-photo li { font-size: 12px; }
	.card-photo-image img { min-height: 580px; }
	.card-photo .button { padding: 10px 21px; min-height: 48px; font-size: 16px; }
	.card-photo-tags span { margin-right: 8px; min-width: 100px; font-size: 14px; }
	.luxury { display: flex; flex-wrap: nowrap; }
	.luxury-left { margin-bottom: 0; padding-right: 25px; }
	.luxury-right { margin-top: 5px; }
	.luxury .card-luxury { flex: 0 0 auto; width: 296px; }
	.sticky-block h5 { display: block; }
	.sticky-block-right { margin-top: 10px; display: flex; align-items: center; justify-content: center; }
	.sticky-block-text { margin-right: 18px; margin-left: 13px; display: inline; }
	.sticky-block span,
	.sticky-block-price { display: block; }
	.sticky-block .button { margin-left: 40px; max-width: 236px; }
	.about-intro { flex: 1; }
	.about-photo { margin-left: 20px; width: 40%; }
	.about-column { grid-template-columns: repeat(3, 1fr); }
	.information-items { grid-template-columns: repeat(2, 1fr); }
	.information-table { font-size: var(--font-size-base); }
	.information-label { padding: 10px 15px 13px; }
	.information-lead span { padding-left: 16px; }
	.information-holiday { border-radius: 40px; }
	.faq { margin-bottom: 80px; }
	.faq-tab { margin-bottom: 30px; display: flex; }
	.faq-tab li:not(:last-of-type) { margin-right: 16px; margin-bottom: 0; }
	.card-accordion-title { padding: 10px 19px 13px; }
	.support-left { padding: 7px 30px 30px 0; }
	.support-back { width: 48px; height: 48px; font-size: 20px; }
	.support-tab { padding: 8px 25px 10px 19px; }
	.support-tab span { margin-right: 18px; padding-top: 4px; }
	.support-tab i { right: 20px; }
	.support-right { padding: 30px; }
	.support-image { margin-bottom: 36px; height: auto; }
	.support-right h6 { margin-bottom: 18px; }
	.support-right ul { margin-bottom: 43px; column-count: 2; }
	.card-journey-photo { margin-right: 40px; width: 40.9%; }
	.card-journey-info { flex: 1; }
	.popup-photo-item a { display: none; }
	.popup-photo-item a:nth-child(-n+3) { display: block; }
	.popup-photo-item { grid-template-columns: 1fr 1fr 1fr; }
    .review-prev { left: -12px; }
    .review-next { right: -12px; }
    .review-button,
	.travel-button,
	.blog-button,
	.place-button { position: absolute; top: 0; right: 0; }
	.card-photo-star { width: auto; }
	.card-review { padding-right: 30px; height: 100%; }
	.card-review-info { padding: 30px 0 0px; flex: 1; display: flex; flex-direction: column; }
	.card-review-photo { margin-right: 15px; width: 33.33%; }
	.card-review-photo img { object-position: unset; }
	.review { margin-bottom: 67px; }
	.review.is-alt { margin-bottom: 80px; }
	.review.is-alt .review-holder { display: grid; grid-row-gap: 18px; grid-column-gap: 15px; grid-template-columns: repeat(2, 1fr); }
	.review-item:not(:last-of-type) { margin-bottom: 0; }
	.card-review { padding-right: 30px; }
	.card-review-info { padding: 30px 0 27px; flex: 1; }
	.card-review-photo { margin-right: 15px; width: 33.33%; }
	.card-review-photo img { object-position: unset; }
	.blog-column { grid-template-columns: repeat(2, 1fr); }
	.card-filter-group { flex: auto; width: auto; }
}

@media only screen and (min-width: 1024px) {
.seo { grid-template-columns: repeat(2, 1fr); gap: 60px; }
    .track { margin-bottom: 71px; }
    .track-column { grid-template-columns: repeat(3, 1fr); }
    .track-info img { width: auto; }
	:root {
		--font-size-h1: 100px;
		--font-size-h2: 30px;
		--font-size-h3: 22px;
	}
    .wrapper { padding-top: 137px; }
    .header-holder { padding: 0 20px; }
    .header-right { margin-right: 0; }
    .header-menu { display: block; }
    .mobile-menu { display: none; }
	.usp .swiper-slide { width: auto!important; }
    .footer-partners { margin-bottom: 67px; padding-right: 40px; padding-left: 40px; }
    .footer-top { margin-bottom: 54px; padding-bottom: 73px; }
    .footer-title { margin-bottom: 7px; padding: 0; font-size: 20px; }
    .footer-title:after { display: none; }
    .footer-info { margin-bottom: 0; width: 34%; }
    .footer-subscribe { margin-bottom: 0; width: 61%; }
    .footer-column { padding-bottom: 43px; display: flex; flex-wrap: wrap; gap: 20px; justify-content: space-between; }
    .footer-menu { padding: 0; border: 0; border-radius: 0; }
    .footer-social-media li a { font-size: 28px; }
    .footer-hidden-link { padding: 0; display: block !important; max-height: 100% !important; }
    .footer-hidden-link ul { padding-bottom: 21px; }
    .hero { margin-bottom: 70px; display: flex; align-items: center; justify-content: center;  min-height: calc(100vh - 174px);}
    .hero.is-alt { min-height: calc(100vh - 174px);}
    .hero h1 { margin-bottom: 80px; line-height: 0.9; }
    .hero-intro { margin: 0 auto; max-width: 816px; }
    .form-travel { padding: 8px; flex-wrap: nowrap; border-radius: 75px; }
    .form-travel .form-travel-select { width: 33.5%; }
    .form-travel .button { width: 30%; }
    .place-column { grid-template-columns: repeat(4, 1fr); }
    .place-column { grid-template-columns: repeat(4, 1fr); }
    .over { margin-bottom: 80px; }
    .over-photo { margin-right: 30px; margin-bottom: 0; width: 41%; }
    .over-intro { flex: 1; }
    .over-intro p { margin-bottom: 17px; }
    .over.reverse .over-column { flex-direction: row-reverse; }
    .over.reverse .over-photo { margin-right: 0; margin-left: 30px; }
    .cta-block { display: flex; justify-content: space-between; column-gap: 10px; }
    .cta-photo { width: 20%; }
    .cta-intro { padding: 50px 0; width: 55%; }
    .travel { margin-bottom: 80px; }
    .travel-column { grid-template-columns: repeat(3, 1fr); }
    .card-travel-photo:after { height: 40%; }
    .card-travel-text { opacity: 0; visibility: hidden; max-height: 0; overflow: hidden; }
    .card-travel:hover .card-travel-text { margin-bottom: 15px; opacity: 1; visibility: visible; max-height: 270px; }
    .card-travel:hover .card-travel-photo:after { height: 90%; }
    .blog { margin-bottom: 80px; }
    .blog-column { grid-template-columns: repeat(3, 1fr); }
    .action-block { margin-bottom: 80px; padding-top: 40px; display: flex; flex-wrap: wrap; justify-content: flex-end; min-height: 376px; }
    .action-photo { position: absolute; top: 0; left: 0; width: 51%; height: 100%; margin: 0; }
    .action-photo img { height: 100%; object-fit: cover; }
    .action-intro { margin-right: -80px; width: 60%; }
    .review-intro h2 { max-width: 400px; }
    .review-intro { padding-right: 0; padding-left: 0; }
	.review-button { right: 0; }
	.review .swiper-button-prev { left: -58px; }
	.review .swiper-button-next { right: -58px; left: unset; }
}

@media only screen and (min-width: 1025px) {
.certificate-column { column-gap: 46px; row-gap: 34px; }
    .hero { margin-bottom: 70px; display: flex; align-items: center; justify-content: center; }
    .hero h1 { margin-bottom: 80px; line-height: 0.9; }
    .hero-intro { margin: 0 auto; max-width: 816px; }
    .blog-banner-titel { font-size: 36px; }
    .book { margin-bottom: 84px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; column-gap: 20px; }
    .book h2 { margin-bottom: 35px; }
    .book-intro { width: 31%; }
    .book-photo-left,
    .book-photo-right { width: 31%; overflow: hidden; height: 381px; }
    .book-photo-left { border-radius: var(--border-radius) 0 0 var(--border-radius); }
    .book-photo-right { border-radius: 0 var(--border-radius) var(--border-radius) 0;}
    .book-intro input,
    .book-intro .button { width: 100%; }
    .card-subscribe .gfield--type-text { flex: 1 !important; width: auto !important; min-width: 0 !important; padding-right: 10px !important; margin-bottom: 0 !important; }
    .card-subscribe .gfield--type-email { flex: 1 !important; width: auto !important; min-width: 0 !important; padding-right: 10px !important; margin-bottom: 0 !important; }
    .card-subscribe .gfield--type-submit { flex: 0 0 auto !important; width: auto !important; margin-bottom: 0 !important; }
    .card-subscribe .gform_wrapper .gform-button,
    .card-subscribe .gform_wrapper input[type="submit"] { width: auto !important; }
    .card-subscribe .gfield--type-consent { margin-top: 10px !important; }
    .over-photo { margin-right: 30px; }
    .over-photo img { width: 100%; }
    .over.reverse .over-photo { margin-right: 0; margin-left: 30px; }
    .card-person-image { margin: 0; width: 296px; }
	.travel { margin-bottom: 80px; }
    .faq-tab li { padding: 4px 51px 3px; }
	.photo-block-left { width: 71.7%; }
	.photo-block-right { width: 28.3%; }
	.luxury h1 { font-size: 48px; line-height: 1; }
	.tabs-block .custom-select { display: none; }
	.nav-tabs { display: block; }
	.nav-tabs li a { font-size: 18px; }
	.tabs-block-sticky { top: 61px; }
	.about { margin-bottom: 72px; }
	.about-photo { margin-left: 50px; width: 32.4%; }
	.information,
	.journey { margin-bottom: 72px; }
	.support-holder { display: flex; justify-content: space-between; }
	.support-left { margin-bottom: 0; padding: 7px 10px; width: 27.5%; }
	.support-right { padding: 30px 10px 29px 30px; width: 71.7%; }
	.support-tab { display: flex; }
	.support select { display: none; }
	.faq-tab li { padding: 2px 51px 2px; }
	.js-close-model { right: -25px; width: 48px; height: 48px; }
	.support-left { padding: 7px 31px 7px 10px; }
	.blog { margin-bottom: 71px; }
	.blog.is-alt { padding-top: 24px; }
}

@media only screen and (min-width: 1200px) {
.specialist-block { padding: 70px 16.8% 76px; }
    .footer-info { margin-bottom: 0; width: 25%; }
    .footer-subscribe { margin-bottom: 0; width: 36%; }
    .footer-social-media { margin-left: auto; width: auto; }
    .contact { margin-bottom: 72px; }
    .contact-right { margin-left: 16px; width: 24%; }
    .card-form { padding: 30px; }
    .card-form .ginput_container_textarea textarea { height: 223px; border-radius: 40px; }
    .over-photo { margin-right: 80px; }
    .over.reverse .over-photo { margin-left: 80px; }
    .cta-photo { width: 21.7%; }
    .cta-intro { width: 45%; }
    .error-intro ul { margin-bottom: 28px; }
    .over { margin-bottom: 80px; }
    .over-photo { margin-right: 80px; }
    .over-intro p { margin-bottom: 17px; }
    .over.reverse .over-photo { margin-left: 80px; }
    blockquote { padding-left: 99px; }
    blockquote i { left: 30px; font-size: 34px; }
    blockquote { padding-left: 99px; }
    blockquote i { left: 30px; font-size: 34px; }
	.travel-column { grid-template-columns: repeat(3, 1fr); }
	.card-travel:hover .card-travel-text { max-height: 250px; margin-bottom: 25px; }
	.card-travel-info strong { margin-bottom: 24px; }
    .action-intro { margin-right: 0; width: 47%; }
	.blog-column { grid-template-columns: repeat(3, 1fr); }
}

@media only screen and (min-width: 1440px) {
.centered { padding-right: calc((100% - var(--width-base)) / 2); padding-left: calc((100% - var(--width-base)) / 2); }
    .centered-lg { padding-right: 20px; padding-left: 20px; }
    .wrapper { padding-top: 137px; }
    .usp .swiper { margin-left: auto; width: auto; }
    .usp-info { position: absolute; top: 50%; right: 12px; transform: translateY(-50%); }
    .header-holder { padding: 0 13px; }
    .header-right { margin-right: 0; }
    .header-menu { display: block; }
    .header .button { margin-left: 20px; display: block; }
    .mobile-menu { display: none; }
    .footer.is-alt { padding-bottom: 70px; }
    .footer-subscribe { margin-bottom: 0; width: 49%; }
    .card-subscribe-group { display: block; }
    .card-subscribe input { width: 100%; }
    .card-subscribe .button-submit { margin-bottom: 0; }
    .cta-block { align-items: center; }
    .cta-photo { height: 326px; }
    .cta .button:not(:last-child) { margin-bottom: 0; }
    .book-photo-left { width: 21.7%; }
    .book-photo-right { width: 38.4%; }
    .book-intro { width: 31.3%; }
    .card-subscribe .button-submit { margin-bottom: 0; }
    .card-subscribe .gfield--type-text { flex: none !important; width: 100% !important; padding-right: 0 !important; margin-bottom: 10px !important; }
    .card-subscribe .gfield--type-email { flex: none !important; width: 100% !important; padding-right: 0 !important; margin-bottom: 10px !important; }
    .card-subscribe .gfield--type-submit { flex: none !important; width: 100% !important; margin-bottom: 10px !important; }
    .card-subscribe .gform_wrapper .gform-button,
    .card-subscribe .gform_wrapper input[type="submit"] { width: 100% !important; }
    .person { margin-bottom: 78px; }
    .card-travel-info strong { margin-bottom: 24px; }
    .card-travel:hover .card-travel-text { max-height: 250px; margin-bottom: 25px; }
    .card-travel-info li { margin-bottom: 3px; line-height: 1.7; }
    .action-intro { width: 40.8%; }
	.sticky-block { display: flex; align-items: center; justify-content: space-between; }
	.sticky-block h5 { margin-bottom: 0; }
	.sticky-block-right { margin-top: 0; justify-content: flex-end; width: 50%; }
	.sticky-block-price { margin-bottom: 0; }
	.sticky-block .button { padding: 10px 20px; }
	.nav-tabs { padding: 0 40px 0 60px; }
	.review h2 { width: 35%; }
}

@media only screen and (min-width: 1881px) {
.centered-lg { padding-right: calc((100% - var(--width-large)) / 2); padding-left: calc((100% - var(--width-large)) / 2); }
    .centered-lg { padding-right: calc((100% - var(--width-large)) / 2); padding-left: calc((100% - var(--width-large)) / 2); }
    .card-subscribe-group { display: flex; }
    .book-intro input { width: 36%; }
    .book-intro .button { padding: 10px 20px; width: 38%; }
    .card-subscribe .gfield--type-text { flex: 1 !important; width: auto !important; min-width: 0 !important; padding-right: 10px !important; margin-bottom: 0 !important; }
    .card-subscribe .gfield--type-email { flex: 1 !important; width: auto !important; min-width: 0 !important; padding-right: 10px !important; margin-bottom: 0 !important; }
    .card-subscribe .gfield--type-submit { flex: 0 0 auto !important; width: auto !important; margin-bottom: 0 !important; }
    .card-subscribe .gform_wrapper .gform-button,
    .card-subscribe .gform_wrapper input[type="submit"] { width: auto !important; }
}