
:root {
    --accent: var(--color-accent, #3b82f6);
    --ink: var(--color-text, #16181d);
    --paper: var(--color-bg, #ffffff);
    --muted: var(--color-muted, #6b7280);
    --line: color-mix(in srgb, var(--ink) 12%, transparent);
}
* { box-sizing: border-box; }
body {
    margin: 0;
    font: 16px/1.65 ui-sans-serif, system-ui, "Segoe UI", sans-serif;
    color: var(--ink);
    background: var(--paper);
}
.preview-bar {
    margin: 0;
    padding: 10px 20px;
    text-align: center;
    font-size: 13px;
    background: var(--accent);
    color: var(--color-accent-contrast, #ffffff);
}
.site-header {
    padding: 56px 24px 8px;
    text-align: center;
}
.brand {
    font-size: 30px;
    font-weight: 650;
    letter-spacing: -.02em;
    color: inherit;
    text-decoration: none;
}
.tagline {
    margin: 6px 0 0;
    color: var(--muted);
}
.site-nav {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 8px 16px;
}
.site-search,
.search-form {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
}
.search-form { margin: 0 0 24px; max-width: 640px; }
.search-form__label { flex: 1 0 100%; color: var(--muted); }
.site-search input,
.search-form input {
    flex: 1 1 12em;
    min-height: 44px;
    padding: 8px 12px;
    font: inherit;
    color: inherit;
    background: var(--paper);
    border: 1px solid var(--line);
    border-radius: 8px;
}
.site-search .button,
.search-form .button {
    padding: 8px 16px;
    font: inherit;
    font-weight: 600;
    color: var(--color-accent-contrast, #ffffff);
    background: var(--accent);
    border: 0;
    border-radius: 8px;
    cursor: pointer;
}
.visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
}
.site-main {
    width: min(880px, 92vw);
    margin: 0 auto;
    padding: 40px 0 64px;
}
.hero h1 {
    margin: 0 0 12px;
    font-size: clamp(28px, 5vw, 42px);
    line-height: 1.15;
    letter-spacing: -.03em;
}
.hero p { margin: 0 0 8px; color: var(--muted); }
.cards {
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    margin-top: 40px;
}
.cards .card,
.grid--3 .card {
    padding: 18px 20px;
    border: 1px solid var(--line);
    border-radius: 14px;
}
.cards .card h2,
.grid--3 .card h2 {
    margin: 0 0 6px;
    font-size: 15px;
    color: var(--accent);
}
.cards .card p,
.grid--3 .card p { margin: 0; font-size: 14px; color: var(--muted); }
.site-footer {
    padding: 24px;
    border-top: 1px solid var(--line);
    text-align: center;
    font-size: 13px;
    color: var(--muted);
}
.site-footer p { margin: 2px 0; }
img { max-width: 100%; height: auto; }
picture { display: block; }
picture > img { max-width: 100%; height: auto; display: block; }
.skip-link {
    position: absolute;
    left: 8px;
    top: 8px;
    z-index: 100;
    padding: .6em 1.2em;
    border-radius: var(--radius, 4px);
    background: var(--color-accent, #2563eb);
    color: var(--color-accent-contrast, #fff);
    text-decoration: none;
    transform: translateY(-200%);
}
.skip-link:focus { transform: translateY(0); }
.button, .top__nav a, .brand, .site-header a {
    min-height: 44px;
    min-width: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .01ms !important;
        scroll-behavior: auto !important;
    }
}
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible,
[tabindex]:focus-visible {
    outline: 3px solid var(--color-accent, #2563eb);
    outline-offset: 2px;
    border-radius: 2px;
}
.price__was { color: var(--color-muted); font-size: var(--text-small); margin-right: .4em; }
.price__now { font-weight: 650; }
.badge {
    display: inline-block;
    margin-left: .4em;
    padding: .1em .5em;
    border-radius: var(--radius);
    font-size: var(--text-small);
    font-weight: 650;
    white-space: nowrap;
}
.badge--sale { background: var(--color-accent); color: var(--color-accent-contrast); }
.listing { display: grid; gap: var(--space-normal); align-items: start; }
.filters {
    border: 1px solid var(--theme-line);
    border-radius: var(--radius);
    padding: var(--space-tight);
    background: var(--color-surface);
}
.filters > summary {
    display: flex;
    align-items: center;
    gap: var(--space-tight);
    min-height: 44px;
    cursor: pointer;
    font-size: var(--text-base);
    list-style: none;
}
.filters > summary::-webkit-details-marker { display: none; }
.filters > summary::after {
    content: "";
    margin-inline-start: auto;
    width: .5em;
    height: .5em;
    border-inline-end: 2px solid currentColor;
    border-block-end: 2px solid currentColor;
    transform: rotate(45deg);
}
.filters[open] > summary::after { transform: rotate(-135deg); }
.filters__badge {
    min-width: 1.5em;
    padding: 0 .35em;
    border-radius: 999px;
    text-align: center;
    background: var(--color-accent);
    color: var(--color-accent-contrast);
    font-size: var(--text-small);
}
.filters__body { padding-block-start: var(--space-tight); }
.filters__clear { font-size: var(--text-small); }
.filters__group + .filters__group {
    margin-block-start: var(--space-tight);
    padding-block-start: var(--space-tight);
    border-block-start: 1px solid var(--theme-line);
}
.filters__group-title {
    margin: 0 0 var(--space-tight);
    font-size: var(--text-small);
    text-transform: uppercase;
}
.filters__options { margin: 0; padding: 0; list-style: none; }
.filters__option {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-tight);
    min-height: 44px;
    text-decoration: none;
    color: inherit;
}
.filters__option--on { font-weight: 600; }
.filters__option--on .filters__option-label::before {
    content: "";
    display: inline-block;
    width: .45em;
    height: .25em;
    margin-inline-end: .5em;
    border-inline-start: 2px solid currentColor;
    border-block-end: 2px solid currentColor;
    transform: rotate(-45deg);
}
.filters__count { color: var(--color-muted); font-size: var(--text-small); }
@media (min-width: 60em) {
    .listing { grid-template-columns: 16rem 1fr; gap: var(--space-loose); }
    .filters > summary { cursor: default; }
    .filters > summary::after { display: none; }
    .filters > .filters__body { display: block; }
    .filters::details-content {
        content-visibility: visible;
        block-size: auto;
        overflow: visible;
    }
}
.filters__price {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--space-tight);
    align-items: end;
}
.filters__price-label { font-size: var(--text-small); }
.filters__price-field {
    min-width: 0;
    width: 100%;
    min-height: 44px;
    padding: 0 .5em;
    border: 1px solid var(--theme-line);
    border-radius: var(--radius);
    background: var(--color-bg);
    color: inherit;
    font: inherit;
}
.filters__price-basis {
    grid-column: 1 / -1;
    color: var(--color-muted);
    font-size: var(--text-small);
}
.filters__price-apply {
    grid-column: 1 / -1;
    min-height: 44px;
    border: 0;
    border-radius: var(--radius);
    background: var(--color-accent);
    color: var(--color-accent-contrast);
    font: inherit;
    cursor: pointer;
}
.filters__price-label:nth-of-type(2) { grid-column: 2; }
.filters__sort {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--space-tight);
}
.filters__sort-label { font-size: var(--text-small); }
.filters__sort-select {
    min-width: 0;
    flex: 1 1 8rem;
    min-height: 44px;
    padding: 0 .5em;
    border: 1px solid var(--theme-line);
    border-radius: var(--radius);
    background: var(--color-bg);
    color: inherit;
    font: inherit;
}
.filters__sort-apply {
    min-height: 44px;
    padding: 0 .9em;
    border: 0;
    border-radius: var(--radius);
    background: var(--color-accent);
    color: var(--color-accent-contrast);
    font: inherit;
    cursor: pointer;
}
.filters__chips {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-tight);
    margin: 0 0 var(--space-tight);
    padding: 0;
    list-style: none;
}
.filters__chip {
    display: inline-flex;
    align-items: center;
    gap: .4em;
    min-height: 32px;
    padding: 0 .7em;
    border: 1px solid var(--theme-line);
    border-radius: 999px;
    font-size: var(--text-small);
}
.filters__chip-remove { color: var(--color-muted); }
@media (min-width: 60em) {
    .filters { grid-row: 1 / span 2; }
    .filters__sort {
        grid-column: 2;
        grid-row: 1;
        justify-content: flex-end;
    }
    .listing__results { grid-column: 2; grid-row: 2; }
}
.pagination {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .4em;
    margin-top: var(--space-normal);
    font-size: var(--text-small);
}
.pagination__step,
.pagination__number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 44px;
    min-height: 44px;
    padding: 0 .5em;
    border-radius: var(--radius);
}
.pagination__number[aria-current="page"] {
    background: var(--color-accent);
    color: var(--color-accent-contrast);
}
.pagination__gap { padding: 0 .2em; color: var(--color-muted); }
.listing__count { margin: calc(0px - var(--space-tight)) 0 var(--space-normal); font-size: var(--text-small); }
body { overflow-x: clip; }
.site-header {
    padding: 0;
    text-align: left;
    background: var(--paper);
}
.site-header__top,
.site-header__bar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px 24px;
    width: min(1200px, 92vw);
    margin: 0 auto;
}
.site-header__top { padding: 22px 0; }
.brand {
    font-size: 28px;
    font-weight: 800;
    letter-spacing: -.02em;
    color: var(--ink);
}
.brand::after {
    content: "";
    width: .38em;
    height: .38em;
    margin-left: .12em;
    border-radius: 50%;
    background: var(--accent);
    align-self: flex-start;
    margin-top: .35em;
}
.site-header .site-search {
    position: relative;
    flex: 1 1 320px;
    flex-wrap: nowrap;
    max-width: 760px;
}
.site-search__icon {
    position: absolute;
    left: 16px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--muted);
    pointer-events: none;
}
.site-header .site-search input {
    flex: 1 1 auto;
    min-height: 56px;
    padding: 8px 16px 8px 44px;
    background: var(--color-surface, #f4f4f4);
    border: 1px solid transparent;
    border-radius: 6px;
}
.site-header .site-search input:focus { background: var(--paper); border-color: var(--line); }
.service-nav {
    display: flex;
    align-items: stretch;
    margin-left: auto;
}
.service-nav__link {
    flex-direction: column;
    gap: 4px;
    padding: 0 20px;
    font-size: 15px;
    color: var(--ink);
    text-decoration: none;
}
.service-nav__link + .service-nav__link { border-left: 1px solid var(--line); }
.service-nav__link:hover { color: var(--accent); }
.site-header__bar {
    width: 100%;
    padding: 6px max(4vw, calc((100% - 1200px) / 2));
    background: var(--ink);
    color: var(--paper);
}
.site-nav {
    flex: 1 1 auto;
    justify-content: flex-start;
    gap: 0 22px;
}
.site-nav a,
.basket-link {
    font-size: 17px;
    font-weight: 500;
    color: var(--paper);
    text-decoration: none;
}
.site-nav a:hover { text-decoration: underline; text-underline-offset: 6px; }
.basket-link { gap: 10px; margin-left: auto; }
.basket-link svg {
    box-sizing: content-box;
    padding: 6px;
    border: 1px solid var(--accent);
    border-radius: 4px;
    color: var(--paper);
}
.basket-link:hover svg { background: var(--accent); color: var(--color-accent-contrast, #ffffff); }
.site-header__bar a:focus-visible { outline-color: var(--paper); }
.site-main { width: min(1200px, 92vw); }
.home-hero {
    margin: 0 calc(50% - 50vw);
    background: linear-gradient(120deg, var(--hero-from, #f9c300) 0%, var(--hero-mid, #f7a400) 45%, var(--hero-to, #f27a00) 100%);
    color: var(--color-bg, #ffffff);
}
.home-hero__inner {
    width: min(1200px, 92vw);
    margin: 0 auto;
    padding: clamp(56px, 10vw, 140px) 0;
    text-shadow: 0 1px 3px color-mix(in srgb, var(--ink) 45%, transparent);
}
.home-hero h1 {
    margin: 0 0 20px;
    font-size: clamp(40px, 7vw, 88px);
    font-weight: 800;
    line-height: 1.05;
    letter-spacing: -.03em;
    color: inherit;
}
.home-hero p {
    max-width: 52rem;
    margin: 0 0 32px;
    font-size: clamp(18px, 2.2vw, 28px);
    font-weight: 500;
    line-height: 1.5;
    color: inherit;
}
.home-hero__button {
    display: inline-flex;
    align-items: center;
    min-height: 56px;
    padding: 0 26px;
    border-radius: 999px;
    background: var(--accent);
    color: var(--color-accent-contrast, #ffffff);
    font-size: 21px;
    font-weight: 700;
    text-decoration: none;
    text-shadow: none;
}
.home-hero__button:hover { background: color-mix(in srgb, var(--accent) 85%, var(--ink)); }
.site-search .button,
.search-form .button,
.filters__price-apply,
.filters__sort-apply { border-radius: 999px; }
.site-footer { background: var(--color-surface, #f4f4f4); border-top: 0; }
.site-footer a { color: var(--accent); }
@media (max-width: 760px) {
    .site-header__top { padding: 14px 0; }
    .site-header .site-search { order: 3; flex-basis: 100%; }
    .service-nav__link { padding: 0 10px; font-size: 13px; }
    .site-nav { gap: 0 14px; }
    .site-nav a, .basket-link { font-size: 15px; }
    .site-header__bar { flex-wrap: nowrap; }
    .basket-link span {
        position: absolute;
        width: 1px;
        height: 1px;
        overflow: hidden;
        clip-path: inset(50%);
        white-space: nowrap;
    }
}
:root { --side: max(16px, calc((100vw - var(--container, 1200px)) / 2)); }
header.page-band {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    column-gap: 24px;
    padding-inline: var(--side);
    background: var(--color-bg);
}
#top-row { grid-column: 1; grid-row: 1; padding-block: 20px; }
#top-row .nav-bar__inner { max-width: none; justify-content: flex-start; gap: 16px 40px; }
#top-row .rich-nav__wide,
#top-row .rich-nav__narrow { display: none; }
#top-row .rich-nav__brand {
    order: 1;
    flex-direction: row;
    justify-content: flex-start;
    font-size: 28px;
    font-weight: 800;
    letter-spacing: -.02em;
}
#top-row .rich-nav__brand::after {
    content: "";
    width: .38em;
    height: .38em;
    margin-left: .12em;
    border-radius: 50%;
    background: var(--color-accent);
    align-self: flex-start;
    margin-top: .2em;
}
#top-row .rich-nav__search { order: 2; flex: 1 1 320px; max-width: 760px; flex-wrap: nowrap; }
#top-row .rich-nav__search-label {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
}
#top-row .rich-nav__search input {
    flex: 1 1 auto;
    max-width: none;
    min-height: 52px;
    padding: 0 16px;
    border: 1px solid transparent;
    border-radius: 6px;
    background: var(--color-surface);
}
#top-row .rich-nav__search input:focus { background: var(--color-bg); border-color: var(--color-muted); }
#top-row .rich-nav__search button { min-height: 52px; padding: 0 1.2em; border-radius: 999px; font-weight: 600; }
#account { grid-column: 2; grid-row: 1; align-self: center; padding: 0; }
#account .nav-bar__account {
    flex-direction: column;
    gap: 2px;
    padding: 0 8px;
    font-size: 15px;
}
#account .nav-bar__account:hover { color: var(--color-accent); }
#category-bar {
    grid-column: 1 / -1;
    grid-row: 2;
    margin-inline: calc(0px - var(--side));
    padding-block: 6px;
    padding-inline: var(--side) calc(var(--side) + 64px);
}
#category-bar .section__inner { max-width: none; }
#category-bar .mega-nav__level-1 { gap: 0 24px; }
#category-bar .mega-nav__top,
#category-bar .mega-nav__stack a { font-size: 17px; font-weight: 500; }
#category-bar .mega-nav__top:hover { text-decoration: underline; text-underline-offset: 6px; }
#basket {
    grid-column: 2;
    grid-row: 2;
    z-index: 1;
    align-self: center;
    padding: 0;
    color: var(--color-bg);
}
#basket .nav-bar__basket {
    padding: 8px;
    border: 1px solid var(--color-accent);
    border-radius: 4px;
}
#basket .nav-bar__basket:hover { background: var(--color-accent); color: var(--color-accent-contrast); }
#category-bar a:focus-visible,
#category-bar summary:focus-visible,
#basket a:focus-visible { outline-color: var(--color-bg); }
.home-hero__inner { width: auto; padding-inline: var(--side); }
.page-footer a { color: var(--color-accent); }
@media (max-width: 699px) {
    #top-row { padding-block: 12px; }
    #top-row .nav-bar__inner { padding-inline: 0; }
    #top-row .rich-nav__brand { font-size: 24px; flex: 1 1 auto; align-items: center; }
    #category-bar .mega-nav__stack { display: flex; flex-wrap: wrap; gap: 0 18px; }
    #top-row .rich-nav__search { flex-basis: 100%; }
    #top-row .rich-nav__search button { padding: 0 .9em; }
    #account .nav-bar__account { font-size: 13px; }
}
#top-row .rich-nav__brand picture { display: block; flex: 0 0 auto; }
#top-row .rich-nav__brand img { display: block; height: 56px; width: auto; max-width: none; max-height: none; }
#top-row .rich-nav__brand:has(img)::after { display: none; }
#top-row .rich-nav__name { display: block; }
#top-row .rich-nav__search button:hover,
.home-hero__button:hover { background: var(--brand-pink, #be2c75); }
#account .nav-bar__account:hover { color: var(--brand-pink, #be2c75); }
#category-bar { border-bottom: 3px solid var(--brand-pink, #be2c75); }
#category-bar .mega-nav__top:hover { text-decoration-color: var(--brand-pink, #be2c75); }
#basket .nav-bar__basket { border-color: var(--brand-pink, #be2c75); }
#basket .nav-bar__basket:hover { background: var(--brand-pink, #be2c75); }
@media (max-width: 699px) {
    #top-row .rich-nav__brand img { height: 44px; }
}
#category-bar .mega-nav__panel {
    color: var(--color-text);
    background: var(--color-bg);
    border: 0;
    border-top: 3px solid var(--brand-pink, #be2c75);
    border-radius: 0 0 8px 8px;
    box-shadow: 0 12px 24px color-mix(in srgb, var(--color-text) 18%, transparent);
}
#category-bar .mega-nav__panel a:hover { color: var(--color-accent); }
#category-bar .mega-nav__panel a:focus-visible { outline-color: var(--color-accent); }
#category-bar .mega-nav__column-head { color: var(--color-text); }
#home-hero {
    margin-inline: calc(50% - 50vw);
    padding-inline: var(--side);
    background: linear-gradient(120deg, var(--hero-from, #f9c300) 0%, var(--hero-mid, #f7a400) 45%, var(--hero-to, #f27a00) 100%);
    color: var(--color-bg);
    text-shadow: 0 1px 3px color-mix(in srgb, var(--color-text) 45%, transparent);
}
#home-hero .section__inner { max-width: none; padding-block: clamp(32px, 6vw, 80px); }
#home-hero :is(h1, h2, .h1, .h2) {
    margin: 0 0 20px;
    font-size: clamp(40px, 7vw, 88px);
    font-weight: 800;
    line-height: 1.05;
    letter-spacing: -.03em;
    color: inherit;
}
#home-hero :is(p, .lede) {
    max-width: 52rem;
    margin: 0 0 32px;
    font-size: clamp(18px, 2.2vw, 28px);
    font-weight: 500;
    line-height: 1.5;
    color: inherit;
}
#home-hero img { display: none; }
#home-hero .btn {
    min-height: 56px;
    padding: 0 26px;
    border-radius: 999px;
    font-size: 21px;
    font-weight: 700;
    text-shadow: none;
}
#home-hero .btn--solid { background: var(--color-accent); border-color: var(--color-accent); color: var(--color-accent-contrast); }
#home-hero .btn--solid:hover { background: var(--brand-pink, #be2c75); border-color: var(--brand-pink, #be2c75); }
#categories :is(h2, .h2),
#populair-verzorging :is(h2, .h2) { font-weight: 800; }
#vertrouwen :is(h3, .h3, h4, .h4) { color: var(--color-accent); font-weight: 800; margin-bottom: .2em; }
#vertrouwen p { margin: 0; }
#afsluiter .section__inner {
    background: linear-gradient(135deg, var(--color-accent), var(--brand-pink, #be2c75));
    border-radius: 12px;
}
#afsluiter :is(h2, .h2) { font-weight: 800; }
#afsluiter .btn--solid { background: var(--color-accent-contrast); border-color: var(--color-accent-contrast); color: var(--color-accent); }
#vertrouwen .section__inner {
    border-block: 1px solid color-mix(in srgb, var(--color-text) 12%, transparent);
    padding-block: 20px;
}
#vertrouwen :is(h3, .h3, h4, .h4) { font-size: 17px; }
#vertrouwen p { font-size: 15px; color: var(--color-muted); }
#populair-verzorging .card__shade {
    border-radius: 12px;
    background: color-mix(in srgb, var(--color-accent) 6%, var(--color-bg));
}
#populair-verzorging .product-card__name { font-size: 15px; font-weight: 500; line-height: 1.35; }
#populair-verzorging .product-card__price { color: var(--color-accent); font-weight: 700; }
#populair-verzorging .product-card__link:hover .product-card__name { color: var(--color-accent); }
#populair-verzorging .slideshow__arrow { border-radius: 999px; }
#afsluiter .btn-row { justify-content: center; }
#afsluiter .btn { border-radius: 999px; padding: .75em 1.6em; font-weight: 700; }
#afsluiter p { opacity: .9; }
:root {
    --icon-pin: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-7-6.2-7-11a7 7 0 0 1 14 0c0 4.8-7 11-7 11z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E");
    --icon-mail: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='M3 7l9 6 9-6'/%3E%3C/svg%3E");
    --icon-phone: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 4h4l2 5-2.5 1.5a11 11 0 0 0 5 5L15 13l5 2v4a2 2 0 0 1-2 2A16 16 0 0 1 3 6a2 2 0 0 1 2-2z'/%3E%3C/svg%3E");
    --icon-return: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 14L4 9l5-5'/%3E%3Cpath d='M4 9h10a6 6 0 0 1 0 12h-3'/%3E%3C/svg%3E");
    --icon-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 6l6 6-6 6'/%3E%3C/svg%3E");
    --icon-star: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l2.8 5.7 6.2.9-4.5 4.4 1 6.2L12 17.3 6.5 20.2l1-6.2L3 9.6l6.2-.9z'/%3E%3C/svg%3E");
    --icon-headset: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 14v-2a8 8 0 0 1 16 0v2'/%3E%3Crect x='3' y='14' width='4' height='6' rx='1.5'/%3E%3Crect x='17' y='14' width='4' height='6' rx='1.5'/%3E%3C/svg%3E");
    --icon-shop: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 10v10h16V10'/%3E%3Cpath d='M3 10l2-6h14l2 6'/%3E%3Cpath d='M9 20v-6h6v6'/%3E%3C/svg%3E");
    --icon-check: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E");
    --icon-search: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M20 20l-4-4'/%3E%3C/svg%3E");
}
.dp-icon,
#footer-contact p:not(:has(img))::before,
#footer-service a[href^="mailto:"]::before,
#footer-service a[href^="tel:"]::before,
#footer-service a[href*="withdraw"]::before,
#footer-categorieen li > a::before,
#vertrouwen :is(h3, .h3, h4, .h4)::before,
#top-row .rich-nav__search button::before {
    content: "";
    display: inline-block;
    flex: none;
    width: 18px;
    height: 18px;
    vertical-align: -3px;
    margin-right: 10px;
    background-color: currentColor;
    -webkit-mask: var(--icon-check) center / contain no-repeat;
            mask: var(--icon-check) center / contain no-repeat;
}
#top-row .rich-nav__search input {
    padding-left: 46px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7' stroke='%23888'/%3E%3Cpath d='M20 20l-4-4' stroke='%23888'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: 16px center;
    background-size: 18px;
}
#top-row .rich-nav__search button { display: inline-flex; align-items: center; }
#top-row .rich-nav__search button::before { -webkit-mask-image: var(--icon-search); mask-image: var(--icon-search); margin-right: 8px; width: 16px; height: 16px; }
#vertrouwen :is(h3, .h3, h4, .h4) { display: flex; align-items: center; }
#vertrouwen :is(h3, .h3, h4, .h4)::before {
    width: 20px;
    height: 20px;
    margin-right: 12px;
    color: var(--color-accent);
}
#vertrouwen :is(.grid, [class*="grid"]) > :nth-child(1) :is(h3, .h3, h4, .h4)::before { -webkit-mask-image: var(--icon-star); mask-image: var(--icon-star); }
#vertrouwen :is(.grid, [class*="grid"]) > :nth-child(2) :is(h3, .h3, h4, .h4)::before { -webkit-mask-image: var(--icon-headset); mask-image: var(--icon-headset); }
#vertrouwen :is(.grid, [class*="grid"]) > :nth-child(3) :is(h3, .h3, h4, .h4)::before { -webkit-mask-image: var(--icon-shop); mask-image: var(--icon-shop); }
#vertrouwen p { padding-left: 32px; }
:is(footer, div, section):has(> #footer-contact):has(> #footer-categorieen) {
    --footer-ground: color-mix(in srgb, var(--color-text) 4%, var(--color-bg));
    display: grid;
    grid-template-columns: 1.4fr 1fr 1fr;
    gap: 40px;
    width: 100%;
    max-width: var(--container);
    box-sizing: border-box;
    margin: 64px auto 0;
    padding: 56px var(--theme-section-side, 16px) 40px;
    text-align: left;
    background: var(--footer-ground);
    box-shadow: 0 0 0 100vmax var(--footer-ground);
    clip-path: inset(0 -100vmax);
    border-top: 0;
}
@media (max-width: 760px) {
    :is(footer, div, section):has(> #footer-contact):has(> #footer-categorieen) {
        grid-template-columns: 1fr;
        gap: 28px;
    }
}
:is(#footer-contact, #footer-categorieen, #footer-service) {
    padding: 0;
    background: none;
    font-size: 14px;
    line-height: 1.7;
    color: color-mix(in srgb, var(--color-text) 70%, transparent);
}
:is(#footer-contact, #footer-categorieen, #footer-service) .section__inner { max-width: none; padding: 0; }
:is(#footer-contact, #footer-categorieen, #footer-service) :is(h2, h3, h4, .h2, .h3, .h4) {
    margin: 0 0 16px;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--color-text);
}
:is(#footer-contact, #footer-categorieen, #footer-service) a {
    color: var(--color-text);
    text-decoration: none;
}
:is(#footer-contact, #footer-categorieen, #footer-service) a:hover {
    color: var(--color-accent);
    text-decoration: underline;
    text-underline-offset: 4px;
}
:is(#footer-contact, #footer-categorieen, #footer-service) p { margin: 0 0 12px; }
#footer-contact img { display: block; max-height: 48px; width: auto; margin-bottom: 20px; }
#footer-contact p:not(:has(img)) { position: relative; padding-left: 28px; }
#footer-contact p:not(:has(img))::before {
    position: absolute;
    left: 0;
    top: 3px;
    color: var(--color-accent);
    -webkit-mask-image: var(--icon-pin); mask-image: var(--icon-pin);
}
#footer-service a { display: inline-flex; align-items: center; padding-block: 2px; }
#footer-service a::before { color: var(--color-accent); }
#footer-service a[href^="mailto:"]::before { -webkit-mask-image: var(--icon-mail); mask-image: var(--icon-mail); }
#footer-service a[href^="tel:"]::before { -webkit-mask-image: var(--icon-phone); mask-image: var(--icon-phone); }
#footer-service a[href*="withdraw"]::before { -webkit-mask-image: var(--icon-return); mask-image: var(--icon-return); }
#footer-categorieen :is(ul, ol) {
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin: 0;
    padding: 0;
    list-style: none;
}
#footer-categorieen :is(ul, ol) :is(ul, ol) { display: none; }
#footer-categorieen li { margin: 0; padding: 0; }
#footer-categorieen li > a { display: inline-flex; align-items: center; min-height: 0; padding-block: 2px; }
#footer-categorieen li > a::before {
    width: 14px;
    height: 14px;
    margin-right: 8px;
    color: var(--color-accent);
    -webkit-mask-image: var(--icon-chevron); mask-image: var(--icon-chevron);
}
.page-footer {
    --footer-ground: color-mix(in srgb, var(--color-text) 4%, var(--color-bg));
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 8px 24px;
    max-width: var(--container);
    box-sizing: border-box;
    margin: 0 auto;
    padding: 20px var(--theme-section-side, 16px) 28px;
    background: var(--footer-ground);
    box-shadow: 0 0 0 100vmax var(--footer-ground);
    clip-path: inset(0 -100vmax);
    border-top: 1px solid color-mix(in srgb, var(--color-text) 12%, transparent);
    color: color-mix(in srgb, var(--color-text) 60%, transparent);
    font-size: 13px;
    text-align: left;
}
.page-footer > p { margin: 0; }
.page-footer .section,
.page-footer .section__inner { padding: 0; margin: 0; width: auto; max-width: none; background: none; }
.page-footer .page-legal { margin: 0; }
.page-footer .page-legal a,
.page-footer a {
    color: color-mix(in srgb, var(--color-text) 75%, transparent);
    text-decoration: none;
}
.page-footer .page-legal a:hover,
.page-footer a:hover { color: var(--color-accent); text-decoration: underline; text-underline-offset: 3px; }
#categories .tile__link:has(img) img {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    border-radius: 12px;
    transition: transform .15s ease, box-shadow .15s ease;
}
#categories .tile__link:has(img):hover img {
    transform: translateY(-3px);
    box-shadow: 0 10px 22px color-mix(in srgb, var(--color-accent) 25%, transparent);
}
#categories .tile__link:has(img) .tile__label { margin-top: 12px; font-size: 17px; }
#home-slider {
    margin-inline: calc(50% - 50vw);
    padding: 0;
}
#home-slider .slideshow__slide {
    padding-inline: var(--side, 16px);
    background: linear-gradient(120deg, #f7eef3 0%, #f1dbe6 100%);
    color: var(--color-text);
}
#home-slider .slideshow__body > * { max-width: 34rem; }
#home-slider .eyebrow { color: var(--color-accent); font-weight: 800; }
#home-slider :is(h1, h2, .h1, .h2) {
    margin: 0 0 16px;
    font-size: clamp(36px, 5.5vw, 68px);
    font-weight: 800;
    line-height: 1.05;
    letter-spacing: -.03em;
    color: var(--color-text);
}
#home-slider p:not(.eyebrow) {
    margin: 0 0 28px;
    font-size: clamp(17px, 1.8vw, 21px);
    line-height: 1.5;
    color: color-mix(in srgb, var(--color-text) 75%, transparent);
}
#home-slider .btn {
    min-height: 48px;
    padding: .7em 1.5em;
    border-radius: 999px;
    font-weight: 700;
}
#home-slider .btn--outline { background: var(--color-bg); }
#home-slider .slideshow__arrows { inset-inline: 40px; }
#home-slider .slideshow__arrow {
    border-radius: 999px;
    background: var(--color-bg);
    color: var(--color-accent);
    box-shadow: 0 4px 14px color-mix(in srgb, var(--color-text) 15%, transparent);
}
@media (max-width: 700px) {
    #home-slider .slideshow__body {
        padding: 20px;
        border-radius: 12px;
        background: color-mix(in srgb, var(--color-bg) 85%, transparent);
    }
}
#populair-verzorging { position: relative; padding-inline: var(--theme-section-side, 16px); }
#populair-verzorging .product-carousel__track {
    max-width: var(--container);
    margin-inline: auto;
    padding-inline: 0;
}
#categories .tile__link {
    display: flex;
    align-items: flex-end;
    aspect-ratio: var(--ratio, 4 / 3);
    padding: 20px;
    border-radius: 12px;
    background: linear-gradient(135deg, var(--color-accent), var(--brand-pink, #be2c75));
    color: var(--color-accent-contrast);
    transition: transform .15s ease, box-shadow .15s ease;
}
#categories .tile__link:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 22px color-mix(in srgb, var(--color-accent) 35%, transparent);
}
#categories .tile__label { margin: 0; color: inherit; font-weight: 700; }
#categories .tile__link:has(img) {
    display: block;
    aspect-ratio: auto;
    padding: 0;
    background: none;
    color: inherit;
}
#categories .tile__link:has(img):hover { box-shadow: none; }
#categories .tile__link:has(img):hover .tile__label { color: var(--color-accent); }
:root {
    --icon-cart: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='20' r='1.5'/%3E%3Ccircle cx='18' cy='20' r='1.5'/%3E%3Cpath d='M2 3h3l2.7 12h11.3l2-8H6.2'/%3E%3C/svg%3E");
    --icon-card: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='5' width='20' height='14' rx='2'/%3E%3Cpath d='M2 10h20'/%3E%3Cpath d='M6 15h4'/%3E%3C/svg%3E");
    --icon-shield: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l8 3v6c0 5-3.5 8-8 9-4.5-1-8-4-8-9V6z'/%3E%3Cpath d='M9 12l2 2 4-4'/%3E%3C/svg%3E");
    --icon-sparkle: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l1.8 5.2L19 10l-5.2 1.8L12 17l-1.8-5.2L5 10l5.2-1.8z'/%3E%3Cpath d='M19 16l.8 2.2L22 19l-2.2.8L19 22l-.8-2.2L16 19l2.2-.8z'/%3E%3C/svg%3E");
    --icon-scissors: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='6' cy='6' r='3'/%3E%3Ccircle cx='6' cy='18' r='3'/%3E%3Cpath d='M20 4L8.1 15.9'/%3E%3Cpath d='M14.5 14.5L20 20'/%3E%3Cpath d='M8.1 8.1L12 12'/%3E%3C/svg%3E");
    --icon-bike: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='5.5' cy='17.5' r='3.5'/%3E%3Ccircle cx='18.5' cy='17.5' r='3.5'/%3E%3Cpath d='M5.5 17.5L9 10h7l2.5 7.5'/%3E%3Cpath d='M9 10l3 7.5h1'/%3E%3Cpath d='M14 6h3l-1 4'/%3E%3C/svg%3E");
}
#voordelen {
    --footer-ground: color-mix(in srgb, var(--color-text) 4%, var(--color-bg));
    margin-top: 64px;
    padding-block: 36px;
    background: var(--footer-ground);
    box-shadow: 0 0 0 100vmax var(--footer-ground);
    clip-path: inset(0 -100vmax);
    border-bottom: 1px solid color-mix(in srgb, var(--color-text) 10%, transparent);
}
#voordelen .section__inner { padding: 0; background: none; }
#voordelen :is(.grid, [class*="grid"]) {
    grid-template-columns: repeat(auto-fit, minmax(min(200px, 100%), 1fr));
    gap: 28px;
}
#voordelen :is(.grid, [class*="grid"]) > * {
    position: relative;
    min-height: 40px;
    padding: 0 0 0 54px;
    background: none;
}
#voordelen :is(.grid, [class*="grid"]) > *::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 38px;
    height: 38px;
    background-color: var(--color-text);
    -webkit-mask: var(--icon-check) center / contain no-repeat;
            mask: var(--icon-check) center / contain no-repeat;
}
#voordelen :is(.grid, [class*="grid"]) > :nth-child(1)::before { -webkit-mask-image: var(--icon-cart); mask-image: var(--icon-cart); }
#voordelen :is(.grid, [class*="grid"]) > :nth-child(2)::before { -webkit-mask-image: var(--icon-card); mask-image: var(--icon-card); }
#voordelen :is(.grid, [class*="grid"]) > :nth-child(3)::before { -webkit-mask-image: var(--icon-shield); mask-image: var(--icon-shield); }
#voordelen :is(.grid, [class*="grid"]) > :nth-child(4)::before { -webkit-mask-image: var(--icon-headset); mask-image: var(--icon-headset); }
#voordelen :is(.grid, [class*="grid"]) > :nth-child(5)::before { -webkit-mask-image: var(--icon-shop); mask-image: var(--icon-shop); }
#voordelen :is(h3, .h3, h4, .h4) {
    margin: 0 0 6px;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--color-text);
}
#voordelen p { margin: 0; font-size: 14px; line-height: 1.55; color: color-mix(in srgb, var(--color-text) 65%, transparent); }
:is(footer, div, section):has(> #footer-contact):has(> #footer-categorieen) {
    margin-top: 0;
    grid-template-columns: 1.3fr 1fr 1fr 1.1fr;
}
@media (max-width: 960px) {
    :is(footer, div, section):has(> #footer-contact):has(> #footer-categorieen) { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 560px) {
    :is(footer, div, section):has(> #footer-contact):has(> #footer-categorieen) { grid-template-columns: 1fr; }
}
#footer-betalen {
    padding: 0;
    background: none;
    font-size: 13px;
    color: color-mix(in srgb, var(--color-text) 70%, transparent);
}
#footer-betalen .section__inner { max-width: none; padding: 0; }
#footer-betalen :is(h2, h3, h4, .h2, .h3, .h4) {
    display: flex;
    align-items: center;
    margin: 0 0 16px;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--color-text);
}
#footer-betalen :is(h2, h3, h4, .h2, .h3, .h4)::before {
    content: "";
    width: 18px;
    height: 18px;
    margin-right: 10px;
    background-color: var(--color-accent);
    -webkit-mask: var(--icon-card) center / contain no-repeat;
            mask: var(--icon-card) center / contain no-repeat;
}
#footer-betalen ul {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin: 0;
    padding: 0;
    list-style: none;
}
#footer-betalen li {
    margin: 0;
    padding: 4px 10px;
    border: 1px solid color-mix(in srgb, var(--color-text) 12%, transparent);
    border-radius: 6px;
    background: var(--color-bg);
    font-weight: 700;
    font-size: 12px;
    color: var(--color-text);
}
#category-bar .mega-nav__top {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    border-radius: 999px;
    transition: background-color .15s ease;
}
#category-bar .mega-nav__top::before {
    content: "";
    flex: none;
    width: 18px;
    height: 18px;
    background-color: currentColor;
    -webkit-mask: var(--icon-chevron) center / contain no-repeat;
            mask: var(--icon-chevron) center / contain no-repeat;
}
#category-bar .mega-nav__top[href$="/persoonlijke-verzorging"]::before { -webkit-mask-image: var(--icon-sparkle); mask-image: var(--icon-sparkle); }
#category-bar .mega-nav__top[href$="/trimmen-ontharen"]::before { -webkit-mask-image: var(--icon-scissors); mask-image: var(--icon-scissors); }
#category-bar .mega-nav__top[href$="/fietsen-accessoires"]::before { -webkit-mask-image: var(--icon-bike); mask-image: var(--icon-bike); }
#category-bar .mega-nav__top[href$="/elektronica"]::before { -webkit-mask-image: var(--icon-headset); mask-image: var(--icon-headset); }
#category-bar .mega-nav__top:hover,
#category-bar .mega-nav__item:focus-within .mega-nav__top {
    background: color-mix(in srgb, var(--color-bg) 12%, transparent);
    text-decoration: none;
}
#category-bar .mega-nav__level-1 { gap: 0 6px; }
#category-bar .mega-nav__panel {
    border: 0;
    border-radius: 16px;
    padding: 24px 28px;
    box-shadow: 0 18px 40px color-mix(in srgb, var(--color-text) 18%, transparent);
}
:root {
    --icon-razor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='9' width='18' height='6' rx='1.5'/%3E%3Cpath d='M7 9v6M17 9v6M10 12h4'/%3E%3C/svg%3E");
    --icon-comb: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 6h16v4H4z'/%3E%3Cpath d='M6 10v8M9 10v8M12 10v8M15 10v8M18 10v8'/%3E%3C/svg%3E");
    --icon-hand: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 13V5.5a1.5 1.5 0 0 1 3 0V12'/%3E%3Cpath d='M11 11V4.5a1.5 1.5 0 0 1 3 0V12'/%3E%3Cpath d='M14 11.5V6a1.5 1.5 0 0 1 3 0v8a7 7 0 0 1-7 7h-.5a6 6 0 0 1-4.6-2.2L3 15.5a1.5 1.5 0 0 1 2.3-1.9L8 16'/%3E%3C/svg%3E");
    --icon-drop: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3s6 6.5 6 11a6 6 0 0 1-12 0c0-4.5 6-11 6-11z'/%3E%3C/svg%3E");
    --icon-bottle: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10 2h4v3h-4z'/%3E%3Cpath d='M9 5h6l1 3v12a2 2 0 0 1-2 2h-4a2 2 0 0 1-2-2V8z'/%3E%3Cpath d='M8 12h8'/%3E%3C/svg%3E");
    --icon-face: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M8.5 14.5a4.5 4.5 0 0 0 7 0'/%3E%3Cpath d='M9 9.5h.01M15 9.5h.01'/%3E%3C/svg%3E");
    --icon-sun: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Cpath d='M12 2v2M12 20v2M2 12h2M20 12h2M4.9 4.9l1.4 1.4M17.7 17.7l1.4 1.4M4.9 19.1l1.4-1.4M17.7 6.3l1.4-1.4'/%3E%3C/svg%3E");
    --icon-gift: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='8' width='18' height='4' rx='1'/%3E%3Cpath d='M5 12v9h14v-9M12 8v13'/%3E%3Cpath d='M12 8S10.5 3 8 4s.5 4 4 4zM12 8s1.5-5 4-4-.5 4-4 4z'/%3E%3C/svg%3E");
    --icon-tooth: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 3c-2.5 0-4 2-4 4.5 0 3 1.5 4.5 2 7S6 21 8 21c1.5 0 1.5-4 4-4s2.5 4 4 4c2 0 2.5-4 3-6.5s2-4 2-7C21 5 19.5 3 17 3c-2 0-3 1-5 1S9 3 7 3z'/%3E%3C/svg%3E");
    --icon-heart: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 20s-7-4.4-7-10a4 4 0 0 1 7-2.6A4 4 0 0 1 19 10c0 5.6-7 10-7 10z'/%3E%3C/svg%3E");
    --icon-zap: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M13 2L4 14h7l-1 8 9-12h-7z'/%3E%3C/svg%3E");
    --icon-spray: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 8h6v13H8z'/%3E%3Cpath d='M9 8V5h4v3'/%3E%3Cpath d='M13 5h3M18 3v.01M18 6v.01M20 4.5v.01'/%3E%3C/svg%3E");
    --icon-tube: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 4h10l-1 14H8z'/%3E%3Cpath d='M10 18v3h4v-3M9 9h6'/%3E%3C/svg%3E");
    --icon-bell: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 16V11a6 6 0 0 1 12 0v5l2 2H4z'/%3E%3Cpath d='M10 21h4'/%3E%3C/svg%3E");
    --icon-wrench: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14.7 6.3a4 4 0 0 0-5.4 5.4L3 18l3 3 6.3-6.3a4 4 0 0 0 5.4-5.4l-2.6 2.6-2.4-.6-.6-2.4z'/%3E%3C/svg%3E");
    --icon-gear: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3Cpath d='M12 2v3M12 19v3M2 12h3M19 12h3M4.9 4.9l2.1 2.1M17 17l2.1 2.1M4.9 19.1L7 17M17 7l2.1-2.1'/%3E%3C/svg%3E");
    --icon-light: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 18h6M10 21h4'/%3E%3Cpath d='M12 3a6 6 0 0 0-3.5 10.9V16h7v-2.1A6 6 0 0 0 12 3z'/%3E%3C/svg%3E");
    --icon-shirt: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 3l-5 3 2 4 2-1v12h10V9l2 1 2-4-5-3a4 4 0 0 1-8 0z'/%3E%3C/svg%3E");
    --icon-speaker: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='6' y='2' width='12' height='20' rx='2'/%3E%3Ccircle cx='12' cy='14' r='3.5'/%3E%3Cpath d='M12 6.5h.01'/%3E%3C/svg%3E");
}
#category-bar .mega-nav__columns {
    grid-template-columns: repeat(auto-fill, minmax(min(210px, 100%), 240px));
    gap: 4px 12px;
}
#category-bar .mega-nav__column .mega-nav__column-head {
    position: relative;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    gap: 12px;
    width: 100%;
    min-height: 48px;
    padding: 6px 12px 6px 6px;
    box-sizing: border-box;
    border-radius: 12px;
    font-size: 15px;
    font-weight: 600;
    color: var(--color-text);
    transition: background-color .15s ease, color .15s ease;
}
#category-bar .mega-nav__column .mega-nav__column-head::before {
    content: "";
    flex: none;
    width: 36px;
    height: 36px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--color-accent) 9%, var(--color-bg));
    -webkit-mask: none;
            mask: none;
    transition: background-color .15s ease;
}
#category-bar .mega-nav__column .mega-nav__column-head::after {
    content: "";
    position: absolute;
    left: 15px;
    top: 50%;
    width: 18px;
    height: 18px;
    transform: translateY(-50%);
    background-color: var(--color-accent);
    -webkit-mask: var(--icon-chevron) center / contain no-repeat;
            mask: var(--icon-chevron) center / contain no-repeat;
}
#category-bar .mega-nav__column .mega-nav__column-head:hover {
    background: color-mix(in srgb, var(--color-accent) 6%, var(--color-bg));
    color: var(--color-accent);
    text-decoration: none;
}
#category-bar .mega-nav__column .mega-nav__column-head:hover::before {
    background: color-mix(in srgb, var(--color-accent) 16%, var(--color-bg));
}
#category-bar .mega-nav__panel { padding: 18px 20px; }
#account .nav-bar__account,
#basket .nav-bar__basket { transition: color .15s ease; }
#account .nav-bar__account:hover,
#basket .nav-bar__basket:hover { color: var(--color-accent); }
#terugroepactie-melding .section__inner {
    border: 2px solid var(--brand-pink, #be2c75);
    border-radius: 12px;
    padding: clamp(20px, 3vw, 36px);
    background: color-mix(in srgb, var(--color-accent) 4%, var(--color-bg));
}
#terugroepactie-melding picture { display: flex; justify-content: center; }
#terugroepactie-melding img,
#melding-brief img {
    width: auto;
    max-width: 100%;
    height: auto;
    aspect-ratio: auto;
    object-fit: contain;
    margin-inline: auto;
    border-radius: 6px;
    box-shadow: 0 8px 22px color-mix(in srgb, var(--color-text) 14%, transparent);
}
#terugroepactie-melding img { max-height: 460px; }
#melding-brief img { max-height: 1000px; }
#terugroepactie-melding :is(h2, .h2) { font-weight: 800; color: var(--color-accent); }
#terugroepactie-melding .btn,
#blog-intro .btn { border-radius: 999px; padding: .75em 1.6em; font-weight: 700; }
#blog :is(h2, .h2) { font-weight: 800; }
#blog img {
    width: 100%;
    aspect-ratio: 3 / 2;
    object-fit: cover;
    border-radius: 12px;
    transition: transform .15s ease, box-shadow .15s ease;
}
#blog a:hover img {
    transform: translateY(-3px);
    box-shadow: 0 10px 22px color-mix(in srgb, var(--color-accent) 25%, transparent);
}
#blog-intro img { border-radius: 12px; }
#blog-intro :is(h1, h2, .h1, .h2) { font-weight: 800; }
:is(#blog-tekst, #melding-tekst) :is(h2, .h2) { margin-top: 1.6em; font-size: var(--text-h4); font-weight: 800; color: var(--color-accent); }
:is(#blog-tekst, #melding-tekst) li { margin-bottom: .35em; }
#category-bar .mega-nav__column .mega-nav__column-head:has(img)::before,
#category-bar .mega-nav__column .mega-nav__column-head:has(img)::after { display: none; }
#category-bar .mega-nav__column-head picture,
#category-bar .mega-nav__column-head > img {
    display: block;
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
    margin: 0;
    overflow: hidden;
    border-radius: 10px;
    background: var(--color-bg);
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--color-text) 10%, transparent);
}
#category-bar .mega-nav__column-head img {
    display: block;
    width: 44px;
    height: 44px;
    max-width: none;
    max-height: none;
    aspect-ratio: 1 / 1;
    object-fit: contain;
    padding: 3px;
    box-sizing: border-box;
    border-radius: 10px;
    background: var(--color-bg);
}
#top-row .rich-nav__narrow { display: none; }
#top-row .rich-nav__wide {
    order: 3;
    display: flex !important;
    align-items: center;
    gap: 8px;
    margin-left: auto;
    padding: 4px 4px 4px 34px;
    border: 1px solid color-mix(in srgb, var(--color-text) 14%, transparent);
    border-radius: 999px;
    background: var(--color-bg)
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23932a5e' stroke-width='1.7' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M3 12h18M12 3c2.5 2.6 3.8 5.6 3.8 9s-1.3 6.4-3.8 9c-2.5-2.6-3.8-5.6-3.8-9S9.5 5.6 12 3z'/%3E%3C/svg%3E")
        12px center / 16px no-repeat;
}
#top-row .rich-nav__wide :is(ul, ol) {
    display: flex;
    align-items: center;
    gap: 2px;
    margin: 0;
    padding: 0;
    list-style: none;
}
#top-row .rich-nav__wide li { margin: 0; padding: 0; }
#top-row .rich-nav__wide a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    min-height: 34px;
    padding: 0 10px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .06em;
    color: var(--color-text);
    text-decoration: none;
    transition: background-color .15s ease, color .15s ease;
}
#top-row .rich-nav__wide a:hover { background: color-mix(in srgb, var(--color-accent) 9%, var(--color-bg)); color: var(--color-accent); }
html:lang(nl) #top-row .rich-nav__wide a[href$="/nl/"],
html:lang(en) #top-row .rich-nav__wide a[href$="/en/"],
html:lang(fr) #top-row .rich-nav__wide a[href$="/fr/"] {
    background: var(--color-accent);
    color: var(--color-accent-contrast);
}
#account { margin-left: 8px; }
@media (max-width: 699px) {
    #top-row .rich-nav__wide { order: 2; margin-left: 0; }
    #top-row .rich-nav__wide a { min-width: 36px; padding: 0 8px; font-size: 12px; }
    #top-row .rich-nav__search { order: 3; }
}
:is(#populair-trimmen, #populair-fiets, #populair-audio) { position: relative; padding-inline: var(--theme-section-side, 16px); }
:is(#populair-trimmen, #populair-fiets, #populair-audio) .product-carousel__track { max-width: var(--container); margin-inline: auto; padding-inline: 0; }
:is(#populair-trimmen, #populair-fiets, #populair-audio) :is(h2, .h2) { font-weight: 800; }
:is(#populair-trimmen, #populair-fiets, #populair-audio) .card__shade { border-radius: 12px; background: color-mix(in srgb, var(--color-accent) 6%, var(--color-bg)); }
:is(#populair-trimmen, #populair-fiets, #populair-audio) .product-card__name { font-size: 15px; font-weight: 500; line-height: 1.35; }
:is(#populair-trimmen, #populair-fiets, #populair-audio) .product-card__price { color: var(--color-accent); font-weight: 700; }
:is(#populair-trimmen, #populair-fiets, #populair-audio) .product-card__link:hover .product-card__name { color: var(--color-accent); }
:is(#populair-trimmen, #populair-fiets, #populair-audio) .slideshow__arrow { border-radius: 999px; }
main:has(.listing) {
    max-width: var(--container, 1200px);
    margin-inline: auto;
    padding: 20px var(--theme-section-side, 16px) 64px;
    box-sizing: border-box;
}
main:has(.listing) h1 {
    margin: 8px 0 0;
    font-size: clamp(28px, 3.4vw, 40px);
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: -.02em;
}
.listing__count { margin: 6px 0 28px; font-size: 14px; color: var(--color-muted); }
main:has(.listing) nav:not(.pagination) { font-size: 13px; color: var(--color-muted); }
main:has(.listing) nav:not(.pagination) a { color: var(--color-muted); text-decoration: none; }
main:has(.listing) nav:not(.pagination) a:hover { color: var(--color-accent); text-decoration: underline; text-underline-offset: 3px; }
.listing { grid-template-rows: auto 1fr; align-content: start; }
.filters { border: 0; padding: 0; background: none; }
.filters > summary {
    padding: 0 16px;
    border: 1px solid color-mix(in srgb, var(--color-text) 14%, transparent);
    border-radius: 999px;
    font-weight: 700;
}
.filters__group + .filters__group,
.filters__body { border-color: color-mix(in srgb, var(--color-text) 10%, transparent); }
.filters__group-title { font-size: 12px; font-weight: 800; letter-spacing: .1em; color: var(--color-text); }
.filters__option { min-height: 36px; font-size: 14px; border-radius: 8px; padding-inline: 8px; margin-inline: -8px; }
.filters__option:hover { background: color-mix(in srgb, var(--color-accent) 6%, var(--color-bg)); color: var(--color-accent); }
.filters__option--on { color: var(--color-accent); }
.filters__count { font-size: 12px; }
.filters__clear { color: var(--color-accent); }
.filters__price-field,
.filters__sort-select { border-color: color-mix(in srgb, var(--color-text) 14%, transparent); border-radius: 999px; padding-inline: 14px; }
.filters__price-apply,
.filters__sort-apply { font-weight: 700; padding-inline: 18px; }
.filters__price-apply:hover,
.filters__sort-apply:hover { background: var(--brand-pink, #be2c75); }
@media (min-width: 60em) {
    .filters > summary { padding: 0; border: 0; border-radius: 0; font-size: 18px; font-weight: 800; }
}
.filters__sort { justify-content: flex-end; }
.filters__sort-select { flex: 0 1 220px; }
.filters__sort-label { color: var(--color-muted); }
.filters__chip {
    border-color: transparent;
    background: color-mix(in srgb, var(--color-accent) 8%, var(--color-bg));
    color: var(--color-accent);
    text-decoration: none;
}
.filters__chip:hover { background: color-mix(in srgb, var(--color-accent) 14%, var(--color-bg)); }
.listing__results :is(.grid, [class*="grid"], ul, ol):has(:is(.card--product, .product-card)) {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(min(190px, 100%), 1fr));
    gap: 32px 20px;
    margin: 0;
    padding: 0;
    list-style: none;
}
.listing__results :is(.card--product, .product-card) {
    padding: 0;
    border: 0;
    border-radius: 0;
    background: none;
    box-shadow: none;
}
.listing__results :is(.card--product, .product-card) a { color: inherit; text-decoration: none; }
.listing__results :is(.card--product, .product-card) :is(img, .card__shade) {
    display: block;
    width: 100%;
    aspect-ratio: 1 / 1;
    height: auto;
    object-fit: contain;
    padding: 12px;
    box-sizing: border-box;
    border-radius: 12px;
    background: color-mix(in srgb, var(--color-accent) 5%, var(--color-bg));
    transition: transform .15s ease, box-shadow .15s ease;
}
.listing__results :is(.card--product, .product-card) a:hover :is(img, .card__shade) {
    transform: translateY(-3px);
    box-shadow: 0 10px 22px color-mix(in srgb, var(--color-accent) 18%, transparent);
}
.listing__results :is(.card--product, .product-card) :is(h2, h3, .product-card__name) {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin: 12px 0 6px;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.4;
    color: var(--color-text);
    text-decoration: none;
}
.listing__results :is(.card--product, .product-card) a:hover :is(h2, h3, .product-card__name) { color: var(--color-accent); }
.listing__results :is(.card--product, .product-card) :is(.price, .product-card__price) { margin: 0; font-size: 16px; }
.listing__results :is(.price__now, .product-card__price) { color: var(--color-accent); font-weight: 700; }
.listing__results .note { margin: 4px 0 0; font-size: 13px; color: var(--color-muted); }
.pagination { justify-content: center; margin-top: 48px; }
.pagination__step,
.pagination__number { border-radius: 999px; color: var(--color-text); text-decoration: none; }
.pagination__step:hover,
.pagination__number:hover { background: color-mix(in srgb, var(--color-accent) 8%, var(--color-bg)); color: var(--color-accent); }
@media (max-width: 59.99em) {
    main:has(.listing) { padding-top: 12px; }
    .listing__results :is(.grid, [class*="grid"], ul, ol):has(:is(.card--product, .product-card)) {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 24px 14px;
    }
}
:root {
    --icon-funnel: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 5h18l-7 8v6l-4 2v-8z'/%3E%3C/svg%3E");
    --icon-tick-white: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E");
}
.filters > summary .filters__title { display: inline-flex; align-items: center; gap: 10px; }
.filters > summary .filters__title::before {
    content: "";
    width: 18px;
    height: 18px;
    background-color: var(--color-accent);
    -webkit-mask: var(--icon-funnel) center / contain no-repeat;
            mask: var(--icon-funnel) center / contain no-repeat;
}
.filters > summary { border-color: var(--color-accent); color: var(--color-text); }
.filters__badge { background: var(--color-accent); color: var(--color-accent-contrast); font-weight: 700; }
.filters__option .filters__option-label { display: inline-flex; align-items: center; }
.filters__option .filters__option-label::before,
.filters__option--on .filters__option-label::before {
    content: "";
    flex: none;
    display: inline-block;
    width: 18px;
    height: 18px;
    margin-inline-end: 10px;
    border: 1.5px solid color-mix(in srgb, var(--color-text) 30%, transparent);
    border-radius: 5px;
    background: var(--color-bg) center / 12px no-repeat;
    transform: none;
    box-sizing: border-box;
    transition: background-color .15s ease, border-color .15s ease;
}
.filters__option:hover .filters__option-label::before { border-color: var(--color-accent); }
.filters__option--on .filters__option-label::before {
    border-color: var(--color-accent);
    background-color: var(--color-accent);
    background-image: var(--icon-tick-white);
}
.filters__count {
    min-width: 26px;
    padding: 1px 8px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--color-text) 6%, transparent);
    text-align: center;
}
@media (min-width: 60em) {
    .listing { position: relative; padding-top: 76px; }
    .filters {
        padding: 22px 20px;
        border-radius: 16px;
        background: color-mix(in srgb, var(--color-accent) 4%, var(--color-bg));
        box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--color-accent) 12%, transparent);
    }
    .filters > summary { padding: 0 0 14px; border: 0; border-bottom: 1px solid color-mix(in srgb, var(--color-accent) 15%, transparent); border-radius: 0; }
    .filters__group-title {
        display: flex;
        align-items: center;
        gap: 8px;
        margin-bottom: 10px;
    }
    .filters__group-title::before {
        content: "";
        width: 4px;
        height: 14px;
        border-radius: 2px;
        background: var(--color-accent);
    }
    .filters__group + .filters__group { margin-top: 18px; padding-top: 18px; }
    .filters__price-field { background: var(--color-bg); }
    .filters__group[data-filter-group="cat"] {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        margin: 0;
        padding: 0;
        border: 0;
    }
    .filters__group[data-filter-group="cat"] .filters__group-title {
        position: absolute;
        width: 1px;
        height: 1px;
        overflow: hidden;
        clip-path: inset(50%);
        white-space: nowrap;
    }
    .filters__group[data-filter-group="cat"] .filters__options {
        display: flex;
        flex-wrap: nowrap;
        gap: 8px;
        padding: 6px 2px 14px;
        overflow-x: auto;
        scrollbar-width: thin;
        scrollbar-color: color-mix(in srgb, var(--color-accent) 30%, transparent) transparent;
        border-bottom: 1px solid color-mix(in srgb, var(--color-text) 10%, transparent);
        -webkit-mask-image: linear-gradient(to right, #000 92%, transparent);
                mask-image: linear-gradient(to right, #000 92%, transparent);
    }
    .filters__group[data-filter-group="cat"] .filters__options li { flex: none; }
    .filters__group[data-filter-group="cat"] .filters__option {
        gap: 8px;
        min-height: 40px;
        margin: 0;
        padding: 0 8px 0 16px;
        border: 1px solid color-mix(in srgb, var(--color-text) 14%, transparent);
        border-radius: 999px;
        background: var(--color-bg);
        font-weight: 600;
        white-space: nowrap;
    }
    .filters__group[data-filter-group="cat"] .filters__option-label::before { display: none; }
    .filters__group[data-filter-group="cat"] .filters__option:hover {
        border-color: var(--color-accent);
        background: color-mix(in srgb, var(--color-accent) 6%, var(--color-bg));
    }
    .filters__group[data-filter-group="cat"] .filters__option--on {
        border-color: var(--color-accent);
        background: var(--color-accent);
        color: var(--color-accent-contrast);
    }
    .filters__group[data-filter-group="cat"] .filters__option--on .filters__count {
        background: color-mix(in srgb, var(--color-accent-contrast) 22%, transparent);
        color: var(--color-accent-contrast);
    }
}
.filters__price {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 6px 10px;
    align-items: end;
}
.filters__price .filters__price-label { grid-row: 1; margin: 0; font-size: 12px; color: var(--color-muted); }
.filters__price .filters__price-label[for$="-from"] { grid-column: 1; }
.filters__price .filters__price-label[for$="-to"] { grid-column: 2; }
.filters__price .filters__price-field { grid-row: 2; width: 100%; min-height: 42px; background: var(--color-bg); }
.filters__price .filters__price-field[id$="-from"] { grid-column: 1; }
.filters__price .filters__price-field[id$="-to"] { grid-column: 2; }
.filters__price .filters__price-basis { grid-row: 3; grid-column: 1 / -1; font-size: 12px; }
.filters__price .filters__price-apply { grid-row: 4; grid-column: 1 / -1; min-height: 42px; margin-top: 4px; }
.pd {
    width: min(var(--container, 1200px), calc(100% - 2 * var(--theme-section-side, 16px)));
    margin: 0 auto;
    padding: 20px 0 32px;
}
.pd-crumbs {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 20px;
    font-size: 13px;
    color: var(--color-muted);
}
.pd-crumbs a { color: var(--color-muted); text-decoration: none; }
.pd-crumbs a:hover { color: var(--color-accent); text-decoration: underline; text-underline-offset: 3px; }
.pd-main {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
    gap: 56px;
    align-items: start;
}
.pd-gallery { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; }
.pd-gallery__item {
    position: relative;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    border-radius: 12px;
    background: color-mix(in srgb, var(--color-accent) 5%, var(--color-bg));
}
.pd-gallery__item--main { grid-column: 1 / -1; border-radius: 16px; }
.pd-gallery__item a,
.pd-gallery__item picture { display: block; width: 100%; height: 100%; }
.pd-gallery__item img {
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: contain;
    padding: 8%;
    box-sizing: border-box;
    transition: transform .25s ease;
}
.pd-gallery__item--main img { padding: 6%; }
.pd-gallery__zoom { cursor: zoom-in; }
.pd-gallery__item:hover img { transform: scale(1.03); }
.pd-gallery__empty {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    color: color-mix(in srgb, var(--color-accent) 45%, var(--color-bg));
    font-size: 14px;
}
.pd-buy { position: sticky; top: 20px; display: flex; flex-direction: column; gap: 14px; }
.pd-title {
    margin: 0;
    font-size: clamp(24px, 2.6vw, 34px);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -.02em;
}
.pd-price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 12px; margin-top: 4px; }
.pd-price .price__now { font-size: 32px; font-weight: 800; color: var(--color-accent); letter-spacing: -.01em; }
.pd-price .price__was { font-size: 15px; }
.pd-price .price__label { font-size: 14px; color: var(--color-muted); }
.pd-vat { margin: -8px 0 0; font-size: 13px; color: var(--color-muted); }
.pd-stock { display: inline-flex; align-items: center; gap: 8px; margin: 0; font-size: 14px; font-weight: 600; }
.pd-stock::before { content: ""; width: 9px; height: 9px; border-radius: 50%; background: currentColor; }
.pd-stock--in { color: var(--stock-in, #1f8a4c); }
.pd-stock--out { color: var(--color-muted); }
.add-to-cart { display: flex; gap: 10px; margin: 6px 0 0; }
.add-to-cart input[type="number"] {
    width: 84px;
    min-height: 54px;
    padding: 0 12px;
    border: 1px solid color-mix(in srgb, var(--color-text) 16%, transparent);
    border-radius: 999px;
    font: inherit;
    font-weight: 700;
    text-align: center;
    background: var(--color-bg);
    color: inherit;
}
.add-to-cart button {
    flex: 1 1 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 54px;
    padding: 0 24px;
    border: 0;
    border-radius: 999px;
    background: var(--color-accent);
    color: var(--color-accent-contrast);
    font: inherit;
    font-size: 17px;
    font-weight: 800;
    cursor: pointer;
    transition: background-color .15s ease, transform .15s ease;
}
.add-to-cart button::before {
    content: "";
    width: 20px;
    height: 20px;
    background-color: currentColor;
    -webkit-mask: var(--icon-cart) center / contain no-repeat;
            mask: var(--icon-cart) center / contain no-repeat;
}
.add-to-cart button:hover { background: var(--brand-pink, #be2c75); transform: translateY(-1px); }
.pd-variants { display: flex; flex-direction: column; gap: 8px; margin: 0; padding: 0; list-style: none; }
.pd-variant {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 8px 12px;
    align-items: center;
    padding: 12px 14px;
    border: 1px solid color-mix(in srgb, var(--color-text) 12%, transparent);
    border-radius: 12px;
}
.pd-variant__name { font-weight: 600; }
.pd-variant__price .price__now { color: var(--color-accent); font-weight: 700; }
.pd-variant .add-to-cart { grid-column: 1 / -1; margin: 0; }
.pd-variant .add-to-cart input[type="number"],
.pd-variant .add-to-cart button { min-height: 44px; font-size: 15px; }
.pd-usps {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin: 10px 0 0;
    padding: 18px 18px;
    list-style: none;
    border-radius: 14px;
    background: color-mix(in srgb, var(--color-accent) 4%, var(--color-bg));
    font-size: 14px;
}
.pd-usps li { display: flex; align-items: center; gap: 12px; }
.pd-usps li::before {
    content: "";
    flex: none;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: var(--color-accent) center / 13px no-repeat;
    background-image: var(--icon-tick-white);
}
.pd-sku { margin: 0; font-size: 13px; color: var(--color-muted); }
.pd-cats { display: flex; flex-wrap: wrap; gap: 6px; margin: 0; padding: 0; list-style: none; }
.pd-cats a {
    display: inline-flex;
    padding: 4px 12px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--color-accent) 7%, var(--color-bg));
    color: var(--color-accent);
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
}
.pd-cats a:hover { background: color-mix(in srgb, var(--color-accent) 14%, var(--color-bg)); }
.pd-info {
    max-width: 860px;
    margin: 64px 0 0;
    padding-top: 32px;
    border-top: 1px solid color-mix(in srgb, var(--color-text) 10%, transparent);
}
.pd-info h2 { margin: 0 0 16px; font-size: 24px; font-weight: 800; }
.pd-prose { font-size: 15px; line-height: 1.75; color: color-mix(in srgb, var(--color-text) 85%, transparent); }
.pd-prose :is(h2, h3, h4) { margin: 1.4em 0 .4em; font-size: 17px; font-weight: 800; color: var(--color-text); }
.pd-prose :is(ul, ol) { padding-left: 1.2em; }
.pd-prose li { margin-bottom: .3em; }
.pd-lightbox {
    width: min(960px, 94vw);
    max-height: 92vh;
    padding: 24px;
    border: 0;
    border-radius: 16px;
    background: var(--color-bg);
}
.pd-lightbox::backdrop { background: color-mix(in srgb, var(--color-text) 70%, transparent); }
.pd-lightbox__img { display: block; width: 100%; max-height: 80vh; object-fit: contain; }
.pd-lightbox__btn {
    position: absolute;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border: 0;
    border-radius: 999px;
    background: var(--color-bg);
    color: var(--color-accent);
    box-shadow: 0 4px 14px color-mix(in srgb, var(--color-text) 18%, transparent);
    cursor: pointer;
}
.pd-lightbox__close { top: 12px; right: 12px; }
.pd-lightbox__nav { top: 50%; transform: translateY(-50%); }
.pd-lightbox__nav--prev { left: 12px; }
.pd-lightbox__nav--next { right: 12px; }
.pd-lightbox__count { margin: 10px 0 0; text-align: center; font-size: 13px; color: var(--color-muted); }
.pd-related { position: relative; margin-top: 72px; }
.pd-related .section__inner { padding: 0; max-width: none; }
.pd-related__title,
.pd-recent__title { margin: 0 0 20px; font-size: 26px; font-weight: 800; }
.pd-related .product-carousel__track { padding-inline: 0; }
.pd-related .card--product { height: 100%; padding: 0; border: 0; background: none; }
.pd-related .card--product a { color: inherit; text-decoration: none; }
.pd-related .card--product :is(img, .card__shade) {
    display: block;
    width: 100%;
    aspect-ratio: 1 / 1;
    height: auto;
    object-fit: contain;
    padding: 12px;
    box-sizing: border-box;
    border-radius: 12px;
    background: color-mix(in srgb, var(--color-accent) 5%, var(--color-bg));
}
.pd-related .card--product h2 {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin: 12px 0 6px;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.4;
}
.pd-related .card--product a:hover h2 { color: var(--color-accent); }
.pd-related .price { margin: 0; }
.pd-related .price__now { color: var(--color-accent); font-weight: 700; }
.pd-related .slideshow__arrow { border-radius: 999px; }
.pd-recent { margin-top: 64px; }
.pd-recent[hidden] { display: none; }
.pd-recent__list {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(150px, 180px);
    gap: 16px;
    margin: 0;
    padding: 0 0 10px;
    list-style: none;
    overflow-x: auto;
    scrollbar-width: thin;
}
.pd-recent__card { display: flex; flex-direction: column; gap: 10px; color: inherit; text-decoration: none; }
.pd-recent__img {
    display: block;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    border-radius: 12px;
    background: color-mix(in srgb, var(--color-accent) 5%, var(--color-bg));
}
.pd-recent__img img { width: 100%; height: 100%; object-fit: contain; padding: 10px; box-sizing: border-box; }
.pd-recent__name {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    font-size: 14px;
    line-height: 1.4;
}
.pd-recent__card:hover .pd-recent__name { color: var(--color-accent); }
@media (max-width: 860px) {
    .pd-main { grid-template-columns: 1fr; gap: 28px; }
    .pd-buy { position: static; }
    .pd-gallery { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .pd-price .price__now { font-size: 28px; }
    .pd-info { margin-top: 48px; }
    .pd-related { margin-top: 48px; }
    .pd-related__title, .pd-recent__title { font-size: 22px; }
}
:root {
    --dp-line: color-mix(in srgb, var(--color-text) 12%, transparent);
    --dp-tint: color-mix(in srgb, var(--color-accent) 4%, var(--color-bg));
    --dp-tint-2: color-mix(in srgb, var(--color-accent) 8%, var(--color-bg));
    --icon-user: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21c1.5-4 4.5-6 8-6s6.5 2 8 6'/%3E%3C/svg%3E");
    --icon-box: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 7l9-4 9 4v10l-9 4-9-4z'/%3E%3Cpath d='M3 7l9 4 9-4M12 11v10'/%3E%3C/svg%3E");
    --icon-pencil: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m15 4 5 5L9 20H4v-5z'/%3E%3Cpath d='m13 6 5 5'/%3E%3C/svg%3E");
    --icon-lock: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E");
    --icon-download: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 4v11M7 10l5 5 5-5'/%3E%3Cpath d='M5 20h14'/%3E%3C/svg%3E");
    --icon-ticket: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7h16v3a2 2 0 0 0 0 4v3H4v-3a2 2 0 0 0 0-4z'/%3E%3Cpath d='m9 15 6-6'/%3E%3C/svg%3E");
    --icon-x: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='m9 9 6 6M15 9l-6 6'/%3E%3C/svg%3E");
    --icon-logout: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 4h4v16h-4'/%3E%3Cpath d='m10 8-4 4 4 4M6 12h10'/%3E%3C/svg%3E");
    --acc-user: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23932a5e' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21c1.5-4 4.5-6 8-6s6.5 2 8 6'/%3E%3C/svg%3E");
    --acc-box: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23932a5e' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 7l9-4 9 4v10l-9 4-9-4z'/%3E%3Cpath d='M3 7l9 4 9-4M12 11v10'/%3E%3C/svg%3E");
    --acc-pencil: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23932a5e' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m15 4 5 5L9 20H4v-5z'/%3E%3Cpath d='m13 6 5 5'/%3E%3C/svg%3E");
    --acc-lock: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23932a5e' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E");
    --acc-download: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23932a5e' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 4v11M7 10l5 5 5-5'/%3E%3Cpath d='M5 20h14'/%3E%3C/svg%3E");
    --acc-ticket: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23932a5e' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7h16v3a2 2 0 0 0 0 4v3H4v-3a2 2 0 0 0 0-4z'/%3E%3Cpath d='m9 15 6-6'/%3E%3C/svg%3E");
    --acc-x: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23932a5e' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='m9 9 6 6M15 9l-6 6'/%3E%3C/svg%3E");
    --acc-pin: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23932a5e' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-7-6.2-7-11.5a7 7 0 0 1 14 0C19 14.8 12 21 12 21z'/%3E%3Ccircle cx='12' cy='9.5' r='2.5'/%3E%3C/svg%3E");
    --acc-x-red: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a1281b' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='m9 9 6 6M15 9l-6 6'/%3E%3C/svg%3E");
    --icon-bag: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 8h14l-1.2 12H6.2z'/%3E%3Cpath d='M9 8V6a3 3 0 0 1 6 0v2'/%3E%3C/svg%3E");
}
.pg {
    width: min(var(--container, 1200px), calc(100% - 2 * var(--theme-section-side, 16px)));
    margin: 0 auto;
    padding: 28px 0 64px;
}
.pg-head h1 { margin: 0 0 28px; font-size: clamp(28px, 3.4vw, 40px); font-weight: 800; letter-spacing: -.02em; }
.pg-btn,
.dp-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding: 0 28px;
    border: 0;
    border-radius: 999px;
    background: var(--color-accent);
    color: var(--color-accent-contrast);
    font: inherit;
    font-weight: 800;
    text-decoration: none;
    cursor: pointer;
    transition: background-color .15s ease;
}
.pg-btn:hover, .dp-btn:hover { background: var(--brand-pink, #be2c75); color: var(--color-accent-contrast); }
.pg-btn--full { width: 100%; }
.dp-btn--light { background: var(--color-bg); color: var(--color-accent); }
.dp-btn--light:hover { background: var(--color-bg); color: var(--brand-pink, #be2c75); }
.cart-error {
    margin: 0 0 20px;
    padding: 14px 18px;
    border-radius: 12px;
    background: color-mix(in srgb, #c0392b 8%, var(--color-bg));
    color: #a1281b;
    font-weight: 600;
}
.cart-empty-box {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    padding: 56px 24px;
    border-radius: 16px;
    background: var(--dp-tint);
    text-align: center;
}
.cart-empty-box p { margin: 0; font-size: 18px; }
.cart-empty-box__icon {
    width: 72px;
    height: 72px;
    border-radius: 50%;
    background: var(--color-bg);
    box-shadow: 0 6px 18px color-mix(in srgb, var(--color-accent) 15%, transparent);
    position: relative;
}
.cart-empty-box__icon::after {
    content: "";
    position: absolute;
    inset: 20px;
    background-color: var(--color-accent);
    -webkit-mask: var(--icon-bag) center / contain no-repeat;
            mask: var(--icon-bag) center / contain no-repeat;
}
.cart-layout { display: grid; grid-template-columns: minmax(0, 8fr) minmax(0, 4fr); gap: 32px; align-items: start; }
.cart-lines-box { border: 1px solid var(--dp-line); border-radius: 16px; overflow: hidden; }
.pg .cart-lines { width: 100%; border-collapse: collapse; margin: 0; background: none; }
.pg .cart-lines th {
    padding: 14px 18px;
    border-bottom: 1px solid var(--dp-line);
    background: var(--dp-tint);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    text-align: left;
    color: var(--color-muted);
}
.pg .cart-lines td { padding: 18px; border-bottom: 1px solid var(--dp-line); font-size: 15px; vertical-align: middle; }
.pg .cart-lines tr:last-child td { border-bottom: 0; }
.cart-item strong { display: block; font-weight: 600; line-height: 1.4; }
.cart-item .variant { display: block; margin-top: 2px; font-size: 14px; color: var(--color-muted); }
.cart-item em { display: block; margin-top: 4px; font-style: normal; font-size: 13px; font-weight: 600; color: #a1281b; }
.cart-unit { white-space: nowrap; }
.cart-line-total { font-weight: 800; color: var(--color-accent); white-space: nowrap; }
.cart-lines .price__label { display: block; font-size: 12px; font-weight: 500; color: var(--color-muted); }
.cart-qty { display: flex; gap: 8px; align-items: center; margin: 0; }
.cart-qty input {
    width: 70px;
    min-height: 42px;
    border: 1px solid color-mix(in srgb, var(--color-text) 18%, transparent);
    border-radius: 999px;
    background: var(--color-bg);
    font: inherit;
    font-weight: 700;
    text-align: center;
}
.pg .cart-lines .cart-qty button {
    min-height: 42px;
    padding: 0 14px;
    border: 1px solid color-mix(in srgb, var(--color-text) 16%, transparent);
    border-radius: 999px;
    background: var(--color-bg);
    color: var(--color-text);
    font: inherit;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
}
.pg .cart-lines .cart-qty button:hover { border-color: var(--color-accent); color: var(--color-accent); }
.pg .cart-lines .cart-remove {
    padding: 0;
    border: 0;
    background: none;
    color: var(--color-muted);
    font: inherit;
    font-size: 13px;
    text-decoration: underline;
    text-underline-offset: 3px;
    cursor: pointer;
}
.pg .cart-lines .cart-remove:hover { color: #a1281b; }
.cart-summary {
    position: sticky;
    top: 20px;
    display: flex;
    flex-direction: column;
    gap: 14px;
    padding: 26px;
    border-radius: 16px;
    background: var(--dp-tint);
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--color-accent) 12%, transparent);
}
.cart-summary h2 { margin: 0; font-size: 20px; font-weight: 800; }
.pg .cart-totals { width: 100%; border-collapse: collapse; margin: 0; background: none; }
.pg .cart-totals th,
.pg .cart-totals td { padding: 10px 0; border-bottom: 1px solid color-mix(in srgb, var(--color-accent) 12%, transparent); font-size: 15px; font-weight: 400; text-align: left; }
.pg .cart-totals td { text-align: right; white-space: nowrap; }
.pg .cart-totals .total th,
.pg .cart-totals .total td { padding-top: 14px; border-bottom: 0; font-size: 20px; font-weight: 800; color: var(--color-accent); }
.pg .cart-totals .tax th,
.pg .cart-totals .tax td { padding-top: 0; border-bottom: 0; font-size: 13px; color: var(--color-muted); }
.dp-cart__continue { align-self: center; font-size: 14px; color: var(--color-muted); }
.dp-cart__continue:hover { color: var(--color-accent); }
.cart-summary .pd-usps { margin: 4px 0 0; padding: 14px 0 0; background: none; border-top: 1px solid color-mix(in srgb, var(--color-accent) 12%, transparent); border-radius: 0; font-size: 13px; }
@media (max-width: 900px) {
    .cart-layout { grid-template-columns: 1fr; }
    .cart-summary { position: static; }
}
@media (max-width: 640px) {
    .pg .cart-lines thead { display: none; }
    .pg .cart-lines tr { display: grid; grid-template-columns: 1fr auto; gap: 8px 12px; padding: 16px; border-bottom: 1px solid var(--dp-line); }
    .pg .cart-lines tr:last-child { border-bottom: 0; }
    .pg .cart-lines td { padding: 0; border: 0; }
    .pg .cart-lines td.cart-item { grid-column: 1 / -1; }
}
.dp-login__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 28px;
    max-width: 1000px;
    margin: 12px auto 0;
    align-items: stretch;
}
.dp-login__card {
    padding: 36px;
    border: 1px solid var(--dp-line);
    border-radius: 18px;
    background: var(--color-bg);
}
.dp-login__card .account__title { margin: 0 0 6px; font-size: 30px; font-weight: 800; letter-spacing: -.02em; }
.dp-login__card .account__subtitle { margin: 0 0 22px; color: var(--color-muted); }
.dp-login__form { display: flex; flex-direction: column; gap: 16px; }
.dp-login__card .account__field { display: flex; flex-direction: column; gap: 6px; font-size: 14px; font-weight: 600; }
.dp-login__card .account__input {
    width: 100%;
    min-height: 50px;
    padding: 0 18px;
    box-sizing: border-box;
    border: 1px solid color-mix(in srgb, var(--color-text) 18%, transparent);
    border-radius: 999px;
    background: var(--color-bg);
    font: inherit;
    font-weight: 400;
}
.dp-login__card .account__input:focus { outline: 2px solid var(--color-accent); outline-offset: 1px; border-color: var(--color-accent); }
.dp-login__forgot { margin: -4px 0 0; font-size: 14px; text-align: right; }
.dp-login__forgot a { color: var(--color-accent); }
.dp-login__card .account__submit {
    min-height: 52px;
    border: 0;
    border-radius: 999px;
    background: var(--color-accent);
    color: var(--color-accent-contrast);
    font: inherit;
    font-size: 16px;
    font-weight: 800;
    cursor: pointer;
}
.dp-login__card .account__submit:hover { background: var(--brand-pink, #be2c75); }
.dp-login__card .account__status { margin: 0 0 16px; padding: 12px 16px; border-radius: 12px; background: var(--dp-tint-2); }
.dp-login__card .account__errors { margin: 0 0 16px; padding: 12px 16px; border-radius: 12px; background: color-mix(in srgb, #c0392b 8%, var(--color-bg)); color: #a1281b; }
.dp-login__card .account__errors ul { margin: 0; padding-left: 18px; }
.dp-login__new {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 14px;
    padding: 36px;
    border-radius: 18px;
    background: linear-gradient(135deg, var(--color-accent), var(--brand-pink, #be2c75));
    color: var(--color-accent-contrast);
}
.dp-login__new h2 { margin: 0; font-size: 26px; font-weight: 800; color: inherit; }
.dp-login__new p { margin: 0; opacity: .92; }
.dp-login__new ul { display: flex; flex-direction: column; gap: 10px; margin: 4px 0 8px; padding: 0; list-style: none; }
.dp-login__new li { display: flex; align-items: center; gap: 10px; font-weight: 600; }
.dp-login__new li::before {
    content: "";
    flex: none;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: color-mix(in srgb, var(--color-accent-contrast) 22%, transparent) center / 12px no-repeat;
    background-image: var(--icon-tick-white);
}
@media (max-width: 800px) {
    .dp-login__grid { grid-template-columns: 1fr; }
    .dp-login__card, .dp-login__new { padding: 24px; }
}
main#content > :is(.checkout, .error, .ordering, .account, .trade, .promotion) {
    width: min(var(--container, 1200px), calc(100% - 2 * var(--theme-section-side, 16px)));
    margin: 0 auto;
    padding: 36px 0 80px;
    color: var(--color-text);
}
main#content :is(.checkout__title, .placed__title, .error__title, .account-orders__title, .order__title, .account__title) {
    margin: 0 0 24px;
    font-size: clamp(28px, 3.2vw, 38px);
    font-weight: 800;
    letter-spacing: -.02em;
    line-height: 1.15;
}
main#content :is(.checkout, .ordering, .account, .promotion) h2 { margin: 0 0 14px; font-size: 20px; font-weight: 800; }
main#content :is(.checkout__shop, .placed__shop, .account__shop) { display: none; }
main#content :is(.account, .ordering) form,
main#content .checkout__form {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding: 28px;
    border: 1px solid var(--dp-line);
    border-radius: 16px;
    background: var(--color-bg);
}
main#content :is(.account__field, .checkout__field),
main#content :is(.ordering, .checkout__form) label { display: flex; flex-direction: column; gap: 6px; font-size: 14px; font-weight: 600; }
main#content .account__field--inline { flex-direction: row; align-items: center; gap: 10px; }
main#content :is(.account, .ordering, .checkout) input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
main#content :is(.account, .ordering, .checkout) select {
    width: 100%;
    min-height: 48px;
    padding: 0 16px;
    box-sizing: border-box;
    border: 1px solid color-mix(in srgb, var(--color-text) 18%, transparent);
    border-radius: 12px;
    background: var(--color-bg);
    font: inherit;
    font-weight: 400;
    color: var(--color-text);
}
main#content :is(.account, .ordering, .checkout) textarea {
    width: 100%;
    min-height: 120px;
    padding: 12px 16px;
    box-sizing: border-box;
    border: 1px solid color-mix(in srgb, var(--color-text) 18%, transparent);
    border-radius: 12px;
    font: inherit;
}
main#content :is(.account, .ordering, .checkout) :is(input, select, textarea):focus { outline: 2px solid var(--color-accent); outline-offset: 1px; border-color: var(--color-accent); }
main#content :is(.account, .ordering, .checkout) :is(input[type="checkbox"], input[type="radio"]) { width: 20px; height: 20px; accent-color: var(--color-accent); }
main#content :is(.account__submit, .checkout__submit, .placed__submit, .placed__retry),
main#content :is(.account, .ordering) button[type="submit"] {
    align-self: flex-start;
    min-height: 52px;
    padding: 0 30px;
    border: 0;
    border-radius: 999px;
    background: var(--color-accent);
    color: var(--color-accent-contrast);
    font: inherit;
    font-weight: 800;
    cursor: pointer;
}
main#content :is(.account__submit, .checkout__submit, .placed__submit, .placed__retry):hover,
main#content :is(.account, .ordering) button[type="submit"]:hover { background: var(--brand-pink, #be2c75); }
main#content :is(.account__status, .checkout__status, .checkout__notice) {
    margin: 0 0 18px;
    padding: 14px 18px;
    border-radius: 12px;
    background: var(--dp-tint-2);
    font-size: 15px;
}
main#content :is(.account__errors, .checkout__errors, .placed__refusal) {
    margin: 0 0 18px;
    padding: 14px 18px;
    border-radius: 12px;
    background: color-mix(in srgb, #c0392b 8%, var(--color-bg));
    color: #a1281b;
    font-size: 15px;
}
main#content :is(.account__subtitle, .account__quiet) { color: var(--color-muted); font-size: 15px; line-height: 1.6; }
main#content :is(.account-orders__back, .order__back, .checkout__back, .placed__back, .account__quiet) a { color: var(--color-accent); }
main#content .account { width: min(1040px, calc(100% - 2 * var(--theme-section-side, 16px))); display: flex; flex-direction: column; gap: 16px; }
main#content .account .account__title { display: flex; align-items: center; gap: 18px; margin-bottom: 4px; }
main#content .account .account__title::before {
    content: "";
    flex: 0 0 60px;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: var(--color-accent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21c1.5-4 4.5-6 8-6s6.5 2 8 6'/%3E%3C/svg%3E") center / 28px no-repeat;
}
main#content .account > p { margin: 0; color: var(--color-muted); }
main#content .account > p strong { color: var(--color-text); }
main#content .account .account__list {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin: 6px 0 0;
    padding: 0;
    list-style: none;
    background: none;
}
main#content .account .account__list li { margin: 0; padding: 0; border: 0; }
main#content .account .account__list li a {
    display: flex;
    align-items: center;
    gap: 14px;
    min-height: 84px;
    padding: 18px 20px;
    box-sizing: border-box;
    border: 1px solid var(--dp-line);
    border-radius: 14px;
    background: var(--color-bg);
    color: var(--color-text);
    font-size: 16px;
    font-weight: 700;
    text-decoration: none;
    transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}
main#content .account .account__list li a:hover {
    border-color: color-mix(in srgb, var(--color-accent) 40%, transparent);
    box-shadow: 0 10px 22px color-mix(in srgb, var(--color-accent) 14%, transparent);
    transform: translateY(-2px);
    color: var(--color-accent);
}
main#content .account .account__list li a::before {
    content: "";
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: var(--dp-acc-icon) center / 21px no-repeat, var(--dp-tint-2);
}
main#content .account .account__list li a::after {
    content: "›";
    margin-left: auto;
    font-size: 22px;
    font-weight: 400;
    color: var(--color-muted);
}
main#content .account .account__list li a { --dp-acc-icon: var(--acc-user); }
main#content .account .account__list li a[href*="order"] { --dp-acc-icon: var(--acc-box); }
main#content .account .account__list li a[href*="address"] { --dp-acc-icon: var(--acc-pin); }
main#content .account .account__list li a:is([href*="edit"], [href*="detail"], [href*="profile"]) { --dp-acc-icon: var(--acc-pencil); }
main#content .account .account__list li a[href*="password"] { --dp-acc-icon: var(--acc-lock); }
main#content .account .account__list li a:is([href*="export"], [href*="download"]) { --dp-acc-icon: var(--acc-download); }
main#content .account .account__list li a:is([href*="coupon"], [href*="promotion"]) { --dp-acc-icon: var(--acc-ticket); }
main#content .account .account__list li a[href*="delete"] { --dp-acc-icon: var(--acc-x-red); color: #a1281b; }
main#content .account .account__list li a[href*="delete"]::before { background-color: color-mix(in srgb, #c0392b 8%, var(--color-bg)); }
main#content .account > form:last-child { align-self: flex-end; padding: 0; border: 0; background: none; }
main#content .account > form:last-child .account__submit {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-height: 44px;
    padding: 0 20px;
    border: 1px solid color-mix(in srgb, var(--color-text) 16%, transparent);
    background: var(--color-bg);
    color: var(--color-text);
    font-weight: 700;
}
main#content .account > form:last-child .account__submit::before {
    content: "";
    width: 18px;
    height: 18px;
    background-color: currentColor;
    -webkit-mask: var(--icon-logout) center / contain no-repeat;
            mask: var(--icon-logout) center / contain no-repeat;
}
main#content .account > form:last-child .account__submit:hover { border-color: var(--color-accent); color: var(--color-accent); background: var(--color-bg); }
main#content :is(.account-orders__list, .order__lines) {
    display: flex;
    flex-direction: column;
    margin: 20px 0 0;
    padding: 6px;
    list-style: none;
    border: 1px solid var(--dp-line);
    border-radius: 14px;
}
main#content .account-orders__row,
main#content .order__line { border-bottom: 1px solid var(--dp-line); }
main#content .account-orders__row:last-child,
main#content .order__line:last-child { border-bottom: 0; }
main#content .account-orders__link { display: flex; align-items: center; min-height: 52px; padding: 0 14px; border-radius: 10px; color: var(--color-text); text-decoration: none; }
main#content .account-orders__link:hover { background: var(--dp-tint); color: var(--color-accent); }
main#content .order__line { padding: 12px 14px; }
main#content .order__status { display: inline-flex; align-items: center; min-height: 30px; padding: 0 14px; border-radius: 999px; background: var(--dp-tint-2); color: var(--color-accent); font-size: 14px; font-weight: 700; }
main#content .order__total { font-size: 20px; font-weight: 800; color: var(--color-accent); }
main#content :is(.order__shipping, .order__withdraw) { margin-top: 24px; padding: 22px; border-radius: 14px; background: var(--dp-tint); }
main#content > .checkout:not(.placed) {
    display: grid;
    grid-template-columns: minmax(0, 8fr) minmax(0, 4fr);
    column-gap: 32px;
    align-items: start;
    grid-auto-flow: dense;
}
main#content > .checkout:not(.placed) > * { grid-column: 1 / -1; }
main#content > .checkout:not(.placed) > .checkout__form { grid-column: 1; grid-row: span 3; }
main#content > .checkout:not(.placed) > :is(.checkout__summary-title, .checkout__summary) { grid-column: 2; }
main#content .checkout__summary {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    padding: 10px 22px;
    border-radius: 16px;
    background: var(--dp-tint);
    font-size: 15px;
}
main#content .checkout__summary :is(td, th) { padding: 11px 0; border-bottom: 1px solid color-mix(in srgb, var(--color-accent) 12%, transparent); text-align: left; font-weight: 400; }
main#content .checkout__summary :is(td, th):last-child { text-align: right; white-space: nowrap; }
main#content .checkout__totals :is(td, th) { border-bottom: 0; }
main#content .checkout__totals tr:last-child :is(td, th) { font-size: 20px; font-weight: 800; color: var(--color-accent); }
main#content :is(.checkout__shipping, .checkout__billing, .checkout__payment) { display: flex; flex-direction: column; gap: 14px; margin: 0; padding: 0; border: 0; }
main#content .checkout__billing legend { margin-bottom: 6px; padding: 0; font-size: 20px; font-weight: 800; }
main#content .checkout__saved-option {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 14px 16px;
    border: 1px solid var(--dp-line);
    border-radius: 12px;
    cursor: pointer;
}
main#content .checkout__saved-option:has(input:checked) { border-color: var(--color-accent); background: var(--dp-tint); }
main#content .checkout__submit { align-self: stretch; font-size: 17px; }
main#content > :is(.checkout.placed, .error) {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    width: min(720px, calc(100% - 2 * var(--theme-section-side, 16px)));
    margin: 56px auto 88px;
    padding: 48px 32px;
    border-radius: 18px;
    background: var(--dp-tint);
    text-align: center;
}
main#content .checkout.placed::before {
    content: "";
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: var(--color-accent) center / 30px no-repeat;
    background-image: var(--icon-tick-white);
}
main#content :is(.placed__number, .placed__total, .placed__state, .error__body) { margin: 0; font-size: 17px; }
main#content .placed__state { color: var(--color-muted); }
main#content :is(.placed__back a, .error__home) {
    display: inline-flex;
    align-items: center;
    min-height: 52px;
    margin-top: 14px;
    padding: 0 28px;
    border-radius: 999px;
    background: var(--color-accent);
    color: var(--color-accent-contrast);
    font-weight: 800;
    text-decoration: none;
}
main#content :is(.placed__back a, .error__home):hover { background: var(--brand-pink, #be2c75); color: var(--color-accent-contrast); }
@media (max-width: 900px) {
    main#content > .checkout:not(.placed) { grid-template-columns: 1fr; }
    main#content > .checkout:not(.placed) > :is(.checkout__form, .checkout__summary-title, .checkout__summary) { grid-column: 1; grid-row: auto; }
    main#content :is(.account, .ordering) form,
    main#content .checkout__form { padding: 20px; }
    main#content .account .account__list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
    main#content .account .account__list { grid-template-columns: 1fr; }
    main#content .account > form:last-child { align-self: stretch; }
}
main#content .account:has(input[type="password"]) {
    width: min(480px, calc(100% - 2 * var(--theme-section-side, 16px)));
    margin: 48px auto 88px;
    padding: 36px 32px;
    border: 1px solid var(--dp-line);
    border-radius: 18px;
    background: var(--color-bg);
    box-shadow: 0 14px 40px color-mix(in srgb, var(--color-accent) 10%, transparent);
}
main#content .account:has(input[type="password"]) .account__title {
    flex-direction: column;
    align-items: center;
    text-align: center;
    font-size: 28px;
}
main#content .account:has(input[type="password"]) .account__subtitle { margin: -8px 0 4px; text-align: center; }
main#content .account:has(input[type="password"]) form { padding: 0; border: 0; background: none; }
main#content .account:has(input[type="password"]) input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]) { min-height: 50px; padding: 0 18px; border-radius: 999px; }
main#content .account:has(input[type="password"]) :is(.account__submit, button[type="submit"]) { align-self: stretch; }
main#content .account:has(input[type="password"]) .account__quiet { margin: 4px 0 0; text-align: center; }
main#content .account:has(input[type="password"]) .account__quiet a { font-weight: 700; }
main#content .account:not(:has(input[type="password"])) {
    width: min(1040px, calc(100% - 2 * var(--theme-section-side, 16px)));
    max-width: none;
    margin: 0 auto;
    padding: 40px 0 80px;
    display: flex;
    flex-direction: column;
    gap: 14px;
}
main#content .account .account__list {
    grid-template-columns: repeat(auto-fill, minmax(min(230px, 100%), 1fr));
    width: 100%;
}
main#content .account .account__list + .account__list { margin-top: 0; }
main#content .account .account__list li a { min-height: 76px; line-height: 1.3; }
main#content .account .account__list li a::before { flex-basis: 44px; }
main#content .account .account__list li a[href*="data"] { --dp-acc-icon: var(--acc-download); }
main#content .account .account__list li a:is([href*="close"], [href*="delete"], [href*="remove"]) { --dp-acc-icon: var(--acc-x-red); color: #a1281b; }
main#content .account .account__list li a:is([href*="close"], [href*="delete"], [href*="remove"])::before { background-color: color-mix(in srgb, #c0392b 8%, var(--color-bg)); }
main#content .account .account__list li a:is([href*="close"], [href*="delete"], [href*="remove"]):hover { border-color: color-mix(in srgb, #c0392b 35%, transparent); box-shadow: none; }
main#content .account:not(:has(input[type="password"])) > form:not(:last-child) {
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 16px 20px;
    border: 0;
    border-radius: 14px;
    background: var(--dp-tint-2);
}
main#content .account:not(:has(input[type="password"])) > form:not(:last-child) :is(.account__submit, button[type="submit"]) {
    min-height: 44px;
    padding: 0 22px;
    font-size: 14px;
}
main#content .account > p small,
main#content .account > p + p { font-size: 14px; }
:root {
    --icon-mail: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='m3 7 9 6 9-6'/%3E%3C/svg%3E");
    --icon-phone: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 4h4l2 5-2.5 1.5a11 11 0 0 0 5 5L15 13l5 2v4a2 2 0 0 1-2 2A16 16 0 0 1 3 6a2 2 0 0 1 2-2'/%3E%3C/svg%3E");
}
:has(> #info-nav) {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 300px;
    column-gap: 32px;
    align-items: start;
    width: min(var(--container, 1200px), calc(100% - 2 * var(--theme-section-side, 16px)));
    margin-inline: auto;
    padding-bottom: 56px;
}
:has(> #info-nav) > * { grid-column: 1 / -1; }
:has(> #info-nav) > #info-tekst { grid-column: 1; grid-row: 2; }
:has(> #info-nav) > #info-nav { grid-column: 2; grid-row: 2; position: sticky; top: 20px; }
:is(#info-kop, #info-tekst, #info-nav) { margin: 0; padding: 0; }
:is(#info-kop, #info-tekst, #info-nav) :is(.section__inner, .container) { width: auto; max-width: none; margin: 0; padding: 0; }
#info-kop {
    margin: 24px 0 28px;
    padding: 40px clamp(20px, 4vw, 48px);
    border-radius: 20px;
    background:
        radial-gradient(circle at 92% 20%, color-mix(in srgb, var(--brand-pink, #be2c75) 18%, transparent) 0 120px, transparent 121px),
        linear-gradient(120deg, color-mix(in srgb, var(--color-accent) 9%, var(--color-bg)), color-mix(in srgb, var(--color-accent) 3%, var(--color-bg)));
}
#info-kop :is(h2, .h2) {
    margin: 0 0 8px;
    font-size: clamp(30px, 3.6vw, 44px);
    font-weight: 800;
    letter-spacing: -.02em;
    line-height: 1.1;
    color: var(--color-text);
}
#info-kop :is(h2, .h2)::before {
    content: "Klantenservice";
    display: block;
    margin-bottom: 10px;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: var(--color-accent);
}
#info-kop p { margin: 0; max-width: 60ch; font-size: 17px; color: color-mix(in srgb, var(--color-text) 75%, transparent); }
#info-tekst,
:is(#blog-tekst, #melding-tekst) .section__inner {
    padding: clamp(22px, 3vw, 40px);
    border: 1px solid color-mix(in srgb, var(--color-text) 10%, transparent);
    border-radius: 18px;
    background: var(--color-bg);
    font-size: 16px;
    line-height: 1.75;
}
:is(#info-tekst, #blog-tekst, #melding-tekst) :is(h2, h3, .h2) {
    position: relative;
    margin: 1.8em 0 .5em;
    padding-left: 14px;
    font-size: 20px;
    font-weight: 800;
    line-height: 1.3;
    color: var(--color-text);
}
:is(#info-tekst, #blog-tekst, #melding-tekst) :is(h2, h3, .h2)::before {
    content: "";
    position: absolute;
    left: 0;
    top: .2em;
    bottom: .2em;
    width: 4px;
    border-radius: 2px;
    background: var(--color-accent);
}
:is(#info-tekst, #blog-tekst, #melding-tekst) :is(h2, h3, .h2):first-child { margin-top: 0; }
:is(#info-tekst, #blog-tekst, #melding-tekst) p { margin: 0 0 1em; color: color-mix(in srgb, var(--color-text) 85%, transparent); }
:is(#info-tekst, #blog-tekst, #melding-tekst) strong { color: var(--color-text); }
:is(#info-tekst, #blog-tekst, #melding-tekst) a { color: var(--color-accent); font-weight: 600; text-decoration-thickness: 1px; text-underline-offset: 3px; }
:is(#info-tekst, #blog-tekst, #melding-tekst) ul { margin: 0 0 1.2em; padding: 0; list-style: none; }
:is(#info-tekst, #blog-tekst, #melding-tekst) ul > li { position: relative; margin: 0 0 .5em; padding-left: 28px; }
:is(#info-tekst, #blog-tekst, #melding-tekst) ul > li::before {
    content: "";
    position: absolute;
    left: 0;
    top: .45em;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: var(--color-accent) center / 10px no-repeat;
    background-image: var(--icon-tick-white);
}
:is(#info-tekst, #blog-tekst, #melding-tekst) ol { margin: 0 0 1.2em; padding: 0; list-style: none; counter-reset: dp-step; }
:is(#info-tekst, #blog-tekst, #melding-tekst) ol > li { position: relative; margin: 0 0 .9em; padding-left: 42px; counter-increment: dp-step; }
:is(#info-tekst, #blog-tekst, #melding-tekst) ol > li::before {
    content: counter(dp-step);
    position: absolute;
    left: 0;
    top: .05em;
    display: grid;
    place-items: center;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: color-mix(in srgb, var(--color-accent) 10%, var(--color-bg));
    color: var(--color-accent);
    font-size: 14px;
    font-weight: 800;
    line-height: 1;
}
#info-nav {
    padding: 22px;
    border-radius: 18px;
    background: color-mix(in srgb, var(--color-accent) 4%, var(--color-bg));
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--color-accent) 12%, transparent);
}
#info-nav :is(h2, .h2) { margin: 0 0 12px; font-size: 18px; font-weight: 800; }
#info-nav ul { display: flex; flex-direction: column; gap: 4px; margin: 0; padding: 0; list-style: none; }
#info-nav li { margin: 0; padding: 0; }
#info-nav li a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 42px;
    padding: 0 14px;
    border-radius: 10px;
    color: var(--color-text);
    font-size: 15px;
    font-weight: 500;
    text-decoration: none;
}
#info-nav li a::after { content: "›"; font-size: 18px; color: var(--color-muted); }
#info-nav li a:hover { background: var(--color-bg); color: var(--color-accent); }
#info-nav li a:has(strong) { background: var(--color-accent); color: var(--color-accent-contrast); }
#info-nav li a:has(strong)::after { color: var(--color-accent-contrast); }
#info-nav li a strong { color: inherit; font-weight: 700; }
#info-nav h3 {
    margin: 20px 0 10px;
    padding-top: 18px;
    border-top: 1px solid color-mix(in srgb, var(--color-accent) 14%, transparent);
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--color-muted);
}
#info-nav p { margin: 0; font-size: 14px; line-height: 2.2; }
#info-nav p a { display: inline-flex; align-items: center; gap: 10px; color: var(--color-text); text-decoration: none; }
#info-nav p a::before {
    content: "";
    width: 18px;
    height: 18px;
    background-color: var(--color-accent);
    -webkit-mask: var(--icon-mail) center / contain no-repeat;
            mask: var(--icon-mail) center / contain no-repeat;
}
#info-nav p a[href^="tel:"]::before {
    -webkit-mask-image: var(--icon-phone);
            mask-image: var(--icon-phone);
}
#info-nav p a:hover { color: var(--color-accent); }
@media (max-width: 900px) {
    :has(> #info-nav) { grid-template-columns: minmax(0, 1fr); }
    :has(> #info-nav) > #info-tekst { grid-row: 2; }
    :has(> #info-nav) > #info-nav { grid-column: 1; grid-row: 3; position: static; margin-top: 24px; }
    #info-kop { padding: 28px 22px; }
}
.pg .cart-lines td.cart-item { display: flex; align-items: center; gap: 14px; min-width: 260px; }
.cart-item__thumb {
    position: relative;
    flex: 0 0 64px;
    width: 64px;
    height: 64px;
    overflow: hidden;
    border-radius: 12px;
    background: color-mix(in srgb, var(--color-accent) 5%, var(--color-bg));
}
.cart-item__thumb:empty::after {
    content: "";
    position: absolute;
    inset: 20px;
    background-color: color-mix(in srgb, var(--color-accent) 35%, var(--color-bg));
    -webkit-mask: var(--icon-bag) center / contain no-repeat;
            mask: var(--icon-bag) center / contain no-repeat;
}
.cart-item__thumb img,
.cart-item__thumb picture { display: block; width: 100%; height: 100%; object-fit: contain; padding: 5px; box-sizing: border-box; }
.cart-item__text { display: flex; flex-direction: column; min-width: 0; }
a.cart-item__name { color: var(--color-text); text-decoration: none; }
a.cart-item__name:hover { color: var(--color-accent); }
a.cart-item__name:hover strong { text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 640px) {
    .pg .cart-lines td.cart-item { min-width: 0; }
    .cart-item__thumb { flex-basis: 56px; width: 56px; height: 56px; }
}
:root {
    --icon-hammer: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 6l4 4M9 3l6 6-3 3-6-6z'/%3E%3Cpath d='M12 12l8 8'/%3E%3C/svg%3E");
    --icon-blocks: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='13' width='8' height='8' rx='1'/%3E%3Crect x='13' y='13' width='8' height='8' rx='1'/%3E%3Crect x='8' y='3' width='8' height='8' rx='1'/%3E%3C/svg%3E");
    --icon-pot: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 10h16v6a4 4 0 0 1-4 4H8a4 4 0 0 1-4-4z'/%3E%3Cpath d='M2 10h2M20 10h2M9 6c0-1 1-2 3-2s3 1 3 2'/%3E%3C/svg%3E");
    --icon-leaf: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 19c0-9 6-14 15-14 0 9-5 15-14 15'/%3E%3Cpath d='M5 19l8-8'/%3E%3C/svg%3E");
    --icon-house: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 11l9-7 9 7'/%3E%3Cpath d='M5 10v10h14V10'/%3E%3Cpath d='M10 20v-5h4v5'/%3E%3C/svg%3E");
    --icon-grid: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='4' width='6' height='6' rx='1.5'/%3E%3Crect x='14' y='4' width='6' height='6' rx='1.5'/%3E%3Crect x='4' y='14' width='6' height='6' rx='1.5'/%3E%3Crect x='14' y='14' width='6' height='6' rx='1.5'/%3E%3C/svg%3E");
}
#category-bar .mega-nav__level-1 { flex-wrap: nowrap; gap: 0 2px; }
#category-bar .mega-nav__top { gap: 7px; padding: 9px 11px; font-size: 15px; white-space: nowrap; }
#category-bar .mega-nav__top::before { width: 17px; height: 17px; }
#category-bar .mega-nav__top[href$="/klussen"]::before { -webkit-mask-image: var(--icon-hammer); mask-image: var(--icon-hammer); }
#category-bar .mega-nav__top[href$="/speelgoed"]::before { -webkit-mask-image: var(--icon-blocks); mask-image: var(--icon-blocks); }
#category-bar .mega-nav__top[href$="/koken-tafelen"]::before { -webkit-mask-image: var(--icon-pot); mask-image: var(--icon-pot); }
#category-bar .mega-nav__top[href$="/tuin"]::before { -webkit-mask-image: var(--icon-leaf); mask-image: var(--icon-leaf); }
#category-bar .mega-nav__top[href$="/huishouden"]::before { -webkit-mask-image: var(--icon-house); mask-image: var(--icon-house); }
#category-bar .mega-nav__top[href$="/shop"]::before { -webkit-mask-image: var(--icon-grid); mask-image: var(--icon-grid); }
@media (max-width: 1180px) {
    #category-bar .mega-nav__top { padding: 8px 8px; font-size: 14px; }
    #category-bar .mega-nav__top::before { display: none; }
}
:root {
    --icon-menu: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M4 7h16M4 12h16M4 17h16'/%3E%3C/svg%3E");
    --icon-close: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M6 6l12 12M18 6 6 18'/%3E%3C/svg%3E");
    --icon-home: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 11 12 4l9 7'/%3E%3Cpath d='M5 10v10h14V10'/%3E%3C/svg%3E");
    --icon-search-2: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E");
}
#top-row .rich-nav__wide li:has(> details),
#top-row .rich-nav__wide li:has(a[href$="/shop"]) { display: none !important; }
footer.page-band #footer-tabbar { display: none; }
@media (max-width: 699px) {
    header.page-band { position: relative; display: block; padding-inline: 12px; }
    header.page-band :is(#account, #category-bar) { display: none !important; }
    header.page-band #top-row { padding-block: 8px 12px; }
    header.page-band #top-row .nav-bar__inner { display: flex; flex-wrap: wrap !important; align-items: center; gap: 10px 4px !important; padding: 0 !important; }
    header.page-band #top-row .rich-nav__wide { display: none !important; }
    header.page-band #top-row .rich-nav__narrow { display: block !important; order: -1 !important; flex: 0 0 44px; }
    header.page-band #top-row .rich-nav__brand { order: 0 !important; flex: 1 1 auto; justify-content: center; min-height: 48px; margin-right: 44px; }
    header.page-band #top-row .rich-nav__brand img { height: 44px; }
    header.page-band #top-row .rich-nav__search { order: 3 !important; flex: 1 1 100% !important; max-width: none; }
    header.page-band #top-row .rich-nav__search input { min-height: 46px; border-radius: 999px; padding: 0 18px; border: 1px solid color-mix(in srgb, var(--color-text) 14%, transparent); background: var(--color-bg); }
    header.page-band #top-row .rich-nav__search button { min-height: 46px; padding: 0 16px; }
    header.page-band #basket { position: absolute; top: 14px; right: 10px; z-index: 2; color: var(--color-text); }
    header.page-band #basket .nav-bar__basket { padding: 8px; border: 0; border-radius: 999px; background: none; color: var(--color-text); }
    header.page-band #basket .nav-bar__basket:hover { background: color-mix(in srgb, var(--color-accent) 8%, var(--color-bg)); color: var(--color-accent); }
    header.page-band #top-row .rich-nav__narrow .rich-nav__stack { list-style: none; margin: 0; padding: 0; }
    header.page-band #top-row .rich-nav__narrow .rich-nav__stack > li:not(:first-child) { display: none; }
    header.page-band #top-row .rich-nav__narrow summary { list-style: none; cursor: pointer; }
    header.page-band #top-row .rich-nav__narrow summary::-webkit-details-marker { display: none; }
    header.page-band #top-row .rich-nav__narrow .rich-nav__stack > li:first-child > details > summary {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 44px;
        height: 44px;
        padding: 0;
        border-radius: 999px;
        font-size: 0;
        color: var(--color-text);
    }
    header.page-band #top-row .rich-nav__narrow .rich-nav__stack > li:first-child > details > summary::after { content: none; }
    header.page-band #top-row .rich-nav__narrow .rich-nav__stack > li:first-child > details > summary::before {
        content: "";
        width: 26px;
        height: 26px;
        background-color: currentColor;
        -webkit-mask: var(--icon-menu) center / contain no-repeat;
                mask: var(--icon-menu) center / contain no-repeat;
    }
    header.page-band #top-row .rich-nav__narrow .rich-nav__stack > li:first-child > details[open] > summary::before {
        -webkit-mask-image: var(--icon-close);
                mask-image: var(--icon-close);
    }
    header.page-band #top-row .rich-nav__narrow .rich-nav__stack:has(> li:first-child > details[open]) {
        position: fixed;
        top: 0;
        left: 0;
        bottom: 0;
        z-index: 60;
        width: min(86vw, 360px);
        padding: 10px 18px 96px;
        box-sizing: border-box;
        overflow-y: auto;
        overscroll-behavior: contain;
        background: var(--color-bg);
        box-shadow: 8px 0 32px color-mix(in srgb, var(--color-text) 22%, transparent);
    }
    header.page-band #top-row .rich-nav__narrow:has(details[open])::before {
        content: "";
        position: fixed;
        inset: 0;
        z-index: 55;
        background: color-mix(in srgb, var(--color-text) 45%, transparent);
    }
    body:has(#top-row .rich-nav__stack > li:first-child > details[open]) { overflow: hidden; }
    header.page-band #top-row .rich-nav__narrow .rich-nav__stack:has(> li:first-child > details[open]) > li { display: block; margin: 0; }
    header.page-band #top-row .rich-nav__narrow .rich-nav__stack:has(> li:first-child > details[open]) > li:first-child > details > summary { margin: 0 0 6px auto; }
    header.page-band #top-row .rich-nav__narrow .rich-nav__stack:has(> li:first-child > details[open]) ul { list-style: none; margin: 0; padding: 0; }
    header.page-band #top-row .rich-nav__narrow details details > summary,
    header.page-band #top-row .rich-nav__narrow details details a,
    header.page-band #top-row .rich-nav__narrow .rich-nav__stack > li:first-child > details > ul > li > a {
        display: flex;
        align-items: center;
        gap: 12px;
        min-height: 50px;
        padding: 0 4px;
        border-bottom: 1px solid color-mix(in srgb, var(--color-text) 9%, transparent);
        font-size: 16px;
        font-weight: 700;
        line-height: 1.3;
        color: var(--color-text) !important;
        text-decoration: none;
    }
    header.page-band #top-row .rich-nav__narrow details details > summary::after {
        content: "";
        width: 8px;
        height: 8px;
        margin-left: auto;
        border-right: 2px solid currentColor;
        border-bottom: 2px solid currentColor;
        transform: rotate(45deg);
        transition: transform .15s ease;
    }
    header.page-band #top-row .rich-nav__narrow details details[open] > summary { color: var(--color-accent) !important; }
    header.page-band #top-row .rich-nav__narrow details details[open] > summary::after { transform: rotate(-135deg); }
    header.page-band #top-row .rich-nav__narrow details details ul a {
        min-height: 44px;
        padding-left: 34px;
        font-size: 15px;
        font-weight: 500;
        border-bottom-color: color-mix(in srgb, var(--color-text) 5%, transparent);
    }
    header.page-band #top-row .rich-nav__narrow details details ul a:hover { color: var(--color-accent) !important; }
    header.page-band #top-row .rich-nav__narrow .rich-nav__stack > li:first-child > details > ul > li > details > summary::before {
        content: "";
        flex: 0 0 18px;
        width: 18px;
        height: 18px;
        background-color: var(--color-accent);
        -webkit-mask: var(--dp-drawer-icon, var(--icon-grid)) center / contain no-repeat;
                mask: var(--dp-drawer-icon, var(--icon-grid)) center / contain no-repeat;
    }
    header.page-band #top-row .rich-nav__narrow .rich-nav__stack > li:first-child > details > ul > li:nth-child(1) { --dp-drawer-icon: var(--icon-hammer); }
    header.page-band #top-row .rich-nav__narrow .rich-nav__stack > li:first-child > details > ul > li:nth-child(2) { --dp-drawer-icon: var(--icon-blocks); }
    header.page-band #top-row .rich-nav__narrow .rich-nav__stack > li:first-child > details > ul > li:nth-child(3) { --dp-drawer-icon: var(--icon-headset); }
    header.page-band #top-row .rich-nav__narrow .rich-nav__stack > li:first-child > details > ul > li:nth-child(4) { --dp-drawer-icon: var(--icon-pot); }
    header.page-band #top-row .rich-nav__narrow .rich-nav__stack > li:first-child > details > ul > li:nth-child(5) { --dp-drawer-icon: var(--icon-leaf); }
    header.page-band #top-row .rich-nav__narrow .rich-nav__stack > li:first-child > details > ul > li:nth-child(6) { --dp-drawer-icon: var(--icon-house); }
    header.page-band #top-row .rich-nav__narrow .rich-nav__stack > li:first-child > details > ul > li:nth-child(7) { --dp-drawer-icon: var(--icon-sparkle); }
    header.page-band #top-row .rich-nav__narrow .rich-nav__stack > li:first-child > details > ul > li:nth-child(8) { --dp-drawer-icon: var(--icon-grid); }
    header.page-band #top-row .rich-nav__narrow .rich-nav__stack:has(> li:first-child > details[open]) > li:nth-child(n+2) { display: inline-block; margin: 20px 6px 0 0; }
    header.page-band #top-row .rich-nav__narrow .rich-nav__stack > li:nth-child(n+2) > a {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-width: 52px;
        min-height: 40px;
        padding: 0 14px;
        border: 1px solid color-mix(in srgb, var(--color-text) 14%, transparent);
        border-radius: 999px;
        font-size: 14px;
        font-weight: 700;
        color: var(--color-text);
        text-decoration: none;
    }
    html:lang(nl) header.page-band #top-row .rich-nav__narrow a[href$="/nl/"],
    html:lang(en) header.page-band #top-row .rich-nav__narrow a[href$="/en/"],
    html:lang(fr) header.page-band #top-row .rich-nav__narrow a[href$="/fr/"] {
        border-color: var(--color-accent);
        background: var(--color-accent);
        color: var(--color-accent-contrast);
    }
    body { padding-bottom: calc(64px + env(safe-area-inset-bottom, 0px)); }
    footer.page-band #footer-tabbar {
        display: block;
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 40;
        width: auto;
        max-width: none;
        margin: 0;
        padding: 0 0 env(safe-area-inset-bottom, 0px);
        background: var(--color-bg);
        border-top: 1px solid color-mix(in srgb, var(--color-text) 10%, transparent);
        box-shadow: 0 -4px 16px color-mix(in srgb, var(--color-text) 8%, transparent);
    }
    footer.page-band #footer-tabbar :is(h2, .h4) { display: none; }
    footer.page-band #footer-tabbar :is(.section__inner, .prose) { margin: 0; padding: 0; max-width: none; }
    footer.page-band #footer-tabbar ul { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); margin: 0; padding: 0; list-style: none; }
    footer.page-band #footer-tabbar li { margin: 0; padding: 0; }
    footer.page-band #footer-tabbar li::before { content: none; }
    footer.page-band #footer-tabbar a {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 4px;
        min-height: 62px;
        font-size: 11px;
        font-weight: 600;
        line-height: 1.1;
        color: var(--color-text);
        text-decoration: none;
        white-space: nowrap;
    }
    footer.page-band #footer-tabbar a::before {
        content: "";
        width: 22px;
        height: 22px;
        background-color: currentColor;
        -webkit-mask: var(--dp-tab-icon) center / contain no-repeat;
                mask: var(--dp-tab-icon) center / contain no-repeat;
    }
    footer.page-band #footer-tabbar a:hover,
    footer.page-band #footer-tabbar a:active { color: var(--color-accent); }
    footer.page-band #footer-tabbar li:nth-child(1) a { --dp-tab-icon: var(--icon-home); }
    footer.page-band #footer-tabbar li:nth-child(2) a { --dp-tab-icon: var(--icon-grid); }
    footer.page-band #footer-tabbar li:nth-child(3) a { --dp-tab-icon: var(--icon-search-2); }
    footer.page-band #footer-tabbar li:nth-child(4) a { --dp-tab-icon: var(--icon-bag); }
    footer.page-band #footer-tabbar li:nth-child(5) a { --dp-tab-icon: var(--icon-user); }
}
@media (max-width: 699px) {
    :not(html):not(body):has(#footer-tabbar) {
        container-type: normal !important;
        contain: none !important;
        transform: none !important;
        filter: none !important;
        perspective: none !important;
        backdrop-filter: none !important;
        will-change: auto !important;
        overflow: visible !important;
    }
    html:has(#footer-tabbar),
    body:has(#footer-tabbar) { overflow-x: clip !important; }
    footer.page-band #footer-tabbar { position: fixed !important; bottom: 0 !important; z-index: 50 !important; }
}
@media (max-width: 699px) {
    :not(html):not(body):has(#footer-tabbar) {
        content-visibility: visible !important;
        contain-intrinsic-size: none !important;
        z-index: auto !important;
        isolation: auto !important;
        opacity: 1 !important;
        clip-path: none !important;
        -webkit-mask: none !important;
                mask: none !important;
    }
    footer.page-band #footer-tabbar { z-index: 1000 !important; isolation: isolate; content-visibility: visible !important; }
}
:root { --icon-facebook: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='black'%3E%3Cpath d='M14 8h3V4h-3a4 4 0 0 0-4 4v2H8v4h2v8h4v-8h3l1-4h-4V8a0 0 0 0 1 0 0z'/%3E%3C/svg%3E"); --icon-instagram: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9'%3E%3Crect x='3' y='3' width='18' height='18' rx='5'/%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Ccircle cx='17.5' cy='6.5' r='1' fill='black'/%3E%3C/svg%3E"); }
#footer-social ul { display: flex; flex-wrap: wrap; gap: 10px; margin: 0; padding: 0; list-style: none; }
#footer-social li { margin: 0; padding: 0; }
#footer-social li::before { content: none; }
#footer-social a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 40px;
    padding: 0 16px 0 12px;
    border: 1px solid color-mix(in srgb, var(--color-text) 12%, transparent);
    border-radius: 999px;
    background: var(--color-bg);
    color: var(--color-text);
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
}
#footer-social a::before {
    content: "";
    width: 18px;
    height: 18px;
    background-color: var(--color-accent);
    -webkit-mask: var(--icon-facebook) center / contain no-repeat;
            mask: var(--icon-facebook) center / contain no-repeat;
}
#footer-social a[href*="instagram"]::before { -webkit-mask-image: var(--icon-instagram); mask-image: var(--icon-instagram); }
#footer-social a:hover { border-color: var(--color-accent); color: var(--color-accent); }
:has(> #info-nav) > #info-tekst-2 { grid-column: 1; grid-row: 3; }
:has(> #info-nav):has(> #info-tekst-2) > #info-nav { grid-row: 2 / span 2; }
#info-tekst-2 {
    margin: 0;
    padding: 0 clamp(22px, 3vw, 40px) clamp(22px, 3vw, 40px);
    border: 1px solid color-mix(in srgb, var(--color-text) 10%, transparent);
    border-top: 0;
    border-radius: 0 0 18px 18px;
    background: var(--color-bg);
    font-size: 16px;
    line-height: 1.75;
}
:has(> #info-tekst-2) > #info-tekst { border-bottom: 0; border-radius: 18px 18px 0 0; padding-bottom: 0; }
#info-tekst-2 :is(.section__inner, .container) { width: auto; max-width: none; margin: 0; padding: 0; }
#info-tekst-2 :is(h2, h3, .h2) {
    position: relative;
    margin: 1.8em 0 .5em;
    padding-left: 14px;
    font-size: 20px;
    font-weight: 800;
    line-height: 1.3;
    color: var(--color-text);
}
#info-tekst-2 :is(h2, h3, .h2)::before {
    content: "";
    position: absolute;
    left: 0;
    top: .2em;
    bottom: .2em;
    width: 4px;
    border-radius: 2px;
    background: var(--color-accent);
}
:is(#info-tekst, #info-tekst-2) h3 { font-size: 17px; }
#info-tekst-2 p { margin: 0 0 1em; color: color-mix(in srgb, var(--color-text) 85%, transparent); }
#info-tekst-2 a { color: var(--color-accent); font-weight: 600; }
#info-tekst-2 ul { margin: 0 0 1.2em; padding: 0; list-style: none; }
#info-tekst-2 ul > li { position: relative; margin: 0 0 .5em; padding-left: 28px; }
#info-tekst-2 ul > li::before {
    content: "";
    position: absolute;
    left: 0;
    top: .45em;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: var(--color-accent) center / 10px no-repeat;
    background-image: var(--icon-tick-white);
}
@media (max-width: 900px) {
    :has(> #info-nav) > #info-tekst-2 { grid-row: 3; }
    :has(> #info-nav):has(> #info-tekst-2) > #info-nav { grid-row: 4; }
}
@media (min-width: 901px) {
    main#content > .checkout:not(.placed) {
        grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
        column-gap: 40px;
        row-gap: 0;
        grid-auto-flow: row dense;
    }
    main#content > .checkout:not(.placed) > * { grid-column: 1 / -1; order: 0; }
    main#content > .checkout:not(.placed) > .checkout__form {
        display: contents;
    }
    main#content > .checkout:not(.placed) > .checkout__form > * { grid-column: 1; order: 1; }
    main#content > .checkout:not(.placed) > .checkout__summary-title { grid-column: 2; grid-row: auto; order: 2; margin-top: 0; }
    main#content > .checkout:not(.placed) > .checkout__summary { grid-column: 2; grid-row: auto; order: 3; }
    main#content > .checkout:not(.placed) > .checkout__form > .checkout__payment { grid-column: 2; order: 4; margin-top: 20px; }
    main#content > .checkout:not(.placed) > .checkout__form > .checkout__submit { grid-column: 2; order: 5; align-self: start; margin-top: 16px; }
    main#content > .checkout:not(.placed) > .checkout__form > :is(.checkout__shipping, .checkout__billing, .checkout__saved, .checkout__field, .checkout__notice) {
        margin-bottom: 18px;
    }
}
main#content .checkout__payment {
    padding: 6px 0;
    border: 1px solid color-mix(in srgb, var(--color-text) 12%, transparent);
    border-radius: 14px;
    background: var(--color-bg);
    gap: 0 !important;
}
main#content .checkout__payment legend { padding: 14px 18px 6px; font-size: 18px; font-weight: 800; }
main#content .checkout__payment label {
    flex-direction: row !important;
    align-items: center;
    gap: 12px !important;
    min-height: 48px;
    padding: 0 18px;
    border-top: 1px solid color-mix(in srgb, var(--color-text) 8%, transparent);
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
}
main#content .checkout__payment label:has(input:checked) { background: color-mix(in srgb, var(--color-accent) 5%, var(--color-bg)); color: var(--color-accent); }
main#content .checkout__payment img { margin-left: auto; height: 22px; width: auto; }
.product-carousel__track :is(.card__shade, .product-card__media, .card__media, .product-card__image) {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    border-radius: 12px;
    background: color-mix(in srgb, var(--color-accent) 5%, var(--color-bg));
}
.product-carousel__track :is(.card__shade, .product-card__media, .card__media, .product-card__image) :is(img, picture) {
    width: 100%;
    height: 100%;
    max-width: none;
    max-height: none;
}
.product-carousel__track img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
    object-fit: contain;
    padding: 10%;
    box-sizing: border-box;
    border-radius: 12px;
    background: color-mix(in srgb, var(--color-accent) 5%, var(--color-bg));
}
.product-carousel__track :is(.card__shade, .product-card__media, .card__media, .product-card__image) img { padding: 10%; background: none; }
.product-carousel__track :is(.product-card__name, h2, h3) {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: 2.8em;
}
.product-carousel__cell { align-self: start; }
:root {
    --dp-line: #e8e8e6;
    --dp-hover: #ededea;
    --dp-green: #1f7a4d;
    --dp-r: 12px;
    --dp-shadow: 0 6px 24px rgba(27, 27, 31, .08);
    --side: max(16px, calc((100vw - var(--container, 1400px)) / 2));
    --dp-i-menu: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'%3E%3Cpath d='M4 6h16M4 12h16M4 18h16'/%3E%3C/svg%3E");
    --dp-i-right: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m9 18 6-6-6-6'/%3E%3C/svg%3E");
    --dp-i-arrow: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E");
    --dp-i-drop: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linejoin='round'%3E%3Cpath d='M12 3s6 6.500 6 11a6 6 0 0 1-12 0c0-4.500 6-11 6-11z'/%3E%3C/svg%3E");
    --dp-i-phones: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round'%3E%3Cpath d='M3 14v-2a9 9 0 0 1 18 0v2M21 15a2 2 0 0 1-2 2h-1v-6h1a2 2 0 0 1 2 2zM3 15a2 2 0 0 0 2 2h1v-6H5a2 2 0 0 0-2 2z'/%3E%3C/svg%3E");
}
body { -webkit-font-smoothing: antialiased; }
header.page-band {
    grid-template-columns: minmax(0, 1fr) auto auto;
    column-gap: 24px;
    align-items: center;
    padding-inline: var(--side);
}
#top-strip {
    grid-column: 1 / -1;
    grid-row: 1;
    margin-inline: calc(0px - var(--side));
    padding: 8px var(--side);
    background: var(--color-bg);
    color: var(--color-muted);
    border-bottom: 1px solid var(--dp-line);
    font-size: 13px;
    line-height: 1.4;
}
#top-strip :is(.section__inner, p) { margin: 0; padding: 0; max-width: none; background: none; color: inherit; text-align: left; }
#top-row { grid-column: 1; grid-row: 2; padding-block: 18px; }
#top-row .nav-bar__inner { flex-wrap: nowrap; gap: 16px 32px; }
#top-row .rich-nav__brand img { height: 46px; }
#top-row .rich-nav__wide { flex: none; order: 3; margin-left: 0; padding: 3px 3px 3px 30px; background-position: 9px center; }
#top-row .rich-nav__wide a { min-width: 34px; min-height: 30px; padding: 0 8px; font-size: 12px; letter-spacing: .04em; }
#top-row .rich-nav__search { position: relative; order: 2; flex: 1 1 auto; max-width: none; }
#top-row .rich-nav__search input {
    width: 100%;
    min-height: 48px;
    padding: 0 18px 0 46px;
    border: 1px solid transparent;
    border-radius: 999px;
    background-color: var(--color-surface);
}
#top-row .rich-nav__search input:focus { background-color: var(--color-bg); border-color: var(--color-muted); }
#top-row .rich-nav__search button {
    position: absolute;
    inset-block-start: 6px;
    inset-inline-start: 8px;
    width: 36px;
    min-width: 0;
    min-height: 36px;
    padding: 0;
    overflow: hidden;
    border: 0;
    background: transparent;
    color: transparent;
    font-size: 0;
}
#top-row .rich-nav__search button:hover { background: transparent; }
#top-row .rich-nav__search button::before { display: none; }
#account { grid-column: 2; grid-row: 2; margin: 0; padding: 0; }
#account .nav-bar__account { flex-direction: row; gap: 8px; padding: 0; font-size: 14px; font-weight: 500; color: var(--color-text); }
#basket { grid-column: 3; grid-row: 2; padding: 0; color: var(--color-text); }
#basket .nav-bar__basket { gap: 8px; min-height: 44px; padding: 0; border: 0; border-radius: 0; background: none; color: var(--color-text); font-size: 14px; font-weight: 500; }
#basket .nav-bar__basket::after { content: attr(aria-label); }
#basket .nav-bar__basket:hover { background: none; color: var(--color-accent); }
#basket .nav-bar__basket-count { inset-inline-start: 12px; top: 2px; }
#category-bar {
    grid-column: 1 / -1;
    grid-row: 3;
    margin-inline: calc(0px - var(--side));
    padding: 0 var(--side);
    background: var(--color-bg);
    color: var(--color-text);
    border-top: 1px solid var(--dp-line);
    border-bottom: 1px solid var(--dp-line);
}
#category-bar .section__inner { max-width: none; background: none; color: inherit; }
#category-bar .mega-nav__level-1 { flex-wrap: nowrap; gap: 0 28px; align-items: center; }
#category-bar .mega-nav__top {
    gap: 8px;
    min-height: 48px;
    padding: 0;
    border-radius: 0;
    background: none;
    color: inherit;
    font-size: 14px;
    font-weight: 500;
    white-space: nowrap;
}
#category-bar .mega-nav__top::before { display: none; }
#category-bar .mega-nav__disclosure > summary::after { display: none; }
#category-bar .mega-nav__disclosure > summary { font-weight: 600; }
#category-bar .mega-nav__disclosure > summary::before {
    display: block;
    width: 20px;
    height: 20px;
    -webkit-mask-image: var(--dp-i-menu);
            mask-image: var(--dp-i-menu);
}
#category-bar .mega-nav__top:hover,
#category-bar .mega-nav__item:focus-within .mega-nav__top { background: none; color: var(--color-accent); text-decoration: none; }
#category-bar a:focus-visible,
#category-bar summary:focus-visible,
#basket a:focus-visible { outline-color: var(--color-accent); }
@media (min-width: 700px) {
    #category-bar .mega-nav__panel {
        inset-inline: 0;
        height: 540px;
        max-height: min(540px, calc(100vh - 120px));
        padding: 0;
        overflow: hidden;
        border: 0;
        border-top: 1px solid var(--dp-line);
        border-radius: 0 0 16px 16px;
        background: var(--color-bg);
        color: var(--color-text);
        box-shadow: 0 24px 48px rgba(27, 27, 31, .16);
    }
    #category-bar .mega-nav__all { display: none; }
    #category-bar .mega-nav__columns {
        display: block;
        width: 280px;
        max-width: none;
        height: 100%;
        padding: 12px 0;
        overflow-y: auto;
        border-inline-end: 1px solid var(--dp-line);
    }
    #category-bar .mega-nav__column { position: static; }
    #category-bar .mega-nav__column .mega-nav__column-head {
        flex-direction: row;
        justify-content: space-between;
        gap: 12px;
        width: 100%;
        min-height: 36px;
        padding: 7px 20px;
        border-radius: 0;
        background: none;
        color: var(--color-text);
        font-size: 14px;
        font-weight: 400;
    }
    #category-bar .mega-nav__column .mega-nav__column-head :is(picture, img) { display: none; }
    #category-bar .mega-nav__column .mega-nav__column-head::before { display: none; }
    #category-bar .mega-nav__column:has(.mega-nav__level-3) > .mega-nav__column-head::after {
        display: block !important;
        position: static;
        flex: none;
        width: 14px;
        height: 14px;
        transform: none;
        background-color: currentColor;
        -webkit-mask: var(--dp-i-right) center / contain no-repeat;
                mask: var(--dp-i-right) center / contain no-repeat;
    }
    #category-bar .mega-nav__column:not(:has(.mega-nav__level-3)) > .mega-nav__column-head::after { display: none; }
    #category-bar .mega-nav__column:hover > .mega-nav__column-head,
    #category-bar .mega-nav__column:focus-within > .mega-nav__column-head,
    #category-bar .mega-nav__columns:not(:has(.mega-nav__column:hover > .mega-nav__level-3, .mega-nav__column:focus-within > .mega-nav__level-3)) > .mega-nav__column:first-child > .mega-nav__column-head {
        background: var(--color-surface);
        color: var(--color-text);
        font-weight: 600;
    }
    #category-bar .mega-nav__level-3 {
        position: absolute;
        inset: 0 0 0 280px;
        display: none;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        align-content: start;
        gap: 12px;
        margin: 0;
        padding: 24px 28px;
        overflow-y: auto;
        background: var(--color-bg);
        font-size: 15px;
    }
    #category-bar .mega-nav__column:hover > .mega-nav__level-3,
    #category-bar .mega-nav__column:focus-within > .mega-nav__level-3,
    #category-bar .mega-nav__columns:not(:has(.mega-nav__column:hover > .mega-nav__level-3, .mega-nav__column:focus-within > .mega-nav__level-3)) > .mega-nav__column:first-child > .mega-nav__level-3 { display: grid; }
    #category-bar .mega-nav__level-3 a {
        display: flex;
        align-items: flex-end;
        justify-content: flex-start;
        width: 100%;
        height: 106px;
        min-height: 0;
        padding: 14px 104px 14px 16px;
        border-radius: var(--dp-r);
        background: var(--color-surface) var(--dp-foto, none) no-repeat right 12px center / 82px 82px;
        background-blend-mode: multiply;
        color: var(--color-text);
        font-size: 14px;
        font-weight: 600;
        line-height: 1.25;
        text-align: left;
    }
    #category-bar .mega-nav__level-3 a:hover { background-color: var(--dp-hover); color: var(--color-accent); }
    #category-bar .mega-nav__level-3 > li:last-child > a { height: 106px; padding-inline-end: 16px; background: none; box-shadow: inset 0 0 0 1px var(--dp-line); }
}
:is(.btn, .add-to-cart button, .filters__price-apply) { border-radius: 999px; font-weight: 600; }
.btn { min-height: 48px; padding: .6em 1.5em; }
main .h2, .section .h2 { font-size: 24px; line-height: 1.2; letter-spacing: -.02em; font-weight: 700; }
.product-card,
.card--product { padding: 0; border-radius: 0; background: none; box-shadow: none; }
.product-card__link,
.card--product > a { color: inherit; text-decoration: none; }
:is(.product-card__media, .product-card img, .card--product img, .product-card .card__shade, .card--product .card__shade) {
    display: block;
    width: 100%;
    aspect-ratio: 1 / 1;
    height: auto;
    padding: 0;
    object-fit: contain;
    border-radius: var(--dp-r);
    background: var(--color-bg) !important;
    transition: box-shadow .15s ease;
}
:is(.product-card__link, .card--product > a):hover :is(img, .card__shade) { transform: none; box-shadow: var(--dp-shadow); }
:is(.product-card__name, .card--product h2) {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: 39px;
    margin: 12px 0 6px;
    color: var(--color-text);
    font-size: 14px;
    font-weight: 400;
    line-height: 1.4;
}
:is(.product-card__link, .card--product > a):hover :is(.product-card__name, h2) { color: var(--color-accent); }
:is(.product-card__price, .card--product .price, .card--product .price__now) { margin: 0; color: var(--color-text); font-size: 16px; font-weight: 700; }
:is(#populair-verzorging, #populair-trimmen, #populair-fiets, #populair-audio) .product-card__price { color: var(--color-text); }
:is(#populair-verzorging, #populair-trimmen, #populair-fiets, #populair-audio) .product-card__name { font-size: 14px; font-weight: 400; line-height: 1.4; }
.section--carousel { position: relative; padding-inline: 0; }
.section--carousel .section__inner { margin-bottom: 20px; }
.section--carousel .product-carousel__track { gap: 24px; max-width: none; padding-inline: 0; }
.section--carousel .product-carousel__cell { width: calc((100% - 96px) / 5); min-width: 190px; }
.section--carousel .slideshow__arrows { inset-inline: 4px; }
.section--carousel .slideshow__arrow,
.pd-stage .slideshow__arrow {
    width: 44px;
    height: 44px;
    border: 1px solid var(--dp-line);
    border-radius: 50%;
    background: var(--color-bg);
    color: var(--color-text);
    box-shadow: none;
}
.section--carousel .slideshow__arrow[disabled],
.pd-stage .slideshow__arrow[disabled] { visibility: hidden; }
main:has(#bento-1) {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    gap: 0 16px;
    width: min(var(--container, 1400px), calc(100% - 32px));
    margin: 20px auto 0;
}
main:has(#bento-1) > .section { grid-column: 1 / -1; min-width: 0; padding-inline: 0; }
main:has(#bento-1) > #bento-1 { grid-column: span 7; grid-row: span 2; }
main:has(#bento-1) > #bento-2 { grid-column: span 5; }
main:has(#bento-1) > :is(#bento-3, #bento-4) { grid-column: span 3; margin-top: 16px; }
main:has(#bento-1) > #bento-4 { grid-column: span 2; }
:is(#bento-1, #bento-2, #bento-3, #bento-4) { margin: 0; padding: 0; overflow: hidden; border-radius: 20px; background: var(--color-surface); }
:is(#bento-1, #bento-2, #bento-3, #bento-4) .slideshow__track { height: 100%; }
:is(#bento-1, #bento-2, #bento-3, #bento-4) .slideshow__slide {
    min-height: 0 !important;
    height: 100%;
    align-items: stretch;
    padding: 24px;
    background: none;
    color: var(--color-text);
}
:is(#bento-1, #bento-2, #bento-3, #bento-4) .slideshow__body {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    gap: 8px;
    max-width: none;
    margin: 0;
    padding: 0;
    border-radius: 0;
    background: none;
}
:is(#bento-1, #bento-2, #bento-3, #bento-4) .eyebrow { margin: 0; color: var(--color-muted); font-size: 12px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; }
:is(#bento-1, #bento-2, #bento-3, #bento-4) :is(h1, h2, h3, .h1, .h2) { margin: 0; color: var(--color-text); font-size: 20px; font-weight: 700; line-height: 1.15; letter-spacing: -.02em; }
:is(#bento-1, #bento-2, #bento-3, #bento-4) .lede { margin: 0; color: var(--color-muted); font-size: 13px; line-height: 1.45; }
:is(#bento-1, #bento-2, #bento-3, #bento-4) picture { display: contents; }
:is(#bento-1, #bento-2, #bento-3, #bento-4) .slideshow__media {
    inset: auto;
    width: auto;
    height: auto;
    object-fit: contain;
    mix-blend-mode: multiply;
}
#bento-1 .slideshow__slide { min-height: 476px !important; padding: 48px; }
#bento-1 .slideshow__body { justify-content: center; gap: 14px; max-width: 430px; position: relative; z-index: 1; }
#bento-1 :is(h1, h2, h3, .h1, .h2) { font-size: clamp(38px, 4.2vw, 60px); font-weight: 800; line-height: 1.03; letter-spacing: -.035em; }
#bento-1 .lede { max-width: 300px; font-size: 16px; }
#bento-1 .slideshow__media { right: 28px; bottom: 36px; width: 300px; height: 380px; }
#bento-2 .slideshow__slide { min-height: 230px !important; padding: 28px; }
#bento-2 .slideshow__body { justify-content: space-between; max-width: 240px; position: relative; z-index: 1; }
#bento-2 :is(h1, h2, h3, .h1, .h2) { font-size: 28px; }
#bento-2 .lede { font-size: 14px; }
#bento-2 .slideshow__media { right: 20px; top: 15px; width: 200px; height: 200px; }
:is(#bento-3, #bento-4) .slideshow__slide { min-height: 230px !important; }
:is(#bento-3, #bento-4) .btn-row { margin-top: 6px; }
:is(#bento-2, #bento-3, #bento-4) .btn { min-height: 40px; padding: .4em 1.1em; background: var(--color-bg); border-color: var(--dp-line); color: var(--color-text); font-size: 14px; }
:is(#bento-2, #bento-3, #bento-4) .btn:hover { border-color: var(--color-text); }
#voordelen {
    margin: 0;
    padding: 28px 0;
    background: none;
    box-shadow: none;
    clip-path: none;
    border-bottom: 1px solid var(--dp-line);
}
#voordelen :is(.grid, [class*="grid"]) { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
#voordelen :is(.grid, [class*="grid"]) > * { position: relative; display: block; min-width: 0; padding: 0 0 0 36px; }
#voordelen :is(.grid, [class*="grid"]) > *::before { position: absolute; left: 0; top: 6px; width: 22px; height: 22px; margin: 0; background-color: var(--color-text); }
#voordelen :is(h3, .h3, h4, .h4) { margin: 0; color: var(--color-text); font-size: 14px; font-weight: 600; letter-spacing: 0; text-transform: none; }
#voordelen p { margin: 0; color: var(--color-muted); font-size: 13px; line-height: 1.4; }
#categories { margin-top: 56px; padding-block: 0; }
#categories .section__inner { width: 100%; max-width: none; }
#categories .h2 { margin-bottom: 18px; }
#categories .tiles { grid-template-columns: repeat(8, minmax(0, 1fr)); gap: 12px; width: 100%; }
#categories .tile { min-width: 0; }
#categories .tile__link,
#categories .tile__link:has(img) {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    aspect-ratio: auto;
    gap: 12px;
    min-height: 128px;
    padding: 18px 16px;
    text-align: left;
    border-radius: 16px;
    background: var(--color-surface);
    box-shadow: none;
    color: var(--color-text);
    transition: background-color .15s ease;
}
#categories .tile__link:hover { transform: none; background: var(--dp-hover); box-shadow: none; color: var(--color-accent); }
#categories .tile__link::before {
    content: "";
    width: 24px;
    height: 24px;
    background-color: currentColor;
    -webkit-mask: var(--icon-grid) center / contain no-repeat;
            mask: var(--icon-grid) center / contain no-repeat;
}
#categories #tile-persoonlijke-verzorging .tile__link::before { -webkit-mask-image: var(--dp-i-drop); mask-image: var(--dp-i-drop); }
#categories #tile-huishouden .tile__link::before { -webkit-mask-image: var(--icon-house); mask-image: var(--icon-house); }
#categories #tile-koken-tafelen .tile__link::before { -webkit-mask-image: var(--icon-pot); mask-image: var(--icon-pot); }
#categories #tile-elektronica .tile__link::before { -webkit-mask-image: var(--dp-i-phones); mask-image: var(--dp-i-phones); }
#categories #tile-tuin .tile__link::before { -webkit-mask-image: var(--icon-leaf); mask-image: var(--icon-leaf); }
#categories #tile-klussen .tile__link::before { -webkit-mask-image: var(--icon-hammer); mask-image: var(--icon-hammer); }
#categories #tile-speelgoed .tile__link::before { -webkit-mask-image: var(--icon-blocks); mask-image: var(--icon-blocks); }
#categories .tile__label { margin: 0; color: inherit; font-size: 14px; font-weight: 600; line-height: 1.25; }
#populair-verzorging, #populair-trimmen { margin-top: 64px; padding-block: 0; }
#blog { margin-top: 64px; padding-block: 0; }
#blog .h2 { margin-bottom: 18px; font-weight: 700; }
#blog .grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
#blog .banner__link {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 16px;
    min-height: 150px;
    padding: 24px;
    border-radius: 16px;
    background: var(--color-surface);
    color: var(--color-text);
    text-decoration: none;
}
#blog .banner__link:hover { background: var(--dp-hover); }
#blog .banner__link::after {
    content: "";
    width: 20px;
    height: 20px;
    background-color: currentColor;
    -webkit-mask: var(--dp-i-arrow) center / contain no-repeat;
            mask: var(--dp-i-arrow) center / contain no-repeat;
}
#blog .banner__heading { margin: 0; font-size: 18px; font-weight: 700; line-height: 1.25; letter-spacing: -.01em; }
#afsluiter { margin-top: 64px; padding-block: 0; }
#afsluiter .section__inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    column-gap: 24px;
    align-items: center;
    padding: 44px 48px;
    border-radius: 20px;
    background: var(--color-surface);
    color: var(--color-text);
    text-align: left;
}
#afsluiter :is(h2, .h2) { grid-column: 1; margin: 0; font-weight: 700; color: var(--color-text); }
#afsluiter p.prose { grid-column: 1; margin: 6px 0 0; color: var(--color-muted); opacity: 1; }
#afsluiter .btn-row { grid-column: 2; grid-row: 1 / span 2; justify-content: flex-end; margin: 0; }
#afsluiter .btn--solid { background: var(--color-accent); border-color: var(--color-accent); color: var(--color-accent-contrast); }
#afsluiter .btn--outline { background: var(--color-bg); border-color: var(--color-text); color: var(--color-text); }
#terugroep-strip { margin-top: 16px; padding-block: 0; }
#terugroep-strip .section__inner { max-width: none; padding: 0; }
#terugroep-strip :is(.prose, p) { margin: 0; max-width: none; }
#terugroep-strip a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 20px;
    border: 1px solid var(--dp-line);
    border-radius: var(--dp-r);
    color: var(--color-text);
    font-size: 14px;
    text-decoration: none;
}
#terugroep-strip a:hover { border-color: var(--color-text); }
:is(footer, div, section):has(> #footer-contact):has(> #footer-categorieen) {
    --footer-ground: var(--color-bg);
    margin-top: 72px;
    padding-top: 48px;
    border-top: 1px solid var(--dp-line);
    box-shadow: none;
    clip-path: none;
    max-width: none;
    padding-inline: var(--side);
}
#footer-social { grid-column: 1 / 3; padding: 0; background: none; }
#footer-social .section__inner { max-width: none; }
footer.page-band .section--legal { grid-column: 3 / -1; justify-self: end; align-self: end; padding: 0; background: none; font-size: 13px; }
footer.page-band .section--legal a { color: var(--color-muted); }
:is(#footer-contact, #footer-categorieen, #footer-service, #footer-betalen) :is(h2, h3, h4, .h2, .h3, .h4) { font-size: 13px; font-weight: 600; letter-spacing: 0; text-transform: none; }
#footer-betalen :is(h2, h3, h4, .h2, .h3, .h4)::before { display: none; }
main:has(.listing) { width: min(var(--container, 1400px), calc(100% - 32px)); max-width: none; padding: 20px 0 64px; }
main:has(.listing) h1 { font-size: 40px; font-weight: 700; letter-spacing: -.025em; line-height: 1.1; }
.listing__count { margin: 6px 0 20px; }
.listing { display: grid; grid-template-columns: 264px minmax(0, 1fr); grid-template-rows: auto auto 1fr; gap: 0 48px; }
.listing > .filters { grid-column: 1; grid-row: 1 / span 3; }
.listing > .filters__chips { grid-column: 2; grid-row: 1; margin: 0 0 8px; }
.listing > .filters__sort { grid-column: 2; grid-row: 2; justify-self: end; margin: 0 0 12px; }
.listing > .listing__results { grid-column: 2; grid-row: 3; }
.filters__sort-apply { display: none; }
.filters__group[data-filter-group="maat"] { display: none; }
.filters__options li:has(a[href*="cat=general"], a[href*="cat=uncategorized"], a[href*="cat=bilinmiyor"]) { display: none; }
.filters__sort-select { flex: 0 1 200px; min-height: 44px; border: 0; background-color: transparent; font-weight: 500; }
.listing__results .cards {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 36px 24px;
    margin: 0;
    padding: 0;
    list-style: none;
}
.listing__results :is(.price__now, .product-card__price) { color: var(--color-text); }
.listing__results :is(.card--product, .product-card) :is(img, .card__shade) { padding: 0; background: var(--color-bg); }
.listing__results :is(.card--product, .product-card) a:hover :is(img, .card__shade) { transform: none; box-shadow: var(--dp-shadow); }
.listing__results :is(.card--product, .product-card) :is(h2, h3, .product-card__name) { font-size: 14px; font-weight: 400; }
.pagination__number[aria-current="page"] { background: var(--color-text); color: var(--color-bg); }
.filters__body { display: flex !important; flex-direction: column; }
.filters__group[data-filter-group="stok"] { order: 9; }
.filters__group[data-filter-group="stok"] .filters__group-title { display: none; }
.filters__group[data-filter-group="stok"] .filters__count { display: none; }
.filters__group[data-filter-group="stok"] .filters__option { justify-content: space-between; font-weight: 600; margin: 0; padding-inline: 0; }
.filters__group[data-filter-group="stok"] .filters__option:hover { background: none; color: var(--color-text); }
.filters__group[data-filter-group="stok"] .filters__option-label { flex: 1 1 auto; justify-content: space-between; flex-direction: row-reverse; }
.filters__group[data-filter-group="stok"] .filters__option-label::before {
    width: 40px;
    height: 24px;
    margin: 0;
    border: 0;
    border-radius: 12px;
    background: #c9c9cc radial-gradient(circle at 12px 12px, #fff 9px, transparent 9.5px) no-repeat;
}
.filters__group[data-filter-group="stok"] .filters__option--on .filters__option-label::before {
    background: var(--color-accent) radial-gradient(circle at 28px 12px, #fff 9px, transparent 9.5px) no-repeat;
}
.filters__group[data-filter-group="cat"]:not(:has(.filters__option--on)) .filters__options { max-height: none; }
.filters__group-title { font-size: 14px; font-weight: 600; letter-spacing: 0; text-transform: none; }
.filters__group-title::before { display: none !important; }
.filters__price-field { min-height: 44px; border: 1px solid var(--dp-line); border-radius: 8px; background: var(--color-bg); }
.filters__price-apply { background: var(--color-bg); border: 1px solid var(--color-text); color: var(--color-text); }
.filters__price-apply:hover { background: var(--color-text); color: var(--color-bg); }
@media (min-width: 60em) {
    .listing { padding-top: 64px; }
    .filters { padding: 0; border-radius: 0; background: none; box-shadow: none; }
    .filters > summary { display: none; }
    .filters__group + .filters__group { margin-top: 0; padding-top: 18px; padding-bottom: 18px; border-top: 1px solid var(--dp-line); }
    .filters__group[data-filter-group="cat"] .filters__options { padding: 2px 0 12px; border-bottom: 0; }
    .filters__group[data-filter-group="cat"] .filters__option { min-height: 40px; padding: 0 12px 0 14px; font-size: 14px; font-weight: 500; border-color: var(--dp-line); }
    .filters__group[data-filter-group="cat"] .filters__option:hover { border-color: var(--color-text); background: var(--color-bg); color: var(--color-text); }
    .filters__group[data-filter-group="cat"] .filters__option--on { border-color: var(--color-text); background: var(--color-text); color: var(--color-bg); }
    .filters__group[data-filter-group="cat"] .filters__count { background: none; color: var(--color-muted); padding: 0; min-width: 0; }
}
@media (max-width: 59.99em) {
    .listing { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); grid-template-rows: auto auto auto; gap: 0; }
    .listing > .filters__chips { grid-column: 1 / -1; grid-row: 2; order: 2; }
    .listing > .filters { position: sticky; top: 0; z-index: 30; grid-column: 1; grid-row: 1; background: var(--color-bg); border-block: 1px solid var(--dp-line); }
    .listing > .filters__sort { position: sticky; top: 0; z-index: 30; grid-column: 2; grid-row: 1; justify-self: stretch; margin: 0; padding: 0 8px; background: var(--color-bg); border-block: 1px solid var(--dp-line); border-inline-start: 1px solid var(--dp-line); }
    .filters__sort-label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
    .filters__sort-select { flex: 1 1 auto; text-align: center; font-size: 14px; }
    .filters > summary { display: flex; justify-content: center; min-height: 44px; border: 0; border-radius: 0; font-size: 14px; font-weight: 600; }
    .filters > summary .filters__title::before { background-color: currentColor; width: 16px; height: 16px; }
    .listing > .filters[open] { z-index: 60; }
    .filters[open]::before { content: ""; position: fixed; inset: 0; z-index: 40; background: rgba(27, 27, 31, .5); }
    .filters[open] > summary { position: fixed; inset: 72px 0 auto; z-index: 42; justify-content: flex-start; min-height: 60px; padding: 0 56px 0 16px; border-radius: 20px 20px 0 0; border-bottom: 1px solid var(--dp-line); background: var(--color-bg); }
    .filters[open] > summary::after { content: "×"; position: absolute; right: 18px; top: 12px; width: auto; height: auto; margin: 0; border: 0; transform: none; font-size: 26px; line-height: 1.3; font-weight: 400; }
    .filters[open] > .filters__body { position: fixed; inset: 132px 0 0; z-index: 41; margin: 0; padding: 8px 16px calc(96px + env(safe-area-inset-bottom, 0px)); overflow-y: auto; background: var(--color-bg); }
    .filters__group { padding-block: 14px; border-bottom: 1px solid var(--dp-line); }
    .listing > .listing__results { grid-column: 1 / -1; grid-row: 3; padding-top: 16px; }
    .listing__results .cards { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 12px; }
    main:has(.listing) h1 { font-size: 24px; }
    .listing__count { margin: 4px 0 12px; }
}
.pd { width: min(var(--container, 1400px), calc(100% - 32px)); }
.pd-main { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: 56px; }
.pd-gallery { display: block; min-width: 0; }
.pd-stage { position: relative; }
.pd-stage__track {
    display: flex;
    height: 560px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    border: 1px solid var(--dp-line);
    border-radius: 16px;
    background: var(--color-bg);
}
.pd-stage__track::-webkit-scrollbar { display: none; }
.pd-slide { flex: 0 0 100%; scroll-snap-align: center; min-width: 0; padding: 32px; }
.pd-slide :is(a, picture) { display: block; width: 100%; height: 100%; }
.pd-slide img { width: 100%; height: 100%; max-width: none; object-fit: contain; }
.pd-stage .slideshow__arrows { inset-inline: 16px; }
.pd-count { position: absolute; left: 16px; bottom: 14px; margin: 0; color: var(--color-muted); font-size: 13px; }
.pd-thumbs { display: flex; gap: 10px; margin-top: 12px; overflow-x: auto; scrollbar-width: thin; }
.pd-thumb {
    flex: 0 0 92px;
    height: 92px;
    padding: 8px;
    border: 1px solid var(--dp-line);
    border-radius: 10px;
    background: var(--color-bg);
    cursor: pointer;
}
.pd-thumb:hover { border-color: var(--color-text); }
.pd-thumb.is-on { border: 2px solid var(--color-accent); padding: 7px; }
.pd-thumb :is(picture, img) { display: block; width: 100%; height: 100%; object-fit: contain; }
.pd-gallery__empty { height: 560px; border: 1px solid var(--dp-line); border-radius: 16px; background: var(--color-bg); color: var(--color-muted); }
.pd-buy { gap: 12px; }
.pd-title { font-size: 30px; font-weight: 700; line-height: 1.2; letter-spacing: -.02em; }
.pd-price .price__now { color: var(--color-text); font-size: 32px; font-weight: 700; letter-spacing: -.02em; }
.pd-stock--in { color: var(--dp-green); }
.add-to-cart input[type="number"] { width: 124px; min-height: 52px; border-radius: 999px; text-align: center; }
.add-to-cart button { flex: 1 1 auto; min-height: 52px; background: var(--color-accent); }
.add-to-cart button:hover { background: var(--dp-accent-dark, #7a2350); transform: none; }
.add-to-cart button::before { display: none; }
.pd-usps { padding: 16px 0 0; border: 0; border-top: 1px solid var(--dp-line); border-radius: 0; background: none; font-size: 14px; }
.pd-usps li::before { background-color: var(--color-text); }
.pd-cats { display: none; }
.pd-info { max-width: none; margin-top: 64px; padding-top: 40px; border-top: 1px solid var(--dp-line); }
.pd-info h2 { font-size: 24px; font-weight: 700; letter-spacing: -.02em; }
.pd-prose { max-width: 820px; color: var(--color-text); white-space: pre-line; }
.pd-related { margin-top: 64px; }
.pd-recent { margin-top: 64px; }
.pd-recent__img { background: var(--color-bg) !important; }
@media (max-width: 899px) {
    .pd-main { grid-template-columns: minmax(0, 1fr); gap: 24px; }
    .pd-stage__track { height: 340px; }
    .pd-slide { padding: 16px; }
    .pd-buy { position: static; }
    .pd-title { font-size: 24px; }
}
@media (max-width: 1100px) {
    #categories .tiles { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    main:has(#bento-1) > #bento-1 { grid-column: 1 / -1; grid-row: auto; }
    main:has(#bento-1) > #bento-2 { grid-column: 1 / -1; margin-top: 16px; }
    main:has(#bento-1) > :is(#bento-3, #bento-4) { grid-column: span 6; }
    #voordelen :is(.grid, [class*="grid"]) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 699px) {
    #top-strip { display: none; }
    header.page-band #top-row .rich-nav__narrow { display: none !important; }
    header.page-band #top-row .rich-nav__brand { justify-content: flex-start; padding-inline-end: 56px; }
    header.page-band #top-row .rich-nav__brand img { height: 40px; }
    header.page-band #top-row .rich-nav__search input { min-height: 46px; padding: 0 18px 0 46px; border-color: transparent; background-color: var(--color-surface); }
    header.page-band #basket { top: 12px; right: 12px; }
    #basket .nav-bar__basket::after { display: none; }
    #category-bar .mega-nav__tree { padding-inline: 0; }
    #category-bar .mega-nav__disclosure[open] > summary::after {
        content: "×";
        display: block;
        position: absolute;
        right: 16px;
        top: 10px;
        width: auto;
        height: auto;
        margin: 0;
        border: 0;
        transform: none;
        font-size: 28px;
        font-weight: 400;
        line-height: 1.2;
    }
    header.page-band #category-bar { display: block !important; margin-inline: -12px; padding: 0 16px; }
    #category-bar .mega-nav__level-1 > .mega-nav__item:not(:has(details)) { display: none; }
    #category-bar .mega-nav__disclosure[open] > summary { position: fixed; inset: 0 0 auto; z-index: 81; min-height: 56px; padding: 0 16px; border-bottom: 1px solid var(--dp-line); background: var(--color-bg); }
    #category-bar .mega-nav__panel { position: fixed; inset: 56px 0 0; z-index: 80; padding: 0 0 80px; overflow-y: auto; background: var(--color-bg); }
    #category-bar .mega-nav__all { display: none; }
    #category-bar .mega-nav__column .mega-nav__column-head { flex-direction: row; justify-content: flex-start; gap: 0; width: 100%; min-height: 48px; padding: 0 16px; border-bottom: 1px solid var(--dp-line); border-radius: 0; font-size: 15px; font-weight: 500; }
    #category-bar .mega-nav__column .mega-nav__column-head::before,
    #category-bar .mega-nav__column .mega-nav__column-head::after { display: none; }
    #category-bar .mega-nav__level-3 { display: none; }
    main:has(#bento-1) { width: calc(100% - 24px); }
    main:has(#bento-1) > :is(#bento-3, #bento-4) { grid-column: 1 / -1; }
    #bento-1 .slideshow__slide { display: flex; flex-direction: column; gap: 16px; min-height: 0 !important; padding: 24px; }
    #bento-1 .slideshow__body { order: 1; justify-content: flex-start; max-width: none; }
    #bento-1 :is(h1, h2, h3, .h1, .h2) { font-size: 36px; }
    #bento-1 .lede { max-width: none; }
    #bento-1 .slideshow__media { position: static; order: 2; width: 100%; height: 210px; }
    #bento-2 .slideshow__slide { min-height: 200px !important; padding: 20px; }
    #bento-2 .slideshow__body { max-width: 62%; }
    #bento-2 :is(h1, h2, h3, .h1, .h2) { font-size: 22px; }
    #bento-2 .lede { font-size: 13px; }
    #bento-2 .slideshow__media { width: 120px; height: 120px; top: auto; bottom: 16px; right: 12px; }
    :is(#bento-3, #bento-4) .slideshow__slide { min-height: 0 !important; padding: 20px; }
    #categories .tiles { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    #categories .tile__link, #categories .tile__link:has(img) { min-height: 104px; }
    #voordelen :is(.grid, [class*="grid"]), #blog .grid { grid-template-columns: minmax(0, 1fr); }
    #afsluiter .section__inner { grid-template-columns: minmax(0, 1fr); padding: 24px; }
    #afsluiter .btn-row { grid-column: 1; grid-row: auto; justify-content: flex-start; margin-top: 16px; }
    .section--carousel .product-carousel__cell { width: 44%; min-width: 0; }
    :is(footer, div, section):has(> #footer-contact):has(> #footer-categorieen) { padding-inline: 16px; }
    #footer-social, footer.page-band .section--legal { grid-column: 1 / -1; justify-self: start; }
}
:root { --dp-tint: var(--color-surface); --dp-tint-2: var(--color-surface); }
#info-kop { background: var(--color-surface); }
#info-kop :is(h2, .h2)::before { color: var(--color-muted); font-weight: 600; letter-spacing: .1em; }
#info-nav { background: var(--color-surface); box-shadow: none; }
#info-nav li a:hover { color: var(--color-text); }
main#content .account > p a { color: var(--color-accent); text-underline-offset: 3px; }
main#content .account form .account__field { display: block; }
main#content .account form .account__input { width: 100%; }
.search-form { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 12px; }
.search-form__label { flex: 0 0 100%; color: var(--color-muted); font-size: 14px; }
.search-form input {
    flex: 1 1 200px;
    min-width: 0;
    min-height: 48px;
    padding: 0 20px;
    border: 1px solid transparent;
    border-radius: 999px;
    background: var(--color-surface);
}
.search-form input:focus { border-color: var(--color-muted); background: var(--color-bg); }
.search-form .button { min-height: 48px; padding: 0 24px; border: 0; border-radius: 999px; }
@media (max-width: 699px) {
    header.page-band #top-row .rich-nav__search input {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7' stroke='%23888'/%3E%3Cpath d='M20 20l-4-4' stroke='%23888'/%3E%3C/svg%3E");
        background-repeat: no-repeat;
        background-position: 16px center;
        background-size: 18px;
    }
}
@media (max-width: 699px) {
    header.page-band #category-bar { margin-inline: -16px; }
    .listing { column-gap: 8px; }
    .listing > :is(.filters, .filters__sort) { border: 1px solid var(--dp-line); border-radius: 999px; }
    .listing > .filters__sort { padding: 0 4px; }
    .listing > .filters:not([open]) > summary { background: transparent; }
    .pd-crumbs { flex-wrap: nowrap; white-space: nowrap; overflow: hidden; }
    .pd-crumbs > :last-child { min-width: 0; overflow: hidden; text-overflow: ellipsis; }
}
.filters__sort { flex-wrap: nowrap; }
:is(#blog-tekst, #melding-tekst) .section__inner { max-width: 820px; margin-inline: auto; }
.filters__sort-label { white-space: nowrap; }
@media (min-width: 60em) { .filters__sort-select { flex: 0 0 180px; } }
@media (max-width: 699px) {
    header.page-band #category-bar .mega-nav__disclosure[open] > summary { background: var(--color-bg); color: var(--color-text); }
    #category-bar .mega-nav__column .mega-nav__column-head :is(picture, img) { display: none; }
}
.listing__more { display: flex; flex-direction: column; align-items: center; gap: 14px; margin-top: 40px; }
.listing__shown { margin: 0; color: var(--color-muted); font-size: 14px; }
.listing__results a.listing__more-link {
    display: inline-flex;
    align-items: center;
    min-height: 48px;
    padding: 0 32px;
    border: 1px solid var(--color-text);
    border-radius: 999px;
    background: var(--color-bg);
    color: var(--color-text);
    font-weight: 600;
    text-decoration: none;
}
.listing__results a.listing__more-link:hover { background: var(--color-text); color: var(--color-bg); }
html:lang(de) #top-row .rich-nav__wide a[href$="/de/"] {
    background: var(--color-accent);
    color: var(--color-accent-contrast);
}
:is(.product-card, .card--product) { position: relative; }
.product-card__add { position: absolute; right: 0; bottom: 0; margin: 0; }
.product-card__add .product-card__add-button {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    min-width: 0;
    height: 38px;
    min-height: 0;
    padding: 0;
    border: 1px solid var(--dp-line);
    border-radius: 50%;
    background: var(--color-bg);
    color: var(--color-text);
    font-size: 20px;
    font-weight: 400;
    line-height: 1;
    cursor: pointer;
    transition: background-color .15s ease, color .15s ease, border-color .15s ease;
}
.product-card__add .product-card__add-button:hover { border-color: var(--color-accent); background: var(--color-accent); color: var(--color-accent-contrast); }
:is(.product-card__price, .card--product .price, .card--product .note) { padding-inline-end: 46px; }
.filters__subcats, .filters__show { display: none; }
@media (max-width: 59.99em) {
    .filters__subcats { display: block; margin: 0 -16px 12px; }
    .filters__subcat-list { display: flex; flex-wrap: nowrap; gap: 8px; margin: 0; padding: 2px 16px 6px; overflow-x: auto; list-style: none; scrollbar-width: none; }
    .filters__subcat-list::-webkit-scrollbar { display: none; }
    .filters__subcat-list li { flex: none; }
    a.filters__subcat {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        min-height: 38px;
        padding: 0 14px;
        border: 1px solid var(--dp-line);
        border-radius: 999px;
        background: var(--color-bg);
        color: var(--color-text);
        font-size: 14px;
        font-weight: 500;
        text-decoration: none;
        white-space: nowrap;
    }
    a.filters__subcat .filters__count { min-width: 0; padding: 0; background: none; color: var(--color-muted); font-size: 12px; }
    a.filters__subcat--on { border-color: var(--color-text); background: var(--color-text); color: var(--color-bg); }
    a.filters__subcat--on :is(.filters__count, .filters__chip-label) { color: inherit; }
    .filters[open] .filters__show {
        display: flex;
        position: fixed;
        left: 16px;
        right: 16px;
        bottom: calc(74px + env(safe-area-inset-bottom, 0px));
        z-index: 43;
        align-items: center;
        justify-content: center;
        min-height: 48px;
        border-radius: 999px;
        background: var(--color-accent);
        color: var(--color-accent-contrast);
        font-size: 15px;
        font-weight: 600;
        text-decoration: none;
    }
    .filters[open] > .filters__body { padding-bottom: calc(150px + env(safe-area-inset-bottom, 0px)); }
}
:root {
    --dp-i-check: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='white' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 8.5l3 3 6-7'/%3E%3C/svg%3E");
}
@media (min-width: 60em) {
    .listing { padding-top: 8px; grid-template-columns: 272px minmax(0, 1fr); grid-template-rows: auto 1fr; gap: 0 40px; }
    .listing > .filters {
        grid-column: 1;
        grid-row: 1 / span 2;
        align-self: start;
        padding: 0 20px 6px;
        border: 1px solid var(--dp-line);
        border-radius: 16px;
        background: var(--color-bg);
    }
    .listing > .filters > summary {
        display: flex;
        align-items: center;
        min-height: 56px;
        padding: 0;
        border: 0;
        border-bottom: 1px solid var(--dp-line);
        background: none;
        pointer-events: none;
        list-style: none;
    }
    .listing > .filters {
        position: sticky;
        top: 16px;
        max-height: calc(100vh - 32px);
        overflow-y: auto;
        overscroll-behavior: contain;
        scrollbar-width: thin;
        scrollbar-color: var(--dp-line) transparent;
    }
    .listing > .filters > summary { position: sticky; top: 0; z-index: 2; gap: 8px; background: var(--color-bg); }
    html:has(.ermecms-consent-bar) .listing > .filters { top: 84px; max-height: calc(100vh - 100px); }
    .listing .filters__body > .filters__clear { position: absolute; z-index: 3; top: 18px; right: 20px; margin: 0; color: var(--color-muted); font-size: 13px; text-underline-offset: 3px; }
    .listing .filters__body > .filters__clear:hover { color: var(--color-text); }
    .listing > .filters > summary::-webkit-details-marker { display: none; }
    .listing > .filters > summary::after { display: none; }
    .filters__title { font-size: 16px; font-weight: 700; color: var(--color-text); }
    .filters__title::before { display: none; }
    .listing > .filters__sort { grid-column: 2; grid-row: 1; justify-self: end; margin: 0 0 16px; }
    .listing > .listing__results { grid-column: 2; grid-row: 2; }
    .listing__results > .filters__chips { margin: -60px 0 16px; min-height: 44px; align-items: center; max-width: calc(100% - 300px); }
    .listing .filters__group,
    .listing .filters__group + .filters__group,
    .listing .filters__group[data-filter-group="cat"] { position: static; inset: auto; width: auto; margin: 0; padding: 16px 0; border: 0; border-top: 1px solid var(--dp-line); }
    .listing .filters__group[data-filter-group="cat"] .filters__group-title { position: static; width: auto; height: auto; margin: 0 0 10px; clip: auto; clip-path: none; overflow: visible; white-space: normal; }
    .listing .filters__body > .filters__group[data-filter-group="stok"] { order: 9; }
    .listing .filters__body > div.filters__group:first-of-type { border-top: 0; }
    .filters__group-title { margin: 0 0 10px; font-size: 14px; font-weight: 700; color: var(--color-text); }
    .listing__results > .filters__chips li:has(a[href*="stok=0"]) { display: none; }
    .listing .filters__body > .filters__group[data-filter-group="stok"] { padding-block: 14px; }
    .filters__group[data-filter-group="stok"] .filters__option { min-height: 24px; padding: 0; color: var(--color-text); font-size: 14px; font-weight: 600; }
    .filters__group[data-filter-group="stok"] .filters__option--on { background: none; color: var(--color-text); }
    .filters__group[data-filter-group="cat"] .filters__options {
        display: block;
        max-height: 324px;
        margin: 0 -8px;
        padding: 0 8px 0 0;
        overflow-y: auto;
        scrollbar-width: thin;
        scrollbar-color: var(--dp-line) transparent;
        border-bottom: 0;
        -webkit-mask-image: none;
                mask-image: none;
    }
    .listing .filters__group[data-filter-group="cat"]:not(:has(.filters__option--on)) .filters__options { max-height: 324px; }
    .filters__group[data-filter-group="cat"] .filters__options li { flex: none; margin: 0; }
    .filters__group[data-filter-group="cat"] .filters__option {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
        min-height: 36px;
        padding: 0 8px;
        border: 0;
        border-radius: 8px;
        background: none;
        color: var(--color-text);
        font-size: 14px;
        font-weight: 400;
        white-space: normal;
    }
    .filters__group[data-filter-group="cat"] .filters__option:hover { background: var(--color-surface); color: var(--color-text); }
    .filters__group[data-filter-group="cat"] .filters__option--on { background: none; color: var(--color-text); font-weight: 600; }
    .filters__group[data-filter-group="cat"] .filters__option-label { display: flex; align-items: center; gap: 10px; min-width: 0; }
    .filters__group[data-filter-group="cat"] .filters__option-label::before {
        content: "";
        display: block;
        flex: 0 0 18px;
        width: 18px;
        height: 18px;
        margin: 0;
        border: 1.5px solid #c4c4c9;
        border-radius: 5px;
        background: var(--color-bg);
    }
    .filters__group[data-filter-group="cat"] .filters__option:hover .filters__option-label::before { border-color: var(--color-text); }
    .filters__group[data-filter-group="cat"] .filters__option--on .filters__option-label::before {
        border-color: var(--color-accent);
        background: var(--color-accent) var(--dp-i-check) center / 14px no-repeat;
    }
    .filters__group[data-filter-group="cat"] .filters__count { flex: none; background: none; color: var(--color-muted); font-size: 12px; font-weight: 400; }
    .filters__price { display: grid; grid-template-columns: 1fr 1fr; gap: 4px 10px; }
    .filters__price-label { grid-row: 1; font-size: 12px; color: var(--color-muted); }
    .filters__price-field {
        grid-row: 2;
        width: 100%;
        min-height: 42px;
        padding: 0 12px;
        border: 1px solid var(--dp-line);
        border-radius: 10px;
        font-size: 14px;
        appearance: textfield;
        -moz-appearance: textfield;
    }
    .filters__price-field::-webkit-outer-spin-button,
    .filters__price-field::-webkit-inner-spin-button { margin: 0; -webkit-appearance: none; }
    .filters__price-field:hover { border-color: #c4c4c9; }
    .filters__price-field:focus { border-color: var(--color-text); outline: 0; }
    .filters__price-basis { grid-column: 1 / -1; grid-row: 3; margin-top: 2px; font-size: 12px; color: var(--color-muted); }
    .filters__price-apply {
        grid-column: 1 / -1;
        grid-row: 4;
        width: 100%;
        min-height: 40px;
        margin-top: 10px;
        padding: 0 16px;
        border: 1px solid var(--color-text);
        font-size: 14px;
    }
}
#category-bar .mega-nav__level-3 a[href$="/haar"] { --dp-foto: url("/media/01a18cee-6bd8-7069-b12a-ada139f76901/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/scheren"] { --dp-foto: url("/media/01a17834-c53a-721f-96e3-84cfc7c0d353/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/lichaamsverzorging"] { --dp-foto: url("/media/01a18cee-424c-7226-97ea-a8c90e6e7a18/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/tand-mondverzorging"] { --dp-foto: url("/media/01a17828-2b2b-7160-b9c0-beaece750d69/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/zonbescherming"] { --dp-foto: url("/media/01a17835-2b82-72ff-a1bf-3a0879fd30d8/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/hand-voetverzorging"] { --dp-foto: url("/media/01a17827-38e7-71e0-98b2-9132de2aecde/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/geschenksets"] { --dp-foto: url("/media/01a1782c-396d-72f7-abaf-31a8c7653bff/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/gezichtsverzorging"] { --dp-foto: url("/media/01a18cee-1a02-719d-bac8-501cfaeb1a91/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/gezichtsreiniging"] { --dp-foto: url("/media/01a17832-142d-7180-88a5-441851c41947/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/schoonmaken"] { --dp-foto: url("/media/01a17832-2545-714e-830b-1462dade7ca6/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/opbergers"] { --dp-foto: url("/media/01a17819-fdb2-73d4-a59a-365e6a663ced/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/voedsel-bewaren"] { --dp-foto: url("/media/01a17816-a37b-70a3-8cfd-9b2048118d51/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/stofzuigen"] { --dp-foto: url("/media/01a177ea-31d5-7082-99b1-25ffa6d933a5/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/strijken"] { --dp-foto: url("/media/01a17835-3aa0-72bc-a204-839589623e06/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/prullenbakken"] { --dp-foto: url("/media/01a1780e-4f04-710f-8797-1165c4ac6cf5/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/vaatwassen"] { --dp-foto: url("/media/01a17826-9cd4-725e-9b73-d8fbed5571e6/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/wassen"] { --dp-foto: url("/media/01a17824-c0d0-705f-883b-e3ae13089235/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/opbergen"] { --dp-foto: url("/media/01a17712-12b1-73f1-a707-2859c60216a1/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/pannen"] { --dp-foto: url("/media/01a1782a-d542-714b-a9fb-2ac6599cc06c/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/keukengerei"] { --dp-foto: url("/media/01a17834-96c5-7192-91b5-abe26cefc755/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/bakspullen"] { --dp-foto: url("/media/01a17809-4dea-71cc-a67d-dcd09629ba87/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/keukenmessen"] { --dp-foto: url("/media/01a17835-7486-7055-918f-537e07292432/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/wegen-meten"] { --dp-foto: url("/media/01a1780b-6df7-7023-a476-f272a244a637/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/waterfilters-drinkflessen"] { --dp-foto: url("/media/01a17804-5596-724b-bc37-21c0d23dab77/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/bestek"] { --dp-foto: url("/media/01a17824-0c51-72de-b0ef-12e5f39378b3/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/servies"] { --dp-foto: url("/media/01a17834-88e6-72c6-b525-ed70945d4a3e/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/barbecue-accessoires"] { --dp-foto: url("/media/01a17803-20d2-703e-ac48-64aef8c59158/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/keukenapparaten"] { --dp-foto: url("/media/01a18cee-3941-71dd-bf1a-36f827f20e6d/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/kabels-converters"] { --dp-foto: url("/media/01a17832-139c-717b-b480-38310a7411cd/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/audio-hifi"] { --dp-foto: url("/media/01a1782d-1c36-7279-a732-17d2c1db14e2/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/batterijen-en-opladers"] { --dp-foto: url("/media/01a1782f-7c16-72f9-9c42-04edf06faa6f/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/televisies-accessoires"] { --dp-foto: url("/media/01a17810-f92a-706d-81c6-12f61eeca65a/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/telefonie-accessoires"] { --dp-foto: url("/media/01a1781f-7739-711f-b61e-151d44a425cb/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/luchtbehandeling-klimaatbeheersing"] { --dp-foto: url("/media/01a17827-2808-7146-bd10-eb33f1866161/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/cameras-accessoires"] { --dp-foto: url("/media/01a177ed-1cc2-73a8-abb9-94fa2eba35db/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/tablets-accessoires"] { --dp-foto: url("/media/01a17821-4c4d-71c9-b350-c8940988ee7f/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/bewatering"] { --dp-foto: url("/media/01a177eb-4a68-725a-908f-480a6997e3a1/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/tuingereedschap"] { --dp-foto: url("/media/01a17824-03cf-70b7-8b1d-efd200618f35/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/buitenverlichting"] { --dp-foto: url("/media/01a177f3-0efb-71c9-9c1b-9b1562f78c82/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/tuinmeubelen"] { --dp-foto: url("/media/01a1781e-7a30-70c6-a010-a380c0ebb6dd/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/tuininrichting"] { --dp-foto: url("/media/01a17816-2338-7304-8a9b-c2997c91b761/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/potterie"] { --dp-foto: url("/media/01a17813-44d0-711c-87c7-5d742ad4862f/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/tuinaanleg"] { --dp-foto: url("/media/01a177cc-0723-7259-9259-9fd18aa5d9af/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/grond"] { --dp-foto: url("/media/01a17832-0ec8-7084-8487-925cc06a5383/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/tuinverwarmingen"] { --dp-foto: url("/media/01a177e5-a1d7-7214-a627-a62ff0325bb2/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/handgereedschap"] { --dp-foto: url("/media/01a17833-2831-7316-8bda-6a54d73648d3/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/elektrisch-gereedschap"] { --dp-foto: url("/media/01a17821-2b1c-7066-a2ef-7a6dbe0d6e6c/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/elektra"] { --dp-foto: url("/media/01a1782c-954a-7325-a6b2-038b2c5cebda/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/werkkleding-bescherming"] { --dp-foto: url("/media/01a17832-1d77-73bd-bc7a-409fe822b547/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/bouwmateriaal"] { --dp-foto: url("/media/01a17811-eb3e-70fb-b791-0c8c035ac321/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/inbraakbeveiliging"] { --dp-foto: url("/media/01a1782a-441e-707d-bbca-a56228f41bae/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/ijzerwaren"] { --dp-foto: url("/media/01a17806-ac71-70e7-8c6e-80e1ec92a5a7/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/verfspullen"] { --dp-foto: url("/media/01a17806-3190-72af-87b1-99d10883acfb/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/deuren"] { --dp-foto: url("/media/01a1782d-6a7f-71fc-a536-d35407fb419b/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/bouwen-constructie"] { --dp-foto: url("/media/01a1780e-339b-7198-b610-a3ae681cfbeb/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/puzzels"] { --dp-foto: url("/media/01a18cee-1dfa-70a0-9111-56372e9ec8e3/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/knutselen-hobby"] { --dp-foto: url("/media/01a17811-2218-7223-be4a-01b972e67808/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/buitenspeelgoed"] { --dp-foto: url("/media/01a17832-0a8b-7344-9315-ad23bbdca760/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/voertuigen"] { --dp-foto: url("/media/01a18ced-c080-729f-aff0-74233c4b6d99/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/spellen"] { --dp-foto: url("/media/01a19355-a24b-73dd-b533-4079dac0a0f3/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/baby-peuter"] { --dp-foto: url("/media/01a1783f-e11f-730f-b3cb-a46760a61990/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/speelfiguren-sets"] { --dp-foto: url("/media/01a17835-4ff8-70ad-b2de-08801b3b6f2b/400.webp"); }
#category-bar .mega-nav__level-3 a[href$="/educatief-speelgoed"] { --dp-foto: url("/media/01a1782d-86a9-71db-9bd4-96a97562813f/400.webp"); }



/* Drogisterij Plus - ontwerp v4 (2026-11-07): pruim en magenta, nieuw logo. */
:root {
    --dp-navy: #4a1042;
    --dp-navy-2: #7b2d6f;
    --dp-orange: #a12f80;
    --dp-orange-dark: #7d1f63;
    --dp-sky: #f6e7f1;
    --dp-page: #fbf6fa;
    --brand-pink: var(--dp-orange-dark);
    --dp-accent-dark: var(--dp-orange-dark);
    --dp-line: #efdeea;
    --dp-hover: #f5e4ef;
    --dp-mark: url("data:image/webp;base64,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");
    --dp-word: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 222 40'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' x2='1'%3E%3Cstop offset='0' stop-color='%236a1f5e'/%3E%3Cstop offset='1' stop-color='%23a03a78'/%3E%3C/linearGradient%3E%3C/defs%3E%3Ctext x='0' y='30' font-family='Roboto,Segoe UI,Helvetica Neue,Arial,sans-serif' font-weight='700' font-size='30' letter-spacing='-0.3' fill='url%28%23g%29'%3EDrogisterijPlus%3C/text%3E%3C/svg%3E");
    --dp-word-white: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 222 40'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' x2='1'%3E%3Cstop offset='0' stop-color='%236a1f5e'/%3E%3Cstop offset='1' stop-color='%23a03a78'/%3E%3C/linearGradient%3E%3C/defs%3E%3Ctext x='0' y='30' font-family='Roboto,Segoe UI,Helvetica Neue,Arial,sans-serif' font-weight='700' font-size='30' letter-spacing='-0.3' fill='%23ffffff'%3EDrogisterijPlus%3C/text%3E%3C/svg%3E");
    --dp-chip: radial-gradient(circle at 24px 50%, #fff 0 25px, transparent 26px);
}
body:has(#bento-1) { background: var(--dp-page); }

/* -- kop -- */
header.page-band { background: #fff; box-shadow: 0 1px 0 var(--dp-line); }
#top-strip { display: none; }
#top-row .rich-nav__name { display: block; width: 230px; height: 48px; background: var(--dp-mark) 2px center / auto 84% no-repeat, var(--dp-word) 58px center / auto 62% no-repeat; }
#top-row .rich-nav__name picture { display: block; width: 100%; height: 100%; }
#top-row .rich-nav__brand img { width: 100%; height: 46px; opacity: 0; }
#top-row .rich-nav__search { max-width: 620px; }
#top-row .rich-nav__search input {
    min-height: 44px;
    padding: 0 56px 0 18px;
    border: 1.5px solid #e6cfe0;
    border-radius: 10px;
    background-color: #fff;
    background-image: none;
}
#top-row .rich-nav__search input:focus { border-color: var(--dp-navy); }
#top-row .rich-nav__search button {
    inset-block-start: 4px;
    inset-inline-start: auto;
    inset-inline-end: 4px;
    width: 40px;
    min-height: 36px;
    border-radius: 8px;
    background: var(--dp-navy);
}
#top-row .rich-nav__search button:hover { background: var(--dp-orange); }
#top-row .rich-nav__search button::after {
    content: "";
    position: absolute;
    inset: 9px 11px;
    background: #fff;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E") center / contain no-repeat;
            mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E") center / contain no-repeat;
}
#top-row .rich-nav__search::before { display: none; }
#account .nav-bar__account,
#basket .nav-bar__basket { color: var(--dp-navy); font-weight: 600; }
#account .nav-bar__account:hover,
#basket .nav-bar__basket:hover { color: var(--dp-orange); }
#basket .nav-bar__basket-count { background: var(--dp-orange); color: #fff; }
#category-bar { border-top: 1px solid var(--dp-line); border-bottom: 0; background: #fdf8fc; }
#category-bar .mega-nav__top { color: var(--dp-navy); font-weight: 600; }
#category-bar .mega-nav__disclosure > summary { color: var(--dp-orange); font-weight: 800; text-transform: uppercase; }
#category-bar .mega-nav__top:hover,
#category-bar .mega-nav__item:focus-within .mega-nav__top { color: var(--dp-orange); }

/* -- algemeen -- */
main .h2, .section .h2 { color: var(--dp-navy); font-weight: 800; }
:is(.btn, .add-to-cart button, .filters__price-apply) { border-radius: 8px; }

/* -- ana sayfa: kampanya + iki fırsat kartı -- */
main:has(#bento-1) > #bento-1 { grid-column: span 9; grid-row: span 2; }
main:has(#bento-1) > #bento-2 { grid-column: span 3; }
main:has(#bento-1) > #bento-3 { grid-column: span 3; margin-top: 14px; }
main:has(#bento-1) { column-gap: 14px; }
:is(#bento-1, #bento-2, #bento-3) { border-radius: 14px; }
main #bento-1 .slideshow__slide { min-height: 330px !important; padding: 40px 44px; }
#bento-1 .slideshow__media, #bento-1 picture { display: none; }
#bento-1 .slideshow__body { max-width: 52%; gap: 10px; }
#bento-1 .eyebrow { display: none; }
main #bento-1 .slideshow__body :is(h1, h2, h3, .h1, .h2) { color: var(--dp-navy); font-size: clamp(32px, 3.6vw, 48px); font-weight: 900; line-height: 1.02; letter-spacing: -.02em; text-transform: uppercase; }
main #bento-1 .lede { max-width: none; color: var(--dp-navy); font-size: clamp(20px, 2.1vw, 30px); font-weight: 700; line-height: 1.18; letter-spacing: -.01em; }
main #bento-1 .btn--solid {
    min-height: 46px;
    margin-top: 8px;
    padding: .55em 1.6em;
    border: 0;
    border-radius: 8px;
    background: var(--dp-orange);
    color: #fff;
    font-size: 17px;
    font-weight: 800;
    text-transform: uppercase;
    box-shadow: 0 6px 16px rgba(161, 47, 128, .28);
}
main #bento-1 .btn--solid:hover { background: var(--dp-orange-dark); }
:is(#bento-2, #bento-3) { position: relative; background: linear-gradient(150deg, var(--dp-navy-2) 0%, var(--dp-navy) 100%); }
main :is(#bento-2, #bento-3) .slideshow__slide { min-height: 158px !important; padding: 18px 120px 18px 18px; color: #fff; }
:is(#bento-2, #bento-3) .slideshow__body { justify-content: flex-start; gap: 4px; max-width: none; }
:is(#bento-2, #bento-3) .eyebrow { color: #fff; font-size: 17px; font-weight: 800; letter-spacing: 0; text-transform: none; }
:is(#bento-2, #bento-3) .eyebrow::before { content: "🔥 "; }
main :is(#bento-2, #bento-3) .slideshow__body :is(h1, h2, h3, .h1, .h2) { color: #fff; font-size: 17px; font-weight: 800; line-height: 1.2; }
:is(#bento-2, #bento-3) .lede { color: #fff; font-size: 17px; font-weight: 800; }
:is(#bento-2, #bento-3) .slideshow__media {
    position: absolute;
    inset: 14px 14px 14px auto;
    width: 96px;
    height: auto;
    padding: 6px;
    border-radius: 10px;
    background: #fff;
    object-fit: contain;
    mix-blend-mode: normal;
}
:is(#bento-2, #bento-3) .btn-row { margin: 0; }
:is(#bento-2, #bento-3) .btn { position: static; min-height: 0; padding: 0; border: 0; background: none; color: transparent; font-size: 0; }
:is(#bento-2, #bento-3) .btn::after { content: ""; position: absolute; inset: 0; z-index: 2; border-radius: 14px; }
:is(#bento-2, #bento-3) .btn:hover { background: none; }
:is(#bento-2, #bento-3):hover { box-shadow: 0 8px 22px rgba(74, 16, 66, .25); }

/* -- vier beloftes -- */
#voordelen { margin: 6px 0 0; padding: 22px 0 6px; border-bottom: 0; }
#voordelen :is(.grid, [class*="grid"]) > * { padding-left: 44px; }
#voordelen :is(.grid, [class*="grid"]) > *::before { top: 2px; width: 30px; height: 30px; background-color: var(--dp-navy); }
#voordelen :is(.grid, [class*="grid"]) > :nth-child(1)::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 5h13v11H1zM14 9h4l3 3v4h-7z'/%3E%3Ccircle cx='5.5' cy='17.5' r='2'/%3E%3Ccircle cx='17.5' cy='17.5' r='2'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 5h13v11H1zM14 9h4l3 3v4h-7z'/%3E%3Ccircle cx='5.5' cy='17.5' r='2'/%3E%3Ccircle cx='17.5' cy='17.5' r='2'/%3E%3C/svg%3E"); }
#voordelen :is(.grid, [class*="grid"]) > :nth-child(2)::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12a9 9 0 1 0 3-6.7L3 8'/%3E%3Cpath d='M3 3v5h5M12 7v5l3 2'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12a9 9 0 1 0 3-6.7L3 8'/%3E%3Cpath d='M3 3v5h5M12 7v5l3 2'/%3E%3C/svg%3E"); }
#voordelen :is(.grid, [class*="grid"]) > :nth-child(3)::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='10' width='16' height='11' rx='2'/%3E%3Cpath d='M8 10V7a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='10' width='16' height='11' rx='2'/%3E%3Cpath d='M8 10V7a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E"); }
#voordelen :is(.grid, [class*="grid"]) > :nth-child(4)::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m12 2 3 6.5 7 .8-5.2 4.8 1.4 7L12 17.6 5.8 21.1l1.4-7L2 9.3l7-.8z' fill='black'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m12 2 3 6.5 7 .8-5.2 4.8 1.4 7L12 17.6 5.8 21.1l1.4-7L2 9.3l7-.8z' fill='black'/%3E%3C/svg%3E"); }
#voordelen :is(h3, .h3, h4, .h4) { color: var(--dp-navy); font-size: 14px; font-weight: 800; text-transform: uppercase; letter-spacing: .02em; }
#voordelen p { color: #5e4559; font-size: 13px; }

/* -- productkaarten: overal hetzelfde -- */
:is(.product-card, .card--product) {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 12px;
    border: 1px solid var(--dp-line);
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 2px 8px rgba(74, 16, 66, .06);
    transition: box-shadow .15s ease;
}
:is(.product-card, .card--product):hover { box-shadow: 0 8px 22px rgba(74, 16, 66, .13); }
:is(.product-card, .card--product) :is(img, .card__shade) { border-radius: 8px; box-shadow: none !important; }
:is(.product-card, .card--product) :is(.product-card__name, h2) { color: var(--dp-navy); font-size: 13.5px; font-weight: 700; }
:is(.product-card, .card--product) :is(.price, .product-card__price) { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 8px; padding-inline-end: 0; }
:is(.product-card, .card--product) .price__now { order: 1; color: var(--dp-navy); font-size: 17px; font-weight: 800; }
:is(.product-card, .card--product) .price__was { order: 2; margin: 0; color: #8a7486; font-size: 13px; }
:is(.product-card, .card--product) .badge--sale {
    order: 3;
    margin-left: auto;
    padding: 2px 7px;
    border-radius: 5px;
    background: #d9363e;
    color: #fff;
    font-size: 12px;
    font-weight: 800;
}
:is(.product-card, .card--product) .product-card__add { position: static; margin: auto 0 0; padding-top: 12px; }
:is(.product-card, .card--product) .product-card__add .product-card__add-button {
    width: 100%;
    height: 36px;
    border: 0;
    border-radius: 7px;
    background: var(--dp-orange);
    color: #fff;
    font-size: 0;
}
:is(.product-card, .card--product) .product-card__add .product-card__add-button::after { content: "In winkelwagen"; font-size: 13px; font-weight: 800; letter-spacing: .02em; text-transform: uppercase; }
html:lang(en) :is(.product-card, .card--product) .product-card__add-button::after { content: "Add to cart"; }
html:lang(fr) :is(.product-card, .card--product) .product-card__add-button::after { content: "Ajouter au panier"; }
html:lang(de) :is(.product-card, .card--product) .product-card__add-button::after { content: "In den Warenkorb"; }
:is(.product-card, .card--product) .product-card__add .product-card__add-button:hover { background: var(--dp-orange-dark); color: #fff; }
.section--carousel .product-carousel__track { align-items: stretch; gap: 16px; }
main:has(#bento-1) .section--carousel .product-carousel__cell { width: calc((100% - 48px) / 4); min-width: 200px; }
.section--carousel .slideshow__arrow { border-color: var(--dp-line); color: var(--dp-navy); box-shadow: 0 4px 12px rgba(74, 16, 66, .12); }
#populair-verzorging { margin-top: 18px; }
#meest-verkocht, #populair-trimmen { margin-top: 48px; padding-block: 0; }

/* -- categorieën: foto met donkere verloop -- */
#categories { margin-top: 28px; }
#categories .tiles { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
#categories .tile__link,
#categories .tile__link:has(img) {
    position: relative;
    justify-content: flex-end;
    align-items: center;
    min-height: 150px;
    padding: 16px;
    overflow: hidden;
    border-radius: 12px;
    background: var(--dp-navy) center / cover no-repeat;
    color: #fff;
    text-align: center;
}
#categories .tile__link::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(74,16,66,0) 35%, rgba(52,10,46,.85) 100%); }
#categories .tile__link::before { position: absolute; top: 14px; left: 14px; z-index: 1; width: 32px; height: 32px; background-color: #fff; }
#categories .tile__label { position: relative; z-index: 1; color: #fff; font-size: 18px; font-weight: 800; }
#categories .tile__link:hover { background-color: var(--dp-navy); color: #fff; box-shadow: 0 8px 22px rgba(74,16,66,.25); }

/* -- inspiratie -- */
#blog { margin-top: 48px; }
#blog .banner__link { background: #fff; border: 1px solid var(--dp-line); color: var(--dp-navy); }
#blog .banner__link:hover { background: #fff; color: var(--dp-orange-dark); box-shadow: 0 8px 22px rgba(74,16,66,.12); }

/* -- afsluiter -- */
#afsluiter .section__inner { background: var(--dp-navy); color: #fff; }
main #afsluiter .section__inner :is(h1, h2, h3, .h2) { color: #fff; }
#afsluiter p.prose { color: #ecd6e7; }
#afsluiter .btn--solid { border-color: var(--dp-orange); background: var(--dp-orange); color: #fff; }
#afsluiter .btn--solid:hover { border-color: var(--dp-orange-dark); background: var(--dp-orange-dark); }
#afsluiter .btn--outline { border-color: #fff; background: transparent; color: #fff; }
#afsluiter .btn--outline:hover { background: #fff; color: var(--dp-navy); }
#terugroep-strip a { background: #fff; }

/* -- altbilgi -- */
:is(footer, div, section):has(> #footer-contact):has(> #footer-categorieen) {
    --footer-ground: var(--dp-navy);
    margin-top: 64px;
    padding-bottom: 32px;
    border-top: 0;
    background: var(--dp-navy);
    color: #ecd6e7;
}
:is(#footer-contact, #footer-categorieen, #footer-service, #footer-betalen, #footer-social) { background: none; color: #ecd6e7; }
:is(#footer-contact, #footer-categorieen, #footer-service, #footer-betalen, #footer-social) :is(h2, h3, h4, .h2, .h3, .h4) { color: #fff; font-size: 16px; font-weight: 800; }
:is(#footer-contact, #footer-categorieen, #footer-service, #footer-betalen) :is(p, li, .prose, .muted) { color: #ecd6e7; }
:is(#footer-contact, #footer-categorieen, #footer-service, #footer-betalen) a { color: #fff; }
:is(#footer-contact, #footer-categorieen, #footer-service, #footer-betalen) a:hover { color: #f7bde4; }
#footer-contact picture { display: block; width: 230px; height: 48px; background: var(--dp-mark) 2px center / auto 84% no-repeat, var(--dp-word-white) 58px center / auto 62% no-repeat, var(--dp-chip); }
#footer-contact picture img { width: 100%; height: 46px; opacity: 0; }
#footer-betalen ul { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
#footer-betalen li { margin: 0; padding: 6px 10px; border-radius: 5px; background: #fff; color: var(--dp-navy) !important; font-size: 12px; font-weight: 800; }
#footer-betalen li::before { display: none; }
#footer-social a { color: var(--dp-navy); }
#footer-social a:hover { background: var(--dp-orange); color: #fff; }
footer.page-band .section--legal,
footer.page-band .section--legal a { color: #cfa9c7; }

/* -- telefoon -- */
@media (max-width: 699px) {
    #top-row .rich-nav__name { width: 176px; height: 38px; background-position: 2px center, 46px center; }
    #top-row .rich-nav__brand img { height: 36px; }
    main:has(#bento-1) > :is(#bento-1, #bento-2, #bento-3) { grid-column: 1 / -1; grid-row: auto; margin-top: 12px; }
    main #bento-1 .slideshow__slide { min-height: 420px !important; padding: 24px; }
    #bento-1 .slideshow__body { max-width: none; justify-content: flex-start; }
    main #bento-1 .slideshow__body :is(h1, h2, h3, .h1, .h2) { font-size: 32px; }
    main #bento-1 .lede { font-size: 21px; }
    #categories .tiles { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    main:has(#bento-1) .section--carousel .product-carousel__cell { width: 46%; min-width: 150px; }
}

#categories .tile__link::before { display: none; }
#categories #tile-verzorging .tile__link { background-image: url("/media/01a16d78-2731-7278-a0d1-0424b5052511/800.webp"); }
#categories #tile-scheren .tile__link { background-image: url("/media/01a16d78-2720-7297-a8db-8de5609c9396/800.webp"); }
#categories #tile-fiets .tile__link { background-image: url("/media/01a16d78-2710-72df-a213-6eaa797be080/800.webp"); }
#categories #tile-elektronica .tile__link { background-image: url("/media/01a16d78-2701-72ff-8d45-47c834fafbe6/800.webp"); }

#blog .grid > .banner { display: flex; }
#blog .banner__link { display: flex; flex-direction: column; justify-content: flex-start; width: 100%; min-height: 0; padding: 0 0 16px; overflow: hidden; border-radius: 14px; text-align: left; }
#blog .banner__link::before { content: ""; display: block; aspect-ratio: 16 / 9; margin-bottom: 14px; background: var(--dp-sky) center / cover no-repeat; }
#blog #blog-over-ons .banner__link::before { background-image: url("/media/01a17714-15bc-70b1-983c-7ac810029ddc/800.webp"); }
#blog #blog-trimmer .banner__link::before { background-image: url("/media/01a17714-15b2-73ea-b89b-f822987bd3e3/800.webp"); }
#blog #blog-fiets .banner__link::before { background-image: url("/media/01a17714-159e-710a-8c5d-18d29785bb29/800.webp"); }

#blog .banner__heading { padding: 0 16px; color: var(--dp-navy); font-weight: 800; }
::selection { background: #f1c9e4; }
a:focus-visible, button:focus-visible, input:focus-visible { outline-color: var(--dp-orange); }

/* -- variant A: klassiek -- */
#bento-1 { background: var(--dp-sky) url("/media/01a16d80-018d-73b1-9224-e127a15a1beb/1600.webp") right center / cover no-repeat; }
#bento-1 .slideshow__body { max-width: 50%; }
@media (max-width: 699px) { #bento-1 { background-position: 72% center; } main #bento-1 .slideshow__slide { min-height: 360px !important; } #bento-1 .slideshow__body { max-width: 70%; } }

/* -- S2152 urun sayfasi: BTW fiyatin yaninda, teslimat rozeti fiyatin altinda -- */
.pd-price { row-gap: 2px; }
.pd-price .price__now { white-space: nowrap; }
.pd-price .price__vat { font-size: 14px; font-weight: 400; line-height: 1.3; color: #6e5a6a; white-space: nowrap; }
.pd-delivery {
    display: flex;
    align-items: center;
    gap: 8px;
    align-self: flex-start;
    max-width: 100%;
    margin: 0;
    padding: 8px 12px;
    border-left: 3px solid #a12f80;
    border-radius: 8px;
    background: #f6e9f2;
    color: #2e0c2a;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.35;
}
.pd-delivery__icon { flex: 0 0 auto; width: 20px; height: 20px; color: #a12f80; }
@media (max-width: 480px) {
    .pd-delivery { align-self: stretch; width: 100%; box-sizing: border-box; }
}
