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

/* #Site Styles
================================================== */
:root {
	--width-base: 1316px;
	--width-lg: 1640px;
	--width-xl: 1880px;
	--gutter-base: 20px;
	--font-size-base: 16px;
	--font-family-base: 'Poppins', sans-serif;
	--font-family-icon: 'icomoon';
	--lineheight-base: 1.75;
	--color-primary: #0059a9;
	--color-secondary: #ff713f;
	--color-gray: #f1f5f6;
	--color-gray-100: #9c9c9c;
	--color-gray-200: #f9f9f9;
	--color-orange: #e04711;
	--color-blue: #004079;
	--color-alternate: #457fbb;
	--color-green: #7ed923;
	--color-yellow: #fbbc02;
	--color-white: #fff;
	--color-black: #000;
	--color-black-10: #010103;
	--color-near-black: #291919;
	--heading-lineheight: 1.1;
	--font-size-h1: 30px;
	--font-size-h2: 28px;
	--font-size-h3: 24px;
	--font-size-h4: 20px;
	--font-size-h5: 18px;
	--font-size-h6: 16px;
	--default-radius: 12px;
	--input-height: 48px;
	--textarea-height: 144px;
	--base-duration: all 0.25s;
}

/* ### general ### */
* { margin: 0; padding: 0; box-sizing: border-box; -webkit-font-smoothing: antialiased; }
html,
body { font-family: var(--font-family-base); font-size: var(--font-size-base); font-weight: 500; line-height: var(--lineheight-base); color: var(--color-black); }
body { background: var(--color-white); }
input,
select,
textarea { padding: 10px 20px; width: 100%; height: var(--input-height); font-family: var(--font-family-base); font-size: 14px; font-weight: 500; color: var(--color-near-black); border: 1px solid rgba(112, 112, 112, 0.1); border-radius: var(--default-radius); background-color: var(--color-white); }
textarea { padding: 15px 20px; height: var(--textarea-height); }
select { padding: 10px 15px; background: url('../images/select-arrow.png') no-repeat center right 16px; appearance: none; }
input::placeholder,
textarea::placeholder { color: var(--color-near-black); }
input[type='checkbox'] { padding: 0; display: flex; align-items: center; justify-content: center; width: 20px; height: 20px; border: 1px solid var(--color-alternate); border-radius: 5px; background-color: transparent; -webkit-appearance: none; cursor: pointer; }
input[type='checkbox']:checked:before { display: block; font-family: var(--font-family-icon); font-size: 10px; color: var(--color-alternate); content: '\e904'; }
input[type='search']::-webkit-search-decoration,
input[type='search']::-webkit-search-cancel-button,
input[type='search']::-webkit-search-results-button,
input[type='search']::-webkit-search-results-decoration {
	-webkit-appearance: none;
}
input[type='number']::-webkit-inner-spin-button,
input[type='number']::-webkit-outer-spin-button {
	margin: 0;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
img, iframe { display: block; max-width: 100%; border: 0; height: auto; }
ul,
li { list-style: none; }
:focus { outline: none; }
p { margin-bottom: 16px; }
a { display: inline-block; text-decoration: underline; color: var(--color-primary); cursor: pointer; }
a:focus,
a:hover { text-decoration: none; }
h1,
h2,
h3,
h4,
h5,
h6 { margin-bottom: 16px; font-family: var(--font-family-base); font-weight: 700; line-height: var(--heading-lineheight); }
h1 { font-size: var(--font-size-h1); }
h2 { font-size: var(--font-size-h2); }
h3 { font-size: var(--font-size-h3); }
h4 { font-size: var(--font-size-h4); }
h5 { font-size: var(--font-size-h5); }
h6 { font-size: var(--font-size-h6); }


.ti-header-content{ justify-content: flex-end!important; }


/* ### global classes ### */
.clear { visibility: hidden; clear: both; height: 0; line-height: 0; }
.centered,
.centered-lg,
.centered-xl { padding-right: var(--gutter-base); padding-left: var(--gutter-base); }
.button { padding: 8px 18px; display: inline-flex; align-items: center; justify-content: center; font-family: var(--font-family-base); font-size: 16px; font-weight: 500; line-height: var(--lineheight-base); text-decoration: none; color: var(--color-white); border: 2px solid var(--color-secondary); border-radius: var(--default-radius); background-color: var(--color-secondary); transition: var(--base-duration); cursor: pointer; }
.button:focus,
.button:hover { color: var(--color-white); border: 2px solid var(--color-orange); background-color: var(--color-orange); }
.button-primary { color: var(--color-white); border: 2px solid var(--color-primary); background-color: var(--color-primary); }
.button-primary:focus,
.button-primary:hover { color: var(--color-white); border: 2px solid var(--color-blue); background-color: var(--color-blue); }
.button-secondary { color: var(--color-secondary); border: 2px solid var(--color-white); background-color: var(--color-white); }
.button-secondary:focus,
.button-secondary:hover { color: var(--color-secondary); border: 2px solid var(--color-gray); background-color: var(--color-gray); }
.button-outline { color: var(--color-secondary); border: 2px solid var(--color-secondary); background-color: transparent; }
.button-outline:focus,
.button-outline:hover { color: var(--color-white); border: 2px solid var(--color-secondary); background-color: var(--color-secondary); }
.button-white-outline { color: var(--color-white); border: 2px solid var(--color-white); background-color: transparent; }
.button-white-outline:focus,
.button-white-outline:hover { color: var(--color-secondary); border: 2px solid var(--color-white); background-color: var(--color-white); }
/*.button.large { width: 100%; max-width: 260px; }*/

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

/* ### header ### */
.header { position: fixed; top: 0; z-index: 9; width: 100%; background-color: var(--color-white); transition: var(--base-duration); }
.header-logo { display: block; width: 220px; }
.header-top { padding-top: 11px; padding-bottom: 11px; display: flex; align-items: center; justify-content: space-between; background-color: var(--color-primary); }
.header-search { position: relative; display: none; width: 250px; }
.header-search input { padding: 10px 50px 10px 19px; }
.header-search input::placeholder { color: rgba(0, 0, 0, 0.5); }
.header-search-icon { position: absolute; top: 50%; right: 20px; font-size: 16px; color: var(--color-primary); border: 0; background-color: transparent; transform: translateY(-50%); cursor: pointer; }
.header-top ul { display: flex; }
.header-top li { margin-right: 15px; font-size: 14px; color: var(--color-white); position: relative; }
.header-top li:last-of-type { margin-right: 0; }
.header-top li i { display: inline-block; font-size: 18px; vertical-align: middle; }
.header-top li span { display: none; }
.header-top li a { text-decoration: none; color: var(--color-white); transition: var(--base-duration); }
.header-top li a:focus,
.header-top li a:hover { color: var(--color-secondary); }
.header-top li .tooltip-text { padding: 5px 10px; position: absolute; top: calc(100% + 6px); right: -20px; opacity: 0; visibility: hidden; width: max-content; font-size: 14px; color: var(--color-white); border-radius: 6px; background-color: var(--color-black); transition: var(--base-duration); }
.header-top li .tooltip-text:after { position: absolute; top: -5px; right: 25px; width: 0; height: 0; border-color: transparent transparent var(--color-black) transparent; border-style: solid; border-width: 0 3px 6px 3px; content: ''; }
.header-top li:hover .tooltip-text { opacity: 1; visibility: visible; }
.header-holder { padding-top: 10px; padding-bottom: 10px; display: flex; align-items: center; justify-content: space-between; }
.header-home { font-size: 25px; line-height: 1; text-decoration: none; color: var(--color-black); transition: var(--base-duration); }
.header-home:focus,
.header-home:hover { color: var(--color-secondary); }
.header .button { display: none; }
.header.sticky { transform: translateY(-55px); box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.1); }

/* ### header-menu ### */
.header-menu { display: none; }
.header-menu ul { display: flex; flex-wrap: wrap; justify-content: center; }
.header-menu li { margin-right: 20px; padding-top: 19px; padding-bottom: 19px; position: relative; }
.header-menu li:last-of-type { margin-right: 0; }
.header-menu li a { display: inline-flex; align-items: center; font-size: 14px; font-weight: 500; text-transform: uppercase; text-decoration: none; color: var(--color-black); transition: var(--base-duration); }
.header-menu li a i { margin-top: 0; margin-left: 5px; font-size: 6px; }


.header-menu li a:focus,
.header-menu li a:hover,
.header-menu li:hover a { color: var(--color-secondary); }
.header-menu li ul { padding: 10px 0; position: absolute; top: 100%; left: 0; display: block; opacity: 0; visibility: hidden; width: 115px; background-color: var(--color-white); transition: var(--base-duration); box-shadow: 0 2px 5px rgb(0, 0, 0, 0.16); }
.header-menu li:hover ul { opacity: 1; visibility: visible; }
.header-menu li:hover li a { color: var(--color-black); }
.header-menu li:hover li ul { opacity: 0; visibility: hidden; }
.header-menu li li { margin-right: 0; padding: 0 15px; position: relative; }
.header-menu li li:hover ul { opacity: 1; visibility: visible; }
.header-menu li li ul { position: absolute; top: 0; left: 100%; }
.header-menu li li a { display: block; font-size: 14px; text-transform: unset; color: var(--color-black); }
.header-menu li li a:focus,
.header-menu li li a:hover { color: var(--color-secondary); }
.header-menu li li:hover a { color: var(--color-secondary); }
.header-menu li li:hover li a { color: var(--color-black); }
.header-menu li li li a:focus,
.header-menu li li li a:hover { color: var(--color-secondary); }

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

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

/* ### Offer ### */
.offer { padding-top: 8px; padding-bottom: 8px; font-size: 14px; line-height: 1.5; text-align: center; color: var(--color-white); background-color: var(--color-black); }
.offer p { margin-bottom: 0; }
.offer a { color: var(--color-white); }

/* ### Hero ### */
.hero { padding-top: 50px; padding-bottom: 100px; position: relative; background-color: var(--color-primary); }
.hero-text { margin: 0 auto; position: relative; z-index: 1; max-width: 925px; text-align: center; color: var(--color-white); }
.hero-text p { margin-bottom: 20px; }
.hero-buttons .button { margin-bottom: 10px; width: 100%; }
.hero-buttons .button:last-of-type { margin-bottom: 0; }
.hero-image { position: absolute; top: 0; left: 0; opacity: 0.4; width: 100%; height: 100%; }
.hero-image img { width: 100%; height: 100%; object-fit: cover; }
.hero .google-review { position: absolute; bottom: 0; left: 0; z-index: 1; width: 100%; border-radius: 0; }
.hero.is-alt { padding-top: 63px; padding-bottom: 0; }
.hero.is-alt h1 { margin-bottom: 33px; }
.hero .breadcrumb { margin-bottom: 0; padding-bottom: 4px; display: flex; justify-content: center; }
.hero .breadcrumb li { color: var(--color-white); }
.hero .breadcrumb li a { color: var(--color-white); }

/* ### google-review ### */
.google-review { padding: 9px 15px; display: flex; align-items: center; justify-content: center; font-size: 14px; border: 1px solid rgba(0, 0, 0, 0.1); border-radius: var(--default-radius); background-color: var(--color-white); }
.google-review a { margin-right: 5px; color: var(--color-black); }
.google-review ul { margin: 0 5px; display: flex; }
.google-review li { margin-right: 1px; font-size: 12px; color: var(--color-yellow); }
.google-review li:last-of-type { margin-right: 0; }

/* ### Usp ### */
.usp { margin: 0 -12px; padding-top: 17px; padding-bottom: 15px; border-bottom: 1px solid rgba(112, 112, 112, 0.1); }
.usp-holder { display: none; }
.usp-item { font-size: 12px; text-align: center; }
.usp-item i { margin-top: -1px; margin-right: 3px; display: inline-block; font-size: 12px; color: var(--color-green); vertical-align: middle; }

/* ### Intro ### */
.intro-block { margin-bottom: 21px; position: relative; z-index: 1; max-width: 720px; }
.intro-block p:last-of-type { margin-bottom: 0; }
.intro-block.is-full { width: 100%; max-width: 100%; }

/* ### Popular ### */
.popular { margin-top: 40px; margin-bottom: 40px; padding-top: 40px; padding-bottom: 40px; position: relative; }
.popular-holder { position: relative; z-index: 1; }
.popular-button { margin-top: 25px; text-align: center; }
.popular-shape { position: absolute; bottom: -50px; left: -250px; opacity: 0.06; pointer-events: none; }
.popular .swiper { margin-right: -20px; }
.popular-nav { margin-top: 15px; display: flex; align-items: center; justify-content: center; }

/* ### card-popular ### */
.js-popular-slider .swiper-slide{ height: auto!important; }
.card-popular { display: flex; flex-direction: column; justify-content: space-between; width: 100%; text-decoration: none; color: var(--color-black); border: 1px solid rgba(0, 0, 0, 0.08); border-radius: var(--default-radius); background-color: var(--color-white); overflow: hidden; height: 100%;}
.card-popular-image { padding: 54px 15px 0; position: relative; }
.card-popular-image img { margin: 0 auto;height: 220px; object-fit: contain; }
.card-popular-tag { padding: 4px 13px 3px; position: absolute; top: 9px; left: 9px; font-size: 10px; font-weight: 700; text-transform: uppercase; color: var(--color-white); border-radius: 6px; background-color: var(--color-primary); }
.card-popular-text { padding: 20px 20px 17px; }
.card-popular-text h5 { margin-bottom: 3px; }
.card-popular-price { padding-right: 95px; position: relative; }
.card-popular-price span { padding: 4px 12px 3px; display: inline-flex; align-items: center; justify-content: center; font-size: 10px; font-weight: 700; text-transform: uppercase; color: var(--color-white); border-radius: 6px; background-color: var(--color-black); }
.card-popular-price strong { display: block; font-size: 20px; }
.card-popular-price strong em { font-size: 14px; font-weight: 500; font-style: normal; text-decoration: line-through; }
.card-popular-price .button { padding: 8px 15px; position: absolute; top: 3px; right: 0; }
.card-popular:focus .card-popular-price .button,
.card-popular:hover .card-popular-price .button { color: var(--color-white); border: 2px solid var(--color-orange); background-color: var(--color-orange); }
.card-popular ul { padding-top: 15px; padding-bottom: 15px; }
.card-popular li { margin-bottom: 2px; padding-left: 23px; position: relative; font-size: 14px; }
.card-popular li:before { position: absolute; top: 3px; left: 0; font-family: 'icomoon', sans-serif; font-size: 13px; color: var(--color-green); content: '\e904'; }

/* ### Discover ### */
.discover { margin-top: 40px; margin-bottom: 40px; padding-top: 80px; padding-bottom: 80px; position: relative; background-color: var(--color-gray); }
.discover-shape { position: absolute; right: -255px; bottom: 0; opacity: 0.06; pointer-events: none; }
.discover-button { margin-top: 15px; position: relative; z-index: 1; text-align: center; }
.discover .swiper { margin-right: -20px; }

/* ### breadcrumb ### */
.breadcrumb { margin-bottom: 26px; padding-top: 4px; }
.breadcrumb ul { display: flex; flex-wrap: wrap; list-style: none; }
.breadcrumb li { position: relative; font-size: 12px; color: var(--color-black); }
.breadcrumb li a { text-decoration: none; color: var(--color-black); }
.breadcrumb li:not(:last-child):after { margin: 0 9px; content: '|'; }
.breadcrumb.inner { margin-bottom: 14px; }

/* ### card-discover ### */
.card-discover { display: block; width: 100%; text-decoration: none; color: var(--color-black); border: 1px solid rgba(0, 0, 0, 0.1); border-radius: var(--default-radius); background-color: var(--color-white); overflow: hidden; }
.card-discover-image img { width: 100%; }
.card-discover-text { padding: 20px; }
.card-discover-text h5 { margin-bottom: 19px; }
.card-discover-text p { margin-bottom: 20px; }
.card-discover .button { min-width: 220px; }
.card-discover:focus .button,
.card-discover:hover .button { color: var(--color-white); border: 2px solid var(--color-orange); background-color: var(--color-orange); }

/* ### brands ### */
.brands { margin-top: 40px; margin-bottom: 40px; padding-bottom: 40px;display: flex; flex-wrap: wrap; }
.brands .intro-block { margin-bottom: 29px; }
.brands-left,
.brands-right { width: 100%; }
.brands-phone-filters { padding: 60px 20px 30px; position: fixed; top: 100%; left: 0; z-index: 10; width: 100%; height: 0; background-color: var(--color-white); overflow-y: auto; transition: var(--base-duration); }
.brands-phone-filters.is-active { top: 0; height: 100vh; }
.brands-left .card-cta { margin-top: 39px; display: none; }
.brands-list-item { margin-bottom: 12px; padding: 10px 17px 10px 29px; border: solid 1px rgba(72, 89, 43, 0.15); border-radius: 12px; }
.brands-list-item.active .brands-hidden { max-height: 240px; }
.brands-hidden { max-height: 0; overflow: hidden; transition: max-height 0.4s ease; }
.brands-check { margin-bottom: 0; position: relative; display: inline-block; font-size: 16px; font-weight: 500; cursor: pointer; }
.brands-check-item:not(:last-child) { margin-bottom: 8px; }
.brands-check input { display: none; }
.brands-check span { padding-left: 26px; position: relative; }
.brands-check span:before { position: absolute; top: 2px; left: 0; width: 18px; height: 18px; border: solid 1px rgba(0, 0, 0, 0.08); border-radius: 6px; background-color: var(--color-white); content: ''; }
.brands-check span:after { position: absolute; top: 5px; left: 5px; display: none; font-family: var(--font-family-icon); font-size: 9px; color: var(--color-white); content: '\e904'; }
.brands-check input:checked + span:before { background-color: var(--color-primary); }
.brands-check input:checked + span:after { display: block; }
.brands-title { margin-bottom: 0; position: relative; font-size: 16px; font-weight: 700; color: var(--color-black); cursor: pointer; }
.brands-title:after { position: absolute; top: -4px; right: 0; display: flex; align-items: center; justify-content: center; width: 35px; height: 35px; font-family: 'icomoon', sans-serif; font-size: 6px; color: var(--color-black); transition: 0.25s ease-in-out; content: '\e900'; }
.brands-title.is-active { margin-bottom: 4px; }
.brands-title.is-active:after { transform: rotate(-180deg); }
.brands-sort { margin-bottom: 20px; display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; column-gap: 10px; row-gap: 5px; }
.brands-sort label { flex: 0 0 auto; font-size: 14px; font-weight: 700; }
.brands-sort select { width: 100%; }
.brands-column { margin-bottom: 40px; display: grid; grid-template-columns: repeat(1, 1fr); column-gap: 20px; row-gap: 20px; }
.brands-button { margin-bottom: 30px; display: flex; justify-content: center; }
.brands .js-close-filter { padding: 7px; position: absolute; top: 10px; right: 20px; width: 30px; height: 30px; display: flex; align-items: center; justify-content: center; border-radius: 6px; border: 0; background-color: var(--color-secondary); }

/* =========================================================
   Brands filter — sidebar max-height + scroll
   Toevoegen aan css/style.css onder de bestaande .brands-* regels
   ========================================================= */
.brands-hidden-inner { max-height: 300px; overflow-y: auto; padding-right: 8px; }
.brands-hidden-inner::-webkit-scrollbar { width: 6px; }
.brands-hidden-inner::-webkit-scrollbar-track { background: rgba(0, 0, 0, 0.05); border-radius: 3px; }
.brands-hidden-inner::-webkit-scrollbar-thumb { background: rgba(0, 0, 0, 0.2); border-radius: 3px; }
.brands-hidden-inner::-webkit-scrollbar-thumb:hover { background: rgba(0, 0, 0, 0.35); }

/* ### filter-sticky ### */
.filter-sticky { padding: 20px; position: fixed; bottom: 0; left: 0; z-index: 11; width: 100%; background-color: var(--color-white); }
.brands-phone-filters.is-active { top: 0; height: 100vh; padding-bottom: 100px; }



/* ### card-cta ### */
.card-cta { padding: 25px 25px 29px; position: relative; color: var(--color-white); border-radius: 12px; overflow: hidden; }
.card-cta strong { margin-bottom: 17px; display: block; font-size: 18px; line-height: 1.25; }
.card-cta-info { position: relative; z-index: 1; display: flex; flex-direction: column; height: 100%; }
.card-cta-photo { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: var(--color-primary); }
.card-cta-photo img { opacity: 0.4; width: 100%; height: 100%; object-fit: cover; }
.card-cta-bottom { margin-top: auto; }

/* ### Review ### */
.review { margin-bottom: 40px; padding-top: 40px; padding-bottom: 40px; }
.review .google-review { margin-bottom: 20px; }
.review-slider { position: relative; }
.review-button { margin-top: 20px; text-align: center; }
.review-nav { margin-top: 20px; display: flex; align-items: center; justify-content: center; }
.review .swiper { margin-right: -20px; }
.review .swiper-slide { height: auto; }

/* ### card-review ### */
.card-review { padding: 20px; height: 100%; line-height: 1.5; border: 1px solid rgba(0, 0, 0, 0.1); border-radius: var(--default-radius); background-color: var(--color-white); overflow: hidden; }
.card-review-client { margin-bottom: 11px; padding-right: 30px; padding-left: 57px; position: relative; line-height: 1.3; }
.card-review-image { position: absolute; top: -3px; left: 0; display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; font-size: 20px; color: var(--color-white); border-radius: 50px; background-color: var(--color-primary); overflow: hidden; }
.card-review-image img { width: 100%; }
.card-review-google-icon { position: absolute; top: 0; right: 0; width: 20px; }
.card-review-client strong { display: block; }
.card-review-client span { display: block; font-size: 15px; color: var(--color-gray-100); }
.card-review ul { margin-bottom: 8px; display: flex; align-items: center; }
.card-review li { margin-right: 0; font-size: 18px; color: var(--color-yellow); }
.card-review li:last-of-type { margin-left: 8px; }
.card-review p:last-of-type { margin-bottom: 0; }

/* ### About ### */
.about { padding-bottom: 40px; padding-top: 40px;}
.about p { margin-bottom: 28px; }
.about-left { margin-bottom: 30px; }
.about-right img { width: 100%; border-radius: var(--default-radius); }

/* ### Choose ### */
.choose { margin-top: 40px; margin-bottom: 40px; padding-top: 80px; padding-bottom: 80px; position: relative; background-color: var(--color-gray); overflow: hidden; }
.choose-row { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(1, 1fr); gap: 20px; }
.choose-shape { position: absolute; bottom: 0; left: -70px; opacity: 0.06; width: 440px; pointer-events: none; }

/* ### card-choose ### */
.card-choose { margin-top: 60px; padding: 30px 20px 20px; position: relative; font-weight: normal; border: 1px solid rgba(0, 0, 0, 0.1); border-radius: var(--default-radius); background-color: var(--color-white); }
.card-choose h5 { margin-bottom: 18px; }
.card-choose p:last-of-type { margin-bottom: 0; }
.card-choose-icon { position: absolute; top: -60px; left: 50%; display: flex; align-items: center; justify-content: center; width: 80px; height: 80px; font-size: 30px; color: var(--color-white); border-radius: 50%; background-color: var(--color-primary); transform: translateX(-50%); }

/* ### Blog ### */
.blog { margin-top: 40px; margin-bottom: 40px; padding-top: 40px; padding-bottom: 40px; }
.blog-button { margin-top: 20px; text-align: center; }
.blog .swiper { margin-right: -20px; padding-bottom: 2px; }
.blog .swiper-slide { height: auto; }

/* ### card-blog ### */
.card-blog { display: flex; flex-direction: column; width: 100%; height: 100%; text-decoration: none; color: var(--color-black); border: 1px solid rgba(0, 0, 0, 0.1); border-radius: var(--default-radius); background-color: var(--color-white); overflow: hidden; }
.card-blog-image img { width: 100%; }
.card-blog-text { padding: 20px; display: flex; flex-direction: column; justify-content: space-between; height: 100%; font-weight: normal; }
.card-blog-text h5 { margin-bottom: 15px; line-height: 1.5; }
.card-blog-text span { display: inline-block; text-decoration: underline; color: var(--color-secondary); }
.card-blog-date { margin-bottom: 28px; }
.card-blog-date em { display: block; font-style: normal; }
.card-blog-date em strong { font-weight: 600; }
.card-blog:focus .card-blog-text span,
.card-blog:hover .card-blog-text span { text-decoration: none; }


/* ### Appointment ### */
.appointment { margin-bottom: 40px; }
.appointment h1 { margin-bottom: 12px; }
.appointment-left { margin-bottom: 20px; }
.appointment-slider-watch { margin-bottom: 15px; }
.appointment-slider-item { padding: 35px 15px; display: flex; align-items: center; justify-content: center; border: 1px solid rgba(0, 0, 0, 0.1); border-radius: var(--default-radius); background-color: var(--color-white); overflow: hidden; }
.appointment-slider-item img { margin: 0 auto; object-fit:contain; }
.appointment-slider-nav .appointment-slider-item { padding: 10px 8px; border-radius: 6px; cursor: pointer; }

/* ### card-appointment ### */
.card-appointment { padding: 20px; border: 1px solid rgba(0, 0, 0, 0.1); border-radius: var(--default-radius); background-color: var(--color-white); }
.card-appointment-row { margin-bottom: 15px; display: grid; grid-template-columns: repeat(2, 1fr); gap: 13px 16px; }
.card-appointment-field label { margin-bottom: 1px; display: block; font-weight: 600; }
.card-appointment-field a,
.card-appointment-label { padding: 4px 9px; min-height: 36px; font-size: 16px; text-align: center; border: 1px solid rgba(0, 0, 0, 0.1); border-radius: 6px; }
.card-appointment-field a { position: relative; display: flex; align-items: center; justify-content: center; font-size: 12px; text-align: center; color: var(--color-primary); }
.card-appointment-field a .tooltip-text { padding: 8px 12px; position: absolute; z-index: 20; bottom: calc(100% + 6px); left: 50%; opacity: 0; visibility: hidden; width: 240px; font-size: 13px; font-weight: 500; line-height: 1.4; text-align: center; white-space: normal; color: var(--color-white); border-radius: 6px; background-color: var(--color-black); transform: translateX(-50%); transition: var(--base-duration); }
.card-appointment-field a .tooltip-text:after { position: absolute; bottom: -5px; left: 50%; width: 0; height: 0; border-color: var(--color-black) transparent transparent transparent; border-style: solid; border-width: 6px 3px 0; transform: translateX(-50%); content: ''; }
.card-appointment-field a:focus .tooltip-text,
.card-appointment-field a:hover .tooltip-text { opacity: 1; visibility: visible; }
.card-appointment-field a:focus,
.card-appointment-field a:hover { z-index: 20; }
.card-appointment-field span { text-decoration: underline; }
.card-appointment-price { margin-bottom: 14px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; }
.card-appointment-price span { padding: 4px 12px 3px; display: inline-flex; align-items: center; justify-content: center; font-size: 16px; font-weight: 700; text-transform: uppercase; color: var(--color-white); border-radius: 6px; background-color: var(--color-primary); }
span.js-variant-voorraad {font-size:12px;background-color:var(--color-black);}
.card-appointment-price strong { display: block; font-size: 20px; }
.card-appointment-price strong em { font-size: 14px; font-weight: 500; font-style: normal; text-decoration: line-through; }
.card-appointment .button { margin-bottom: 10px; width: 100%; }
.card-appointment ul { margin-top: 2px; }
.card-appointment li { margin-bottom: 7px; padding-left: 22px; position: relative; }
.card-appointment li:before { position: absolute; top: 4px; left: 0; font-family: var(--font-family-icon); font-size: 12px; color: var(--color-green); content: '\e904'; }
.card-appointment li:last-of-type { margin-bottom: 0; }

/* ### Description ### */
.description { margin-bottom: 40px; font-weight: normal; line-height: 1.63; }
.description-left { margin-bottom: 30px; }
.description-right { margin-bottom: 30px; }
.description h4 { margin-bottom: 20px; }
.description p { margin-bottom: 30px; }
.description h6 { margin-bottom: 4px; }
.description-item { padding: 10px 9px 9px; display: flex; font-size: 13px; background-color: var(--color-gray-200); }
.description-item:nth-child(even) { background-color: var(--color-white); }
.description-item span { display: block; flex: 0 0 auto; width: 151px; font-weight: 300; }
.description-item strong { display: block; font-weight: 600; }
.description-column { padding: 20px; border: 1px solid rgba(0, 0, 0, 0.1); border-radius: var(--default-radius); }
.description-column h4 { margin-bottom: 20px; }
.description-column p:last-of-type { margin-bottom: 0; }
.description-extra { margin-top: 30px; display: grid; grid-template-columns: repeat(1, 1fr); column-gap: 16px; row-gap: 16px; }
.description-extra h4 { margin-bottom: 10px; }
.description-extra p { margin-bottom: 15px; }
.description-extra a { text-decoration: none; color: var(--color-secondary); }
.description-extra a:focus,
.description-extra a:hover { text-decoration: underline; }
.description-extra a i { margin-left: 4px; display: inline-block; font-size: 8px; vertical-align: middle; }

/* ### History ### */
.history { margin-top: 40px; margin-bottom: 40px; padding-top: 80px; padding-bottom: 80px; background-color: var(--color-primary); }
.history .intro-block { color: var(--color-white); }
.history-intro { position: relative; z-index: 1; }
.history-slider { position: relative; width: 100vw; margin-left: 50%; transform: translateX(-50%); overflow: hidden; }
.history-slider-track { display: flex; align-items: stretch; }
.history-slide { flex: 0 0 auto; box-sizing: border-box; width: 280px; }
.history-nav { margin-top: 20px; display: flex; justify-content: flex-end; }
.history-nav .swiper-button-prev,
.history-nav .swiper-button-next { color: var(--color-primary); background-color: var(--color-white); }
.history-nav .swiper-button-prev { margin-right: 16px; }
.history-nav .swiper-button-prev.swiper-button-disabled,
.history-nav .swiper-button-prev:focus,
.history-nav .swiper-button-prev:hover,
.history-nav .swiper-button-next.swiper-button-disabled,
.history-nav .swiper-button-next:focus,
.history-nav .swiper-button-next:hover { color: var(--color-primary); background-color: var(--color-white); }

/* ### connect ### */
.connect {padding-top: 80px; padding-bottom: 80px; display: flex; flex-wrap: wrap; row-gap: 30px; justify-content: space-between; }
.connect-intro { width: 100%; }
.connect-intro p { margin-bottom: 21px; }
.connect-info { margin-bottom: 20px; }
.connect-opening em,
.connect-info em { margin-bottom: 4px; display: block; font-size: 18px; font-weight: 700; font-style: normal; }
.connect-info address { font-style: normal; }
.connect-opening { display: flex; flex-wrap: wrap; justify-content: space-between; column-gap: 20px; row-gap: 20px; }
.connect-hours { width: 100%; }
.connect-hours-item span { display: inline-block; min-width: 100px; }
.connect-hours p { margin-bottom: 28px; }
.connect-hours p:last-of-type { margin-bottom: 0; }
.connect-right { width: 100%; }
.connect-list { padding-top: 12px; text-align: center; }
.connect-list li { position: relative; }
.connect-list li:not(:last-child) { margin-bottom: 7px; }
.connect-list li:before { margin-right: 5px; font-family: 'icomoon', sans-serif; font-size: 13px; color: var(--color-green); content: '\e904'; }

/* ### card-form ### */
.card-form { padding: 22px; border-radius: 12px; background-color: var(--color-gray); }
.card-form-title { margin-bottom: 19px; font-size: 18px; font-weight: 700; }
.card-form-group { display: grid; grid-template-columns: repeat(1, 1fr); align-items: center; column-gap: 16px; }
.card-form input { margin-bottom: 16px; }
.card-form textarea { margin-bottom: 8px; resize: none; }

/* ### card-history ### */
.card-history { display: flex; flex-direction: column; width: 100%; height: 100%; border-radius: var(--default-radius); background-color: var(--color-white); overflow: hidden; }
.card-history-image { width: 100%; }
.card-history-image img { width: 100%; height: 220px; object-fit: cover; }
.card-history-year { margin-bottom: 1px; font-size: 36px; font-weight: 700; line-height: var(--heading-lineheight); }
.card-history-text { padding: 20px; }
.card-history-text strong { margin-bottom: 9px; display: block; font-size: 18px; line-height: var(--heading-lineheight); }
.card-history-text p:last-of-type { margin-bottom: 0; }

/* ### Team ### */
.team { margin-bottom: 40px; padding-top: 40px; }
.team-left { margin-bottom: 30px; }
.team-left li { border-bottom: 1px solid rgba(112, 112, 112, 0.1); }
.team-left li:first-child { border-top: 1px solid rgba(112, 112, 112, 0.1); }
.team-left li a { padding: 11px 0; display: block; font-size: 18px; text-decoration: none; color: var(--color-black); transition: var(--base-duration); }
.team-left li a.is-active,
.team-left li a:focus,
.team-left li a:hover { font-weight: 700; color: var(--color-primary); }
.team .swiper { margin-right: -20px; }

/* ### card-team ### */
.card-team { display: block; width: 100%; text-decoration: none; color: var(--color-black); border: 1px solid rgba(0, 0, 0, 0.1); border-radius: var(--default-radius); transition: var(--base-duration); overflow: hidden; }
.card-team-image img { width: 100%;  object-fit: cover; }
.card-team-text { padding: 20px; }
.card-team-text h5 { margin-bottom: 0; }
.card-team-text span { display: block; font-size: 14px; font-weight: normal; }
.card-team.is-linked:focus,
.card-team.is-linked:hover { color: var(--color-primary); }

/* ### Location ### */
.location { margin-bottom: 40px; margin-top: 40px;}
.location img { width: 100%; min-height: 300px; object-fit: cover; }
.location iframe { width: 100%; min-height: 400px; border: 0; }

/* ### seo ### */
.seo { margin-bottom: 40px; padding-bottom: 40px;}
.seo h2 { margin-bottom: 22px; }
.seo-wrap { padding-top: 80px; display: grid; grid-template-columns: repeat(1, 1fr); column-gap: 16px; border-top: solid 1px rgba(112, 112, 112, 0.1); }
.seo p { margin-bottom: 27px; }
.seo p a { color: var(--color-secondary); }
.seo-intro ul, .seo-intro ol{ padding-left: 16px; margin-bottom: 28px; }
.seo-intro ul li{ list-style: disc; }
.seo-intro ol li{ list-style: decimal; }


/* ### faqs ### */
.faqs { padding-bottom: 40px; padding-top: 40px; }
.faqs-block { margin-bottom: 61px; padding-bottom: 49px; display: flex; flex-wrap: wrap; border-bottom: solid 1px rgba(112, 112, 112, 0.1); }
.faqs-item { margin-bottom: 10px; }
.faqs-title { margin-right: 20px; padding-top: 10px; width: 100%; }
.faqs-right { width: 100%; }
.faqs-block:nth-last-child(2) { margin-bottom: 20px; border-bottom: none; }
.faq-cta { position: relative; overflow: hidden; border-radius: 12px; background-color: var(--color-primary); }
.faq-cta h2 { margin-bottom: 23px; color: var(--color-white); }
.faq-cta-info { padding: 57px 50px 60px; position: relative; z-index: 1; text-align: center; }
.faq-cta-photo { position: absolute; top: 0; left: 0; opacity: 0.1; width: 100%; height: 100%; }
.faq-cta-photo img { width: 100%; height: 100%; object-fit: cover; }

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

/* ### information ### */
.information { margin-bottom: 40px; margin-top: 40px; }
.information-date { margin-bottom: 27px; }
.information-date em { display: block; font-style: normal; }
.information-bg { padding: 40px 30px; border-radius: 12px; background-color: var(--color-gray); position: relative; }
.information-bg:after{ content: ''; position: absolute; z-index: 0;  background-image: url('../images/cycle-shape2.png'); background-position: left bottom; background-repeat: no-repeat; width: 50%; height: 400px; background-size: contain; opacity: 0.1; bottom :0; left:0;  }

/* ### iframe in information ### */
.information iframe { display: block; width: 100%; border: 0; }
.information-intro p:has(> iframe) { margin-bottom: 0; }
.information-intro{ position: relative; z-index: 2; }


.information-intro { margin: 0 auto; width: 100%; max-width: 870px; }
.information p { margin-bottom: 27px; }
.information h4 { margin-bottom: 8px; }
.information h6 { margin-bottom: 8px; }
.information ul { margin-bottom: 27px; }
.information li { position: relative; }
.information li:before { margin-right: 5px; display: inline-block; vertical-align: middle; content: '-'; }
.information-photo { margin-bottom: 35px; text-align: center; }
.information-photo img { width: 100%; border-radius: 12px; }
.information-photo em { font-size: 16px; font-weight: 300; }
.information-column { display: grid; grid-template-columns: repeat(1, 1fr); column-gap: 16px; row-gap: 16px; }


/* ### jobs ### */
.jobs { padding-bottom: 40px;  padding-top: 40px;}
.jobs-column { margin-bottom: 40px; display: grid; grid-template-columns: repeat(1, 1fr); column-gap: 15px; row-gap: 30px; }
.jobs-bottom { display: flex; justify-content: center; width: 100%; text-align: center; }
.jobs-filter { margin-bottom: 40px; padding-top: 40px; }
.jobs-filter select { margin-bottom: 12px; width: 100%; font-size: 16px; font-weight: 700; }
.jobs-filter button { width: 100%; }

/* ### card-bike ### */
.card-bike { position: relative; display: block; border-radius: 12px; overflow: hidden; }
.card-bike-image { width: 100%; }
.card-bike-image img { width: 100%; }
.card-bike-lead { padding: 4px 10px; position: absolute; bottom: 20px; left: 0; width: 100%; font-size: 18px; font-weight: 700; text-align: center; color: var(--color-white); background-color: var(--color-primary); }

/* ### full-image ### */
.full-image { position: relative; background-color: var(--color-black); }
.full-image .centered { width: 100%; }
.full-image .swiper-slide { padding-top: 100px; padding-bottom: 50px; display: flex; align-items: center; }
.full-image-text { position: relative; z-index: 1; width: 100%; max-width: 650px; color: var(--color-white); }
.full-image-text h2 { margin-bottom: 30px; font-size: 40px; color: inherit; }
.full-image-text .button { margin-bottom: 10px; width: 100%; }
.full-image-text .button:last-of-type { margin-bottom: 0; }
.full-image-img { position: absolute; top: 0; left: 0; opacity: 0.8; width: 100%; height: 100%; }
.full-image-img img { width: 100%; height: 100%; object-fit: cover; }
.full-image-arrows { margin-top: 0; position: absolute; top: 40px; left: 20px; z-index: 2; display: flex; }
.full-image-arrows .swiper-button-prev,
.full-image-arrows .swiper-button-next { margin-top: 0; position: unset; display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; font-size: 12px; color: var(--color-white); border: 0; border-radius: 40px; background-color: var(--color-primary); inset: 0; }
.full-image-arrows .swiper-button-prev .swiper-navigation-icon,
.full-image-arrows .swiper-button-next .swiper-navigation-icon { display: none; }
.full-image-arrows .swiper-button-prev { margin-right: 10px; }
.full-image-arrows .swiper-button-prev i { transform: rotate(180deg); }
.full-image.is-reverse .full-image-text { margin-left: auto; text-align: right; }
.full-image.is-reverse .full-image-arrows { right: 20px; left: unset; }

/* ### action ### */
.action { margin: 40px 20px; padding-top: 80px; padding-bottom: 80px; position: relative; border-radius: var(--default-radius); background-color: var(--color-primary); overflow: hidden; }
.action-text { margin: 0 auto; position: relative; z-index: 1; max-width: 925px; text-align: center; color: var(--color-white); }
.action-text h2 { font-size: var(--font-size-h1); }
.action-text p { margin-bottom: 20px; }
.action-buttons .button { margin-bottom: 10px; width: 100%; }
.action-buttons .button:last-of-type { margin-bottom: 0; }
.action-image { position: absolute; top: 0; left: 0; opacity: 0.1; width: 100%; height: 100%; }
.action-image img { width: 100%; height: 100%; object-fit: cover; }
.action.inner { background-color: var(--color-secondary); }

/* ### partners ### */
.partners { padding-top: 10px; padding-bottom: 10px; display: flex; align-items: center; border-top: 1px solid rgba(112, 112, 112, 0.1); border-bottom: 1px solid rgba(112, 112, 112, 0.1); }
.partners-title { flex: 0 0 auto; width: 35%; font-size: 14px; font-weight: 700; }
.partners-slider { margin-right: -20px; width: calc(65% + 20px); }

/* ### filter-sticky ### */
.filter-sticky { padding: 20px; position: fixed; bottom: 0; left: 0; z-index: 11; width: 100%; background-color: var(--color-white); }
.filter-sticky .button { width: 100%; }

/* ### footer ### */
.footer { background-color: var(--color-white); }
.footer-information { padding-top: 40px; }
.footer-gap,
.footer-item { margin-bottom: 10px; border: 1px solid rgba(1, 1, 3, 0.1); }
.footer-title { padding: 10px 40px 10px 10px; position: relative; font-size: 14px; font-weight: 700; color: var(--color-black-10); }
.footer-title:after { position: absolute; top: 14px; right: 10px; font-family: var(--font-family-icon), sans-serif; font-size: 8px; transition: var(--base-duration); content: '\e900'; }
.footer-title.active:after { transform: rotate(-180deg); }
.footer-tel a { font-size: 20px; text-decoration: none; color: var(--color-black-10); transition: var(--base-duration); }
.footer-tel a:hover,
.footer-tel a:focus { text-decoration: underline; }
.footer-mail a { font-size: 14px; text-decoration: none; color: var(--color-black-10); transition: var(--base-duration); }
.footer-mail a:hover,
.footer-mail a:focus { text-decoration: underline; }
.footer-opening-time { padding-bottom: 10px; font-size: 14px; color: rgba(1, 1, 3, 0.6); }
.footer-subscribe { margin-top: 10px; margin-bottom: 9px; }
.footer-input { margin-bottom: 10px; }
.footer-input input { padding: 10px 15px; }
.footer-subscribe .button { padding: 8px 15px; width: 100%; }
.footer-social-media { padding-bottom: 10px; display: flex; }
.footer-social-media a { margin-right: 10px; font-size: 32px; text-decoration: none; color: var(--color-primary); border: 1px solid var(--color-white); border-radius: 50px; transition: var(--base-duration); }
.footer-social-media a:last-of-type { margin-right: 0; }
.footer-social-media a:focus,
.footer-social-media a:hover { text-decoration: none; color: var(--color-secondary); }
.footer-check { padding-bottom: 10px; font-size: 14px; font-weight: normal; }
.footer-check label { margin-bottom: 0; padding-left: 28px; position: relative; display: inline-block; font-size: 12px; font-weight: 300; color: var(--color-black-10); }
.footer-check label a { color: var(--color-black-10); }
.footer-check label a:focus,
.footer-check label a:hover { text-decoration: none; color: var(--color-black-10); }
.footer-check input[type='checkbox'] { position: absolute; top: -1px; left: 0; }
.footer-check a { color: var(--color-primary); transition: var(--base-duration); }
.footer-check a:focus,
.footer-check a:hover { color: var(--color-blue); }
.footer-holder { padding-bottom: 20px; border-bottom: 1px solid rgba(1, 1, 3, 0.1); }
.footer-column ul { padding-bottom: 10px; }
.footer-column a { text-decoration: none; color: var(--color-black-10); transition: var(--base-duration); }
.footer-column a:focus,
.footer-column a:hover { text-decoration: underline; }
.footer-column address { margin-bottom: 15px; font-style: normal; }
.footer-all-misuse { margin-top: 5px; margin-bottom: 10px; }
.hidden-menu { padding: 0 10px; max-height: 0; overflow: hidden; transition: max-height 0.3s ease; }
.footer.gap-bottom { margin-bottom: 88px; }

/* ### copyright ### */
.copyright { padding-top: 10px; padding-bottom: 10px; text-align: center; color: var(--color-black-10); }
.copyright-link { margin-bottom: 10px; display: flex; flex-wrap: wrap; justify-content: center; font-size: 14px; font-weight: 300; }
.copyright-link a:before { margin: 0 10px; display: inline-block; width: 1px; height: 14px; vertical-align: middle; background-color: var(--color-black-10); content: ''; }
.copyright-link a { text-decoration: none; color: var(--color-black-10); }
.copyright-link a:focus,
.copyright-link a:hover { text-decoration: underline; }
.copyright .google-review { margin: 0 auto; }

/* ### swiper ### */
.swiper-button-prev,
.swiper-button-next { margin-top: 0; position: unset; z-index: 2; display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; font-size: 10px; color: var(--color-white); border: 0; border-radius: 50px; background-color: var(--color-primary); transition: var(--base-duration); inset: auto; }
.swiper-button-prev:after,
.swiper-button-next:after { display: none; }
.swiper-button-prev { margin-right: 10px; }
.swiper-button-prev i { transform: rotate(180deg); }
.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled { opacity: 1; background-color: rgba(0, 89, 169, 0.2); }
.swiper-button-prev:focus,
.swiper-button-prev:hover,
.swiper-button-next:focus,
.swiper-button-next:hover { background-color: var(--color-primary); }


/* =========================================================
   Mega Menu
   ========================================================= */

.has-megamenu { position: static!important; }
.has-megamenu .megamenu { padding: 30px 0; position: absolute; top: 100%; left: 0; opacity: 0; visibility: hidden; width: 100%; background-color: var(--color-white); transition: var(--base-duration); box-shadow: 0 2px 5px rgb(0, 0, 0, 0.16); }
.has-megamenu:hover .megamenu { opacity: 1; visibility: visible; }
.megamenu-inner { display: flex; flex-wrap: wrap; gap: 30px; justify-content: flex-start; }
.megamenu-column { flex: 0 0 auto; min-width: 160px; position: relative; width: calc(25% - 25px); }
.megamenu-heading { margin-bottom: 10px; display: block; font-size: 16px; font-weight: 700; color: var(--color-primary)!important; }
.megamenu-heading--link { text-decoration: none; transition: var(--base-duration); font-weight: 700; color: var(--color-primary)!important; }
.megamenu-heading--link:hover,
.megamenu-heading--link:focus { color: var(--color-secondary)!important; }
.megamenu-column ul { list-style: none; position: relative!important; top:0!important; box-shadow: none!important; width: 100%!important; }
.megamenu-column li { margin-bottom: 4px; width: 100%; padding-left: 0!important; padding-top: 6px!important; padding-bottom: 6px!important; }
.megamenu-column li a { font-size: 14px; font-weight: 500; text-transform: none; text-decoration: none; color: var(--color-black); transition: var(--base-duration); line-height: 18px; }
.megamenu-column li a:hover,
.megamenu-column li a:focus { color: var(--color-secondary); }

/* Verberg standaard dropdown UL op mega menu items */
.has-megamenu > ul { display: none; }

/* ### search ### */
.search-head { margin-bottom: 30px; padding-top: 4px; }
.search-head h1 { margin-bottom: 6px; }
.search-head p { margin-bottom: 0; color: var(--color-gray-100); }
.search-section { margin-bottom: 50px; }
.search-section > h2 { margin-bottom: 20px; }
.search-section .brands-column,
.search-section .jobs-column { margin-bottom: 0; }

@media only screen and (min-width: 768px) {
	.search-section { margin-bottom: 80px; }
}

/* =========================================================
   Gravity Forms — Nieuwsbrief (ID 1)
   ========================================================= */

#gform_wrapper_1 .gform_heading { display: none; }
#gform_wrapper_1 .gform_footer { display: none; }
#gform_wrapper_1 .gform_fields { display: flex; flex-wrap: wrap; gap: 10px; }
#gform_wrapper_1 #field_1_5 { order: 3; width: 100%; }
#gform_wrapper_1 #field_1_1,
#gform_wrapper_1 #field_1_4 { flex: 1; }
#field_submit { flex: 0 0 auto; }
#field_submit .gform-button { background-color: var(--color-primary); border: 2px solid var(--color-primary); color: var(--color-white); border-radius: var(--default-radius); font-family: var(--font-family-base); font-size: 16px; font-weight: 500; cursor: pointer; transition: var(--base-duration); }
#field_submit .gform-button:hover,
#field_submit .gform-button:focus { background-color: var(--color-blue); border-color: var(--color-blue); }

.ginput_container_consent{ display: flex; gap:4px; align-items: center; }
.gfield_consent_label{ font-size: 12px; }
.gform_required_legend{ display:none!important; }
.gfield--input-type-consent{ display: flex!important; align-items: center; }
.gfield--input-type-consent input{ margin-bottom: 0px; }
.gform-button{ margin-bottom: 0px!important; }
.gfield_validation_message{ display:none!important; }



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

@media only screen and (min-width: 768px) {
	:root {
		--font-size-h1: 40px;
	}
	#wrapper { padding-top: 108px; }
	.header-logo { width: 260px; }
	.header-top li { margin-right: 20px; }
	.header-top li i { margin-top: -3px; margin-right: 2px; }
	.header-top li span { display: inline-block; }
	.header-top li .tooltip-text { display: none; }
	.header.sticky { transform: translateY(-61px); }
	.hero { padding-top: 80px; padding-bottom: 150px; }
	.hero-text h1 { margin-bottom: 20px; line-height: 1.35; }
	.hero-text p { margin-bottom: 31px; }
	.hero-buttons { display: flex; justify-content: center; }
	.hero-buttons .button { margin-right: 15px; margin-bottom: 0; width: auto; min-width: 260px; }
	.hero-buttons .button:last-of-type { margin-right: 0; }
	.google-review { width: 380px; font-size: 16px; }
	.google-review ul { margin: 0 9px; }
	.google-review li { font-size: 14px; }
	.google-review a { margin-right: 10px; }
	.hero .google-review { bottom: 20px; left: 50%; width: 380px; border-radius: var(--default-radius); transform: translateX(-50%); }
	.usp { margin: 0; }
	.usp-item { font-size: var(--font-size-base); }
	.popular-button { margin-top: 40px; }
	.popular-shape { bottom: -80px; }
	.popular-nav { margin-top: 40px; }
	.card-popular-text { padding: 53px 20px 17px; }
	.discover-button { margin-top: 40px; }
	.card-discover-text { padding: 28px 29px 29px; }
	.card-review { padding: 29px; }
	.about {display: flex; flex-wrap: wrap; }
	.about-left { margin-bottom: 0; padding-right: 30px; width: 50.5%; }
	.about-right { width: 49.5%; }
	.about-right img { height: 100%; object-fit: cover; }
	.about.reverse { flex-direction: row-reverse; }
	.about.reverse .about-left { padding-right: 0; padding-left: 30px; }
	.choose-row { margin-top: 23px; margin-left: auto; grid-template-columns: repeat(2, 1fr); gap: 29px 33px; max-width: 1070px; }
	.choose-shape { width: 740px; }
	.card-choose { margin-top: 0; margin-left: 61px; padding: 32px 29px 26px; height: 100%; }
	.card-choose-icon { top: 50%; left: -61px; transform: translateY(-50%) translateX(0); }
	.blog-button { margin-top: 40px; }
	.card-blog-text { padding: 24px 29px 22px; }
	.card-blog-text p { margin-bottom: 28px; }
	.appointment-slider { display: flex; flex-wrap: wrap; }
	.appointment-slider .swiper { height: 100%; }
	.appointment-slider-nav { padding-right: 14px; order: 1; width: 16%; }
	.appointment-slider-nav .swiper { height: 466px; }
	.appointment-slider-watch { margin-bottom: 0; padding-left: 2px; order: 2; width: 84%; }
	.appointment-slider-item { height: 100%; }
	.card-appointment { padding: 22px 29px 19px; }
	.card-appointment-field a { font-size: 16px; }
	.description-column { padding: 26px 30px 23px; }
	.description-extra { grid-template-columns: repeat(2, 1fr); }
	.history-nav { margin-top: 30px; }
	.card-history-text { padding: 25px 30px 20px; }
	.team-holder { display: flex; flex-wrap: wrap; }
	.team-left { margin-bottom: 0; padding-right: 13px; width: 37%; }
	.team-right { padding-left: 3px; width: 63%; }
	.team-row { grid-template-columns: repeat(2, 1fr); gap: 15px; }
	.information-column { grid-template-columns: repeat(2, 1fr); }
	.brands-column,
	.jobs-column { grid-template-columns: repeat(2, 1fr); }
	.brands-sort select { width: auto; min-width: 220px; }
	.location img { min-height: auto; }
	.faqs-title { width: 23.8%; }
	.faqs-right { flex: 1; }
	.jobs-filter { display: flex; flex-wrap: wrap; justify-content: center; column-gap: 16px; }
	.jobs-filter select { margin-bottom: 0; max-width: 317px; }
	.jobs-filter button { max-width: 260px; }
	.full-image .swiper-slide { height: 500px; }
	.full-image-text .button { width: auto; min-width: 278px; }
	.full-image-arrows { top: 25%; }
	.connect-intro,
	.connect-right { width: 48%; }
	.action-text h2 { margin-bottom: 20px; line-height: 1.35; }
	.action-text p { margin-bottom: 31px; }
	.action-buttons { display: flex; justify-content: center; }
	.action-buttons .button { margin-right: 15px; margin-bottom: 0; width: auto; min-width: 260px; }
	.action-buttons .button:last-of-type { margin-right: 0; }
	.partners-title { width: 20%; font-size: 18px; }
	.partners-slider { margin-right: 0; width: 80%; }
	.footer-subscribe { position: relative; display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
	.footer-social-media a { margin-right: 20px; }
	.footer-title { font-size: 18px; }
	.footer-title:after { font-size: 12px; }
}

@media only screen and (min-width: 1025px) {
	#wrapper { padding-top: 136px; }
	.centered { padding-right: 120px; padding-left: 120px; }
	.header-holder { padding-top: 0; padding-bottom: 0; }
	.header-menu { display: block; }
	.mobile-menu { display: none; }
	.header .button { display: inline-flex; }
	.header-search { display: block; width: 300px; }
	.header.sticky { transform: translateY(-70px); }
	.offer { padding-top: 10px; padding-bottom: 7px; font-size: 16px; }
	.hero { padding-top: 100px; padding-bottom: 180px; }
	.popular .swiper { margin-right: 0; }
	.popular-nav { margin-top: 0; position: absolute; top: 60px; right: 0; }
	.discover .swiper { margin-right: 0; }
	.about-left { padding-right: 50px; }
	.about.reverse .about-left { padding-left: 50px; }
	.review .swiper { margin-right: 0; }
	.blog .swiper { margin-right: 0; }
	.card-appointment-field a { font-size: 12px; }
	/* History — eigen carousel (desktop) */
	.history-slide { width: 428px; }
	.history-slide .card-history { display: flex; flex-direction: row-reverse; height: 100%; transition: none; }
	.history-slide .card-history-image { display: none; }
	.history-slide .card-history-text { width: 100%; }
	.history-slide.is-active .card-history-image { display: block; width: 41.7%; flex: 0 0 41.7%; }
	.history-slide.is-active .card-history-image img { width: 100%; height: 100%; object-fit: cover; }
	.history-slide.is-active .card-history-text { width: 58.3%; }
	.history-slide.is-active .card-history--no-image .card-history-text { width: 100%; }
	.brands-right { flex: 1; }
	.brands-right .card-cta { display: none; }
	.brands-left { margin-right: 30px; width: 28%;  }
	.brands-left .card-cta { margin-top: 39px; display: block; }
	
	.brands .js-close-filter { display: none; }
	.brands-phone-filters { padding: 0; width: auto; height: auto; position: unset; top: auto; left: auto; z-index: 0; background-color: transparent; overflow-y: unset; }
	.brands-button { margin-bottom: 0; }
	.information-bg { padding: 73px 30px 50px; }
	.seo-wrap { grid-template-columns: repeat(2, 1fr); }
	.full-image .swiper-slide { height: 600px; }
	.team .swiper { margin-right: 0; }
	.connect-intro { width: 100%; }
	.connect-right { width: 100%; }
	.connect-hours { width: 47%; }
	.card-form { padding: 22px 30px 30px; }
	.card-form-group { grid-template-columns: repeat(2, 1fr); }
	.full-image-arrows { margin-left: 100px; }
	.full-image.is-reverse .full-image-arrows { right: 120px; }
	.footer-subscribe { grid-template-columns: repeat(2, 1fr); }
	.footer-item { margin-bottom: 0; border: 0; border-radius: 0; }
	.footer-item.subscribe { width: 400px; }
	.footer-title { margin-bottom: 5px; padding: 0; }
	.footer-title:after { display: none; }
	.footer-information { padding-top: 70px; padding-bottom: 73px; display: flex; flex-wrap: wrap; justify-content: space-between; border-bottom: 1px solid rgba(112, 112, 112, 0.1); }
	.footer-information .footer-title { margin-bottom: 4px; }
	.footer-tel { margin-bottom: 3px; }
	.footer-tel a { font-size: 20px; }
	.footer-tel i { margin-right: 5px; display: inline-block; }
	.footer-mail { padding-left: 31px; }
	.footer-opening-time { padding-bottom: 0; padding-left: 31px; }
	.footer-input { margin-bottom: 0; }
	.footer-gap { margin-bottom: 0; border: 0; border-radius: 0; }
	.footer-holder { padding-top: 71px; padding-bottom: 71px; display: grid; grid-template-columns: repeat(4, 1fr); gap: 15px; }
	.footer-column ul { padding-bottom: 0; }
	.footer-column li { margin-bottom: 4px; }
	.footer-column li:last-of-type { margin-bottom: 0; }
	.footer-column address { margin-bottom: 40px; }
	.footer-all-misuse { margin-top: 36px; margin-bottom: 0; }
	.footer-social-media { padding-bottom: 0; }
	.footer-check { padding-bottom: 0; }
	.footer.gap-bottom { margin-bottom: 0; }
	.copyright { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; }
	.copyright-link { margin-bottom: 0; }
	.copyright .google-review { margin: 0 0 0 auto; }
	.hidden-menu { padding: 0; max-height: inherit; overflow: inherit; transition: unset; }
	.filter-sticky { display: none; }
}

@media only screen and (min-width: 1200px) {
	#wrapper { padding-top: 139px; }
	.header-top li { font-size: 16px; }
	.header-top li i { font-size: 20px; }
	.header-search { width: 450px; }
	.header-menu li { margin-right: 30px; }
	.header-menu li a { font-size: 18px; }
	.header-menu li ul { width: auto; }
	.header-menu li li a { font-size: 16px; white-space: nowrap; }
	.hero { padding-top: 130px; padding-bottom: 249px; }
	.about { align-items: center; }
	.appointment-holder { display: flex; flex-wrap: wrap; }
	.appointment-left { margin-bottom: 0; padding-right: 9px; width: 67%; }
	.appointment-right { padding-left: 7px; width: 33%; }
	.card-popular-text { padding-right: 29px; padding-left: 29px; }
	.card-history-text { padding-right: 46px; }
	.description-holder { display: flex; flex-wrap: wrap; margin-bottom: 40px; }
	.description-left { margin-bottom: 0; padding-left: 9px; order: 2; width: 33%; }
	.description-right { margin-bottom: 0; padding-right: 30px; order: 1; width: 67%; }
	.team-left { width: 30%; }
	.team-right { width: 70%; }
	.connect-intro,
	.connect-right { width: 48%; }
	.card-team-text { padding: 28px 30px 25px; }
	.full-image-arrows { top: 37%; }
	.full-image .swiper-slide { height: 910px; }
	.description-right { padding-right: 60px; }
	.partners-title { width: 17%; }
	.partners-slider { width: 83%; }
	.brands-left { width: 24.1%; }
	.jobs-column { grid-template-columns: repeat(3, 1fr); }
	.footer-item.subscribe { width: 580px; }
	.footer-subscribe { grid-template-columns: repeat(3, 1fr); }
}

@media only screen and (min-width: 1556px) {
	.centered { padding-right: calc((100% - var(--width-base)) / 2); padding-left: calc((100% - var(--width-base)) / 2); }
	.header-search { width: 536px; }
	.header-top li { margin-right: 50px; }
	.header-menu li { margin-right: 50px; }
	.usp .swiper { display: none; }
	.usp-item { text-align: left; }
	.usp-holder { display: flex; flex-wrap: wrap; justify-content: space-between; }
	.review .review-row { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; }
	.review .google-review { margin-bottom: 0; }
	.team-left { width: 25%; }
	.team-right { width: 75%; }
	.full-image-arrows { margin-left: -660px; left: 50%; }
	.full-image.is-reverse .full-image-arrows { margin-left: 565px; right: unset; left: 50%; }
	.card-appointment-field a { font-size: 16px; }
	.brands-column { grid-template-columns: repeat(3, 1fr); }
	.card-cta { height: 398px; padding-right: 30px; padding-left: 30px; }

}

@media only screen and (min-width: 1680px) {
	.centered-lg { padding-right: calc((100% - var(--width-lg)) / 2); padding-left: calc((100% - var(--width-lg)) / 2); }
	.header-menu li { margin-right: 79px; }
	.review-nav { margin-top: 0; }
	.review .swiper-button-prev,
	.review .swiper-button-next { position: absolute; top: 50%; transform: translateY(-50%); }
	.review .swiper-button-prev { margin-right: 0; left: -52px; }
	.review .swiper-button-next { right: -52px; }
}

@media only screen and (min-width: 1920px) {
	.centered-xl { padding-right: calc((100% - var(--width-xl)) / 2); padding-left: calc((100% - var(--width-xl)) / 2); }
}