/*!
Theme Name: Holtkamper
Theme URI: http://underscores.me/
Author: Developer
Author URI: http://underscores.me/
Description: Holtkamper theme
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: holtkamper
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

Holtkamper is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

*/

html {
  scroll-behavior: smooth;
  scrollbar-gutter: stable;
}

/* ------------------------- CSS - UI Kit Reset -------------------------------------------------- */
.uk-h1, .uk-h2, .uk-h3, .uk-h4, .uk-h5, .uk-h6, .uk-heading-2xlarge, .uk-heading-large, .uk-heading-medium, .uk-heading-small, .uk-heading-xlarge, h1, h2, h3, h4, h5, h6 {color: inherit; line-height: inherit; margin-top:initial; margin: initial;}
.uk-link, a, .uk-link:hover{color: inherit; text-decoration: none;}
.uk-grid {margin-left: 0px;}
.uk-grid > * {padding-left: 0px;}
svg {max-width: none; height: auto; width: auto;}
*+address, *+dl, *+fieldset, *+figure, *+ol, *+p, *+pre, *+ul { margin-top: initial;}
address, dl, fieldset, figure, ol, p, pre, ul {margin: initial;}
ol, ul {padding-left: initial;}
.uk-link-toggle:focus .uk-link, .uk-link-toggle:hover .uk-link, .uk-link:hover, a:hover {color:inherit; text-decoration: inherit;}
em {color:inherit;}

::selection {
  background: inherit;
  color: inherit;
  text-shadow: inherit;
}

/* Table of Content
==================================================
	#Font-Face
	#Site Styles
	#Media Queries */

/* #Font-Face
================================================== */


/* #Site Styles
================================================== */

:root {
	--width-base: 1340px;
	--width-medium: 1230px;
	--width-large: 1358px;
	--font-size-base: 16px;
	--color-primary: #EA5D3C;
	--color-secondary: #F8D7BE;
	--color-white: #fff;
	--color-red: #F84131;
	--color-maroon: #B73322;
	--color-near-white: #D9D9D9;
	--color-black: #000;
	--color-bianca: #FAF7F2;
	--color-grey: #A3A3A3;
	--color-grey-medium: #6A7282;
	--color-grey-10: #F3F4F6;
	--color-grey-20: #F5F5F3;
	--color-grey-30: #EEEDEB;
	--color-grey-40: #BABABA;
	--color-grey-50: #A2A2A2;
	--color-grey-60: #8B8B8B;
	--color-grey-70: #B8B8B8;
	--color-grey-80: #F2F2F2;
	--color-grey-90: #F5F5F5;
	--color-grey-100: #C9C9C9;
	--color-grey-150: #A3A3A3;
	--color-grey-200: #F4F4F2;
	--color-grey-250: #717182;
	--color-grey-300: #E5E7EB;
	--color-grey-400: #FEF3EC;
	--color-grey-500: #F6F6F6;
	--color-grey-600: #9F9F9F;
	--color-grey-700: #767676;
	--color-grey-800: #E2E8F0;
	--color-grey-900: #6A6A6A;
	--color-light: #9E9E9E;
	--color-dark: #1D1D1D;
	--color-dark-medium: #333333;
	--color-dark-90: #1A1A1A;
	--color-dark-100: #E2E2E2;
	--color-dark-200: #242424;
	--color-dark-300: #0F172B;
	--color-dark-400: #151313;
	--color-dark-500: #272A2A;
	--color-dark-600: #161616;
	--color-dark-800: #171717;
	--color-dark-700: #909090;
	--color-dark-900: #2B1D15;
	--color-dark-solid: #969696;
	--muted: #6a7282;
	--border: #e5e7eb;
	--brand: #ea5d3c;
	--shadow: 0 0 5px rgba(15, 23, 42, 0.10);
	--font-family-base: 'Switzer Variable', sans-serif;
	--font-family-ui: 'Switzer Variable', sans-serif;
	--font-family-georgia: 'Georgia', sans-serif;
	--font-family-icons: 'icomoon', sans-serif;
	--line-height-base: 1.65;
	--font-size-h1: 64px;
	--font-size-h2: 51px;
	--font-size-h3: 40px;
	--font-size-h4: 24px;
	--font-size-h5: 25px;
	--font-size-h6: 20px;
	--line-height-heading: 1.1;
	--width: 100%;
	--height: 100%;
	--gutter-left: 15px;
	--gutter-right: 15px;
	--line-decoration-none: none;
	--duration: all .25s ease-in-out;
}

/* ### general ### */
* { margin: 0; padding: 0; box-sizing: border-box; }
html,
body { color: var(--color-dark-medium); font-size: var(--font-size-base); font-family: var(--font-family-base),  sans-serif; font-weight: 400; line-height: var(--line-height-base); background-color: var(--color-white); -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
body.is-menu-open { overflow: hidden; }
html.history-timeline-demo { width: 100%; background-color: #f5f0e8; }
body.history-timeline-demo { margin: 0; padding: 0; width: 100%; background-color: #f5f0e8; color: #1a1a1a; font-family: 'Inter', var(--font-family-base), sans-serif; }
body.history-timeline-demo #footerCntr { display: none; }
body.history-timeline-demo #wrapper,
body.history-timeline-demo #mainCntr,
body.history-timeline-demo #contentCntr,
body.history-timeline-demo .content_blocks { width: 100%; }
body.history-timeline-demo .content_blocks > :not(.expertise) { display: none; }
label { font-size: 14px; color: var(--color-dark-400); display: block; margin-bottom: 7px; }
label span { color: var(--color-red); }
input,
select,
textarea { padding: 12px 16px; position: relative; width: var(--width); font-size: 18px; font-family: var(--font-family-base), sans-serif; color: var(--color-dark-400); background-color: var(--color-white); min-height: 56px; border: 1px solid var(--color-grey-70); border-radius: 6px; }
select { cursor: pointer; padding: 10px 15px 13px; font-weight: 500; color: var(--color-black); background-color: var(--color-white); background-image: url('images/select-arrow.png'); background-repeat: no-repeat; border: solid 1px var(--color-grey-300); background-position: center right 18px; appearance: none; border-radius: 10px; }
textarea { height: 128px; resize: none; }
textarea::placeholder,
input::placeholder { color: var(--color-grey-70); }
input:focus,
textarea:focus { border: 1px solid var(--color-grey-70); }
img { display: block; border: 0; height: auto; max-width: var(--width); }
ul,
li { list-style-position: outside; }
:focus { outline: none; }
p { margin-bottom: 20px; }
a { transition: var(--duration); display: inline-block; }
h1,
h2,
h3,
h4,
h5,
h6 { margin-bottom: 20px; font-family: var(--font-family-base), sans-serif; color: var(--color-dark); font-weight: 400; line-height: var(--line-height-heading); }
h1,
.h1 { font-size: var(--font-size-h1); }
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); }

/* ### button ### */
.button { padding: 11px 34px; color: var(--color-white); border-radius: 4px; font-size: var(--font-size-base); min-height: 48px; display: inline-flex; align-items: center; font-weight: 600; text-decoration: var(--line-decoration-none); backdrop-filter: blur(5px); background-color: var(--color-primary); border: 0; justify-content: center; }
.button.button-arrow { padding-right: 18px; }
.button em { position: relative; width: 20px; height: 20px; font-style: normal; margin-left: 16px; overflow: hidden; }
.button em:after,
.button em:before { content: "\e905"; font-size: 10px; color: var(--color-black); font-family: var(--font-family-icons), sans-serif; transition: var(--duration); position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }
.button em:after { transform: translate(-25px, 50%); }
.button:hover em:before { transform: translate(10px, -25px); }
.button:hover em:after { transform: translate(-50%, -50%); }
.button.link { font-size: 20px; color: var(--color-dark); font-weight: 400; min-height: unset; position: relative; }
.button.link:after { content:''; position: absolute; bottom: -3px; left: 0; width: var(--width); height: 2px; background-color: var(--color-dark-100); }
.button.link em { margin-top: 5px; margin-left: 8px; }
.button.link em:after,
.button.link em:before { font-size: 10px; color: var(--color-primary); }



.button.button-white { background-color: var(--color-white); color: var(--color-dark-900); text-decoration: var(--line-decoration-none); }
.button.button-white em:after,
.button.button-white em:before { color: var(--color-primary); }
.button.button-white:focus,
.button.button-white:hover {color: var(--color-white); background-color: var(--color-primary); }
.button.button-white:focus em:before,
.button.button-white:hover em:before,
.button.button-white:focus em:after,
.button.button-white:hover em:after { color: var(--color-white); }


.button.button-orange { background-color: var(--color-primary); color: var(--color-white); text-decoration: var(--line-decoration-none); }
.button.button-orange em:after,
.button.button-orange em:before { color: var(--color-white); }
.button.button-orange:focus,
.button.button-orange:hover {color: var(--color-dark-900); background-color: var(--color-white); }
.button.button-orange:focus em:before,
.button.button-orange:hover em:before,
.button.button-orange:focus em:after,
.button.button-orange:hover em:after { color: var(--color-primary); }




.button.button-small { padding: 10px 18px; font-weight: 500; }
.button.button-blur { color: var(--color-white); background-color: rgba(158,158,158, .40); }
.button.button-blur em:after,
.button.button-blur em:before { color: var(--color-white); }
.button.button-blur:focus,
.button.button-blur:hover { background-color: var(--color-light); }
.button + .button { margin-left: 21px; }
.button.no-button { padding: 0; background-color: transparent; margin-left: 0; }
.button.button-link { font-size: 16px; color: var(--color-dark); font-weight: 400; min-height: unset; }
.button.button-link em { margin-left: 8px; }
.button.button-link em:after,
.button.button-link em:before { font-size: 8px; color: var(--color-primary); }
.button.button-outline {color: var(--color-black); background-color: var(--color-white); font-weight: 400; border: solid 1px rgba(204,204,204, .80); }
.button.button-outline em:after,
.button.button-outline em:before { color: var(--color-primary); }
.button-view { font-size: 20px; color: var(--color-dark); display: inline-flex; align-items: center; text-decoration: var(--line-decoration-none); position: relative; letter-spacing: -0.2px; }
.button-view i { font-size: 14px; margin-left: 14px; color: var(--color-primary); margin-top: 6px; }
.button-view:after { content:''; position: absolute; bottom: -3px; left: 0; width: var(--width); height: 2px; background-color: var(--color-dark-100); transform: scaleX(1); transform-origin: left center; transition-duration: 0.5s; transition-delay: 0.25s; transition-property: transform; }
.button-view:hover:after { transform: scaleX(0); transform-origin: right center; transition-delay: 0s; }
.button-view.large { font-size: 25px; position: relative; margin-right: 30px; }
.button-view.large i { position: absolute; top: 55%; right: -30px; margin: 0; transform: translateY(-50%) rotate(90deg); }
.button.button-submit { width: var(--width); justify-content: center; font-weight: 400; min-height: 54px; font-size: 18px; transition: var(--duration); cursor: pointer; }
.button.button-submit:focus,
.button.button-submit:hover { background-color: var(--color-dark); }

/* ### order-now bar (single vouwwagen "Bestel nu") ### */
.order-now-bar { display: flex; justify-content: center; align-items: center; width: 100%; }

/* ### global classes ### */
.clear { visibility: hidden; clear: both; height: 0; line-height: 0; }
.center { padding-right: calc((100% - var(--width-medium)) / 2); padding-left: calc((100% - var(--width-medium)) / 2);}
.centered { padding-right: calc((100% - var(--width-base)) / 2); padding-left: calc((100% - var(--width-base)) / 2); }
.centered-lg { padding-right: calc((100% - var(--width-large)) / 2); padding-left: calc((100% - var(--width-large)) / 2); }

/* ### wrapper ### */
#wrapper { position: relative; display: block; width: var(--width); min-height: 100%; overflow: clip; }
#wrapper:before { content:''; position: fixed; inset: 0; width: var(--width); height: var(--height); background-color: var(--color-black); opacity: 0; visibility: hidden; transition: var(--duration); pointer-events: none; z-index: 2; }
#wrapper.overlay:before { opacity: 1; visibility: visible; }

/* ### main container ### */
#mainCntr { width: 100%; }

body.single-vouwwagens { --product-header-top-offset: 16px; background-color:var(--color-white);}

.bg-grey {background-color: var(--color-grey-80);}

/* ### header container ### */
#headerCntr { position: fixed; top: 0; left: 0; z-index: 90; display: flex; flex-wrap: nowrap; align-items: flex-start; justify-content: space-between; width: var(--width); transition: var(--duration); }
#headerCntr .logo { margin-top: 29px; width: 162px; transition: var(--duration); }
#headerCntr .logo img { width: 100%; }
#headerCntr .button-hide { display: none; }
#headerCntr .button-outline { margin-left: 7px; padding: 11px 16px; }
#headerCntr .button-white { font-size: 15.5px; font-weight: 400; }
#headerCntr:after { position: absolute; bottom: 0; left: 0; opacity: 0; visibility: hidden; width: var(--width); height: 1px; background-color: var(--color-grey-300); transition: var(--duration); content: ''; }
#headerCntr.sticky { border-bottom: solid 1px var(--color-grey-300); background-color: var(--color-white); }
#headerCntr.sticky .logo { margin-top: 11px; mix-blend-mode: difference; }
#headerCntr.sticky .menuBox li { padding-top: 22px; padding-bottom: 22px; }
#headerCntr.sticky .menuBox li > a { font-size: 18px; color: var(--color-dark-800); }
#headerCntr.show .menuBox li a:hover,
#headerCntr.sticky .menuBox li a:hover { font-weight: 500; }
#headerCntr.sticky .menuBox li:is(.has-children, .menu-item-has-children) > a:after { top: 10px; color: var(--color-dark-800); }
#headerCntr.sticky .menuBox li:is(.has-children, .menu-item-has-children) > a:hover:after { color: var(--color-primary); }
#headerCntr.show .button-white,
#headerCntr.sticky .button-white { color: var(--color-white); background-color: var(--color-primary); }
#headerCntr.sticky .button-hide { display: inline-block; }
#headerCntr.sticky .menuBox .language { margin-left: 0; }
#headerCntr.sticky .mobileMenu span,
#headerCntr.sticky .mobileMenu span:before,
#headerCntr.sticky .mobileMenu span:after { background-color: var(--color-dark-800); }
#headerCntr.sticky .mobileMenu.is-active span { background-color: transparent; }
#headerCntr.show { z-index: 90; background-color: var(--color-white); }
#headerCntr.show .logo { mix-blend-mode: difference; }
#headerCntr.show .menuBox li > a { color: var(--color-dark-800); }
#headerCntr.show .menuBox li:is(.has-children, .menu-item-has-children) > a:after { color: var(--color-dark-800); }
#headerCntr.show .menuBox li:is(.has-children, .menu-item-has-children) > a:hover:after { color: var(--color-primary); }
#headerCntr.show .menuBox li:hover > a:after { color: var(--color-primary); }
#headerCntr.show:after { opacity: 1; visibility: visible; }
#headerCntr.submenu-visible .headerBox { margin-top: 0; }
body.single-vouwwagens #headerCntr.submenu-visible { background-color: transparent; border-bottom-color: transparent; }
body.single-vouwwagens #headerCntr.submenu-visible:after { opacity: 0; visibility: hidden; }
body.single-vouwwagens #headerCntr.submenu-visible .logo,
body.single-vouwwagens #headerCntr.submenu-visible .menuBox,
body.single-vouwwagens #headerCntr.submenu-visible .mobileMenu { opacity: 0; visibility: hidden; pointer-events: none; }
body.single-vouwwagens #headerCntr { top: var(--product-header-top-offset); }
body.single-vouwwagens #headerCntr.sticky { top: 0; }

/* ### dark header (voor pagina's met lichte achtergrond) ### */
body.dark-header #headerCntr { background-color: var(--color-white); border-bottom: solid 1px var(--color-grey-300); }
body.dark-header #headerCntr .logo { margin-top: 11px; mix-blend-mode: difference; }
body.dark-header #headerCntr .menuBox li { padding-top: 22px; padding-bottom: 22px; }
body.dark-header #headerCntr .menuBox li > a { font-size: 18px; color: var(--color-dark-800); }
body.dark-header #headerCntr .menuBox li:is(.has-children, .menu-item-has-children) > a:after { top: 10px; color: var(--color-dark-800); }
body.dark-header #headerCntr .menuBox li:is(.has-children, .menu-item-has-children) > a:hover:after { color: var(--color-primary); }
body.dark-header #headerCntr .button-white { color: var(--color-white); background-color: var(--color-primary); }
body.dark-header #headerCntr .button-hide { display: inline-block; }
body.dark-header #headerCntr .menuBox .language { margin-left: 0; }
body.dark-header #headerCntr .mobileMenu span,
body.dark-header #headerCntr .mobileMenu span:before,
body.dark-header #headerCntr .mobileMenu span:after { background-color: var(--color-dark-800); }
body.dark-header #headerCntr .mobileMenu.is-active span { background-color: transparent; }

.menuBox li:is(.current_page_item, .current-menu-item, .current_page_parent, .current-menu-ancestor) > a,
#headerCntr.show .menuBox li:is(.current_page_item, .current-menu-item, .current_page_parent, .current-menu-ancestor) > a,
#headerCntr.sticky .menuBox li:is(.current_page_item, .current-menu-item, .current_page_parent, .current-menu-ancestor) > a,
body.dark-header #headerCntr .menuBox li:is(.current_page_item, .current-menu-item, .current_page_parent, .current-menu-ancestor) > a { color: var(--color-primary); }




/* ### header box ### */
.headerBox { padding-top: 12px; padding-bottom: 14px; display: flex; align-items: center; flex-wrap: wrap; justify-content: space-between; background-color: var(--color-white); position: fixed; top: 0;  left: 0; width: 100%; z-index: 91; transition: var(--duration); margin-top: -80px; border-bottom: solid 1px var(--color-grey-300); }
.headerBox .left { display: flex; flex-wrap: wrap; align-items: center; width: 60%; }
.headerBox .left .panel { padding: 4px 0; max-width: 179px; width: 100%; border-right: solid 1px #E5E7EB; line-height: 1.4; margin-right: 37px; }
.headerBox .left .panel strong { font-size: 18px; font-weight: 500; }
.headerBox .left .panel em { font-size: 14px; font-style: normal; display: block; color: var(--color-dark-700);  }
.headerBox .left ul {  flex: 1; display: flex; flex-wrap: wrap; list-style: none; }
.headerBox .left li a { color: var(--color-black); text-decoration: none; font-weight: 500; }
.headerBox .left li a:hover { color: var(--color-primary); font-weight: 500; }
.headerBox .left li:not(:last-child) { margin-right: 25px; }
.headerBox .right { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
/* ### menu box ### */
.menuBox { flex: 1 1 auto; min-width: 0; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; column-gap: clamp(24px, 3vw, 48px); }
.menuBox > ul { display: flex; flex-wrap: wrap; justify-content: center; width: 100%; min-width: 0; list-style: none; }
.menuBox li { font-size: 18px; transition: var(--duration);  }
.menuBox > ul > li { padding-top: 32px; padding-bottom: 32px; }
.menuBox li a { color: var(--color-white); text-decoration: var(--line-decoration-none); position: relative; }
.menuBox li a:before { content:''; position: absolute; bottom: 0; left: 0; width: 0; height: 2px; background-color: var(--color-white); transition: var(--duration); }
.menuBox li a:focus:before,
.menuBox li a:hover:before { width: var(--width); }
.menuBox > ul > li:is(.has-children, .menu-item-has-children) > a { margin-right: 20px; }
.menuBox > ul > li:is(.has-children, .menu-item-has-children) > a:after { content: "\e916"; color: var(--color-white); font-size: 7px; position: absolute; top: 10px; right: -21px; font-family: var(--font-family-icons), sans-serif; transition: var(--duration); }
.menuBox li:is(.has-children, .menu-item-has-children) a:before { display: none; }
.menuBox li:is(.has-children, .menu-item-has-children) .angle-arrow { color: var(--color-black); font-size: 7px; position: absolute; top: 0; right: 0; font-family: var(--font-family-icons), sans-serif; transition: var(--duration); display: none; width: 33px; height: 33px; }
.menuBox li:is(.has-children, .menu-item-has-children) .angle-arrow.is-active i { transition: var(--duration); }
.menuBox li:is(.has-children, .menu-item-has-children) .angle-arrow.is-active i { transform: rotate(-180deg); }
.menuBox > ul > li:is(.has-children, .menu-item-has-children):hover > a:after { transform: rotate(180deg); }
.menuBox > ul > li:not(:last-child) { margin-right: 18px; }
.menuBox > ul > li.menu-item-has-children:not(.mega) { position: relative; }
.menuBox .sub-menu { list-style: none; position: absolute; top: 100%; left: 0; z-index: 93; display: block; min-width: 230px; padding: 12px 0; background-color: var(--color-white); border-radius: 0 0 10px 10px; box-shadow: 0 18px 35px rgba(0, 0, 0, 0.12); opacity: 0; visibility: hidden; pointer-events: none; transform: translateY(10px); transition: var(--duration); }
.menuBox > ul > li:hover > .sub-menu,
.menuBox > ul > li:focus-within > .sub-menu { opacity: 1; visibility: visible; pointer-events: auto; transform: translateY(0); }
.menuBox .sub-menu li,
#headerCntr.sticky .menuBox .sub-menu li,
body.dark-header #headerCntr .menuBox .sub-menu li { padding: 0; font-size: 16px; line-height: 1.3; }
.menuBox .sub-menu a,
#headerCntr.sticky .menuBox .sub-menu a,
body.dark-header #headerCntr .menuBox .sub-menu a { display: block; padding: 10px 18px; color: var(--color-dark-800); white-space: nowrap; }
.menuBox .sub-menu a:hover,
.menuBox .sub-menu a:focus { color: var(--color-primary); background-color: var(--color-grey-200); font-weight: 500; }
.menuBox .mega-menu { padding-top: 54px; padding-bottom: 13px; position: absolute; top: 100%; left: 0; width: var(--width); background-color: var(--color-white); border-radius: 0 0 10px 10px; opacity: 0; visibility: hidden; transition: var(--duration); z-index: 92; }
.menuBox .mega-menu::after { content: ''; position: absolute; left: 0; right: 0; bottom: 0; height: 1px; background-color: var(--color-dark-100); }
.menuBox > ul > li:hover > .mega-menu { opacity: 1; visibility: visible; }
.menuBox .mega-menu .mega-menu__title { font-size: 32px; letter-spacing: -0.5px; font-family: var(--font-family-base), sans-serif; font-weight: 400; line-height: var(--line-height-heading); color: var(--color-dark); margin: 0 0 20px; }
.menuBox .mega-menu .column { display: grid; column-gap: 17px; row-gap: 17px; grid-template-columns: repeat(5, 1fr); padding-bottom: 54px; margin-bottom: 0; }
.menuBox .mega-menu .column.column-links { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); column-gap: 17px; row-gap: 17px; border-bottom: 0; padding-bottom: 0; margin-bottom: 0; }
.menuBox .items { font-size: 17px; color: var(--color-dark-200); font-weight: 500; display: block; border-radius: 10px; overflow: hidden; }
.menuBox .items.items-simple { border-radius: 10px; overflow: hidden; min-width: 0; min-height: 220px; background-color: var(--color-grey-200); display: flex; flex-direction: column; }
.menuBox .items .image { width: var(--width); height: 171px; border-radius: 10px; overflow: hidden; position: relative; }
.menuBox .items .image img { width: var(--width); height: var(--height); object-fit: cover; transition: var(--duration); }
.menuBox .items .info { padding: 3px 0; }
.menuBox .items.items-simple .info { padding: 16px 20px; margin-top: auto; display: flex; align-items: center; justify-content: space-between; }
.menuBox .items .info strong { font-weight: 500; line-height: normal; font-size: 18px; }
.menuBox .items.items-simple .info strong { font-size: 20px; }
.menuBox .items .info span { font-size: 14px; color: var(--color-grey); display: block; line-height: normal; margin-top: -6px; }
.menuBox .items .image small { position: absolute; bottom: 10px; right: 10px; font-size: 11px; color: var(--color-white); width: 32px; height: 32px; border-radius: 75px; background-color: var(--color-primary); display: flex; align-items: center; justify-content: center; transition: var(--duration); opacity: 0; visibility: hidden; }
.menuBox .items.items-simple small { font-size: 11px; color: var(--color-white); width: 24px; height: 24px; border-radius: 75px; background-color: var(--color-primary); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.menuBox .items.items-simple:hover { background-color: var(--color-grey-30); }
.menuBox .items:focus small,
.menuBox .items:hover small { opacity: 1; visibility: visible; }
.menuBox .items:focus img,
.menuBox .items:hover img { transform: scale(1.05); }
.menuBox .bottom-link { display: flex; flex-wrap: wrap; justify-content: center; column-gap: 35px; position: relative; padding-top: 15px; }
.menuBox .bottom-link::before { content: ''; position: absolute; top: 0; left: 50%; width: 100vw; height: 1px; background-color: var(--color-dark-100); transform: translateX(-50%); }
.menuBox .language { position: relative; display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; margin-left: 0; margin-top: 0; margin-right: 0; transition: var(--duration); }

#headerCntr.sticky .menuBox,
body.dark-header #headerCntr .menuBox { column-gap: 16px; }

#headerCntr.sticky .menuBox > ul,
body.dark-header #headerCntr .menuBox > ul { flex-wrap: nowrap; }

#headerCntr.sticky .menuBox > ul > li:not(:last-child),
body.dark-header #headerCntr .menuBox > ul > li:not(:last-child) { margin-right: 14px; }

#headerCntr.sticky .menuBox > ul > li > a,
body.dark-header #headerCntr .menuBox > ul > li > a { white-space: nowrap; }

#headerCntr.sticky .menuBox .language,
body.dark-header #headerCntr .menuBox .language { flex-wrap: nowrap; column-gap: 8px; }

#headerCntr.sticky .menuBox .button-hide,
body.dark-header #headerCntr .menuBox .button-hide { position: static; white-space: nowrap; }

#headerCntr.sticky .button-outline,
body.dark-header #headerCntr .button-outline { margin-left: 0; padding: 10px 14px; min-height: 44px; font-size: 14px; }

#headerCntr.sticky .button.button-white.button-small,
body.dark-header #headerCntr .button.button-white.button-small { padding: 10px 14px; min-height: 44px; }

#headerCntr.sticky .button-outline em,
body.dark-header #headerCntr .button-outline em { margin-left: 12px; }
/* ### language switcher button ### */
.menuBox .lang-switcher-btn {
	width: 40px;
	height: 40px;
	margin-left: 12px;
	padding: 0;
	border: 0;
	border-radius: 100%;
	background-color: var(--color-white);
	color: var(--color-black);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: var(--duration);
	flex: 0 0 auto;
}
.menuBox .lang-switcher-btn:hover,
.menuBox .lang-switcher-btn:focus-visible { background-color: var(--color-dark-800); }
.menuBox .lang-switcher-btn:hover i,
.menuBox .lang-switcher-btn:focus-visible i { color: var(--color-white); }
.menuBox .lang-switcher-btn i { font-size: 18px; line-height: 1; color: var(--color-black); transition: color var(--duration); }

#headerCntr.sticky .menuBox .lang-switcher-btn,
body.dark-header #headerCntr .menuBox .lang-switcher-btn {
	width: 36px;
	height: 36px;
	margin-left: 8px;
	background-color: var(--color-grey-200);
}
#headerCntr.show .menuBox .lang-switcher-btn { background-color: var(--color-grey-200); }
#headerCntr.sticky .menuBox .lang-switcher-btn:hover,
#headerCntr.sticky .menuBox .lang-switcher-btn:focus-visible,
#headerCntr.show .menuBox .lang-switcher-btn:hover,
#headerCntr.show .menuBox .lang-switcher-btn:focus-visible,
body.dark-header #headerCntr .menuBox .lang-switcher-btn:hover,
body.dark-header #headerCntr .menuBox .lang-switcher-btn:focus-visible { background-color: var(--color-dark-800); }
body.dark-header #headerCntr .menuBox .lang-switcher-btn i { font-size: 16px; }

/* ### language drawer (UIkit offcanvas) ### */
.lang-drawer { padding: 40px 32px; background-color: var(--color-white); color: var(--color-black); width: 420px; max-width: 90vw; }
.lang-drawer .uk-offcanvas-close {
	position: absolute;
	top: 20px;
	right: 20px;
	width: 36px;
	height: 36px;
	padding: 0;
	border-radius: 100%;
	background-color: var(--color-black);
	color: var(--color-white);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	transition: var(--duration);
}
.lang-drawer .uk-offcanvas-close:hover,
.lang-drawer .uk-offcanvas-close:focus { background-color: var(--color-primary); color: var(--color-white); }
.lang-drawer .uk-offcanvas-close svg { width: 14px; height: 14px; }
.lang-drawer .lang-drawer__title { font-size: 20px; margin: 0 0 24px; color: var(--color-black); font-family: var(--font-family-base), sans-serif; font-weight: 400; line-height: var(--line-height-heading); }
.lang-drawer__list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; row-gap: 4px; }
.lang-drawer__item a {
	display: flex;
	align-items: center;
	column-gap: 14px;
	padding: 12px 14px;
	border: solid 1px transparent;
	border-radius: 8px;
	color: var(--color-black);
	text-decoration: none;
	transition: var(--duration);
}
.lang-drawer__item a:hover { background-color: var(--color-white); border-color: rgba(204, 204, 204, .80); color: var(--color-black); }
.lang-drawer__item.is-active a {
	background-color: var(--color-white);
	color: var(--color-black);
	border-color: rgba(204, 204, 204, .80);
	pointer-events: none;
}
.lang-drawer__flag { width: 24px; height: 18px; object-fit: cover; border-radius: 2px; box-shadow: 0 0 0 1px rgba(0, 0, 0, .08); }
.lang-drawer__name { font-size: 15px; font-weight: 500; }

/* ### mobileMenu ### */
.mobileMenu { position: absolute; top: 50%; right: 12px; z-index: 15; width: 48px; height: 48px; border: 0; border-radius: 4px; background-color: var(--color-white); transform: translateY(-50%); cursor: pointer; display: none; align-items: center; justify-content: center; padding: 0; }
.mobileMenu span { position: relative; display: flex; align-items: center; justify-content: center; width: 28px; height: 2px; background-color: var(--color-dark-800); transition: all 0.25s ease-in-out; }
.mobileMenu span:before,
.mobileMenu span:after { position: absolute; left: 0; width: 100%; height: 2px; background-color: var(--color-dark-800); transition: var(--duration); content: ''; }
.mobileMenu span:before { top: -8px; right: 0; left: unset; background-color: var(--color-dark-800); }
.mobileMenu span:after { bottom: -8px; }
.mobileMenu.is-active span { background: none; }
.mobileMenu.is-active span:before { top: auto; width: var(--width); background-color: var(--color-dark-800); transform: rotate(45deg); }
.mobileMenu.is-active span:after { bottom: auto; transform: rotate(-45deg); background-color: var(--color-dark-800); }

/* ### content container ### */
#contentCntr { width: var(--width); }
body.configurator-overview-page #contentCntr { padding-top: 72px; }

/* ### hero box ### */
.heroBox { padding-top: 110px; padding-bottom: 51px; margin-bottom: 100px; position: relative; height: 100dvh; display: flex; flex-wrap: wrap; align-items: flex-end; overflow: hidden; }
.heroBox h1,
.heroBox h2,
.heroBox h3 { color: var(--color-white); letter-spacing: -0.7px; line-height: 1.12; }
.heroBox .holder { position: relative; z-index: 1; width: var(--width); }
.heroBox .block { padding-left: 27px; padding-right: 33px; }
.heroBox .title { width: 50%; margin-bottom: 47px; }
.heroBox .bottom { font-size: 23px; color: var(--color-white); margin-bottom: 28px; display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; border-bottom: solid 2px rgba(255,255,255, .50); }
.heroBox .visit { max-width: 270px; width: 100%; line-height: 1.4; margin-bottom: 5px; letter-spacing: -0.3px; }
.heroBox .bottom p { margin-bottom: 0; }
.heroBox .bottom span { font-size: 15px; display: inline-block; text-transform: uppercase; letter-spacing: 0.5px; }
.heroBox .bg-photo { position: absolute; top: 0; left: 0; width: var(--width); height: var(--height); }
.heroBox .bg-photo:before,
.heroBox .bg-photo:after { content:''; position: absolute; top: 0; left: 0; width: var(--width); height: var(--height);
background: linear-gradient(to top, rgba(0,0,0,0.6) 0%,rgba(0,0,0,0) 70%); pointer-events: none; }
.heroBox .bg-photo:before { background: linear-gradient(to bottom, rgba(0,0,0,0.60) 0, rgba(0,0,0,0.60) 100px, rgba(0,0,0,0) 220px); }
.heroBox .bg-photo video,
.heroBox .bg-photo img,
.heroBox .bg-photo iframe { width: var(--width); height: var(--height); object-fit: cover; }
.heroBox .bg-photo iframe { border: 0; position: absolute; top: 0; left: 0; }
.heroBox .bg-photo .bunny-bg { position: absolute; top: 0; left: 0; width: var(--width); height: var(--height); overflow: hidden; pointer-events: none; }
.heroBox .bg-photo .bunny-bg__video,
.heroBox .bg-photo .bunny-bg__placeholder { position: absolute; top: 0; left: 0; display: block; }
.heroBox .bg-photo .bunny-bg__placeholder,
.heroBox .bg-photo .bunny-bg__loading { transition: opacity .3s linear, visibility .3s linear; }
.heroBox .bg-photo .bunny-bg__loading { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; background-color: rgba(0,0,0,.22); opacity: 0; visibility: hidden; color: var(--color-white); pointer-events: none; }
.heroBox .bg-photo .bunny-bg__loading-svg { width: 72px; max-width: 18%; }
.heroBox .bg-photo [data-bunny-background-init][data-player-status="playing"] .bunny-bg__placeholder,
.heroBox .bg-photo [data-bunny-background-init][data-player-status="paused"] .bunny-bg__placeholder,
.heroBox .bg-photo [data-bunny-background-init][data-player-activated="true"][data-player-status="ready"] .bunny-bg__placeholder { opacity: 0; visibility: hidden; }
.heroBox .bg-photo [data-bunny-background-init][data-player-status="loading"] .bunny-bg__loading { opacity: 1; visibility: visible; }
.heroBox .play-icon { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); text-align: center; z-index: 1; }
.heroBox .playPauseBtn { font-size: 22px; color: rgba(255,255,255, .50); width: 60px; height: 60px; border-radius: 75px; background-color: rgba(158, 158, 158, .40); display: flex; align-items: center; justify-content: center; text-decoration: var(--line-decoration-none); padding-left: 5px; z-index: 2; border: 0; cursor: pointer; margin: 0 auto; }
.heroBox .playPauseBtn.white { background-color: var(--color-white); color: var(--color-primary); }
.heroBox .play-icon span { font-size: 14px; color: var(--color-white); display: block; margin-top: 8px; }
.heroBox.is-alt { padding-top: 76px; padding-bottom: 45px; display: block; height: unset; min-height: auto; margin-bottom: 0; }
.heroBox.is-alt .title { width: 43%; }
.heroBox.is-alt .block { display: flex; flex-direction: column; min-height: 768px; }
.heroBox.is-alt .items { margin-top: auto; }
.heroBox.is-alt .visit { font-size: 25px; max-width: 300px; margin-bottom: 17px; }
.heroBox.is-alt .bg-photo:before { display: none; }
.heroBox.is-alt .bg-photo:after { background: linear-gradient(to right, rgba(0,0,0,0.60) 0%,rgba(0,0,0,0) 100%); }
.heroBox.inner .visit { font-size: 20px; text-align: right; }
.heroBox.inner1 { margin-bottom: 0; }
.heroBox.inner1 h2 { margin-bottom: 10px; }
.heroBox.inner1 .title { max-width: 370px; font-size: 16px; margin-bottom: 20px; }
.heroBox.inner1 .bg-photo:after { content:''; background: linear-gradient(to top, rgba(0,0,0,0.90) 20%,rgba(0,0,0,0) 60%); pointer-events: none; }


.heroBox.is-alt h2 {font-size: var(--font-size-h1);}


/* ### include box ### */
.includeBox { margin-bottom: 181px; display: flex; flex-wrap: wrap; justify-content: space-between; }
.includeBox h2 { letter-spacing: -0.6px; line-height: 1.22; margin-bottom: 54px; }
.includeBox .label { margin-top: 6px; width: 19%; color: var(--color-dark-700); padding-left: 10px; }
.includeBox .right { width: 48.2%; }
.includeBox .watch { max-width: 405px; width: var(--width); aspect-ratio: 1.68; border-radius: 16px; overflow: hidden; position: relative;
margin-bottom: 57px; background-color: var(--color-black); }
.includeBox .watch:after { content:''; position: absolute; bottom: 0; left: 0; width: var(--width); height: 60px; pointer-events: none;
background: linear-gradient(0deg, rgba(0, 0, 0, 0.9) 0%, rgba(0, 0, 0, 0) 100%); opacity: 0; }
.includeBox .watch video { width: var(--width); height: var(--height); object-fit: cover; transition: var(--duration); }
.includeBox .watch .play-btn { font-size: 24px; color: var(--color-primary); width: 60px; height: 60px; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); border-radius: 75px; background-color: var(--color-white); display: flex; align-items: center; justify-content: center; text-decoration: var(--line-decoration-none); padding-left: 5px; z-index: 2; border: 0; cursor: pointer; }
.includeBox .watch:hover video { opacity: 0.80; }
.includeBox.is-alt { margin-bottom: 171px; }
.includeBox.is-alt h2 { margin-bottom: 32px; }
.includeBox.is-alt .right { padding-right: 9%; line-height: 1.5; }
.includeBox.is-alt .right p { padding-right: 8%; margin-bottom: 15px; }
.includeBox.is-alt .button-view { margin-top: 70px; }

/* ### place box ### */
.placeBox { padding-top: 110px; padding-bottom: 80px; background-color: var(--color-grey-200); }
.placeBox h2 { font-size: 64px; text-align: center; letter-spacing: -0.7px; margin-bottom: 58px; }
.placeBox .compare { display: flex; flex-wrap: wrap; column-gap: 35px; justify-content: center; margin-bottom: 103px; }
.placeBox .items { border-radius: 8px; overflow: hidden; position: relative; }
.placeBox .items .image { width: var(--width); height: var(--height); position: relative; }
.placeBox .items .image img { width: var(--width); height: var(--height); object-fit: cover; }
.placeBox .items .image:after { content:''; position: absolute; top: 0; left: 0; background: linear-gradient(180deg, rgba(0, 0, 0, 0.6) 49.04%, rgba(0, 0, 0, 0) 100%); width: var(--width); height: 25%; }
.placeBox .overlay { padding: 18px 26px 27px 25px; display: flex; flex-direction: column; position: absolute; top: 0; left: 0; width: var(--width); height: var(--height); z-index: 1; }
.placeBox .overlay .top { display: flex; flex-wrap: wrap; align-items: flex-start; column-gap: 15px; justify-content: space-between; }
.placeBox .overlay .large { font-size: 56px; color: var(--color-white); line-height: 0.9; letter-spacing: -0.7px; margin-bottom: 16px; }
.placeBox .overlay .lead { display: flex; flex-wrap: wrap; column-gap: 5px; row-gap: 8px; }
.placeBox .overlay .lead span,
.filterBox .overlay .lead span { padding: 0 12px;  display: inline-block; font-size: 14px; color: var(--color-white); border-radius: 75px; border: solid 1px rgba(255,255,255, .16); background-color: rgba(158,158,158, .40); -webkit-backdrop-filter: blur(5px); backdrop-filter: blur(5px); }
.placeBox .mobileMeta { display: none; }
.placeBox .overlay .icons { color: var(--color-white); display: flex; flex-wrap: wrap; align-items: center; text-decoration: var(--line-decoration-none); }
.placeBox .overlay .icons span { text-decoration: underline; display: inline-block; margin-right: 10px; }
.placeBox .overlay .icons i { font-size: 20px; width: 48px; height: 48px; display: flex; align-items: center; justify-content: center; background-color: var(--color-white); border-radius: 75px; color: var(--color-primary); transition: var(--duration); }
.placeBox .overlay .icons:hover span { text-decoration: var(--line-decoration-none); }
.placeBox .overlay .icons:focus i,
.placeBox .overlay .icons:hover i { color: var(--color-white); background-color: var(--color-primary);  }
.placeBox .overlay .bottom {margin-top: auto; display: flex; flex-wrap: wrap; column-gap: 15px; align-items: center; justify-content: space-between; }
.placeBox .overlay .bottom .butons { display: flex; flex-wrap: wrap; gap: 12px; }
.placeBox .overlay .bottom .butons .button,
.placeBox .overlay .bottom .butons .button + .button { margin: 0; }
.placeBox .overlay .price { font-size: 18px; color: var(--color-white); }
.placeBox .block { position: relative; display: flex; flex-wrap: wrap; width: var(--width); justify-content: flex-end; }
.placeBox .swiper { border-radius: 16px; overflow: visible; margin-bottom: 24px; }
.placeBox .swiper-control { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; }
.placeBox .swiper-control .arrow { display: flex; margin-right: 96px; }
.placeBox .swiper-control .place-next { background-color: var(--color-dark); }
.placeBox .swiper-control .place-next:before,
.placeBox .swiper-control .place-next:after { color: var(--color-white); }

/* ### testimonial box ### */
.testimonialBox { padding-top: 62px; padding-bottom: 159px; background-color: var(--color-grey-200);  }
.testimonialBox .block { max-width: 730px; margin: 0 auto; text-align: center; font-size: 20px; color: var(--color-dark); }
.testimonialBox .label {  line-height: 1.4; margin-bottom: 27px; }
.testimonialBox .intro { font-size: 40px; line-height: 1.2; letter-spacing: -0.5px; margin-bottom: 44px; }
.testimonialBox .intro p:last-of-type { margin-bottom: 0; }
.testimonialBox .profile img { margin: 0 auto; border-radius: 75px; width: 64px; }
.testimonialBox .profile ul { list-style: none; display: flex; flex-wrap: wrap; justify-content: center; margin-bottom: 22px; }
.testimonialBox .profile li { font-size: 14px; margin: 0 3px; }
.testimonialBox .swiper-control { display: flex; justify-content: center; margin-bottom: 22px; position: relative; }
.testimonialBox .swiper-button-next,
.testimonialBox .swiper-button-prev { width: 40px; height: 40px; border: solid 1px var(--color-grey-100); background-color: transparent; }
.testimonialBox .swiper-button-prev { margin-right: 16px; }
.testimonialBox .swiper-button-next:hover,
.testimonialBox .swiper-button-prev:hover { border: solid 1px var(--color-white); background-color: var(--color-white); color: var(--color-dark); }
.testimonialBox .swiper-button-next:hover:before,
.testimonialBox .swiper-button-next:hover:after,
.testimonialBox .swiper-button-prev:hover:before,
.testimonialBox .swiper-button-prev:hover:after { color: var(--color-dark);  }
.testimonialBox .swiper-button-prev:before,
.testimonialBox .swiper-button-prev:after,
.testimonialBox .swiper-button-next:before,
.testimonialBox .swiper-button-next:after { font-size: 15px;}
.testimonialBox--dynamic { background-color: var(--color-grey-200); }
.testimonialBox--dynamic .block { max-width: 860px; }
.testimonialBox--dynamic .label { max-width: 34ch; margin: 0 auto 32px; font-size: 14px; text-transform: uppercase; letter-spacing: 0.08em; color: var(--color-grey-medium); }
.testimonialBox__content { margin-bottom: 34px; }
.testimonialBox__content .title { margin-bottom: 24px; }
.testimonialBox--dynamic .intro { max-width: 18ch; margin-left: auto; margin-right: auto; }
.testimonialBox--dynamic .intro em { font-style: normal; }
.testimonialBox--dynamic .profile--dynamic { display: flex; flex-direction: column; align-items: center; text-align: center; }
.testimonialBox--dynamic .profile--dynamic img,
.testimonialBox--dynamic .profile--dynamic .profile__image--placeholder { width: 112px; height: 112px; margin: 0 auto 16px; border-radius: 999px; object-fit: cover; background-color: var(--color-grey-30); display: block; }
.testimonialBox--dynamic .profile--dynamic .profile__image--placeholder { background: linear-gradient(135deg, rgba(17,17,17,0.1), rgba(17,17,17,0.02)); }
.testimonialBox--dynamic .profile--dynamic .name { font-size: 24px; line-height: 1.05; letter-spacing: -0.04em; margin-bottom: 6px; }
.testimonialBox--dynamic .profile--dynamic .location { font-size: 16px; color: var(--color-grey-medium); margin-bottom: 12px; }
.testimonialBox--dynamic .profile--dynamic ul { margin-bottom: 0; }
.testimonialBox__actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 14px; margin-top: 28px; }
.testimonialBox__actions .button { margin: 0; }
.testimonialBox--compact .block { max-width: 1280px; }
.testimonialBox--compact .intro { font-size: 32px; margin-bottom: 32px; }
.testimonialBox--compact .profile--dynamic img,
.testimonialBox--compact .profile--dynamic .profile__image--placeholder { width: 92px; height: 92px; }
.testimonialBox--compact .profile--dynamic .name { font-size: 21px; }
.testimonialBox--homepage-compact { background-color: var(--color-grey-200); }
.testimonialBox--card-slider { overflow-x: hidden; overflow-x: clip; overflow-y: visible; }
.testimonialBox--card-slider .block { max-width: 1280px; }
.testimonialBox--card-slider .testimonialBox__content { margin-bottom: 40px; }
.testimonialBox--card-slider .flickity-item { height: auto; align-self: stretch; }

/* ========== Flickity slider (Osmo watchCSS) ========== */
.flickity-slider-group { width: 100%; position: relative; }
.flickity-slider-group .flickity-viewport { overflow: visible; width: 100%; }
.flickity-slider-group .flickity-list { width: 100%; display: flex; }
.flickity-slider-group .flickity-item { width: calc((99.99% / var(--flick-col)) - (var(--flick-gap) * ((var(--flick-col) - 1) / var(--flick-col)))); margin-right: var(--flick-gap); flex-shrink: 0; display: flex; }
.flickity-slider-group .flickity-controls { pointer-events: none; display: flex; align-items: center; justify-content: space-between; width: 100%; margin-top: 24px; position: relative; z-index: 2; }
.flickity-slider-group .flickity-arrows { pointer-events: none; display: flex; align-items: center; justify-content: flex-end; position: relative; z-index: 2; order: 2; }
.flickity-slider-group .flickity-arrow { pointer-events: auto; cursor: pointer; border-radius: 75px; justify-content: center; align-items: center; width: 56px; height: 56px; padding: 0; display: flex; position: relative; overflow: hidden; color: var(--color-grey); background-color: var(--color-white); transition: var(--duration); }
.flickity-slider-group .flickity-arrow + .flickity-arrow { margin-left: 12px; }
.flickity-slider-group .flickity-arrow:not(.is--flipped) { color: var(--color-white); background-color: var(--color-dark); }
.flickity-slider-group .flickity-arrow svg { display: none; }
.flickity-slider-group .flickity-arrow.is--flipped { transform: none; }
.flickity-slider-group .flickity-arrow:before,
.flickity-slider-group .flickity-arrow:after { content: "\e906"; font-size: 16px; color: currentColor; font-family: var(--font-family-icons), sans-serif; transition: var(--duration); position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }
.flickity-slider-group .flickity-arrow:after { transform: translate(-50px, -50%); }
.flickity-slider-group .flickity-arrow:not([disabled]):hover:before { transform: translate(50px, -50%); color: var(--color-white); }
.flickity-slider-group .flickity-arrow:not([disabled]):hover:after { transform: translate(-50%, -50%); color: var(--color-white); }
.flickity-slider-group .flickity-arrow:not([disabled]):hover { background-color: var(--color-dark); }
.flickity-slider-group .flickity-arrow.is--flipped:before,
.flickity-slider-group .flickity-arrow.is--flipped:after { content: "\e902"; }
.flickity-slider-group .flickity-arrow.is--flipped:after { transform: translate(50px, -50%); }
.flickity-slider-group .flickity-arrow.is--flipped:not([disabled]):hover:before { transform: translate(-50px, -50%); color: var(--color-white); }
.flickity-slider-group .flickity-arrow.is--flipped:not([disabled]):hover:after { transform: translate(-50%, -50%); color: var(--color-white); }
.flickity-slider-group [data-flickity-control][disabled] { cursor: default; pointer-events: none; }
.flickity-slider-group .flickity-dots { pointer-events: auto; width: auto; position: relative; z-index: 1; order: 1; }
.flickity-slider-group .flickity-dots-list { gap: 8px; justify-content: flex-start; align-items: center; display: flex; }
.flickity-slider-group .flickity-dot { pointer-events: auto; background-color: rgba(0,0,0, 0.30); border-radius: 50%; width: 8px; height: 8px; cursor: pointer; border: 0; padding: 0; opacity: 1; transition: var(--duration); }
.flickity-slider-group [data-flickity-dot="active"] { background-color: var(--color-black); width: 32px; height: 8px; border-radius: 25px; }
.flickity-slider-group[data-flickity-status="active"] [data-flickity-list]::after { content: "flickity"; display: none; }
.flickity-slider-group[data-flickity-status="active"] [data-flickity-list] { display: block; }
.testimonialBox__slider { padding: 8px 0 0; }

@media screen and (min-width: 992px) {
	.testimonialBox__slider[data-flickity-type="cards"] { --flick-col: 3; --flick-gap: 2em; }
	.testimonialBox--model .testimonialBox__slider[data-flickity-count="1"] { --flick-col: 1; }
	.testimonialBox--model .testimonialBox__slider[data-flickity-count="2"] { --flick-col: 2; }
	.testimonialBox--model .testimonialBox__slider[data-flickity-count="3"] { --flick-col: 3; }
	.testimonialBox__slider[data-flickity-type="cards"]:is([data-flickity-count="1"],[data-flickity-count="2"],[data-flickity-count="3"]) [data-flickity-list]::after { content: ""; display: block; }
	.testimonialBox__slider[data-flickity-type="cards"]:is([data-flickity-count="1"],[data-flickity-count="2"],[data-flickity-count="3"]) [data-flickity-list] { display: flex; }
	.testimonialBox__slider[data-flickity-type="cards"]:is([data-flickity-count="1"],[data-flickity-count="2"],[data-flickity-count="3"]) [data-flickity-controls] { display: none; }
	.testimonialBox__slider[data-flickity-type="cards"] [data-flickity-dot]:nth-last-child(-n+2) { display: none; }
}
@media (min-width: 768px) and (max-width: 991px) {
	.testimonialBox__slider[data-flickity-type="cards"] { --flick-col: 2.5; --flick-gap: 1.5em; }
	.testimonialBox__slider[data-flickity-type="cards"]:is([data-flickity-count="1"],[data-flickity-count="2"]) [data-flickity-list]::after { content: ""; display: block; }
	.testimonialBox__slider[data-flickity-type="cards"]:is([data-flickity-count="1"],[data-flickity-count="2"]) [data-flickity-list] { display: flex; }
	.testimonialBox__slider[data-flickity-type="cards"]:is([data-flickity-count="1"],[data-flickity-count="2"]) [data-flickity-controls] { display: none; }
	.testimonialBox__slider[data-flickity-type="cards"] [data-flickity-dot]:nth-last-child(1) { display: none; }
}
@media screen and (max-width: 767px) {
	.testimonialBox__slider[data-flickity-type="cards"] { --flick-col: 1; --flick-gap: 1em; }
	.testimonialBox__slider[data-flickity-type="cards"] .flickity-viewport { overflow: hidden; }
	.testimonialBox__slider[data-flickity-type="cards"] .flickity-controls { position: static; margin-top: 18px; }
	.testimonialBox__slider[data-flickity-type="cards"] .flickity-arrows { position: absolute; top: 50%; left: -20px; right: -20px; justify-content: space-between; transform: translateY(-50%); }
	.testimonialBox__slider[data-flickity-type="cards"]:is([data-flickity-count="1"]) [data-flickity-list]::after { content: ""; display: block; }
	.testimonialBox__slider[data-flickity-type="cards"]:is([data-flickity-count="1"]) [data-flickity-list] { display: flex; }
	.testimonialBox__slider[data-flickity-type="cards"]:is([data-flickity-count="1"]) [data-flickity-controls] { display: none; }
	.testimonialBox--card-slider .flickity-item .testimonialHomeCard,
	.testimonialBox--card-slider .flickity-item article.testimonialHomeCard { min-height: 0 !important; height: auto !important; }
	.testimonialBox--card-slider .flickity-item { min-height: 0 !important; }
}

/* ========== Review card (Holtkamper brand) ========== */
.testimonialHomeCard { background: var(--color-white); border-radius: 8px; padding: 28px; display: flex; flex-direction: column; gap: 24px; width: 100%; height: auto; min-height: 100%; box-sizing: border-box; box-shadow: 0 1px 2px rgba(0,0,0,.04), 0 8px 24px rgba(0,0,0,.04); text-align: left; }
.testimonialHomeCard--homepage-compact .testimonialHomeCard__header { order: 1; }
.testimonialHomeCard--homepage-compact .testimonialHomeCard__quoteWrap { order: 2; flex: 0 0 auto; }
.testimonialHomeCard--homepage-compact .testimonialHomeCard__specs { order: 3; }
.testimonialHomeCard--homepage-compact .testimonialHomeCard__cta { order: 4; }
.testimonialHomeCard__header { display: flex; align-items: center; gap: 16px; }
.testimonialHomeCard__avatar { width: 64px; height: 64px; border-radius: 50%; overflow: hidden; background: var(--color-grey-200); flex-shrink: 0; display: block; position: relative; }
.testimonialHomeCard__avatar--placeholder { background: linear-gradient(135deg, rgba(17,17,17,0.1), rgba(17,17,17,0.02)); }
.testimonialHomeCard__image { width: 100%; height: 100%; object-fit: cover; display: block; }
.testimonialHomeCard__profile { display: flex; flex-direction: column; min-width: 0; }
.testimonialHomeCard__name { font-size: 21px; font-weight: 600; line-height: 1.2; letter-spacing: -0.01em; color: var(--color-dark); }
.testimonialHomeCard__location { font-size: 15px; color: var(--color-grey-medium); margin-top: 2px; }
.testimonialHomeCard__specs { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.testimonialHomeCard__spec { background: var(--color-grey-200); border-radius: 16px; padding: 14px 16px; display: flex; flex-direction: column; gap: 6px; }
.testimonialHomeCard__spec--wide { grid-column: span 2; }
.testimonialHomeCard__specLabelRow { display: flex; align-items: center; gap: 6px; color: var(--color-grey-medium); }
.testimonialHomeCard__specLabelRow svg { width: 14px; height: 14px; flex-shrink: 0; }
.testimonialHomeCard__specLabel { font-size: 11px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; }
.testimonialHomeCard__specValue { font-size: 17px; font-weight: 500; color: var(--color-dark); line-height: 1.35; }
.testimonialHomeCard__partyIcons { display: inline-flex; align-items: flex-end; gap: 8px; flex-wrap: wrap; color: var(--color-dark); font-size: 22px; line-height: 1; }
.testimonialHomeCard__partyIcons .fa-user--kid { font-size: 15px; }
.testimonialHomeCard__partyIcons .fa-dog { font-size: 20px; }
.testimonial-single__partyIcons { display: inline-flex; align-items: flex-end; gap: 10px; flex-wrap: wrap; color: var(--color-dark); font-size: 26px; line-height: 1; }
.testimonial-single__partyIcons .fa-user--kid { font-size: 18px; }
.testimonial-single__partyIcons .fa-dog { font-size: 24px; }
.testimonialHomeCard__quoteWrap { display: flex; flex-direction: column; gap: 10px; flex: 1 1 auto; }
.testimonialHomeCard__quoteLabel { font-size: 11px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: var(--color-grey-medium); }
.testimonialHomeCard__quote { margin: 0; font-size: 20px; line-height: 1.4; font-style: italic; font-weight: 400; color: var(--color-dark); }
.testimonialHomeCard__quote:before { content: "\201C"; }
.testimonialHomeCard__quote:after { content: "\201D"; }
.testimonialHomeCard__cta { align-self: flex-start; display: inline-flex; align-items: center; gap: 10px; color: var(--color-black);background-color: var(--color-white); font-weight: 400; border: solid 1px rgba(204,204,204, .80); text-decoration: none; padding: 14px 22px; border-radius: 4px; font-weight: 600; font-size: 16px; margin-top: auto; transition: background-color .2s ease; }
.testimonialHomeCard__cta:hover { background: var(--color-primary); color: var(--color-white); box-shadow: none;}
.testimonialHomeCard__cta svg { width: 16px; height: 16px; color:var(--color-primary);}
.testimonialHomeCard__cta:hover svg {  color:var(--color-white);}
.testimonial-card { display: flex; flex-direction: column; gap: 28px; padding: 40px; border-radius: 16px; background-color: var(--color-white); text-align: left; box-shadow: 0 18px 44px rgba(15, 23, 42, 0.08); }
.testimonial-card__header { display: grid; grid-template-columns: minmax(0, 320px) 1fr; gap: 28px; align-items: start; }
.testimonial-card__profile { display: grid; grid-template-columns: 180px 1fr; align-items: center; gap: 24px; }
.testimonial-card__avatar { flex: 0 0 auto; }
.testimonial-card__avatar-image { width: 180px; height: 220px; object-fit: cover; border-radius: 16px; background-color: var(--color-grey-30); display: block; }
.testimonial-card__avatar-image--placeholder { background: linear-gradient(135deg, rgba(17,17,17,0.1), rgba(17,17,17,0.02)); }
.testimonial-card__name { margin: 0 0 6px; font-size: 28px; line-height: 1; letter-spacing: -0.04em; }
.testimonial-card__location { margin: 0; color: var(--color-grey-medium); font-size: 16px; }
.testimonial-stars { list-style: none; display: flex; flex-wrap: wrap; gap: 6px; margin: 14px 0 0; padding: 0; color: var(--color-primary); }
.testimonial-stars li { line-height: 1; }
.testimonial-card__meta { list-style: none; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin: 0; padding: 0; }
.testimonial-card__meta li { display: flex; flex-direction: column; gap: 6px; padding: 16px 18px; border-radius: 16px; background-color: var(--color-grey-20); }
.testimonial-card__meta span { font-size: 12px; letter-spacing: 0.08em; text-transform: uppercase; color: var(--color-grey-medium); }
.testimonial-card__meta strong { font-size: 18px; line-height: 1.2; font-weight: 500; color: var(--color-dark); }
.testimonial-card__quote { margin: 0; font-size: 34px; line-height: 1.1; letter-spacing: -0.05em; color: var(--color-dark-90); position: relative; }
.testimonial-card__quote:before { content: "“"; }
.testimonial-card__quote:after { content: "”"; }
.testimonial-card__quote p { margin: 0; display: inline; }
.testimonial-card__quote br { display: block; content: ""; margin-top: 0.2em; }
.testimonial-card__answers { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.testimonial-card__answer { display: flex; flex-direction: column; gap: 12px; padding: 22px 24px; border-top: 1px solid rgba(0, 0, 0, 0.12); background: rgba(255,255,255,0.6); }
.testimonial-card__answer span { font-size: 13px; letter-spacing: 0.08em; text-transform: uppercase; color: var(--color-grey-medium); }
.testimonial-card__answer-copy,
.testimonial-card__answer-copy p { margin: 0; font-size: 18px; line-height: 1.45; color: var(--color-dark-700); }
.testimonial-card__answer-copy p + p { margin-top: 0.75em; }
.testimonial-card__actions { display: flex; flex-wrap: wrap; gap: 14px; align-items: center; }
.testimonial-card__actions .button { margin-bottom: 0; }
.testimonialBox--compact .block { max-width: 1280px; }
.testimonialBox--compact .label { max-width: 38ch; }
.testimonial-card--compact { gap: 24px; padding: 32px; }
.testimonial-card--compact .testimonial-card__header { grid-template-columns: 1fr; gap: 18px; }
.testimonial-card--compact .testimonial-card__profile { grid-template-columns: 120px 1fr; gap: 18px; }
.testimonial-card--compact .testimonial-card__avatar-image { width: 120px; height: 140px; border-radius: 18px; }
.testimonial-card--compact .testimonial-card__quote { font-size: 30px; }
.testimonial-card--compact .testimonial-card__actions { gap: 12px; }


/* ### enquiry box ### */
.enquiryBox { padding-top: 89px; padding-bottom: 84px; background-color: var(--color-dark-600); }
.enquiryBox h1 { color: var(--color-white); }
.enquiryBox h2 { color: var(--color-white); letter-spacing: -1px; line-height: 1.2; margin-bottom: 66px; }
.enquiryBox h3 { color: var(--color-white); letter-spacing: -1px; line-height: 1.2; margin-bottom: 66px; }
.enquiryBox .block { display: flex; column-gap: 20px; justify-content: space-between;  overflow: hidden; }
.enquiryBox .left { padding: 83px 30px 83px 16px; width: 45%; }
.enquiryBox .left .label { font-size: 14px; color: var(--color-grey); text-transform: uppercase; margin-bottom: 9px; }
.enquiryBox .left .tabs { margin-bottom: 97px; }
.enquiryBox .left .items:not(:last-child) { margin-bottom: 16px; }
.enquiryBox .left button { padding: 5px 45px; font-size: 20px; color: var(--color-grey-90); background-color: rgba(255,255,255, .08); border-radius: 35px; border: solid 1px rgba(255,255,255, .08); min-height: 48px; position: relative; cursor: pointer; }
.enquiryBox .left button:after,
.enquiryBox .left button:before { content:''; position: absolute; top: 50%; left: 13px; width: 20px; height: 20px; background-color: rgba(255,255,255, .20); border-radius: 75px; transform: translateY(-50%); }
.enquiryBox .left button:after { left: 18px; width: 10px; height: 10px; background-color: var(--color-white); }
.enquiryBox .left .items.is-active button { border: solid 1px var(--color-white); }
.enquiryBox .left .items.is-active button:before { background-color: var(--color-white); }
.enquiryBox .left .items.is-active button:after { background-color: var(--color-primary); }
.enquiryBox .right { width: 50.2%;}
.enquiryBox .photo { width: var(--width); height: var(--height); border-radius: 8px; overflow: hidden; display: none; }
.enquiryBox .photo img { width: var(--width); height: var(--height); object-fit: cover; }
.enquiryBox .photo.is-active { display: block; }

.enquiryBox .textBox {max-width: 450px; margin-bottom: 64px;}
.enquiryBox .textBox h2 {margin-bottom: 24px;}
.enquiryBox .textBox p {color: var(--color-white); max-width: 320px;}

/* ### connect box ### */
.connectBox { padding-top: 123px; padding-bottom: 121px; display: flex; align-items: flex-start; justify-content: space-between; background-color: var(--color-grey-80); }
.connectBox h2 { letter-spacing: -1px; margin-bottom: 23px; }
.connectBox .left { width: 19%; padding-top: 14px; padding-left: 10px; }
.connectBox .left h5 { margin-bottom: 182px; }
.connectBox .nav-tabs { list-style: none; margin-left: 0; }
.connectBox .nav-tabs li { font-size: 32px; padding-left: 38px; display: inline-block; color: var(--color-black); position: relative; cursor: pointer; transition: 0.5s ease-in-out; }
.connectBox .nav-tabs li a { color: inherit; text-decoration: none; }
.connectBox .nav-tabs li:after { content: "\e906"; font-size: 14px; position: absolute; top: 55%; right: 0; color: var(--color-primary); font-family: var(--font-family-icons), sans-serif; transition: 0.8s ease-in-out; opacity: 1; visibility: visible; transform: translateY(-50%); }
.connectBox .nav-tabs li span { position: relative; padding-right: 50px; }
.connectBox .nav-tabs li span:before { content:''; position: absolute; bottom: -8px; left: 0; background-color: var(--color-dark-100); width: var(--width); height: 2px; transition: 1s ease-in-out; opacity: 1; visibility: visible; }
.connectBox .nav-tabs li em { font-size: 16px; color: var(--color-black); position: absolute; top: 50%; left: 0; font-style: normal; transform: translateY(-50%); }
.connectBox .nav-tabs li:not(:last-child) { margin-bottom: 51px; }
.connectBox .nav-tabs li:hover, .connectBox .nav-tabs li:focus-within { color: var(--color-black); }
.connectBox .nav-tabs li:hover:after, .connectBox .nav-tabs li:focus-within:after { right: 10px; }
.connectBox .nav-tabs li:hover span:before, .connectBox .nav-tabs li:focus-within span:before { background-color: var(--color-black); }
.connectBox .nav-tabs:has(li:hover) li:not(:hover) { opacity: 0.4; }

.connectBox .right { width: 48.2%; max-width: unset; margin-right: 0; }
.connectBox .right .nav-tabs { margin-left: 0; display: flex; flex-direction: column; align-items: flex-start; }
.connectBox .right .nav-tabs li { display: block; width: max-content; max-width: 100%; }
.connectBox .right .nav-tabs li span { white-space: nowrap; }
.connectBox .right .lead { color: var(--color-dark-700); margin-bottom: 52px; }
.connectBox .form-item { margin-bottom: 20px; }
.connectBox .form-submit { padding-top: 25px; border-top: solid 1px var(--color-grey-70);  }

/* ### filter box ### */
.filterBox { padding-top: 45px; margin-bottom: 150px; }
.filterBox .items { border-radius: 10px; overflow: hidden; position: relative; }
.filterBox .items .image { width: var(--width); height: 416px; position: relative; }
.filterBox .items .image img { width: var(--width); height: var(--height); object-fit: cover; }
.filterBox .items .image:after,
.filterBox .items .image:before { content:''; position: absolute; top: 0; left: 0; background: linear-gradient(180deg, rgba(0, 0, 0, 0.6) 49.04%, rgba(0, 0, 0, 0) 100%); width: var(--width); height: 25%; }
.filterBox .items .image:after { top: unset; bottom: 0; background: linear-gradient(to top, rgba(0,0,0,0.6) 0%,rgba(0,0,0,0) 100%); }
.filterBox .overlay { padding: 23px 15px 18px 18px; display: flex; flex-direction: column; position: absolute; top: 0; left: 0; width: var(--width); height: var(--height); z-index: 1; }
.filterBox .overlay .top { display: flex; flex-wrap: wrap; align-items: flex-start; column-gap: 15px; justify-content: space-between; }
.filterBox .overlay .large { font-size: 32px; color: var(--color-white); line-height: 0.9; letter-spacing: -0.7px; margin-bottom: 16px; }
.filterBox .overlay .lead { display: flex; flex-wrap: wrap; column-gap: 5px; row-gap: 8px; }
.filterBox .overlay .bottom {margin-top: auto; display: flex; flex-wrap: wrap; column-gap: 15px; row-gap: 12px; align-items: center; justify-content: space-between; }
.filterBox .overlay .bottom .butons { display: flex; flex-wrap: wrap; gap: 12px; flex: 1 1 320px; }
.filterBox .overlay .bottom .price { margin-left: auto; flex: 0 0 auto; text-align: right; }
.filterBox .overlay .price { font-size: 16px; color: var(--color-white); }
.filterBox .filter-buttons,
.expertise .filter-buttons { margin-bottom: 84px; display: flex; flex-wrap: wrap; column-gap: 16px; }
.filterBox .reset-btn,
.filterBox .filter-btn,
.expertise .filter-btn { padding: 5px 32px; font-size: 16px; color: var(--color-dark-800); font-weight: 500; background-color: var(--color-grey-30); border-radius: 5px; border: 0; min-height: 49px; font-family: var(--font-family-base), sans-serif; cursor: pointer; transition: var(--duration); margin-bottom: 10px; }
.filterBox .filter-list { display: grid;  column-gap: 32px; row-gap: 32px; grid-template-columns: repeat(2, 1fr); }
.filterBox .filter-list.is-filtering { align-items: start; }
.filterBox .filter-list__item { will-change: transform, opacity; transform-origin: center center; backface-visibility: hidden; }
.filterBox .filter-list__item.is-filtering { will-change: transform, opacity; }
.filterBox .filter-list__item.is-hidden,
.filterBox .filter-list__item.is-entering { opacity: 0; pointer-events: none; }
.filterBox .filter-list__item.is-moving { z-index: 1; }
.filterBox .filter-btn[data-filter-status="active"],
.expertise .filter-btn[data-filter-status="active"] { background-color: var(--color-dark-90); color: var(--color-white); }
.filterBox .filter-btn:not([data-filter-status="active"]):hover,
.filterBox .filter-btn:not([data-filter-status="active"]):focus-visible,
.expertise .filter-btn:not([data-filter-status="active"]):hover,
.expertise .filter-btn:not([data-filter-status="active"]):focus-visible { background-color: var(--color-dark-90); color: var(--color-white); }
.filterBox .reset-btn { color: var(--color-maroon); border: solid 1px var(--color-maroon); background-color: rgba(183,51,34, .10); }
.filterBox .reset-btn:hover { background-color: var(--color-maroon); color: var(--color-white); }
.filterBox .reset-btn[data-filter-status="active"] { opacity: 1; visibility: visible; }
.filterBox .filter-empty-state { display: block; margin-top: 32px; padding: 20px 24px; border-radius: 10px; background-color: var(--color-grey-20); color: var(--color-dark-800); text-align: center; }
.filterBox .filter-empty-state[hidden] { display: none; }
.filterBox--testimonials { padding-top: 72px; padding-bottom: 120px; margin-bottom: 0; background-color: var(--color-grey-200); }
.filterBox--testimonials h2 { margin-bottom: 28px; }
.filterBox--testimonials .filterBox__title { margin: 0 0 22px; font-size: var(--font-size-h2); font-weight: 400; line-height: 1.05; letter-spacing: -0.7px; color: var(--color-dark-90); }
.testimonialOverview__content { margin-bottom: 24px; }
.filterBox--testimonials .filter-list { grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: stretch; }
.filterBox--testimonials .filter-list__item { display: flex; }
.filterBox--testimonials .testimonialHomeCard { min-height: 100%; }
.filterBox--reviews-page .filter-btn:not([data-filter-status="active"]) { background-color: var(--color-white); }
.filterBox--reviews-page .testimonialHomeCard__header { flex-direction: column; align-items: flex-start; gap: 18px; }
.filterBox--reviews-page .testimonialHomeCard__avatar { width: 100%; height: auto; aspect-ratio: 16 / 9; border-radius: 6px; }
.filterBox--reviews-page .testimonialHomeCard__profile { width: 100%; }
.single-hero-compare--testimonial { margin-bottom: 64px; }
.single-hero-compare-card--testimonial { display: flex; flex-direction: column; gap: 14px; }
.testimonial-single__location { margin: 0; color: rgba(255,255,255,0.82); font-size: 17px; }
.testimonial-single__quote { margin: 0; font-size: 28px; line-height: 1.15; color: var(--color-white); }
.testimonial-single__quote:before { content: "“"; }
.testimonial-single__quote:after { content: "”"; }
.testimonial-single__quote p { margin: 0; display: inline; }
.testimonial-single__body { max-width: 960px; display: flex; flex-direction: column; gap: 36px; }
.testimonial-single__meta { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.testimonial-single__meta-item { display: flex; flex-direction: column; gap: 8px; padding: 20px 22px; border-radius: 18px; background-color: var(--color-grey-20); }
.testimonial-single__meta-label { font-size: 12px; letter-spacing: 0.08em; text-transform: uppercase; color: var(--color-grey-medium); }
.testimonial-single__meta-value { font-size: 18px; line-height: 1.25; color: var(--color-dark); }
.testimonial-single__answers { display: grid; gap: 24px; }
.testimonial-single__answer { padding-bottom: 24px; border-bottom: 1px solid rgba(0,0,0,0.1); }
.testimonial-single__answer:last-child { padding-bottom: 0; border-bottom: 0; }
.testimonial-single__answer h2 { margin-bottom: 12px; }
.testimonial-single__answer-copy p { margin-bottom: 0; }
.testimonial-single__answer-copy p + p { margin-top: 0.75em; }
.testimonial-single__content { padding: 36px 0 0; border-top: 1px solid rgba(0,0,0,0.1); }
.testimonial-single__actions { display: flex; flex-wrap: wrap; gap: 14px; }
.testimonial-single__actions .button { margin-bottom: 0; }
.single-testimonial .button.button-black { color: var(--color-white); }
.single-testimonial .button.button-black em:before,
.single-testimonial .button.button-black em:after { color: var(--color-white); }

.newsArchive { padding-top: 120px; background-color: #f2f2f2; }
.newsArchive__hero { padding-top: 36px; }
.newsArchive__header { max-width: 860px; }
.newsArchive__title { font-size: 64px; line-height: 0.95; letter-spacing: -0.7px; margin-bottom: 20px; }
.newsArchive__intro { max-width: 720px; font-size: 18px; color: var(--color-grey-medium); }
.newsArchive__intro p:last-child { margin-bottom: 0; }
.filterBox.filterBox--news { padding-top: 56px; padding-bottom: 150px; margin-bottom: 0; background-color: #f2f2f2; }
.filterBox--news .news-card .items { min-height: 100%; background-color: var(--color-white); border-radius: 8px; box-shadow: 0 18px 44px rgba(15, 23, 42, 0.08); }
.filterBox--news .news-card .image { height: 244px; background-color: #f2f2f2; }
.filterBox--news .news-card .image:before,
.filterBox--news .news-card .image:after { display: none; }
.filterBox--news .news-card__content { display: flex; flex-direction: column; gap: 16px; padding: 24px 24px 26px; min-height: 210px; }
.filterBox--news .news-card__meta { display: flex; align-items: center; }
.filterBox--news .news-card__date { display: inline-flex; align-items: center; font-size: 14px; line-height: 1.2; color: var(--color-grey-medium); }
.filterBox--news .news-card__title { margin: 0; font-size: 32px; line-height: 0.98; letter-spacing: -0.7px; color: var(--color-dark-90); }
.filterBox--news .news-card__title a { color: inherit; text-decoration: none; }
.filterBox--news .news-card__title a:focus,
.filterBox--news .news-card__title a:hover { text-decoration: underline; text-underline-offset: 6px; }
.filterBox--news .news-card__actions { margin-top: auto; }
.filterBox--news .news-card__cta { min-width: 0; }
.newsArchive__pagination { margin-top: 48px; }
.newsArchive__pagination .nav-links { display: flex; flex-wrap: wrap; gap: 12px; justify-content: center; align-items: center; }
.newsArchive__pagination .page-numbers { display: inline-flex; align-items: center; justify-content: center; min-width: 48px; min-height: 48px; padding: 0 16px; border-radius: 999px; background-color: var(--color-grey-30); color: var(--color-dark-800); font-weight: 500; text-decoration: none; }
.newsArchive__pagination .page-numbers.current,
.newsArchive__pagination .page-numbers:focus,
.newsArchive__pagination .page-numbers:hover { background-color: var(--color-dark-90); color: var(--color-white); }

/* ### point box ### */
.pointBox { padding-top: 92px; padding-bottom: 327px; background-color: var(--color-grey-20);  }
.pointBox h1,
.pointBox h2 { font-size: 60px; margin-bottom: 13px; }
.pointBox .title { text-align: center; font-size:  14px; color: var(--color-grey-medium); margin-bottom: 45px; }
.pointBox .title p:last-of-type { margin-bottom: 0;}
.pointBox .locations-card { display: grid; grid-template-columns: minmax(360px, 39%) 1fr; background: var(--color-white); border: 1px solid var(--border); border-radius: 18px; box-shadow: var(--shadow); overflow: hidden; max-width: 1416px; width: var(--width); min-height: 736px; margin: 0 auto; }
.pointBox .locations-list-panel { padding: 0 0 32px; border-right: 1px solid var(--border); overflow-y: auto; background: var(--color-white); }
.pointBox .locations-list { list-style: none; margin: 0; padding: 0; }
.pointBox .locations-list-item button { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 18px; border: 0; border-bottom: 1px solid #f0f1f3; background: transparent; text-align: left; padding: 28px 48px; cursor: pointer; font: inherit; transition: background-color 0.2s ease, color 0.2s ease; }
.pointBox .locations-list-item button:hover,
.pointBox .locations-list-item button:focus-visible,
.pointBox .locations-list-item button.is-active { background-color: #f8f8f7; }
.pointBox .locations-list-item button.is-active .location-title { font-weight: 700; }
.pointBox .location-text { display: flex; flex-direction: column; gap: 6px; }
.pointBox .location-title { font-size: 23px; color: #0A0A0A; line-height: 1.2; font-family: var(--font-family-ui), sans-serif; font-weight: 500; }
.pointBox .location-sub { font-size: 18px; color: var(--color-grey-medium); }
.pointBox .location-capabilities { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 8px; }
.pointBox .location-capability-badge { display: inline-flex; align-items: center; gap: 8px; min-height: 34px; padding: 8px 12px; border: 1px solid #d8d8d2; border-radius: 999px; background: #f8f8f4; color: #232323; font-size: 13px; line-height: 1; font-weight: 500; }
.pointBox .location-capability-badge i { display: inline-flex; align-items: center; justify-content: center; width: 14px; min-width: 14px; font-size: 14px; color: var(--brand); line-height: 1; }
.pointBox .locations-list-item button.is-featured .location-title { font-size: 25px; font-weight: 700; }
.pointBox .locations-list-item button.is-featured .location-sub { font-size: 18px; }
.pointBox .locations-list-item button:not(.is-featured) .location-title { font-size: 18px; }
.pointBox .locations-list-item button:not(.is-featured) .location-sub { font-size: 15px; }
.pointBox .location-arrow { color: var(--brand); font-size: 9px; transform: rotate(-90deg); flex-shrink: 0; }
.pointBox .map-panel { position: relative; isolation: isolate; min-height: 736px; background: #e9edf0; }
.pointBox #map { width: 100%; height: 100%; min-height: 736px; }
.pointBox .locations-empty { max-width: 860px; margin: 0 auto; padding: 48px; background: var(--color-white); border: 1px solid var(--border); border-radius: 18px; text-align: center; }
.pointBox .custom-marker { background: none; border: 0; }
.pointBox .marker-pin { filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.3)); }
.pointBox .map-fallback { display: flex; align-items: center; justify-content: center; min-height: inherit; margin: 0; padding: 24px; color: #6a7282; text-align: center; }

/* ### drawer ### */
.drawer { --drawer-gap: clamp(18px, 2.5vw, 32px); --drawer-width: min(560px, calc(100vw - (var(--drawer-gap) * 2))); position: fixed; inset: 0; display: flex; justify-content: flex-end; align-items: flex-start; padding: var(--drawer-gap); opacity: 0; visibility: hidden; pointer-events: none; z-index: 5000; transition: opacity 0.32s ease, visibility 0s linear 0.32s; }
.drawer.is-open { opacity: 1; visibility: visible; pointer-events: auto; transition: opacity 0.32s ease, visibility 0s linear 0s; }
.drawer-backdrop { position: absolute; inset: 0; background: rgba(0,0,0, 0.74); z-index: 1; opacity: 0; transition: opacity 0.32s ease; }
.drawer.is-open .drawer-backdrop { opacity: 1; }
.drawer-panel { position: relative; width: var(--drawer-width); max-height: calc(100dvh - (var(--drawer-gap) * 2)); margin-left: auto; background-color: #f6f6f3; border-radius: 28px; box-shadow: -20px 24px 54px rgba(0, 0, 0, 0.2); transform: translateX(calc(100% + var(--drawer-gap))); opacity: 0.96; transition: transform 0.42s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.32s ease; overflow-y: auto; overscroll-behavior: contain; scrollbar-gutter: stable; -webkit-overflow-scrolling: touch; z-index: 2; will-change: transform; }
.drawer-panel { scrollbar-width: thin; scrollbar-color: rgba(10, 10, 10, 0.25) transparent; }
.drawer-panel::-webkit-scrollbar { width: 8px; background-color: transparent; }
.drawer-panel::-webkit-scrollbar-track { background-color: transparent; }
.drawer-panel::-webkit-scrollbar-thumb { background-color: rgba(10, 10, 10, 0.22); border: 2px solid transparent; border-radius: 999px; background-clip: padding-box; }
.drawer-panel::-webkit-scrollbar-thumb:hover { background-color: rgba(10, 10, 10, 0.35); }
.drawer.is-open .drawer-panel { transform: translateX(0); opacity: 1; }
.drawer-close { position: absolute; right: 10px; top: 10px; width: 42px; height: 42px; border: 1px solid rgba(255, 255, 255, 0.14); border-radius: 999px; background: rgba(10, 10, 10, 0.96); box-shadow: 0 10px 28px rgba(0, 0, 0, 0.28); color: #ffffff; font-size: 28px; line-height: 1; cursor: pointer; z-index: 2; display: flex; align-items: center; justify-content: center; transition: background-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease; }
.drawer-close:hover,
.drawer-close:focus-visible { background: rgba(26, 26, 26, 0.98); color: #ffffff; box-shadow: 0 12px 32px rgba(0, 0, 0, 0.32); transform: translateY(-1px); }
.drawer-image-wrap { height: 292px; padding: 22px 22px 0; background: transparent; }
.drawer-image { width: 100%; height: 100%; object-fit: cover; border-radius: 20px; }
.drawer-content { padding: 28px 30px 30px; }
.drawer-content h2 { margin: 0 0 20px; font-size: 42px; line-height: 0.98; letter-spacing: -0.035em; }
.drawer-meta { margin-bottom: 14px; }
.drawer-capabilities { display: flex; flex-wrap: wrap; gap: 12px; }
.drawer-appointment-wrap { margin-bottom: 18px; }
.drawer-appointment-wrap .button { width: 100%; min-height: 52px; font-size: 16px; gap: 12px; }
.drawer-appointment-wrap .button i { font-size: 16px; line-height: 1; color: currentColor; }
.drawer-block { margin-bottom: 26px; color: #7f7f7f; font-size: 17px; line-height: 1.45; }
.drawer-block:last-child { margin-bottom: 0; }
.drawer-block-hours { padding: 22px 22px 18px; background: #ffffff; border: 1px solid #e8e3d9; border-radius: 22px; box-shadow: 0 18px 40px rgba(23, 17, 14, 0.05); color: #6a7282; }
.drawer-address p,
.drawer-contact p { margin-bottom: 4px; }
.drawer-contact a { color: #1d1d1d; text-decoration: underline; text-underline-offset: 3px; }
.drawer-block p:last-of-type { margin-bottom: 0; }
.drawer-section-title { margin-bottom: 14px; font-size: 19px; line-height: 1.15; color: #1d1d1d; font-weight: 500; }
.hours-row { display: flex; justify-content: space-between; gap: 12px; padding: 12px 0; border-bottom: 1px solid #dde0e4; font-size: 16px; color: #7f7f7f; }
.hours-row span:last-child { white-space: nowrap; text-align: right; }
.drawer-note { margin-top: 14px; font-size: 14px; font-style: italic; }
.drawer-block-hours .drawer-section-title { margin-bottom: 16px; color: #151313; }
.drawer-block-hours .hours-row { align-items: flex-start; gap: 16px; padding: 14px 0; border-bottom-color: #ece7de; color: #68707d; }
.drawer-block-hours .hours-row:last-of-type { padding-bottom: 0; border-bottom: 0; }
.drawer-block-hours .hours-row span:first-child { color: #1d1d1d; font-weight: 500; }
.drawer-block-hours .hours-row span:last-child { color: #1d1d1d; }
.drawer-block-hours .drawer-note { margin-top: 16px; padding-top: 14px; border-top: 1px solid #ece7de; font-size: 14px; font-style: normal; color: #6a7282; }
.drawer-actions { display: grid; grid-template-columns: 1fr; gap: 12px; margin-top: 30px; }
.drawer-actions .button { min-height: 56px; font-size: 17px; border-radius: 8px; }
.drawer-actions .button + .button { margin-left: 0; }
.drawer-actions #drawer-phone { background-color: #222222; color: #ffffff; border-color: #222222; }
.drawer-actions #drawer-phone:hover,
.drawer-actions #drawer-phone:focus { background-color: #222222; color: #ffffff; border-color: #222222; }
.drawer-actions .button.is-hidden { display: none; }
.drawer-block.is-hidden,
.drawer-image-wrap.is-hidden,
.drawer-meta.is-hidden,
.drawer-appointment-wrap.is-hidden { display: none; }
.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; }

/* ### jobs box ### */
.jobsBox { padding-top: 90px; padding-bottom: 190px; background-color: var(--color-dark-600); }
.jobsBox .sticky-features__wrap { width: 100%; padding-left: 1.25em; padding-right: 1.25em; position: relative; }
.jobsBox .sticky-features__scroll { justify-content: center; align-items: center; height: 100vh; display: flex; }
.jobsBox .sticky-features__container { display: flex; grid-column-gap: 1.25em; grid-row-gap: 1.25em; justify-content: center; align-items: stretch;
width: var(--width); }
.jobsBox .sticky-feaures__col { flex: 1; position: relative; }
.jobsBox .sticky-feaures__col.is--img { overflow: hidden; border-radius: 0.75em; }
.jobsBox .sticky-features__progress-w {position: absolute; left: 0; right: 0; bottom: 0; height: 0.25em; background-color: rgba(255, 255, 255, 0.15);}
.jobsBox .sticky-features__progress-bar { width: 100%; height: 100%; background-color: rgb(255, 255, 255); transform: scale3d(0, 1, 1);
transform-origin: 0% 50%; }
.jobsBox .sticky-features__img-collection { width: 100%; }
.jobsBox .sticky-features__img-list { aspect-ratio: 1 / 1.3; width: 100%; position: relative; }
.jobsBox .sticky-features__img-item { -webkit-clip-path: inset(50% round .75em); clip-path: inset(50% round .75em); width: var(--height);
height: var(--height); position: absolute; inset: 0; }
.jobsBox .sticky-features__img-item:after { content:''; position: absolute; top: 0; left: 0; width: var(--width); height: var(--height); background-color: rgba(0,0,0, .20); }
.jobsBox [data-sticky-feature-visual-wrap]:first-of-type{ clip-path: inset(0% round 0.75em); }
.jobsBox .sticky-features__img { object-fit: cover; width: 100%; height: 100%; }
.jobsBox .sticky-features__text-collection { height: 100%; }
.jobsBox .sticky-features__text-list { flex-flow: column; justify-content: center; align-items: flex-start; height: var(--height); max-height: 100%;
display: flex; position: relative; }
.jobsBox .sticky-features__text-item { display: flex; visibility: hidden; flex-flow: column; grid-template-rows: auto auto; grid-template-columns: 1fr 1fr; grid-auto-columns: 1fr; justify-content: center; align-items: flex-start; width: var(--width); max-width: 27.5em; margin-left: auto; position: absolute; right: 0; }
.jobsBox [data-sticky-feature-item]:first-of-type{ visibility: visible; }
.jobsBox .sticky-features__heading { margin-bottom: 50px; font-size: 60px; color: var(--color-white); }
.jobsBox .sticky-features__p { color: var(--color-dark-solid); margin-bottom: 45px; font-size: 20px; line-height: 1.2; }
.jobsBox .sticky-features__p.is--link { color: var(--color-white); text-decoration: underline; margin-bottom: 0; }
.jobsBox .sticky-features__tag { font-size: 16px; color: var(--color-white); margin-bottom: 12px; }
.jobsBox .resource-end { justify-content: center; align-items: center; min-height: 50vh; display: flex; }
.jobsBox-empty__inner { max-width: 720px; text-align: center; }
.jobsBox-empty .sticky-features__heading { margin-bottom: 20px; }
.jobsBox-empty .sticky-features__p { max-width: 48ch; margin: 0 auto; }
.jobsBox.bg-grey { background-color: var(--color-grey-500); }
.jobsBox.bg-grey .sticky-features__container { flex-direction: row-reverse; }
.jobsBox.bg-grey .sticky-features__tag { color: var(--color-black); }
.jobsBox.bg-grey .sticky-features__heading { color: var(--color-black); }
.jobsBox.bg-grey .sticky-features__text-item { left: 0; right: unset; }

/* ### clients box ### */
.clientsBox { padding-top: 178px; padding-bottom: 130px; background-color: var(--color-bianca); }
.clientsBox .testimonial-lines { grid-column-gap: 1.25em; grid-row-gap: 1.25em; flex-flow: wrap; justify-content: flex-start; align-items: flex-start; display: flex; }
.clientsBox .testimonial-lines__controls { grid-column-gap: 1em; grid-row-gap: 1em; flex-flow: row; justify-content: flex-start; align-items: flex-start; width: 30%; display: flex; }
.clientsBox .testimonial-lines__main { grid-column-gap: 5em; grid-row-gap: 5em; flex-flow: column; flex: 1; justify-content: flex-start;
align-items: flex-start; display: flex; }
.clientsBox .testimonial-lines__button { background-color: var(--color-bianca); border: 1px solid var(--color-dark-100); border-radius: 4px;
justify-content: center; align-items: center; width: 40px; height: 40px; padding: 0; display: flex; cursor: pointer; }
.clientsBox .testimonial-lines__arrow { width: 12px; }
.clientsBox .testimonial-lines__main-details { grid-column-gap: 1.5em; grid-row-gap: 1.5em; flex-flow: row; justify-content: flex-start;
align-items: center; display: flex; }
.clientsBox .testimonial-lines__count { width: 1ch; display: inline-block; }
.clientsBox .testimonial-lines__p { margin-bottom: 0; font-size: 20px; line-height: 1.2; font-weight: 500 }
.clientsBox .testimonial-lines__p.is--faded { opacity: .5; }
.clientsBox .testimonial-lines__collection { width: var(--width); }
.clientsBox .testimonial-lines__list { width: var(--width); display: grid; position: relative; }
.clientsBox .testimonial-lines__item { grid-column-gap: 4em; grid-row-gap: 4em; opacity: 0; visibility: hidden; flex-flow: column; grid-area: 1 / 1;
	justify-content: flex-start; align-items: flex-start; width: 100%; display: flex; position: relative; }
.clientsBox .testimonial-lines__item.is--active { opacity: 100; visibility: visible; }
.clientsBox .testimonial-lines__h { letter-spacing: -.02em; width: var(--width); margin-top: 0; margin-bottom: 0; font-size: 3em; font-weight: 500;
line-height: 1; }
.clientsBox .text-line-mask{ padding-bottom: 0.2em; margin-bottom: -0.2em; }
.clientsBox .testimonial-lines__item-details { grid-column-gap: 1.25em; grid-row-gap: 1.25em; flex-flow: row; justify-content: flex-start;
align-items: center; display: flex; }
.clientsBox .testimonial-lines__item-visual { aspect-ratio: 1; border-radius: 100em; width: 5em; overflow: hidden; }
.clientsBox .testimonial-lines__item-img { object-fit: cover; width: 100%; height: 100%; }

/* ### information box ### */
.informationBox { display: flex; flex-wrap: wrap; margin-bottom: 50px; padding-bottom: 80px; }
.informationBox h2 { line-height: 1.2; margin-bottom: 21px; }
.informationBox .left {max-width: 150px; width: var(--width); font-size: var(--font-family-base); color: var(--color-dark-700); margin-right: 306px; }
.informationBox .right { width: 48%; line-height: 1.45; }
.informationBox .right p { padding-right: 15%; }
.informationBox .right p:first-of-type { font-size: 20px; }
.informationBox .right p:last-of-type { margin-bottom: 30px; }
.informationBox .bottom { padding-top: 58px; }
.informationBox .bottom h2 { margin-bottom: 30px; }
.informationBox .items:not(:last-child) { margin-bottom: 16px; }
.informationBox .info { padding: 20px 30px 16px 30px; display: block; position: relative; border: solid 2px var(--color-grey-90); border-radius: 14px; text-decoration: var(--line-decoration-none); color: var(--color-grey-150); font-size: 20px; }
.informationBox .info h4 { margin-bottom: 0; }
.informationBox .info:after { content: "\e916"; color: var(--color-grey-250); font-size: 5px; position: absolute; top: 50%; right: 16px; font-family: var(--font-family-icons), sans-serif; transform: rotate(-90deg) translateY(-50%); font-weight: 700; transition: var(--duration); }
.informationBox .info:hover:after { color: var(--color-primary); }


/* ### copy box ### */
.copyBox { width: 320px; }

/* ### copy box ### */
.copyBox { width: 320px; }

/* ### team box ### */
.teamBox { margin-bottom: 120px; }
.teamBox .holder { max-width: 1311px; display: grid; grid-template-columns: repeat(3,1fr); column-gap: 24px; row-gap: 24px; }
.teamBox .item { display: block; text-decoration: var(--line-decoration-none); position: relative; color: var(--color-white); }
.teamBox .item:after { position: absolute; top: 0; left: 0; width: var(--width); height: 134px; pointer-events: none; content: ''; background: linear-gradient(180deg, #000000 63.94%, rgba(0, 0, 0, 0) 100%); opacity: 0.6; display: none; }
.teamBox .image { overflow: hidden; border-radius: 32px; position: relative; }
.teamBox .image img { width: var(--width); }
.teamBox .image:after { position: absolute; bottom: 0; left: 0; width: var(--width); height: var(--height); pointer-events: none; content: ''; background-color: rgba(0, 0, 0, 0.7); opacity: 0; visibility: hidden; transition: all 0.3s ease; }
.teamBox .info { padding: 0 25px 4px; position: absolute; bottom: 0; left: 0; width: var(--width); }
.teamBox h3 { margin-bottom: 10px; color: var(--color-white); font-weight: 500; }
.teamBox .text { line-height: 1.5; opacity: 0; visibility: hidden; max-height: 0; overflow: hidden; transition: opacity 1s ease, max-height 0.3s ease; }
.teamBox .text p:last-of-type { margin-bottom: 22px; }
.teamBox .icon { width: 56px; height: 56px; display: flex;align-items: center; justify-content: center; color: var(--color-primary); background-color: var(--color-white); border-radius: 100%; position: absolute; bottom: 15px; right: 17px; transition: var(--duration); }
.teamBox .item:hover .text { opacity: 1; visibility: visible; max-height: 270px; }
.teamBox .item:hover .icon { opacity: 0; visibility: hidden; }
.teamBox .item:hover .image:after { opacity: 1; visibility: visible; }

/* ### content box ### */
.contentBox { padding-top: 120px; padding-bottom: 120px; font-family: var(--font-family-ui), sans-serif; }
.contentBox .holder { max-width: 1121px; display: grid; grid-template-columns: repeat(2, 1fr); column-gap: 110px; }
.contentBox .column { line-height: 1.48; display: flex; flex-direction: column; }
.contentBox .text { margin-bottom: 50px; }
.contentBox h3 { letter-spacing: -0.6px; line-height: 1.3; margin-bottom: 31px; font-size: 46px; font-family: inherit; font-weight: 500; }
.contentBox .check { padding-top: 13px; }
.contentBox .check li { position: relative; list-style: none; padding-left: 33px; margin-bottom: 12px; }
.contentBox .check li:before { position: absolute; top: 2px; left: -1px; font-size: 12px; content: '\e907'; font-family: var(--font-family-icons), sans-serif; width: 22px; height: 22px; background-color: var(--color-primary); border-radius: 100%; color: var(--color-white); display: flex; align-items: center; justify-content: center; }
.contentBox .list { padding-top: 12px; }
.contentBox .list li { font-weight: 500; list-style: none; margin-bottom: 13px; display: flex; align-items: center; }
.contentBox .list li i { width: 40px; height: 40px; font-size: 18px; display: flex;align-items: center; justify-content: center; border-radius: 10px; flex: 0 0 auto; margin-right: 16px; margin-top: 4px; background-color: var(--color-grey-400); color: var(--color-primary); }
.contentBox .bottom { margin-top: auto; }

/* ### contact box ### */
.contentBox-contact { padding-top: 72px; padding-bottom: 110px; background-color: #f2f2f2; }
.contentBox-contact .holder { max-width: 100%; }
.contentBox-contact .contactHero { grid-template-columns: 1fr; margin-bottom: 52px; }
.contactHero__inner { max-width: 760px; padding-top: 64px; }
.contactHero__eyebrow,
.contactRouteCard__eyebrow,
.contactInfoCompact__eyebrow { display: inline-block; margin-bottom: 18px; font-size: 14px; font-weight: 500; letter-spacing: 0.02em; text-transform: uppercase; color: var(--color-grey-900); }
.contactHero h3 { max-width: 11ch; margin-bottom: 26px; font-size: 82px; line-height: 0.95; letter-spacing: -0.06em; }
.contactHero p { max-width: 620px; margin-bottom: 0; font-size: 22px; line-height: 1.35; color: var(--color-dark-200); }
.contactHero__actions { margin-top: 30px; display: flex; flex-wrap: wrap; gap: 14px; }
.contactHero__actions .button { margin-bottom: 0; }

.contentBox-contact .contactRouteGrid { grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: 18px; margin-bottom: 56px; }
.contactRouteCard { min-height: 370px; display: flex; flex-direction: column; justify-content: space-between; border-radius: 20px; overflow: hidden; background-color: var(--color-white); text-decoration: none; color: var(--color-dark); box-shadow: 0 12px 34px rgba(24, 17, 15, 0.04); transition: transform 0.25s ease, box-shadow 0.25s ease; }
.contactRouteCard:hover { transform: translateY(-4px); box-shadow: 0 24px 48px rgba(24, 17, 15, 0.08); }
.contactRouteCard__body { padding: 34px 34px 32px; }
.contactRouteCard__eyebrow { margin-bottom: 22px; color: rgba(26, 28, 24, 0.5); }
.contactRouteCard h4 { margin-bottom: 18px; font-size: 28px; line-height: 1.02; letter-spacing: -0.04em; }
.contactRouteCard p { margin-bottom: 24px; font-size: 18px; line-height: 1.45; color: var(--color-dark-200); }
.contactRouteCard__links { padding-top: 0; margin: 0; }
.contactRouteCard__links li { position: relative; list-style: none; margin-bottom: 10px; padding-left: 18px; font-size: 16px; color: var(--color-dark-300); }
.contactRouteCard__links li:before { content: ''; position: absolute; top: 10px; left: 0; width: 6px; height: 6px; border-radius: 999px; background-color: var(--color-primary); }
.contactRouteCard__links a { color: var(--color-primary); text-decoration: none; border-bottom: 1px solid rgba(223, 125, 0, 0.4); transition: color 0.25s ease, border-color 0.25s ease; }
.contactRouteCard__links a:hover,
.contactRouteCard__links a:focus { color: var(--color-dark); border-color: rgba(26, 28, 24, 0.28); }
.contactRouteCard__footer { min-height: 72px; padding: 0 34px; display: flex; align-items: center; justify-content: space-between; background-color: #2a2f2f; font-size: 18px; font-weight: 500; text-decoration: none; color: #fff; transition: background-color 0.25s ease; }
.contactRouteCard__footer:hover,
.contactRouteCard__footer:focus { background-color: var(--color-primary); color: #fff; }
.contactRouteCard__footer em { width: 28px; height: 28px; display: inline-flex; align-items: center; justify-content: center; font-style: normal; border-radius: 999px; color: #fff; font-size: 12px; }

.contentBox-contact .contactInfoCompact { grid-template-columns: 1fr; row-gap: 28px; }
.contactInfoCompact__intro { max-width: 620px; }
.contactInfoCompact__intro h4 { margin-bottom: 14px; font-size: 36px; line-height: 1.05; letter-spacing: -0.04em; }
.contactInfoCompact__intro p { margin-bottom: 0; font-size: 18px; line-height: 1.5; color: var(--color-dark-200); }
.contactInfoCompact__grid { display: grid; grid-template-columns: 1.15fr 1fr 1fr; gap: 0; background-color: var(--color-white); border-radius: 20px; overflow: hidden; box-shadow: 0 12px 34px rgba(24, 17, 15, 0.04); }
.contactInfoCompact__card[id] { scroll-margin-top: 120px; }
.contactInfoCompact__card { min-height: 100%; display: flex; flex-direction: column; justify-content: space-between; border-radius: 0; overflow: hidden; background-color: transparent; box-shadow: none; transition: none; }
.contactInfoCompact__card:not(:last-child) { border-right: 1px solid rgba(26, 28, 24, 0.08); }
.contactInfoCompact__card:hover { transform: none; box-shadow: none; }
.contactInfoCompact__card h5 { margin-bottom: 22px; padding: 34px 34px 0; font-size: 28px; line-height: 1.02; letter-spacing: -0.04em; }
.contactInfoCompact__list,
.contactInfoCompact__hours { margin: 0; padding: 0 34px 28px; }
.contactInfoCompact__list li,
.contactInfoCompact__hours li { list-style: none; }
.contactInfoCompact__list li:not(:last-child),
.contactInfoCompact__hours li:not(:last-child) { margin-bottom: 18px; padding-bottom: 18px; border-bottom: 1px solid rgba(26, 28, 24, 0.08); }
.contactInfoCompact__list span,
.contactInfoCompact__hours span { display: block; margin-bottom: 6px; font-size: 13px; font-weight: 500; letter-spacing: 0.04em; text-transform: uppercase; color: rgba(26, 28, 24, 0.5); }
.contactInfoCompact__list strong,
.contactInfoCompact__hours strong { display: block; font-size: 17px; line-height: 1.45; color: var(--color-dark); }
.contactInfoCompact__list a { color: inherit; text-decoration: none; color: var(--color-primary); text-decoration: underline;}
.contactInfoCompact__list a:hover {text-decoration: none;}
.contactInfoCompact__list { padding: 0 34px 28px; }
.contactInfoCompact__hours li { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 16px; align-items: start; }
.contactInfoCompact__hours li span { margin-bottom: 0; text-transform: none; letter-spacing: 0; font-size: 16px; font-weight: 400; color: var(--color-dark-200); }
.contactInfoCompact__hours li strong { text-align: right; }
.contactInfoCompact__footer { min-height: 72px; padding: 0 34px; display: flex; align-items: center; justify-content: space-between; margin-top: auto; background-color: #2a2f2f; font-size: 18px; font-weight: 500; text-decoration: none; color: #fff; transition: background-color 0.25s ease; }
.contactInfoCompact__footer:hover,
.contactInfoCompact__footer:focus { background-color: var(--color-primary); color: #fff; }
.contactInfoCompact__footer em { width: 28px; height: 28px; display: inline-flex; align-items: center; justify-content: center; font-style: normal; border-radius: 999px; color: #fff; font-size: 12px; }

/* ### specification box ### */
.specificationBox { margin-bottom: 180px; display: flex; justify-content: space-between; }
.specificationBox .left { width: 15%; padding-top: 33px; }
.specificationBox .specificationBox-subtitle { font-size: 24px; line-height: 1.28; font-family: var(--font-family-base), sans-serif; font-weight: 400; color: var(--color-dark); margin: 0 0 20px; }
.specificationBox .right { width: 51.8%; }
.specificationBox .block { margin-bottom: 98px; }
.specificationBox h2 { font-size: 60px; letter-spacing: -0.5px; margin-bottom: 36px; }
.specificationBox .specificationBox-description { letter-spacing: -0.2px; font-size: var(--font-size-h4); font-family: var(--font-family-base), sans-serif; font-weight: 400; line-height: var(--line-height-heading); color: var(--color-dark); margin: 0 0 20px; }
.specificationBox .item { padding-left: 5px; }
.specificationBox .heading { padding: 21px 0; font-size: 25px; display: flex; align-items: center; justify-content: space-between; width: 100%; background: transparent; border: none;	border-bottom: 1px solid rgba(102, 109, 117, 0.3); text-align: left;	cursor: pointer; font-family: var(--font-family-base), sans-serif; }
.specificationBox .heading span { font-size: 8px; width: 48px; height: 48px; border-radius: 100%; background-color: var(--color-black); display: flex; justify-content: center; align-items: center; color: var(--color-white); content: '\e916'; font-family: var(--font-family-icons), sans-serif; transition: var(--duration); }
.specificationBox .heading span i { transition: var(--duration); }
.specificationBox .heading.active span i { transform: rotate(-180deg); }
.specificationBox .content {  max-height: 0; transition: max-height 0.4s ease; overflow: hidden; }
.specificationBox .wrap { display: grid; grid-template-columns: repeat(2,1fr); column-gap: 25px; }
.specificationBox .column { padding: 41px 0 22px; border-bottom: 1px solid rgba(102, 109, 117, 0.3); color: var(--color-dark-200); font-size: 20px; }
.specificationBox .column p { margin-bottom: 0; }
.specificationBox .column span { font-weight: 500; color: var(--color-grey-600); display: block; line-height: 1; }
.specificationBox .item.is-last .column span { color: var(--color-black); }
.specificationBox .image { margin-top: 150px; background: #fff;padding: 16px;margin-top: 50px;border-radius: 8px;}

/* ### download box ### */
.downloadBox { display: flex; align-items: flex-start; justify-content: space-between; padding-top: 190px; padding-bottom: 165px; background-color: var(--color-grey-500); }
.downloadBox .left { width: 19%; }
.downloadBox h5  {font-size: 25px; letter-spacing: -0.4px; }
.downloadBox .right { width: 49.8%; margin-top: -7px; }
.downloadBox h2 { margin-bottom: 83px; letter-spacing: -0.7px; }
.downloadBox .wrap { display: grid; grid-template-columns: repeat(3,1fr); column-gap: 16px; padding-right: 21px; }
.downloadBox .item { border-radius: 14px; border: solid 1px var(--color-grey-500); background-color: var(--color-white); display: block; text-align: center; padding: 41px 25px 54px; transition: var(--duration); text-decoration: var(--line-decoration-none); color: rgba(26, 28, 24, 0.6); width: 100%; font-family: inherit; cursor: pointer; appearance: none; }
.downloadBox img { margin: 0 auto 23px; }
.downloadBox .item .title { font-size: 22px; letter-spacing: -0.8px; margin-bottom: 9px; }
.downloadBox .item:focus,
.downloadBox .item:hover { color: var(--color-primary); }

/* ### downloads tab (alle) ### */
.downloadsTab { background-color: var(--color-grey-500); padding-top: 80px; padding-bottom: 100px; }
.downloadsTab__intro { margin-bottom: 48px; }
.downloadsTab__introTitle { font-size: 56px; letter-spacing: -0.04em; margin-bottom: 12px; }
.downloadsTab__introText { font-size: 18px; color: rgba(26, 28, 24, 0.55); max-width: 520px; line-height: 1.6; }
.downloadsTab__layout { display: grid; grid-template-columns: 320px 1fr; gap: 32px; align-items: start; }
.downloadsTab__sidebar { display: flex; flex-direction: column; gap: 8px; position: sticky; top: 24px; }
.downloadsTab__tab { display: flex; align-items: center; gap: 0; padding: 0; border: none; border-radius: 4px; background-color: var(--color-white); cursor: pointer; text-align: left; transition: var(--duration); font-family: inherit; overflow: hidden; width: 100%; }
.downloadsTab__tab:hover { box-shadow: 0 4px 20px rgba(26, 28, 24, 0.1); }
.downloadsTab__tab.is-active { background-color: var(--color-dark); color: var(--color-white); box-shadow: 0 8px 32px rgba(26, 28, 24, 0.2); }
.downloadsTab__tabImage { width: 100px; height: 72px; flex-shrink: 0; overflow: hidden; border-radius: 4px; }
.downloadsTab__tabImage img { width: 100%; height: 100%; object-fit: cover; border-radius: 4px; }
.downloadsTab__tabLabel { flex: 1; font-size: 14px; font-weight: 600; line-height: 1.3; padding: 12px 14px; }
.downloadsTab__tabArrow { flex-shrink: 0; margin-right: 14px; opacity: 0; transition: var(--duration); color: var(--color-white); }
.downloadsTab__tab.is-active .downloadsTab__tabArrow { opacity: 1; }
.downloadsTab__panels { min-height: 400px; }
.downloadsTab__panel[hidden] { display: none; }
.downloadsTab__panelHeader { display: flex; align-items: baseline; justify-content: space-between; margin-bottom: 40px; gap: 20px; }
.downloadsTab__panelTitle { font-size: 42px; letter-spacing: -0.04em; margin: 0; }
.downloadsTab__panelLink { display: inline-flex; align-items: center; gap: 4px; font-size: 14px; font-weight: 500; text-decoration: none; color: rgba(26, 28, 24, 0.45); transition: var(--duration); white-space: nowrap; flex-shrink: 0; }
.downloadsTab__panelLink:hover { color: var(--color-dark); }
.downloadsTab__items { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.downloadsTab .item { border-radius: 14px; border: solid 1px rgba(26, 28, 24, 0.08); background-color: var(--color-white); display: block; text-align: center; padding: 40px 20px 48px; transition: var(--duration); text-decoration: var(--line-decoration-none); color: rgba(26, 28, 24, 0.6); width: 100%; font-family: inherit; cursor: pointer; appearance: none; }
.downloadsTab .item img { margin: 0 auto 20px; }
.downloadsTab .item h6 { font-size: 20px; letter-spacing: -0.5px; margin-bottom: 8px; color: var(--color-dark); }
.downloadsTab .item span { font-size: 14px; }
.downloadsTab .item:focus,
.downloadsTab .item:hover { color: var(--color-primary); border-color: var(--color-primary); box-shadow: 0 4px 16px rgba(26, 28, 24, 0.08); }

.placeBox .overlay button.icons { padding: 0; border: 0; background: transparent; cursor: pointer; font: inherit; }
.productGalleryModal { padding: 0; background: rgba(9, 9, 9, 0); transition: background-color 420ms ease; }
.productGalleryModal.uk-open { background: rgba(9, 9, 9, 0.72); }
.productGalleryModal .uk-modal-dialog { width: 100vw; max-width: none; height: 100vh; max-height: none; min-height: 100vh; margin: 0; padding: 0; border-radius: 0; background: #141414; color: #f2f0eb; overflow: hidden; box-shadow: none; opacity: 0; transform: translate3d(0, 18px, 0) scale(0.994); transition: opacity 360ms ease, transform 620ms cubic-bezier(0.16, 1, 0.3, 1); }
.productGalleryModal.uk-open .uk-modal-dialog { opacity: 1; transform: translate3d(0, 0, 0) scale(1); }
.productGalleryModal__shell { --product-gallery-title-left: 212px; --product-gallery-title-top: 72px; --product-gallery-stage-top: 132px; --product-gallery-slide-gap: 16px; --product-gallery-slide-width: 668px; --product-gallery-image-height: 474px; --product-gallery-caption-height: 92px; --product-gallery-slide-height: calc(var(--product-gallery-image-height) + var(--product-gallery-caption-height)); position: relative; width: 100vw; height: 100vh; min-height: 100vh; background: #141414; overflow: hidden; }
.productGalleryModal__title { position: absolute; top: var(--product-gallery-title-top); left: var(--product-gallery-title-left); z-index: 3; margin: 0; color: #f2f0eb; font-size: 31px; font-weight: 400; line-height: 1.1; letter-spacing: -0.04em; }
.productGalleryModal__close { position: absolute; top: 18px; right: 16px; z-index: 4; width: 44px; height: 44px; border-radius: 999px; background: #2a2a2a; color: rgba(242, 240, 235, 0.92); pointer-events: auto; transition: background-color 180ms ease, transform 180ms ease; }
.productGalleryModal__close:hover { background: #373737; transform: scale(1.04); }
.productGalleryModal__stage { position: absolute; top: var(--product-gallery-stage-top); left: 0; right: 0; height: var(--product-gallery-slide-height); overflow: hidden; }
.productGalleryModal__viewport { width: 100%; height: 100%; padding-left: var(--product-gallery-title-left); overflow: hidden; cursor: grab; touch-action: pan-y; user-select: none; }
.productGalleryModal__track { display: flex; align-items: flex-start; gap: var(--product-gallery-slide-gap); height: 100%; padding-right: calc(var(--product-gallery-title-left) + var(--product-gallery-slide-gap)); transform: translate3d(0, 0, 0); transition: transform 620ms cubic-bezier(0.16, 1, 0.3, 1); will-change: transform; }
.productGalleryModal__slide { position: relative; flex: 0 0 var(--product-gallery-slide-width); width: var(--product-gallery-slide-width); height: var(--product-gallery-slide-height); opacity: 0.42; transform: translate3d(0, 0, 0) scale(0.985); transition: opacity 420ms ease, transform 620ms cubic-bezier(0.16, 1, 0.3, 1); }
.productGalleryModal__media { position: relative; width: 100%; height: var(--product-gallery-image-height); overflow: hidden; background: #1a1a1a; }
.productGalleryModal__media::after { content: ""; position: absolute; inset: 0; background: rgba(20, 20, 20, 0.28); transition: opacity 220ms ease; }
.productGalleryModal__slide.is-active { opacity: 1; transform: translate3d(0, 0, 0) scale(1); }
.productGalleryModal__slide.is-active .productGalleryModal__media::after { opacity: 0; }
.productGalleryModal__slide img { width: 100%; height: 100%; display: block; object-fit: cover; transform: scale(1.01); transition: transform 620ms cubic-bezier(0.16, 1, 0.3, 1), filter 420ms ease; filter: saturate(0.84) brightness(0.86); will-change: transform; }
.productGalleryModal__slide.is-active img { transform: scale(1); filter: saturate(1) brightness(1); }
.productGalleryModal__slideCaption { padding-top: 18px; min-height: var(--product-gallery-caption-height); opacity: 0; transform: translate3d(0, 8px, 0); transition: opacity 260ms ease, transform 420ms cubic-bezier(0.16, 1, 0.3, 1); pointer-events: none; }
.productGalleryModal__slide.is-active .productGalleryModal__slideCaption { opacity: 1; transform: translate3d(0, 0, 0); }
.productGalleryModal__nav { position: absolute; top: calc(var(--product-gallery-stage-top) + (var(--product-gallery-image-height) / 2) - 28px); z-index: 4; display: flex; align-items: center; justify-content: center; width: 56px; height: 56px; padding: 0; border: 0; border-radius: 999px; background: var(--color-white); color: #171717; box-shadow: 0 14px 34px rgba(0, 0, 0, 0.24); cursor: pointer; transition: background-color 180ms ease, transform 180ms ease, opacity 180ms ease; }
.productGalleryModal__nav:hover { background: #f3f3f3; }
.productGalleryModal__nav:disabled { opacity: 0.3; cursor: not-allowed; transform: none; }
.productGalleryModal__nav--prev { left: 10px; }
.productGalleryModal__nav--prev:hover { transform: translateX(-1px); }
.productGalleryModal__nav--next { right: 10px; }
.productGalleryModal__nav--next:hover { transform: translateX(1px); }
.productGalleryModal__captionTitle { margin: 0 0 8px; color: var(--color-white); font-size: 18px; font-weight: 600; line-height: 1.3; letter-spacing: -0.02em; }
.productGalleryModal__captionText { margin: 0; color: rgba(242, 240, 235, 0.76); font-size: 14px; line-height: 1.65; }
.productGalleryModal__captionTitle:empty,
.productGalleryModal__captionText:empty { display: none; }
.productGalleryModal__empty { position: absolute; inset: calc(var(--product-gallery-stage-top) + var(--product-gallery-slide-height)) 0 0; background: #141414; }
.productGalleryModal.is-dragging .productGalleryModal__viewport { cursor: grabbing; }
.productGalleryModal.is-dragging .productGalleryModal__track,
.productGalleryModal.is-dragging .productGalleryModal__slide,
.productGalleryModal.is-dragging .productGalleryModal__slide img,
.productGalleryModal.is-dragging .productGalleryModal__slideCaption { transition: none; }
.productGalleryModal__title,
.productGalleryModal__close,
.productGalleryModal__nav { opacity: 0; transform: translate3d(0, 10px, 0); transition: opacity 300ms ease, transform 520ms cubic-bezier(0.16, 1, 0.3, 1); }
.productGalleryModal.uk-open .productGalleryModal__title,
.productGalleryModal.uk-open .productGalleryModal__close,
.productGalleryModal.uk-open .productGalleryModal__nav { opacity: 1; transform: translate3d(0, 0, 0); }
.productGalleryModal.uk-open .productGalleryModal__title { transition-delay: 70ms; }
.productGalleryModal.uk-open .productGalleryModal__close { transition-delay: 100ms; }
.productGalleryModal.uk-open .productGalleryModal__nav { transition-delay: 120ms; }

/* ### 404 page ### */
.error-404 { min-height: calc(100vh - 170px); padding-top: clamp(140px, 16vw, 220px); padding-bottom: clamp(80px, 10vw, 150px); background: var(--color-dark-600); color: var(--color-white); }
.error-404__inner { max-width: 760px; margin: 0 auto; text-align: center; }
.error-404__content { max-width: 760px; }
.error-404__eyebrow { display: inline-flex; align-items: center; min-height: 36px; margin-bottom: 22px; padding: 8px 15px; border: solid 1px rgba(255, 255, 255, 0.22); border-radius: 999px; background-color: rgba(255, 255, 255, 0.08); color: var(--color-primary); font-size: 14px; font-weight: 700; letter-spacing: 0.12em; line-height: 1; text-transform: uppercase; }
.error-404__header { margin-bottom: 24px; }
.error-404__title { max-width: 740px; margin: 0; font-size: clamp(44px, 7vw, 92px); line-height: 0.96; letter-spacing: -0.055em; color: var(--color-white); }
.error-404__body { max-width: 620px; margin: 0 auto; }
.error-404__body > p { margin-bottom: 32px; color: rgba(255, 255, 255, 0.78); font-size: clamp(18px, 2vw, 22px); line-height: 1.55; }
.error-404__actions { display: flex; flex-wrap: wrap; gap: 14px; align-items: center; justify-content: center; }
.error-404__actions .button { margin: 0; }

@media only screen and (max-width: 767px) {
	.error-404 { min-height: auto; padding-top: 120px; padding-bottom: 72px; }
	.error-404__title { font-size: clamp(40px, 12vw, 58px); }
	.error-404__body > p { margin-bottom: 24px; font-size: 17px; }
	.error-404__actions { display: grid; grid-template-columns: 1fr; }
	.error-404__actions .button { width: 100%; }
}

/* ### compare box ### */
.compareBox { padding-top: 164px; padding-bottom: 165px; background-color: var(--color-grey-500); }
.compareBox .heading { text-align: center; margin-bottom: 100px; }
.compareBox h2 { font-size: 64px; margin-bottom: 28px; letter-spacing: -0.5px; }
.compareBox h5 { font-size: 23px; margin-bottom: 44px; letter-spacing: -0.2px; color: var(--color-grey-700); }
.compareBox .heading a { font-size: 25px; text-decoration: var(--line-decoration-none); color: var(--color-dark); position: relative; }
.compareBox .heading a:after { position: absolute; top: 10px; right: -30px; content: '\e917'; font-family: var(--font-family-icons), sans-serif; font-size: 15px; color: var(--color-primary);  }
.compareBox .heading a:before { width: var(--width); height: 2px; position: absolute; bottom: 0; left: 0; background-color: var(--color-dark-100); content: ''; transition: var(--duration); }
.compareBox .heading a:focus:before,
.compareBox .heading a:hover:before { background-color: var(--color-primary); }
.compareBox .holder { display: grid; grid-template-columns: repeat(3,1fr); column-gap: 40px; }
.compareBox select { margin-bottom: 25px; font-size: 20px; padding-left: 20px; }
.compareBox .item { text-align: center; border-bottom: solid 1px var(--color-grey-800); padding-bottom: 70px; }
.compareBox .item h4 { font-size: 25px; letter-spacing: -0.2px; margin-bottom: 9px; }
.compareBox .item .btn { display: flex; justify-content: center; flex-wrap: wrap; row-gap: 10px; column-gap: 20px; }
.compareBox .item .btn .button,
.compareBox .item .btn .button + .button { margin: 0 }
.compareBox .image { border-radius: 10px; overflow: hidden; margin-bottom: 31px; }
.compareBox .image img { width: var(--width); }
.compareBox .price { margin-bottom: 30px; color: var(--color-grey-900); font-size: 12px; font-weight: 500;font-family: var(--font-family-ui), sans-serif; }
.compareBox .block { padding: 42px 0 27px; text-align: center; }
.compareBox .block:not(:last-of-type) { border-bottom: solid 1px var(--color-near-white); }
.compareBox .block img { margin: 0 auto 14px; }
.compareBox .block h6 { margin-bottom: 0; font-size: 20px; color: var(--color-dark-300); font-weight: 700; }
.compareBox .block span { font-size: 12px; color: var(--color-grey-900); }
.compareBox .bg { background-color: rgba(219, 219, 219, 0.5); position: relative; border-radius: 16px; height: 227px; }
.compareBox .bg i { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); background-color: var(--color-dark-200); width: 64px; height: 64px; color: var(--color-white); display: flex; justify-content: center; align-items: center; border-radius: 100%; font-size: 20px; }

/* ### intro box ### */
.introBox { margin-bottom: 175px; width: 100%; padding-top: 70px; overflow-x: clip; }
.introBox .inner { display: flex; flex-wrap: wrap; width: 100%; max-width: 100%; min-width: 0; padding: 0 34px; }
.introBox .left { width: 48.2%; min-width: 0; }
.introBox .right { width: 45%; min-width: 0; }
.introBox .right h2 { margin-bottom: 60px; }
.introBox [data-highlight-text],
.introBox .word,
.introBox .char { max-width: 100%; overflow-wrap: normal; }
.introBox .text { margin-bottom: 70px; max-width: 410px; line-height: 1.5; }

.introBox .watch { max-width: 405px; width: var(--width); aspect-ratio: 1.68; border-radius: 16px; overflow: hidden; position: relative;
margin-bottom: 57px; background-color: var(--color-black); }
.introBox .watch:after { content:''; position: absolute; bottom: 0; left: 0; width: var(--width); height: 60px; pointer-events: none;
background: linear-gradient(0deg, rgba(0, 0, 0, 0.9) 0%, rgba(0, 0, 0, 0) 100%); opacity: 0; }
.introBox .watch video { width: var(--width); height: var(--height); object-fit: cover; transition: var(--duration); }
.introBox .watch img { width: 100%; height: 100%; object-fit: cover; display: block; }
.introBox .watch .play-btn { font-size: 24px; color: var(--color-primary); width: 60px; height: 60px; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); border-radius: 75px; background-color: var(--color-white); display: flex; align-items: center; justify-content: center; text-decoration: var(--line-decoration-none); padding-left: 5px; z-index: 2; border: 0; cursor: pointer; }
.introBox .watch:hover video { opacity: 0.80; }

.introBox .right .text .text-editor a {color: var(--color-primary); text-decoration:underline;}
.introBox .right .text .text-editor a:hover {text-decoration: none;}
.introBox .right .text .text-editor a.button.button-outline { color: inherit; text-decoration:inherit; padding-left: 24px; }
.introBox .right .text .text-editor a.button.button-outline:hover {color: var(--color-primary); }

.introBox .right .text .text-editor a.button-orange {color: var(--color-white); text-decoration:inherit; padding-left: 24px; font-weight: normal;}
.introBox .right .text .text-editor a.button-orange:hover {border: solid 1px rgba(204,204,204, .80); color: var(--color-black);}


.introBox .right .text .text-editor p i {
  width: 32px;
  height: 32px;
  border: 1px solid var(--color-grey);
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-right: 8px;
  font-size: 15px;
  color: var(--color-black);
  margin-bottom: 8px;
}




/* ### gallery box ### */
.galleryBox { margin-bottom: 175px; width: 100%; position: relative; z-index: 1; }
.galleryBox .items { position: relative; display: block; width: 100%; }

.galleryBox .image { border-radius: 32px; width: 100%; position: relative; overflow: hidden; }
.galleryBox .image:after { width: 100%; height: 100%; content: ''; position: absolute; top: 0; left: 0; background: linear-gradient(to bottom, rgba(0,0,0,0) 50%, rgba(0,0,0,.8) 100%); }
.galleryBox .image img { width: 100%; display: block; }
.galleryBox .swiper { overflow: visible; }
.galleryBox .overlay { position: absolute; bottom: 0; left: 0; width: 100%; color: var(--color-white); padding: 5px 35px; }
.galleryBox .title { font-size: 28px; font-weight: 500; }
.galleryBox .block { padding-top: 30px; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; }
.galleryBox .arrow { display: flex; flex-wrap: wrap; justify-content: flex-start; align-items: center; }
.galleryBox .arrow .swiper-button-next  { background-color: var(--color-dark); }
.galleryBox .arrow .swiper-button-prev { background: #EBEBEB; }
.galleryBox .arrow .swiper-button-next:hover,
.galleryBox .arrow .swiper-button-prev:hover { background: #EBEBEB; }
.galleryBox .button-view i { display: flex; align-items: center; justify-content: center; border: 0.094rem solid var(--color-primary); width: 18px; height: 18px; font-size: 8px; border-radius: 50%; }
.galleryBox .arrow .swiper-button-next:before,
.galleryBox .arrow .swiper-button-next:after,
.galleryBox .arrow .swiper-button-prev:after,
.galleryBox .arrow .swiper-button-prev:before { content: "\e904"; }
.galleryBox .arrow .swiper-button-next:before { content: "\e903"; }
.galleryBox .arrow .swiper-button-next:after { content: "\e903"; }
.galleryBox .arrow .swiper-button-next:hover,
.galleryBox .arrow .swiper-button-prev:hover { background-color: var(--color-dark); }
.galleryBox .swiper-horizontal>.swiper-pagination-bullets,
.galleryBox .swiper-pagination-horizontal.swiper-pagination-bullets { margin-left: 60px; }
.gslide-inline .gallery-inline { padding: 30px; }
.gslide-inline { border-radius: 20px; }

.galleryBox .swiper-slidediv.items .overlay p {margin-bottom: 8px;}

/* ### camping box ### */
.campingBox { margin-bottom: 175px; width: 100%; position: relative; z-index: 2; overflow-x: clip; }
.campingBox .top { margin-bottom: 40px; display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; background: transparent; }
.campingBox .top-left { width: 40%; padding-top: 20px; background: transparent; }
.campingBox .top-right { width: 52%; background: transparent; }
.campingBox .img-slider-stage { position: relative; width: 100%; height: 100vh; height: 100svh; overflow: hidden; z-index: 2; isolation: isolate; background-color: var(--color-dark, #141414); }
/* Pin-spacer (door ScrollTrigger ingevoegd rond .img-slider-stage) krijgt dezelfde dark
   achtergrond zodat tijdens een refresh-momentje (un-pin → re-pin) geen witte flits
   zichtbaar is wanneer het stage tijdelijk uit beeld zit. */
.campingBox > .pin-spacer { background-color: var(--color-dark, #141414); }
.campingBox .img-slider-stage.is--pinned { z-index: 20; }
.campingBox .img-slider { border-radius: .5em; justify-content: center; align-items: flex-end; width: 100%; height: 100%; display: flex; position: relative; overflow: hidden; z-index: 1; }
.campingBox .img-slider-stage.is--pinned .img-slider { border-radius: 0; }
.campingBox .img-slider-list { grid-template-rows: 100%; grid-template-columns: 100%; place-items: center; width: 100%; height: 100%; display: grid; overflow: hidden; }
.campingBox .img-slide { opacity: 0; pointer-events: none; will-change: opacity; grid-area: 1 / 1 / -1 / -1; place-items: center; width: 100%; height: 100%; display: grid; position: relative; overflow: hidden; transition: opacity .4s ease; }
.campingBox .img-slide.is--current { opacity: 1; pointer-events: auto; }
.campingBox .img-slide::after { content: ''; position: absolute; bottom: 0; left: 0; right: 0; height: 70%; background: linear-gradient(to top, rgba(0,0,0,.85) 0%, rgba(0,0,0,.45) 40%, rgba(0,0,0,0) 75%); pointer-events: none; z-index: 1; }
.campingBox .img-slide-inner { object-fit: cover; width: 100%; height: 100%; position: absolute; inset: 0; display: block; }
.campingBox .img-slide-inner > img { object-fit: cover; width: 100%; height: 100%; display: block; }
.campingBox .slider-nav-active-label { display: none; }
.campingBox .text { position: absolute; left: 0; bottom: 7rem; z-index: 2; width: 100%; opacity: 0; transform: translateY(20px); transition: opacity 0.5s ease, transform 0.5s ease; }
.campingBox .text-inner { max-width: 380px; }
.campingBox .img-slide.is--current .text { opacity: 1; transform: translateY(0); }
.campingBox .text { color: var(--color-white); }
.campingBox .text .title { color: var(--color-white); font-size: var(--font-size-h2); font-weight: 400; line-height: 1; margin-bottom: 1rem; }
.campingBox .bottom { z-index: 10; position: absolute; bottom: 50px; left: 0; right: 0; padding: 0; }
.campingBox .slider-nav { z-index: 10; display: flex; justify-content: flex-start; align-items: stretch; gap: 50px; max-width: 100%; min-width: 0; }
.campingBox .slider-nav-item { flex: 1; cursor: pointer; padding-top: 1rem; position: relative; max-width: 280px; }
.campingBox .nav-item-progress { position: absolute; top: 0; left: 0; right: 0; height: 2px; background: rgba(255, 255, 255, 0.2); overflow: hidden; }
.campingBox .nav-item-progress-fill { position: absolute; top: 0; left: 0; width: 0%; height: 100%; background: #fff; transition: none; }
.campingBox .slider-nav-item.is--current .nav-item-progress-fill { width: 100%; }
.campingBox .nav-item-label { font-size: 16px; font-weight: 600; color: rgba(255, 255, 255, 0.6); transition: color 0.3s ease; }
.campingBox .slider-nav-item:hover .nav-item-label { color: rgba(255, 255, 255, 0.85); }
.campingBox .slider-nav-item.is--current .nav-item-label { color: var(--color-white); }

/* ### banner box ### */
.bannerBox { overflow: hidden; padding-top: 120px; padding-bottom: 37px; margin-bottom: 100px; position: relative; min-height: 100dvh; display: flex; flex-wrap: wrap; align-content: space-between; align-items: flex-end; }
body.single-vouwwagens .bannerBox { padding-top: calc(120px + var(--product-header-top-offset)); }
.bannerBox h1 { color: var(--color-white); letter-spacing: -0.7px; line-height: 1.12; }
.bannerBox .top { padding-bottom: 30px; position: relative; z-index: 1; width: var(--width); }
.bannerBox .top ul { list-style: none; margin: 0; display: flex; flex-wrap: wrap; column-gap: 10px; row-gap: 10px; }
.bannerBox .top ul li span { color: var(--color-white); display: inline-flex; align-items: center; justify-content: center; padding: 0 15px; background-color: rgba(158,158,158, .40); -webkit-backdrop-filter: blur(5px); backdrop-filter: blur(5px); border-radius: 100px; font-size: 18px; font-weight: 400; border: 1px solid rgba(255,255,255, .16); }
.bannerBox .holder { position: relative; z-index: 1; width: var(--width); }
.bannerBox .block { display: flex; flex-direction: column; }
.bannerBox .title { width: 50%; margin-bottom: 47px; }
.bannerBox .bottom { font-size: 23px; color: var(--color-white); margin-bottom: 28px; display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; border-bottom: solid 1px rgba(255,255,255, .50); }
.bannerBox .bottom p { margin-bottom: 0; }
.bannerBox .bottom span { font-size: 16px; display: inline-block; padding-bottom: 5px; }
.bannerBox .visit { width: 100%; line-height: 1.4; max-width: 400px; margin-bottom: 5px; font-size: 24px; }
.bannerBox .buttons { display: flex; flex-wrap: wrap; row-gap: 10px; column-gap: 20px; }
.bannerBox .buttons .button,
.bannerBox .buttons .button + .button { margin: 0; }
.bannerBox .bg-photo { position: absolute; top: 0; left: 0; width: var(--width); height: var(--height); }
.bannerBox .bg-photo:after { content:''; position: absolute; top: 0; left: 0; width: var(--width); height: var(--height); background: linear-gradient(to top, rgba(0,0,0,0.6) 0%,rgba(0,0,0,0) 70%); pointer-events: none; }
.bannerBox .bg-photo video,
.bannerBox .bg-photo img { width: var(--width); height: var(--height); object-fit: cover; }
.bannerBox.is-alt  { margin-bottom: 0;  }
.bannerBox.is-alt .bannerBox .block  { flex-direction: unset; }
.bannerBox .subtitle { color: var(--color-white); font-size: 15px; }
.bannerBox.is-small { min-height: 464px; align-items: flex-end; align-content: flex-end; margin-bottom: 142px; }
.bannerBox.is-small h1 { margin-bottom: 10px; }
.bannerBox.is-small h2,.bannerBox.is-small h3, .bannerBox.is-small p {color:var(--color-white);}

/* ### history box ### */
.historyBox { --history-card-width: 600px; --history-card-height: 390px; position: relative; width: 100%; height: 100vh; overflow: hidden; background-color: #f5f0e8; color: #1a1a1a; }
.historyBox-layout { display: grid; grid-template-columns: minmax(260px, 20%) minmax(0, 1fr); width: 100%; height: 100%; }
.historyBox-sidebar { position: relative; z-index: 5; border-right: 1px solid rgba(139, 109, 75, 0.12); background: linear-gradient(180deg, rgba(255, 252, 247, 0.92) 0%, rgba(248, 243, 236, 0.78) 100%); backdrop-filter: blur(10px); }
.historyBox-sidebar-inner { position: sticky; top: 0; height: 100vh; padding: 118px 32px 40px 40px; box-sizing: border-box; display: flex; flex-direction: column; gap: 32px; }
.historyBox-main { position: relative; min-width: 0; }
.historyBox-heading { position: static; z-index: 200; }
.historyBox-heading h1 { font-size: 2.2rem; font-weight: 800; margin: 0 0 8px 0; color: #1a1a1a; font-family: 'Inter', var(--font-family-base), sans-serif; }
.historyBox-heading h5 { font-size: 1rem; font-weight: 500; margin: 0; color: #666666; font-family: 'Inter', var(--font-family-base), sans-serif; max-width: 26ch; }
.historyBox-heading a { font-size: 0.9rem; font-weight: 600; color: var(--color-primary); text-decoration: none; font-family: 'Inter', var(--font-family-base), sans-serif; transition: opacity 0.3s ease; }
.historyBox-heading a:hover { opacity: 0.7; }
.historyBox-milestones { display: flex; flex-direction: column; gap: 16px; min-height: 0; }
.historyBox-milestones-label { font-size: 0.75rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: rgba(26, 26, 26, 0.45); font-family: 'Inter', var(--font-family-base), sans-serif; }
.historyBox-milestones-list { position: relative; display: flex; flex-direction: column; gap: 8px; padding-left: 18px; max-height: min(38vh, 420px); overflow-x: hidden; overflow-y: auto; -ms-overflow-style: none; scrollbar-width: none; }
.historyBox-milestones-list::-webkit-scrollbar { display: none; width: 0; height: 0; }
.historyBox-milestones-list::before { content: ''; position: absolute; top: 4px; bottom: 4px; left: 5px; width: 1px; background: linear-gradient(to bottom, rgba(139, 109, 75, 0.16), rgba(139, 109, 75, 0.34), rgba(139, 109, 75, 0.16)); }
.history-sidebar-milestone { position: relative; display: inline-flex; align-items: center; justify-content: flex-start; width: 100%; min-height: 28px; padding: 0 0 0 18px; border: 0; background: transparent; color: rgba(26, 26, 26, 0.48); font-size: 0.95rem; font-weight: 600; font-family: 'Inter', var(--font-family-base), sans-serif; text-align: left; cursor: pointer; transition: color 0.25s ease, opacity 0.25s ease; }
.history-sidebar-milestone::before { content: ''; position: absolute; left: 0; top: 50%; width: 10px; height: 10px; border-radius: 50%; background: #d5c2ad; transform: translateY(-50%); box-shadow: 0 0 0 4px rgba(245, 240, 232, 0.95); transition: background-color 0.25s ease, transform 0.25s ease, box-shadow 0.25s ease; }
.history-sidebar-milestone:hover,
.history-sidebar-milestone:focus-visible { color: rgba(26, 26, 26, 0.9); opacity: 0.9; outline: none; }
.history-sidebar-milestone:hover::before,
.history-sidebar-milestone:focus-visible::before { background: rgba(201, 74, 46, 0.7); }
.history-sidebar-milestone.active { color: var(--color-primary); }
.history-sidebar-milestone.active::before { background: var(--color-primary); transform: translateY(-50%) scale(1.15); box-shadow: 0 0 0 4px rgba(245, 240, 232, 0.95), 0 0 12px rgba(201, 74, 46, 0.22); }
.history-sidebar-milestone-year { line-height: 1.1; }
.historyBox .scene { width: 100%; height: 100%; perspective: 1000px; display: flex; justify-content: center; align-items: center; position: relative; overflow: hidden; box-sizing: border-box; padding: 0 110px 0 72px; }
.historyBox .starfield { position: absolute; top: 0; left: 0; width: 200%; height: 200%; background: radial-gradient(ellipse at center, #faf6ef 0%, #e8ddd0 60%, #d4c4b0 100%); opacity: 0.8; z-index: 0; transform: translate(-50%, -50%); }
.historyBox::before { content: ''; position: absolute; inset: 0; z-index: 1; background: radial-gradient(ellipse at center, transparent 30%, rgba(139, 109, 75, 0.15) 100%); pointer-events: none; }
.historyBox::after { content: ''; position: absolute; inset: 0; z-index: 1; opacity: 0.12; pointer-events: none; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E"); background-size: 200px 200px; }
.historyBox .timeline { position: relative; width: var(--history-card-width); height: var(--history-card-height); transform: translateY(24px); transform-style: preserve-3d; transition: transform 0.8s cubic-bezier(0.25, 1, 0.5, 1); z-index: 10; }
.historyBox .card { position: absolute; width: 100%; height: 100%; background: linear-gradient(to bottom right, #fffcf7, #f8f3ec); border: 1px solid rgba(139, 109, 75, 0.15); border-radius: 20px; box-shadow: 0 25px 50px -12px rgba(100, 70, 30, 0.2); display: flex; flex-direction: column; justify-content: flex-start; align-items: center; text-align: center; transition: all 0.8s cubic-bezier(0.25, 1, 0.5, 1), opacity 0.8s ease; transform-origin: center center; overflow: hidden; backface-visibility: hidden; -webkit-backface-visibility: hidden; opacity: 0; }
.historyBox .card-image { width: 100%; height: auto; flex: 0 0 48%; min-height: 168px; background-size: cover; background-position: center; flex-shrink: 0; }
.historyBox .card-content { width: 100%; flex: 1 1 auto; min-height: 0; padding: 18px 24px 18px 26px; box-sizing: border-box; display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; gap: 6px; z-index: 2; text-align: left; }
.historyBox .card h2 { font-size: 2.5rem; line-height: 0.95; margin: 0 0 5px 0; background: linear-gradient(to right, var(--color-primary), #c94a2e); -webkit-background-clip: text; -webkit-text-fill-color: transparent; font-family: 'Inter', var(--font-family-base), sans-serif; font-weight: 800; }
.historyBox .card-subtitle { max-width: 100%; font-size: 1.5rem; line-height: 1.28; color: #333333; margin: 0; font-family: 'Inter', var(--font-family-base), sans-serif; font-weight: 600; overflow: hidden; display: block; white-space: nowrap; text-overflow: ellipsis; }
.historyBox .card-content-bottom { width: 100%; padding-top: 4px; display: flex; align-items: flex-end; }
.historyBox .read-more-btn { display: inline-flex; align-items: center; justify-content: center; background: var(--color-primary); border: 1px solid var(--color-primary); color: #ffffff; padding: 8px 16px; border-radius: 20px; font-size: 0.85rem; font-family: 'Inter', var(--font-family-base), sans-serif; font-weight: 600; cursor: pointer; transition: all 0.3s ease; text-transform: uppercase; letter-spacing: 0.5px; text-decoration: none; }
.historyBox .read-more-btn:hover,
.historyBox .read-more-btn:focus-visible { background: #c94a2e; border-color: #c94a2e; color: #ffffff; box-shadow: 0 0 15px rgba(234, 93, 60, 0.3); }
.historyBox .controls { position: static; display: grid; grid-template-columns: 44px minmax(70px, 1fr) 44px; gap: 14px; align-items: center; width: 100%; max-width: 320px; margin-top: auto; z-index: 100; padding: 18px 20px; background: rgba(250, 245, 235, 0.88); backdrop-filter: blur(10px); border-radius: 30px; border: 1px solid rgba(139, 109, 75, 0.15); opacity: 0; transition: opacity 0.3s ease; box-sizing: border-box; }
.historyBox.is-ready .controls,
.historyBox.is-ready .sidebar-timeline,
.historyBox.is-ready #activeYearDisplay { opacity: 1; }
.historyBox .nav-btn { background: rgba(0, 0, 0, 0.1); border: none; color: #1a1a1a; width: 44px; height: 44px; border-radius: 50%; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: background 0.3s, transform 0.2s; }
.historyBox .nav-btn:hover,
.historyBox .nav-btn:focus-visible { background: rgba(0, 0, 0, 0.2); transform: scale(1.1); }
.historyBox .nav-btn:active { transform: scale(0.95); }
.historyBox .progress-indicator { min-width: 60px; color: #666666; font-size: 1.1rem; font-family: 'Inter', var(--font-family-base), sans-serif; font-weight: 600; text-align: center; }
.historyBox .progress-indicator span { color: #1a1a1a; }
.historyBox .sidebar-timeline { position: absolute; right: 40px; top: 50%; transform: translateY(-50%); display: flex; flex-direction: column; gap: 10px; z-index: 150; padding: 0; opacity: 0; transition: opacity 0.3s ease; max-height: 460px; overflow: hidden; -webkit-mask-image: linear-gradient(to bottom, transparent 0%, black 10%, black 90%, transparent 100%); mask-image: linear-gradient(to bottom, transparent 0%, black 10%, black 90%, transparent 100%); }
.historyBox .sidebar-timeline-inner { display: flex; flex-direction: column; gap: 10px; padding: 50px 16px 50px 0; transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1); }
.historyBox .sidebar-item { cursor: pointer; position: relative; padding-right: 20px; color: rgba(0, 0, 0, 0.35); transition: all 0.3s cubic-bezier(0.25, 1, 0.5, 1); text-align: right; font-size: 0.85rem; font-family: 'Inter', var(--font-family-base), sans-serif; font-weight: 500; display: flex; align-items: center; justify-content: flex-end; flex-shrink: 0; }
.historyBox .sidebar-item::after { content: ''; position: absolute; right: 0; top: 50%; transform: translateY(-50%); width: 6px; height: 6px; background-color: rgba(0, 0, 0, 0.3); border-radius: 50%; transition: all 0.3s; }
.historyBox .sidebar-item:hover { color: rgba(0, 0, 0, 0.8); }
.historyBox .sidebar-item:hover::after { background-color: rgba(0, 0, 0, 0.8); transform: translateY(-50%) scale(1.2); }
.historyBox .sidebar-item.active { color: var(--color-primary); font-size: 1.1rem; font-weight: 700; }
.historyBox .sidebar-item.active::after { background-color: var(--color-primary); box-shadow: 0 0 10px rgba(234, 93, 60, 0.4); width: 10px; height: 10px; right: -2px; }
.historyBox #activeYearDisplay { position: absolute; top: calc(50% - 195px + 36px); left: 50%; transform: translate(-50%, -100%); font-size: 64px; font-family: 'Inter', var(--font-family-base), sans-serif; font-weight: 800; color: var(--color-primary); z-index: 20; text-shadow: 0 10px 30px rgba(234, 93, 60, 0.15); pointer-events: none; transition: opacity 0.5s ease, transform 0.5s cubic-bezier(0.25, 1, 0.5, 1); background: linear-gradient(to bottom, var(--color-primary), #c94a2e); -webkit-background-clip: text; -webkit-text-fill-color: transparent; }

/* ### history timeline scroll stack ### */
.expertise { padding: 160px 48px; overflow: clip; background: #f3f3f1; color: #000; font-family: 'Inter', var(--font-family-base), sans-serif; font-feature-settings: 'zero' on, 'tnum' on; }
.expertise img { max-width: 100%; display: block; }
.expertise a { color: inherit; text-decoration: none; }
.expertise__container { max-width: 1329px; margin: 0 auto; }
.expertise__content { display: flex; align-items: flex-start; gap: 79px; }
.expertise__left { position: sticky; top: 180px; z-index: 1; width: 400px; display: flex; flex-direction: column; gap: 24px; flex-shrink: 0; }
.expertise .pill { display: inline-flex; align-items: center; gap: 8px; font-size: 13px; letter-spacing: 0.12em; font-weight: 500; color: #000; text-transform: uppercase; }
.expertise__title { font-size: 96px; font-weight: 500; letter-spacing: -0.04em; line-height: 0.95; margin: 0; color: #000; }
.expertise__subtitle { font-size: 16px; line-height: 1.45; color: rgba(0,0,0,0.7); margin: 0; max-width: 360px; }
.expertise__right { flex: 1; display: flex; flex-direction: column; min-width: 0; }
.expertise__cards { display: flex; flex-direction: column; gap: 64px; position: relative; padding-left: 96px; }
.history-slider { position: fixed; left: 0; right: 0; bottom: 0; z-index: 40; padding: 8px 32px calc(8px + env(safe-area-inset-bottom)); background: #fff; border-top: 1px solid #e4e4e4; display: flex; align-items: center; gap: 16px; transform: translateY(110%); transition: transform .35s cubic-bezier(.2,.7,.2,1); }
.history-slider.is-visible { transform: translateY(0); }
.history-slider__viewport { flex: 1; overflow-x: auto; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.history-slider__viewport::-webkit-scrollbar { display: none; }
.history-slider__track { position: relative; display: flex; justify-content: space-between; align-items: flex-end; min-width: 100%; padding: 20px 12px 8px; }
.history-slider__line,
.history-slider__line-fill { position: absolute; bottom: 14px; height: 2px; left: 12px; right: 12px; pointer-events: none; }
.history-slider__line { background: #d6d6d6; border-radius: 2px; }
.history-slider__line-fill { background: var(--color-primary); right: auto; width: var(--history-progress, 0%); transition: width .15s linear; border-radius: 2px; }
.history-slider__tick { position: relative; z-index: 1; display: flex; flex-direction: column; align-items: center; gap: 8px; background: none; border: 0; padding: 0; cursor: pointer; font: inherit; }
.history-slider__year { font-size: 12px; font-weight: 500; color: #999; font-variant-numeric: tabular-nums; letter-spacing: 0.02em; opacity: 0; transition: color .25s, opacity .25s, font-weight .25s; white-space: nowrap; }
.history-slider__tick--card .history-slider__year { opacity: 1; color: #000; }
.history-slider__dot { width: 14px; height: 14px; border-radius: 50%; background: #fff; border: 2px solid #d6d6d6; box-shadow: 0 0 0 4px #fff; transition: background-color .25s, border-color .25s, transform .25s; }
.history-slider__tick.is-reached .history-slider__dot { background: var(--color-primary); border-color: var(--color-primary); }
.history-slider__tick.is-active .history-slider__dot { transform: scale(1.4); }
.history-slider__tick.is-active .history-slider__year { color: var(--color-primary); font-weight: 600; }
.history-slider__nav { width: 40px; height: 40px; border-radius: 100%; border: 1px solid #d6d6d6; background: #fff; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; font-size: 20px; line-height: 1; color: #000; flex-shrink: 0; align-self: flex-end; margin-bottom: 14px; transition: opacity .2s, border-color .2s, color .2s; rotate: 90deg; }
.history-slider__nav:hover { border-color: var(--color-primary); color: var(--color-primary); }
.history-slider__nav:disabled { opacity: 0.3; cursor: not-allowed; border-color: #d6d6d6; color: #000; }
.timeline__rail { position: absolute; top: 24px; bottom: 24px; left: 78px; width: 2px; background: #d6d6d6; border-radius: 2px; }
.timeline__rail-fill { position: absolute; top: 0; left: 0; width: 100%; height: 0%; background: var(--color-primary); border-radius: 2px; transition: height .15s linear; }
.ijkpunten { display: flex; flex-direction: column; gap: 12px; margin-bottom: 24px; }
.ijkpunten__label { margin: 0; font-size: 11px; letter-spacing: 0.12em; text-transform: uppercase; color: #000; font-weight: 500; }
.ijkpunten__buttons { display: flex; flex-wrap: wrap; gap: 8px; }
.expertise .filter-buttons { margin-bottom: 0; gap: 8px 16px; }
.expertise .ijkpunten .filter-btn { margin-bottom: 0; color: var(--color-primary); background-color: var(--color-white); border: solid 1px rgba(204,204,204, .80); }
.expertise .ijkpunten .filter-btn[data-filter-status="active"],
.expertise .ijkpunten .filter-btn:not([data-filter-status="active"]):hover,
.expertise .ijkpunten .filter-btn:not([data-filter-status="active"]):focus-visible { color: var(--color-white); background-color: var(--color-primary); border-color: var(--color-primary); }
.expertise .card { position: relative; scroll-margin-top: 180px; background: #fff; color: #000; border-radius: 4px; border: 1px solid #e4e4e4; box-shadow: -8px 5px 9px 0 rgba(0,0,0,0.03); }
.card__year-pill { position: absolute; left: -100px; top: 14px; display: inline-flex; align-items: center; justify-content: center; padding: 6px 14px; background: #fff; color: #000; border: 1px solid #e4e4e4; border-radius: 999px; font-size: 13px; font-weight: 600; letter-spacing: 0.04em; font-variant-numeric: tabular-nums; box-shadow: 0 1px 3px rgba(0,0,0,0.04); transition: background-color .25s ease, color .25s ease, border-color .25s ease; z-index: 2; }
.card__dot { position: absolute; left: -27px; top: 22px; width: 18px; height: 18px; border-radius: 50%; background: #fff; border: 2px solid #d6d6d6; box-shadow: 0 0 0 4px #f3f3f1; z-index: 3; transition: background-color .25s ease, border-color .25s ease; }
.expertise .card.is-reached .card__dot { background: var(--color-primary); border-color: var(--color-primary); }
.expertise .card.is-reached .card__year-pill { background: var(--color-primary); color: #fff; border-color: var(--color-primary); }
.card__inner { display: flex; flex-direction: column; padding: 4px; min-height: 0; gap: 0; }
.card__text,
.card__top { display: contents; }
.card__title { order: 3; padding: 14px 32px 0; font-size: 32px; font-weight: 500; letter-spacing: -0.02em; line-height: 1.1; margin: 0; color: #000; overflow-wrap: anywhere; }
.card__desc { order: 4; padding: 24px 32px 0; font-size: 15px; line-height: 1.45; color: #666; margin: 0; }
.card__line { display: none; }
.expertise .button.button-outline.button-arrow { order: 5; align-self: flex-start; min-height: 48px; margin: 20px 32px 32px; }
.card__year { order: 2; display: inline-flex; align-self: flex-start; width: auto; box-sizing: border-box; padding: 4px 12px; border-radius: 8px; background: #fdece6; color: var(--color-primary); font-size: 13px; font-weight: 500; letter-spacing: 0; line-height: 1.4; font-variant-numeric: tabular-nums; text-align: left; margin: 24px 32px 0; }
.card__image { order: 1; flex: 0 0 auto; position: relative; border-radius: 2px; overflow: hidden; min-width: 0; width: 100%; aspect-ratio: 16 / 9; min-height: 320px; }
.card__image img { width: 100%; height: 100%; object-fit: cover; }

@media only screen and (max-width: 1199px) {
	.expertise { padding-right: 32px; padding-left: 32px; }
	.expertise__content { gap: 48px; }
	.expertise__left { width: 320px; top: 140px; }
	.expertise__title { font-size: clamp(58px, 7vw, 78px); }
	.expertise__cards { padding-left: 82px; gap: 52px; }
	.timeline__rail { left: 65px; }
	.card__year-pill { left: -82px; }
	.card__dot { left: -26px; }
	.card__title { font-size: clamp(28px, 3vw, 32px); }
	.card__year { font-size: 13px; }
}

@media only screen and (max-width: 1024px) {
	.expertise { padding: 112px 28px 128px; }
	.expertise__content { flex-direction: column; gap: 48px; }
	.expertise__left { position: relative; top: auto; width: 100%; max-width: 760px; }
	.expertise__title { max-width: 9ch; }
	.expertise__subtitle { max-width: 520px; }
	.ijkpunten { margin-bottom: 0; }
	.expertise .filter-buttons { gap: 8px; }
	.expertise__right { width: 100%; }
	.expertise__cards { width: 100%; box-sizing: border-box; }
}

@media only screen and (max-width: 767px) {
	.expertise { padding: 84px 16px 112px; overflow-x: hidden; }
	.expertise__content { gap: 36px; }
	.expertise__left { gap: 18px; }
	.expertise__title { max-width: 100%; font-size: clamp(44px, 14vw, 64px); line-height: 0.98; }
	.expertise__subtitle { font-size: 15px; }
	.expertise .ijkpunten .filter-btn,
	.expertise .ijkpunten .filter-btn[data-filter-status="active"],
	.expertise .ijkpunten .filter-btn:not([data-filter-status="active"]):hover,
	.expertise .ijkpunten .filter-btn:not([data-filter-status="active"]):focus-visible { padding: 8px 14px; font-size: 13px; }
	.expertise__cards { gap: 52px; padding-left: 32px; padding-bottom: 72px; }
	.timeline__rail { top: 17px; bottom: 88px; left: 16px; }
	.expertise .card { margin-top: 54px; scroll-margin-top: 92px; }
	.card__year-pill { box-sizing: border-box; left: 0; top: -48px; width: auto; min-width: 58px; padding: 7px 12px; font-size: 13px; }
	.card__dot { left: -24px; top: -39px; width: 16px; height: 16px; }
	.card__title { padding: 12px 24px 0; font-size: clamp(28px, 8vw, 38px); line-height: 1.05; }
	.card__desc { padding: 20px 24px 0; font-size: 15px; line-height: 1.5; }
	.expertise .button.button-outline.button-arrow { margin: 16px 24px 24px; }
	.card__year { padding: 4px 12px; font-size: 13px; line-height: 1.4; margin: 20px 24px 0; }
	.card__image { aspect-ratio: 4 / 3; width: 100%; min-height: 220px; }
	.history-slider { gap: 10px; padding: 6px 12px calc(6px + env(safe-area-inset-bottom)); }
	.history-slider__track { padding: 16px 8px 7px; }
	.history-slider__line,
	.history-slider__line-fill { left: 8px; right: 8px; bottom: 12px; }
	.history-slider__year { font-size: 11px; }
	.history-slider__dot { width: 12px; height: 12px; }
	.history-slider__nav { width: 34px; height: 34px; }
}

@media only screen and (max-width: 479px) {
	.expertise { padding-right: 12px; padding-left: 12px; }
	.expertise__cards { gap: 48px; padding-left: 30px; }
	.timeline__rail { left: 15px; }
	.card__year-pill { min-width: 54px; padding-right: 10px; padding-left: 10px; font-size: 12px; }
	.card__dot { left: -23px; }
	.card__title { padding: 12px 20px 0; }
	.card__desc { padding: 18px 20px 0; }
	.expertise .button.button-outline.button-arrow { margin-right: 20px; margin-left: 20px; }
	.card__title { font-size: clamp(26px, 8.5vw, 34px); }
	.card__year { padding: 4px 12px; font-size: 13px; margin-right: 20px; margin-left: 20px; }
	.card__image { min-height: 190px; }
	.history-slider { padding-right: 8px; padding-left: 8px; }
	.history-slider__nav { width: 32px; height: 32px; }
}

/* ### tijdlijn single ### */
.tijdlijnSingle.single { color: var(--color-dark); }
.tijdlijnSingle .single-breadcrumb { padding-top: 0; margin-bottom: 14px; font-size: 13px; color: rgba(255, 255, 255, 0.78); gap: 2px 0; }
.tijdlijnSingle .single-breadcrumb a { color: rgba(255, 255, 255, 0.78); }
.tijdlijnSingle .single-breadcrumb a:hover,
.tijdlijnSingle .single-breadcrumb a:focus-visible { color: var(--color-white); }
.tijdlijnSingle .single-breadcrumb-sep { color: rgba(255, 255, 255, 0.42); }
.tijdlijnSingle-container { max-width: var(--width-large); margin: 0 auto; padding-top: 80px; padding-bottom: 100px; }
.tijdlijnSingle-intro { max-width: 820px; margin-left: auto; margin-right: auto; margin-bottom: 40px; }
.tijdlijnSingle-lead { margin-bottom: 0; font-family: var(--font-family-georgia), sans-serif; font-size: 28px; line-height: 1.35; color: var(--color-dark-900); }
.tijdlijnSingle-body { max-width: 820px; margin-left: auto; margin-right: auto; }
.tijdlijnSingle-body > :last-child { margin-bottom: 0; }
.tijdlijnSingle-body p,
.tijdlijnSingle-body ul,
.tijdlijnSingle-body ol,
.tijdlijnSingle-body blockquote { margin-bottom: 24px; font-size: 19px; line-height: 1.9; color: var(--color-dark-medium); }
.tijdlijnSingle-body > p:first-child { font-size: 22px; line-height: 1.82; color: var(--color-dark-900); }
.tijdlijnSingle-body h2,
.tijdlijnSingle-body h3,
.tijdlijnSingle-body h4 { margin-top: 52px; margin-bottom: 16px; color: var(--color-dark-900); letter-spacing: -0.03em; }
.tijdlijnSingle-body h2 { font-size: 42px; font-family: var(--font-family-georgia), sans-serif; line-height: 1.08; }
.tijdlijnSingle-body h3 { font-size: 30px; line-height: 1.14; }
.tijdlijnSingle-body h4 { font-size: 22px; line-height: 1.2; }
.tijdlijnSingle-body ul,
.tijdlijnSingle-body ol { padding-left: 26px; }
.tijdlijnSingle-body li { margin-bottom: 10px; }
.tijdlijnSingle-body a { color: var(--color-primary); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 0.18em; }
.tijdlijnSingle-body a:hover,
.tijdlijnSingle-body a:focus-visible { color: var(--color-dark-900); }
.tijdlijnSingle-body blockquote { margin: 38px 0; padding: 28px 32px; border-left: 4px solid var(--color-primary); border-radius: 20px; background: var(--color-bianca); font-family: var(--font-family-georgia), sans-serif; font-size: 28px; line-height: 1.45; color: var(--color-dark-900); }
.tijdlijnSingle-body figure,
.tijdlijnSingle-body .wp-block-image { margin: 44px 0; }
.tijdlijnSingle-body figure img,
.tijdlijnSingle-body .wp-block-image img,
.tijdlijnSingle-body p img { width: var(--width); border-radius: 16px; box-shadow: 0 24px 70px rgba(26, 18, 14, 0.14); transition: transform 0.35s ease, box-shadow 0.35s ease; }
.tijdlijnSingle-body figure:hover img,
.tijdlijnSingle-body .wp-block-image:hover img,
.tijdlijnSingle-body p:hover img { transform: translateY(-3px); box-shadow: 0 30px 85px rgba(26, 18, 14, 0.18); }
.tijdlijnSingle-body figcaption,
.tijdlijnSingle-body .wp-element-caption { margin-top: 14px; font-size: 14px; line-height: 1.5; color: var(--color-grey-medium); }
.tijdlijnSingle-related { padding: 80px 0 120px; background: var(--color-bianca); }
.tijdlijnSingle-related-inner { max-width: var(--width-large); margin: 0 auto; }
.tijdlijnSingle-related-top { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; gap: 12px 24px; margin-bottom: 36px; }
.tijdlijnSingle-related-title { margin-bottom: 0; font-size: 32px; color: var(--color-dark-900); letter-spacing: -0.03em; }
.tijdlijnSingle-related-link { font-size: 15px; font-weight: 600; color: var(--color-primary); text-decoration: none; }
.tijdlijnSingle-related-link:hover { text-decoration: underline; }
.tijdlijnSingle-related-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; }
.tijdlijnSingle-related-card { display: flex; flex-direction: column; border-radius: 20px; overflow: hidden; background: var(--color-white); box-shadow: 0 18px 50px rgba(24, 17, 15, 0.06); border: 1px solid rgba(43, 29, 21, 0.08); transition: transform 0.35s ease, box-shadow 0.35s ease; text-decoration: none; color: inherit; }
.tijdlijnSingle-related-card:hover { transform: translateY(-4px); box-shadow: 0 22px 60px rgba(24, 17, 15, 0.12); }
.tijdlijnSingle-related-image { width: 100%; aspect-ratio: 16 / 10; overflow: hidden; }
.tijdlijnSingle-related-image img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s ease; }
.tijdlijnSingle-related-card:hover .tijdlijnSingle-related-image img { transform: scale(1.05); }
.tijdlijnSingle-related-content { padding: 24px 28px 28px; }
.tijdlijnSingle-related-year { display: inline-block; margin-bottom: 8px; font-size: 13px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--color-primary); }
.tijdlijnSingle-related-card-title { margin: 0; font-size: 20px; line-height: 1.3; color: var(--color-dark-900); }
.tijdlijnSingle a:focus-visible,
.tijdlijnSingle button:focus-visible,
.tijdlijnSingle [tabindex]:focus-visible { outline: 2px solid var(--color-primary); outline-offset: 4px; }

/* ### single post ### */
.single { background-color: var(--color-grey-500); }
.single-top { padding-bottom: 48px; }
.single-container { }
.single-breadcrumb { padding-top: 120px; margin-bottom: 32px; font-size: 14px; color: var(--color-grey-medium); display: flex; align-items: center; flex-wrap: wrap; gap: 0; }
.single-breadcrumb a { color: var(--color-grey-medium); text-decoration: none; }
.single-breadcrumb a:hover { color: var(--color-dark); }
.single-breadcrumb-sep { margin: 0 8px; color: var(--color-grey-medium); }
.single.single--news .single-hero-compare-card .single-breadcrumb { padding-top: 0; margin-bottom: 14px; font-size: 13px; color: rgba(255, 255, 255, 0.78); gap: 2px 0; }
.single.single--news .single-hero-compare-card .single-breadcrumb a { color: rgba(255, 255, 255, 0.78); }
.single.single--news .single-hero-compare-card .single-breadcrumb a:hover,
.single.single--news .single-hero-compare-card .single-breadcrumb a:focus-visible { color: var(--color-white); }
.single.single--news .single-hero-compare-card .single-breadcrumb-sep { color: rgba(255, 255, 255, 0.42); }
.single-top-date { display: inline-flex; margin-bottom: 16px; font-size: 16px; line-height: 1.2; color: var(--color-grey-medium); }
.single-top-title { max-width: 820px; margin: 0; font-size: 54px; font-weight: 600; line-height: 0.96; letter-spacing: -0.04em; color: var(--color-dark); text-wrap: balance; }
.single-header { margin-bottom: 0; }
.single-title { max-width: 820px; margin-bottom: 20px; font-size: 56px; font-weight: 600; line-height: 1.05; letter-spacing: -0.03em; color: var(--color-dark); font-family: var(--font-family-base), sans-serif; }
.single-meta { font-size: 15px; color: var(--color-grey-medium); }
.single-hero { margin-bottom: 56px; border-radius: 8px; overflow: hidden; }
.single-hero img { width: var(--width); height: auto; display: block; object-fit: cover; max-height: 600px; }
.single-hero-compare { margin-bottom: 64px; }
.single-hero-compare-label { margin-bottom: 18px; font-size: 12px; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase; color: var(--color-grey-medium); }
.single-hero-compare-media { position: relative; min-height: 620px; border-radius: 20px; overflow: hidden; background-color: #161312; box-shadow: 0 28px 70px rgba(24, 17, 15, 0.14); }
.single-hero-compare-media::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(14, 12, 11, 0.08) 0%, rgba(14, 12, 11, 0.14) 36%, rgba(14, 12, 11, 0.58) 100%); pointer-events: none; }
.single-hero-compare-image { width: 100%; height: 100%; min-height: 620px; object-fit: cover; display: block; }
.single-hero-compare-card { position: absolute; left: 32px; bottom: 32px; z-index: 1; width: min(100% - 64px, 440px); padding: 26px 28px 30px; border: 1px solid rgba(255, 255, 255, 0.18); border-radius: 16px; background: linear-gradient(180deg, rgba(46, 39, 35, 0.42) 0%, rgba(20, 16, 14, 0.58) 100%); box-shadow: 0 24px 60px rgba(10, 7, 6, 0.28); backdrop-filter: blur(22px); -webkit-backdrop-filter: blur(22px); }
.single-hero-compare-date { display: inline-flex; margin-bottom: 16px; font-size: 16px; line-height: 1.2; color: rgba(255, 255, 255, 0.84); }
.single-hero-compare-title { margin: 0; color: var(--color-white); font-size: 54px; line-height: 0.96; letter-spacing: -0.04em; text-wrap: balance; }
.single-hero-compare-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; }
.single-hero-compare-actions .button,
.single-hero-compare-actions .button + .button { margin: 0; }
.single-body { max-width: 760px; margin: 0 auto 80px; }
.single-body p,
.single-body ul,
.single-body ol,
.single-body blockquote { font-size: 19px; line-height: 1.85; color: var(--color-dark-medium); margin-bottom: 24px; }
.single-body > p:first-child { font-size: 22px; line-height: 1.75; color: var(--color-dark); }
.single-body h2,
.single-body h3,
.single-body h4 { margin-top: 48px; margin-bottom: 16px; color: var(--color-dark); letter-spacing: -0.02em; }
.single-body h2 { font-size: 36px; line-height: 1.1; }
.single-body h3 { font-size: 28px; line-height: 1.15; }
.single-body h4 { font-size: 22px; line-height: 1.2; }
.single-body ul,
.single-body ol { padding-left: 24px; }
.single-body li { margin-bottom: 10px; }
.single-body a { color: var(--color-primary); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 0.18em; }
.single-body a:hover { color: var(--color-dark); }
.single-body blockquote { margin: 36px 0; padding: 24px 28px; border-left: 4px solid var(--color-primary); border-radius: 8px; background: var(--color-bianca); font-size: 24px; line-height: 1.45; color: var(--color-dark); }
.single-body figure,
.single-body .wp-block-image { margin: 44px 0; }
.single-body figure img,
.single-body .wp-block-image img { width: var(--width); border-radius: 8px; }
.single-body figcaption,
.single-body .wp-element-caption { margin-top: 12px; font-size: 14px; line-height: 1.5; color: var(--color-grey-medium); }
.single-related { padding: 80px 0; border-top: 1px solid var(--color-grey-300); }
.single-related-top { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; margin-bottom: 40px; gap: 16px; }
.single-related-title { font-size: 36px; font-weight: 600; color: var(--color-dark); margin-bottom: 0; letter-spacing: -0.02em; }
.single-related-link { font-size: 16px; font-weight: 500; color: var(--color-primary); text-decoration: none; }
.single-related-link:hover { text-decoration: underline; }
.single-related-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px; }
.single-related-card { display: flex; flex-direction: column; text-decoration: none; color: inherit; border-radius: 8px; overflow: hidden; background: var(--color-white); border: 1px solid var(--color-grey-300); transition: transform 0.3s ease, box-shadow 0.3s ease; }
.single-related-card:hover { transform: translateY(-4px); box-shadow: 0 20px 50px rgba(0, 0, 0, 0.08); }
.single-related-image { aspect-ratio: 16 / 10; overflow: hidden; }
.single-related-image img { width: var(--width); height: var(--height); object-fit: cover; transition: transform 0.4s ease; }
.single-related-card:hover .single-related-image img { transform: scale(1.04); }
.single-related-content { padding: 24px; display: flex; flex-direction: column; flex: 1; }
.single-related-date { font-size: 13px; color: var(--color-grey-medium); margin-bottom: 10px; display: block; }
.single-related-card-title { font-size: 20px; font-weight: 600; line-height: 1.3; color: var(--color-dark); margin-bottom: 10px; letter-spacing: -0.01em; }
.single-related-excerpt { font-size: 15px; line-height: 1.6; color: var(--color-grey-medium); margin-bottom: 0; }
.single-cta { background-color: #ffffff; padding: 80px 0; text-align: center; }
.single-cta-title { font-size: 36px; margin-bottom: 16px; color: var(--color-dark); }
.single-cta-text { font-size: 18px; color: var(--color-grey-medium); margin-bottom: 32px; max-width: 600px; margin-left: auto; margin-right: auto; }
.single-cta-text a { color: var(--color-dark); text-decoration: underline; text-underline-offset: 0.15em; }
.single-cta-text a:hover { color: var(--color-primary); }
body.is-single-newsletter-modal-open { overflow: hidden; scrollbar-gutter: stable; }
.single-newsletter-modal[hidden] { display: none !important; }
.single-newsletter-modal { position: fixed; inset: 0; z-index: 9998; }
.single-newsletter-modal__backdrop { position: absolute; inset: 0; background: rgba(18, 16, 15, 0.58); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); }
.single-newsletter-modal__panel { position: relative; z-index: 1; width: min(680px, calc(100vw - 32px)); margin: 5vh auto; padding: 44px 40px 36px; border-radius: 16px; background: #fcfaf6; box-shadow: 0 34px 90px rgba(16, 11, 9, 0.22); max-height: 90vh; overflow-y: auto; }
.single-newsletter-modal__close { position: absolute; top: 16px; right: 16px; width: 44px; height: 44px; border: 0; border-radius: 999px; background: var(--color-grey-500); color: var(--color-dark); font-size: 30px; line-height: 1; cursor: pointer; }
.single-newsletter-modal__eyebrow { margin-bottom: 14px; font-size: 12px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: var(--color-grey-medium); }
.single-newsletter-modal__title { margin-bottom: 12px; font-size: 44px; line-height: 0.98; letter-spacing: -0.04em; color: var(--color-dark); }
.single-newsletter-modal__subtitle { margin-bottom: 28px; max-width: 50ch; font-size: 18px; line-height: 1.6; color: var(--color-grey-medium); }
.single-newsletter-modal__form { min-height: 240px; border: 1px dashed rgba(43, 29, 21, 0.18); border-radius: 18px; background: rgba(255, 255, 255, 0.82); }
.single-body .check { padding-top: 13px; padding-left: 0; }
.single-body .check li { position: relative; list-style: none; padding-left: 33px; margin-bottom: 12px; }
.single-body .check li:before { position: absolute; top: 2px; left: -1px; font-size: 12px; content: '\e907'; font-family: var(--font-family-icons), sans-serif; width: 22px; height: 22px; background-color: var(--color-primary); border-radius: 100%; color: var(--color-white); display: flex; align-items: center; justify-content: center; }

/* ### swiper control ### */
.swiper-button-next,
.swiper-button-prev { width: 56px; height: 56px; border-radius: 75px; border: 0; background-color: var(--color-white); position: relative; left: unset; right: unset; transition: var(--duration); overflow: hidden; margin-top: 0; }
.swiper-button-prev { margin-right: 12px; }
.swiper-button-next:before,
.swiper-button-next:after,
.swiper-button-prev:after,
.swiper-button-prev:before { content: "\e902"; font-size: 16px; color: var(--color-grey); font-family: var(--font-family-icons), sans-serif; transition: var(--duration); position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }
.swiper-button-prev:after { transform: translate(50px, -50%); }
.swiper-button-prev:hover:before { transform: translate(-50px, -50%); color: var(--color-white); }
.swiper-button-prev:hover:after { transform: translate(-50%, -50%); color: var(--color-white); }
.swiper-button-next:before { content: "\e906"; }
.swiper-button-next:after { content: "\e906"; transform: translate(-50px, -50%); }
.swiper-button-next:hover:before { transform: translate(50px, -50%); color: var(--color-white); }
.swiper-button-next:hover:after { transform: translate(-50%, -50%); color: var(--color-white); }
.swiper-button-next svg,
.swiper-button-prev svg { display: none; }
.swiper-button-next:hover,
.swiper-button-prev:hover { background-color: var(--color-dark); }
.swiper-pagination { bottom: unset; }
.swiper-pagination-bullet { width: 8px; height: 8px; background-color: rgba(0,0,0, 0.30); transition: var(--duration); opacity: 1; }
.swiper-pagination-bullet-active { opacity: 1; background-color: var(--color-black); width: 32px; height: 8px; border-radius: 25px; }
.swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-horizontal.swiper-pagination-bullets { display: flex; left: 50%; bottom: unset; justify-content: center; width: auto; transform: translateX(-50%); margin-left: -59px; }
.swiper .swiper-button-next,
.swiper .swiper-button-prev { margin-top: 0; left: unset; }

/* ### footer container ### */
#footerCntr { padding-top: 79px; background-color: var(--color-dark-600); }
#footerCntr .block { display: flex; margin-bottom: 61px; }
#footerCntr .title, #footerCntr h3{ font-size: 20px; color: var(--color-grey-50); margin-bottom: 14px; }
#footerCntr .menus ul { list-style: none; }
#footerCntr .menus li a { color: var(--color-white); text-decoration: var(--line-decoration-none); }
#footerCntr .menus li a:focus,
#footerCntr .menus li a:hover { text-decoration: underline; }
#footerCntr .menus li:not(:last-child) { margin-bottom: 6px; }
#footerCntr .register { color: var(--color-white); font-size: 13px; width: 49%; }
#footerCntr .register .title { margin-bottom: 7px; }
#footerCntr .register form { display: block; }
#footerCntr .register .form-group { position: relative; margin-bottom: 18px; }
#footerCntr .register input { padding: 8px 22px; font-size: 13px; width: var(--width); background-color: var(--color-black); min-height: 58px; border-radius: 45px; border: 0; color: var(--color-white);  }
#footerCntr .register input::placeholder { color: var(--color-white); }
#footerCntr .register .button-register { font-size: 13px; color: var(--color-dark-800); position: absolute; top: 6px; bottom: 6px; right: 0; min-width: 88px; min-height: 48px; background-color: var(--color-white); border-radius: 45px; border: 0; cursor: pointer; transition: var(--duration); }
#footerCntr .register .button-register:focus,
#footerCntr .register .button-register:hover { color: var(--color-white); background-color: var(--color-primary); }
#footerCntr .register .text { font-size: 12px; margin-bottom: 26px; color: var(--color-grey-40); line-height: 1.8; padding-right: 10%; }
#footerCntr .register .text p a { color: var(--color-grey-40); text-decoration: underline; }
#footerCntr .register .text p a:focus,
#footerCntr .register .text p a:hover { text-decoration: none; }
#footerCntr .register .text p:last-of-type { margin-bottom: 0;}
#footerCntr .register ul { list-style: none; display: flex; flex-wrap: wrap; }
#footerCntr .register li a { font-size: 24px; color: var(--color-grey); text-decoration: var(--line-decoration-none); }
#footerCntr .register li a:focus,
#footerCntr .register li a:hover { color: var(--color-white); }
#footerCntr .register li:not(:last-child) { margin-right: 18px; }
#footerCntr .register .gform_wrapper { margin: 0; position: relative; margin-bottom: 18px; }
#footerCntr .register .gform_wrapper form { position: relative; }
#footerCntr .register .gform_body { margin: 0; }
#footerCntr .register .gform_fields { padding: 0; margin: 0; list-style: none; }
#footerCntr .register .gfield { margin: 0; padding: 0; }
#footerCntr .register .gfield_label { display: none; }
#footerCntr .register .gform_wrapper input:not([type="submit"]) { padding: 8px 110px 8px 22px; font-size: 13px; width: 100%; background-color: var(--color-black); min-height: 58px; border-radius: 8px; border: 0; color: var(--color-white); box-sizing: border-box; }
#footerCntr .register .gform_wrapper input:not([type="submit"])::placeholder { color: var(--color-white); }
#footerCntr .register .gform_footer,
#footerCntr .register .gform_wrapper .gform_footer { position: absolute; top: 6px; right: 6px; bottom: 6px; margin: 0 !important; padding: 0 !important; z-index: 1; }
#footerCntr .register .gform_wrapper input[type="submit"],
#footerCntr .register .gform_wrapper .gform_button { font-size: 13px; color: var(--color-dark-800); min-width: 88px; min-height: 48px; height: 100%; background-color: var(--color-white); border-radius: 8px; border: 0; cursor: pointer; transition: var(--duration); padding: 8px 22px; }
#footerCntr .register .gform_wrapper input[type="submit"]:focus,
#footerCntr .register .gform_wrapper input[type="submit"]:hover,
#footerCntr .register .gform_wrapper .gform_button:focus,
#footerCntr .register .gform_wrapper .gform_button:hover { color: var(--color-white); background-color: var(--color-primary); }
#footerCntr .register .gform_wrapper .gfield_validation_message,
#footerCntr .register .gform_wrapper .validation_message { color: #ff6b6b; font-size: 12px; margin-top: 6px; }
#footerCntr .register .gform_wrapper .gform_confirmation_message { color: var(--color-white); font-size: 13px; }
#footerCntr .register .gform_wrapper .gfield_description { display: none; }
#footerCntr .register .gform_wrapper .gform_validation_errors { display: none; }
#footerCntr .menus { width: 42%; }
#footerCntr .menus:nth-child(2) { width: 42%; }
#footerCntr .menus:nth-child(3) { width: 35%; }
#footerCntr .menus:nth-child(4) { width: 35%; }
#footerCntr .copyright { font-size: 12px; color: var(--color-grey); }
#footerCntr .copyright .top { border-bottom: solid 1px var(--color-grey-50); padding-bottom: 16px; }
#footerCntr .copyright .logo { width: 175px; }
#footerCntr .copyright .logo img { width: var(--width); }
#footerCntr .copyright .info { padding-top: 30px; padding-bottom: 30px; display: flex; flex-wrap: wrap; column-gap: 20px; justify-content: space-between; }
#footerCntr .copyright p a { color: var(--color-grey); text-decoration: var(--line-decoration-none); }
#footerCntr .copyright p a:focus,
#footerCntr .copyright p a:hover { color: var(--color-white); text-decoration: underline; }
#footerCntr .copyright p:last-of-type { margin-bottom: 0; }
#footerCntr .copyright ul { list-style: none; display: flex; flex-wrap: wrap; }
#footerCntr .copyright li a { color: var(--color-grey); text-decoration: var(--line-decoration-none); }
#footerCntr .copyright li a:focus,
#footerCntr .copyright li a:hover { color: var(--color-white); }
#footerCntr .copyright li:not(:last-child) { margin-right: 30px; }
#footerCntr .panel { position: relative; }
#footerCntr .panel .flag-panel { color: var(--color-white); display: flex; align-items: center; position: relative; padding-right: 15px; cursor: pointer; background-color: transparent; border: 0; }
#footerCntr .panel .flag-panel:after { content: "\e916"; font-size: 4px; position: absolute; top: 7px; right: 0; color: var(--color-white); font-family: var(--font-family-icons), sans-serif; transition: var(--duration); }
#footerCntr .panel .flag-panel img { flex: 1; width: 20px; border-radius: 100%; margin-right: 7px; }
#footerCntr .panel .flag-panel.is-active:after { transform: rotate(-180deg); }
#footerCntr .panel .items:not(:last-child) { margin-bottom: 5px; }
#footerCntr .panel .nl-panel { position: absolute; bottom: calc(100% + 10px); left: 0; padding: 5px; background-color: var(--color-white); border-radius: 5px; display: none; width: var(--width); }
#footerCntr .panel .nl-panel a { display: flex; align-items: center; color: var(--color-dark); text-decoration: var(--line-decoration-none); }
#footerCntr .panel .nl-panel a img { width: 18px; border-radius: 100%; margin-right: 7px; }
#footerCntr .panel .nl-panel a:hover { text-decoration: underline; }
#footerCntr .panel .nl-panel.is-active { display: block; }
#footerCntr .panel .nl-panel .items.is-active a { font-weight: 600; pointer-events: none; }



.page-id-960 .introBox .left h5 {font-size: 16px; color: #909090; line-height: 24px; max-width: 260px}


/* ### news box ### */
.newsBox { padding-top: 110px; padding-bottom: 80px; background-color: var(--color-grey-200); }
.newsBox h2 { font-size: 64px; text-align: center; letter-spacing: -0.7px; margin-bottom: 58px; }


.introBox.bg-grey .text-editor p a {text-decoration: underline; color:var(--color-primary);}
.introBox.bg-grey .text-editor p a:hover {text-decoration: none;}

.introBox.bg-grey {margin-bottom: 0px;}
.introBox.bg-grey .left h2 {font-size: 32px; max-width: 80%;}

/* Gravity Forms buttons → Holtkamper oranje huisstijl */
.gform_wrapper .gform_next_button,
.gform_wrapper .gform_button,
.gform_wrapper input[type="submit"] {
	background-color: var(--color-primary) !important;
	color: var(--color-white) !important;
	padding: 11px 34px;
	border-radius: 4px;
	font-size: var(--font-size-base);
	min-height: 48px;
	font-weight: 600;
	border: 0;
	cursor: pointer;
	transition: var(--duration);
}

.gform_wrapper .gform_next_button:hover,
.gform_wrapper .gform_button:hover,
.gform_wrapper input[type="submit"]:hover {
	color: var(--color-dark-900) !important;
	background-color: var(--color-white) !important;
}

.introBox .gform_wrapper .gform_button_select_files {
	background-color: var(--color-dark) !important;
	color: var(--color-white) !important;
}
.introBox .gform_wrapper .gform_button_select_files:hover {
	background-color: var(--color-dark-900) !important;
	color: var(--color-white) !important;
}
.introBox .gform_wrapper .gform_drop_area {
	--gf-ctrl-file-zone-icon-color: var(--color-dark);
}
.introBox .gform_wrapper .gform_drop_area svg,
.introBox .gform_wrapper .gform_drop_area svg path,
.introBox .gform_wrapper .gform_drop_area .gform_fileupload_rules,
.introBox .gform_wrapper .gform_drop_area .gform_drop_instructions {
	color: var(--color-dark) !important;
	stroke: currentColor !important;
}

.introBox .gform_wrapper .gform_footer,
.introBox .gform_wrapper .gform-footer,
.introBox .gform_wrapper .gform_page_footer,
.introBox .gform_wrapper .gform-page-footer { width: 100%; }
.introBox .gform_wrapper .gform_footer .gform_button,
.introBox .gform_wrapper .gform-footer .gform_button,
.introBox .gform_wrapper .gform_footer input[type="submit"],
.introBox .gform_wrapper .gform-footer input[type="submit"],
.introBox .gform_wrapper .gform_page_footer .gform_next_button,
.introBox .gform_wrapper .gform-page-footer .gform_next_button,
.introBox .gform_wrapper .gform_page_footer input[type="button"],
.introBox .gform_wrapper .gform-page-footer input[type="button"] { width: 100%; }


.testimonialHomeCard__image img {height: 100%;}

.no-margin-bottom {margin-bottom: 0px!important;}
.no-padding-top {padding-top: 0px!important;}


.filterBox .items .overlay .bottom .butons a.button.button-white.button-small {margin-left:8px;}

#gform_wrapper_8 .gform-footer.gform_footer.top_label .gform_button.button {width: 100%!important;}
.history-slider {display: none;}

.timeline article.card:nth-child(22) .card__image img,
.timeline article.card:nth-child(27) .card__image img,
.timeline article.card:nth-child(30) .card__image img 
 {object-fit: contain;}
 
 
 .snelmenu {background:#f4f4f4; padding-top: 32px;}
 .snelmenu .text h3{color: #1a1a1a; font-size: 30px;}
 .snelmenu .text p {color:#4f4f4f;}
 
 
 .contactV2__holder  {  padding-bottom: 40px; text-align: center;}

/* #Media Queries
================================================== */
@media only screen and (max-width: 1410px) {
	.centered-lg { padding-right: var(--gutter-left); padding-left: var(--gutter-left); }
	.menuBox li:is(.has-children, .menu-item-has-children) > a:after { right: -22px; }
	.menuBox { column-gap: 32px; }
	.menuBox .language { margin-right: 0; margin-left: 0; }
}

@media only screen and (max-width: 1360px) {
	.centered,
	.center { padding-right: var(--gutter-left); padding-left: var(--gutter-left); }
	.menuBox { column-gap: 24px; }
	#headerCntr.sticky .menuBox > ul > li:not(:last-child),
	body.dark-header #headerCntr .menuBox > ul > li:not(:last-child) { margin-right: 12px; }

	.menuBox .mega-menu .column { padding-bottom: 30px; }

	.connectBox .left { width: 19%; }
	.connectBox .right { width: 48.2%; margin-right: 0; }
}

@media only screen and (max-width: 1199px) {
	.centered,
	.center { padding-right: var(--gutter-left); padding-left: var(--gutter-left); }

	.button { margin-bottom: 10px; }

	#headerCntr { padding-top: 15px; padding-bottom: 15px;  }
	body.single-vouwwagens #headerCntr { top: 0; }
	#headerCntr .logo { margin-top: 0; }
	#headerCntr { padding-top: 15px; padding-bottom: 15px; }
	#headerCntr:before { content:''; position: absolute; inset: 0; width: var(--width); height: var(--height); background-color: var(--color-white); opacity: 0; visibility: hidden; transition: var(--duration); pointer-events: none; z-index: 1; border-bottom: solid 1px var(--color-grey-300); }
	#headerCntr .logo { margin-top: 0; position: relative; z-index: 1; transform: translateY(-4px); }
	#headerCntr .button-hide { display: inline-block; }
	#headerCntr.sticky .logo { margin-top: 0; }

	.menuBox { box-sizing: border-box; padding: 110px 15px calc(72px + env(safe-area-inset-bottom, 0px)) 15px; display: flex; flex: initial; min-width: auto; flex-direction: column; flex-wrap: unset; align-items: unset; justify-content: unset; position: fixed; top: 0; left: 100%; width: var(--width); height: 100dvh; max-height: 100dvh; overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain; -webkit-overflow-scrolling: touch; background-color: var(--color-white); transition: var(--duration); }
	.menuBox > ul { display: block; width: var(--width); }
	.menuBox li { padding: 0; position: relative; margin-bottom: 0; }
	.menuBox > ul > li { padding: 0; font-size:20px; line-height: 40px; font-weight: 400; border-bottom: solid 1px var(--color-grey-300); }
	.menuBox li a { color: var(--color-black); }
	.menuBox > ul > li:not(:last-child) { margin-right: 0; }
	.menuBox > ul > li > a { display: block; width: 100%; padding: 8px 0; }
	.menuBox > ul > li:is(.has-children, .menu-item-has-children) > a { padding-right: 56px; }
	.menuBox > ul > li:is(.has-children, .menu-item-has-children) > a:after { display: none; }
	.menuBox li:is(.has-children, .menu-item-has-children) .angle-arrow { display: flex; align-items: center; justify-content: center; top: 24px; transform: none; width: 44px; height: 32px; font-size: 8px; }
	.menuBox li:is(.has-children, .menu-item-has-children) .angle-arrow.is-active { transform: none; }
	.menuBox li:is(.has-children, .menu-item-has-children) .angle-arrow.is-active i { transform: rotate(-180deg); }
	.menuBox .language { margin-left: 0; margin-top: auto; width: var(--width); flex-direction: column; align-items: stretch; row-gap: 12px; }
	.menuBox .lang-switcher-btn { margin-left: 0; align-self: flex-start; }
	.menuBox .button.button-white { background-color: var(--color-primary); color: var(--color-white); }
	.menuBox .button-hide,
	.menuBox .button-hide .button { width: 100%; }
	.menuBox .sub-menu { position: static; display: none; min-width: 0; padding: 0 0 16px 0; background-color: transparent; border-radius: 0; box-shadow: none; opacity: 1; visibility: visible; pointer-events: auto; transform: none; }
	.menuBox > ul > li:hover > .sub-menu,
	.menuBox > ul > li:focus-within > .sub-menu { transform: none; }
	.menuBox .sub-menu li:not(:last-child) { border-bottom: solid 1px var(--color-grey-300); }
	.menuBox .sub-menu a,
	#headerCntr.sticky .menuBox .sub-menu a,
	body.dark-header #headerCntr .menuBox .sub-menu a { padding: 10px 0; white-space: normal; color: var(--color-dark-800); }
	.menuBox .sub-menu a:hover,
	.menuBox .sub-menu a:focus { background-color: transparent; }
	.menuBox .mega-menu { box-sizing: border-box; position: relative; top: auto; left: auto; width: 100%; padding-right: 0; padding-left: 0; overflow: visible; background-color: transparent; border-radius: 0; opacity: 1; visibility: visible; display: none; }
	#headerCntr.sticky .menuBox > ul,
	body.dark-header #headerCntr .menuBox > ul { flex-wrap: unset; }
	#headerCntr.sticky .menuBox li { padding: 0; }
	#headerCntr.sticky .menuBox .language { margin-left: 0; }
	#headerCntr.sticky .menuBox .button-hide,
	body.dark-header #headerCntr .menuBox .button-hide { position: static; top: auto; left: auto; transform: none; white-space: normal; }
	#headerCntr.sticky .menuBox > ul > li:not(:last-child) { margin-right: 0; }
	.is-menu-open .menuBox { left: 0; }
	.is-menu-open .logo { mix-blend-mode: difference; }
	.is-menu-open #headerCntr:before { opacity: 1; visibility: visible; }

	.mobileMenu { display: flex; }

	.heroBox { min-height: 650px; }
	.heroBox .title { width: 70%; }
	body.single-vouwwagens .bannerBox { padding-top: 120px; }
	.timelineSingle-hero { min-height: 820px; }
	.timelineSingle-storyGrid { grid-template-columns: 210px minmax(0, 1fr); }
	.timelineSingle-body { padding: 48px; }
	.timelineSingle-navLink { min-height: 210px; padding: 28px; }

	.single-title { font-size: 48px; }

	.includeBox { margin-bottom: 110px; }
	.includeBox .label { padding-left: 0; width: 25%; }
	.includeBox .right { width: 65%; }
	.includeBox .watch { max-width: var(--width); }

	.connectBox .left { width: 25%; }
	.connectBox .right { width: 65%; }
	.connectBox .left h5 { margin-bottom: 110px; }
	.connectBox .nav-tabs li { font-size: 25px; }
	.connectBox .nav-tabs li span { padding-right: 30px; }

	.contentBox .button + .button { margin-left: 0; }

	.campingBox .text { bottom: 8rem; }
	.campingBox .slider-nav { gap: 20px; }

	.informationBox .left { margin-right: 10%; }
	.informationBox .right { flex: 1; }
	.informationBox .right p { padding-right: 0;  }

	#footerCntr .block { flex-wrap: wrap; margin-bottom: 30px; }
	#footerCntr .menu,
	#footerCntr .menu:nth-child(1),
	#footerCntr .menu:nth-child(2),
	#footerCntr .menu:nth-child(3),
	#footerCntr .menu:nth-child(4) { width: 25%; margin-bottom: 30px; }
}

@media only screen and (max-width: 1024px) {
	:root {
		--font-size-h1: 50px;
		--font-size-h2: 40px;
		--font-size-h3: 35px;
	}

	.button-view.large { font-size: 20px; }

	.menuBox .mega-menu { padding-top: 40px; }
	.menuBox .mega-menu .mega-menu__title { font-size: 28px; }
	.menuBox .mega-menu .column { grid-template-columns: repeat(3, 1fr); }
	.menuBox .mega-menu .column.column-links { grid-template-columns: repeat(2, 1fr); }

	.heroBox { height: 100dvh; min-height: 530px; margin-bottom: 60px;   }
	.heroBox .block { padding-right: 0; padding-left: 0; }
	.heroBox .title { width: 80%; }
	.heroBox.is-alt .block { min-height: 530px; }
	.heroBox.is-alt .title { width: 70%; }
	.timelineSingle { padding-bottom: 100px; }
	.timelineSingle-hero { min-height: 720px; }
	.timelineSingle-topbar { margin-bottom: 56px; }
	.timelineSingle-head { max-width: 680px; }
	.timelineSingle-subtitle { font-size: 27px; }
	.timelineSingle-story { margin-top: -42px; }
	.timelineSingle-storyGrid { grid-template-columns: 1fr; gap: 24px; }
	.timelineSingle-storyMeta { position: relative; top: auto; display: flex; flex-wrap: wrap; align-items: center; gap: 12px 24px; }
	.timelineSingle-storyLabel,
	.timelineSingle-storyYear,
	.timelineSingle-storyText { margin-bottom: 0; }
	.timelineSingle-storyText { max-width: 42ch; }
	.timelineSingle-lead { font-size: 30px; }
	.timelineSingle-body h2 { font-size: 38px; }
	.timelineSingle-navLink strong { font-size: 28px; }

	.single-title { font-size: 42px; max-width: 100%; }
	.single-hero img { max-height: 480px; }
	.single-hero-compare { margin-bottom: 56px; }
	.single-hero-compare-media,
	.single-hero-compare-image { min-height: 540px; }
	.single-hero-compare-card { left: 24px; right: 24px; bottom: 24px; width: min(100%, 420px); padding: 22px 24px 24px; }
	.single-hero-compare-title { font-size: 42px; }
	.single-body { max-width: 680px; }
	.single-related { padding: 60px 0; }
	.single-related-title { font-size: 30px; }
	.single-related-grid { gap: 24px; }
	.single-related-content { padding: 20px; }
	.single-related-card-title { font-size: 18px; }
	.single-cta { padding: 60px 0; }
	.single-cta-title { font-size: 30px; }
	.single-newsletter-modal__panel { width: min(620px, calc(100vw - 32px)); padding: 38px 32px 30px; }
	.single-newsletter-modal__title { font-size: 38px; }
	.single-newsletter-modal__subtitle { font-size: 17px; }

	.includeBox { margin-bottom: 80px; }
	.includeBox .label { padding-left: 0; width: 30%; }
	.includeBox.is-alt { margin-bottom: 80px; }
	.includeBox.is-alt .right { padding-right: 0; }
	.includeBox.is-alt .right p { padding-right: 0; }
	.includeBox.is-alt .button-view { margin-top: 30px; }

	.placeBox { padding-top: 70px; padding-bottom: 70px; }
	.placeBox h2 { font-size: 50px; margin-bottom: 35px; }
	.placeBox .compare { margin-bottom: 60px; }
	.placeBox .block { display: block; text-align: center; }
	.placeBox .overlay .large { font-size: 50px; }
	.placeBox .swiper-control { justify-content: space-between; margin-bottom: 20px; }
	.placeBox .swiper-control .arrow { margin-right: 0; }
	.productGalleryModal__shell { --product-gallery-title-left: 140px; --product-gallery-title-top: 56px; --product-gallery-stage-top: 112px; --product-gallery-slide-width: min(64vw, 668px); --product-gallery-image-height: min(45vw, 474px); --product-gallery-caption-height: 92px; --product-gallery-slide-height: calc(var(--product-gallery-image-height) + var(--product-gallery-caption-height)); }

	.filterBox { padding-top: 20px; }
	.filterBox .filter-buttons { margin-bottom: 50px; }
	.newsArchive { padding-top: 110px; }
	.newsArchive__title { font-size: 52px; }
	.filterBox--news .news-card .image { height: 244px; }
	.filterBox--news .news-card__title { font-size: 28px; }

	.swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-horizontal.swiper-pagination-bullets { position: relative; left: unset; transform: unset; margin-left: 0; }

	.testimonialBox { padding-bottom: 70px; }
	.testimonialBox--dynamic .block { max-width: 760px; }
	.testimonialBox--dynamic .intro { font-size: 34px; }
	.testimonialBox__actions { gap: 12px; }
	.testimonialBox--homepage-compact .block { max-width: 100%; }
	.testimonialHomeCard { padding: 26px 24px; }
	.testimonialHomeCard__name { font-size: 20px; }
	.testimonialHomeCard__quote { font-size: 18px; }
	.testimonial-card { padding: 32px; gap: 24px; }
	.testimonial-card__header { grid-template-columns: 1fr; gap: 20px; }
	.testimonial-card__profile { grid-template-columns: 160px 1fr; }
	.testimonial-card__avatar-image { width: 160px; height: 190px; }
	.testimonial-card__meta { grid-template-columns: repeat(2, minmax(0, 1fr)); }
		.testimonial-card__quote { font-size: 32px; }
		.testimonial-card__answers { grid-template-columns: 1fr; }
		.filterBox--testimonials { padding-top: 56px; padding-bottom: 90px; }
		.filterBox--testimonials .filterBox__title { margin-bottom: 18px; }
		.filterBox--testimonials .filter-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
		.testimonial-single__meta { grid-template-columns: 1fr; }
	.testimonial-single__quote { font-size: 24px; }

	.enquiryBox .left { padding: 50px 30px; width: 58%; }
	.enquiryBox .right { width: 46%; }
	.enquiryBox .left button { font-size: 18px; }

	.connectBox { padding-top: 70px; padding-bottom: 50px; }
	.connectBox .left { width: 30%; }
	.connectBox .right { margin-right: 0; max-width: unset; width: 65%; }
	.connectBox .nav-tabs li { font-size: 20px; padding-left: 32px; }
	.connectBox .nav-tabs li:not(:last-child) { margin-bottom: 30px; }

	.teamBox { margin-bottom: 70px; }
	.teamBox .holder { grid-template-columns: repeat(2, 1fr); }

	.contentBox .holder { column-gap: 50px; }
	.contentBox .text { margin-bottom: 20px; }
	.contentBox h3 { line-height: 1; font-size: 35px; }
	.contentBox .check,
	.contentBox .list { padding-top: 0; }
	.contentBox-contact { padding-top: 48px; padding-bottom: 84px; }
	.contentBox-contact .contactHero { margin-bottom: 40px; }
	.contactHero h3 { max-width: 12ch; font-size: 62px; }
	.contactHero p { font-size: 20px; }
	.contactHero__actions { margin-top: 24px; gap: 12px; }
	.contentBox-contact .contactRouteGrid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
	.contactRouteCard { min-height: 330px; }
	.contactRouteCard__body { padding: 28px 28px 24px; }
	.contactRouteCard h4 { font-size: 24px; }
	.contactRouteCard p { font-size: 17px; }
	.contactRouteCard__footer { min-height: 66px; padding: 0 28px; font-size: 17px; }
	.contactInfoCompact__grid { grid-template-columns: 1fr; gap: 0; border-radius: 16px; }
	.contactInfoCompact__card:not(:last-child) { border-right: none; border-bottom: 1px solid rgba(26, 28, 24, 0.08); }
	.contactInfoCompact__intro h4 { font-size: 32px; }
	.contactInfoCompact__card h5 { padding: 28px 28px 0; font-size: 24px; }
	.contactInfoCompact__list,
	.contactInfoCompact__hours { padding: 0 28px 24px; }
	.contactInfoCompact__footer { min-height: 66px; padding: 0 28px; font-size: 17px; }

	.specificationBox { margin-bottom: 100px; }
	.specificationBox .left { width: 19%; padding-top: 0; }
	.specificationBox .right { width: 65%; }
	.specificationBox .block { margin-bottom: 50px; }
	.specificationBox .image { margin-top: 90px; }

	.downloadBox { padding-top: 100px; padding-bottom: 100px; }
	.downloadBox .left { width: 22%; }
	.downloadBox .right { width: 55%; }
	.downloadBox h2 { margin-bottom: 40px; }
	.downloadBox .wrap { padding-right: 0; }

	.downloadsTab { padding-top: 60px; padding-bottom: 70px; }
	.downloadsTab__layout { grid-template-columns: 260px 1fr; gap: 24px; }
	.downloadsTab__panelTitle { font-size: 34px; }
	.downloadsTab__items { grid-template-columns: repeat(2, 1fr); }

	.compareBox { padding-top: 100px; padding-bottom: 100px; }
	.compareBox .heading { margin-bottom: 60px; }
	.compareBox .holder { column-gap: 20px; }
	.compareBox select { font-size: 16px; }

	.filterBox { margin-bottom: 90px; }
	.newsArchive__title { font-size: 42px; }
	.newsArchive__intro { font-size: 17px; }
	.filterBox--news .news-card__content { padding: 22px 22px 24px; }
	.filterBox--news .news-card__title { font-size: 24px; }

	.bannerBox.is-small { margin-bottom: 70px; }

	.jobsBox { padding-bottom: 90px; }
	.jobsBox .sticky-features__heading { font-size: 45px; margin-bottom: 30px; }
	.jobsBox .sticky-features__p { margin-bottom: 20px; font-size: 18px; }


	.pointBox { padding-top: 50px; padding-bottom: 92px;}
	.pointBox h1,
	.pointBox h2 { font-size: 45px; }
	.pointBox .locations-card { grid-template-columns: 1fr; }
	.pointBox .locations-list-panel { border-right: 0; border-bottom: 1px solid var(--border); max-height: 380px; padding-top: 0; }
	.pointBox .locations-list-item button { padding: 22px 32px; }
	.pointBox .location-capability-badge { min-height: 32px; padding: 7px 11px; font-size: 12px; }
	.pointBox .map-panel,
	.pointBox #map { min-height: 420px; }

	.drawer { --drawer-gap: 20px; --drawer-width: min(520px, calc(100vw - (var(--drawer-gap) * 2))); }
	.drawer-panel { border-radius: 16px; }
	.drawer-close { right: 8px; top: 8px; width: 40px; height: 40px; font-size: 26px; }
	.drawer-image-wrap { height: 252px; padding: 20px 20px 0; }
	.drawer-content { padding: 24px 24px 26px; }
	.drawer-content h2 { margin-bottom: 18px; font-size: 36px; }
	.drawer-capabilities { gap: 10px; }
	.drawer-appointment-wrap { margin-bottom: 18px; }
	.drawer-block { margin-bottom: 24px; font-size: 16px; }
	.drawer-block-hours { padding: 20px 20px 18px; border-radius: 20px; }
	.drawer-section-title { margin-bottom: 14px; font-size: 18px; }
	.hours-row { padding: 12px 0; font-size: 15px; }
	.drawer-block-hours .hours-row { gap: 14px; }
	.drawer-actions { gap: 12px; margin-top: 28px; }
	.drawer-actions .button { min-height: 54px; font-size: 17px; }

	.introBox .inner { justify-content: space-between; padding: 0; }
	.introBox .left { width: 30%; }
	.introBox .right { width: 65%; }

	.clientsBox { padding-top: 70px; padding-bottom: 70px; }
	.clientsBox .testimonial-lines { grid-column-gap: 3em; grid-row-gap: 3em; }
	.clientsBox .testimonial-lines__controls { order: 9999; width: var(--width); }
	.clientsBox .testimonial-lines__main { grid-column-gap: 3em; grid-row-gap: 3em; }
	.clientsBox .testimonial-lines__item { grid-column-gap: 2em; grid-row-gap: 2em; }
	.clientsBox .testimonial-lines__h { font-size: 2em; }
	.clientsBox .testimonial-lines__item-visual { width: 3.5em; }

	.historyBox { --history-card-width: 500px; }
	.historyBox-layout { grid-template-columns: minmax(220px, 24%) minmax(0, 1fr); }
	.historyBox-sidebar-inner { padding: 108px 24px 32px 28px; gap: 24px; }
	.historyBox-milestones-list { max-height: min(34vh, 360px); }
	.historyBox .scene { padding: 0 88px 0 42px; }
	.historyBox .timeline { width: var(--history-card-width); height: var(--history-card-height); transform: translateY(24px); }
	.historyBox .sidebar-timeline { right: 25px; }

	.campingBox { margin-bottom: 120px; }
	.campingBox .top-left { width: 33%; padding-top: 0; }
	.campingBox .top-right { width: 65%; }


	.informationBox .right p:first-of-type { font-size: 18px; }

	#footerCntr { padding-top: 50px; }
	#footerCntr .menu,
	#footerCntr .menu:nth-child(1),
	#footerCntr .menu:nth-child(2),
	#footerCntr .menu:nth-child(3),
	#footerCntr .menu:nth-child(4) { width: 33.33%; }
	
	
	.mobileMenu { right: 24px; }
	nav.menuBox ul li ul.sub-menu {background:#f2f2f2; border-radius: 4px; padding: 16px; margin-bottom: 16px;}
	
	

}

@media only screen and (max-width: 767px) {
	:root {
		--font-size-h1: 40px;
		--font-size-h2: 36px;
		--font-size-h3: 30px;
	}

	.button { margin-bottom: 10px; }
	.button + .button { margin-left: 0 }
	.button.link { font-size: 18px; }

	.menuBox .mega-menu { padding-top: 30px; }
	.menuBox .mega-menu .mega-menu__title { font-size: 25px; }
	.menuBox .mega-menu .column { grid-template-columns: repeat(2, 1fr); }
	.menuBox .mega-menu .column.column-links { grid-template-columns: repeat(2, 1fr); }
	.menuBox .items.items-simple { min-height: 180px; }
	.menuBox .bottom-link { column-gap: 20px; }

	.heroBox { height: 100dvh; min-height: 510px; padding-bottom: 30px; margin-bottom: 50px; }
	.heroBox h1 { margin-bottom: 0; }
	.heroBox .title { width: var(--width); margin-bottom: 20px; }
	.heroBox .bottom { display: block; font-size: 20px; }
	.heroBox .buttons { display: flex; flex-direction: column; flex-wrap: wrap; row-gap: 12px; column-gap: 20px; align-items: stretch; width: 100%; }
	.heroBox .buttons .button { width: 100%; justify-content: center; }
	.heroBox.is-alt { padding-top: 50px; }
	.heroBox.is-alt .block { min-height: 510px; }
	.heroBox.is-alt .title { width: var(--width); }
	.heroBox.is-alt .visit { font-size: 22px; }
	.timelineSingle { padding-bottom: 70px; }
	.timelineSingle-hero { min-height: 580px; padding-top: 104px; }
	.timelineSingle-overlay { padding-bottom: 40px; }
	.timelineSingle-topbar { margin-bottom: 42px; }
	.timelineSingle-breadcrumb { width: var(--width); }
	.timelineSingle-actions { width: var(--width); }
	.timelineSingle-head { max-width: var(--width); }
	.timelineSingle-year { font-size: 24px; }
	.timelineSingle-subtitle { font-size: 24px; }
	.timelineSingle-story { margin-top: -28px; }
	.timelineSingle-storyMeta { padding: 24px; }
	.timelineSingle-storyYear { font-size: 42px; }
	.timelineSingle-intro { padding: 0; }
	.timelineSingle-lead { font-size: 26px; }
	.timelineSingle-body { padding: 34px 24px 40px; border-radius: 16px; }
	.timelineSingle-body p,
	.timelineSingle-body ul,
	.timelineSingle-body ol,
	.timelineSingle-body blockquote { font-size: 18px; }
	.timelineSingle-body > p:first-child { font-size: 20px; }
	.timelineSingle-body h2 { margin-top: 40px; font-size: 34px; }
	.timelineSingle-body h3 { font-size: 27px; }
	.timelineSingle-body blockquote { padding: 24px; font-size: 24px; }
	.timelineSingle-navigation { margin-top: 56px; }
	.timelineSingle-navigationTop { align-items: flex-start; }
	.timelineSingle-navWrap { grid-template-columns: 1fr; }
	.timelineSingle-navItem.is-next .timelineSingle-navLink { text-align: left; align-items: flex-start; }
	.timelineSingle-navLink { min-height: auto; }
	.timelineSingle-navLink strong { max-width: 100%; font-size: 26px; }

	.single-breadcrumb { padding-top: 100px; margin-bottom: 24px; }
	.single-top { padding-bottom: 32px; }
	.single-title { font-size: 34px; }
	.single-hero { margin-bottom: 40px; border-radius: 8px; }
	.single-hero img { max-height: 360px; }
	.single-hero-compare { margin-bottom: 48px; }
	.single-hero-compare-label { margin-bottom: 14px; letter-spacing: 0.14em; }
	.single-hero-compare-media,
	.single-hero-compare-image { min-height: 420px; border-radius: 14px; }
	.single-hero-compare-card { left: 20px; right: 20px; bottom: 20px; width: auto; max-width: none; padding: 18px 20px 20px; border-radius: 20px; }
	.single.single--news .single-hero-compare-card .single-breadcrumb { margin-bottom: 12px; }
	.single-hero-compare-date { margin-bottom: 12px; font-size: 14px; }
	.single-hero-compare-title { font-size: 32px; }
	.single-top-date { margin-bottom: 12px; font-size: 14px; }
	.single-top-title { font-size: 42px; }
	.tijdlijnSingle .single-breadcrumb { margin-bottom: 12px; }
	.single-body { max-width: 100%; margin-bottom: 60px; }
	.single-body p,
	.single-body ul,
	.single-body ol { font-size: 17px; }
	.single-body > p:first-child { font-size: 19px; }
	.single-body h2 { font-size: 30px; }
	.single-body h3 { font-size: 24px; }
	.single-body blockquote { font-size: 20px; padding: 20px 24px; }
	.single-related { padding: 50px 0; }
	.single-related-title { font-size: 26px; }
	.single-related-grid { grid-template-columns: 1fr; gap: 24px; }
	.single-related-card { flex-direction: row; }
	.single-related-image { aspect-ratio: 1 / 1; width: 160px; flex-shrink: 0; }
	.single-related-content { padding: 20px; }
	.single-related-card-title { font-size: 18px; }
	.single-cta { padding: 50px 0; }
	.single-cta-title { font-size: 26px; }
	.single-cta-text { font-size: 16px; }
	.single-newsletter-modal__panel { width: calc(100vw - 24px); margin: 24px auto; padding: 34px 24px 24px; border-radius: 20px; }
	.single-newsletter-modal__title { font-size: 32px; }
	.single-newsletter-modal__subtitle { margin-bottom: 22px; font-size: 16px; }
	.single-newsletter-modal__form { min-height: 200px; border-radius: 16px; }

	.includeBox { display: block; margin-bottom: 70px; }
	.includeBox h2 { margin-bottom: 40px; }
	.includeBox .label { padding-left: 0; width: var(--width); }
	.includeBox .right { width: var(--width); }
	.includeBox .watch { margin-bottom: 40px; max-width: var(--width); }

	.placeBox h2 { font-size: 40px; }
	.placeBox .compare {  margin-bottom: 40px; }
	.placeBox .overlay .large { display: none; }
	.placeBox .overlay .persons { margin-bottom: 20px; }
	.placeBox .overlay .lead { display: none; }
	.placeBox .overlay .price { display: none; }
	.placeBox .overlay .bottom .butons { display: none; }
	.placeBox .overlay .bottom .butons { flex-wrap: nowrap; gap: 8px; min-width: 0; }
	.placeBox .overlay .bottom .butons .button { flex: 0 1 auto; min-width: 0; padding-right: 12px; padding-left: 12px; font-size: 14px; white-space: nowrap; }
	.placeBox .overlay .bottom .butons .button.button-arrow { padding-right: 12px; }
	.placeBox .overlay .bottom .butons .button em { width: 16px; margin-left: 6px; flex: 0 0 16px; }
	.placeBox .swiper-slide { height: auto; }
	.placeBox .items { height: 200px; aspect-ratio: auto; }
	.placeBox .items .image,
	.placeBox .items .image img,
	.placeBox .overlay { height: 200px; }
	.placeBox .mobileMeta { display: block; margin-top: 4px; padding: 14px 16px 16px 0px; color: var(--color-dark-800); }
	.placeBox .mobileMeta__title { margin-bottom: 12px; font-size: 22px; line-height: 1.05; letter-spacing: 0; color: var(--color-dark-800); font-weight: 500;}
	.placeBox .mobileMeta__actions { display: flex; gap: 8px; }
	.placeBox .mobileMeta__actions .button,
	.placeBox .mobileMeta__actions .button + .button { flex: 1 1 0; justify-content: center; min-width: 0; min-height: 46px; margin: 0; padding-right: 10px; padding-left: 10px; font-size: 15px; white-space: nowrap; border: 1px solid var(--color-grey-300); background-color: var(--color-white); box-shadow: none; }
	.placeBox .mobileMeta__actions .button.button-arrow { padding-right: 10px; }
	.placeBox .mobileMeta__actions .button em { width: 16px; margin-left: 6px; flex: 0 0 16px; }
	.placeBox .mobileMeta__price { margin-bottom: 10px; font-size: 13px; font-weight: 500; line-height: 1.2; }
	.placeBox .mobileMeta__usps { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 14px; }
	.placeBox .mobileMeta__usps span { display: inline-block; font-size: 13px; line-height: 1.2; color: var(--color-dark-800); }
	.productGalleryModal__shell { --product-gallery-title-left: 24px; --product-gallery-title-top: 24px; --product-gallery-stage-top: 82px; --product-gallery-slide-width: calc(100vw - 72px); --product-gallery-image-height: calc((100vw - 72px) * 0.71); --product-gallery-caption-height: 108px; --product-gallery-slide-height: calc(var(--product-gallery-image-height) + var(--product-gallery-caption-height)); }
	.productGalleryModal__title { font-size: 28px; }
	.productGalleryModal__viewport { padding-left: 24px; }
	.productGalleryModal__nav { top: calc(var(--product-gallery-stage-top) + (var(--product-gallery-image-height) / 2) - 24px); width: 48px; height: 48px; }
	.productGalleryModal__nav--prev { left: 8px; }
	.productGalleryModal__nav--next { right: 8px; }
	.productGalleryModal__slideCaption { padding-top: 16px; min-height: var(--product-gallery-caption-height); }
	.productGalleryModal__captionTitle { font-size: 16px; }
	.productGalleryModal__captionText { font-size: 13px; line-height: 1.55; }

	.enquiryBox { padding-top: 70px; padding-bottom: 70px; }
	.enquiryBox .textBox h2 { font-size: clamp(40px, 10vw, 46px); line-height: 1.1; }
	.enquiryBox h3 { margin-bottom: 40px; }
	.enquiryBox .block { flex-direction: column-reverse; }
	.enquiryBox .left { padding: 30px; width: var(--width); }
	.enquiryBox .right { width: var(--width); }
	.enquiryBox .photo { aspect-ratio: 1 / 0.6; }
	.enquiryBox .left .tabs { margin-bottom: 50px; }
	.enquiryBox .left button { font-size: 18px; }
	.connectBox .nav-tabs li,
	.connectBox .nav-tabs li span { display: block; }

	.connectBox { display: block; }
	.connectBox .left { margin-bottom: 50px; }
	.connectBox .left h5 { margin-bottom: 40px; }
	.connectBox .left,
	.connectBox .right { width: var(--width); }
	.connectBox .nav-tabs { margin-left: 0 }
	.connectBox .right .nav-tabs li span { white-space: normal; }

	.filterBox .overlay .large { font-size: 24px; }
	.filterBox .items .image { height: auto; }
	.filterBox .filter-list { row-gap: 15px; grid-template-columns: repeat(1, 1fr); }
	.testimonialBox--dynamic { padding-top: 50px; padding-bottom: 60px; }
	.testimonialBox--dynamic .block { max-width: 100%; }
	.testimonialBox--dynamic .label { margin-bottom: 26px; }
	.testimonialBox--dynamic .intro { font-size: 28px; max-width: 100%; margin-bottom: 28px; }
	.testimonialBox--dynamic .profile--dynamic img,
	.testimonialBox--dynamic .profile--dynamic .profile__image--placeholder { width: 88px; height: 88px; }
	.testimonialBox--dynamic .profile--dynamic .name { font-size: 21px; }
	.testimonialBox__actions { flex-direction: column; align-items: stretch; }
	.testimonialBox__actions .button { width: 100%; justify-content: center; }
	.testimonialBox--homepage-compact { padding-top: 46px; padding-bottom: 52px; }
	.testimonialHomeCard { padding: 24px 20px; border-radius: 20px; gap: 20px; }
	.testimonialHomeCard__name { font-size: 19px; }
	.testimonialHomeCard__specs { grid-template-columns: 1fr 1fr; }
	.testimonialHomeCard__spec--wide { grid-column: span 1; }
	.testimonialHomeCard__spec--party { grid-column: 1 / -1; order: 1; }
	.testimonialHomeCard__spec:only-child { grid-column: 1 / -1; }
	.testimonialHomeCard__quoteWrap { gap: 12px; }
	.testimonialHomeCard__quote { font-size: clamp(22px, 6.2vw, 26px); line-height: 1.35; }
	.testimonialHomeCard__cta { width: 100%; justify-content: center; }
	.testimonial-card { padding: 24px 22px; border-radius: 20px; }
	.testimonial-card__profile { grid-template-columns: 1fr; align-items: flex-start; }
	.testimonial-card__avatar-image { width: 100%; max-width: 220px; height: 240px; }
	.testimonial-card__name { font-size: 24px; }
	.testimonial-card__meta { grid-template-columns: 1fr; }
	.testimonial-card__quote { font-size: 26px; }
	.testimonial-card__answer { padding: 18px 0 0; }
	.testimonial-card__answer p { font-size: 17px; }
		.testimonial-card__actions { flex-direction: column; align-items: stretch; }
		.testimonial-card__actions .button { width: 100%; justify-content: center; }
		.filterBox--testimonials { padding-top: 40px; padding-bottom: 70px; }
		.filterBox--testimonials .filterBox__title { margin-bottom: 16px; }
		.filterBox--testimonials .filter-list { grid-template-columns: 1fr; }
		.single-hero-compare--testimonial { margin-bottom: 40px; }
	.testimonial-single__location { font-size: 16px; }
	.testimonial-single__quote { font-size: 22px; }
	.testimonial-single__body { gap: 28px; }
	.testimonial-single__meta-item { padding: 18px 20px; }
	.testimonial-single__meta-value { font-size: 17px; }
	.testimonial-single__actions { flex-direction: column; align-items: stretch; }
	.testimonial-single__actions .button { width: 100%; justify-content: center; }
	.newsArchive { padding-top: 96px; }
	.newsArchive__hero { padding-top: 24px; }
	.newsArchive__title { font-size: 34px; }
	.filterBox.filterBox--news { padding-top: 34px; }
	.filterBox--news .news-card .image { height: 244px; }
	.filterBox--news .news-card__content { min-height: 0; padding: 18px 18px 20px; gap: 12px; }
	.filterBox--news .news-card__title { font-size: 22px; }

	.jobsBox .sticky-features__heading { font-size: 36px; }

	.teamBox .holder { grid-template-columns: repeat(1, 1fr); }
	.teamBox .icon { width: 40px; height: 40px; bottom: 10px; }
	.teamBox .item:hover .icon { opacity: 1; visibility: visible; }
	.teamBox .item:hover .text { opacity: 0; visibility: unset; max-height: 0; }
	.teamBox .item.is-active:hover .text { opacity: 1; visibility: visible; max-height: 270px; margin-bottom: 35px; }

	.contentBox .holder { grid-template-columns: repeat(1, 1fr); row-gap: 30px; }
	.contentBox h3 { margin-bottom: 20px; font-size: 30px; }
	.contentBox-contact { padding-top: 34px; padding-bottom: 60px; }
	.contentBox-contact .contactHero { margin-bottom: 28px; row-gap: 0; }
	.contactHero__eyebrow,
	.contactRouteCard__eyebrow,
	.contactInfoCompact__eyebrow { margin-bottom: 12px; font-size: 12px; }
	.contactHero h3 { max-width: 100%; margin-bottom: 18px; font-size: 54px; line-height: 0.98; }
	.contactHero p { font-size: 18px; }
	.contactHero__actions { margin-top: 20px; flex-direction: column; align-items: flex-start; }
	.contactHero__actions .button { width: auto; }
	.contentBox-contact .contactRouteGrid { grid-template-columns: 1fr; gap: 14px; margin-bottom: 34px; }
	.contactRouteCard { min-height: 0; border-radius: 16px; }
	.contactRouteCard__body { padding: 24px 22px 20px; }
	.contactRouteCard__eyebrow { margin-bottom: 16px; }
	.contactRouteCard h4 { margin-bottom: 14px; font-size: 22px; }
	.contactRouteCard p { margin-bottom: 18px; font-size: 16px; }
	.contactRouteCard__links li { font-size: 15px; }
	.contactRouteCard__footer { min-height: 58px; padding: 0 22px; font-size: 16px; }
	.contentBox-contact .contactInfoCompact { row-gap: 18px; }
	.contactInfoCompact__intro h4 { margin-bottom: 10px; font-size: 26px; }
	.contactInfoCompact__intro p { font-size: 16px; }
	.contactInfoCompact__card { border-radius: 0; }
	.contactInfoCompact__card h5 { margin-bottom: 16px; padding: 24px 22px 0; font-size: 22px; }
	.contactInfoCompact__list,
	.contactInfoCompact__hours { padding: 0 22px 20px; }
	.contactInfoCompact__list li:not(:last-child),
	.contactInfoCompact__hours li:not(:last-child) { margin-bottom: 14px; padding-bottom: 14px; }
	.contactInfoCompact__list strong,
	.contactInfoCompact__hours strong { font-size: 16px; }
	.contactInfoCompact__hours li { grid-template-columns: 1fr; gap: 6px; }
	.contactInfoCompact__hours li span { font-size: 15px; }
	.contactInfoCompact__hours li strong { text-align: left; }
	.contactInfoCompact__footer { min-height: 58px; padding: 0 22px; font-size: 16px; }

	.jobsBox .sticky-features__scroll { justify-content: center; align-items: center; height: auto; min-height: 100dvh; }
	.jobsBox .sticky-features__container { grid-column-gap: 2em; grid-row-gap: 2em; flex-flow: column; justify-content: flex-start;
		align-items: stretch;
	}
	.jobsBox .sticky-features__img-list { aspect-ratio: 1; }
	.jobsBox .sticky-features__text-list { min-height: 20em; max-height: none; }
	.jobsBox .sticky-features__text-item { max-width: none; }
	.jobsBox.bg-grey .sticky-features__container { flex-direction:  column }

	.specificationBox { padding-top: 50px; padding-bottom: 50px; display: block; }
	.specificationBox .left { width: var(--width); }
	.specificationBox .right { width: var(--width); }
	.specificationBox .block { margin-bottom: 0; }
	.specificationBox h2 { font-size: 36px; margin-bottom: 20px; }
	.specificationBox .item { padding-left: 0; }
	.specificationBox .heading { padding: 15px 0; font-size: 18px; }
	.specificationBox .heading span { width: 35px; height: 35px; font-size: 6px; flex: 0 0 auto; margin-left: 5px; }
	.specificationBox .wrap { column-gap: 15px; }
	.specificationBox .column { padding: 12px 0; font-size: 16px; }
	.specificationBox .image { margin-top: 50px; }
	.specificationBox .image img { width: var(--width); border-radius: 8px;}

	.downloadBox { display: block; padding-top: 60px; padding-bottom: 60px; }
	.downloadBox .left { width: var(--width); margin-bottom: 30px; }
	.downloadBox .right { width: var(--width); margin-top: 0; }
	.downloadBox h2 {	margin-bottom: 23px; }
	.downloadBox .wrap { padding-right: 0; }
	.downloadBox .item { padding: 30px 15px; }

	.downloadsTab { padding-top: 160px; padding-bottom: 60px; }
	.downloadsTab__intro { margin-bottom: 32px; }
	.downloadsTab__introTitle { font-size: 36px; }
	.downloadsTab__introText { font-size: 16px; }
	.downloadsTab__layout { grid-template-columns: 1fr; gap: 20px; }
	.downloadsTab__sidebar {
		position: static;
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
		gap: 8px;
		margin: 0;
		padding: 0;
		overflow: visible;
	}
	.downloadsTab__tab {
		flex: 0 0 auto;
		flex-direction: row;
		align-items: center;
		gap: 8px;
		padding: 6px 16px 6px 6px;
		border-radius: 4px;
		background-color: var(--color-white);
		width: auto;
		box-shadow: none;
	}
	.downloadsTab__tab.is-active { background-color: var(--color-dark); color: var(--color-white); box-shadow: none; }
	.downloadsTab__tabImage { width: 56px; height: 36px; border-radius: 4px; flex-shrink: 0; }
	.downloadsTab__tabImage img { width: 100%; height: 100%; object-fit: cover; border-radius: 4px; }
	.downloadsTab__tabLabel { padding: 0; font-size: 14px; font-weight: 600; line-height: 1.2; white-space: nowrap; }
	.downloadsTab__tabArrow { display: none; }
	.downloadsTab__panelTitle { font-size: 26px; }
	.downloadsTab__panelHeader { margin-bottom: 20px; }
	.downloadsTab__items { grid-template-columns: repeat(2, 1fr); gap: 10px; }
	.downloadsTab .item { padding: 24px 12px 30px; }
	.downloadsTab .item h6 { font-size: 16px; }

	.compareBox { padding-top: 60px; padding-bottom: 60px; }
	.compareBox .heading { margin-bottom: 40px; }
	.compareBox h2 { font-size: 36px; margin-bottom: 20px; }
	.compareBox h5 { font-size: 18px; margin-bottom: 15px; }
	.compareBox .heading a { font-size: 18px; }
	.compareBox .heading a:after { top: 7px; right: -20px; font-size: 12px; }
	.compareBox .holder { grid-template-columns: repeat(1,1fr); row-gap: 40px; }
	.compareBox .image,
	.compareBox .price,
	.compareBox .item { padding-bottom: 20px; }
	.compareBox .block { padding: 15px 0; }
	.compareBox .block img { margin: 0 auto 10px; }
	.compareBox .bg i { width: 50px; height: 50px; font-size: 16px; }

	.pointBox { padding-top: 140px; }
	.pointBox .title { margin-bottom: 32px; }
	.pointBox .locations-card { border-radius: 14px; min-height: auto; }
	.pointBox .locations-list-panel { padding-top: 0; max-height: 360px; }
	.pointBox .locations-list-item button { padding: 18px 20px; }
	.pointBox .location-title { font-size: 18px; }
	.pointBox .location-sub { font-size: 16px; }
	.pointBox .location-capabilities { gap: 8px; }
	.pointBox .location-capability-badge { min-height: 30px; padding: 6px 10px; font-size: 12px; }
	.pointBox .locations-list-item button.is-featured .location-title { font-size: 24px; }
	.pointBox .locations-list-item button.is-featured .location-sub { font-size: 18px; }
	.pointBox .locations-list-item button:not(.is-featured) .location-title { font-size: 16px; }
	.pointBox .locations-list-item button:not(.is-featured) .location-sub { font-size: 14px; }
	.pointBox .map-panel,
	.pointBox #map { min-height: 320px; }
	.drawer { --drawer-gap: 12px; --drawer-width: min(100%, calc(100vw - (var(--drawer-gap) * 2))); }
	.drawer-panel { border-radius: 20px; }
	.drawer-close { right: 8px; top: 8px; width: 40px; height: 40px; font-size: 28px; }
	.drawer-content { padding: 24px 18px 26px; }
	.drawer-content h2 { margin-bottom: 18px; font-size: 30px; line-height: 1.02; }
	.drawer-capabilities { gap: 8px; }
	.drawer-appointment-wrap { margin-bottom: 16px; }
	.drawer-appointment-wrap .button { min-height: 52px; }
	.drawer-block { margin-bottom: 22px; font-size: 15px; }
	.drawer-block-hours { padding: 22px 18px 18px; border-radius: 18px; }
	.drawer-section-title { margin-bottom: 14px; font-size: 18px; }
	.hours-row { font-size: 16px; align-items: flex-start; }
	.hours-row span:last-child { white-space: normal; }
	.drawer-block-hours .hours-row { gap: 12px; padding: 14px 0; }
	.drawer-block-hours .drawer-note { margin-top: 16px; padding-top: 14px; font-size: 14px; }
	.drawer-image-wrap { height: 230px; padding: 18px 18px 0; }
	.drawer-image { border-radius: 16px; }
	.drawer-actions { gap: 12px; margin-top: 26px; }
	.drawer-actions .button { min-height: 56px; font-size: 18px; }

	.introBox { margin-bottom: 50px; padding-top: 30px; }
	.introBox .inner { display: block }
	.introBox .left,
	.introBox .right { width: 100%; }
	#opzetten.introBox .left h5 { font-size: 30px; line-height: 1.12; }
	#downloads .left h5 { font-size: 30px; line-height: 1.12; }
	.introBox .text,
	.introBox .right h2 { margin-bottom: 30px; }

	.galleryBox .block { row-gap: 20px; }
	.galleryBox .title { font-size: 22px; line-height: 1.1; }
	.galleryBox .swiper-horizontal>.swiper-pagination-bullets, .galleryBox .swiper-pagination-horizontal.swiper-pagination-bullets { width: calc(100% - 124px); margin-left: 0; justify-content: flex-start; }

	.campingBox { margin-bottom: 60px; }
	.campingBox .text { bottom: 7rem; }
	.campingBox .slider-nav { flex-wrap: nowrap; gap: 8px; align-items: flex-start; }
	.campingBox .slider-nav-item { flex: 1 1 0; min-width: 0; max-width: none; padding-top: .75rem; }
	.campingBox .nav-item-label { display: none; }
	.campingBox .slider-nav-active-label { display: block; margin-top: 12px; font-size: 18px; font-weight: 600; color: var(--color-white); line-height: 1.2; }
	.campingBox .top { margin-bottom: 20px; }
	.campingBox .top-left,
	.campingBox .top-right { width: 100%; }

	.informationBox { display: block; }
	.informationBox .left { margin-right: 0;  }
	.informationBox .right { width: var(--width); }

	.historyBox { --history-card-width: min(90vw, calc(100vw - 32px)); --history-card-height: min(400px, 40vh); height: auto; min-height: 100vh; padding-top: 80px; }
	.historyBox-layout { display: flex; flex-direction: column; min-height: 100vh; }
	.historyBox-sidebar { border-right: 0; border-bottom: 1px solid rgba(139, 109, 75, 0.12); }
	.historyBox-sidebar-inner { position: relative; top: auto; height: auto; padding: 92px 18px 18px; gap: 16px; }
	.historyBox-heading h1 { font-size: 1.8rem; }
	.historyBox-heading h5 { font-size: 0.95rem; max-width: none; }
	.historyBox-milestones { gap: 12px; }
	.historyBox-milestones-list { flex-direction: row; gap: 10px; padding-left: 0; padding-bottom: 6px; max-height: none; overflow-x: auto; overflow-y: hidden; overscroll-behavior-x: contain; -webkit-overflow-scrolling: touch; -ms-overflow-style: none; scrollbar-width: none; touch-action: pan-x; }
	.historyBox-milestones-list::-webkit-scrollbar { display: none; width: 0; height: 0; }
	.historyBox-milestones-list::before { display: none; }
	.history-sidebar-milestone { width: auto; min-width: max-content; padding: 10px 14px; border-radius: 999px; background: rgba(255, 252, 247, 0.84); border: 1px solid rgba(139, 109, 75, 0.15); }
	.history-sidebar-milestone::before { position: static; transform: none; width: 8px; height: 8px; margin-right: 8px; box-shadow: none; flex-shrink: 0; }
	.history-sidebar-milestone:hover,
	.history-sidebar-milestone:focus-visible { transform: translateY(-1px); }
	.history-sidebar-milestone.active::before { transform: none; box-shadow: none; }
	.historyBox-main { flex: 1 1 auto; }
	.historyBox .scene { box-sizing: border-box; width: 100%; min-height: min(calc(100vh - 240px), 560px); padding: 20px 16px 88px; perspective: 900px; }
	.historyBox .timeline { width: var(--history-card-width); height: var(--history-card-height); transform: none; }
	.historyBox .card-image { flex-basis: 45%; min-height: 132px; }
	.historyBox .card-content { padding: 16px 18px 16px; gap: 6px; }
	.historyBox .card h2 { font-size: 2rem; line-height: 0.98; }
	.historyBox .card-subtitle { white-space: nowrap; }
	.historyBox .sidebar-timeline { right: 10px; gap: 10px; }
	.historyBox .sidebar-item { font-size: 0.8rem; }
	.historyBox .sidebar-item.active { font-size: 1rem; }
	.historyBox #activeYearDisplay { top: calc(50% - min(200px, 20vh) - 16px); font-size: 48px; }
	.historyBox .controls { max-width: none; padding: 14px 18px; gap: 12px; margin-top: 0; }

	.bannerBox .bottom { font-size: 20px; display: block; }
	.bannerBox .buttons { flex-direction: column; align-items: stretch; width: 100%; }
	.bannerBox .buttons .button { width: 100%; justify-content: center; }

	#footerCntr .copyright .top { display: flex; justify-content: center; }
	#footerCntr .copyright .info { display: block; text-align: center; }
	#footerCntr .copyright ul { padding: 12px 0; justify-content: center }
	#footerCntr .copyright li:not(:last-child) { margin-right: 20px; }
	#footerCntr .menu,
	#footerCntr .menu:nth-child(1),
	#footerCntr .menu:nth-child(2),
	#footerCntr .menu:nth-child(3),
	#footerCntr .menu:nth-child(4) { width: 50%; }
	#footerCntr .register { width: var(--width); }
	#footerCntr .panel { width: fit-content; margin: 24px auto 0; }
	
	
	.headerBox.centered-lg {display: none;}
	.galleryBox .overlay {padding:5px 16px;}
	.galleryBox {margin-bottom: 80px;}
	.campingBox .top-left h5 {font-size: 18px;}
	.specificationBox {margin-bottom: 0px; }
	
	.downloadBox .wrap {grid-template-columns: repeat(1,1fr);}
	.downloadBox .item {margin-bottom: 16px;}
	
	#footerCntr .menus,
	#footerCntr .menus:nth-child(2) {width: 100%;}
	
	
	#headerCntr .logo img { padding-top: 0; }
	
	.historyBox .sidebar-timeline {display:none;}
	
	.historyBox #activeYearDisplay { top: calc(50% - min(200px, 20vh) - 16px); }
	
	.specificationBox .specificationBox-subtitle, .introBox .left h5,#downloads .left h5 {font-size: 18px;}
	
	.enquiryBox .left.kh-left {padding: 8px;}
	
	.specificationBox .heading {color: var(--color-black);}
	
	.timeline article.card .card__top p.card__desc {display: none;}
	
	.timeline article.card .card__image {min-height: 240px; max-height: 240px;}
	.timeline article.card  .card__title {font-size: 20px;}
	
	.compareBox .bg {height: 136px;}
	.vwc-compare .vwc-column__image, .vwc-compare .vwc-column__image-wrap, .vwc-compare .vwc-column__image {height: 136px; min-height: inherit; max-height: inherit;}
	.vwc-compare .vwc-column__image-wrap, .vwc-compare .vwc-column__image, .vwc-compare .vwc-column__image-placeholder {height: 136px; min-height: 136px!important; max-height: inherit;}
	
	
	.vwc-compare .vwc-column__select-thumb {width: 36px!important;}
	
	
}

@media only screen and (max-width: 479px) {
	:root {
		--font-size-h1: 40px;
		--font-size-h2: 30px;
		--font-size-h3: 26px;
	}

	.menuBox .mega-menu .column { grid-template-columns: repeat(1, 1fr); }
	.menuBox .mega-menu .column.column-links { grid-template-columns: repeat(1, 1fr); }
	.menuBox .items.items-simple { min-height: 150px; }

	.connectBox .nav-tabs li:after,
	.connectBox .nav-tabs li em { top: 4px; transform: unset; }
	.connectBox .nav-tabs li:after { top: 8px; }

	.campingBox .text { bottom: 6.5rem; }
	.campingBox .slider-nav { gap: 6px; }
	.campingBox .slider-nav-item { flex: 1 1 0; min-width: 0; max-width: none; }
	.campingBox .slider-nav-active-label { font-size: 13px; }
	.timelineSingle-topbar { margin-bottom: 34px; }
	.timelineSingle-year { margin-bottom: 18px; padding: 9px 15px 8px; font-size: 21px; }
	.timelineSingle-lead { font-size: 23px; }
	.timelineSingle-body { padding: 28px 20px 34px; }
	.timelineSingle-body h2 { font-size: 30px; }
	.timelineSingle-body h3 { font-size: 24px; }
	.timelineSingle-body figure img,
	.timelineSingle-body .wp-block-image img { border-radius: 20px; }
	.timelineSingle-navLink { padding: 24px; border-radius: 22px; }
.timelineSingle-navLink strong,
.timelineSingle-navLink.is-empty strong { font-size: 24px; }

	.single-breadcrumb { padding-top: 80px; margin-bottom: 20px; }
	.single-top { padding-bottom: 24px; }
	.single-title { font-size: 28px; }
	.single-hero { border-radius: 6px; }
	.single-hero img { max-height: 280px; }
	.single-hero-compare { margin-bottom: 40px; }
	.single-hero-compare-media,
	.single-hero-compare-image { min-height: 340px; border-radius: 10px; }
	.single-hero-compare-card { left: 14px; right: 14px; bottom: 14px; padding: 16px 16px 18px; border-radius: 18px; }
	.single.single--news .single-hero-compare-card .single-breadcrumb { margin-bottom: 10px; font-size: 12px; }
	.single-hero-compare-date { margin-bottom: 10px; font-size: 13px; }
	.single-hero-compare-title { font-size: 24px; line-height: 1; }
	.single-top-date { margin-bottom: 10px; font-size: 13px; }
	.single-top-title { font-size: 32px; line-height: 1; }
	.tijdlijnSingle .single-breadcrumb { margin-bottom: 10px; font-size: 12px; }
	.single-body p,
	.single-body ul,
	.single-body ol { font-size: 16px; }
	.single-body > p:first-child { font-size: 18px; }
	.single-body h2 { margin-top: 36px; font-size: 26px; }
	.single-body h3 { font-size: 22px; }
	.single-body blockquote { font-size: 18px; }
	.single-body figure img,
	.single-body .wp-block-image img { border-radius: 6px; }
	.single-related-card { flex-direction: column; }
	.single-related-image { width: 100%; aspect-ratio: 16 / 10; }
	.single-related-content { padding: 16px; }
	.single-related-card-title { font-size: 17px; }
	.single-cta { padding: 40px 0; }
	.single-newsletter-modal__panel { width: calc(100vw - 16px); margin: 12px auto; padding: 30px 18px 18px; border-radius: 18px; max-height: calc(100vh - 24px); }
	.single-newsletter-modal__close { top: 12px; right: 12px; width: 40px; height: 40px; }
	.single-newsletter-modal__title { font-size: 28px; }
	.single-newsletter-modal__subtitle { font-size: 15px; }
	.single-newsletter-modal__form { min-height: 180px; border-radius: 14px; }

	#footerCntr .block { display: block; }
	#footerCntr .menu,
	#footerCntr .register,
	#footerCntr .menu:nth-child(1),
	#footerCntr .menu:nth-child(2),
	#footerCntr .menu:nth-child(3),
	#footerCntr .menu:nth-child(4) { width: var(--width); }
	
	

}

/* ### configurator shell language switcher ### */
body.configurator-shell .vwc-lang-switcher-btn {
	width: 40px;
	height: 40px;
	padding: 0;
	border: 1px solid #e5e7eb;
	border-radius: 8px;
	background-color: #ffffff;
	color: #111827;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: background-color .2s ease, color .2s ease;
	flex: 0 0 auto;
}
body.configurator-shell .vwc-lang-switcher-btn:hover,
body.configurator-shell .vwc-lang-switcher-btn:focus-visible {
	background-color: #111827;
	color: #ffffff;
	outline: none;
}
body.configurator-shell .vwc-lang-switcher-btn i { font-size: 16px; line-height: 1; }

body.configurator-shell > .vwc-lang-switcher-btn {
	position: fixed;
	top: 16px;
	right: 16px;
	z-index: 60;
	box-shadow: 0 4px 12px rgba(0, 0, 0, .08);
}

body.single-vouwwagen_model > .vwc-lang-switcher-btn { display: none; }
