/*
 Theme Name:   LMPR (GeneratePress Child Theme)
 Theme URI:    https://lamper-design.nl
 Description:  GeneratePress child theme
 Author:       Team Lamper Design
 Author URI:   https://lamper-design.nl
 Template:     generatepress
 Version:      0.1
*/

@font-face {
  font-display: swap;
  font-family: 'Figtree';
  font-style: normal;
  font-weight: 400;
  src: url('assets/fonts/figtree-v9-latin-regular.woff2') format('woff2');
}

@font-face {
  font-display: swap;
  font-family: 'Figtree';
  font-style: italic;
  font-weight: 400;
  src: url('assets/fonts/figtree-v9-latin-italic.woff2') format('woff2');
}

@font-face {
  font-display: swap;
  font-family: 'Figtree';
  font-style: normal;
  font-weight: 600;
  src: url('assets/fonts/figtree-v9-latin-600.woff2') format('woff2');
}

@font-face {
  font-display: swap;
  font-family: 'Figtree';
  font-style: italic;
  font-weight: 600;
  src: url('assets/fonts/figtree-v9-latin-600italic.woff2') format('woff2');
}
@font-face {
  font-display: swap; 
  font-family: 'Figtree';
  font-style: normal;
  font-weight: 400;
  src: url('assets/fonts/figtree-v9-latin-regular.woff2') format('woff2'); 
}

@font-face {
  font-display: swap; 
  font-family: 'Figtree';
  font-style: normal;
  font-weight: 700;
  src: url('assets/fonts/figtree-v9-latin-700.woff2') format('woff2'); 
}

@font-face {
  font-display: swap;
  font-family: 'Figtree';
  font-style: italic;
  font-weight: 700;
  src: url('assets/fonts/figtree-v9-latin-700italic.woff2') format('woff2');
}

/* Globals */

:root {
    --sitewidth: 1320px;
    --narrow-content: 78ch;
    --container-padding: 1rem;
    --border-radius: .5rem;
    --border-radius-small: .25rem;
    --transition: background-color 0.2s ease 0s;
    --max-text-width: 85ch;
    interpolate-size: allow-keywords;
}

@media (width >= 769px) {

    :root {
        --container-padding: 2rem;
    }

}

/*html {
    overflow-x: clip;
}*/

body {
    overflow-x: hidden;
}

html.mobile-menu-open.slide-opened, 
html:has(.facetwp-flyout.active) {
    overflow: clip;
}

@media (prefers-reduced-motion: no-preference) {

    html {
        scroll-behavior: smooth;
    }

    @view-transition {
        navigation: auto;
    }

}

h1, h2, h3, h4, h5, h6, .h1-style, .h2-style, .h3-style, .h4-style {
    overflow-wrap: anywhere;
    text-wrap: balance;
}

:is(h1,h2,h3,h4,h5,h6) a {
    text-decoration: none;
}

:is(h1,h2,h3,h4,h5,h6) a:hover {
    text-decoration: underline;
}

.entry-content p+:is(h2,h3,h4), 
.entry-content ul+:is(h2,h3,h4,p), 
.entry-content img+:is(h2,h3,h4,p), 
.entry-content figure+:is(h2,h3,h4,p), 
.entry-content iframe+:is(h2,h3,h4,p), 
.entry-content script+:is(h2,h3,h4,p), 
.entry-content div+:is(h2,h3,h4,p), 
.entry-content a+:is(h2,h3,h4,p) {
    margin-top: .75em;
}

p a:hover,
li a:hover {
    text-decoration: none;
}

p,
li:not(.comment),
figcaption {
    text-wrap: pretty;
    /*max-width: 85ch;*/
}

a {
    text-underline-offset: .25em;
}

ul, ol {
	margin-left: 1.5em;
}

input[type="checkbox"],
input[type="radio"] {
	accent-color: var(--accent);
}

a:not([href]) {
    cursor: pointer;
}

ul {
    margin-left: 1.5em;
    list-style: "• ";
}

.entry-content li {
    margin-bottom: 0.25em;
}

.container-padding {
    padding-inline: var(--container-padding);
}

div p:last-child:last-of-type,
.no-margin {
    margin-bottom: 0;
}

.entry-content p+:is(h2,h3,h4) {
    margin-top: .75em;
}

.entry-content > figure:not(.wp-block-gallery) img {
    margin-bottom: 1.5rem;
}

.wp-block-gallery {
    margin-block: 1.25rem;
}

.wp-block-gallery img {
    transition: opacity 250ms ease-in-out;
}

.wp-block-gallery img:hover {
    opacity: .8;
}

.entry-content ol li::marker {
    font-weight: 600;
}

.entry-content .wp-block-embed {
    margin-block: 1.5em;
}

button {
    border-radius: var(--border-radius-small);
    transition: var(--transition);
}

.gb-container p:last-child:last-of-type {
    margin-bottom: 0;
}

figcaption {
	margin-top: .375rem;
	font-weight: 500;
    text-align: center;
}

.list-nostyle {
	list-style-type: '';
	margin: 0;
}

.list-inline {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .75rem 1.25rem;
}

.list-checkmark {
    margin-bottom: 1.5rem;
    font-weight: 400;
}

.list-checkmark li {
    display: flex;
    gap: .75rem;
    padding: .25rem 0;
}

.list-checkmark li::before {
    content: '';
    flex-shrink: 0;
    display: block;
    background-color: var(--accent);
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3C!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--%3E%3Cpath d='M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z'/%3E%3C/svg%3E") no-repeat 50% 50% / 1rem;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3C!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--%3E%3Cpath d='M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z'/%3E%3C/svg%3E") no-repeat 50% 50% / 1rem;
    width: 1rem;
    height: 1rem;
    margin-top: .35rem;
}

.scroll-offset,
[id] {
    scroll-margin-top: 2rem;
}

.line-clamp {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.line-clamp-2 {
    -webkit-line-clamp: 2;
}

.line-clamp-5 {
    -webkit-line-clamp: 5;
}

.isolate {
    isolation: isolate;
}

.primary-button::before,
.secondary-button::before,
.primary-link::before {
    content: '';
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1.25em' height='1.25em' viewBox='0 0 320 512'%3E%3C!--! Font Awesome Pro 6.4.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --%3E%3Cpath d='M273 239c9.4 9.4 9.4 24.6 0 33.9L113 433c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l143-143L79 113c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0L273 239z'/%3E%3C/svg%3E") no-repeat 50% 50% / 1.25em;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1.25em' height='1.25em' viewBox='0 0 320 512'%3E%3C!--! Font Awesome Pro 6.4.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --%3E%3Cpath d='M273 239c9.4 9.4 9.4 24.6 0 33.9L113 433c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l143-143L79 113c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0L273 239z'/%3E%3C/svg%3E") no-repeat 50% 50% / 1.25em;
    width: 1em;
    height: 1em;
    margin-top: -.125rem;
    transition: var(--transition);
}

.primary-button::before {
    background-color: var(--text-contrast);
}

.secondary-button::before,
.primary-link::before {
    background-color: var(--text-base);
}

.secondary-button:hover::before,
.primary-link:hover::before {
    background-color: var(--accent-alt);
}

.h1-style {
    font-size: clamp(2rem, 1.5rem + 2vw, 3.25rem);
    line-height: 1.2em;
    font-weight: 700;
}

.h2-style {
    font-size: clamp(1.5rem, 1.25rem + 1vw, 2.125rem);
    line-height: 1.2em;
    font-weight: 700;
}

.h3-style {
    font-size: clamp(1.125rem, 1.075rem + 0.2vw, 1.25rem);
    line-height: 1.2em;
    font-weight: 700;
}

.h4-style {
    font-size: 1rem;
    line-height: 1.2em;
    font-weight: 700;
}

/* Header */

body:not(.home) .gb-site-header {
    border-bottom: 1px solid var(--canvas-accent);
}

.gb-site-header .wc-block-mini-cart {
    display: block;
}

.gb-site-header .wc-block-mini-cart__button {
    width: 46px;
    height: 46px;
    background-color: var(--canvas-accent);
    border-radius: var(--border-radius-small);
    transition: var(--transition);
}

@media only screen and (max-width:767px) {
    .gb-site-header .wc-block-mini-cart__button {
        width: 38px;
        height: 38px;
        padding: .25em;
    }
}

.gb-site-header .wc-block-mini-cart__button:is(:hover, :focus) {
    background-color: var(--accent);
}

.gb-site-header .wc-block-mini-cart__button svg {
    height: 1.75rem;
    width: 1.75rem;
}

.gb-site-header .wc-block-mini-cart__button .wc-block-mini-cart__badge {
    font-size: .75rem;
}

.gb-site-header .gb-navigation > .gb-menu-container > ul.gb-menu > li:hover > a,
.gb-site-header .gb-navigation > .gb-menu-container > ul.gb-menu > li:hover .sub-menu > li > a:hover  {
    text-decoration: underline;
}

.gb-site-header .gb-menu-container--mobile > ul.gb-menu > li.menu-item {
    padding-block: .5rem;
    border-bottom: 1px solid var(--border-color);
}

.gb-site-header .gb-menu-container--mobile > ul.gb-menu > li.menu-item:first-child {
    padding-top: 0;
}

.gb-site-header .gb-menu-container--mobile > ul.gb-menu > li.menu-item:last-child {
    padding-bottom: .5rem;
    border-bottom: 0;
}

.zoekbalk-wrapper .wp-block-search__inside-wrapper {
    padding: .5rem;
    border-radius: var(--border-radius-small);
}

.zoekbalk-wrapper .wp-block-search__inside-wrapper input.wp-block-search__input {
    border: 0;
    padding-left: 1.5rem;
    background-color: var(--base);
}

.zoekbalk-wrapper .wp-block-search__inside-wrapper input.wp-block-search__input::-webkit-input-placeholder {
    color: var(--text-contr);
}

.zoekbalk-wrapper .wp-block-search__inside-wrapper .wp-block-search__button {
    background-color: var(--accent);
    width: 62px;
    height: 62px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--border-radius-small);
    padding: 0;
    transition: var(--transition);
    border: 1px solid var(--accent);
    flex-shrink: 0;
}

.zoekbalk-wrapper .wp-block-search__inside-wrapper .wp-block-search__button svg {
    transform: scaleX(-1);
    width: 2rem;
    height: 2rem;
    transition: var(--transition);
}

.zoekbalk-wrapper .wp-block-search__inside-wrapper .wp-block-search__button:hover {
    background-color: var(--accent-alt);
}

.zoekbalk-wrapper .wp-block-search__inside-wrapper .wp-block-search__button:hover  svg {
    fill: var(--text-contrast);
}

/*.wc-block-mini-cart__drawer .wc-block-mini-cart__footer-actions .wp-block-woocommerce-mini-cart-cart-button-block {
    box-shadow: none !important;
    border: 1px solid var(--text-base);
    border-radius: var(--border-radius-small);
    transition: var(--transition);
}

.wc-block-mini-cart__drawer .wc-block-mini-cart__footer-actions .wp-block-woocommerce-mini-cart-checkout-button-block {
    border-radius: var(--border-radius-small);
    transition: var(--transition);
}*/

/* Home */

.product-slider .gb-carousel-control {
    position: absolute;
    z-index: 10;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 5rem;
    height: 5rem;
    top: calc(50% - (5rem / 2));
    margin-top: 0;
    border-radius: 100vw;
    background-color: var(--canvas-base);
    border: 0;
    transition: var(--transition);
    filter: drop-shadow(0 2px 8px rgb(0 0 0 / .12));
}

@media (min-width: 1400px) {
    .product-slider .gb-carousel-control.gb-carousel-control--next {
        right: calc(-1 * ((.75rem / 2) + (5rem / 2)));
    }

    .product-slider .gb-carousel-control.gb-carousel-control--previous {
        left: calc(-1 * ((.75rem / 2) + (5rem / 2)));
    }
}

.product-slider .gb-carousel-control:hover {
    background-color: var(--accent-alt);
}

.product-slider .gb-carousel-control svg {
    transition: var(--transition);
}

.product-slider .gb-carousel-control:hover svg {
    fill: var(--text-contrast);
}

.product-slider .gb-carousel-control[aria-disabled=true] {
    opacity: 0;
}

@media (max-width: 1400px) {
    .product-slider .gb-carousel-control.gb-carousel-control--next {
        right: .5rem;
    }

    .product-slider .gb-carousel-control.gb-carousel-control--previous {
        left: .5rem;
    }

    .product-slider .gb-carousel-control {
        width: 4rem;
        height: 4rem;
    }

    .product-slider .gb-carousel-control svg {
        width: 1.75rem !important;
        height: 1.75rem !important;
    }
}

@media (max-width: 767px) {
    .product-slider .gb-carousel-control {
        width: 3.5rem;
        height: 3.5rem;
    }

    .product-slider .gb-carousel-control svg {
        width: 1.5rem !important;
        height: 1.5rem !important;
    }
}

.product-slider .gb-carousel-item > a:hover h3 {
    color: var(--accent-alt);
    text-decoration: underline;
}

.product-slider .gb-carousel-item .product-slider-icon {
    opacity: 0;
    transition: opacity 0.5s ease 0s;
}

.product-slider .gb-carousel-item > a:hover .product-slider-icon {
    opacity: 1;
}

.product-slider .gb-carousel-item .image-wrapper img {
    mix-blend-mode: multiply;
}

.category-grid-title {
    margin-top: 1.25rem !important;
    margin-bottom: 0 !important;
}

@media only screen and (max-width:767px) {
    .category-grid-title {
        margin-top: 1rem !important;
    }
}

/* Footer */

@media screen and (min-width: 769px) {
    .footer-accordion-item .gb-accordion__toggle {
        pointer-events:none
    }

    .footer-accordion-item .gb-accordion__toggle .gb-accordion__toggle-icon {
        display: none
    }

    .footer-accordion-item .gb-accordion__content {
        max-height: inherit!important;
        visibility: visible!important
    }
}

.footer-accordion-item ul {
    list-style-type: "";
    margin: 0px;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.footer-accordion-item a:hover {
    text-decoration: none;
}

@media only screen and (max-width:767px) {
    .footer-accordion-item:not(:last-child) {
        background-image: linear-gradient(to right, #bbb 50%, #fff0 0%);
        background-position: bottom;
        background-size: 8px 1px;
        background-repeat: repeat-x;
        padding-bottom: 1px;
    }

    .footer-accordion-item .gb-accordion__toggle,
    .footer-accordion-item .gb-accordion__content > div {
        padding: 1rem 1.5rem;
        margin: 0;
    }

    .footer-accordion-item .gb-accordion__content > div {
        padding-bottom: 1.5rem;
    }
}

/* Breadcrumb */

.rank-math-breadcrumb {
    font-size: .875rem;
}

.rank-math-breadcrumb p {
    margin-bottom: 0;
}

.rank-math-breadcrumb a {
    color: var(--text-alt);
    text-decoration: none;
}

.rank-math-breadcrumb a:hover {
    text-decoration: underline;
}

.rank-math-breadcrumb .separator {
    position: relative;
    margin-inline: .25rem;
    color: var(--text-contrast);
}

.rank-math-breadcrumb .separator::before {
    content: '';
    display: inline-block;
    position: absolute;
    top: 0;
    left: -1px;
    background-color: var(--text-alt);
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1.125em' height='1.125em' viewBox='0 0 320 512'%3E%3C!--! Font Awesome Pro 6.4.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --%3E%3Cpath d='M273 239c9.4 9.4 9.4 24.6 0 33.9L113 433c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l143-143L79 113c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0L273 239z'/%3E%3C/svg%3E") no-repeat 50% 50%/1.125em;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1.125em' height='1.125em' viewBox='0 0 320 512'%3E%3C!--! Font Awesome Pro 6.4.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --%3E%3Cpath d='M273 239c9.4 9.4 9.4 24.6 0 33.9L113 433c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l143-143L79 113c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0L273 239z'/%3E%3C/svg%3E") no-repeat 50% 50%/1.125em;
    width: 1.125em;
    height: 1.125em;
}

.rank-math-breadcrumb .last {
    font-weight: 600;
}

/* Product archive */

.archive.woocommerce .site-main {
    margin: 0;
}

ul.products .products {
    gap: 1.5rem;
}

ul.products .product .wc-product-image .inside-wc-product-image {
    display: block;
}

ul.products .product .wc-product-image {
    position: relative;
    margin-bottom: .75rem;
    border-radius: var(--border-radius);
    background-color: var(--canvas-accent);
}

ul.products .product .wc-product-image img {
    mix-blend-mode: multiply;
    display: block;
    margin-left: auto;
    margin-right: auto;
    object-fit: cover;
    vertical-align: middle;
}

ul.products .product .wc-product-image {
    position: relative;
    margin-bottom: .75rem;
    border-radius: var(--border-radius);
    background-color: var(--canvas-accent);
}

ul.products .product .inside-wc-product-image::after {
    content: '';
    position: absolute;
    bottom: 1rem;
    right: 1rem;
    background-color: var(--canvas-base);
    background-image: url("data:image/svg+xml,%3Csvg fill='none' viewBox='0 0 36 36' height='36' width='36' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='%230A293B' d='M17.0819 7.95958C14.3551 8.12893 11.4348 9.1226 8.61504 10.8406C6.90489 11.8825 5.14546 13.2343 3.56395 14.7213C2.43743 15.7806 0.993367 17.3281 0.800947 17.6823C0.693955 17.8792 0.693955 18.1209 0.800947 18.3178C1.06699 18.8075 2.99727 20.8038 4.37395 22.0129C7.59782 24.8445 10.923 26.729 14.1842 27.5728C16.7208 28.2291 19.2791 28.2291 21.8157 27.5728C25.0821 26.7276 28.3256 24.8891 31.6439 22.0017C32.8249 20.9741 35.0806 18.6235 35.2308 18.2639C35.301 18.0961 35.2915 17.8662 35.2075 17.6964C34.983 17.2428 32.8962 15.0896 31.5179 13.8894C29.5316 12.1597 27.3099 10.6623 25.3461 9.72942C22.4944 8.37484 19.7745 7.79236 17.0819 7.95958ZM17.2102 9.36438C13.7413 9.56281 9.94275 11.2493 6.28195 14.2165C5.1684 15.119 3.55653 16.6414 2.64768 17.6491L2.33109 18.0001L2.64768 18.3511C3.1713 18.9316 4.62375 20.3604 5.23806 20.8992C7.2636 22.6759 9.22815 24.0144 11.2095 24.9675C15.9368 27.2417 20.2003 27.2192 24.9299 24.8952C26.8868 23.9336 28.7827 22.6345 30.7618 20.8991C31.3758 20.3606 32.8281 18.9321 33.3522 18.3511L33.6688 18.0001L33.3522 17.6491C32.8286 17.0685 31.3761 15.6398 30.7618 15.1009C27.9878 12.6677 25.2922 11.0325 22.5485 10.1188C21.1965 9.6685 20.0264 9.43936 18.6814 9.36142C17.9913 9.32146 17.9591 9.32154 17.2102 9.36438ZM17.4959 11.5558C14.7214 11.7761 12.4081 13.7306 11.7225 16.4341C11.4858 17.3674 11.4858 18.6327 11.7225 19.5661C12.3091 21.879 14.121 23.6909 16.4339 24.2775C17.3673 24.5142 18.6326 24.5142 19.5659 24.2775C21.8789 23.6909 23.6908 21.879 24.2774 19.5661C24.5141 18.6327 24.5141 17.3674 24.2774 16.4341C23.6367 13.908 21.5367 11.9935 18.9899 11.6139C18.526 11.5448 17.9282 11.5215 17.4959 11.5558ZM17.5854 12.9621C15.6508 13.1113 13.9274 14.4226 13.2537 16.2577C12.6799 17.8207 12.9318 19.6368 13.9067 20.967C15.9254 23.7214 19.9889 23.7499 22.0456 21.0241C23.5341 19.0513 23.3542 16.264 21.6229 14.4768C20.8194 13.6473 19.6053 13.0563 18.5438 12.9779C18.3932 12.9668 18.197 12.9524 18.1079 12.946C18.0188 12.9396 17.7837 12.9468 17.5854 12.9621ZM17.9099 14.4181C17.8901 14.4245 17.8297 14.4395 17.7756 14.4514C17.6533 14.4784 17.4384 14.6636 17.3651 14.8054C17.29 14.9506 17.2922 15.2572 17.3696 15.4202C17.4367 15.5616 17.6014 15.7192 17.7353 15.7701C17.7801 15.7871 17.9806 15.8179 18.1809 15.8384C18.7834 15.9002 19.2215 16.1159 19.6132 16.5434C19.9839 16.948 20.1599 17.4169 20.1599 18.0001C20.1599 18.641 19.9784 19.0822 19.5302 19.5303C19.0821 19.9785 18.6409 20.1601 17.9999 20.1601C17.4168 20.1601 16.9478 19.984 16.5432 19.6133C16.114 19.22 15.9002 18.784 15.8376 18.1744C15.7941 17.7504 15.7388 17.6086 15.559 17.4604C15.4346 17.3579 15.1772 17.2759 15.0549 17.2998C15.0213 17.3064 14.9497 17.321 14.8956 17.3324C14.7733 17.3581 14.5599 17.5421 14.4804 17.6904C14.4357 17.7739 14.422 17.8841 14.4264 18.1276C14.4426 19.0334 14.798 19.8434 15.4773 20.5227C16.1963 21.2417 16.988 21.5706 17.9999 21.5706C19.0119 21.5706 19.8035 21.2417 20.5226 20.5227C21.2416 19.8037 21.5705 19.012 21.5705 18.0001C21.5705 16.9881 21.2416 16.1965 20.5226 15.4774C19.8653 14.8201 19.1308 14.4872 18.1979 14.4236C18.0593 14.4141 17.9297 14.4116 17.9099 14.4181Z' clip-rule='evenodd' fill-rule='evenodd'%3E%3C/path%3E%3C/svg%3E");
    background-size: 2.25rem;
    background-position: center;
    background-repeat: no-repeat;
    width: 3.25rem;
    height: 3.25rem;
    border-radius: 100vw;
    opacity: 0;
    transition: opacity 500ms ease;
}

ul.products .product .woocommerce-loop-product__link:hover .inside-wc-product-image::after {
    opacity: 1;
}

ul.products .woocommerce-loop-product__title {
    font-size: 1.25rem !important;
    margin-bottom: .25em !important;
}

ul.products li.product > a:hover .woocommerce-loop-product__title {
    text-decoration: underline;
}

ul.products .price {
    font-size: 1.5rem !important;
    color: var(--text-base) !important;
}

/* Single product */

.single-product h1.entry-title {
    font-size: 34px;
    margin-bottom: 1rem;
}

@media (min-width: 769px) {
    .single-product .site-main {
        margin-top: -1.25rem;
    }

    .single-product .entry-content>.product {
        display: grid;
        grid-auto-columns: minmax(0, 1fr);
        grid-auto-flow: column;
        column-gap: 2.5rem;
    }

    .single-product .woocommerce-product-gallery {
        grid-column: 1 / 2;
        grid-row: 2 / 3;
        width: auto !important;
        margin-right: 0;
    }

    .single-product .summary {
        grid-column: 2 / 3;
        grid-row: 2 / 3;
        align-self: flex-start;
    }
}

.woocommerce-product-gallery__image {
    background-color: var(--canvas-accent);
    border-radius: var(--border-radius-small);
}

.woocommerce-product-gallery img {
    mix-blend-mode: multiply;
    object-fit: contain;
    aspect-ratio: 1 / 1;
    height: 100% !important;
    border-radius: var(--border-radius-small);
}

.single-product .flex-control-nav {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    margin-top: 0.75rem !important;
    gap: 0.75rem;
}

@media (min-width: 769px) {
    .single-product .flex-control-nav {
        grid-template-columns: repeat(2, 1fr);
    }
}

.single-product .flex-control-nav li {
    background-color: var(--canvas-accent);
    max-width: revert !important;
    width: revert !important;
    padding: 0 !important;
    border-radius: var(--border-radius-small);
}

.woocommerce-product-gallery img {
    mix-blend-mode: multiply;
    height: 100% !important;
    object-fit: contain;
    aspect-ratio: 1 / 1;
    border-radius: var(--border-radius-small);
}

.single-product .summary {
    --summary-gap: 1.25rem;
    position: sticky;
    top: 1.5rem;
}

.single-product .summary.entry-summary .price {
    font-size: clamp(1.5rem, 1.25rem + 1vw, 2.125rem);
    color: var(--text-base);
    margin-bottom: 1.5rem;
}

.single-product .summary ul {
    margin-block: .5rem 1.5rem;
}

.single-product table.variations tr td,
.single-product table.variations tr th {
    display: flex;
    padding: 0px !important;
}

.woocommerce div.product form.cart .variations select {
    border-radius: var(--border-radius-small);
    width: 100%;
    margin-right: 0 !important;
    padding: .875rem 1rem;
}

.single-product-tussenmaat-wrapper {
    display: flex;
    align-items: center;
    gap: .75rem;
    background-color: var(--canvas-accent);
    padding: .5rem .75rem;
    border-radius: var(--border-radius-small);
    margin-bottom: 1.5rem;
}

.single-product-tussenmaat-wrapper svg {
    width: 1em;
    height: 1em;
    flex-shrink: 0;
}

.single-product-tussenmaat-wrapper svg path {
    fill: var(--text-base);
}

.single-product .woocommerce-variation-add-to-cart {
    flex-wrap: nowrap;
    gap: .5rem;
}

@media (min-width: 1025px) {
    .single-product .woocommerce-variation-add-to-cart {
        gap: .75rem;
    }
}

.single-product .quantity input.qty {
    height: 100%;
    border-radius: var(--border-radius-small);
}

.single-product .single_add_to_cart_button {
    align-items: center;
    justify-content: center;
    width: 100%;
    display: flex !important;
    padding: 1rem !important;
    gap: .25rem;
    border-radius: var(--border-radius-small) !important;
    background-color: var(--cta) !important;
}

.single-product .single_add_to_cart_button::before {
    content: '';
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 640'%3E%3C!--!Font Awesome Free v7.3.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2026 Fonticons, Inc.--%3E%3Cpath d='M352 128C352 110.3 337.7 96 320 96C302.3 96 288 110.3 288 128L288 288L128 288C110.3 288 96 302.3 96 320C96 337.7 110.3 352 128 352L288 352L288 512C288 529.7 302.3 544 320 544C337.7 544 352 529.7 352 512L352 352L512 352C529.7 352 544 337.7 544 320C544 302.3 529.7 288 512 288L352 288L352 128z'/%3E%3C/svg%3E");
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 640'%3E%3C!--!Font Awesome Free v7.3.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2026 Fonticons, Inc.--%3E%3Cpath d='M352 128C352 110.3 337.7 96 320 96C302.3 96 288 110.3 288 128L288 288L128 288C110.3 288 96 302.3 96 320C96 337.7 110.3 352 128 352L288 352L288 512C288 529.7 302.3 544 320 544C337.7 544 352 529.7 352 512L352 352L512 352C529.7 352 544 337.7 544 320C544 302.3 529.7 288 512 288L352 288L352 128z'/%3E%3C/svg%3E");
    background-color: var(--text-contrast);
    width: 1rem;
    height: 1rem;
    transition: var(--transition);
}

.woocommerce-tabs {
    clear: both;
}

.wc-tabs {
    display: flex;
    position: sticky !important;
    width: 100%;
    top: 0;
    z-index: 2;
    flex-direction: row !important;
    overflow-x: auto !important;
    align-items: center;
    gap: .75rem;
    background-color: var(--canvas-alt);
    box-shadow: 0 0 0 100vmax var(--canvas-alt);
    clip-path: inset(0 -100vmax);
    padding-block: 1rem !important;
    margin-left: 0;
    list-style-type: '';
    overflow: hidden;
}

.wc-tabs a {
    display: block;
    background-color: var(--canvas-base) !important;
    font-weight: 600;
    text-decoration: none !important;
    padding: 1rem 1.25rem !important;
    border-radius: 100vw !important;
    border: none !important;
    transition: var(--transition);
}

.wc-tabs a:focus {
    color: var(--text-base) !important;
}

.wc-tabs a:hover {
    background-color: var(--accent) !important;
    color: var(--text-contrast) !important;
}

/*.wc-tabs a::after {
    content: '';
    position: absolute;
    inset: 0;
}*/

@media (min-width: 1025px) {
    .wc-tabs::before {
        margin-right: 0.5rem;
        content: "Schnell zu: " !important;
        position: static !important;
        width: revert !important;
    }
}

.woocommerce-Tabs-panel {
    --tabs-max-width: 1162px;
    display: block !important;
    scroll-margin-top: 150px;
    max-width: var(--tabs-max-width);
    margin: 2rem auto !important;
}

.woocommerce-Tabs-panel:not(.woocommerce-Tabs-panel--faq) {
    border-bottom: 1px solid var(--border-color);
    padding-bottom: 2rem !important;
}

.woocommerce-Tabs-panel--faq .faq-container > h2 {
    margin-bottom: 2.5rem;
}

@media only screen and (max-width:767px) {
    .woocommerce-Tabs-panel--faq .faq-container > h2 {
        margin-bottom: 1.25rem;
    }
}

.single-product .related.products {
    max-width: var(--gb-container-width);
    padding-left: 2rem;
    padding-right: 2rem;
    margin: 4rem auto 3rem;
}

.single-product .related.products ul.products {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1.5rem;
}

@media only screen and (max-width:1024px) {
    .single-product .related.products ul.products {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media only screen and (max-width:767px) {
    .single-product .related.products ul.products {
        grid-template-columns: repeat(1, minmax(0, 1fr));
    }

    .single-product .related.products {
        padding-left: 1rem;
        padding-right: 1rem;
        margin-top: 2rem;
    }
}

/* Blog */

body:is(.blog, .archive.category) .site-content {
    padding-inline: 2rem;
    gap: 2.5rem;
}

body:is(.blog, .archive.category) .site-content .site-main {
    margin-left: 0;
}

@media only screen and (max-width:767px) {
    body:is(.blog, .archive.category) .site-content {
        padding-inline: 1rem;
    }
}

/* Form */

.gform_wrapper {
    width: 100%;
}

.gform_wrapper .gform-body .gfield_label,
.gform_wrapper .gform-field-label {
    color: var(--text-base);
    font-size: 18px;
}

.gform_wrapper .gfield input:not(.gform_button, .gfield-choice-input),
.gform_wrapper .gfield select.gfield_select {
    height: 70px;
    border-radius: var(--border-radius);
    font-size: 16px !important;
    padding: 0.75rem 1.5rem !important;
    border: 1px solid var(--border-color) !important;
    box-shadow: none !important;
}

.gform_wrapper .gfield input:not(.gform_button, .gfield-choice-input)::-webkit-input-placeholder {
    font-size: 16px;
}

.gform_wrapper .gfield textarea {
    border-radius: var(--border-radius);
    font-size: 18px !important;
    padding: 0.75rem 1.5rem !important;
    border: 1px solid var(--border-color) !important;
    box-shadow: none !important;
}

.gform_wrapper .gform-footer button.gform_button {
    margin-bottom: 0px !important;
    height: 54px !important;
    border-radius: 100vw !important;
    background-color: var(--accent-alt) !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 640'%3E%3C!--!Font Awesome Free v7.3.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2026 Fonticons, Inc.--%3E%3Cpath fill='rgb(255, 255, 255)' d='M439.1 297.4C451.6 309.9 451.6 330.2 439.1 342.7L279.1 502.7C266.6 515.2 246.3 515.2 233.8 502.7C221.3 490.2 221.3 469.9 233.8 457.4L371.2 320L233.9 182.6C221.4 170.1 221.4 149.8 233.9 137.3C246.4 124.8 266.7 124.8 279.2 137.3L439.2 297.3z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: 1.25rem 1.25rem;
    background-position: calc(100% - 1rem) center;
    padding: .75rem 1.25rem !important;
    padding-right: 2.5rem !important;
    color: var(--text-contrast) !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    line-height: normal !important;
    transition: var(--transition) !important;
}

.gform_wrapper .gform-footer button.gform_button:is(:hover, :focus) {
    background-color: var(--accent) !important;
}

.gform_wrapper .gform_required_legend {
    display: none;
}

/* Cart */
.woocommerce-cart .wc-block-cart__submit-button {
    border-radius: var(--border-radius-small);
    transition: var(--transition);
}

/* Checkout */
.woocommerce-checkout .wc-block-components-checkout-place-order-button {
    font-size: 1.25rem;
    border-radius: var(--border-radius-small);
    transition: var(--transition);
}

/* Sub pagina's */
.single-post .featured-image, .page .featured-image {
    padding-inline: var(--container-padding);
    margin-top: 0;
}

.single-post .featured-image img, .page .featured-image img {
    width: 100%;
    min-height: 200px;
    object-fit: cover;
    border-radius: var(--border-radius);
}

@media (min-width: 1025px) {
    .single-post .featured-image img, .page .featured-image img {
        height: 480px;
    }
}

@media (min-width: 769px) {
    .single-post .featured-image img, .page .featured-image img {
        min-height: 280px;
    }
}

.single-post .site-main .entry-content img, .page .site-main .entry-content img {
    border-radius: var(--border-radius-small);
}

/* Zoekresultaten */

/*.search-results .content-area .generate-columns-container  {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1.5rem;
    margin-left: 0;
}

.search-results header.page-header {
    grid-column: 1 / -1;
    padding: 0;
    margin: 0;
    padding-inline: var(--container-padding);
}

.search-results .content-area .generate-columns-container article {
    width: 100%
}*/



/* Details element + FAQ */

.faq-container .details-wrapper details {
    background-image: linear-gradient(to right, #bbb 50%, #fff0 0%);
    background-position: bottom;
    background-size: 8px 1px;
    background-repeat: repeat-x;
    padding-bottom: 1px;
    overflow: hidden;
    border-top: 0 !important;
    max-width: none;
}

.faq-container details::details-content {
    height: 0;
    transition: 
        height 250ms,
        content-visibility 250ms;
    transition-behavior: allow-discrete;
}

.faq-container details[open]::details-content {
    margin-bottom: 1.25rem;
    height: auto;
}

.faq-container .details-wrapper details summary::after {
    content: '';
    width: 1.5rem;
    height: 1.5rem;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 640'%3E%3C!--!Font Awesome Free v7.3.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2026 Fonticons, Inc.--%3E%3Cpath d='M297.4 438.6C309.9 451.1 330.2 451.1 342.7 438.6L502.7 278.6C515.2 266.1 515.2 245.8 502.7 233.3C490.2 220.8 469.9 220.8 457.4 233.3L320 370.7L182.6 233.4C170.1 220.9 149.8 220.9 137.3 233.4C124.8 245.9 124.8 266.2 137.3 278.7L297.3 438.7z'/%3E%3C/svg%3E");
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 640'%3E%3C!--!Font Awesome Free v7.3.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2026 Fonticons, Inc.--%3E%3Cpath d='M297.4 438.6C309.9 451.1 330.2 451.1 342.7 438.6L502.7 278.6C515.2 266.1 515.2 245.8 502.7 233.3C490.2 220.8 469.9 220.8 457.4 233.3L320 370.7L182.6 233.4C170.1 220.9 149.8 220.9 137.3 233.4C124.8 245.9 124.8 266.2 137.3 278.7L297.3 438.7z'/%3E%3C/svg%3E");
    height: 1.5rem;
    width: 1.5rem;
    background-color: var(--text-base);
    transition: var(--transition);
    flex-shrink: 0;
    background-size: 1.5rem;
}

.faq-container .details-wrapper details summary:hover::after {
    background-color: var(--accent-alt);
}

.faq-container .details-wrapper details summary:hover {
    color: var(--accent-alt);
}

.faq-container details[open] > summary::after {
    rotate: 180deg;
}

.faq-container details summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    text-align: left;
    gap: 1.25rem;
    padding: 0;
    margin-block: 1.25rem;
    font-size: 20px;
    font-weight: 700;
    transition: color 0.2s ease 0s;
}

.faq-container details summary > h3 {
    margin-bottom: 0;
}

@media only screen and (max-width:767px) {
    .faq-container details summary,
    .faq-container details summary > h3 {
        line-height: 1.5;
        font-size: 14px;
    }

    .faq-container .details-wrapper details summary::after {
        width: 1.25rem;
        height: 1.25rem;
    }

    .faq-container details .answer {
        font-size: 14px;
    }
}

.faq-container details summary::-webkit-details-marker { /* safari / ios */
    display: none !important;
}

.faq-container details .answer {
    margin-top: 0;
    text-align: left;
}

.faq-container details .answer > div {
	max-width: 85%;
}

.faq-container details p:last-of-type {
    margin-bottom: 0;
}

.faq-container details .answer > div a:hover {
    text-decoration: none;
}

.faq-container .details-wrapper:first-child summary {
    margin-top: 0;
}

.faq-container .details-wrapper:last-child details {
    border-bottom: 0;
}

/* Steunzolenkiezer */

.site-main .pk {
    max-width: none !important;
}