/*
rood logo: #d51317 var(--color-red)
lichtgrijs footer: #f0efed rgba(240,239,237,1)
donkergrijs zwart titels: #21211f 
// grijs text: #737371 rgba(115,115,113,1)
grijs text akemi #354647 rgba(53,70,71,1)
grijs text 02/03/2026 : var(--primary-font-color)
groen #37814B  rgba(55,129,75,1)
blauw var(--color-blue)
*/
:root {
    --primary-font-family: 'Poppins', system-ui, sans-serif;
    --primary-font-color: var(--primary-font-color)5;
    /* 02/03/2026*/
    --primary-font-weight: 400;
    --primary-font-size: 16px;

    --color-text: rgba(33, 33, 31, 1);
    --color-text-blog: rgba(61, 61, 61, 1);
    // 3d3d3d 11/09/2026
    /* #444444 */
    --color-gray1: rgba(53, 70, 71, 1);
    /* #354647 */
    --color-gray2: rgba(94, 98, 111, 1);
    /* #5e626f sidebar links */



    --color-red: rgba(194, 34, 39, 1);
    /* c22227 */
    --color-red-dark:rgba(158, 28, 33, 1);
    /* #9E1C21 */
    --color-blue: rgba(57, 169, 225, 11);
    /* #39a9e1 */

    --primary-bold: 700;

    --font-size-breadcrumb: 0.84rem;
    --font-size-sidebar-titel: 0.94rem;
    --font-size-sidebar-link: 0.84rem;

    --font-size-h1: 2.00rem;
    --font-size-h2: 1.75rem;
    --font-size-h3: 1.50rem;
    --font-size-h4: 1.25rem;
    --font-size-h5: 1.10rem;
    --font-size-h6: 1.00rem;

    --font-size-p:  0.84rem;
    --font-size-p0: 1.00rem;
    --font-size-p1: 0.91rem;
    /* intro tekst productgroepen */
    --font-size-p2: 0.75rem;
    /* bv. op voorraad */
    --font-size-p3: 0.875rem;
    /* tekst product tabs */
    --font-size-p4: 0.66rem;
    /* advies titel */

    --font-size-producttitel: 0.84rem;
}

*,
::after,
::before {
    box-sizing: border-box;
}

body {
    font-family: var(--primary-font-family);
    font-weight: var(--primary-font-weight);
    color: var(--primary-font-color);
    font-optical-sizing: auto;
    font-style: normal;
}

/* xmenu */
.top-bar {
    position: relative;
    background-color: var(--color-red);
}

h1,
h2,
h3,
h4,
h5,
h6 {
    color: var(--color-text);
    font-weight: var(--primary-bold);
}

button.btn {
    font-size: var(--font-size-p) !important;
}

.logotop {
    width: 240px;
    max-width: 240px;
}

#header.headerbg-rood {
    background-color: var(--color-red);
}

#header.headerbg-rood nav.navbar.bootsnav {
    background-color: var(--color-red);
}

.header-nav.xmenu>.nav>li .sub-menu {
    width: 10em;
}

.sub-menu.subproducten,
.sub-menu.subadviezen {
    width: 14em !important;
}

.sub-menu.subproducten a:hover,
.sub-menu.subadviezen a:hover {
    color: var(--color-red) !important;
}

.header-nav.xmenu>.nav>li.menu-item-has-children>a:after,
.header-nav.xmenu>.nav>li.sub-menu-down>a:after {
    margin-left: 0px;
    margin-top: 0px;
    width: 0px;
    height: 0px;
}

.header-nav.xmenu>.nav>li .mega-menu li a,
.header-nav.xmenu>.nav>li .sub-menu li a {
    text-transform: none;
}

.sub-menu-down.open ul.sub-menu {
    position: absolute !important;
    background: #fff !important;
    text-align: right !important;
    padding-right: 20px !important;
}

.bg-grijs {
    background-color: rgba(240, 239, 237, 1) !important;
}

.bg-grijs2 {
    background-color: rgba(240, 239, 237, .8) !important;
}

.bg-rood {
    background-color: var(--color-red) !important;
}

.bg-blauw {
    background-color: var(--color-blue);
}

a.text {
    color: var(--primary-font-color);
}

a.text:hover {
    color: var(--color-red);
}

a.nolink {
    cursor: default !important;
}

input::-webkit-input-placeholder {
    color: #aaa !important;
}

input::-moz-placeholder {
    color: #aaa !important;
}

input::-ms-placeholder {
    color: #aaa !important;
}

input::placeholder {
    color: #aaa !important;
}

/* header fixed-top headerbg-rood nav-container fixed-nav */
.fixed-nav nav.navbar.bootsnav ul.nav li>a {
    padding: 16px 15px;
}

.navbar-brand img.logo {
}

.fixed-nav .logo-header img {
    display: inline-block;
    max-height: 36px;
}

.fixed-nav div.mt-3 {
}

.fixed-nav .logo-header {
    margin: 2px 2px !important;
    padding: 0 !important;
}

.fixed-nav .search-header {
    margin: 4px 16px 0px 24px !important;
}

.fixed-nav .xmenu-topbar-right {
    margin: 4px 2px !important;
    padding: 0 !important;
}

.xmenu-toggler {
    float: left !important;
    outline: none !important;
}

.fixed-nav .header-nav.xmenu>.nav>li>a {
    padding: 10px 2px !important;
}

.fixed-nav .top-bar {
    padding: 4px 0px;
}

.top-bar .xmenu-topbar-right li {
    padding-left: 2px;
}

.top-bar .xmenu-topbar-right {
    float: right;
}

.topheader {
    background-color: #F6F5F3;
}

.fixed-top.fixed-nav .topheader {
    display: none;
}

.division {
    display: flex;
    gap: 4px;
    background: rgba(255, 255, 255, .14);
    border-radius: 999px;
    padding: 3px;
    font-size: 12.5px;
}

.division a {
    padding: 5px 14px;
    border-radius: 999px;
    font-weight: 500;
    opacity: .85;
}

.division a.active {
    background: #fff;
    color: var(--color-red);
    opacity: 1;
    font-weight: 600;
}

.navicon {
    width: 45px;
    height: 45px;
    background: #fff;
    position: relative;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: 0.5s ease-in-out;
    -moz-transition: 0.5s ease-in-out;
    -o-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
    cursor: pointer;
    border-radius: var(--radius-sm);
}

.navicon span {
    display: block;
    position: absolute;
    height: 2px;
    width: 100%;
    border-radius: 1px;
    opacity: 1;
    background: #000;
    left: 10px;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: 0.25s ease-in-out;
    -moz-transition: 0.25s ease-in-out;
    -o-transition: 0.25s ease-in-out;
    transition: 0.25s ease-in-out;
}


#MenuNav li {
    border-bottom: 2px solid transparent;
}

#MenuNav li.active,
#MenuNav li:hover {
    border-bottom: 2px solid var(--color-red);
}

/* Inserting this collapsed row between two flex items will make 
 * the flex item that comes after it break to a new row */
.break-flex {
    flex-basis: 100%;
    height: 0;
}

@media only screen and (max-width: 991px) {
    .header-nav.xmenu>.nav>li>a {
        padding: 10px 2px;
        display: block;
        line-height: auto;
        font-size: 16px;
    }

    .header-nav.xmenu>.nav {
        float: none;
        padding: 0 0px;
    }
}


.btn-search {
    border: 1px solid #fff;
    border-radius: 5px;
    background-color: #f1f1f1;
    color: var(--color-red);
    padding: 6px 10px;
    height: 36px;
}

.btn-search i {
    margin-top: 12px;
}

.btn-search:hover {
    border: 1px solid #fff;
    border-radius: 5px;
    background-color: #f1f1f1;
    color: var(--color-text);
    padding: 6px 10px;
}

.btn-rood-wit {
    transition: all 1s;
    border: 1px solid var(--color-red);
    border-radius: 5px;
    background-color: var(--color-red);
    color: #fff;
    padding: 6px 10px;
}

.btn-rood-wit:hover {
    border: 1px solid var(--color-red);
    border-radius: 5px;
    background-color: #fff;
    color: var(--color-red) !important;
    padding: 6px 10px;
}

.btn-outline-wit-rood {
    border: 1px solid var(--color-red);
    background-color: #fff;
    color: var(--color-red) !important;
}

.btn-outline-wit-rood:hover {
    border: 1px solid var(--color-red);
    background-color: var(--color-red) !important;
    color: #fff !important;
}

.btn-check:checked+.btn-outline-wit-rood {
    border: 1px solid var(--color-red);
    background-color: var(--color-red) !important;
    color: #fff !important;
}

.btn-wit-rood {
    transition: all 1s;
    border: 1px solid #fff;
    border-radius: 5px;
    color: var(--color-text);
    background-color: #fff;
    padding: 6px 10px;
}

.btn-wit-rood:hover {
    border: 1px solid var(--color-red);
    border-radius: 5px;
    background-color: #fff;
    color: var(--color-red);
    padding: 6px 10px;
}

.xmenu .btn-wit-rood {
    border: 1px solid #fff;
    border-radius: 5px;
    color: #1E1E1E;
    background-color: transparent;
    padding: 6px 10px;
}

.xmenu .btn-wit-rood:hover {
    border: 1px solid #fff;
    border-radius: 5px;
    background-color: transparent;
    color: var(--color-red);
    padding: 6px 10px;
}

.btn-rood {
    transition: all 1s;
    border: 1px solid var(--color-red);
    border-radius: 5px;
    color: #fff;
    background-color: var(--color-red) !important;
    padding: 10px 10px;
}

.btn-bestellen {
    transition: all 1s;
    border: 1px solid var(--color-red);
    border-radius: 5px;
    background-color: var(--color-red);
    color: #fff;
    padding: 8px 10px;
}

.btn-bestellen:hover {
    border: 1px solid var(--color-red);
    border-radius: 5px;
    background-color: var(--color-red);
    color: #fff;
    padding: 8px 10px;
}

.btn-all {
    transition: all 1s;
    border: 1px solid var(--color-red);
    border-radius: 5px;
    color: rgba(240, 239, 237, 1);
    background-color: var(--color-red);
    padding: 6px 10px;
}

.btn-all:hover {
    border: 1px solid var(--color-red);
    border-radius: 5px;
    color: rgba(180, 180, 180, 1);
    background-color: var(--color-red);
    padding: 6px 10px;
}

.btn-grijs {
    transition: all 1s;
    border: 1px solid rgba(115, 115, 113, 1);
    border-radius: 5px;
    color: rgba(255, 255, 255, 1);
    background-color: rgba(115, 115, 113, 1);
    padding: 6px 10px;
}

.btn-grijs:hover {
    border: 1px solid var(--color-text);
    border-radius: 5px;
    background-color: var(--color-text);
    color: rgba(255, 255, 255, 1);
    padding: 6px 10px;
}

.main-bar .btn-all,
.main-bar .btn-wit-rood,
.main-bar .btn-all:hover,
.main-bar .btn-wit-rood:hover {
    padding: 10px 10px !important;
}

.header-nav.xmenu>.nav>li>a {
    color: var(--white);
    font-size: 90%;
    padding: 10px 10px;
    cursor: pointer;
    font-weight: 500;
    display: inline-block;
    position: relative;
}

a.bnt-resetfilters {
    transition: all 1s;
    border: none !important;
    color: rgba(160, 160, 160, 1) !important;
    padding: 6px 0px;
}

a.bnt-resetfilters:hover {
    transition: all 1s;
    border: none !important;
    color: var(--color-text) !important;
    padding: 6px 0px;
}

.btn-searchtop {
    transition: all 1s;
    border: 1px solid #ccc;
    border-radius: 5px;
    background-color: #fff;
    color: #666;
    padding: 6px 10px;
}

.btn-searchtop:hover {
    border: 1px solid #ccc;
    border-radius: 5px;
    background-color: #fff;
    color: var(--color-red);
    padding: 6px 10px;
}

ul.marginend1 li {
    margin-right: 2px !important;
}


.text-grijs {
    color: rgba(115, 115, 113, 1) !important;
}

.text-donkergrijs {
    color: var(--color-text) !important;
}

.text-rood {
    color: var(--color-red) !important;
}

.text-blauw {
    color: var(--color-blue) !important;
}

.text-groen {
    color: rgba(55, 129, 75, 1) !important;
}

.text-90 {
    font-size: 90% !important;
}

.text-80 {
    font-size: 80% !important;
}

.text-70 {
    font-size: 70% !important;
}

.text-60 {
    font-size: 60% !important;
}

.omschrijving {
    font-size: var(--font-size-p2) !important;
    color: var(--color-gray2) !important;
    padding-bottom: 1.25em !important;
}

.p-icon {
    transition: all 1s !important;
    padding: .34rem .50rem !important;
    border-color: var(--color-red) !important;
}

a:hover .p-icon {
    color: var(--color-text) !important;
    border-color: var(--color-text) !important;
}

.btn-newsletter {
    transition: all 1s !important;
    padding: 1rem .8rem !important;
    color: var(--color-red);
    background-color: #fff;
    border-color: #fff;
}

.btn-newsletter:hover {
    color: #fff;
    background-color: var(--color-red) !important;
    border-color: var(--color-red);
}

a.icon {
    transition: all 1s !important;
}

a:hover.icon .p-icon {
    color: var(--color-text) !important;
    border-color: var(--color-text) !important;
}

.newsletter input {
    background: transparent;
    border: none;
    border-radius: 0;
    border-bottom: solid #000 1px;
}

.newsletter input:focus {
    background: transparent;
    border: none;
    outline: none;
    box-shadow: none;
    border-radius: 0;
    border-bottom: solid #000 1px;
}

.overlay {
    position: fixed;
    background-color: #000000;
    z-index: 20000;
    top: 0px;
    left: 0px;
    opacity: 0.6;
    filter: alpha(opacity=60);
}


.searchtop input::placeholder {
    color: #737371;
}

.searchtop input:focus {
    outline: none;
    box-shadow: none;
}

.offcanvas.offcanvas-top {
    height: 50vh;
    max-height: 100%;
}

.img-search {
    max-width: 100px;
}

/* slider home */
button.carousel-control-prev,
button.carousel-control-next {
    width: 5%;
}

button.carousel-control-prev:hover {
    background-color: rgba(0, 0, 0, .5);
    background: linear-gradient(90deg, rgba(0, 0, 0, .2) 0%, rgba(0, 0, 0, 0) 100%);
}

button.carousel-control-next:hover {
    background-color: rgba(0, 0, 0, .5);
    background: linear-gradient(270deg, rgba(0, 0, 0, .2) 0%, rgba(0, 0, 0, 0) 100%);
}

.carousel-caption.left {
    position: absolute;
    right: 55%;
    bottom: 1.25rem;
    left: 4%;
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
    color: var(--bs-carousel-caption-color);
    text-align: center;
}

.carousel-caption.right {
    position: absolute;
    right: 4%;
    bottom: 1.25rem;
    left: 55%;
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
    color: var(--bs-carousel-caption-color);
    text-align: center;
}

.carousel-item h3 {
    color: #fff !important;
}

.carousel-item h5 {
    text-transform: uppercase;
    color: #fff !important;
    font-size: 60%;
    opacity: .75;
}

.row-eq-height {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}

#carouselhome.carousel {
    background: linear-gradient(115deg, #3a3633 0%, #6e6862 55%, #a89f96 100%);
    border-radius: 4px;
}

#carouselhome .carousel-item {
    height: 100%;
    min-height: 100%;
}

#carouselhome .carousel-item .container {
    height: 100%;
}

#carouselhome .maxwslidetext {
    max-width: 50%;
}

#carouselhome .slidefoto {
    max-width: 40%;
}

#home-nieuw-slider,
#home-bestseller-slider,
#product-gerelateerde-producten {
    padding-left: 18px;
    padding-right: 18px;
}

.test {
    position: relative;
    overflow: visible;
}

.swiper-button-prev {
    position: absolute;
    left: -16px;
}

.swiper-button-next {
    position: absolute;
    right: -16px;
}

.swiper-button-prev,
.swiper-button-next {
    width: 22px;
    height: 37px;
}

.swiper-button-prev:after,
.swiper-button-next:after {
    font-size: 200%;
}

.swiper-slide {
    height: auto !important;
}

.carousel-indicators {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 2;
    display: flex;
    justify-content: start;
    padding: 0;
    margin-right: 15%;
    margin-bottom: 1rem;
    margin-left: 12px !important;
}

.btn-home {
    transition: all 1s;
    border: 1px solid var(--color-red);
    border-radius: 5px;
    color: #fff;
    background-color: var(--color-red) !important;
    padding: 10px 10px;
}

.btn-home:hover {
    transition: all 1s;
    border: 1px solid var(--color-red);
    border-radius: 5px;
    color: #000;
    background-color: #fff !important;
    padding: 10px 10px;
}

.carousel-caption {
    color: var(--bs-carousel-caption-color);
    text-align: center;
}

.homepros i {
    color: var(--color-red) !important;
}

.productgroepen {
    background-color: #FFF;
}

.productgroepen .titel {
    line-height: 1.1em;
    color: #000;
    font-size: 90%;
    overflow-wrap: anywhere;
    overflow: hidden;
}

.productgroepen .titel i {
    vertical-align: middle;
}

.productgroepen .subtitel {
    color: var(--primary-font-color);
}

.productgroepen a {
    display: block;
    border: 1px solid transparent;
    height: 100%;
    /*background-color: #fff;*/
    text-decoration: none !important;
    border: 1px solid #E7E4E0 !important;
}

.productgroepen a .titel i {
    color: var(--color-red) !important;
}

.productgroepen a img {
    border: 1px solid transparent;
}

.productgroepen a:hover {
    text-decoration: none !important;
}

.productgroepen a:hover {
    box-shadow: 0 8px 22px rgba(0, 0, 0, .08);
    transform: translateY(-3px);
    border-color: #d8d4cf;
}

.productgroepen-home a {
    font-size: 100% !important;
}

.productgroepen-home ul a {
    font-size: 90% !important;
}

/* overrule opmaak uit tinymce groep teksten */
#groep-omschrijving a {
    color: var(--primary-font-color) !important;
}

#groep-omschrijving a:hover {
    color: var(--color-red) !important;
}

.product a {
    display: block;
    border: 1px solid transparent;

    color: var(--color-text);
    text-decoration: none !important;
}




.product .boxshadow1 {
    box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 6px -1px, rgba(0, 0, 0, 0.06) 0px 2px 4px -1px;
    border-top: 1px solid rgba(50, 50, 50, 0.1);
}

.product .boxshadow1:hover {
    box-shadow: rgba(0, 0, 0, 0.16) 0px 3px 6px, rgba(0, 0, 0, 0.23) 0px 3px 6px;
    border-top: 1px solid rgba(50, 50, 50, 0.1);
}

.product a:hover {
    color: var(--color-text);
    text-decoration: none !important;
}

.product .titel {
    font-size: var(--font-size-p1);
    font-weight: 700;
}

.product .prijs {
    font-size: var(--font-size-p0);
    font-weight: var(--primary-bold);
}

.product .btw {
    font-size: var(--font-size-p2);
    font-weight: normal;
    color: rgba(115, 115, 113, 1);
}

.product .voorraadja {
    font-size: var(--font-size-p2);
    font-weight: normal;
    color: rgba(55, 129, 75, 1);
}

.product .voorraadnee {
    font-size: var(--font-size-p2);
    font-weight: normal;
}

.product .voorraadmss {
    font-size: var(--font-size-p2);
    font-weight: normal;
    color: #B07100;
}

.product a img {
}

.product .productfotodiv {
    text-align: center;
    height: 100%;
    min-height: 220px;
    position: relative;
}

.product .productfotodiv:hover {
}

.product .productfotodivsearch {
    text-align: center;
    height: 100%;
    min-height: 150px;
    position: relative;
}



.product a:hover .titel,
.product a:hover i.rood {
    color: var(--color-red) !important;
}

.product .advies a {
    display: inline-block;
    border: none;
    text-decoration: underline !important;
    color: var(--color-red) !important;
}

.product .advies * a:hover * {
    border: none;
}


img.productfoto {
    padding: 5px 10px;
}

img.productfoto.zoeken {
    padding: 8px 20px;
}

.productfotodivsearch img.productfoto.zoeken {
    padding: 2px 4px;
}


.productgroepen img.productfoto {
    padding: .5rem;
}

.iconabs {
    position: absolute;
    top: 10px;
    right: 10px;
}

.text-arrow.iconabs {
    color: rgba(240, 239, 237, .8) !important;
}

a:hover .text-arrow.iconabs {
    color: var(--color-red) !important;
}

.irood {
    color: var(--color-red);
}

.list-unstyled a:hover {
    border: none;
    border: 1px solid transparent;
    color: var(--color-red);
    background-color: transparent !important;
}

/* WEBSHOP */

.bordercategorie {
    border: 1px solid #E7E4E0;
    border-radius: 4px;
}

#producten-categorie-menu {
}

#producten-categorie-menu .filtertitel2:hover {
    background-color: transparent !important;
}


#producten-categorie-menu a:hover {
    border-bottom: 0px;
}

#producten-categorie-menu ul a:hover {
    border-bottom: 0px;
}

#producten-categorie-menu a.active {
    font-weight: var(--primary-bold);
}

hr.subtle {
    margin: 1em 0;
    color: inherit;
    opacity: 1;
    border-top: 1px solid rgba(240, 239, 237, 1) !important;
}

/* Producten pagina met filters */
#producten {
    min-height: 70vh;
}

.content-frame {
    display: table;
    width: 100%;
    position: relative;
    overflow: hidden;
    padding-left: 10px;
}

.fixed-wrapper {
}

.fixed-content {
}

.fixed-wrapper,
.fixed-content {
    overflow-x: hidden;
}

.fixed-wrapper,
.fixed-content {
}

.fixed-content .btn-toggle,
.fixed-content a.btn-toggle {
}

a.btn-toggle.active {
    color: var(--color-red) !important;
}

.borderpcat {
    border-bottom: 1px solid rgba(120, 120, 120, 0.4) !important;
}

.content-offset {
    margin-left: 0px;
    padding-bottom: 10px;
}

/* Filter sidebar */
.icon::before {
    display: inline-block;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
}

.dropdown-toggle {
    outline: 0;
}

.btn-toggle,
a.btn-toggle {
    padding: .3rem .8rem;
    color: var(--color-text);
    background-color: transparent;
    font-size: var(--font-size-sidebar-link);
}

.btn-toggle:hover,
.btn-toggle:focus,
a.btn-toggle:hover,
a.btn-toggle:focus {
    /*color: var(--color-red);
    font-weight: var(--primary-bold);*/
    color: rgba(var(--bs-emphasis-color-rgb), .85);
    background-color: var(--bs-tertiary-bg) !important;

}

.btn-toggle::before,
a.btn-toggle::before {
    display: inline-block;
    font-size: 75%;
    margin-top: 6px;
}

.btn-toggle[aria-expanded="1"] {
}

.btn-toggle[aria-expanded="1"]::before {
}

.btn-toggle-nav a {
    padding: .5rem .8rem;
    margin-top: .125rem;
    color: var(--color-text);
}

.btn-toggle-nav a:hover,
.btn-toggle-nav a:focus {
    background-color: var(--bs-tertiary-bg);
}

.btn-text {
    display: inline-block;
}

.filtertitel {
    font-weight: var(--primary-bold);
    border: none;
    padding-top: 20px;
    border-top: 1px solid rgba(120, 120, 120, 0.4) !important;
}

.filtertitel2 {
    font-size: var(--font-size-sidebar-titel);
    font-weight: var(--primary-bold);
    border: none;
    padding-bottom: 20px;
}

.korting-prijs {
    position: relative;
    /* lets us position the `::after` relative to this element */
}

.korting-prijs::after {
    content: '';
    /* pseudo-elements must always have a `content` */
    position: absolute;
    /* lets us position it with respect to the `.fancy-strikethrough */
    left: -3px;
    top: 50%;
    height: 2px;
    width: 120%;
    background: rgba(255, 0, 0, 0.5);
    rotate: 171deg;
}



#accordionFilters.accordion {
    border: none;
}

#accordionFilters .accordion-item {
    border: none !important;
}

#accordionFilters .accordion-item:last-of-type>.accordion-collapse {
    border-bottom-right-radius: var(--bs-accordion-border-radius);
    border-bottom-left-radius: var(--bs-accordion-border-radius);
    border: none !important;
}


#accordionFilters .accordion-button {
    border: none !important;
}

#accordionFilters .accordion-button:not(.collapsed) {
    box-shadow: none;
    border: none !important;
}

#accordionFilters .accordion-button.collapsed {
    color: rgba(115, 115, 113, 1);
    color: var(--color-text);
}

#accordionFilters .accordion-button:not(.collapsed) {
    color: var(--color-text);
}

#accordionFilters .form-check-input:checked {
    background-color: var(--color-red);
    border-color: var(--color-red);
}

#accordionFilters .accordion-button {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    padding: 0.4em 0em;
    font-size: 1rem;
    color: var(--bs-accordion-btn-color);
    text-align: left;
    background-color: transparent;
    border: none;
    border-radius: 0;
    overflow-anchor: none;
    transition: var(--bs-accordion-transition);

    font-size: 14.4px;
}

#accordionFilters .accordion-button::after {
    flex-shrink: 0;
    width: 0;
    height: 0;
    margin-left: auto;
}

#accordionFilters .accordion-button::before {
    display: inline-block;
    padding-right: 5px;
    font-size: 75%;
    margin-top: 6px;

}

#accordionFilters .accordion-button:not(.collapsed)::after {
}

#accordionFilters .accordion-button:not(.collapsed)::before {
    color: var(--color-red);
    padding-right: 5px;
}

#accordionFilters label {
    color: var(--color-text) !important;
    padding-top: 2px;
    padding-left: 4px;
}

#accordionFilters .btn-text {
    padding-left: 0px;
}

.accordion-body {
    padding-left: 0px;
}

#accordionFilters .accordion-item {
    padding-bottom: 10px;
    border-radius: 0;
}

.product-filter.form-check-input {
    width: 1.25em;
    height: 1.25em;
}

.btn.btn-filterreset {
    display: inline-block;
    padding-left: 0.5rem;
    border: none;
    font-size: 90%;
    text-align: left;
}

.btn.btn-filterreset:hover,
.btn.btn-filterreset:active {
    border: none;
    font-size: 90%;
    color: var(--color-red);
    text-align: left;
}

.breadcrumb {
    margin-bottom: 2em !important;
}

.breadcrumb a,
.breadcrumbs {
    border: none !important;
    display: inline-block !important;
    font-size: var(--font-size-breadcrumb);

    color: var(--color-gray1);
}

.breadcrumb a.active {
    color: var(--color-red);
}

.breadcrumb a:hover,
.breadcrumbs:hover {
    color: var(--color-red);
}

#modalKorting .ui-datepicker {
    z-index: 2000 !important;
    /* make sure it’s above the modal */
}

/* productgalery */
#gallery-container {
    min-height: 500px;
}

.lg-backdrop {
    background-color: #fff;
}

.lg-outer .lg-thumb-outer {
    background-color: #ffffff;
}

.lg-icon {
    background-color: #f8f8f8;
    color: #666;
}

#gallery-container .lg-content {
    top: 0px !important;
}

#gallery-container .lg-toolbar {
    z-index: 1082;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
}

#gallery-container .lg-toolbar .lg-icon:hover {
    color: var(--color-red) !important;
}

#gallery-container.lghide>* {
    display: none;
}

#gallery-homeservice {
    max-height: 80vh;
    overflow: hidden;
}

#gallery-homeservice .lg-outer .lg-content {
    border: 1px solid var(--color-gray1);
    border-radius: 0px;
}

button.lg-icon,
button.lg-icon:hover {
    background-color: transparent;
}




.lg-prev:after {
    content: none;
}

.lg-prev:before {
    display: inline-block;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    font: var(--fa-font-solid);
    content: '\f137';
    font-size: 150%;
    color: rgba(194, 34, 39, 0.3);
    transition: color .8s;
}

.lg-next:before {
    display: inline-block;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    font: var(--fa-font-solid);
    content: '\f138';
    font-size: 150%;
    color: rgba(194, 34, 39, 0.3);
    transition: color .8s;
}

.lg-prev:hover:before {
    color: var(--color-red);
}

.lg-next:hover:before {
    color: var(--color-red);
}

.collapsible-text {
    position: relative;
    background: white;
    overflow: hidden;
}

.collapsible-text .content {
    max-height: 7rem;
    overflow: hidden;
    transition: max-height 0.6s cubic-bezier(0.25, 0.8, 0.25, 1);
    z-index: 1;
}

.collapsible-text.expanded .content {
    max-height: none;
    /* will be set dynamically in JS */
}

.collapsible-text .fade {
    position: absolute;
    bottom: 2.5rem;
    left: 0;
    right: 0;
    height: 4rem;
    opacity: 1;
    pointer-events: none;
    z-index: 2;
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.8) 60%, rgba(255, 255, 255, 1) 100%);
    transition: opacity 0.25s ease;
}

.collapsible-text.expanded .fade {
    opacity: 0;
    visibility: hidden;
}

/* button */
.toggle-btn {
    display: block;
    margin: 0.5rem auto 0;
    background: none;
    border: none;
    cursor: pointer;
    color: var(--color-red);
    transition: transform 0.3s ease;
}

/* rotate the icon smoothly */
.toggle-btn i {
    display: inline-block;
    transition: transform 0.35s ease;
}

/* when expanded, rotate 180° */
.collapsible-text.expanded .toggle-btn i {
    transform: rotate(180deg);
}



/* productdetail */
.productdetail {
}

.productdetail p.artnr {
    font-size: var(--font-size-p2) !important;
}

.productdetail .prijs {
    font-size: 200%;
}

.productdetail .prijstxt {
    font-size: var(--font-size-p);
    color: var(--color-gray2);
}


.productdetail .prijsbtw .prijs {
    font-size: 100%;
}

.productdetail .form-check-input:checked {
    background-color: rgba(55, 129, 75, 1);
    border-color: rgba(55, 129, 75, 1);
}


.productdetail .btn-collapse {
    font-size: 24px;
    color: var(--color-red);
}

.productdetail .btn-collapse span {
    display: inline-block;
    font-size: 16px;
    color: var(--color-gray1);
    line-height: 36px;
    vertical-align: middle;
    margin-bottom: 8px;
}

.productdetail .btn-collapse,
.productdetail .btn-collapse:hover {
    text-decoration: none;
    color: var(--color-gray1);
}

.productdetail .btn-collapse[aria-expanded="false"]:before {
    display: inline-block;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    font: var(--fa-font-solid);
    content: '\f055';
    // circle-plus	
    font-size: 24px;
    color: var(--color-red);
    transition: all .8s;
}

.productdetail .btn-collapse[aria-expanded="true"]:before {
    display: inline-block;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    font: var(--fa-font-solid);
    content: '\f056';
    // circle-minus
    font-size: 24px;
    color: var(--color-red);
    transition: all .8s;
}

label.cbvoorraadfilter {
    font-size: var(--font-size-p) !important;
}
.productdetailverzending {
    font-size: var(--font-size-p) !important;
    color: var(--color-gray2) !important;
}


#btn-varianten {
    position: relative;
    z-index: 10;
}

#gradient {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 18%;
    z-index: 1;
    background: #ffffff;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(200, 200, 200, .5) 100%);
}

.collapsing {
    transition-property: height, visibility;
    transition-duration: 1s;
}

.lg-outer .lg-content {
    border: 1px solid rgba(240, 239, 237, 1);
}

#varianten label {
    font-size: var(--font-size-p) !important;
}


/* tabs productdetails */
.nav-tabs {
    border-bottom: none;
}

.nav-tabs .nav-link {
    color: var(--color-gray1);
    font-size: var(--font-size-p1);
    font-weight: var(--primary-bold);
    margin-bottom: calc(-1 * var(--bs-nav-tabs-border-width));
    border: none;
    border-bottom: 2px solid transparent;
    transition: all .8s;
}

.nav-tabs .nav-item.show .nav-link,
.nav-tabs .nav-link.active {
    color: var(--color-text);
    background-color: transparent;
    border-color: var(--color-red);
    transition: all .8s;
}

.tab-pane {
    font-size: var(--font-size-p3) !important;
}

.swiper-button-prev,
.swiper-button-next {
    color: var(--color-red);
}

.swiper-slide {
}

.swiper {
}

.swiper-wrapper {
    z-index: 10;
}

.pl-250 {
    margin-left: 280px;
}

.ms-250 {
    margin-left: 266px;
}

/* footer */
footer {
    z-index: 1000;
}

.footer {
    background-color: rgba(240, 239, 237, 1);
}

.logofooter {
    width: 300px;
    max-width: 300px;
}

.footer p.titel {
    font-weight: var(--primary-bold);
    font-size: 100%;
}

.footer ul.links {
    margin-left: 0;
    padding-left: 0;
}

.footer ul.links li {
    padding-left: 0;
    list-style-image: none;
    list-style-type: none;
    margin-bottom: .5em;
}

.footer ul.links li a {
    font-size: 90%;
}

.interlinie {
    text-decoration: none;
    transition: ease 1s;
    filter: brightness(0) saturate(100%) invert(12%) sepia(11%) saturate(122%) hue-rotate(22deg) brightness(95%) contrast(97%);
}

.interlinie:hover img {
    text-decoration: none;
    transition: ease 1s;
    filter: brightness(0) saturate(100%) invert(20%) sepia(35%) saturate(3608%) hue-rotate(181deg) brightness(92%) contrast(87%);
}

.interlinie img {
    width: 60px;
    max-width: 60px;
}

.interlinie span {
    font-size: 60%;
}

.dropdown:hover .dropdown-menu {
    margin-top: 0;
    /* remove the gap so it doesn't close */
}


.nav.menu-right {
    margin: 0 !important;
    display: inline-block;
}

.welkomuser {
    font-size: 80%;
    line-height: 1;
    text-align: centers;
    vertical-align: baseline;
}


.list-group-item {
    padding: 20px 16px;
}

.header-nav.xmenu>.nav>li>a:hover {
    color: #ccc !important;
}

.header-nav.xmenu>.nav>li>.sub-menu a:hover {
    color: var(--color-red) !important;
}

.sub-menu.subproducten a:hover,
.sub-menu.subadviezen a:hover {
    color: var(--color-red) !important;
}

.xmenu-topbar-right li:hover {
    border: none !important;
}

/* TOAST*/
.toast-container.top-0 {
    top: 100px !important;
}

.toast-container {
    margin: 15px;
}

.toast-body {
    min-width: 300px;
    color: white;
    background-color: black;
}

.toast-body.success {
    background-color: #1c995f;
}

.toast-body.info {
    background-color: blue;
}

.toast-body.warning {
    background-color: yellow;
}

.toast-body.danger {
    background-color: red;
}

.toast-header {
    min-width: 300px;
    color: white;
    background-color: black;
}

.toast-header.success {
    background-color: #1c995f;
    border-color: #198754;
}

.toast-header.info {
    background-color: blue;
}

.toast-header.warning {
    background-color: yellow;
}

.toast-header.danger {
    background-color: red;
}

.border-danger {
    border-color: rgb(220, 53, 69);
}

/* ADMIN */
.akami-table {
}

.akemi-table th {
    color: #FFF !important;
    background-color: var(--color-red) !important;
}

.akemi-table td a {
    color: #21211f !important;
}

.akemi-table td a:hover,
.akemi-table td .filter-edit:hover,
.akemi-table td .filter-delete:hover {
    color: var(--color-red) !important;
    cursor: pointer;
}

.subgroep-table th {
    color: #FFF !important;
    background-color: rgba(211, 211, 211, 1) !important;
}


/* ADMIN - GROEP */
.admin-subgroep-border {
    padding: 20px !important;
    border: 1px solid rgba(211, 211, 211, 1);
}


/* ADMIN - PRODUCT */
.product-ghsicon {
    width: 100px;
    margin-right: 16px;
    margin-bottom: 16px;
    border: 3px solid transparent;
    cursor: pointer;
    padding: 5px;
}

.product-ghsicon.selected {
    border-color: #198754;
}

.btn-product-filters.selected {
    background-color: var(--color-red);
    color: #FFF;
}

.btn-product-eigenschappen.selected {
    background-color: var(--color-red);
    color: #FFF;
}

/* Button plus / min aantal */
#button-min i,
#button-plus i,
.search-min-button i,
.search-plus-button i {
    font-size: 80%;
}

#button-min,
#button-plus,
.search-min-button,
.search-plus-button {
    background-color: var(--color-red);
    // var(--color-blue);
    color: #FFF;
    padding: 0px 3px !important;
    border: none;
}

#button-min:hover,
#button-plus:hover,
.search-min-button:hover,
.search-plus-button:hovers {
    background-color: var(--color-red);
    color: #FFF;
}



.winkelmand-aantal-min,
.winkelmand-aantal-plus {
    border-radius: 0px;
    border-color: #5E2227;
}

.winkelmand-aantal-min,
.winkelmand-aantal-plus {
    background-color: var(--color-red);
    color: #FFF;
}

.winkelmand-aantal-min:hover,
.winkelmand-aantal-plus:hover {
    background-color: var(--color-red);
    color: #FFF;
}

.button-min,
.button-plus {
    background-color: var(--color-red);
    color: #FFF;
}

.button-min:hover,
.button-plus:hover {
    background-color: var(--color-red);
    color: #FFF;
}

.search-min-button,
.search-plus-button {
    background-color: var(--color-red);
    color: #FFF;
}

.search-min-button:hover,
.search-plus-button:hover {
    background-color: var(--color-red);
    color: #FFF;
}

#product-winkelmand-aantal {
    max-width: 4em;
}

.search-product-winkelmand-aantal {
    max-width: 4em;
}



/* ADMIN - BESTELLINGEN */
#accordionPanelsStayOpenExample .accordion-button::after {
    background-image: url("data:image/svg+xml;charset=utf8,<svg xmlns='http://www.w3.org/2000/svg' fill='white' viewBox='0 0 16 16'><path fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/></svg>");
}


/* ADMIN - LEVERINGEN */
.levering-detail-table th {
    color: #FFF !important;
    background-color: rgba(211, 211, 211, 1) !important;
}

/* FAVORIET */
.product-favoriet.favoriet {
    color: #FFF;
    background-color: #dc3545;
}

.product-favoriet.favoriet i {
    color: #FFF !important;
}

.list-group.admin button {
    text-align: left;
}

.list-group.admin a:hover,
.list-group.admin button:hover {
    background-color: rgba(55, 129, 75, .5);
}

.form-check-input:hover {
    cursor: pointer;
}

.form-check-input:checked {
    background-color: var(--color-red);
    border-color: var(--color-red);
}

.pointer {
    cursor: pointer;
}

.pointer:hover {
    color: var(--color-red) !important;
}

.ui-datepicker {
    z-index: 1000 !important;
}


/* ADMIN - COLOR */
.alwan__input {
    pointer-events: auto !important;
    user-select: auto !important;
}


/* COLOUR MATCHING */
.kleur-link {
    color: #D51317;
    border-color: #D51317;
}

.kleur-link a {
    color: inherit;
}

.kleur-link:hover {
    background-color: #D51317;
    color: #FFF;
}




/* SELECTGROUP */
:root {
    --btn-active-bg: var(--color-red);
    --btn-active-color: #fff;
    --btn-border-color: var(--color-red);
    --btn-radius: 999px;
    --btn-padding: 6px 14px;
    --btn-font-size: 14px;
    --btn-transition: 150ms ease;
}

/* container layout */
.selectgroup {
    display: inline-flex;
    gap: 8px;
    align-items: center;
    flex-wrap: wrap;
}

.selectgroup-item {
    display: inline-flex;
    align-items: center;
    cursor: pointer;
    user-select: none;
    line-height: 1;
}

/* hide checkbox but keep accessible */
.selectgroup-input {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    border: 0;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    overflow: hidden;
    white-space: nowrap;
}

/* default state (not selected) */
.selectgroup-button {
    display: inline-block;
    padding: var(--btn-padding);
    background: #fff;
    border: 2px solid var(--btn-border-color);
    color: var(--btn-border-color);
    border-radius: var(--btn-radius);
    font-size: var(--btn-font-size);
    transition: background var(--btn-transition), color var(--btn-transition), border var(--btn-transition);
}

/* hover for not selected */
.selectgroup-item:hover .selectgroup-button {
    background: rgba(194, 34, 39, 0.05);
}

/* checked state */
.selectgroup-input:checked+.selectgroup-button {
    background: var(--btn-active-bg);
    color: var(--btn-active-color);
    border-color: var(--btn-active-bg);
}

/* focus */
.selectgroup-input:focus+.selectgroup-button {
    outline: 2px solid rgba(194, 34, 39, 0.3);
    outline-offset: 2px;
}

/* disabled */
.selectgroup-input:disabled+.selectgroup-button {
    opacity: 0.5;
    cursor: not-allowed;
}


/* WINKELMAND */
.winkelmand-delete {
    font-size: 80%;
    cursor: pointer;
    color: var(--color-red);
}

.winkelmand-aantal-min,
.winkelmand-aantal-plus {
}

.winkelmand-producttitel {
    word-break: break-all;
}

.winkelmand-foto {
    max-width: 40px;
}

#collapseAfhalen-parent {


    background: rgb(253, 244, 243);
    border: 1px solid rgb(239, 201, 198);
    border-radius: 8px;
    padding: 10px;
    gap: 16px;
}

#collapseAfhalen-parent i {
    color: rgb(161, 42, 38);
}

#collapseAfhalen-parent a {
    color: #a12a26;
    font-size: 0.84rem;
}


/* REGISTREER */
/* Container */
.vat-toggle-small {
    position: relative;
    width: 175px;
    height: 32px;
}

/* Hide real checkbox */
.vat-toggle-small input[type="checkbox"] {
    display: none;
}

/* The track */
.toggle-label-small {
    display: block;
    width: 100%;
    height: 100%;
    background: #dc3545;
    /* red = NO */
    border-radius: 6px;
    cursor: pointer;
    position: relative;
    transition: background 0.25s ease;
}

/* Square slider */
.toggle-label-small::after {
    content: "";
    position: absolute;
    top: 3px;
    left: 3px;
    width: 26px;
    height: 26px;
    background: white;
    border-radius: 4px;
    /* square */
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25);
    transition: left 0.25s ease;
}

.lg-outer .lg-item.lg-complete {
    background-image: none;
    background-color: white !important;
}

/* Text styling */
.toggle-text-small {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    font-size: .75rem;
    font-weight: 600;
    opacity: 0;
    color: white;
    pointer-events: none;
    transition: opacity 0.25s ease;
}

/* YES on the left */
.toggle-text-small.yes {
    left: 10px;
}

/* NO on the right */
.toggle-text-small.no {
    right: 10px;
    opacity: 1;
    /* default visible */
}

/* When ON */
.vat-toggle-small input:checked+.toggle-label-small {
    background: #28a745;
}

.vat-toggle-small input:checked+.toggle-label-small::after {
    left: calc(100% - 29px);
    /* slider moves right */
}

.vat-toggle-small input:checked+.toggle-label-small .yes {
    opacity: 1;
}

.vat-toggle-small input:checked+.toggle-label-small .no {
    opacity: 0;
}

/* CLASSES DIETER */
.mh75 {
    min-height: 75px;
}

.w125 {
    width: 125px;
}

.w50px {
    width: 50px;
}

.w75px {
    width: 75px;
}

.auto-width {
    min-width: auto;
    width: auto !important;
    white-space: nowrap;
}

.voorraadja {
    font-size: var(--font-size-p2);
    color: rgba(55, 129, 75, 1);
}

.voorraadnee {
    font-size: var(--font-size-p2);
    color: var(--color-red);
}


.voorraadmss {
    color: rgb(176, 113, 0);
}

.text-akemi-rood {
    color: var(--color-red) !important;
}

.accent-green {
    accent-color: rgba(55, 129, 75, 1);
}

.accent-red {
    accent-color: var(--color-red);
    ;
}

// pijl rechtsboven in groepen en producten
.text-arrow {
    color: rgba(255, 255, 255, 1) !important;
}

/* TINYMCE TWEAK */
.tox-tinymce.is-valid {
    border: 2px solid #198754;
    /* Bootstrap green */
}

.tox-tinymce.is-invalid {
    border: 2px solid #dc3545;
    /* Bootstrap red */
}

.cursor-pointer {
    cursor: pointer;
}


.ui-menu {
    z-index: 1500 !important;
}


#search-results {
    position: absolute;
    top: 100%;
    /* directly under the header */
    left: 0;
    width: 100%;
    background: white;
    border: 1px solid #ccc;
    z-index: 9999;
    display: none;
    overflow-y: auto;
    font-size: 90%;
    margin-top: -25px;
}


#search-results span.code {
    font-size: 80%;
}

#search-results .result {
    padding: 10px;
    border-bottom: 1px solid #eee;
    cursor: pointer;
}

#search-results .result:hover {
    background: #f5f5f5;
}

.search-header {
    padding-left: 0px !important;
    padding-right: 0px !important;
    margin-right: 0px !important;
    margin-left: 0px !important;
}

.search-header .formheader {
    max-width: 200px;
}


.overons p {
    font-size: 90%;
}


/* ELFINDER */
.elfinder {
    z-index: 2000;
}


.offcanvas-lg.show,
.offcanvas-lg.showing {
    overflow-y: auto;
    background-color: rgba(240, 239, 237, 1) !important;
}


/* breedte filter col als niet off-canvas */
.col-filters:not(.show) {
    padding-right: 2.5em;
}


.logo-header img {
    width: 135px !important;
}

.selector {
    display: flex;
    gap: 4px;
    background: rgba(255, 255, 255, .14);
    border-radius: 4px;
    padding: 3px;
    font-size: 12.5px;
    max-height: 34px;
}

a.headerselect {
    color: #fff;
    padding: 5px 14px;
    border-radius: 3px;
    font-weight: 500;
    opacity: .85;
    max-height: 28px;
}

a.headerselect.active {
    background: #fff;
    color: var(--color-red) !important;
    opacity: 1;
    font-weight: 600;
}






@media (min-width: 576px) {
    .search-header .formheader {
        max-width: 260px;
    }

}

@media (min-width: 768px) {
    .search-header .formheader {
        max-width: 240px;
    }

    /* reset rechtse menu met icon user / cart / */
    .break-flex {
        flex-basis: auto;
        height: auto;
    }
}

@media only screen and (max-width: 1199px) {
}


@media only screen and (max-width: 768px) {
    #carouselhome .slidefoto {
        display: none !important;
    }

    #carouselhome .maxwslidetext {
        max-width: 80%;
    }
}

/* LG*/
@media only screen and (max-width: 991px) {

    .menu-right li {
        margin: 0 !important;
        display: block;
        width: 100%;
    }


    .menu-right li>a {
        display: block;
        line-height: 30px;
        font-size: 16px;
        padding: 8px 0px;
        font-family: var(--font-family-title);
        cursor: pointer;
        font-weight: 500;
        display: inline-block;
        position: relative;
    }

    .menu-right li>a span {
        display: inline-block;
    }


    #carouselhome.carousel {
        padding: 40px 0px;
    }

    .carousel-indicators {
        bottom: -16px !important;
    }

    #carouselhome.slidefoto {
        max-width: 25%;
    }

}



/* LG */
@media all and (min-width: 992px) {

    .megamenu .dropdown-menu {
        width: 13rem;
    }

    .megamenu .mega-submenu {
        left: 100%;
        top: 0;
        min-width: 25rem;
    }

    .megamenu .ktm-mega-menu {
        position: static;
    }

    .megamenu .mega-menu {
        left: 0;
        right: 0;
        width: 100%;
    }

    .megamenu .dropdown-menu li {
        position: relative;
    }

    .megamenu .dropdown-menu .submenu {
        display: none;
        left: 100%;
        top: 0;
    }

    .megamenu .dropdown-menu>li:hover>.submenu,
    .megamenu .dropdown:hover>.dropdown-menu {
        display: block;
    }


    .product .titel.fs-4 {
        font-size: 1em !important;
    }

    .btn-toggle-nav a,
    .btn-toggle-nav button {
        padding: .1rem .8rem;
        margin-top: 0rem;
    }

    .winkelmand-foto {
        max-width: 75px;
    }


    #gradient {
        height: 24%;
    }


    .search-header {
        padding-right: 3rem !important;
        padding-left: 3rem !important;
        margin-right: 1rem !important;
        margin-left: 1rem !important;
    }

    .search-header .formheader {
        max-width: 220px;
    }

    /* breedte filter col als niet off-canvas */
    .col-filters:not(.show) {
        max-width: 22% !important;
    }


}

/* X-Large devices (large desktops, 1200px and up) */
@media all and (min-width: 1200px) {
    .content-offset {
        // margin-left: 240px;
    }

    .product .titel.fs-4 {
        font-size: 1.1em !important;
    }

    .search-header .formheader {
        max-width: 300px;
    }

    /* breedte filter col als niet off-canvas */
    .col-filters:not(.show) {
        max-width: 20% !important;
    }


    #carouselhome .carousel-item {
        height: 100%;
    }

    #carouselhome .carousel-item .container {
        height: 100%;
    }



}

/* XX-Large devices (larger desktops, 1400px and up) */
@media all and (min-width: 1400px) {

    .product .titel.fs-4 {
        font-size: 1.2em !important;
    }

    /* breedte filter col als niet off-canvas */
    .col-filters:not(.show) {
        max-width: 18% !important;
    }


}

/* XX-Large devices (larger desktops, 1400px and up) */
@media all and (min-width: 1600px) {

    /* breedte filter col als niet off-canvas */
    .col-filters:not(.show) {
        max-width: 16% !important;
    }
}

/* XX-Large devices (larger desktops, 1400px and up) */
@media all and (min-width: 1800px) {
}



.container-xxxl,
.container-xxl,
.container-xl,
.container-lg,
.container-md,
.container-sm,
.container {
    max-width: 1320px;
}

@media (min-width: 1600px) {

    .container-xxxl,
    .container-xxl,
    .container-xl,
    .container-lg,
    .container-md,
    .container-sm,
    .container {
        max-width: 1320px;
    }
}

:root {
    --bs-breakpoint-xs: 0;
    --bs-breakpoint-sm: 576px;
    --bs-breakpoint-md: 768px;
    --bs-breakpoint-lg: 992px;
    --bs-breakpoint-xl: 1200px;
    --bs-breakpoint-xxl: 1400px;
    --bs-breakpoint-xxl: 1600px;
}





#filter-parent-reset {
    overflow: hidden;
    height: 0;
    opacity: 0;
    transition: height 0.25s ease, opacity 0.2s ease;
}

#filter-parent-reset.is-visible {
    opacity: 1;
    height: auto;

}




/* HOME SERVICE */

#hsForm .intro {
    color: #6b6b6b;
    font-size: 15px;
    margin: 0 0 28px;
}

#hsForm fieldset {
    border: none;
    margin: 0 0 26px;
    padding: 0;
}

#hsForm legend {
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .05em;
    color: #9e1b1b;
    padding: 0;
    margin-bottom: 12px;
    display: flex;
    align-items: center;
    gap: 8px;
}

#hsForm .stap {
    background: #9e1b1b;
    color: #fff;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    font-size: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 22px;
}

#hsForm label.veldlabel {
    display: block;
    font-size: 14px;
    font-weight: 500;
    margin: 14px 0 5px;
}

#hsForm label.veldlabel .opt {
    color: #6b6b6b;
    font-weight: 400;
    font-size: 13px;
}

#hsForm input[type=text],
input[type=tel],
input[type=email],
input[type=number],
select,
textarea {
    width: 100%;
    font-family: inherit;
    font-size: 12px;
    padding: 11px 13px;
    border: 1px solid #e3e0d8;
    border-radius: 7px;
    background: #fdfdfb;
    color: #2b2b2b;
}

#hsForm input:focus,
select:focus,
textarea:focus {
    outline: none;
    border-color: #c8a96e;
    box-shadow: 0 0 0 3px rgba(200, 169, 110, .18);
}

#hsForm textarea {
    min-height: 90px;
    resize: vertical;
}

#hsForm .keuze-rij {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

#hsForm .keuze {
    flex: 1;
    min-width: 130px;
    position: relative;
}

#hsForm .keuze input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

#hsForm .keuze label {
    display: block;
    text-align: center;
    padding: 13px 10px;
    border: 1.5px solid #e3e0d8;
    border-radius: 8px;
    font-size: 15px;
    font-weight: 500;
    cursor: pointer;
    background: #fdfdfb;
    transition: all .12s;
}

#hsForm .keuze input:checked+label {
    border-color: #c8a96e;
    background: #faf8f3;
    color: #a8843f;
}

#hsForm .keuze label:hover {
    border-color: #c8a96e;
}

#hsForm .hint {
    background: #faf8f3;
    border-left: 3px solid #c8a96e;
    padding: 12px 16px;
    font-size: 14px;
    color: #6b6b6b);
    border-radius: 0 7px 7px 0;
    margin: 20px 0 26px;
}

#hsForm .hint strong {
    color: #2b2b2b;
}

#hsForm .verberg {
    display: none;
}

#hsForm .btn {
    width: 100%;
    padding: 15px;
    background: #9e1b1b;
    color: #fff;
    border: none;
    border-radius: 8px;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    transition: background .15s;
}

#hsForm .btn:hover {
    background: #7a1414;
}

#hsForm .ok {
    text-align: center;
    color: #1d7a4f;
    font-size: 14px;
    font-weight: 600;
    margin-top: 14px;
    min-height: 20px;
}




/* NIEUWE CSS 2026 JULI */
.link-dieter {
    text-decoration: none;
}

.link-dieter:hover {
    box-shadow: 0 8px 22px rgba(0, 0, 0, .08);
    transform: translateY(-3px);
}


.card-dieter {
    border: 1px solid #E7E4E0;
    border-radius: 4px;
}

.card-dieter h5 {
    font-size: 13.5px;
    font-weight: 600;
    line-height: 1.35;
}

.card-dieter .omschrijving {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    overflow-wrap: anywhere;
    padding-bottom: 0px !important;
}


.card-dieter .btn-wit-rood {
    transition: all 1s;
    border: 1px solid var(--color-red) !important;
    border-radius: 5px;
    background-color: #FFF;
    color: var(--color-red) !important;
    padding: 6px 10px;
    font-weight: 600;
}

.card-dieter .btn-wit-rood:hover {
    border: 1px solid var(--color-red);
    border-radius: 5px;
    background-color: var(--color-red) !important;
    color: #FFF !important;
    padding: 6px 10px;
    font-weight: 600;
}

.product .card-dieter .prijs {
    font-weight: normal;
}

.product .card-dieter .prijs {
    font-weight: var(--primary-bold);
}


.card-dieter .prijs {
    color: rgba(0, 0, 0, 1) !important;
}

.card-dieter .nieuw {
    position: absolute;
    top: 26px;
    left: 10px;
    background: var(--color-red);
    color: #fff;
    font-size: 10.5px;
    font-weight: 600;
    letter-spacing: .5px;
    padding: 3px 9px;
    border-radius: 3px;
}


/* VARIANTEN */
#variantList {
    border: 1px solid #E7E4E0;
    border-radius: 4px;
    max-height: 198px;
    overflow-y: auto;
    overflow-x: hidden;
}

#variantList .variant-item {
    border-bottom: 1px solid #E7E4E0;
}

#variantList .variant-item:last-child {
    border-bottom: 0px;
}

#filter-results {
    color: #6B6B6B;
    font-size: 12px;
}

.fs-12 {
    font-size: 12px;
}

.c6b {
    color: #6b6b6b;
}



.prijs-pre {
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .6px;
}


.bigprice {
    font-size: 32px;
    font-weight: 700;
}

.stripe-through {
    text-decoration: line-through;
}

.discbadge {
    background: #E7F2E7;
    color: #2E7D32;
    font-weight: 700;
    font-size: 12.5px;
    padding: 2.5px 10px;
    border-radius: 3px;
}




/* ADVIEZEN */
#adviezen #side-menu {
    border: 1px solid #E7E4E0;
    border-radius: 4px;
}

#adviezen #side-menu li:hover {
    border: none !important;
}

.catselect {
    color: var(--color-red);
    font-weight: var(--primary-bold);
}

.catselect a {
    color: var(--color-red) !important;
    font-weight: var(--primary-bold);
}

.advies li:hover {
    border-bottom: none !important;
    font-weight: var(--primary-bold);
}






.fs-110 {
    font-size: 110%;
}

.breadcrumb-item {
    margin-top: auto;
}


.breadcrumb-item:hover {
    border-bottom: none;
}

.breadcrumb-item a {
    text-decoration: none;
}

.grijs-6b {
    color: #6B6B6B;
}

.fw-600 {
    font-weight: 600;
}


/* WINKELMAND */
.winkelmand-card {
    border: 1px solid #E7E4E0;
    border-radius: 4px;
}


.bgreen {
    font-weight: 600;
    color: #2E7D32;
}


#winkelmand-extra .collapse-icon {
    display: inline-block;
    transition: transform 0.2s ease;
}

#winkelmand-extra .collapse-icon.rotated {
    transform: rotate(180deg);
}


#webshop-filters .form-check.disabled {
    opacity: 0.5;
}

#webshop-filters .form-check.disabled .form-check-label {
    color: #6c757d;
    cursor: not-allowed;
}

#webshop-filters .form-check.disabled .form-check-input {
    cursor: not-allowed;
}


#automotive-menu li:hover {
    border-bottom: 0px;
}

#automotive-menu li button:hover {
    text-decoration: none;
    background-color: #F6F5F3;
}


#automotive-menu li a:hover {
    text-decoration: none;
    background-color: #F6F5F3;
    color: var(--color-gray2);
}


#automotive-menu a.active {
    color: var(--color-red) !important;
    font-weight: normal;
}



/* ADVIEZEN */
.card-advies {
    border: 1px solid E7E4E0;
    border-radius: 12px;
    background: #fff;
    overflow: hidden;
    transition: box-shadow .15s, transform .15s;
    cursor: pointer;
    display: flex;
    flex-direction: column;
}

.card-advies:hover {
    box-shadow: 0 8px 22px rgba(0, 0, 0, .08);
    transform: translateY(-3px);
}

.card-advies .subtitel {
    display: inline-block;
    color: #6B6B6B;
    font-size: var(--font-size-p1) !important;
    font-weight: 700;
    letter-spacing: .5px;
    text-transform: uppercase;
    padding-right: 16px;
}

.card-advies h4.titel {
    display: inline-block;
    padding: 3px 10px;
    font-size: var(--font-size-p4) !important;
    font-weight: 700;
    line-height: 1.35;
    color: rgb(33, 33, 31);

    background: #F6F5F3;
}

.card-advies .text {
    font-size: var(--font-size-p2) !important;
    color: #6B6B6B;
    line-height: 1.55;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}


.card-advies .card-footer {
    margin-top: auto;
    padding: 10px 16px 15px;
    font-size: var(--font-size-p2) !important;
    color: var(--color-red);
    font-weight: 600;
}

/* NIEUWS */
#blog #side-menu {
    border: 1px solid #E7E4E0;
    border-radius: 4px;
}

#blog #side-menu li:hover {
    border: none !important;
    background-color: #F6F5F3;
}

.card-advies a {
    border: none !important;
}

.card-advies a .titeldiv {
    position: absolute;
    top: 10px;
    left: 16px;
}

div.adviesmaxw {
    max-width: 800px !important;
}

.product .card-advies a:hover .titel {
    color: rgb(33, 33, 31) !important;
}


.fs-90 {
    font-size: 90% !important;
}

.fs-80 {
    font-size: 80% !important;
}



/* ADMIN - VERZENDING */
.dpdstore-warning {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 11.5px;
    color: #8A5A00;
    background: #FFF4E5;
    border: 1px solid #F3D9A8;
    border-radius: 4px;
    padding: 2px 7px;
    margin-bottom: 4px;
}

.gls-weight-warning {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 11.5px;
    color: #B42318;
    background: #FEF0EF;
    border: 1px solid #F5C2C0;
    border-radius: 4px;
    padding: 2px 7px;
    margin-bottom: 4px;
}

.btn-export-dpd,
.btn-export-gls {
    border: 1px solid;
    color: #333;
    padding: 10px 20px;
    border-radius: 8px;
    font-weight: 600;
    transition: all 0.2s ease;
}

.btn-export-dpd {
    border-color: #e30613;
    background-color: #FFF;
    color: #e30613;
}

.btn-export-dpd.actief, .btn-export-dpd:hover {
    background-color: #e30613;
    color: #FFF;
}

.btn-export-gls {
    border-color: #0066b3;
    background-color: #FFF;
    color: #0066b3;
}

.btn-export-gls.actief, .btn-export-gls:hover {
    background-color: #0066b3;
    color: #fff;
}

.carrier-buttons {
    display: flex;
    gap: 5px;
}

.carrier-buttons input[type="radio"] {
    display: none;
}

.carrier-button {
    flex: 1;
    padding: 5px 12px;
    border: 1px solid #ced4da;
    border-radius: 5px;
    background: #fff;
    cursor: pointer;
    text-align: center;
    font-size: 13px;
    font-weight: 500;
    transition: all 0.15s ease;
}

/* DPD */
.carrier-button-dpd {
    color: #e30613;
    border-color: #e30613;
}

.carrier-button-dpd:hover {
    background: #e30613;
    color: #fff;
}

/* GLS */
.carrier-button-gls {
    color: #0066b3;
    border-color: #0066b3;
}

.carrier-button-gls:hover {
    background: #0066b3;
    color: #fff;
}

/* Selected DPD */
.carrier-buttons input[type="radio"][value="dpd"]:checked + .carrier-button {
    background: #e30613;
    color: #fff;
}

/* Selected GLS */
.carrier-buttons input[type="radio"][value="gls"]:checked + .carrier-button {
    background: #0066b3;
    color: #fff;
}


#admin-verzending .hover-grijs:hover td {
    background-color: #F6F5F3;
}

#admin-verzending .buitenland td {
    background-color: #F6F5F3;
}


.btn-export-dpd,
.btn-export-gls {
    position: relative;
}

.dpd-export-count,
.gls-export-count {
    position: absolute;
    top: -8px;
    right: -8px;

    min-width: 22px;
    height: 22px;

    padding: 0 5px;

    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    font-size: 11px;
    font-weight: 600;
    line-height: 1;

    background: #fff;

    border: 2px solid;
}

/* DPD = red */
.dpd-export-count {
    color: #dc3545;
    border-color: #dc3545;
}

/* GLS = blue */
.gls-export-count {
    color: #0d6efd;
    border-color: #0d6efd;
}



/* PRODUCT */
#collapseVarianten {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 14px;
    border: 1.5px dashed #d8d3ca;
    border-top-width: 1.5px;
    border-top-style: dashed;
    border-top-color: rgb(216, 211, 202);
    border-top: 0;
    border-radius: 0 0 4px 4px;
    background: #F6F5F3;
    font-weight: 700;
    font-size: 14px;
    color: var(--color-red);
    cursor: pointer;
    margin-bottom: 18px;
    transition: all .15s;
}

#collapseVarianten:hover {
    background: #fdf3f2;
    border-color: #3282D;
    ;
    transform: translateY(1px);
}

#collapseVarianten span i {
    transition: transform 0.3s ease;
}

#collapseVarianten.open span i {
    transform: rotate(180deg);
}

#variantList.open {
    max-height: none;
}




.container-reverse-md {
    width: 100%;
    padding-left: calc(var(--bs-gutter-x) * .5);
    padding-right: calc(var(--bs-gutter-x) * .5);
}

@media (min-width: 992px) {
    .container-reverse-md {
        max-width: 960px;
        margin-left: auto;
        margin-right: auto;
    }
}


#search-results .container-reverse-md {
    border: 1px solid #F6F5F3;
}

.search-results-categorieen a {
    color: #333;
    background-color: #F6F5F3;
    border-radius: 3px;
    padding: 3px 11px;
    border: 1px solid #E7E4E0;
    margin-left: 8px;

}

.search-results-categorieen a:hover {
    border-color: var(--color-red);
    color: var(--color-red);

}

#search-results .description {
    font-size: var(--font-size-p3);
}

#btnSearchMore {
    color: inherit;
    background-color: transparent;
    border: none;
}

.hover-grijs:hover {
    background-color: #F6F5F3;
}

#MenuNav li:hover {
    border-bottom: 2px solid var(--color-red);
}

.borderbottom {
    border-bottom: 1px solid #a0a0a0;
}

.wraptext {
    overflow-wrap: anywhere;
}


/* overrule adviezen layout */
#adviezen #content a {
    display: inline-block;
    color: var(--color-red) !important;
    text-decoration: underline !important;
}
#adviezen #content a:hover {
    display: inline-block;
    color: var(--color-red-dark) !important;
    text-decoration: underline !important;
}
#adviezen #content ul li, #adviezen #content ol li {
    font-size: var(--font-size-p) !important;
    line-height: 1.6;
}

/*
#adviezen .content-frame .advies {}

#adviezen .content-frame .advies h1 {
  font-size: 1.75rem !important;
}

#adviezen .content-frame .advies h2 {
  font-size: 1.5rem !important;
}

#adviezen .content-frame .advies h3 {
  font-size: 1.25rem !important;
}

#adviezen .content-frame .advies h4 {
  font-size: 1.15rem !important;
}

#adviezen .content-frame .advies p {
  font-size: 1rem !important;
}
*/


h1 {
    font-size: var(--font-size-h2) !important;
}

h2 {
    font-size: var(--font-size-h2) !important;
}

h3 {
    font-size: var(--font-size-h3) !important;
}

h4 {
    font-size: var(--font-size-h4) !important;
}

h5 {
    font-size: var(--font-size-h5) !important;
}

h6 {
    font-size: var(--font-size-h6) !important;
}

p {
    font-size: var(--font-size-p) !important;
    line-height: 1.6;
}

h5.titel {
    font-size: var(--font-size-producttitel) !important;
    margin-top: 10px;
}


#adviezen #content p {
    color: var(--color-text-blog) !important;
}



/* VLEKKENGIDS */
#vlekkengids {
    :root {
        --akemi-red:#e30613;
        --text:#202124;
        --muted:#666;
        --bg:#f6f6f6;
        --card:#fff;
        --border:#dedede;
    }
    * {
        box-sizing:border-box;
    }
    body {
        margin:0;
        font-family:Arial,Helvetica,sans-serif;
        color:#202124;
        background:#fff;
    }
    .hero {
        padding:48px 20px 30px;
        background:linear-gradient(180deg,#fff 0%,#fafafa 100%);
        border-bottom:1px solid #eee;
    }
    .wrap {
        max-width:1180px;
        margin:0 auto;
    }
    .eyebrow {
        color:#e30613;
        font-weight:700;
        text-transform:uppercase;
        letter-spacing:.08em;
        font-size:13px;
    }
    h1 {
        margin:8px 0 12px;
        font-size:clamp(34px,5vw,56px);
        line-height:1.05;
    }
    .intro {
        max-width:780px;
        color:#555;
        font-size:18px;
        line-height:1.55;
    }
    .controls {
        max-width:1180px;
        margin:26px auto 0;
        padding:0 20px;
    }
    .search-row {
        display:flex;
        gap:12px;
        align-items:center;
    }
    .search {
        width:100%;
        padding:16px 18px;
        border:1px solid #cfcfcf;
        border-radius:8px;
        font-size:17px;
        outline:none;
    }
    .search:focus {
        border-color:#e30613;
        box-shadow:0 0 0 3px rgba(227,6,19,.08);
    }
    .clear-btn {
        border:0;
        background:#222;
        color:white;
        padding:16px 20px;
        border-radius:8px;
        cursor:pointer;
        font-weight:700;
    }
    .filters {
        display:flex;
        flex-wrap:wrap;
        gap:9px;
        margin-top:16px;
    }
    .filter-btn {
        border:1px solid #cfcfcf;
        background:#fff;
        border-radius:999px;
        padding:10px 14px;
        cursor:pointer;
        font-size:14px;
        transition:.18s ease;
    }
    .filter-btn:hover, .filter-btn.active {
        background:#e30613;
        color:#fff;
        border-color:#e30613;
    }
    .meta {
        display:flex;
        justify-content:space-between;
        gap:10px;
        align-items:center;
        margin:22px 0 12px;
        color:#666;
    }
    .grid {
        display:grid;
        grid-template-columns:repeat(3,minmax(0,1fr));
        gap:16px;
        max-width:1180px;
        margin:0 auto;
        padding:0 20px 44px;
    }
    .stain-card {
        border:1px solid #dedede;
        border-radius:12px;
        background:#fff;
        overflow:hidden;
        box-shadow:0 2px 10px rgba(0,0,0,.035);
    }
    .card-top {
        padding:18px 18px 14px;
    }
    .category {
        display:inline-block;
        color:#e30613;
        font-size:12px;
        font-weight:700;
        text-transform:uppercase;
        letter-spacing:.04em;
        margin-bottom:8px;
    }
    h3 {
        margin:0;
        font-size:20px;
        line-height:1.25;
    }
    .best,.alt {
        padding:14px 18px;
        border-top:1px solid #eee;
    }
    .best {
        background:#fafafa;
    }
    .best span,.alt span {
        display:block;
        font-size:12px;
        text-transform:uppercase;
        color:#777;
        font-weight:700;
        margin-bottom:5px;
    }
    .best strong {
        color:#111;
    }
    .alt strong {
        color:#444;
        font-weight:600;
    }
    .notice {
        max-width:1140px;
        margin:0 auto 48px;
        padding:22px;
        border-left:4px solid #e30613;
        background:#fafafa;
        line-height:1.55;
    }
    .notice h2 {
        margin:0 0 8px;
        font-size:20px;
    }
    .legend {
        margin-top:12px;
        font-size:14px;
        color:#555;
    }
    .no-results {
        display:none;
        grid-column:1/-1;
        padding:42px 20px;
        text-align:center;
        border:1px dashed #ccc;
        border-radius:12px;
        color:#666;
    }
    @media (max-width:900px) {
        .grid {
            grid-template-columns:repeat(2,1fr);
        }
    }
    @media (max-width:620px) {
        .grid {
            grid-template-columns:1fr;
        }
        .search-row {
            flex-direction:column;
        }
        .clear-btn {
            width:100%;
        }
        .hero {
            padding-top:34px;
        }
    }

    /* --- Overzichtelijkere kolommenweergave --- */
    .grid {
        display:block;
        max-width:1180px;
        margin:0 auto;
        padding:0 20px 44px;
    }
    .results-head {
        display:grid;
        grid-template-columns:minmax(220px,1.15fr) minmax(250px,1.25fr) minmax(220px,1fr);
        gap:0;
        background:#222;
        color:#fff;
        border-radius:10px 10px 0 0;
        overflow:hidden;
        font-weight:700;
    }
    .results-head > div {
        padding:14px 16px;
        border-right:1px solid rgba(255,255,255,.18);
    }
    .results-head > div:last-child {
        border-right:0;
    }

    .stain-card {
        display:grid;
        grid-template-columns:minmax(220px,1.15fr) minmax(250px,1.25fr) minmax(220px,1fr);
        gap:0;
        border:1px solid #dedede;
        border-top:0;
        border-radius:0;
        background:#fff;
        box-shadow:none;
        overflow:visible;
    }
    .stain-card:last-of-type {
        border-radius:0 0 10px 10px;
    }

    .card-top, .best, .alt {
        padding:16px;
        border-top:0;
        border-right:1px solid #eee;
    }
    .card-top {
        background:#fff;
    }
    .best {
        background:#fafafa;
        display:flex;
        align-items:center;
    }
    .alt {
        background:#fff;
        display:flex;
        align-items:center;
        border-right:0;
    }
    .stain-card .category {
        margin-bottom:7px;
        font-size:11px;
    }
    .stain-card h3 {
        font-size:17px;
        line-height:1.3;
    }
    .best span, .alt span {
        display:none;
    }
    .best strong {
        color:#e30613;
        font-size:18px;
        line-height:1.3;
    }
    .alt strong {
        font-size:15px;
        line-height:1.35;
        color:#555;
    }
    .alt.empty strong {
        color:#aaa;
        font-weight:400;
    }
    .no-results {
        margin-top:16px;
    }
    @media (max-width:760px) {
        .results-head {
            display:none;
        }
        .stain-card {
            grid-template-columns:1fr;
            border-top:1px solid #dedede;
            border-radius:10px;
            margin-bottom:12px;
            overflow:hidden;
        }
        .card-top, .best, .alt {
            border-right:0;
            border-top:1px solid #eee;
        }
        .card-top {
            border-top:0;
        }
        .best span, .alt span {
            display:block;
            margin-right:10px;
            min-width:105px;
        }
        .best, .alt {
            display:block;
        }
    }

    /* --- Vier kolommen: categorie apart --- */
    .results-head {
        grid-template-columns:minmax(180px,.9fr) minmax(220px,1.1fr) minmax(250px,1.25fr) minmax(220px,1fr);
    }
    .stain-card {
        grid-template-columns:minmax(180px,.9fr) minmax(220px,1.1fr) minmax(250px,1.25fr) minmax(220px,1fr);
    }
    .category-cell {
        padding:16px;
        border-right:1px solid #eee;
        display:flex;
        align-items:center;
        background:#fff;
    }
    .category-cell strong {
        color:#e30613;
        font-size:14px;
        line-height:1.35;
    }
    .card-top .category {
        display:none;
    }
    @media (max-width:760px) {
        .category-cell {
            border-right:0;
            border-bottom:1px solid #eee;
            padding:12px 16px;
            background:#fafafa;
        }
        .category-cell::before {
            content:"Categorie";
            display:block;
            min-width:105px;
            margin-right:10px;
            font-size:12px;
            text-transform:uppercase;
            color:#777;
            font-weight:700;
        }
    }

    /* --- Categorie blijft filterbaar, maar wordt niet in de tabel getoond --- */
    .results-head {
        grid-template-columns:minmax(240px,1.1fr) minmax(300px,1.35fr) minmax(260px,1fr);
    }
    .stain-card {
        grid-template-columns:minmax(240px,1.1fr) minmax(300px,1.35fr) minmax(260px,1fr);
    }
    .category-cell {
        display:none !important;
    }
    .card-top .category {
        display:none !important;
    }
    @media (max-width:760px) {
        .stain-card {
            grid-template-columns:1fr;
        }
    }

    /* --- Fijnere typografie + duidelijke productlinks --- */
    body {
        font-weight: 400;
    }
    .intro {
        font-weight: 400;
    }
    .filter-btn,
    .clear-btn,
    .meta strong {
        font-weight: 500;
    }
    .stain-card h3 {
        font-weight: 500;
    }
    .best strong {
        font-weight: 400 !important;
        color: #333 !important;
        font-size: 17px !important;
    }
    .alt strong {
        font-weight: 400 !important;
        color: #555 !important;
    }
    .product-link {
        color: #e30613;
        font-weight: 500;
        text-decoration: underline;
        text-decoration-thickness: 1px;
        text-underline-offset: 3px;
        transition: opacity .15s ease;
    }
    .product-link:hover {
        opacity: .72;
    }

    /* --- Exact uitlijning kolomtitels met tabelkolommen --- */
    .results-head,
    .stain-card {
        width: 100%;
        grid-template-columns: 32% 38% 30% !important;
    }

    .results-head {
        box-sizing: border-box;
        margin: 0;
    }

    .results-head > div,
    .stain-card > .card-top,
    .stain-card > .best,
    .stain-card > .alt {
        min-width: 0;
        box-sizing: border-box;
    }

    @media (max-width:760px) {
        .stain-card {
            grid-template-columns: 1fr !important;
        }
    }

    /* --- Definitieve uitlijning: kop en rijen in exact dezelfde container --- */
    .grid {
        display: block;
        max-width: 1180px;
        width: 100%;
        margin: 0 auto;
        padding: 0 20px 44px;
    }

    .results-head,
    .stain-card {
        width: 100%;
        grid-template-columns: 32% 38% 30% !important;
        margin: 0;
    }

    .results-head {
        border-radius: 10px 10px 0 0;
    }

    .results-head > div,
    .stain-card > .card-top,
    .stain-card > .best,
    .stain-card > .alt {
        box-sizing: border-box;
        min-width: 0;
    }

    .stain-card {
        border-left: 1px solid #dedede;
        border-right: 1px solid #dedede;
    }

    @media (max-width:760px) {
        .results-head {
            display: none;
        }
        .stain-card {
            grid-template-columns: 1fr !important;
            margin-bottom: 12px;
            border-top: 1px solid #dedede;
            border-radius: 10px;
        }
    }

    /* --- Download PDF + contactblok --- */
    .download-contact {
        max-width: 1180px;
        margin: 0 auto 26px;
        padding: 0 20px;
    }
    .download-contact-inner {
        padding: 24px;
        border: 1px solid #dedede;
        border-radius: 10px;
        background: #fafafa;
    }
    .download-contact h2 {
        margin: 0 0 8px;
        font-size: 21px;
        font-weight: 500;
    }
    .download-contact p {
        margin: 0 0 18px;
        line-height: 1.6;
        font-weight: 400;
        color: #444;
    }
    .download-contact p a {
        color: #e30613;
        font-weight: 500;
        text-decoration: none;
    }
    .download-contact p a:hover {
        text-decoration: underline;
    }
    .pdf-download {
        display: inline-block;
        padding: 12px 18px;
        border-radius: 7px;
        background: #e30613;
        color: #fff;
        font-weight: 500;
        text-decoration: none;
    }
    .pdf-download:hover {
        opacity: .88;
    }

    .tooltip-p {
        display: inline !important;
        white-space: nowrap;
        background: rgb(253, 244, 243);
        border: 1px solid #e30613;
        border-radius: 20px;
        color: #e30613 !important;
        border-radius: 50rem;
        padding: 2px 5px;
        font-size: 80% !important;
    }

    sup {
        white-space: nowrap;
    }
}