
.uv-pd2 {
    --pd2-tekst: var(--color-text, #26313d);
    --pd2-zacht: var(--color-text-muted, #6f7a86);
    --pd2-rand: var(--color-border, #e3e8ee);
    --pd2-vlak: color-mix(in srgb, var(--color-primary, #188cdf) 6%, #fff);
    --pd2-primair: var(--color-primary, #188cdf);
    --pd2-goed: var(--color-success, #26ac24);
    --pd2-r: var(--radius-md, 4px);
    --pd2-kop: var(--color-heading, #15212e);
}


.uv-kb { display: flex; flex-direction: column; gap: 14px; }
.uv-kb__merk img.uv-kb__merklogo { display: block; max-height: 30px; max-width: 160px; object-fit: contain; }
.uv-kb__merknaam { font-weight: 800; letter-spacing: .02em; color: var(--pd2-kop); font-size: 1.05rem; }
.uv-kb__merk a { text-decoration: none; color: inherit; display: inline-block; }
.uv-kb .uv-kb__titel { margin: 0; font-size: clamp(1.6rem, 1.2rem + 1.4vw, 2.25rem); line-height: 1.15; color: var(--pd2-kop); }
.uv-kb__kort { margin: -4px 0 0; color: var(--pd2-zacht); font-size: 1.05rem; line-height: 1.45; max-width: 60ch; }
.uv-kb__sterren { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; font-size: .95rem; }
.uv-kb__sterrenrij { display: inline-flex; gap: 2px; }
.uv-kb__ster { width: 20px; height: 20px; background: linear-gradient(90deg, #f5b301 var(--vul), #d9dde3 var(--vul)); -webkit-mask: 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.6 7.2.7-5.4 4.8 1.6 7.1L12 17.5l-6.4 3.7 1.6-7.1L1.8 9.3 9 8.6z'/%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'%3E%3Cpath d='m12 2 3 6.6 7.2.7-5.4 4.8 1.6 7.1L12 17.5l-6.4 3.7 1.6-7.1L1.8 9.3 9 8.6z'/%3E%3C/svg%3E") center/contain no-repeat; }
.uv-kb__aantal { color: var(--pd2-zacht); }
.uv-kb__naarreviews { color: var(--pd2-primair); text-decoration: none; font-weight: 600; margin-left: 6px; }
.uv-kb__naarreviews::after { content: " ›"; }
.uv-kb__codes { font-size: .85rem; color: var(--pd2-zacht); margin: 0; display: flex; flex-wrap: wrap; gap: 4px 16px; }

.uv-kb__prijsrij { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-start; gap: 10px 24px; }
.uv-kb .uv-kb__prijs { margin: 0; font-size: 2rem; font-weight: 800; color: var(--pd2-kop); line-height: 1.1; }
.uv-kb__oud { text-decoration: line-through; color: var(--pd2-zacht); font-weight: 400; font-size: .6em; margin-right: 8px; }
.uv-kb__korting { position: static; margin-left: 10px; font-size: .45em; vertical-align: middle; }
.uv-kb__btw { display: block; font-size: .9rem; font-weight: 400; color: var(--pd2-zacht); margin-top: 6px; }
.uv-kb__status { display: flex; flex-direction: column; gap: 6px; font-size: .95rem; }
.uv-kb__voorraad { font-weight: 700; }
.uv-kb__voorraad span::before { content: ""; display: inline-block; width: 16px; height: 16px; margin-right: 8px; vertical-align: -3px; border-radius: 50%; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='12'/%3E%3C/svg%3E"); }
.uv-kb__levertijd { display: flex; align-items: center; gap: 8px; margin: 0; color: var(--pd2-tekst); }
.uv-kb__levertijd svg { color: var(--pd2-goed); flex: none; }

.uv-kb__form { display: flex; flex-direction: column; align-items: stretch; gap: 10px; margin: 0; }
.uv-kb__koop { display: grid; grid-template-columns: auto 1fr auto; gap: 10px; align-items: stretch; }
.uv-kb__koop .qty-picker .qty-input { height: 48px; min-width: 80px; }
.uv-kb .uv-kb__knop { height: 48px; width: 100%; font-size: 1.05rem; font-weight: 700; display: inline-flex; align-items: center; justify-content: center; gap: 10px; }
.uv-kb .uv-kb__fav { position: static; width: 48px; height: 48px; border: 1px solid var(--pd2-rand); border-radius: var(--pd2-r); background: #fff; color: var(--pd2-kop); }
.uv-kb .uv-kb__fav svg { width: 22px; height: 22px; }
.uv-kb .uv-kb__fav.is-favorite svg { fill: currentColor; color: var(--color-danger, #d84c3f); }

.uv-kb__usps { list-style: none; margin: 0; padding: 14px 16px; border: 1px solid var(--pd2-rand); border-radius: var(--pd2-r); display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 18px; font-size: .92rem; }
.uv-kb__usps li { display: flex; align-items: center; gap: 10px; color: var(--pd2-tekst); }
.uv-kb__uspicoon { color: var(--pd2-goed); flex: none; }

.uv-kb__kaarten { display: grid; gap: 12px; }
.uv-kb__kaarten--twee { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.uv-kb__kaart { display: flex; gap: 14px; align-items: center; padding: 14px; border-radius: var(--pd2-r); background: var(--pd2-vlak); color: var(--pd2-tekst); text-decoration: none; }
.uv-kb__kaart--advies { background: color-mix(in srgb, var(--pd2-goed) 7%, #fff); }
.uv-kb__kaartbeeld { width: 84px; height: 84px; object-fit: contain; flex: none; mix-blend-mode: multiply; }
.uv-kb__kaarttekst { display: flex; flex-direction: column; gap: 3px; min-width: 0; font-size: .92rem; }
.uv-kb__kaartkop { font-weight: 700; color: var(--pd2-kop); }
.uv-kb__kaartprijs { color: var(--pd2-kop); }
.uv-kb__kaartlink { color: var(--pd2-primair); font-weight: 600; }
.uv-kb__kaartlink::after { content: " ›"; }
.uv-kb__adviesfoto { width: 64px; height: 64px; border-radius: 50%; object-fit: cover; flex: none; }
.uv-kb__adviesicoon { width: 56px; height: 56px; border-radius: 50%; display: grid; place-items: center; background: #fff; color: var(--pd2-goed); flex: none; }
.uv-kb__adviestekst { color: var(--pd2-zacht); }
.uv-kb__adviesknop { margin-top: 6px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 10px 14px; border: 0; border-radius: var(--pd2-r); background: var(--pd2-goed); color: #fff; font-weight: 700; text-decoration: none; cursor: pointer; font-size: .92rem; }
.uv-kb__adviesknop:hover { filter: brightness(.95); }
.uv-kb__adviesknop:focus-visible, .uv-kb__fav:focus-visible, .uv-ankerbalk a:focus-visible, .uv-samen__knop:focus-visible { outline: 3px solid var(--pd2-primair); outline-offset: 2px; }


.uv-pd2-galerij { position: relative; }
.uv-pd2-badge-label { position: absolute; top: 14px; left: 14px; z-index: 3; padding: 10px 14px; border-radius: var(--pd2-r); max-width: 46%; font-weight: 800; font-size: 1rem; line-height: 1.2; box-shadow: 0 2px 8px rgba(0,0,0,.12); }
.uv-pd2-badge-label small { display: block; font-weight: 500; font-size: .82rem; margin-top: 3px; }
.uv-pd2-badge-kenmerk { position: absolute; top: 14px; right: 14px; z-index: 3; width: 92px; height: 92px; border-radius: 50%; background: #fff; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 4px; text-align: center; font-size: .72rem; font-weight: 600; color: var(--pd2-kop); box-shadow: 0 2px 10px rgba(0,0,0,.14); padding: 8px; line-height: 1.1; }
.uv-pd2-badge-kenmerk svg { color: var(--pd2-primair); }
.uv-pd2-garantie { position: absolute; right: 18px; bottom: 18px; z-index: 3; width: 86px; padding: 8px 6px 7px; border-radius: 12px 12px 18px 18px; background: var(--color-danger, #d84c3f); color: #fff; text-align: center; line-height: 1; box-shadow: 0 2px 10px rgba(0,0,0,.18); border: 3px solid #fff; }
.uv-pd2-garantie strong { display: block; font-size: 2.1rem; font-weight: 900; }
.uv-pd2-garantie span { display: block; font-size: .62rem; font-weight: 800; letter-spacing: .03em; margin-top: 2px; }
.uv-pd2-garantie em { display: block; font-style: normal; font-size: .7rem; font-weight: 800; margin-top: 4px; background: #fff; color: var(--color-danger, #d84c3f); border-radius: 0 0 10px 10px; padding: 3px 0; }
.uv-pd2-teller { position: absolute; left: 14px; bottom: 14px; z-index: 3; padding: 3px 9px; border-radius: 999px; background: rgba(255,255,255,.92); font-size: .8rem; color: var(--pd2-tekst); font-variant-numeric: tabular-nums; }
.uv-pd2-videoknop { position: absolute; left: 14px; bottom: 14px; z-index: 3; display: inline-flex; align-items: center; gap: 10px; padding: 8px 16px 8px 8px; border: 0; border-radius: var(--pd2-r); background: rgba(14, 22, 31, .82); color: #fff; font-weight: 700; cursor: pointer; font-size: .95rem; }
.uv-pd2-videoknop__play { width: 34px; height: 34px; border-radius: 50%; background: var(--pd2-primair); display: grid; place-items: center; }
.uv-pd2-videoknop__duur { font-weight: 500; opacity: .85; margin-left: 10px; font-variant-numeric: tabular-nums; }
.uv-pd2-hoofdbeeld:has(.uv-pd2-videoknop) .uv-pd2-teller { left: auto; right: 14px; } 
.uv-galerij-strook__dia--video { display: flex; align-items: center; justify-content: center; background: #0e161f; }
.uv-galerij-strook__dia--video .uv-video { width: 100%; }
.thumbnail-list .uv-pd2-videothumb { position: relative; display: inline-block; cursor: pointer; }
.thumbnail-list .uv-pd2-videothumb::after { content: ""; position: absolute; inset: 0; margin: auto; width: 28px; height: 28px; border-radius: 50%; background: rgba(255,255,255,.92) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 7v10l8-5z' fill='%2315212e'/%3E%3C/svg%3E") center/16px no-repeat; pointer-events: none; }


.uv-ankerbalk { margin-top: 28px; margin-bottom: 8px; border-radius: var(--pd2-r); background: var(--pd2-vlak); }
.uv-ankerbalk--sticky { position: sticky; top: var(--uv-header-h, 0px); z-index: 20; }
.uv-ankerbalk ul { list-style: none; margin: 0; padding: 0 8px; display: flex; gap: 4px; overflow-x: auto; scrollbar-width: none; }
.uv-ankerbalk ul::-webkit-scrollbar { display: none; }
.uv-ankerbalk a { display: inline-flex; align-items: center; gap: 8px; padding: 16px 16px 13px; color: var(--pd2-tekst); text-decoration: none; white-space: nowrap; border-bottom: 3px solid transparent; font-size: .95rem; }
.uv-ankerbalk a svg { color: var(--pd2-zacht); }
.uv-ankerbalk a.is-actief { color: var(--pd2-primair); border-bottom-color: var(--pd2-primair); font-weight: 700; }
.uv-ankerbalk a.is-actief svg { color: var(--pd2-primair); }
.uv-section[id^="uv-"] { scroll-margin-top: calc(var(--uv-header-h, 0px) + 70px); }


.uv-pdbm { display: grid; gap: 28px; margin-top: 24px; margin-bottom: 24px; }
.uv-pdbm--met-beeld { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: start; }
.uv-pdbm__kop { margin: 0 0 12px; font-size: 1.6rem; color: var(--pd2-kop); }
.uv-pdbm__beschrijving { color: var(--pd2-tekst); line-height: 1.65; max-width: 72ch; }
.uv-pdbm__kenmerken { list-style: none; padding: 0; margin: 22px 0 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.uv-pdbm__kenmerken li { display: flex; flex-direction: column; gap: 8px; font-size: .9rem; color: var(--pd2-tekst); line-height: 1.3; }
.uv-pdbm__icoon { width: 58px; height: 58px; border-radius: 50%; display: grid; place-items: center; background: var(--pd2-vlak); color: var(--pd2-primair); }
.uv-pdbm__beeld { margin: 0; border-radius: var(--pd2-r); overflow: hidden; }
.uv-pdbm__img { display: block; width: 100%; height: auto; }


@media (min-width: 901px) { .uv-pdbm__img { width: 100%; height: auto; max-height: 560px; object-fit: cover; } }
.uv-pdbm__docs { grid-column: 1 / -1; }


.uv-pdk { display: grid; gap: 24px; margin-top: 24px; margin-bottom: 24px; padding-top: 24px; border-top: 1px solid var(--pd2-rand); }
.uv-pdk--3 { grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr) minmax(0, .8fr); }
.uv-pdk--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.uv-pdk__kop { margin: 0 0 14px; font-size: 1.35rem; color: var(--pd2-kop); }
.uv-pdk__vinkjes { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 12px; }
.uv-pdk__vinkjes li { display: flex; gap: 12px; align-items: flex-start; line-height: 1.45; color: var(--pd2-tekst); }
.uv-pdk__vinkjes strong { color: var(--pd2-kop); }
.uv-pdk__vink { flex: none; width: 22px; height: 22px; border-radius: 50%; display: grid; place-items: center; background: var(--pd2-goed); color: #fff; margin-top: 1px; }
.uv-pdk__blok { border: 1px solid var(--pd2-rand); border-radius: var(--pd2-r); overflow: hidden; align-self: start; }
.uv-pdk__blokkop { display: block; margin: 0; padding: 12px 14px; background: var(--pd2-vlak); font-size: 1.1rem; font-weight: 700; color: var(--pd2-kop); cursor: default; list-style: none; }
.uv-pdk__blokkop::-webkit-details-marker { display: none; }
.uv-pdk__tabel { width: 100%; border-collapse: collapse; font-size: .9rem; }
.uv-pdk__tabel th, .uv-pdk__tabel td { text-align: left; padding: 7px 14px; border-top: 1px solid var(--pd2-rand); vertical-align: top; }
.uv-pdk__tabel th { font-weight: 500; color: var(--pd2-tekst); width: 50%; }
.uv-pdk__tabel td { color: var(--pd2-zacht); }
.uv-pdk__doosrij { list-style: none; margin: 0; padding: 0; }
.uv-pdk__doosrij li { display: flex; align-items: center; gap: 14px; padding: 10px 14px; border-top: 1px solid var(--pd2-rand); font-size: .9rem; }
.uv-pdk__doosbeeld { width: 52px; height: 52px; flex: none; display: grid; place-items: center; color: var(--pd2-primair); }
.uv-pdk__doosbeeld img { max-width: 52px; max-height: 52px; object-fit: contain; }


.uv-samen { margin: 28px 0; padding: 18px; border-radius: var(--pd2-r); background: var(--pd2-vlak); }
.uv-samen__titel { margin: 0 0 14px; font-size: 1.35rem; color: var(--pd2-kop); }
.uv-samen__inhoud { display: grid; grid-template-columns: minmax(0, 1fr) 280px; gap: 18px; align-items: stretch; }
.uv-samen__lijst { list-style: none; margin: 0; padding: 0; display: grid; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); gap: 12px; }
.uv-samen__item { position: relative; display: flex; background: #fff; border-radius: var(--pd2-r); }
.uv-samen__vink { position: absolute; top: 10px; left: 10px; z-index: 1; cursor: pointer; }
.uv-samen__vink input { position: absolute; opacity: 0; width: 22px; height: 22px; margin: 0; cursor: pointer; }
.uv-samen__vinkje { width: 22px; height: 22px; border: 2px solid var(--pd2-rand); border-radius: 4px; background: #fff; display: grid; place-items: center; color: transparent; }
.uv-samen__vink input:checked + .uv-samen__vinkje { background: var(--pd2-primair); border-color: var(--pd2-primair); color: #fff; }
.uv-samen__vink input:focus-visible + .uv-samen__vinkje { outline: 3px solid var(--pd2-primair); outline-offset: 2px; }
.uv-samen__product { display: flex; flex-direction: column; gap: 8px; padding: 36px 14px 14px; color: var(--pd2-tekst); text-decoration: none; width: 100%; font-size: .9rem; }
.uv-samen__beeld { height: 110px; display: grid; place-items: center; }
.uv-samen__beeld img { max-height: 110px; max-width: 100%; object-fit: contain; }
.uv-samen__naam { font-weight: 600; color: var(--pd2-kop); line-height: 1.3; }
.uv-samen__prijs { margin-top: auto; color: var(--pd2-kop); }
.uv-samen__afsluiter { display: flex; flex-direction: column; justify-content: center; gap: 12px; padding: 16px; background: #fff; border-radius: var(--pd2-r); }
.uv-samen__totaal { margin: 0; font-size: 1.1rem; color: var(--pd2-kop); }
.uv-samen__totaal strong { font-size: 1.5rem; }
.uv-samen .uv-samen__knop { width: 100%; height: 48px; font-weight: 700; }
.uv-samen__knop:disabled { opacity: .55; cursor: not-allowed; }
.uv-samen__melding { margin: 0; font-size: .9rem; color: var(--color-danger, #b91c1c); }


.uv-verzend { margin-top: 28px; margin-bottom: 28px; }
.uv-verzend__kop { margin: 0 0 14px; font-size: 1.35rem; color: var(--pd2-kop); }
.uv-verzend__raster { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 16px; }
.uv-verzend__blok { padding: 16px; border: 1px solid var(--pd2-rand); border-radius: var(--pd2-r); }
.uv-verzend__blok h3 { display: flex; align-items: center; gap: 10px; margin: 0 0 10px; font-size: 1.05rem; color: var(--pd2-kop); }
.uv-verzend__blok h3 svg { color: var(--pd2-primair); }
.uv-verzend__blok ul { list-style: none; padding: 0; margin: 0 0 10px; display: flex; flex-direction: column; gap: 8px; font-size: .92rem; }
.uv-verzend__blok li { display: flex; flex-wrap: wrap; gap: 2px 10px; }
.uv-verzend__levertijd { color: var(--pd2-zacht); width: 100%; }
.uv-verzend__blok p { margin: 0 0 10px; font-size: .92rem; line-height: 1.5; }
.uv-verzend__link { color: var(--pd2-primair); font-weight: 600; text-decoration: none; font-size: .92rem; }
.uv-verzend__link::after { content: " ›"; }


.uv-koopbalk__foto { width: 44px; height: 44px; object-fit: contain; flex: none; }


@media (max-width: 900px) {
    .uv-kb__kaarten--twee, .uv-pdbm--met-beeld, .uv-pdk--3, .uv-pdk--2, .uv-samen__inhoud { grid-template-columns: minmax(0, 1fr); }
    .uv-kb__usps { grid-template-columns: repeat(4, minmax(0, 1fr)); padding: 12px 6px; border-width: 1px 0; border-radius: 0; text-align: center; font-size: .78rem; }
    .uv-kb__usps li { flex-direction: column; gap: 6px; }
    .uv-kb__usps li:nth-child(n+5) { display: none; }
    .uv-kb__uspicoon { color: var(--pd2-primair); }
    .uv-pdbm__kenmerken { grid-template-columns: repeat(4, minmax(0, 1fr)); text-align: center; font-size: .8rem; }
    .uv-pdbm__kenmerken li { align-items: center; }
    .uv-pdbm__icoon { width: 50px; height: 50px; }
    .uv-pdbm__beeld { order: 3; }
    .uv-samen__lijst { grid-auto-flow: row; grid-auto-columns: auto; }
    .uv-samen__product { flex-direction: row; align-items: center; padding: 10px 12px 10px 48px; }
    .uv-samen__beeld { height: 56px; width: 64px; flex: none; }
    .uv-samen__beeld img { max-height: 56px; }
    .uv-samen__naam { flex: 1; }
    .uv-samen__prijs { margin: 0; }
    .uv-samen__vink { top: 50%; transform: translateY(-50%); left: 14px; }
    .uv-pdk__doosrij { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .uv-pdk__doosrij li { flex-direction: column; text-align: center; gap: 6px; border-top: 0; border-left: 1px solid var(--pd2-rand); font-size: .78rem; padding: 10px 6px; }
    .uv-pdk__doosrij li:first-child { border-left: 0; }
    .uv-pd2-badge-kenmerk { width: 74px; height: 74px; font-size: .64rem; }
    .uv-pd2-garantie { width: 72px; right: 12px; bottom: 12px; }
    .uv-pd2-garantie strong { font-size: 1.7rem; }
    .uv-ankerbalk a { padding: 13px 12px 10px; font-size: .9rem; }
}
@media (max-width: 480px) {
    .uv-kb__prijsrij { flex-direction: column; }
    .uv-kb .uv-kb__prijs { font-size: 1.75rem; }
}
@media (prefers-reduced-motion: reduce) { .uv-ankerbalk, .uv-samen * { scroll-behavior: auto; transition: none; } }



.uv-kb .uv-kb__titel { font-weight: 800; letter-spacing: -.01em; }
.uv-pd2-hoofdbeeld { position: relative; }
.uv-pd2-garantie span, .uv-pd2-garantie em { text-transform: uppercase; }
.uv-pd2 .sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.uv-pdbm__kenmerken li span:last-child, .uv-kb__usps li span { overflow-wrap: anywhere; hyphens: auto; }
@media (max-width: 900px) {
    .uv-pdbm__kenmerken { gap: 10px 6px; font-size: .74rem; }
}
.uv-kb__kaartlink { white-space: nowrap; }
.uv-samen .uv-samen__afsluiter .uv-samen__knop { flex: none; height: auto; min-height: 48px; padding: 10px 16px; line-height: 1.25; white-space: normal; }


.uv-pd2-duo { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); gap: 32px; align-items: start; margin-top: 28px; }
.uv-pd2-duo > .uv-section > * { margin-top: 0; }
body.uv-pd2 .uv-pd2-duo h2 { font-size: 1.35rem; font-weight: 700; color: var(--pd2-kop); }
@media (max-width: 900px) { .uv-pd2-duo { grid-template-columns: minmax(0, 1fr); gap: 24px; } }


body.uv-pd2 .uv-samen, body.uv-pd2 .uv-pd2-paneel__vlak { border-radius: 10px; }
body.uv-pd2 .uv-pd2-paneel { margin-top: 28px !important; } 
.uv-pd2-paneel__vlak { background: var(--pd2-vlak); padding: 18px 18px 26px; }
body.uv-pd2 .uv-pd2-paneel__vlak > .carousel-header, body.uv-pd2 .uv-pd2-paneel__vlak > h2 { padding: 0 !important; margin: 0 0 14px !important; border: 0 !important; } 
body.uv-pd2 .uv-pd2-paneel__vlak > .carousel-header h2, body.uv-pd2 .uv-pd2-paneel__vlak > h2 { margin: 0; font-size: 1.35rem; color: var(--pd2-kop); }
body.uv-pd2 .uv-pd2-paneel__vlak > .carousel-track { padding-left: 0; padding-right: 0; scroll-padding-left: 0; }
body.uv-pd2 .uv-pd2-paneel .product-card { background: #fff; border: 0; border-radius: var(--pd2-r); box-shadow: none; }
body.uv-pd2 .uv-pd2-paneel .product-card .card-info { background: #fff; }
.uv-pd2-paneel .product-card .card-img-wrap { background: #fff; border-bottom: 0; }

body.uv-pd2 .uv-section--samen_kopen:has(+ .uv-section--related .uv-pd2-paneel) > .uv-samen-wrap { margin-bottom: 0; }
body.uv-pd2 .uv-section--samen_kopen:has(+ .uv-section--related .uv-pd2-paneel) .uv-samen { margin-bottom: 0; border-radius: 10px 10px 0 0; padding-bottom: 12px; }
body.uv-pd2 .uv-section--samen_kopen + .uv-section--related:has(.uv-pd2-paneel) { margin-top: 0; }
body.uv-pd2 .uv-section--samen_kopen + .uv-section--related .uv-pd2-paneel { margin-top: 0 !important; }
body.uv-pd2 .uv-section--samen_kopen + .uv-section--related .uv-pd2-paneel__vlak { border-radius: 0 0 10px 10px; padding-top: 12px; }


body.uv-pd2 .uv-faq--sectie .uv-pd-accordeon, body.uv-pd2 .uv-faq--sectie .uv-pd-accordeon__item:first-child { border-top: 0; }


body.uv-pd2 .uv-section--faq .uv-faq--sectie { background: color-mix(in srgb, var(--pd2-goed) 7%, #fff); border-radius: 10px; padding: 18px 18px 6px; margin-top: 0; }
body.uv-pd2 .uv-section--faq .uv-faq__sectie-titel { color: var(--pd2-kop); border-bottom-color: color-mix(in srgb, var(--pd2-goed) 25%, #fff); }
body.uv-pd2 .uv-section--faq .uv-pd-accordeon__item { border-color: color-mix(in srgb, var(--pd2-goed) 18%, #fff); }
body.uv-pd2 .uv-section--faq .uv-pd-accordeon__item:last-child { border-bottom: 0; }
body.uv-pd2 .uv-section--faq .uv-pd-accordeon__item summary { color: var(--pd2-kop); }
body.uv-pd2 .uv-section--faq .uv-pd-accordeon__item summary::after { color: var(--pd2-goed); font-weight: 700; }

body.uv-pd2 .uv-pd2-duo .uv-reviews { background: var(--pd2-vlak); border-radius: 10px; padding: 18px 18px 22px; margin: 0; }
body.uv-pd2 .uv-pd2-duo .uv-reviews__titel { color: var(--pd2-kop); border-bottom-color: color-mix(in srgb, var(--pd2-primair) 20%, #fff); }
body.uv-pd2 .uv-pd2-duo .uv-review { background: #fff; border-color: transparent; border-radius: 8px; }
body.uv-pd2 .uv-pd2-duo .uv-review-schrijf > summary { background: #fff; border-radius: 6px; }
body.uv-pd2 .uv-pd2-duo .uv-section--faq .uv-faq--sectie { padding-bottom: 12px; }



@media (min-width: 901px) {
    body.uv-pd2 .product-wrapper:has(.uv-kb) { align-items: stretch; }
    body.uv-pd2 .product-wrapper:has(.uv-kb) > .uv-section--gallery { height: 0; min-height: 100%; }
    body.uv-pd2 .product-wrapper:has(.uv-kb) > .uv-section--gallery > .product-gallery { height: 100%; display: flex; flex-direction: column; gap: 12px; }
    body.uv-pd2 .product-wrapper:has(.uv-kb) .uv-pd2-hoofdbeeld, body.uv-pd2 .product-wrapper:has(.uv-kb) .product-gallery > .uv-galerij-strook { flex: 1 1 auto; min-height: 380px; }
    body.uv-pd2 .product-wrapper:has(.uv-kb) .uv-pd2-hoofdbeeld .uv-galerij-strook { height: 100%; }
    body.uv-pd2 .product-wrapper:has(.uv-kb) .uv-galerij-strook__dia, body.uv-pd2 .product-wrapper:has(.uv-kb) .uv-galerij-strook__dia img { height: 100%; }
    body.uv-pd2 .product-wrapper:has(.uv-kb) .uv-galerij-strook__dia img { width: 100%; object-fit: contain; }
    body.uv-pd2 .product-wrapper:has(.uv-kb) .thumbnail-list { flex: none; margin-top: 0; }
    
    body.uv-pd2 .product-wrapper:has(.uv-kb) .product-gallery > img.main-image { max-height: 100%; width: 100%; object-fit: contain; min-height: 0; }
}
body.uv-pd2 .uv-kb .uv-kb__form { border-bottom: 0; padding-bottom: 0; }
body.uv-pd2 .uv-kb .card-favorite-btn.uv-kb__fav { border-radius: var(--pd2-r); }
.uv-kb__kort { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-clamp: 2; overflow: hidden; }
.uv-kb__usps { grid-template-rows: repeat(3, minmax(24px, auto)); }
.uv-kb__usps li.is-verborgen, .uv-kb__usps .uv-kb__usp-leeg { visibility: hidden; }
.uv-kb__usps li.is-verborgen { order: 9; } 
@media (max-width: 900px) { .uv-kb__usps li.is-verborgen, .uv-kb__usps .uv-kb__usp-leeg { display: none; } .uv-kb__usps { grid-template-rows: none; } }

.uv-pdk__doosrij--vinkjes li { padding: 8px 14px; gap: 10px; }
.uv-pdk__doosrij--vinkjes .uv-pdk__doosbeeld { width: 22px; height: 22px; }
@media (max-width: 900px) {
    .uv-pdk__doosrij.uv-pdk__doosrij--vinkjes { display: block; }
    .uv-pdk__doosrij.uv-pdk__doosrij--vinkjes li { flex-direction: row; text-align: left; border-left: 0; border-top: 1px solid var(--pd2-rand); font-size: .9rem; padding: 8px 14px; }
}


body.uv-pd2 .uv-galerij--vullen img.main-image { object-fit: cover !important; width: 100%; height: 100%; }


.uv-pdbm__video { align-self: start; }
.uv-pdbm__video .uv-video__privacy { margin-top: 8px; }
