/** Shopify CDN: Minification failed

Line 580:25 Unexpected "gt"

**/
/* ==========================================================================
   Solza kleurtokens (task8)
   --------------------------------------------------------------------------
   Paletlaag op de officiele merkwaarden (Solza 3.0). De waarden hieronder
   zijn per merkbesluit omgezet van de oude theme-waarden (#00214a,
   #f5c500, #efe2d8) naar het officiele palet.

   LET OP — twee plekken: de meeste sectie-achtergronden en knoppen komen
   uit de theme-editor-kleurschema's (Theme settings > Colors, 13 schema's
   die als rgb(var(--color-*)) renderen). Die staan los van deze tokens en
   zijn in dezelfde omzetting meegenomen (config/settings_data.json).
   Een volgende merkbrede kleurwijziging vraagt dus weer beide: dit blok
   EN de schema's.

   Stone en burgundy worden nog nergens in de theme gebruikt en staan hier
   alvast op de officiele merkwaarde.
   ========================================================================== */
:root {
  /* -- paletlaag ------------------------------------------------------- */
  --solza-indigo-blue: #181f3e;
  --solza-indigo-blue-rgb: 24, 31, 62;  /* voor rgba()-afgeleiden */
  --solza-golden-mango: #f2c600;
  --solza-driftwood-cream: #ebe0d3;
  --solza-driftwood-cream-light: #f9f1ed;
  --solza-tuscan-terra: #ed6946;
  --solza-stone: #2e2d2c;              /* nog ongebruikt */
  --solza-burgundy: #741a21;           /* nog ongebruikt */
  --solza-white: #ffffff;

  /* -- semantische laag (verwijst naar het palet) ----------------------- */
  --solza-color-text: var(--solza-indigo-blue);
  --solza-color-accent: var(--solza-golden-mango);        /* alleen kleine merk-signaturen */
  --solza-color-cta: var(--solza-tuscan-terra);
  --solza-color-price-sale: var(--solza-tuscan-terra);
  --solza-color-surface: var(--solza-white);
  --solza-color-surface-warm: var(--solza-driftwood-cream);
  --solza-color-surface-muted: var(--solza-driftwood-cream-light);

  /* -- functionele kleuren (geen merkkleuren, nooit vervangen door palet) */
  --solza-color-border: #e8e8e8;
  --solza-color-text-muted: #5a6b80;
  --solza-color-stock-available: #008500;
  --solza-color-stock-low: var(--solza-golden-mango);
  --solza-color-stock-none: var(--solza-color-text-muted);
}

.m-topbar-section{
  z-index: 90!important;
}

/* -- geen automatische hoofdletters op datawaarden -----------------
   Vendor-CSS zet text-transform: capitalize op drie plekken, wat in
   het Nederlands foute weergaven geeft ("Eiken Naturel", "2,20 M2
   Per Pak", "78 X 201,5 Cm"):
   1. knop-variantopties        (modules.css)
   2. actieve filterpillen      (collection.css, .m-active-facets)
   3. predictive-search-items   (search.css)
   Sitewide teruggezet naar de ruwe datawaarde. De body-prefix geeft
   net iets hogere specificiteit dan de vendor-regels, zodat de
   volgorde van de asynchroon geladen vendor-bestanden niet uitmaakt.
   Vendor-bestanden zelf bewust niet aangeraakt. */
body .m-product-option--button .m-product-option--node__label,
body .m-active-facets__item,
body .m-predictive-search__list-item {
  text-transform: none;
}


/* FOXKIT */
.m-megamenu__navigation-container.m-foxkit-menu-desktop {
  padding-bottom: 26px;
}
.template-product .foxkit-product-bundles__sub-total,
.template-product .foxkit-product-bundles__save-amount {
  font-size: calc(var(--font-h5-desktop) * 1px);
  font-weight: 500;
}
.template-product .foxkit-product-bundles__total-amount {
  font-size: calc(var(--font-base-small-size) * 1px);
}

body .foxkit-product-bundles__total-label {
  color: #000;
}
body .foxkit-product-bundles__sub-total {
  color: #AE5000;
}

body .foxkit-product-bundles__total-amount {
  font-size: 14px;
  margin-right: 0;
}
body .foxkit-card__prices>:not(.foxkit-hidden)+* {
  margin-left: 0;
}
body .foxkit-product-bundles .foxkit-product-card__checkbox-label {
  width: 18px;
  height: 18px;
}
body .foxkit-product-bundles .foxkit-product-card__checkmark:after {
  left: 6px;
  top: 2px;
}
body .foxkit-product-bundles .foxkit-product-card__title {
 font-weight: 500; 
}
body .foxkit-product-bundles .foxkit-product-card__variants {
  align-items: center;
}

/* END FOXKIT */

.m-collection-card__title,
.m-product-card__title,
.m-article-card__title,
.m-price__sale .m-price-item--last,
.m-product-card__tag-name,
.m-header__top .m-icon-text,
.main-product__block .m-product-shipping__title,
.m-product-details-tabs .m-tab-header,
.m-megamenu__toggle,
.m-product-tag {
  font-weight: 500;
}
.m-predictive-search__heading {
  font-family: var(--font-stack-body);
  font-size: var(--font-base-size);
  font-weight: 500;
}
.m-megamenu__toggle {
  --toggle-border-radius: 0;
}

.template-product .m-tabs__header {
  justify-content: start;
}
.template-product .m-product-details-tabs .m-tab-header {
  margin-left: 0;
  margin-right: 80px;
}
.template-product .m-product-details-tabs .m-page-width {
  max-width: 1200px;
}
.m-megamenu__navigation-container {
  padding: 17px 0;
  --menu-item-hover-background: 255, 255, 255;
  --menu-item-hover-background-opacity: 1;
  --box-shadow-value: 0 10px 20px 0;
  --navigation-border-width: 0;
}
.m-megamenu__menu-item {
  --corner-radius: 5px;
}
.m-main-product .main-product__block .product-block-group--price .m-price {
  font-size: 20px;
}
.m-main-product
  .main-product__block
  .product-block-group--price
  .m-price__sale
  .m-price-item--regular {
  font-size: calc(var(--font-base-size, 16) * 1px);
}
.m-collection-page-header__inner .m-collection-page-header__description {
  margin-top: 12px;
}


.m-quantity {
  --color-form-field: var(--solza-white);
}
.m-search-form select {
  --form-field-horizontal-spacing: 17px;
}
.m-search-form__select {
  --form-field-horizontal-spacing: 18px;
  --color-border: 0, 0, 0, 0.1;
}
.m-newsletter-form__wrapper .m-newsletter-form__button {
  padding-right: 12px;
}
.m-breadcrumb {
  --breadcrum-spacing-top: 14px;
}
.m-main-product .main-product__block-title + .main-product__block-rating svg,
.m-product-featured__review svg {
  width: 14px;
  height: 14px;
}
.m-main-product .main-product__block-title + .main-product__block-rating span,
.m-product-featured__review span {
  font-size: 14px;
  color: rgb(var(--color-foreground-secondary));
}
.m-product-tag {
  padding: 6px 10px;
}
.template-product .m-section-apps .m-page-width {
  max-width: 1180px;
  margin: 0 auto;
}

.template-product .m-complementary-products .m-product-card {
  padding: 10px;
}
.m-modal-quickview .m-modal--close svg {
  width: 20px;
  height: 20px;
}
.m-breadcrumb--separator svg {
  color: rgb(var(--color-foreground-secondary));
}
@media (min-width: 768px) {
  .template-product .m-breadcrumb {
    display: none;
  }
  .main-product__block .m-breadcrumb {
    display: block;
  }
  /* SEO-breadcrumb bovenaan de PDP (buiten het main-product-block-systeem
     om, voor volle breedte boven afbeelding/titel): expliciet zichtbaar
     houden ondanks de generieke .template-product-regel hierboven. */
  .solza-breadcrumb-bar .m-breadcrumb {
    display: block;
  }
}

/* PDP-breadcrumbbalk (Solza 3.0): volle-breedte crème balk, strak aansluitend
   op de onderkant van de header. De balk staat bewust buiten de
   m-section--padding van de main-product-sectie (zie main-product.liquid),
   zodat er geen gap ontstaat tussen header en balk -- de bestaande
   sectie-top-padding (48px) zorgt daarna op de normale, al elders gebruikte
   manier voor de ruimte tussen balk en productafbeelding/titel eronder. */
.solza-breadcrumb-bar .m-breadcrumb {
  background: var(--solza-driftwood-cream);
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 12px;
  padding-bottom: 12px;
}

.solza-breadcrumb-bar .m-breadcrumb--wrapper {
  margin-left: 0;
  margin-right: 0;
}

/* 16px = dezelfde padding-left als .solza-header__cat-link (categorierij),
   zodat de ZICHTBARE TEKST van "Home" en "Plak PVC" precies gelijk uitlijnt.
   De onzichtbare box-rand van beide elementen stond al op dezelfde x-positie
   (via .m-page-width + de margin-left:0 hierboven), maar .m-breadcrumb--item
   heeft van zichzelf een kleinere interne padding (8px) dan .solza-header__
   cat-link (16px) -- gecontroleerd via getBoundingClientRect(), niet op het
   oog. Zonder deze regel oogt "Home" 8px naar links verschoven t.o.v.
   "Plak PVC", ook al staan de box-randen zelf wel gelijk. */
.solza-breadcrumb-bar .m-breadcrumb--home {
  padding-left: 16px;
}

.solza-breadcrumb-bar .m-breadcrumb--item {
  color: var(--solza-indigo-blue);
  font-size: 13px;
}

.solza-breadcrumb-bar .m-breadcrumb--item-current {
  color: rgba(var(--solza-indigo-blue-rgb), 0.65);
  font-size: 13px;
}

.solza-breadcrumb-bar .m-breadcrumb--separator svg {
  color: rgba(var(--solza-indigo-blue-rgb), 0.45);
  width: 10px;
  height: 10px;
}
@media (min-width: 1024px) {
  .m-collection-page-header.m-collection-page-header--small {
    padding: 44px 0 80px;
  }
}
.m-custom-newsletter .form-field {
  --form-field-vertical-spacing: 12px;
  --form-field-horizontal-spacing: 16px;
  height: 50px;
  line-height: 50px;
}
.m-footer-widget__info .social-media-links a {
  color: rgb(var(--color-foreground));
}
.m-footer-widget__info .social-media-links a:hover {
  color: rgb(var(--color-foreground-seccondary));
}
@media screen and (max-width: 1279px) {
  .m-header__top {
    border-bottom: 1px solid rgb(var(--color-border));
  }
  .m-collection-page-header.m-collection-page-header--small {
    padding: 24px 0;
  }
  .m-filter-button {
    margin: 0;
  }
}

@media screen and (max-width: 767px) {
  .m-section--padding {
    --min-section-padding-top: 32px;
    --min-section-padding-bottom: 32px;
  }
  .template-product .m-tabs--responsive .m-accordion--item {
    margin-bottom: 0;
  }
  .template-product .m-product-collapsible .m-accordion--item-button {
    padding: 20px 0;
  }
  .m-header__heading--logo-wrapper {
    max-width: 125px;
  }
  .m-collection-page-header__inner {
    text-align: left;
  }
  .m-main-product__info .main-product__block-breadcrumb {
    display: none;
  }
  .m-breadcrumb {
    --breadcrum-spacing-top: 12px;
  }
}



html {
scroll-behavior: smooth;
}

section.sf-header header.bg-white.sf-header__desktop .sf-menu-wrapper__desktop, section.sf-header header.bg-white.sf-header__desktop .sf-menu-logo-bar svg path {
    color: white;
    fill: white!important;
}

.sf-header .sf-menu-item>a:hover {
  color: white !important;
}

@media only screen and (max-width: 767px) {
div.sf-grid div.image-card {
    overflow-x: hidden;
}
}

/* Custom CSS */

/* Topbar CSS */

.sf-topbar {
    border: none;
    background-color: var(--solza-indigo-blue);
    color: white;
}

.sf-topbar .sf__text-link {
    color: white;
}

/* Einde Topbar CSS */

[id$="16225125199f82d8fe"] .section-my {
    padding-top: 15px;
    padding-bottom: 15px;
    margin-bottom: 0;
    margin-top: 0;
}

.sf__font-normal {
    font-weight: 400;
}

[id$="16225316461d1cff80"] .collection-card__info h3 a {
    font-weight: 400;
    font-size: 24px;
    line-height: 34px;
    margin-bottom: 4px;
}

[id$="16225316461d1cff80"] .collection-card__info p {
    color: #666;
}

[id$="16225125199f82d8fe"] .sf-icon-box__text h3 {
    line-height: 26px;
    font-size: 20px;
    font-weight: 500;
}

@media (min-width: 1536px) {
    [id$="1621243260e1af0c20"] .slide__block-title {
        font-size: 100px;
        line-height: 95px;
    }
}

@media (max-width: 576px) {

    [id$="1621243260e1af0c20"] a.sf__mobile-button,
    [id$="162251092958fcda7c"] .sf__btn-primary,
    [id$="162251092958fcda7c"] .sf__btn-secondary {
        width: 100%;
    }

    [id$="16225316461d1cff80"] .section__heading {
        text-align: center;
    }

    [id$="16225316461d1cff80"] .collection-card__info h3 a {
        font-weight: 500;
    }

    [id$="16225316461d1cff80"] .collection-card__info p {
        font-size: 14px;
        line-height: 20px;
    }

    [id$="16225125199f82d8fe"] .sf-icon-box__text h3 {
        font-size: 18px;
        margin-bottom: 2px;
    }
}

.image-card .sf-image,
.collection-card__image {
    border-radius: 4px;
}

[id$="1659076640d132ac34"] .section-my {
    margin-top: 0px !important;
}

.collection-card__info h3 a {
    color: white !important;
}

.sf__pcard-content {
    padding-left: 20px;
    padding-right: 20px;
    padding-bottom: 20px;
    text-align: center;
}

.collection-description {
    margin-bottom: 85px;
}

.collection-description h2 {
    font-size: 32px;
    margin-bottom: 12px;
}

.collection-description h3 {
    font-size: 25px;
    margin-bottom: 12px;
}

.collection-description p {
    margin-bottom: 25px;
}

.collection-description a {
    text-decoration: underline;
}

.search-container {
    background-color: var(--solza-indigo-blue) !important;
    color: white;
}

.flex form {
    color: black;
}

.sf__topbar-inner .sf__custom-select .select-selected,
.sf__topbar-inner .sf__select .select-selected{
    color: white;
}

.sf-header__bg {
    background: var(--solza-indigo-blue) !important;
}

.section__header {
    margin-bottom: 30px;
}

.sf-menu__banner {
    color: white;
}

.collection-header {
    padding-bottom: 0px !important;
}

.section-py {
    padding-top: 50px;
    padding-bottom: 50px;
    margin-bottom: 0px;
}

.section-my {
    padding-top: 50px;
    padding-bottom: 50px;
    margin-bottom: 0px;
}

.imagecardshome {
    margin-top: -40px;
}

.usp-home {
    margin-top: -15px;
    margin-bottom: -15px;
}

.pvchome {
    margin-top: -50px;
    margin-bottom: -25px;
}

.prose :where(table):not(:where([class~=not-prose] *)) {
    font-size: 16px;
}

.f-popup__teaser svg {
    display: none;
}

.prod__sticky-atc .product-samples-button-wrap {
    display: none;
}

.sf__pcard {
    border: 1px solid #efefef;
    padding: 0;
    border-radius: 4px;
}

.main-product__block-visitors {
    margin-top: 0.5rem !important;
}

.usppdp .section-my {
    margin-top: 0px;
    padding-top: 0px;
}

.producteigenschappen {
    background-color: #FBFBFB;
    padding: 8px 15px;
    border-radius: 4px;
    border: 1px solid var(--solza-color-border);
}

.productomschrijving {
    padding: 8px 15px;
}

.pro {
    list-style-image: url(/cdn/shop/files/plus_1.png?v=1662023273);
}

.con {
    list-style-image: url(/cdn/shop/files/minus.png?v=1662023464);
}

.instructievideo {
    margin-bottom: 30px;
}

.sf-header .sf-menu-item&gt;

a:hover {
    color: white;
}

.foxkit-related-products h2,
.sf__blog-post h2 {
    font-size: 30px;
    margin-top: 50px;
    margin-bottom: 25px;
}

.template-product .section-my {
    margin-top: 0;
    margin-bottom: 0;
    padding-top: 0;
    padding-bottom: 0;
}

.productomschrijving h4 {
    font-size: 18px;
}

.newsletter__form-heading h3 {
    font-size: 25px;
    line-height: 1.5;
}

.collection-description ul {
    list-style: disc;
    margin-left: 20px;
    margin-bottom: 20px;
    line-height: 26px;
}

.collection-description ol {
    list-style: decimal;
    margin-left: 20px;
    margin-bottom: 20px;
    line-height: 26px;
}

.prod__tag-hot {
    background-color: #e84118;
}

.prod__tag-new {
    background-color: #8c7ae6;
}

.prod__tag-sale {
    background-color: #44bd32;
}

.productinfo {
    margin-top: 50px;
}

.merkenhome .section-my {
    margin-top: 0px;
    margin-bottom: 0px;
    padding-top: 0px;
    padding-bottom: 0px;
}

.usppdp .sf-column {
    border: 1px dashed #eeeeee;
    padding: 20px;
}



.bannerimageproefmonster .section-my {
    padding: 0px;
    margin-top: 25px;
    margin-bottom: 25px;
}

.proefmonsterstappenplan .section-my {
    padding: 0px;
    margin-top: 50px;
    margin-bottom: 50px;
}

/* Responsive maken productinformatie (custom liquid) */

@media only screen and (max-width: 749px) {
	.custom-liquid .productinfo {
		max-width: 100% !important;
		float: left !important;
		margin-left: 0 !important;
      height: auto !important;
	}
}

@media only screen and (min-width: 768px) {
  .pdptrusted {
    display:none;
  }
}

/* Banner image spacing */

[id$="adb9b6c0-0218-4662-933a-6b64997788ed"] .section-my,
[id$="block--165892180748c3caaa-0"] .section-my,
[id$="c0d25574-05df-4ed1-98d6-bb63449a8e6f"] .section-my,
[id$="549a33b6-20c9-4af9-a25a-460af8858c94"] .section-my,
[id$="6e8ca226-49c2-4291-b270-ae8c5f18b462"] .section-my,
[id$="aeaab871-45a6-422e-b480-6d6f32dafb83"] .section-my,
[id$="176bd292-fdfa-46bb-8655-252f928da179"] .section-my,
[id$="1cdf74c7-6d38-40d5-be62-99b1fe552b3c"] .section-my,
[id$="144ac864-eefe-4eca-858a-e11732c28088"] .section-my,
[id$="168c67fa-424c-4c6d-9f4b-182b8ce3c872"] .section-my,
[id$="1faaa987-f3ab-45d4-929b-74dafcba6dae"] .section-my,
[id$="16599608331e948206"] .section-my,
[id$="16589253244b79068d"] .section-my,
[id$="block--165892180748c3caaa-0"] .section-my,
[id$="aeaab871-45a6-422e-b480-6d6f32dafb83"] .section-my,
[id$="1eb01f95-a44e-4954-8ec6-9630a610eab7"] .section-my,
[id$="d2b6183a-06c3-4b48-b113-77ab22cbe073"] .section-my,
[id$="422c4cce-bd6e-4d22-9e81-b2abf4ca9b5f"] .section-my,
[id$="8ba0ded7-c14b-4c86-93e1-b5a083b5499b"] .section-my,
[id$="46a8e8a6-d782-4858-88ce-cff784cc5e1b"] .section-my {
  margin-top: 50px;
  padding-top: 0px;
}

[id$="878a46cf-5e44-40af-a8f4-cbe94d7c3aef"] .section-my, 
[id$="1b1eeb8e-13e8-4f02-9894-493a8a583783"] .section-my, 
[id$="aa3cf38e-c781-44b2-bdc2-3a3a7b2bbcd0"] .section-my, 
[id$="8f3c19cd-b1dd-4122-9271-3c62edb9d651"] .section-my {
  margin-top: 0px;
  padding-top: 0px;
}


/* Showroom page */

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

}

[id$="block--ff40492a-d876-4eaa-9d3d-2f7a4add66b7"],
[id$="block--c45a56a9-6185-4cfd-a13a-21b16d6dc3b5"],
[id$="block--66ab6aca-6faf-433e-95f4-77b2a7222bc8"],
[id$="block--8ebb3b86-ffa2-4985-b47d-e8efc6a61eec"] {
  padding: 10px !important;
}

[id$="16279103176929__main"] .sf__page-header {
  display: none;
}

[id$="16279103176929__main"] h1 {
  font-size: 33px;
}

/* Searchbar*/

.m-search-wrapper .text-\[\#666\] {
  color: white !important;
}
.m-search-wrapper .text-\[\#999\] {
  color: white !important;
}
.m-search-item .text-color-regular-price {
  color: #009900 !important;
}

/* Product reviews */

.spr-icon-star {
  color: var(--solza-golden-mango) !important;
}

.spr-review-reportreview {
  display: none !important;
}

#shopify-product-reviews {
  border: 1px solid var(--solza-color-border) !important;
  background: #fbfbfb !important;
}

/* usp's header home */

[id$="1f5bb540-ac35-4b15-975c-1693ed5de560"] .section-my {
  padding-top: 0px !important;
  margin-top: 15px !important;
  padding-bottom: 15px;
}

[id$="1f5bb540-ac35-4b15-975c-1693ed5de560"] .section-my p {
  color: #333333;
  font-size: 13px;
  font-weight: 400;
}

/* verstoppen op telefoon */

@media only screen and (max-width: 749px) {
  .hide-on-mobile {
    display:none;
  }
}


/* CART */

.sf-cart__summary {
  width: 600px;
  background: #fbfbfb;
  border: 1px solid var(--solza-color-border);
  margin-right: 0px;
  padding-bottom: 15px;
  padding-top: 15px;
  margin-top: 15px;
}

.sf-cart__table-head {
  background: #fbfbfb;
  border: 1px solid var(--solza-color-border);
  padding-left: 15px;
  padding-right: 15px;
  border-radius: 5px;
}

.paymenticonsincart {
  padding-top: 15px;
  padding-bottom: 15px;
}

[id$="16279103078625__main"] .page-header__breadcrumb {
  display:none;
}

[id$="16279103078625__main"] .page-header {
  padding-bottom: 1rem;
}

.sf-cart .f-incart {
  overflow: hidden;
}

.f-incart {
  background: #fbfbfb !important;
  border: 1px solid var(--solza-color-border) !important;
}

.scd__items {
  padding-left: 5px;
  padding-right: 5px;
}

.sf-cart__item-product-image {
  border-radius: 5px;
}

[id$="block-7ca74538-a1c8-42b4-8ee0-ec16319d9275"] {
    border: 1px solid var(--solza-color-border) !important;
    background: #fbfbfb !important;
}

.simpAsk-container {
  padding: 0px 30px 0px 30px !important;
}

#simpAskQuestion {
  margin: 0px auto 0;
}
#shopify-product-reviews {
  margin: 0 !important;
}

/***** uitlichten van product binnen een blog of andere tekst *****/

.uitlichten {
        max-width:1400px; /* formaat container op smartbright.nl */
        font-family:Poppins, Arial;
        font-size:14px;
        padding:30px;
        background-color:var(--solza-white);
        border-radius:6px;
        box-shadow:2px 2px 50px rgba(38, 63, 77, 0.1);
    }
    .uitlichten:hover {
        box-shadow:2px 2px 50px rgba(38, 63, 77, 0.2);
    }
    .uitlichten a {
        color:#48CFB0;
        text-decoration:none;
    }
    /* kolommen bepalen */  
    .uitlichten .uitlichtenLinkerkant {
        position: relative;
        float:left;
        width:40%;
    }
    .uitlichten .uitlichtenRechterkant {
        float:left;
        width:60%;
    }
    /* linkerkolom */
    .uitlichtenLinkerkant a {
        display:block;
        height:250px;
        overflow:hidden;
    }
    .uitlichtenLinkerkant img {
        width:90%;
        position:relative;
        top:50%;
        -webkit-transform:translateY(-50%);
        -ms-transform:translateY(-50%);
        transform:translateY(-50%);
    }
    .uitlichtenLinkerkant .label {
        align-items:center;
        background-color:#e84118;
        border-radius:50%;
        box-shadow:2px 4px 10px rgba(0,0,0,0.1);
        color:var(--solza-white);
        display:flex;
        flex-direction:column;
		font-weight:600;
        height:93px;
        justify-content:center;
        left:-20px;
        position:absolute;
        top:-20px;
        width:93px;
        z-index:1;
    }
       /* rechterkolom */
    .uitlichtenRechterkant h4 {
        font-size:16px;
        font-weight:600;
    }
    .uitlichtenRechterkant p {
        padding-bottom:20px;
        margin:0px;
    }
    .uitlichtenRechterkant .knop {
        align:center;
        font-size:14px;
        background-color:#009900;
        border-radius:3px;
        box-shadow:-1px 4px 4px rgba(0,0,0,0.08);
        color:var(--solza-white);
        font-weight:600;
        padding:13px 13px;
        text-decoration:none;
    }
    .uitlichtenRechterkant .knop:hover {
        background-color:#d95912;
    }
    .uitlichtenRechterkant .uitlichtenPrice {
        padding-bottom:30px;
    }
    .uitlichtenRechterkant .uitlichtenFromPrice {
        text-decoration:line-through;
        color:#ED5565;
        font-weight:normal; 
    }
    .uitlichtenRechterkant .uitlichtenNewPrice {
        color:#ED5565;
        font-weight:bold;
        padding-bottom:30px; 
    }
    /* clear in all cases */ /* geen default naam, om conflicten te voorkomen */
    .clearDezeBox::after {
        content:"";
        clear:both;
        display:table;
    }
    /* vouwen op kleine schermen */
    @media screen and (max-width: 768px) {
        .uitlichtenRechterkant .knop {display:block;}
        .uitlichten .uitlichtenLinkerkant, .uitlichten .uitlichtenRechterkant {width:100%;}
    }
/***** einde van uitlichten van product binnen een blog of andere tekst *****/


/* slider en blokken homepage */

[id$="4025b4b5-eabb-449e-8fde-47b7ba0b3f95"] {
  border-radius: 3px;
}

[id$="87ecbdc4-e567-467e-86e9-bd1fdc20a159"] .section-my {
  margin-top: 25px;
  padding-top: 0px;
}


[id$="54a04881-7894-4aa5-99aa-f3bc86a1de7c"] .section-py,
[id$="166339775124b39cea"] .section-my {
  margin-top: 0;
  padding-top: 20px;
  padding-bottom: 20px;
  background-color: var(--solza-indigo-blue);
  Border-radius: 5px;
  margin-bottom: 25px;
}

[id$="0cc87996-9798-49b6-bf61-882a154c3a61"] .section-my,
[id$="166339775124b39cea"] .section-my {
  margin-top: 25px;
  padding-top: 0;
  margin-bottom: 25px;
  padding-bottom: 0;
}

[id$="1d7b8afc-e292-4e93-8a8f-d7b8c29ff884"] .section-my {
  margin-bottom: 50px;
  margin-top: 30px;
}

[id$="1d7b8afc-e292-4e93-8a8f-d7b8c29ff884"] .section-my {
  margin-top: 40px;
  margin-bottom: 60px;
}

#shopify-section-template--16732895543521__16225125199f82d8fe {
  margin-bottom: 50px;
}

#shopify-section-template--16732895215841__collection-header .collection-header {
  padding-bottom:0px;
}

#shopify-section-template--16746607280353__7eb3bb1a-90c8-4f81-8c45-c4ed3322a03d .section-my, 
#shopify-section-template--16746607280353__6db8488e-95e0-42a8-af46-dad9afa2aa6f .section-my, 
#shopify-section-template--16746607280353__eeab0a0b-b427-4db1-bb47-2afef390bea1 .section-my, 
#shopify-section-template--16746607280353__efe55890-a92a-41d7-85cb-5b617818079f .section-my,
#shopify-section-template--16746852712673__7eb3bb1a-90c8-4f81-8c45-c4ed3322a03d .section-my,
#shopify-section-template--16746852712673__6db8488e-95e0-42a8-af46-dad9afa2aa6f .section-my,
#shopify-section-template--16746852712673__3cea5bf1-e6ae-4521-b410-d62751dc2781 .section-my,
#shopify-section-template--16746852712673__eeab0a0b-b427-4db1-bb47-2afef390bea1 .section-my,
#shopify-section-template--16746852712673__efe55890-a92a-41d7-85cb-5b617818079f .section-my,
#shopify-section-template--16746852712673__e81bb2cb-3e80-4bc7-af3c-4ed51b751e9c .section-my {
  padding-top: 0px;
  margin-top: 20px;
}


.m-custom-content__block-liquid a {
  text-decoration: underline;
  color: #333333;
}

.collection-header__title {
  font-family: poppins;
  color: var(--solza-indigo-blue) !important;
  text-transform: none;
  font-weight: 800;
}

.m-collection-page-header__title {
  font-family: Poppins;
  color: var(--solza-indigo-blue) !important;
  text-transform: none;
  font-weight: 800;
}

.m-collection-page-header__title:after{
  color: var(--solza-golden-mango);
  content: ".";
}

.collection-header__title:after{
  color: var(--solza-golden-mango);
  content: ".";
}

.sf__sidebar-content h3 {
  font-family: poppins;
  color: var(--solza-indigo-blue) !important;
  text-transform: none;
  font-size: 21px;
}

.flex--language {
  width: max-content !important;
}

.flex.items-center.flex--language > div,
.flex.items-center.flex--language select {
  width: 100%;
  font-size: 26px;
}

.sf__select .select-arrow svg {
  height: 8px;
  width: 8px;
}

.sf__select {
  line-height: 30px;
  position: relative;
}

.sf__select .select-selected > div.active {
  align-items: center;
  cursor: pointer;
  display: flex;
  gap: 5px;
  font-size: 15px;
  font-weight: inherit;
  justify-content: space-around;
  -webkit-user-select: none;
  user-select: none;
}

.sf__select .select-item {
  background-color: var(--solza-white);
  border-radius: 5px;
  box-shadow: 0 20px 30px rgba(0,0,0,.12);
  color: #757575;
  left: 0;
  line-height: 32px;
  max-height: 60vh;
  min-width: 100%;
  opacity: 0;
  padding: 10px;
  position: absolute;
  right: 0;
  top: calc(100% + 20px);
  visibility: hidden;
  transition: all .2s ease-in-out;
  width: max-content;
  z-index: 80;
}

.sf__select .select-item > div {
  max-width: 250px;
  overflow: hidden;
  text-overflow: ellipsis;
}

.sf__select .select-item > div > a {
  display: flex;
  gap: 5px;
  margin-bottom: 1rem;
  font-size: 15px;
}

.sf__select .select-item.select-show {
  opacity: 1;
  top: 100%;
  transform: translateZ(0);
  visibility: visible;
}

.sf__select img {
  max-height: 30px;
  object-fit: cover;
}

.select-selected > div {
  display: none;
}

.select-selected > div.active {
  display: block;
}

@media screen and (max-width: 767px) {
  div#language-selector-mob {
    right: 0 !important;
    left: unset !important;
  }
  .mobile--wrapper {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1rem;
  }
  .mobile--wrapper > div {
    margin: 0;
  }
  .language--selector {
    max-width: max-content;
    margin: 1rem;
  }

  .sf__select .select-selected {
    gap: 10px;
  }
}

/* call to action team */

#sf-custom-template--18429074702668__19199470-b1c9-4a2f-9b6d-43ff699f85f5 .section-py {
  padding-bottom: 0;
  background-color: var(--solza-golden-mango);
  border-radius: 10px;
  background-image: url('/cdn/shop/files/visgraat_blue_transparant.png?v=1669898800');
  background-size: contain;
  background-repeat: repeat-x;
  background-position: center;
}

#sf-custom-template--18429074702668__19199470-b1c9-4a2f-9b6d-43ff699f85f5 .section-py img {
  width: 450px;
  height: auto;
  margin-left: auto;
  margin-right: auto;
}

#sf-custom-template--18429074702668__19199470-b1c9-4a2f-9b6d-43ff699f85f5 .section-py .sf-image {
  max-height:435px;
}

#sf-custom-template--18429074702668__19199470-b1c9-4a2f-9b6d-43ff699f85f5 .section-py h3 {
  color: #1B3359;
  font-family: poppins;
  font-weight: 700;
  margin-bottom: 10px;
}

#sf-custom-template--18429074702668__19199470-b1c9-4a2f-9b6d-43ff699f85f5 .section-py p {
  color: #1B3359;
}

.ctateambuttons {
  padding-left:50px;
  padding-right:50px;
  text-align:center;
}

.secondarybuttonsproduct {
  color: white; 
  background-color:#1B3359;
  border-color:#1B3359;
  margin-top:15px;
  text-decoration: none;
  margin-bottom: 0;
  width: 85%;
  margin-left: auto;
  margin-right: auto;
  border-radius: 5px;
}

.secondarybuttonsproduct a {
  width: 100%;
  color: white !important; 
  background-color:#1B3359!important;
  border-color:#1B3359!important;
  text-decoration: none;
}

@media only screen and (max-width: 749px) {
	.secondarybuttonsproduct {
      width: 100%;
    }
    #sf-custom-template--18429074702668__19199470-b1c9-4a2f-9b6d-43ff699f85f5 .section-py {
      background-repeat: repeat-y;
    }
    .ctateambuttons {
      padding-left:25px;
      padding-right:25px;
    }
}

/* product pagina */

.prod__title h1 {
  color: #000000;
  font-family: poppins;
  font-weight: 800;
}


/* collections > intro + keuzehulp */

.introwithkeuzehulp {
  font-family: poppins !important;
  font-size: 15px !important;
}

@media (min-width: 768px){
.introwithkeuzehulp {
  width: 75% !important;
  max-width:75% !important;
  padding-top:20px;
  padding-right:20px;
  padding-bottom:20px;
  padding-left:0px;
}
}

@media only screen and (max-width: 749px) {
.introwithkeuzehulp {
  margin-bottom:30px;
}
}

/* Remove local pickup information */ 
  .product__pickup-availabilities {
    display: none !important;
  }
/* end */



.rfq-btn-0 {
  width: 100%;
}

.productinfo {
  font-family: 'Poppins';
}

.productinfo li {
  font-size: 15px;
  padding-left: 0.375em;
  margin-bottom: 0.5em;
  margin-top: 0.5em;
}

.productinfo ul {
  list-style: disc;
  padding-left: 20px;
}

.prose p {
  margin-bottom: 0.75em;
  margin-top: 0.75em;
  line-height: 26.25px !important;
}

.productinfo p {
  font-size: 15px;
}

.productinfo h2 {
  font-family: 'Poppins';
  font-size: 21px;
  font-weight: 600;
  color: var(--solza-indigo-blue);
  margin-bottom: 0.85em;
  margin-top: 1em;
}

.productinfo h3 {
    color: var(--solza-indigo-blue);
    margin-bottom: 0.85em;
    margin-top: 1em;
    font-size: 18px;
    font-weight: 600;
}

.producteigenschappen td {
  font-size: 15px;
}

#sf__icon-box-template--18429074702668__16618577290df7916a h3 {
  font-size: 17px;
}

/* Product alternative colours */ 

.product-alt-colours img {
  border-radius: 5px;
  width: 60px;
  border: 1px solid transparent;
  transition: all .4s ease-in-out 0s;
}

.product-alt-colours a {
  display: inline-block;
  padding: 3px;
  border-radius: 5px;
  border: 1px solid transparent;
}

.product-alt-colours a:hover {
  border: 1px solid var(--solza-indigo-blue);
  transition: all .4s ease-in-out 0s;
}

/* end */

.spr-stars {
  display:none;
}

#shopify-section-template--18429071655244__022f4beb-cee2-4d69-af3a-d3e059b9fa52 .section-my, #shopify-section-template--18429071655244__6cdc05a6-06aa-4336-92ce-cb913c00058b .section-my, #shopify-section-template--18955115135308__bc936a06-f42e-4ced-9821-6ad5520bbd8a .section-my, #sf-custom-template--18429073391948__3753b2aa-982d-4d00-b7c0-de7c198a7d8f .section-my, #sf-custom-template--18429073391948__c57b8b15-c6e5-4b88-a9ec-48d82e8fb792 .section-my, #shopify-section-template--18429071786316__bba574a1-fd15-413f-a41a-4919716c9cc8 .section-my, #shopify-section-template--18429071786316__2ad80748-680a-4801-ad80-f91ccf1bb6dc .section-my, #shopify-section-template--18429071786316__custom-content .section-my, #shopify-section-template--18429073981772__34d33011-e86e-4ad7-9124-55de60e5aaba .section-my, #shopify-section-template--18429073293644__33547f88-247b-4e41-9774-b86a78b81387 .section-my, #shopify-section-template--18429073293644__372cccc3-e379-4eb2-ac21-c744ed2f36dd .section-my {
  padding-top: 0px !important;
  margin-top: 50px !important;
}

#sf__featured-product-template--18429071655244__f4da057f-eb3a-429d-b4fa-7dccd9d7dd73 .section-my {
  box-shadow: 5px 5px #efefefab;
    padding: 40px;
    margin-top: 20px;
    margin-bottom: 50px;
    background-color: #efefef4a;
    border-radius: 25px;
}

.sf__page-blog-single-post h4 {
  font-size: 17px;
}

.sf-cart__buttons-container .additional-checkout-buttons {
  display:none !important;
}

/* EXPERT REVIEW */

.persona-image img {
    width: 170px;
    height: 170px;
    border-radius: 50%;
    float: right;
    margin-left: 35px;
    margin-bottom: 35px;
    margin-top: 35px;
    border: 3px solid var(--solza-golden-mango);
}

.persona-title h2 {
  font-family: 'Poppins';
  font-size: 23px;
  font-weight: 600;
}

@media only screen and (max-width: 749px) {
  .persona-image img {
    margin-left: 0px;
  }
}

/* END EXPERT REVIEW */

.sf__page-blog-single-post article {
  width: 100%;
}

/* Bijbehorende producten */

.sample-section {
    margin-top: 15px;
    margin-bottom: 30px;
}

.sample-section h2{
    color: black;
    font-size: 22px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 0.085px;
}

.sample-button-image img {
  float:left !important;
  margin-right: 20px;
  margin-top: 0px;
  margin-bottom: 0px;
}

.sample-button-title {
    color: black;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

.sample-button-info {
    color: black;
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
}

.sample-button-info span {
    color: black;
    font-style: normal;
    font-weight: 400;
    font-size: 13px;
    line-height: normal;
    opacity: .65;
}

.sample-button .product-form__add-button {
    border-radius: 3px;
    background: var(--shopify-editor-setting-color_btn_bg, #009900);
    display: flex;
    width: 40px;
    height: 40px;
    padding: 0px 13px 0px 10px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.sample-buttons-wrapper form {
    width: 100%;
}

.sample-buttons-wrapper {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    align-self: stretch;
}

.sample-button .title {
    flex-grow: 1;
}

.sample-button .title a {
    text-decoration: none;
}

.sample-button {
    width: 100%;
    display: flex;
    padding: 15px 20px;
    align-items: center;
    gap: 25px;
    border-radius: 5px;
    border: 1px solid rgba(33, 71, 88, 0.10);
    justify-content: space-between;
    background-color: white;
}

@media only screen and (max-width: 580px) {
  .form__input-wrapper {
    display:none;
  }
}

.bijbehorende-producten {

}  
.tab-customize {
  overflow: hidden;
}
.tab-customize h2 {
    font-family: 'Poppins';
    font-size: 20px;
    font-weight: 600;
}
.tab-customize button {
  background-color: inherit;
  float: left;
  border: none;
  outline: none;
  cursor: pointer;
  padding: 6px 10px;
  margin-right: 4px;
  transition: 0.5s;
  font-size: 14px;
  border-radius: 5px;
  border: 1px solid rgba(33, 71, 88, 0.10);
}
.tab-customize button:hover {
  background: #fbfbfb;
  border: 1px solid var(--solza-indigo-blue);
}
.tab-customize button.active {
  border-radius: 5px;
  border: 2px solid var(--solza-indigo-blue);
  background: var(--solza-indigo-blue);
  color: white;
  font-weight: 600px;
  font-family:poppins;
}
.tabcontent-cus {
  display: none;
  border-top: none;
}

.sf-pqv .prod__option-label:after {
  content: "Aantal";
}

.bijbehorende-producten-alles-link {
  text-align: center;
  padding: 20px;
}

#shopify-section-template--19561900179788__b74145e3-2443-4088-b45b-5975726ee2c0 {
  background-color: #FBFBFB;
  padding-top: 1px;
}

#shopify-section-template--19561900179788__e6cff22f-8090-4b4d-b1b4-b5fd75323cd0 {
  padding: 20px;
  border-top: 2px dashed #efefef;
}

@media only screen and (max-width: 749px) {
  #shopify-section-template--19561900179788__e6cff22f-8090-4b4d-b1b4-b5fd75323cd0 {
    display:none;
  }
}

.containerbijbehorend a {
  text-decoration:none;
  color: var(--solza-indigo-blue);
}

/* Einde bijbehorende producten */


.scd-item__remove {
  display:none;
}

.colorswatchpdp {
  border: 1px dashed rgba(33, 71, 88, 0.10);
  border-radius: 5px;
  padding: 10px 20px 10px 20px;
  background: #FBFBFB;
}

/* Retouren */

#sf__icon-box-template--18429073850700__874fd97e-f442-4587-bd53-e8adb2bcf3ec {
  padding: 50px;
}

#shopify-section-template--18429073850700__main {
  margin-top: 75px;
  margin-bottom: 75px;
}

#shopify-section-template--18429073850700__7da7cb16-ca65-4089-87e7-d8f132ccf140 {
  padding: 50px;
  background-color: #fbfbfb;
  margin-bottom: -5em;
}

#sf-custom-template--18429074080076__custom_content_new8TE .section-my {
  padding-top: 0px;
  margin-top: 0px;
}

.price-calculator sup {
  color: inherit;
}

.m-add-to-cart {
  background-color: #009900 !important; 
  border-bottom: 2px solid rgb(27 114 10);
}

.m-add-to-cart:hover {
  border: none;
}

.product-card-form .m-add-to-cart {
  background-color: var(--solza-white) !important; 
}

#search-product-type {
  color: black !important;
}

.m-product-description {
  color: black !important;
}

.our-price {
  font-weight: 700;
}

.m-footer-widget__title {
  font-weight: 700;
}

.m-video-hero__content {
  color: white !important;
}

.m-video-hero__content h2 {
 color: white !important;
}

.handpicked-products__wrapper {
  margin-bottom: 20px !important;
}

.m-wishlist-count, .m-compare-count, .m-cart-count {
  width: 18px !important;
  height: 18px !important;
  background-color: var(--solza-golden-mango) !important;
  min-width: 18px !important;
  font-weight: 700;
}

.f-menu__item--dropdown .f-menu__link--level-2 {
  font-weight: 700 !important;
}

.price-calculator { width: 100%; }
.price-calculator tr { border-bottom: 1px solid var(--solza-color-border); }
.price-calculator tr:last-child { border-bottom: none; }
.price-calculator tr td { padding: 10px 0; }

.dynamic-checkout__content {
  display:none;
}

.m-image-card__content-main h2, .m-image-card__content-main p {
  color: white !important;
}

.m-menu-drawer__utility-links img {
  display:none;
}

#shopify-section-template--20663330996556__custom_liquid_4hpLXT {
  background: #FBFBFB;
  padding-bottom: 25px;
}

.m-hero-section__content-heading, .m-hero-section__content-description {
  color: white !important;
}

.m-hero-section__container {
  padding-top: 30px;
}

.m-hero-section__container img {
  border-radius: 5px;
}

.m-cart__shipping-note {
  font-size: small;
}

/* Solza 2.0 Blog */

.m-article__title {
  color: var(--solza-indigo-blue) !important;
}

.m-article__content h2 {
  font-size: 24px !important;
  color: var(--solza-indigo-blue) !important;
}

.m-article__content h3 {
  font-size: 22px !important;
  color: var(--solza-indigo-blue) !important;
}

.m-article__content h4 {
  font-size: 20px !important;
  color: var(--solza-indigo-blue) !important;
}

.m-article__content h5 {
  font-size: 20px !important;
  color: var(--solza-indigo-blue) !important;
}

.m-article__content h6 {
  font-size: 20px !important;
  color: var(--solza-indigo-blue) !important;
}

.m-article__content a {
  text-decoration: underline;
  color: var(--solza-indigo-blue) !important;
}

.m-article__boxed td {
  border: 1px solid #efefef;
}

.m-button--primary:hover {
  border: none !important;
}

#m-custom-template--21614782742860__custom_content_Eafh7U {
  padding-bottom:0;
}

/* Trustbadge */

#trustbadge-container-98e3dadd90eb493088abdc5597a70810 {
  z-index: 99!important;
}

.m-product-quickview__footer .m-add-to-cart--text {
  color: white;
}


/* Brandpage */

.blog-border {
  border: 1px solid rgb(var(--color-border));
  padding: 20px;
  border-radius: 5px;
  background-color: white;
}

.m-testimonial__description p {
  font-size: 16px;
}

.greyscale-background {
  background-color: #efefef4f;
}

/* Header zoekbalk: pill-vorm (alleen header, niet de losse /search-pagina) */
.m-header__search .m-search-form__wrapper,
.m-search-modal .m-search-form__wrapper {
  border-radius: 999px;
}

.m-header__search .m-search__input,
.m-search-modal .m-search__input {
  border-radius: 999px;
}

/* Fix: voorkomt korte flash van rechte hoeken bij de zoom/fade-in-animatie
   van galerijafbeeldingen (mZoomFadeSmall) tijdens het wisselen van slides.
   Dwingt de afgeronde/geclipte laag vooraf op zijn eigen compositing-laag,
   zodat Chromium/WebKit die niet pas bij de start van de animatie hoeft
   te promoten (wat de korte "vierkante hoek"-flash veroorzaakt). */
.m-image--rounded {
  transform: translateZ(0);
  will-change: transform;
}

/* "Handig om te weten" homepage-blogblok (Solza 3.0-huisstijl): elke kaart
   krijgt een eigen witte ondergrond met zachte hoeken i.p.v. los te zweven
   op de crème sectie-achtergrond. Scoped op de "blogs"-custom-class (op de
   parent-template gezet, dus geerfd door alle marktvarianten die dit niet
   zelf overschrijven), niet op section.id -- die bevat een template-specifiek
   nummer dat per context-json verschilt. */
.m-blog-grid.blogs .m-article-card {
  background: var(--solza-white);
  border: 1px solid var(--solza-driftwood-cream);
  border-radius: 12px;
  overflow: hidden;
}

.m-blog-grid.blogs .m-article-card__content {
  padding: 20px;
}

.m-blog-grid.blogs .m-article-card__readmore {
  color: var(--solza-tuscan-terra);
  font-weight: 700;
  text-decoration: none;
}

.m-blog-grid.blogs .m-article-card__readmore:hover {
  color: var(--solza-tuscan-terra);
  opacity: 0.8;
}

.m-blog-grid.blogs .m-article-card__readmore::after {
  content: " \2192";
}

/* Collectie-intro-kaart: omkaderd blok met titel+USP's, tekst en
   subcollectie-slider. Vervangt de eerdere losse .solza-collection-intro-
   en .solza-subcollections-versies volledig. */
.solza-collection-card {
  background: var(--solza-white);
  border: 1px solid var(--solza-driftwood-cream);
  border-radius: 14px;
  padding: 26px;
  margin: 24px 0;
}

@media (max-width: 767px) {
  .solza-collection-card {
    padding: 18px;
  }
}

.solza-collection-card__row1 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px 24px;
}

.solza-collection-card__title {
  margin: 0;
}

.solza-collection-card__usps {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 20px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.solza-collection-card__usps li {
  position: relative;
  padding-left: 22px;
  color: var(--solza-indigo-blue);
  font-size: 13px;
  font-weight: 600;
  white-space: nowrap;
}

.solza-collection-card__usps li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 15px;
  height: 15px;
  border-radius: 50%;
  background-color: var(--solza-tuscan-terra);
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23fff' d='M6.4 11.2 3.2 8l-1.2 1.2L6.4 13.6l8-8L13.2 4.4z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23fff' d='M6.4 11.2 3.2 8l-1.2 1.2L6.4 13.6l8-8L13.2 4.4z'/%3E%3C/svg%3E");
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}

.solza-collection-card__intro {
  margin-top: 20px;
}

.solza-collection-card__text {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  color: var(--solza-indigo-blue);
  font-size: 14px;
  line-height: 1.6;
}

.solza-collection-card__text.is-expanded {
  display: block;
  -webkit-line-clamp: unset;
  overflow: visible;
}

.solza-collection-card__text a {
  color: var(--solza-indigo-blue);
  text-decoration: underline;
}

.solza-collection-card__toggle {
  display: inline-block;
  margin-top: 8px;
  padding: 0;
  border: 0;
  background: none;
  color: var(--solza-indigo-blue);
  font-size: 14px;
  font-weight: 700;
  text-decoration: underline;
  cursor: pointer;
}

.solza-collection-card__toggle:hover {
  opacity: 0.75;
}

.solza-collection-card__slider-wrap {
  position: relative;
  margin-top: 24px;
}

.solza-collection-card__slider {
  display: flex;
  gap: 16px;
  list-style: none;
  margin: 0;
  padding: 4px 2px 4px;
  overflow-x: auto;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  -webkit-mask-image: linear-gradient(to right, #000 calc(100% - 50px), transparent 100%);
  mask-image: linear-gradient(to right, #000 calc(100% - 50px), transparent 100%);
}

.solza-collection-card__slider::-webkit-scrollbar {
  display: none;
}

.solza-collection-card__subitem {
  flex: 0 0 auto;
  width: 150px;
}

.solza-collection-card__subcard {
  display: block;
  text-decoration: none;
}

.solza-collection-card__subcard-image {
  display: block;
  width: 150px;
  height: 150px;
  border: 1px solid var(--solza-driftwood-cream);
  border-radius: 12px;
  overflow: hidden;
  background: var(--solza-driftwood-cream-light);
}

.solza-collection-card__subcard-image img,
.solza-collection-card__subcard-placeholder {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.solza-collection-card__subcard-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-top: 10px;
}

.solza-collection-card__subcard-name {
  color: var(--solza-indigo-blue);
  font-size: 13px;
  font-weight: 600;
  line-height: 1.3;
}

.solza-collection-card__subcard-arrow {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  border: 1px solid var(--solza-indigo-blue);
  color: var(--solza-indigo-blue);
  transition: background-color 0.15s, color 0.15s;
}

.solza-collection-card__subcard:hover .solza-collection-card__subcard-arrow {
  background-color: var(--solza-indigo-blue);
  color: var(--solza-white);
}

/* Mobiel (<768px): compacte pil i.p.v. de fotokaart -- klein rond beeld +
   naam ernaast, i.p.v. een 150px-brede kaart die op een telefoonscherm te
   veel ruimte inneemt. De naam mag nooit met ellipsis worden afgekapt (dat
   was het probleem bij de eerder afgewezen pil-variant): geen nowrap/
   text-overflow, gewoon laten omlopen. Getest met de langste voorkomende
   naam ("Landhuis plak PVC (extra breed)", 32 tekens) op 375/390px --
   past ruim binnen 2 regels op de gekozen pil-breedte. */
@media (max-width: 767px) {
  .solza-collection-card__subitem {
    width: 200px;
  }

  .solza-collection-card__subcard {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 10px;
  }

  .solza-collection-card__subcard-image {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    flex: 0 0 auto;
  }

  .solza-collection-card__subcard-footer {
    margin-top: 0;
    justify-content: flex-start;
  }

  .solza-collection-card__subcard-name {
    white-space: normal;
    overflow-wrap: break-word;
  }

  .solza-collection-card__subcard-arrow {
    display: none;
  }
}

.solza-collection-card__nav {
  display: none;
}

@media (min-width: 1024px) {
  .solza-collection-card__nav {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 64px;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    border: 1px solid var(--solza-driftwood-cream);
    background: var(--solza-white);
    color: var(--solza-indigo-blue);
    cursor: pointer;
    z-index: 2;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
  }

  .solza-collection-card__nav--prev {
    left: -16px;
  }

  .solza-collection-card__nav--next {
    right: -16px;
  }
}

/* USP's vallen volledig weg op mobiel -- alleen de titel blijft op de regel
   staan die op desktop titel+USP's samen deelt. Introtekst en subcollectie-
   slider blijven ongewijzigd zichtbaar. Bewust helemaal onderaan het
   collectie-kaart-CSS-blok geplaatst: bij gelijke specificiteit wint de
   LAATST gedefinieerde regel, dus een override eerder in het bestand (voor
   de kale .solza-collection-card__usps { display:flex }-regel) zou hier
   geen effect hebben gehad. */
@media (max-width: 767px) {
  .solza-collection-card__usps {
    display: none;
  }
}

/* ============================================================
   Productkaart (herindeling 2026-07-30):
   links uitgelijnde kaart met hairline-rand: merklink, titel (max
   2 regels), Loox-sterren, kleurswatches, spec-bullets,
   voorraadstatus en een onderaan verankerd prijsblok met de
   actiepill eronder. Tekstgroottes per breakpoint via
   CSS-variabelen met EEN media query -- bijstellen kan op één
   plek. Gereserveerde ruimte uitsluitend binnen het prijsblok
   (doorgehaalde prijs + actieregel), altijd via min-height, nooit
   vaste hoogtes. Scoped op --view-grid zodat de lijstweergave
   (complementary) ongemoeid blijft. Hoekafronding 5px =
   bestaande theme-waarde (gemeten). */

.m-product-card--view-grid.m-product-card--style-1 {
  /* Desktop/tablet-waarden (>= 600px) */
  --pcard-title-fs: 16px;
  --pcard-bullet-fs: 13.5px;
  --pcard-status-fs: 13px;
  --pcard-price-fs: 18px;
  --pcard-was-fs: 13px;
  --pcard-brand-fs: 12px;
  --pcard-stars-fs: 13px;
  --pcard-action-fs: 12px;
  --pcard-dot: 8px;
  --pcard-swatch: 16px;

  display: flex;
  flex-direction: column;
  height: 100%;
  background: var(--solza-white);
  border: 1px solid var(--solza-color-border);
  border-radius: 5px;
  overflow: hidden;
}

@media (max-width: 599px) {
  .m-product-card--view-grid.m-product-card--style-1 {
    --pcard-title-fs: 14px;
    --pcard-bullet-fs: 12px;
    --pcard-status-fs: 12px;
    --pcard-price-fs: 16px;
    --pcard-was-fs: 12px;
    --pcard-brand-fs: 11px;
    --pcard-stars-fs: 11px;
    --pcard-action-fs: 11px;
    --pcard-dot: 7px;
    --pcard-swatch: 14px;
  }
}

.m-product-card--view-grid.m-product-card--style-1 .m-product-card__content {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  padding: 10px 12px 12px;
  margin-top: 0;
}

.m-product-card--view-grid.m-product-card--style-1 .m-product-card__info {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
}

/* Merkregel: klein, gedempt, hoofdletters; als link strak om de
   tekst (inline-block, geen blok-breed kliktarget). */
.solza-pcard-brand {
  display: inline-block;
  align-self: flex-start;
  font-size: var(--pcard-brand-fs, 12px);
  line-height: 1.35;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--solza-color-text-muted);
  margin-bottom: 2px;
  text-decoration: none;
}

a.solza-pcard-brand--link:hover {
  color: var(--solza-indigo-blue);
  text-decoration: underline;
}

/* Titel: max 2 regels, op woordgrenzen gebroken. */
.m-product-card--view-grid.m-product-card--style-1 .m-product-card__name {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  white-space: normal;
  overflow-wrap: normal;
  word-break: normal;
  font-size: var(--pcard-title-fs, 16px);
  line-height: 1.5;
}

/* Loox-reviewsterren: compact, alleen bij >= 1 review, geen
   gereserveerde ruimte zonder reviews. */
.solza-pcard-stars {
  display: flex;
  align-items: center;
  gap: 4px;
  margin-top: 2px;
  font-size: var(--pcard-stars-fs, 13px);
  line-height: 1.3;
}

.solza-pcard-stars__track {
  position: relative;
  display: inline-block;
  color: #d7dce3;
  letter-spacing: 1px;
}

.solza-pcard-stars__fill {
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
  white-space: nowrap;
  color: var(--solza-golden-mango);
  letter-spacing: 1px;
}

.solza-pcard-stars__count {
  color: var(--solza-color-text-muted);
}

/* Kleurswatches: rond, klein, niet klikbaar, geen gereserveerde
   ruimte zonder varianten. */
.solza-pcard-swatches {
  display: flex;
  align-items: center;
  gap: 4px;
  margin-top: 4px;
  pointer-events: none;
}

.solza-pcard-swatches__dot {
  width: var(--pcard-swatch, 16px);
  height: var(--pcard-swatch, 16px);
  min-width: var(--pcard-swatch, 16px);
  border-radius: 50%;
  border: 1px solid var(--solza-color-border);
  object-fit: cover;
  display: inline-block;
}

.solza-pcard-swatches__dot--empty {
  background: var(--solza-driftwood-cream);
}

.solza-pcard-swatches__more {
  font-size: var(--pcard-stars-fs, 13px);
  color: var(--solza-color-text-muted);
}

/* Specificatie-bullets: max 3, elk 1 regel (bron max. 20 tekens). */
.solza-pcard-specs {
  list-style: none;
  margin: 4px 0 0;
  padding: 0;
}

.solza-pcard-specs__item {
  position: relative;
  padding-left: 8px;
  font-size: var(--pcard-bullet-fs, 13.5px);
  line-height: 1.45;
  color: var(--solza-color-text-muted);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.solza-pcard-specs__item::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.58em;
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: var(--solza-color-text-muted);
}

/* Voorraadstatus: eigen regel boven het prijsblok, bolletje
   uitgelijnd met de EERSTE tekstregel (flex-start + em-offset),
   zodat het bij tekst over 2 regels niet scheef hangt. Tekst mag
   omlopen (min-height, geen vaste hoogte, geen afkapping). */
.solza-pcard-statusrow {
  display: flex;
  min-height: 1.3em;
  margin-top: 6px;
}

.solza-pcard-status {
  display: inline-flex;
  align-items: flex-start;
  gap: 5px;
  max-width: 100%;
}

.solza-pcard-status__dot {
  width: var(--pcard-dot, 8px);
  height: var(--pcard-dot, 8px);
  min-width: var(--pcard-dot, 8px);
  border-radius: 50%;
  display: inline-block;
  margin-top: calc(0.65em - var(--pcard-dot, 8px) / 2);
}

.solza-pcard-status--leverbaar .solza-pcard-status__dot { background-color: var(--solza-color-stock-available); }
.solza-pcard-status--krap .solza-pcard-status__dot { background-color: var(--solza-color-stock-low); }
.solza-pcard-status--aanvraag .solza-pcard-status__dot { background-color: var(--solza-color-stock-none); }

.solza-pcard-status__text {
  font-size: var(--pcard-status-fs, 13px);
  line-height: 1.3;
  font-weight: 400;
  color: var(--solza-indigo-blue);
}

.solza-pcard-status--aanvraag .solza-pcard-status__text {
  color: var(--solza-color-text-muted);
}

/* Prijsblok: verankerd aan de onderrand. Doorgehaalde prijs klein
   BOVEN de actieprijs; hoogte gereserveerd (min-height) ook
   zonder korting. De lege placeholder is een span ZONDER
   doorhaling -- alleen een echte <s> krijgt line-through. De
   actieprijs is het grootste tekstelement van de kaart. */
.m-product-card--view-grid.m-product-card--style-1 .solza-pcard-pricewrap {
  margin-top: auto;
  padding-top: 6px;
}

.solza-pcard-price-was {
  display: block;
  min-height: 1.4em;
  font-size: var(--pcard-was-fs, 13px);
  line-height: 1.4;
  color: var(--solza-color-text-muted);
}

s.solza-pcard-price-was { text-decoration: line-through; }

.solza-pcard-price-now {
  display: block;
  font-size: var(--pcard-price-fs, 18px);
  line-height: 1.25;
  font-weight: 500;
  color: rgb(var(--color-price-sale));
}

.solza-pcard-price-now--regular {
  color: var(--solza-indigo-blue);
}

/* De eenheid (/m2 of /m1) klein en grijs -- de prijs zelf houdt
   het oranje, de eenheid concurreert er niet mee. */
.solza-pcard-price-unit {
  font-size: var(--pcard-was-fs, 13px);
  font-weight: 400;
  color: var(--solza-color-text-muted);
}

/* Actieregel: in het prijsblok, direct onder de prijs. Hoogte
   gereserveerd via min-height, ook zonder actie. Desktop/tablet:
   beige pilletje met navy tekst, geen bolletje (dat is
   voorbehouden aan de voorraadstatus). Mobiel: geen pill maar
   platte tekst met meer gewicht, zodat de volle kaartbreedte
   beschikbaar is. */
.solza-pcard-actionline {
  display: flex;
  align-items: flex-start;
  min-height: 1.6em;
  margin-top: 3px;
  font-size: var(--pcard-action-fs, 12px);
}

.solza-pcard-actionpill {
  display: inline-block;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  background: var(--solza-driftwood-cream);
  color: var(--solza-indigo-blue);
  border-radius: 999px;
  padding: 2px 8px;
  font-size: var(--pcard-action-fs, 12px);
  line-height: 1.35;
}

@media (max-width: 599px) {
  .solza-pcard-actionpill {
    background: none;
    border-radius: 0;
    padding: 0;
    font-weight: 600;
  }
}

/* Bewaarknop (hartje): linksboven in het beeldvlak, hergebruikt
   de bestaande wishlist-JS (.m-wishlist-button). Kliktarget
   44x44px; klik schiet niet door naar de productpagina
   (preventDefault in wishlist.js). */
.solza-pcard-wishlist {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 44px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: none;
  border: 0;
  padding: 0;
  cursor: pointer;
  color: var(--solza-indigo-blue);
}

.solza-pcard-wishlist__icon {
  width: 20px;
  height: 20px;
  filter: drop-shadow(0 0 2px rgba(255, 255, 255, 0.9));
}

.solza-pcard-wishlist.added-to-wishlist .solza-pcard-wishlist__icon path {
  fill: var(--solza-indigo-blue);
}

/* Badge: geel met navy tekst, rechtsboven in het beeldvlak.
   Oranje blijft voorbehouden aan de actieprijs. */
.m-product-card--view-grid .m-product-card__tags {
  left: auto;
  right: 8px;
  align-items: flex-end;
}

.m-product-card--view-grid .m-product-card__tags .m-product-tag {
  background: var(--solza-golden-mango) !important;
  background-image: none !important;
  color: var(--solza-indigo-blue) !important;
  font-weight: 600;
}

/* De oude hover-overlay met wishlist rechtsboven verbergen op de
   grid-kaart -- het hartje linksboven is nu de enige bewaarknop
   (geen dubbele hartjes). */
.m-product-card--view-grid .m-product-card__action--top .m-wishlist-button {
  display: none;
}

/* Grid-gap tussen productkaarten (2026-07-30): de oude 30/10px was
   afgestemd op randloze kaarten; nu de kaart een eigen hairline heeft
   doet die de scheiding en voelt de oude gap als leegte. Centrale
   override op de grid-containers (wint van de per-sectie inline vars
   omdat de var hier op het element zelf staat i.p.v. geerfd): 12px
   op desktop en tablet, 8px op mobiel. Let op theme-conventie: het
   768-1023px-bereik leest de -mobile-variant van de var, vandaar de
   media query. Sliders (Swiper spaceBetween) en de PDP cross-sell
   (eigen margin-right) hebben een eigen mechanisme en vallen hier
   bewust buiten. */
.m-collection-products,
.m-search-result {
  /* !important nodig voor .m-search-result: daar staan de inline
     section-setting-vars op hetzelfde element als deze class (bij de
     collectiegrid staan ze op de sectie-wrapper en volstaat een
     gewone declaratie). */
  --column-gap: 12px !important;
  --row-gap: 12px !important;
  --column-gap-mobile: 8px !important;
  --row-gap-mobile: 8px !important;
}

@media (min-width: 768px) {
  .m-collection-products,
  .m-search-result {
    --column-gap-mobile: 12px !important;
    --row-gap-mobile: 12px !important;
  }
}


/* ============================================================
   Gedeeld accordeon-component (solza-accordion.liquid, 2026-07-30):
   kaartvorm met volledige rand, 5px radius en 12px tussenruimte
   (bestaande theme-waarden, gemeten op de productkaart). Accent is
   uitsluitend navy var(--solza-indigo-blue); de lichte tint van de dichte knop is een
   afgeleide alpha van datzelfde navy (bewust geen nieuwe hex, geen
   tweede accentkleur). Tekstgroottes per breakpoint via CSS-vars met
   EEN media query, zelfde patroon als de productkaart. Inhoud staat
   altijd in de DOM; dicht = grid-rows 0fr (puur CSS, animeerbaar,
   geen JS-hoogtes). Vraagteksten mogen omlopen: nergens vaste
   hoogtes, alleen min-height. */

.solza-acc {
  --acc-title-fs: 18px;
  --acc-content-fs: 16px;
  --acc-label-fs: 14px;
  --acc-btn: 32px;
  --acc-pad-y: 14px;
  --acc-pad-x: 18px;

  background: var(--solza-white);
  border: 1px solid var(--solza-color-border);
  border-radius: 5px;
  transition: border-color 0.2s ease;
}

@media (max-width: 599px) {
  .solza-acc {
    --acc-title-fs: 15px;
    --acc-content-fs: 14px;
    --acc-label-fs: 12px;
    --acc-btn: 28px;
    --acc-pad-y: 12px;
    --acc-pad-x: 14px;
  }
}

/* margin-bottom i.p.v. sibling-selector: op de FAQ-pagina's zit elk
   item in een eigen wrapper-div waardoor .solza-acc's geen directe
   siblings zijn. */
.solza-acc {
  margin-bottom: 12px;
}

.solza-acc.is-open {
  border-color: var(--solza-indigo-blue);
}

.solza-acc__heading {
  margin: 0;
  font-size: inherit;
}

.solza-acc__trigger {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  min-height: 44px;
  padding: var(--acc-pad-y) var(--acc-pad-x);
  background: none;
  border: 0;
  cursor: pointer;
  text-align: left;
  color: var(--solza-indigo-blue);
}

.solza-acc__trigger:focus-visible {
  outline: 2px solid var(--solza-indigo-blue);
  outline-offset: 2px;
  border-radius: 5px;
}

.solza-acc__title {
  flex: 1 1 auto;
  font-size: var(--acc-title-fs);
  line-height: 1.4;
  font-weight: 500;
}

.solza-acc__label {
  flex: 0 0 auto;
  font-size: var(--acc-label-fs);
  color: var(--solza-color-text-muted);
}

/* Ronde plus/min-indicator. Dicht: lichte navy-tint + navy plus.
   Open: gevuld navy + witte min. Puur visueel -- de hele kopregel
   is het klikdoel. */
.solza-acc__icon {
  flex: 0 0 auto;
  width: var(--acc-btn);
  height: var(--acc-btn);
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(var(--solza-indigo-blue-rgb), 0.08);
  color: var(--solza-indigo-blue);
  transition: background-color 0.2s ease, color 0.2s ease;
}

.solza-acc.is-open .solza-acc__icon {
  background: var(--solza-indigo-blue);
  color: var(--solza-white);
}

.solza-acc__icon-min { display: none; }
.solza-acc.is-open .solza-acc__icon-plus { display: none; }
.solza-acc.is-open .solza-acc__icon-min { display: block; }

.solza-acc__content {
  display: grid;
  grid-template-rows: 0fr;
  /* visibility met vertraging: houdt de inhoud (links, checkboxes)
     buiten de tab-volgorde zodra het item dicht is, zonder de
     sluit-animatie te onderbreken */
  visibility: hidden;
  transition: grid-template-rows 0.25s ease, visibility 0s 0.25s;
}

.solza-acc.is-open .solza-acc__content {
  grid-template-rows: 1fr;
  visibility: visible;
  transition: grid-template-rows 0.25s ease, visibility 0s 0s;
}

.solza-acc__inner {
  overflow: hidden;
  min-height: 0;
  font-size: var(--acc-content-fs);
  line-height: 1.6;
  padding: 0 var(--acc-pad-x);
}

.solza-acc.is-open .solza-acc__inner {
  padding-bottom: var(--acc-pad-y);
}

@media (prefers-reduced-motion: reduce) {
  .solza-acc,
  .solza-acc__icon,
  .solza-acc__content {
    transition: none;
  }
}

/* ==========================================================================
   Collectiefilters (task9)
   --------------------------------------------------------------------------
   Filtergroepen gebruiken het gedeelde accordeon-component (.solza-acc,
   zie hierboven) -- geen tweede accordeonvariant. Hieronder alleen:
   de optielijsten (eigen checkbox, teller rechts, kleurstaaltje),
   de "Toon alle N opties"-knop, de actieve-filterpillen, en het
   mobiele filterscherm dat als bottom sheet van onderaf komt.

   Let op cascade: collection.css wordt per sectie NA dit bestand
   geladen; overrides op vendor-selectors krijgen daarom een extra
   .facest-filters-section-voorvoegsel voor hogere specificiteit.
   ========================================================================== */

/* -- accordeonmaat binnen de smalle sidebar -- */
.m-sidebar__filter .solza-acc {
  --acc-title-fs: 16px;
  --acc-content-fs: 14px;
  --acc-pad-y: 12px;
  --acc-pad-x: 14px;
  --acc-btn: 28px;
}

/* teller in de accordeonkop ("2 gekozen") */
.m-sidebar__filter .solza-acc__label {
  white-space: nowrap;
}

/* -- optielijst -- */
.solza-filter-options {
  list-style: none;
  margin: 0;
  padding: 0;
}

.solza-filter-option--overflow {
  display: none;
}

.solza-filter-options.is-expanded .solza-filter-option--overflow {
  display: block;
}

.solza-filter-option__label {
  display: flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
  padding: 7px 0;
  min-height: 36px;
  font-size: 14px;
  line-height: 1.4;
  color: var(--solza-color-text);
}

.solza-filter-option--disabled .solza-filter-option__label {
  cursor: default;
  opacity: 0.45;
}

/* echte checkbox, visueel vervangen door de navy box ernaast;
   blijft focusbaar voor toetsenbordgebruik */
.solza-filter-option__input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
  margin: 0;
  pointer-events: none;
}

.solza-filter-option__box {
  flex: 0 0 18px;
  width: 18px;
  height: 18px;
  border-radius: 3px;
  border: 1px solid rgba(var(--solza-indigo-blue-rgb), 0.3);
  background: var(--solza-white);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--solza-white);
  transition: background-color 0.15s ease, border-color 0.15s ease;
}

.solza-filter-option__box svg {
  visibility: hidden;
}

.solza-filter-option__input:checked ~ .solza-filter-option__box {
  background: var(--solza-indigo-blue);
  border-color: var(--solza-indigo-blue);
}

.solza-filter-option__input:checked ~ .solza-filter-option__box svg {
  visibility: visible;
}

.solza-filter-option__input:focus-visible ~ .solza-filter-option__box {
  outline: 2px solid var(--solza-indigo-blue);
  outline-offset: 2px;
}

/* kleurstaaltje: zelfde vormtaal als de productkaart-swatches */
.solza-filter-option__swatch {
  flex: 0 0 20px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  border: 1px solid var(--solza-color-border);
  background-color: var(--solza-driftwood-cream);
  background-size: cover;
  display: inline-block;
}

.solza-filter-option__text {
  flex: 1 1 auto;
  min-width: 0;
  word-break: break-word;
}

/* aantal resultaten rechts uitgelijnd in gedempt grijs */
.solza-filter-option__count {
  margin-left: auto;
  flex-shrink: 0;
  font-size: 13px;
  color: var(--solza-color-text-muted);
}

/* -- "Toon alle N opties" -- */
.solza-filter-more {
  display: block;
  background: none;
  border: none;
  padding: 10px 0;
  min-height: 44px;
  cursor: pointer;
  font-size: 14px;
  font-weight: 500;
  color: var(--solza-indigo-blue);
  text-decoration: underline;
  text-underline-offset: 3px;
}

.solza-filter-more:focus-visible {
  outline: 2px solid var(--solza-indigo-blue);
  outline-offset: 2px;
}

/* -- actieve-filterpillen (zelfde vormtaal als het actielabel) -- */
.solza-active-filters {
  gap: 8px;
  padding: 0 0 16px;
}

.solza-filter-pill a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--solza-driftwood-cream);
  color: var(--solza-indigo-blue);
  border-radius: 999px;
  padding: 6px 12px;
  font-size: 13px;
  line-height: 1.35;
  transition: background-color 0.15s ease;
}

.solza-filter-pill a:hover {
  background: var(--solza-driftwood-cream-light);
}

.solza-filter-pill__remove {
  display: inline-flex;
  align-items: center;
}

/* in het mobiele filterscherm heeft de kop al een "Wis alles";
   de variant in de pillenrij zou daar dubbelop zijn */
.solza-active-filters--drawer .solza-filter-clear {
  display: none;
}

.solza-filter-clear a,
.solza-filter-drawer__clear a {
  color: var(--solza-indigo-blue);
  font-size: 13px;
  text-decoration: underline;
  text-underline-offset: 3px;
  padding: 6px 4px;
}

/* -- kop van het filterscherm -- */
.solza-filter-drawer__head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
}

/* -- leegstand: knop om filters te wissen -- */
.solza-empty-clear {
  display: block;
  margin-top: 16px;
}

/* -- vanaf tablet (zichtbare zijbalk naast het grid) -- */
@media screen and (min-width: 768px) {
  .m-sidebar--left .solza-filter-drawer__clear,
  .m-sidebar--right .solza-filter-drawer__clear,
  .m-sidebar--left .solza-active-filters--drawer,
  .m-sidebar--right .solza-active-filters--drawer,
  .m-sidebar--left .solza-filter-apply,
  .m-sidebar--right .solza-filter-apply {
    display: none;
  }
}

/* -- tablet 768-1279px: de desktop-zijbalk, maar versmald --
   De vendor-CSS (collection.css) toont de zijbalk pas vanaf 1280px en
   maakt er daaronder een off-canvas overlay van; deze regels draaien
   dat voor left/right-posities terug naar een gewone kolom naast het
   grid (220px + 16px gap i.p.v. 270px + 30px op desktop). De
   off-canvas instelling 'fixed' blijft het vendor-gedrag houden.
   Het aantal productkolommen gaat mee: 2 op 768-1023 en 3 op
   1024-1279 (vendor zou er daar 3 resp. 4 tonen; te smal naast een
   zijbalk). Gescopet op .m-sidebar--left/--right, dus collecties
   zonder filters houden hun vendor-kolommen. */
@media screen and (min-width: 768px) and (max-width: 1279px) {
  .facest-filters-section .m-sidebar--left,
  .facest-filters-section .m-sidebar--right {
    gap: 16px;
  }

  .facest-filters-section .m-sidebar--left .m-sidebar,
  .facest-filters-section .m-sidebar--right .m-sidebar {
    position: static;
    display: block;
    flex: 0 0 220px;
    width: 220px;
    background: none;
    touch-action: auto;
    z-index: auto;
  }

  .facest-filters-section .m-sidebar--left .m-sidebar__content,
  .facest-filters-section .m-sidebar--right .m-sidebar__content {
    position: static;
    transform: none;
    width: 100%;
    max-width: 100%;
    height: auto;
    padding: 0;
    display: block;
    overflow: visible;
  }

  /* zelfde kop-divider als de desktopzijbalk (vendor zet die pas >=1280) */
  .facest-filters-section .m-sidebar--left .m-sidebar--header-separated .m-sidebar__title,
  .facest-filters-section .m-sidebar--right .m-sidebar--header-separated .m-sidebar__title,
  .facest-filters-section .m-sidebar--header-separated .solza-filter-drawer__head {
    border-width: 0 0 1px 0;
    border-style: solid;
    border-color: var(--solza-color-border);
    padding-bottom: 20px;
    margin-bottom: 20px;
  }

  .facest-filters-section .m-sidebar--left .m-filter-button,
  .facest-filters-section .m-sidebar--right .m-filter-button,
  .facest-filters-section .m-sidebar--left .m-sidebar__close,
  .facest-filters-section .m-sidebar--right .m-sidebar__close {
    display: none;
  }

  .facest-filters-section .m-sidebar--left .m-collection-products,
  .facest-filters-section .m-sidebar--right .m-collection-products,
  .facest-filters-section .m-sidebar--left .m-search-result,
  .facest-filters-section .m-sidebar--right .m-search-result {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media screen and (min-width: 1024px) and (max-width: 1279px) {
  .facest-filters-section .m-sidebar--left .m-collection-products,
  .facest-filters-section .m-sidebar--right .m-collection-products,
  .facest-filters-section .m-sidebar--left .m-search-result,
  .facest-filters-section .m-sidebar--right .m-search-result {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

/* -- mobiel: bottom sheet in plaats van zijpaneel --
   De vendor-JS (collection.js) stuurt --m-translate-x aan: -100% is
   dicht, 0 is open. Voor de verticale beweging draaien we die waarde
   om met calc(x * -1), zodat -100% onderin uit beeld staat en er geen
   JS-wijziging nodig is. */
@media screen and (max-width: 767px) {
  .facest-filters-section .m-sidebar--left .m-sidebar__content,
  .facest-filters-section .m-sidebar--right .m-sidebar__content,
  .facest-filters-section .m-sidebar--fixed .m-sidebar__content,
  .facest-filters-section .m-sidebar[data-type] .m-sidebar__content {
    width: 100%;
    max-width: 100%;
    height: auto;
    max-height: 88dvh;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: auto;
    border-radius: 12px 12px 0 0;
    padding: 16px 16px 0;
    display: flex;
    flex-direction: column;
    transform: translate3d(0, calc(var(--m-translate-x, -100%) * -1), 0);
  }

  .facest-filters-section .m-sidebar {
    position: fixed;
    inset: 0;
    z-index: 100;
  }

  .solza-filter-drawer__head {
    padding: 4px 40px 12px 0;
  }

  .facest-filters-section .m-sidebar .m-sidebar__title {
    margin-bottom: 0;
  }

  .facest-filters-section .m-sidebar__close {
    top: 14px;
    right: 10px;
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .m-sidebar .solza-active-filters--drawer {
    flex: 0 0 auto;
    padding-bottom: 12px;
  }

  .facest-filters-section .m-sidebar__filter {
    flex: 1 1 auto;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding-bottom: 8px;
  }

  /* vastgezette bevestigknop; oranje is hier bewust de enige
     CTA-kleur in de filters (primaire actie van dit scherm) */
  .solza-filter-apply {
    flex: 0 0 auto;
    position: sticky;
    bottom: 0;
    background: var(--solza-white);
    padding: 12px 16px calc(12px + env(safe-area-inset-bottom));
    border-top: 1px solid var(--solza-color-border);
    margin: 0 -16px;
  }

  /* navy label op oranje: 5,10:1 -- wit zou met 3,13:1 alleen op
     groot/vet tekstformaat leunen en zakt onder de norm zodra het
     label kleiner wordt */
  .solza-filter-apply__btn {
    width: 100%;
    min-height: 48px;
    border: none;
    border-radius: 5px;
    background: var(--solza-color-cta);
    color: var(--solza-indigo-blue);
    font-size: 16px;
    font-weight: 700;
    cursor: pointer;
  }

  .solza-filter-apply__btn:focus-visible {
    outline: 2px solid var(--solza-indigo-blue);
    outline-offset: 2px;
  }
}

/* achtergrond niet mee laten scrollen zolang het filterscherm open is */
html.solza-no-scroll,
html.solza-no-scroll body {
  overflow: hidden;
}

@media (prefers-reduced-motion: reduce) {
  .facest-filters-section .m-sidebar__content,
  .solza-filter-option__box,
  .solza-filter-pill a {
    transition: none;
  }
}

/* ==========================================================================
   Binnendeuren-PDP (task10)
   --------------------------------------------------------------------------
   Scope: body-class 'binnendeur' (template-suffix uit theme.liquid) en
   de solza-door-*-componenten. Mobiel = t/m 767px, gelijk aan het
   bestaande md-breakpoint. Per-component variabelen met een mobiele
   media query, zelfde patroon als de productkaart en het accordeon.
   ========================================================================== */

.binnendeur .m-main-product {
  --door-help-fs: 13px;
  --door-pill-fs: 14px;
  --door-step-gap: 22px;
}

/* -- linkerkolom loopt mee bij het scrollen (alleen naast de info) --
   De vendor maakt de galerij (.m-product-media--desktop) zelf ook
   sticky; binnen deze sticky kolom zou dat dubbelop zijn en schoof
   het USP-blok over de plakkende foto heen. Daarom plakt hier alleen
   de kolom als geheel, en is hij nooit hoger dan de viewport
   (interne scroll als de inhoud niet past). */
@media screen and (min-width: 768px) {
  .binnendeur .m-main-product__media {
    position: sticky;
    top: 90px;
    align-self: flex-start;
    max-height: calc(100vh - 106px);
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin;
  }

  .binnendeur .m-main-product__media .m-product-media--desktop {
    position: static;
  }
}

/* -- hoofdfoto 4:5 -- */
.binnendeur .m-product-media--wrapper .m-product-media__main img,
.binnendeur .m-product-media--wrapper .swiper-slide img {
  aspect-ratio: 4 / 5;
  object-fit: cover;
}

/* -- USP-blok onder de galerij -- */
.solza-media-below {
  margin-top: 16px;
}

/* terugval-USP's (instelbare richtext): zelfde vinkjes-vormtaal als
   de kenmerkenlijst bij de titel */
.solza-usp-fallback ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.solza-usp-fallback ul li {
  position: relative;
  padding-left: 24px;
  font-size: 14px;
  line-height: 1.9;
  color: var(--solza-color-text);
}

.solza-usp-fallback ul li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.55em;
  width: 14px;
  height: 8px;
  border-left: 2px solid var(--solza-indigo-blue);
  border-bottom: 2px solid var(--solza-indigo-blue);
  transform: rotate(-45deg) scale(0.85);
}

.solza-media-below--mobile {
  margin-top: 24px;
}

/* De sitebrede footer-group-slider "Favorieten van onze
   vloerexperts" toont vloerproducten; op een deurenpagina is dat
   misplaatst. De sectie is onderdeel van de footer-group (kan niet
   per template uitgezet worden), dus hier gescoped verborgen. */
.binnendeur [id$="__custom_content_JXJieD"] {
  display: none;
}

/* -- serie/stijl-regel: klein en gedempt boven de titel -- */
.solza-door-series {
  display: flex;
  gap: 8px;
  align-items: baseline;
  font-size: 13px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--solza-color-text-muted);
  margin: 0 0 4px;
}

/* -- drie kenmerken met vinkje -- */
.solza-door-checks {
  list-style: none;
  margin: 10px 0 4px;
  padding: 0;
}

.solza-door-checks li {
  position: relative;
  padding-left: 24px;
  font-size: 14px;
  line-height: 1.7;
  color: var(--solza-color-text);
}

.solza-door-checks li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.45em;
  width: 14px;
  height: 8px;
  border-left: 2px solid var(--solza-indigo-blue);
  border-bottom: 2px solid var(--solza-indigo-blue);
  transform: rotate(-45deg) scale(0.85);
}

/* -- variantstappen -------------------------------------------------- */
.solza-door-options {
  counter-reset: doorstep;
  margin: var(--door-step-gap) 0 0;
}

.solza-door-options .solza-door-step {
  counter-increment: doorstep;
  margin-bottom: var(--door-step-gap);
}

.solza-door-step--hidden {
  display: none; /* telt niet mee in de counter: nummering klopt vanzelf */
}

.solza-door-step .option-label {
  display: flex;
  align-items: center;
  gap: 8px;
}

.solza-door-step__num::before {
  content: counter(doorstep);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: var(--solza-indigo-blue);
  color: var(--solza-white);
  font-size: 12px;
  font-weight: 600;
}

.solza-door-step__help {
  margin: 4px 0 10px;
  font-size: var(--door-help-fs);
  line-height: 1.5;
  color: var(--solza-color-text-muted);
  max-width: 68ch;
}

.solza-door-step .m-product-option--content {
  gap: 8px;
}

.solza-door-pill {
  margin: 0;
}

.solza-door-pill input[type="radio"] {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
  margin: 0;
  pointer-events: none;
}

.solza-door-options .solza-door-pill .m-product-option--node__label {
  /* vendor modules.css zet text-transform: capitalize op alle
     button-optielabels (.m-product-option--button ...__label),
     waardoor maten als "78 X 201,5 Cm" verschenen; maateenheden
     horen klein ("78 x 201,5 cm") */
  text-transform: none;
  display: inline-flex;
  align-items: center;
  min-height: 40px;
  padding: 6px 16px;
  border: 1px solid rgba(var(--solza-indigo-blue-rgb), 0.3);
  border-radius: 999px;
  font-size: var(--door-pill-fs);
  line-height: 1.3;
  color: var(--solza-color-text);
  background: var(--solza-white);
  cursor: pointer;
  transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.solza-door-pill input[type="radio"]:checked + .m-product-option--node__label {
  background: var(--solza-indigo-blue);
  border-color: var(--solza-indigo-blue);
  color: var(--solza-white);
}

.solza-door-pill input[type="radio"]:focus-visible + .m-product-option--node__label {
  outline: 2px solid var(--solza-indigo-blue);
  outline-offset: 2px;
}

.solza-door-pill--unavailable .m-product-option--node__label {
  opacity: 0.4;
  text-decoration: line-through;
  cursor: not-allowed;
}

/* "Niet van toepassing" is nooit een zichtbare keuze */
.solza-door-pill--na {
  display: none;
}

/* -- stappen 4-6: pillen met een subregel (RAL-code/toeslag), de
      bewerkingen-aanvinklijst en de retourmelding ----------------- */
.solza-door-pill--stacked .m-product-option--node__label {
  text-align: left;
}

.solza-door-pill--stacked .m-product-option--node__label small {
  display: block;
  font-size: 11px;
  opacity: 0.75;
  margin-top: 2px;
  font-weight: 400;
}

.solza-door-proc-list {
  max-width: 520px;
}

.solza-door-proc {
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 9px 0;
  font-size: 14px;
  color: var(--solza-color-text);
  border-bottom: 1px solid rgba(var(--solza-indigo-blue-rgb), 0.06);
  cursor: pointer;
}

.solza-door-proc:last-child {
  border-bottom: none;
}

.solza-door-proc input[type="checkbox"] {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
  margin: 0;
  pointer-events: none;
}

.solza-door-proc__box {
  width: 19px;
  height: 19px;
  border: 1.5px solid rgba(var(--solza-indigo-blue-rgb), 0.3);
  border-radius: 3px;
  flex-shrink: 0;
  position: relative;
}

.solza-door-proc input[type="checkbox"]:checked ~ .solza-door-proc__box {
  background: var(--solza-indigo-blue);
  border-color: var(--solza-indigo-blue);
}

.solza-door-proc input[type="checkbox"]:checked ~ .solza-door-proc__box::after {
  content: "";
  position: absolute;
  left: 4px;
  top: 3px;
  width: 9px;
  height: 5px;
  border-left: 2px solid var(--solza-white);
  border-bottom: 2px solid var(--solza-white);
  transform: rotate(-45deg);
}

.solza-door-proc input[type="checkbox"]:focus-visible ~ .solza-door-proc__box {
  outline: 2px solid var(--solza-indigo-blue);
  outline-offset: 2px;
}

.solza-door-proc__price {
  margin-left: auto;
  font-size: 13.5px;
  color: var(--solza-color-text-muted);
  white-space: nowrap;
}

.solza-door-proc input[type="checkbox"]:checked ~ .solza-door-proc__price {
  color: var(--solza-color-text);
}

/* -- reviewblok (referentie .rev): groot cijfer + sterren + aantal,
      verdeling met balkjes, drie kaarten. Rendert alleen bij echte
      Loox-data; sterren conventioneel goud (rating-uitzondering). -- */
.solza-door-reviews__heading {
  margin-bottom: 20px;
}

.solza-door-reviews__top {
  display: flex;
  gap: 26px;
  align-items: center;
  flex-wrap: wrap;
  margin-bottom: 20px;
}

.solza-door-reviews__score {
  font-size: 40px;
  font-weight: 800;
  line-height: 1;
  color: var(--solza-color-text);
}

.solza-door-reviews__score small {
  font-size: 15px;
  font-weight: 500;
  color: var(--solza-color-text-muted);
}

.solza-door-reviews__stars-track {
  position: relative;
  display: inline-block;
  color: rgba(var(--solza-indigo-blue-rgb), 0.15);
  font-size: 16px;
  letter-spacing: 2px;
}

.solza-door-reviews__stars-fill {
  position: absolute;
  left: 0;
  top: 0;
  overflow: hidden;
  white-space: nowrap;
  color: var(--solza-golden-mango);
}

.solza-door-reviews__count {
  font-size: 13px;
  color: var(--solza-color-text-muted);
  margin-top: 3px;
}

.solza-door-reviews__dist {
  flex: 1;
  min-width: 210px;
  max-width: 420px;
}

.solza-door-reviews__dist-row {
  display: flex;
  align-items: center;
  gap: 9px;
  font-size: 12px;
  color: var(--solza-color-text-muted);
  margin-bottom: 4px;
}

.solza-door-reviews__bar {
  flex: 1;
  height: 6px;
  background: rgba(var(--solza-indigo-blue-rgb), 0.08);
  border-radius: 99px;
  overflow: hidden;
}

.solza-door-reviews__bar span {
  display: block;
  height: 100%;
  background: var(--solza-golden-mango);
}

.solza-door-reviews__cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}

@media (max-width: 820px) {
  .solza-door-reviews__cards {
    grid-template-columns: 1fr;
  }
}

.solza-door-reviews__card {
  border: 1px solid var(--solza-color-border);
  border-radius: 5px;
  padding: 14px 15px;
}

.solza-door-reviews__card-stars {
  color: var(--solza-golden-mango);
  font-size: 13px;
  letter-spacing: 1.5px;
}

.solza-door-reviews__card b {
  display: block;
  font-size: 13.5px;
  margin: 6px 0 3px;
  color: var(--solza-color-text);
}

.solza-door-reviews__card p {
  margin: 0;
  font-size: 13.5px;
  line-height: 1.6;
  color: rgba(var(--solza-indigo-blue-rgb), 0.8);
}

.solza-door-reviews__who {
  font-size: 12px;
  color: var(--solza-color-text-muted);
  margin-top: 9px;
}

/* lopende tekst in de omschrijving op ~68 tekens per regel houden,
   ook als de kolom zelf breder is */
.solza-door-details__prose p,
.solza-door-details__prose li {
  max-width: 68ch;
}

/* -- eerder door jou bekeken: kop + gedempte subregel boven de
      bestaande productkaartenrij -- */
.solza-door-recent__heading {
  margin-bottom: 2px;
}

.solza-door-recent__hint {
  margin: 0 0 10px;
  font-size: 13.5px;
  color: var(--solza-color-text-muted);
}

/* retourmelding: crème blok met gele linkerrand (referentie
   .melding); geel hier als functioneel let-op-signaal */
.solza-door-return-note {
  background: var(--solza-color-surface-muted);
  border-left: 3px solid var(--solza-golden-mango);
  padding: 11px 13px;
  border-radius: 3px;
  font-size: 12.5px;
  line-height: 1.55;
  margin: 12px 0 var(--door-step-gap);
  max-width: 68ch;
  color: var(--solza-color-text);
}

/* -- bestelblok (referentie .afsluit/.som): scheidingslijn erboven,
      label "Totaal inclusief btw" klein en gedempt links, bedrag
      groot en vet rechts (row-reverse: de DOM houdt prijs-eerst
      voor de vendor-prijsupdates bij variantwissels) -- */
.binnendeur .main-product__block-price {
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  margin-bottom: 0;
  border-top: 1px solid var(--solza-color-border);
  padding-top: 18px;
  margin-top: 8px;
}

.binnendeur .main-product__block-price .m-product-tax {
  font-size: 13px;
  font-weight: 400;
  color: var(--solza-color-text-muted);
  margin: 0;
}

/* het (op deuren toch al onzichtbare) shoppay/proefmonster-element is
   anders een derde flex-kind dat het label uit de linkerhoek duwt */
.binnendeur .main-product__block-price .installment-shoppay {
  display: none;
}

/* de proefmonster-app injecteert zijn bestelknop in elk
   productformulier; proefmonsters zijn een vloerenconcept en horen
   niet op de deuren-PDP (duwde ook de Toevoegen-knop van de
   toebehoren-kaarten uit z'n volle breedte) */
.binnendeur .product-samples-button-wrap {
  display: none;
}

.binnendeur .main-product__block-price .m-price-item {
  font-size: 26px;
  font-weight: 600;
  color: var(--solza-color-text);
}

/* -- knoppenrij: winkelwagenknop en bied-knop naast elkaar zodra het
      bied-blok aan staat (main-product__block--bid-inline komt
      server-side uit main-product-blocks). Zonder :has-ondersteuning
      blijven de knoppen gestapeld -- functioneel gelijkwaardig. -- */
.binnendeur .m-main-product__info:has(.main-product__block--bid-inline) .main-product__block-buy_buttons {
  float: left;
  width: calc(55% - 5px);
}

.binnendeur .main-product__block--bid-inline {
  float: right;
  width: calc(45% - 5px);
}

.binnendeur .main-product__block--bid-inline + .main-product__block,
.binnendeur .main-product__block-custom_liquid {
  clear: both;
}

@media (max-width: 479px) {
  .binnendeur .m-main-product__info:has(.main-product__block--bid-inline) .main-product__block-buy_buttons,
  .binnendeur .main-product__block--bid-inline {
    float: none;
    width: 100%;
  }
}

/* bied-launcher als secundaire knop met navy rand (referentie
   .knop.sec), even hoog als de primaire knop ernaast */
.binnendeur .main-product__block--bid-inline .solza-bid-block__launcher {
  width: 100%;
  background: var(--solza-color-surface);
  border: 1.5px solid var(--solza-indigo-blue);
  color: var(--solza-indigo-blue);
  font-weight: 500;
}

/* -- bestelblok-informatie -- */
.solza-door-order-info {
  margin: 14px 0;
}

.solza-door-order-info .solza-pcard-status__text {
  font-size: 14px;
}

.solza-door-delivery {
  margin: 6px 0 0;
  font-size: 14px;
  color: var(--solza-color-text);
}

.solza-door-bid-note {
  margin: 8px 0 0;
  font-size: 13px;
  color: var(--solza-color-text-muted);
  max-width: 68ch;
}

/* primaire knop op de deur-PDP in oranje, met navy label
   (zelfde contrastkeuze als de filterbevestigknop: 5,14:1).
   !important omdat de site-brede groene koopknop-regel
   (.m-add-to-cart, regel ~1608) ook !important draagt. */
.binnendeur .m-product-form--main .m-add-to-cart:not(.disabled):not([disabled]) {
  background-color: var(--solza-color-cta) !important;
  border-color: var(--solza-color-cta);
  color: var(--solza-indigo-blue);
}

.binnendeur .m-product-form--main .m-add-to-cart:not(.disabled):not([disabled]):hover {
  background-color: rgba(237, 105, 70, 0.88) !important;
  border-color: transparent;
}

/* de bied-launcher van de app als secundaire knop direct onder de
   primaire (zelfde knoppenblok, 8px ertussen) */
.binnendeur .shopify-app-block .solza-bid-block__launcher {
  margin-top: 8px;
}

/* -- toebehoren-rij in de productkolom (referentie .ckaart):
      compacte omkaderde kaarten, bewust geen productgrid ("voeg dit
      erbij", niet "bekijk dit in plaats van") -- */
.solza-door-acc-block {
  margin-top: 20px;
  border-top: 1px solid var(--solza-color-border);
  padding-top: 17px;
}

.solza-door-acc-block__heading {
  font-size: 14px;
  font-weight: 600;
  margin: 0 0 3px;
  color: var(--solza-color-text);
}

.solza-door-acc-block__hint {
  font-size: 12.5px;
  color: var(--solza-color-text-muted);
  margin: 0 0 11px;
  line-height: 1.5;
}

.solza-door-acc-list {
  display: flex;
  flex-direction: column;
  gap: 9px;
}

.solza-door-acc {
  display: flex;
  align-items: center;
  gap: 13px;
  border: 1px solid var(--solza-color-border);
  border-radius: 5px;
  padding: 10px 12px;
}

/* het maatfilter werkt met het hidden-attribuut; display:flex/block
   zou dat anders overrulen */
.solza-door-acc[hidden],
.solza-door-acc-block[hidden] {
  display: none;
}

.solza-door-acc__media {
  flex: 0 0 56px;
  width: 56px;
  height: 56px;
  border-radius: 4px;
  overflow: hidden;
  background: var(--solza-color-surface-warm);
}

.solza-door-acc__media img,
.solza-door-acc__media-empty {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.solza-door-acc__text {
  flex: 1 1 auto;
  min-width: 0;
}

.solza-door-acc__title {
  display: block;
  font-size: 14px;
  font-weight: 600;
  color: var(--solza-color-text);
  line-height: 1.4;
  margin-bottom: 2px;
}

.solza-door-acc__reason {
  margin: 0;
  font-size: 12.5px;
  color: var(--solza-color-text-muted);
  line-height: 1.4;
}

.solza-door-acc__price {
  font-size: 15px;
  font-weight: 600;
  color: var(--solza-color-text);
  white-space: nowrap;
}

.solza-door-acc__form {
  flex: 0 0 auto;
}

.solza-door-acc__addform {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
}

.solza-door-acc__variant {
  max-width: 110px;
  min-height: 37px;
  padding: 4px 8px;
  font-size: 12.5px;
  border: 1px solid rgba(24, 31, 62, 0.25);
  border-radius: 4px;
  background: var(--solza-color-surface);
  color: var(--solza-color-text);
}

/* Toevoegen-knop met navy rand (referentie .ckaart .add); hover
   inverteert. De !important is nodig tegen de site-brede groene
   koopknop-regel op .m-add-to-cart. */
.binnendeur .solza-door-acc__add:not(.disabled):not([disabled]) {
  background-color: var(--solza-color-surface) !important;
  border: 1.5px solid var(--solza-indigo-blue);
  color: var(--solza-indigo-blue);
}

.binnendeur .solza-door-acc__add:not(.disabled):not([disabled]):hover {
  background-color: var(--solza-indigo-blue) !important;
  color: #fff;
}

.solza-door-acc__add {
  border-radius: 999px;
  min-height: 0;
  min-width: 0;
  width: auto;
  padding: 8px 15px;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.2;
  white-space: nowrap;
  cursor: pointer;
}

/* onder 520px breekt de knop naar een eigen regel over de volle
   breedte (referentie) */
@media (max-width: 520px) {
  .solza-door-acc {
    flex-wrap: wrap;
  }

  .solza-door-acc__form,
  .solza-door-acc__addform,
  .solza-door-acc__add {
    width: 100%;
  }
}

/* -- sticky balk: mini-foto en totaal ook op mobiel; geen
      variantdropdown of aantal in de balk (alleen totaal + knop) -- */
.m-sticky-addtocart--door .m-sticky-addtocart--leftblock {
  display: flex !important;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.m-sticky-addtocart--door .m-sticky-addtocart--image {
  flex: 0 0 40px;
  width: 40px;
}

.m-sticky-addtocart--door .m-sticky-addtocart--title h2 {
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
}

.m-sticky-addtocart--door .m-product-option--dropdown-select,
.m-sticky-addtocart--door .m-sticky-addtocart--quantity {
  display: none !important;
}

/* balkknop in dezelfde CTA-stijl als het inline bestelblok
   (alleen de bestelbare staat; disabled volgt de vendor-stijl) */
.m-sticky-addtocart--door .m-add-to-cart:not(.disabled):not([disabled]) {
  background-color: var(--solza-color-cta) !important;
  border-color: var(--solza-color-cta);
  color: var(--solza-indigo-blue);
}

@media screen and (max-width: 767px) {
  .m-sticky-addtocart--door .m-sticky-addtocart--title h2 {
    font-size: 13px;
  }
}

/* -- onder de vouw: omschrijving + specificaties ----------------------
      referentie .duo: omschrijving links op 1,35fr tegen 1fr specs,
      38px ertussen, op alle breedtes vanaf 768px -- */
.solza-door-details__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr);
  gap: 38px;
  align-items: start;
}

.solza-door-details__grid--specs-only {
  grid-template-columns: minmax(0, 720px);
}

.solza-door-details__prose {
  max-width: 68ch;
}

@media screen and (min-width: 768px) {
  .solza-door-details__specs {
    position: sticky;
    top: 90px;
  }
}

@media screen and (max-width: 767px) {
  .solza-door-details__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
  }
}

.solza-door-specs-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
}

.solza-door-specs-table td {
  padding: 8px 0;
  border-bottom: 1px solid var(--solza-color-border);
  vertical-align: top;
}

.solza-door-specs-table tr:last-child td {
  border-bottom: none;
}

.solza-door-specs-table td:first-child {
  color: var(--solza-color-text-muted);
  padding-right: 16px;
  white-space: nowrap;
}

/* -- FAQ -- */
.solza-door-faq__heading {
  margin-bottom: 16px;
}

.solza-door-faq .solza-acc__inner p {
  max-width: 68ch;
}

/* -- maatwerkband -- */
/* maatwerkband als omkaderd blok, tekst links en knop rechts
   (referentie .maatw) */
.solza-cta-band .solza-cta-band__inner {
  background: var(--solza-color-surface);
  border: 1px solid var(--solza-color-border);
  border-radius: 5px;
  padding: 17px 18px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  flex-wrap: wrap;
}

.solza-cta-band__prose {
  max-width: 52ch;
  margin-top: 4px;
  font-size: 14px;
  line-height: 1.7;
}

/* -- adviesband: creme band, burgundy uitsluitend als accent op het
      label en de categorielabels (eerste toepassing van burgundy) -- */
.solza-advice-band {
  background: var(--solza-driftwood-cream-light);
}

/* kopregel: kop links, label ernaast met burgundy onderstreping
   (referentie .burgkop) */
.solza-advice-band__head {
  display: flex;
  align-items: baseline;
  gap: 12px;
  flex-wrap: wrap;
  margin-bottom: 18px;
}

.solza-advice-band__label {
  margin: 0;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  color: var(--solza-burgundy);
  border-bottom: 2px solid var(--solza-burgundy);
  padding-bottom: 2px;
}

.solza-advice-band__heading {
  margin: 0;
}

.solza-advice-band__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr);
  gap: 22px;
  align-items: start;
}

@media screen and (max-width: 767px) {
  .solza-advice-band__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 16px;
  }
}

/* hoofdartikel als witte kaart (referentie .lead) */
.solza-advice-band__main {
  display: block;
  color: var(--solza-color-text);
  background: var(--solza-color-surface);
  border: 1px solid rgba(116, 26, 33, 0.15);
  border-radius: 5px;
  overflow: hidden;
}

.solza-advice-band__main:hover {
  border-color: var(--solza-burgundy);
}

.solza-advice-band__main-text {
  padding: 15px 17px 17px;
}

.solza-advice-band__image {
  overflow: hidden;
  margin-bottom: 0;
}

.solza-advice-band__category {
  display: inline-block;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--solza-burgundy);
  margin-bottom: 4px;
}

.solza-advice-band__title {
  margin: 0 0 6px;
}

.solza-advice-band__excerpt {
  margin: 0;
  font-size: 14px;
  line-height: 1.6;
  color: var(--solza-color-text-muted);
  max-width: 68ch;
}

.solza-advice-band__list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.solza-advice-band__list li {
  border-bottom: 1px solid rgba(116, 26, 33, 0.14);
}

.solza-advice-band__list li:last-child {
  border-bottom: none;
}

.solza-advice-band__link {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  padding: 13px 0;
  color: var(--solza-color-text);
}

.solza-advice-band__link:hover .solza-advice-band__link-title {
  color: var(--solza-burgundy);
}

.solza-advice-band__link-title {
  display: block;
  font-size: 14.5px;
  font-weight: 600;
  line-height: 1.4;
}

.solza-advice-band__link-sub {
  display: block;
  font-size: 12.5px;
  color: rgba(var(--solza-indigo-blue-rgb), 0.6);
  margin-top: 3px;
  line-height: 1.45;
}

.solza-advice-band__chevron {
  flex-shrink: 0;
  color: var(--solza-burgundy);
  font-size: 17px;
  line-height: 1.2;
}

@media (prefers-reduced-motion: reduce) {
  .solza-door-pill .m-product-option--node__label {
    transition: none;
  }
}
