/* =====================================================================
   Portaal Check — huisstijl.css (17-09-2026)
   Richting "B · Zacht" op wit, gekozen door Ward: witte pagina, lichte vlakken die groepen
   vormen (filters, koopblok, totalen), geen randen om kaarten, één oranje knop per pagina,
   filterbalk zonder kader, intro in de serif, 48 px tussen secties, kleinere koopknop op mobiel.
   Laadt ná de Customizer-CSS (DEEL AA) en overschrijft die waar nodig. Bron in de repo:
   server/huisstijl.css → live: themes/portaal-child/huisstijl.css via wp_bestand.py.
   ===================================================================== */

/* ---------- 1. tokens (overschrijven de :root van DEEL 3) ---------- */
:root {
  --pc-ground: #FFFFFF;          /* pagina */
  --pc-surface: #FFFFFF;
  --pc-vlak: #F4F5F2;            /* licht vlak: groepen */
  --pc-vlak-2: #ECEEE9;          /* iets donkerder vlak: laag 2, hover */
  --pc-line: #E6E9E4;            /* haarlijn */
  --pc-line-soft: #EEF0EB;
  --pc-ink: #1B2233;
  --pc-muted: #66707A;
  --pc-navy: #17304F;
  --pc-teal: #0E7490;
  --pc-actie: #C2580A;
  --pc-actie-licht: #D8691A;
  --pc-r-kaart: 12px;
  --pc-r-knop: 10px;
  --pc-schaduw: none;
  --pc-sectie: 48px;
  --pc-serif: 'Source Serif 4', Georgia, serif;
}
body { background: var(--pc-ground) !important; color: var(--pc-ink); }

/* ---------- 2. typografie: één schaal ---------- */
.site-content h1, .entry-title, .woocommerce div.product .product_title.entry-title,
.woocommerce-products-header__title, .archive .page-title {
  font-family: var(--pc-kop); font-weight: 700; letter-spacing: -.015em; line-height: 1.1;
  font-size: 32px !important; color: var(--pc-navy) !important; margin: 0 0 6px !important; text-transform: none !important;
}
.site-content h2, .woocommerce div.product h2, .pc-kern h2, .related.products > h2, .up-sells > h2, .cross-sells > h2 {
  font-family: var(--pc-kop); font-weight: 700; letter-spacing: -.01em; line-height: 1.2;
  font-size: 22px !important; color: var(--pc-navy) !important; margin: var(--pc-sectie) 0 14px !important; text-transform: none !important;
}
.site-content h3 { font-size: 17px !important; font-weight: 600 !important; color: var(--pc-ink) !important; margin: 24px 0 8px !important; }
.woocommerce-breadcrumb { font-size: 12.5px !important; color: var(--pc-muted) !important; margin: 0 0 10px !important; }
.woocommerce-breadcrumb a { color: var(--pc-muted) !important; }
.woocommerce-result-count { font-size: 13px !important; color: var(--pc-muted) !important; }

/* ---------- 3. knoppen: één oranje hoofdactie, de rest navy of omlijnd ---------- */
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.woocommerce #respond input#submit, .elementor-button, .pc-laadmeer, .facetwp-load-more {
  border-radius: var(--pc-r-knop) !important; font-family: var(--pc-kop) !important; font-weight: 700 !important;
  letter-spacing: 0 !important; text-transform: none !important; box-shadow: none !important; transition: background .15s, color .15s, border-color .15s;
}
/* secundair: omlijnd navy (productkaarten, laad meer, terug naar winkel, coupon) */
.woocommerce ul.products li.product a.button, .woocommerce ul.products li.product .woocommerce-loop-product__buttons .button,
.pc-laadmeer, .facetwp-load-more, .woocommerce-cart .coupon .button, .woocommerce-cart .actions > .button,
.woocommerce-checkout .coupon .button, .woocommerce-account .button:not(.woocommerce-Button--primary) {
  background: transparent !important; color: var(--pc-navy) !important; border: 1.5px solid var(--pc-navy) !important;
}
.woocommerce ul.products li.product a.button:hover, .pc-laadmeer:hover, .facetwp-load-more:hover,
.woocommerce-cart .coupon .button:hover, .woocommerce-checkout .coupon .button:hover {
  background: var(--pc-navy) !important; color: #fff !important;
}
.woocommerce ul.products li.product a.added_to_cart { color: var(--pc-teal) !important; }
/* primair: oranje — alleen de ene hoofdactie per pagina */
.woocommerce div.product form.cart .single_add_to_cart_button, .woocommerce-cart .checkout-button,
.woocommerce #place_order, .woocommerce-account .woocommerce-Button--primary, .pc-stickybar .button {
  background: var(--pc-actie) !important; color: #fff !important; border: 0 !important;
}
.woocommerce div.product form.cart .single_add_to_cart_button:hover, .woocommerce-cart .checkout-button:hover,
.woocommerce #place_order:hover { background: var(--pc-actie-licht) !important; }

/* ---------- 4. productkaarten zonder rand ---------- */
.woocommerce ul.products li.product, body ul.products.elementor-grid li.product {
  background: #fff !important; border: 1px solid transparent !important; box-shadow: none !important; padding: 10px !important; border-radius: var(--pc-r-kaart) !important;
  transition: box-shadow .18s, border-color .18s;
}
.woocommerce ul.products li.product:hover { border-color: var(--pc-line) !important; box-shadow: 0 10px 28px rgba(27,34,51,.10) !important; }
.woocommerce ul.products li.product .astra-shop-thumbnail-wrap { margin-bottom: 12px !important; }
.woocommerce ul.products li.product img, body ul.products.elementor-grid li.product img {
  background: #fff !important; border-radius: 8px !important; padding: 6px; box-sizing: border-box;
}
.woocommerce ul.products li.product .astra-shop-summary-wrap { padding: 0 !important; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: 14.5px !important; font-weight: 600 !important; line-height: 1.35 !important; }
.woocommerce ul.products li.product .pc-merk { color: var(--pc-teal) !important; font-size: 11px !important; letter-spacing: .09em !important; }
.woocommerce ul.products li.product .price { font-size: 17px !important; font-weight: 700 !important; color: var(--pc-ink) !important; }
.woocommerce ul.products li.product .pc-chips span { background: var(--pc-vlak) !important; color: var(--pc-muted) !important; border-radius: 6px !important; }
.woocommerce ul.products { gap: 28px 20px !important; }
@media (min-width: 922px) { .woocommerce ul.products, body ul.products.elementor-grid { row-gap: 32px !important; } }

/* ---------- 5. filterbalk zonder kader ---------- */
.pc-filterbalk {
  background: transparent !important; border: 0 !important; border-top: 1px solid var(--pc-line) !important;
  border-bottom: 1px solid var(--pc-line) !important; border-radius: 0 !important; box-shadow: none !important;
  padding: 14px 0 !important; margin: 8px 0 28px !important;
}
.pc-fl { color: var(--pc-muted) !important; letter-spacing: .08em !important; font-size: 11px !important; }
.pc-filterbalk .fs-label-wrap, .pc-filterbalk .facetwp-type-fselect .fs-label-wrap {
  border: 1px solid var(--pc-line) !important; border-radius: 999px !important; background: #fff !important; box-shadow: none !important;
}
.pc-filterbalk .facetwp-checkbox { font-size: 13.5px; }
.pc-filterbalk .facetwp-slider .noUi-connect { background: var(--pc-teal) !important; }
.pc-filterbalk .facetwp-slider .noUi-handle { border-color: var(--pc-teal) !important; box-shadow: none !important; }
.pc-filterbalk .facetwp-selections li { background: var(--pc-vlak) !important; border-radius: 999px !important; }
.pc-filter-knop { border: 1px solid var(--pc-line) !important; border-radius: var(--pc-r-knop) !important; background: #fff !important; box-shadow: none !important; }

/* ---------- 6. categorielagen (DEEL AD) ---------- */
.pc-categorielagen .pc-cat-intro {
  font-family: var(--pc-serif) !important; font-size: 17px !important; line-height: 1.5 !important; color: var(--pc-ink) !important; max-width: 66ch; margin: 4px 0 18px !important;
}
.pc-categorielagen .pc-chip { border-color: var(--pc-line) !important; }
.pc-categorielagen .pc-laag-2 .pc-chip { background: var(--pc-vlak) !important; border-color: transparent !important; }
.pc-categorielagen .pc-laag-2 .pc-chip-actief { background: var(--pc-teal) !important; color: #fff !important; }
.pc-categorielagen .pc-tegel { border: 1px solid var(--pc-line-soft) !important; background: #fff !important; border-radius: var(--pc-r-kaart) !important; transition: box-shadow .18s, border-color .18s; }
.pc-categorielagen .pc-tegel:hover { border-color: var(--pc-line) !important; box-shadow: 0 10px 28px rgba(27,34,51,.10) !important; }
.pc-categorielagen .pc-tegel-beeld { background: #fff !important; }
.pc-categorielagen .pc-tegel-beeld img { mix-blend-mode: normal !important; }
.pc-categorielagen .pc-tegel-naam { padding: 8px 12px 0 !important; }
.pc-categorielagen .pc-tegel-n { padding: 0 12px 10px !important; }
.pc-categorielagen .pc-tegels { gap: 16px !important; margin: 12px 0 8px !important; }

/* ---------- 7. productpagina ---------- */
.woocommerce div.product p.price { font-size: 30px !important; font-weight: 700 !important; color: var(--pc-ink) !important; margin: 14px 0 4px !important; }
.woocommerce div.product .woocommerce-Price-taxLabel { color: var(--pc-muted); font-weight: 400; }
.single-product form.cart, .single-product .elementor-add-to-cart form.cart {
  background: var(--pc-vlak) !important; border: 0 !important; border-radius: var(--pc-r-kaart) !important; padding: 16px !important; margin: 18px 0 !important;
}
.woocommerce div.product form.cart div.quantity { border: 1px solid var(--pc-line) !important; border-radius: var(--pc-r-knop) !important; background: #fff !important; box-shadow: none !important; }
.woocommerce div.product form.cart div.quantity .qty { background: transparent !important; border: 0 !important; }
.woocommerce div.product .product_meta { color: var(--pc-muted); font-size: 12.5px; margin-top: 14px; }
.woocommerce div.product .product_meta a { color: var(--pc-teal); }
/* specificaties: geen tabelkader, alleen haarlijnen */
table.shop_attributes, table.woocommerce-product-attributes { border: 0 !important; border-collapse: collapse !important; }
table.shop_attributes th, table.shop_attributes td, table.woocommerce-product-attributes th, table.woocommerce-product-attributes td {
  border: 0 !important; border-bottom: 1px solid var(--pc-line-soft) !important; background: transparent !important; padding: 10px 12px 10px 0 !important; font-size: 14px !important;
}
table.shop_attributes th, table.woocommerce-product-attributes th { color: var(--pc-muted) !important; font-weight: 500 !important; width: 220px; }
.pc-kernvak { background: var(--pc-vlak) !important; border: 0 !important; border-radius: var(--pc-r-kaart) !important; box-shadow: none !important; }
/* vergelijktabel en andere tabellen: licht */
.pc-vergelijk table, .site-content table.pc-tabel { border: 0 !important; }
.pc-vergelijk th { background: var(--pc-vlak) !important; color: var(--pc-muted) !important; border: 0 !important; font-size: 11px !important; letter-spacing: .08em; }
.pc-vergelijk td { border: 0 !important; border-bottom: 1px solid var(--pc-line-soft) !important; background: transparent !important; }
.woocommerce-tabs, .woocommerce div.product .woocommerce-tabs ul.tabs { border: 0 !important; }
.related.products, .up-sells, .cross-sells { margin-top: var(--pc-sectie) !important; }
.woocommerce-product-gallery__wrapper, .woocommerce-product-gallery__image img { border-radius: var(--pc-r-kaart) !important; background: #fff; }
.pc-stickybar { border-top: 1px solid var(--pc-line) !important; box-shadow: none !important; background: #fff !important; }

/* ---------- 8. winkelmand, afrekenen, account ---------- */
.woocommerce-cart table.shop_table, .woocommerce-checkout table.shop_table, .woocommerce-account table.shop_table {
  border: 0 !important; border-collapse: collapse !important; border-radius: 0 !important;
}
.woocommerce table.shop_table th { background: transparent !important; border: 0 !important; border-bottom: 1px solid var(--pc-line) !important; color: var(--pc-muted) !important; font-size: 11px !important; letter-spacing: .08em; text-transform: uppercase; font-weight: 700 !important; }
.woocommerce table.shop_table td { border: 0 !important; border-bottom: 1px solid var(--pc-line-soft) !important; background: transparent !important; padding: 14px 8px !important; }
.woocommerce-cart table.shop_table td.product-thumbnail img { border-radius: 8px; background: #fff; border: 1px solid var(--pc-line-soft); }
.woocommerce-cart .cart_totals, .woocommerce-checkout #order_review, .woocommerce-checkout .woocommerce-checkout-review-order,
.woocommerce-account .woocommerce-MyAccount-navigation {
  background: var(--pc-vlak) !important; border: 0 !important; border-radius: var(--pc-r-kaart) !important; padding: 20px 22px !important; box-shadow: none !important;
}
.woocommerce-cart .cart_totals h2, .woocommerce-checkout #order_review h3, .woocommerce-checkout h3#order_review_heading { margin-top: 0 !important; font-size: 18px !important; }
.woocommerce-cart .cart_totals table.shop_table td, .woocommerce-cart .cart_totals table.shop_table th { border-bottom: 1px solid var(--pc-line) !important; padding: 10px 0 !important; text-transform: none; letter-spacing: 0; font-size: 14px !important; }
.woocommerce-cart .cart_totals .order-total td, .woocommerce-cart .cart_totals .order-total th { font-weight: 700 !important; font-size: 16px !important; border-bottom: 0 !important; }
.woocommerce-cart .checkout-button, .woocommerce #place_order { display: block; width: 100%; padding: 15px !important; font-size: 15px !important; margin-top: 12px !important; }
.woocommerce-message, .woocommerce-info, .woocommerce-error, .woocommerce-notice {
  background: var(--pc-vlak) !important; border: 0 !important; border-left: 3px solid var(--pc-teal) !important; border-radius: 8px !important; box-shadow: none !important; color: var(--pc-ink) !important;
}
.woocommerce-error { border-left-color: var(--pc-bad, #B3341E) !important; }
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce form .form-row select, .select2-container .select2-selection--single {
  border: 1px solid var(--pc-line) !important; border-radius: var(--pc-r-knop) !important; background: #fff !important; box-shadow: none !important; min-height: 46px;
}
.woocommerce form .form-row input.input-text:focus, .woocommerce form .form-row textarea:focus { border-color: var(--pc-teal) !important; outline: 0; }
.woocommerce-checkout #payment { background: transparent !important; border-radius: 0 !important; }
.woocommerce-checkout #payment ul.payment_methods { border: 0 !important; padding: 0 !important; }
.woocommerce-checkout #payment ul.payment_methods li { background: #fff !important; border: 1px solid var(--pc-line) !important; border-radius: var(--pc-r-knop) !important; margin-bottom: 8px !important; padding: 12px 14px !important; }
.woocommerce-checkout #payment div.payment_box { background: var(--pc-vlak) !important; border-radius: 8px !important; }
.woocommerce-checkout #payment div.payment_box::before { display: none !important; }
.woocommerce-account .woocommerce-MyAccount-navigation li a { border-radius: 8px !important; }
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a { background: #fff !important; color: var(--pc-navy) !important; }

/* ---------- 9. witruimte en ritme ---------- */
.site-content .ast-container, .single-product .site-content .ast-container { padding-top: 28px; }
.woocommerce .products + .woocommerce-pagination, .pc-laadmeer { margin-top: 32px; }
.pc-fb, .pc-fb-in { padding-top: var(--pc-sectie); padding-bottom: var(--pc-sectie); }
.woocommerce-cart .site-content .entry-content > .woocommerce, .woocommerce-checkout .site-content .entry-content > .woocommerce { margin-top: 12px; }

/* ---------- 10. mobiel ---------- */
@media (max-width: 767px) {
  .site-content h1, .entry-title, .woocommerce div.product .product_title.entry-title { font-size: 26px !important; }
  .site-content h2 { font-size: 20px !important; margin-top: 36px !important; }
  :root { --pc-sectie: 36px; }
  .single-product form.cart, .single-product .elementor-add-to-cart form.cart { padding: 12px !important; }
  .woocommerce div.product form.cart .single_add_to_cart_button, .single-product form.cart button.single_add_to_cart_button {
    font-size: 14.5px !important; padding: 12px 14px !important; min-height: 46px !important; line-height: 1.2 !important;
  }
  .woocommerce div.product p.price { font-size: 26px !important; }
  .woocommerce ul.products, body ul.products.elementor-grid { gap: 20px 12px !important; }
  .woocommerce ul.products li.product img, body ul.products.elementor-grid li.product img { padding: 6px; }
  .woocommerce-cart .cart_totals, .woocommerce-checkout #order_review { padding: 16px !important; }
  .pc-categorielagen .pc-cat-intro { font-size: 16px !important; }
}

/* ---------- 11. homepage: kleur blijft, alleen randen en dubbele kaders weg (Ward 17-09 16:05: "niet kleurloos") ---------- */
.pch .pch-tile { border: 0 !important; border-radius: var(--pc-r-kaart) !important; }
.pch .pch-tile[style*="background:#fff"], .pch .pch-tile[style*="background: #fff"] { background: #EAF2F6 !important; color: var(--pc-navy) !important; }
.pch .pch-tile:hover { opacity: .92 !important; }
.pch-row > a, .pch-row > div { border-radius: var(--pc-r-kaart) !important; box-shadow: none !important; }
.pch-row [style*="border:1px solid"], .pch-row [style*="border: 1px solid"] { border: 0 !important; }
.pch-row [style*="background:#fff"] { background: #fff !important; box-shadow: 0 1px 2px rgba(27,34,51,.04), 0 8px 24px rgba(27,34,51,.06) !important; }   /* merkenbox en gidskaarten: wit met zachte lift i.p.v. rand */
.pch-row button, .pch-row input[type="submit"] { border-radius: var(--pc-r-knop) !important; }
.pch-row input[type="email"], .pch-row input[type="text"] { border-radius: var(--pc-r-knop) !important; }
.pch, .pch-row { margin-top: 0 !important; }
.pch-row { gap: 20px !important; }

/* ---------- 12. correcties na de eerste meting (17-09 15:45) ---------- */
.pc-filterbalk .pc-fl, .pc-filterbalk .pc-f-item > span:first-child { font-size: 11px !important; letter-spacing: .08em !important; color: var(--pc-muted) !important; font-weight: 700 !important; }
.woocommerce div.product form.cart .single_add_to_cart_button { white-space: nowrap !important; min-width: 220px; }
@media (max-width: 767px) { .woocommerce div.product form.cart .single_add_to_cart_button { min-width: 0; white-space: normal !important; } }


/* ---------- 14. filterbalk opnieuw: label klein boven het veld, alles op één as ---------- */
.pc-filterbalk { display: flex !important; flex-wrap: wrap !important; align-items: flex-end !important; gap: 12px 28px !important; padding: 16px 0 !important; }
.pc-filterbalk .pc-f-item { display: flex !important; flex-direction: column !important; align-items: flex-start !important; gap: 6px !important; width: auto !important; margin: 0 !important; }
.pc-filterbalk h3, .pc-filterbalk .facetwp-facet-label, .pc-filterbalk .pc-fl {
  font-size: 11px !important; font-weight: 700 !important; letter-spacing: .08em !important; text-transform: uppercase !important;
  color: var(--pc-muted) !important; margin: 0 !important; padding: 0 !important; line-height: 1.2 !important; display: block !important;
}
.pc-f-prijs .pc-fl { display: none !important; }
.pc-filterbalk .facetwp-facet-voorraad .facetwp-facet-label { display: block !important; }
.pc-filterbalk .fs-wrap .fs-label-wrap, .pc-filterbalk .woocommerce-ordering select {
  min-height: 42px !important; border: 1px solid var(--pc-line) !important; border-radius: var(--pc-r-knop) !important; background: #fff !important; font-size: 14px !important; font-weight: 500 !important; color: var(--pc-ink) !important; box-shadow: none !important;
}
.pc-filterbalk .fs-wrap .fs-label-wrap { min-width: 200px; }
.pc-filterbalk .fs-wrap .fs-label-wrap .fs-label { padding: 9px 14px !important; }
.pc-f-prijs .facetwp-facet-prijs { width: 220px !important; padding: 12px 8px 0 !important; }
.pc-f-prijs .facetwp-slider-label { font-size: 12.5px !important; color: var(--pc-muted) !important; margin-top: 6px !important; }
.pc-f-voorraad .facetwp-checkbox { min-height: 42px; display: flex !important; align-items: center; padding: 0 0 0 26px !important; background-position: 0 center !important; font-size: 14px !important; }
.pc-f-voorraad .facetwp-counter { color: var(--pc-muted) !important; font-size: 12px !important; }
.pc-filterbalk .pc-f-rechts { margin-left: auto !important; width: auto !important; display: flex !important; align-items: center !important; gap: 16px !important; align-self: flex-end; }
.pc-filterbalk .woocommerce-result-count { font-size: 13px !important; color: var(--pc-muted) !important; margin: 0 !important; }
.pc-filterbalk .woocommerce-ordering select { padding: 9px 36px 9px 14px !important; font-weight: 600 !important; }
.pc-filterbalk .pc-f-sel { width: 100% !important; margin: 0 !important; }
.pc-filterbalk .pc-f-sel:not(:has(li)) { display: none !important; }
.pc-filterbalk .pc-f-sel { order: 10; }
@media (max-width: 921px) {
  .pc-filterbalk { display: block !important; padding: 12px 14px !important; }
  .pc-filterbalk .pc-f-item { width: 100% !important; margin: 0 0 12px !important; }
  .pc-filterbalk .fs-wrap .fs-label-wrap { min-width: 0; width: 100%; }
  .pc-filterbalk .pc-f-rechts { width: 100% !important; justify-content: space-between; }
}

/* ---------- 15. uitklapmenu: compact panel onder het item, drie kolommen ---------- */
.ast-below-header-bar .main-header-menu > .menu-item { position: relative; }
.ast-below-header-bar .main-header-menu > .menu-item > .sub-menu {
  left: 0 !important; right: auto !important; width: auto !important; min-width: 620px !important; max-width: 780px !important;
  padding: 16px 18px !important; margin: 0 !important; grid-template-columns: repeat(3, minmax(180px, 1fr)) !important; gap: 2px 20px !important;
  border: 1px solid var(--pc-line) !important; border-radius: var(--pc-r-kaart) !important; box-shadow: 0 14px 36px rgba(27,34,51,.14) !important;
}
.ast-below-header-bar .main-header-menu > .menu-item:nth-last-child(-n+3) > .sub-menu { left: auto !important; right: 0 !important; }
.ast-below-header-bar .main-header-menu > .menu-item > .sub-menu > .menu-item > .menu-link {
  font-size: 14px !important; font-weight: 600 !important; color: var(--pc-ink) !important; padding: 9px 12px !important; border: 0 !important; border-radius: 8px !important; margin: 0 !important; line-height: 1.3 !important;
}
.ast-below-header-bar .main-header-menu > .menu-item > .sub-menu > .menu-item > .menu-link:hover { background: var(--pc-vlak) !important; color: var(--pc-navy) !important; }
.ast-below-header-bar .main-header-menu > .menu-item > .sub-menu > .menu-item.menu-item-has-children > .menu-link::after { content: "›"; color: var(--pc-teal); margin-left: auto; padding-left: 10px; }
.ast-below-header-bar .main-header-menu > .menu-item > .sub-menu > .pc-alles { grid-column: 1 / -1; order: 1; border-top: 1px solid var(--pc-line-soft); margin-top: 8px; padding-top: 6px; }
.ast-below-header-bar .main-header-menu > .menu-item > .sub-menu > .pc-alles > .menu-link { color: var(--pc-teal) !important; font-weight: 700 !important; }


/* ---------- 16. iconen in het uitklapmenu voor Kantoor & papier en Printen & supplies (17-09, consequent met de andere hoofditems) ---------- */
.main-header-menu .sub-menu a[href*="/papier-en-printen/"]::before, .main-header-menu .sub-menu a[href*="/schrijven-en-corrigeren/"]::before, .main-header-menu .sub-menu a[href*="/ordenen-en-archiveren/"]::before, .main-header-menu .sub-menu a[href*="/schriften-blokken-en-agendas/"]::before, .main-header-menu .sub-menu a[href*="/bureau-en-bevestigen/"]::before, .main-header-menu .sub-menu a[href*="/tekenen-hobby-en-school/"]::before, .main-header-menu .sub-menu a[href*="/inktcartridge/"]::before, .main-header-menu .sub-menu a[href*="/toner/"]::before, .main-header-menu .sub-menu a[href*="/compatible-toner/"]::before, .main-header-menu .sub-menu a[href*="/drum/"]::before, .main-header-menu .sub-menu a[href*="/faxen-printers-en-copiers/"]::before, .main-header-menu .sub-menu a[href*="/tape-lint/"]::before, .main-header-menu .sub-menu a[href*="/transfer/"]::before { content:""; display:inline-block; width:17px; height:17px; margin-right:9px; vertical-align:-3px; flex:0 0 17px; background-repeat:no-repeat; background-position:center; background-size:17px 17px; }
.main-header-menu .sub-menu a[href*="/papier-en-printen/"]::before { background-image:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%235B6E7E%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M6 3h9l5 5v13H6z%22/%3E%3Cpath d=%22M15 3v5h5%22/%3E%3Cpath d=%22M9 13h6M9 17h6%22/%3E%3C/svg%3E"); }
.main-header-menu .sub-menu a[href*="/schrijven-en-corrigeren/"]::before { background-image:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%235B6E7E%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M4 20l4-1 11-11-3-3L5 16z%22/%3E%3Cpath d=%22M13 7l3 3%22/%3E%3C/svg%3E"); }
.main-header-menu .sub-menu a[href*="/ordenen-en-archiveren/"]::before { background-image:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%235B6E7E%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M3 7h6l2 2h10v11H3z%22/%3E%3Cpath d=%22M3 11h18%22/%3E%3C/svg%3E"); }
.main-header-menu .sub-menu a[href*="/schriften-blokken-en-agendas/"]::before { background-image:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%235B6E7E%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Crect x=%225%22 y=%223%22 width=%2214%22 height=%2218%22 rx=%221.5%22/%3E%3Cpath d=%22M9 3v18M12 8h4M12 12h4%22/%3E%3C/svg%3E"); }
.main-header-menu .sub-menu a[href*="/bureau-en-bevestigen/"]::before { background-image:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%235B6E7E%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M4 9h13a3 3 0 0 1 0 6H8%22/%3E%3Cpath d=%22M4 9v6h4%22/%3E%3Cpath d=%22M8 15v3%22/%3E%3C/svg%3E"); }
.main-header-menu .sub-menu a[href*="/tekenen-hobby-en-school/"]::before { background-image:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%235B6E7E%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M12 3a9 9 0 1 0 0 18c1.5 0 2-1 2-2 0-1-1-1.5-1-2.5S14 15 15 15h2a4 4 0 0 0 4-4c0-4.5-4-8-9-8z%22/%3E%3Ccircle cx=%228%22 cy=%2210%22 r=%221%22/%3E%3Ccircle cx=%2212%22 cy=%227%22 r=%221%22/%3E%3Ccircle cx=%2216%22 cy=%2210%22 r=%221%22/%3E%3C/svg%3E"); }
.main-header-menu .sub-menu a[href*="/inktcartridge/"]::before { background-image:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%235B6E7E%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M12 3s6 7 6 11a6 6 0 0 1-12 0c0-4 6-11 6-11z%22/%3E%3C/svg%3E"); }
.main-header-menu .sub-menu a[href*="/toner/"]::before { background-image:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%235B6E7E%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Crect x=%224%22 y=%228%22 width=%2216%22 height=%2210%22 rx=%222%22/%3E%3Cpath d=%22M8 8V5h8v3%22/%3E%3Cpath d=%22M8 13h8%22/%3E%3C/svg%3E"); }
.main-header-menu .sub-menu a[href*="/compatible-toner/"]::before { background-image:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%235B6E7E%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Crect x=%224%22 y=%228%22 width=%2216%22 height=%2210%22 rx=%222%22/%3E%3Cpath d=%22M8 8V5h8v3%22/%3E%3Cpath d=%22M9 13l2 2 4-4%22/%3E%3C/svg%3E"); }
.main-header-menu .sub-menu a[href*="/drum/"]::before { background-image:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%235B6E7E%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Crect x=%224%22 y=%229%22 width=%2216%22 height=%226%22 rx=%223%22/%3E%3Cpath d=%22M4 12h16%22/%3E%3Cpath d=%22M7 9V6M17 9V6%22/%3E%3C/svg%3E"); }
.main-header-menu .sub-menu a[href*="/faxen-printers-en-copiers/"]::before { background-image:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%235B6E7E%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M6 9V3h12v6%22/%3E%3Crect x=%223%22 y=%229%22 width=%2218%22 height=%228%22 rx=%222%22/%3E%3Cpath d=%22M6 17v4h12v-4%22/%3E%3C/svg%3E"); }
.main-header-menu .sub-menu a[href*="/tape-lint/"]::before { background-image:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%235B6E7E%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%228%22/%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%223%22/%3E%3Cpath d=%22M12 20h8%22/%3E%3C/svg%3E"); }
.main-header-menu .sub-menu a[href*="/transfer/"]::before { background-image:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%235B6E7E%22 stroke-width=%221.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M4 8h13l-3-3%22/%3E%3Cpath d=%22M20 16H7l3 3%22/%3E%3C/svg%3E"); }

/* ---------- 17. zoekbalk in de kop (zelfde id-specificiteit als de Customizer-regels, later geladen = wint) ---------- */
#ast-desktop-header .dgwt-wcas-search-wrapp { max-width: 640px !important; width: 100%; }
#ast-desktop-header .dgwt-wcas-sf-wrapp { position: relative !important; border-radius: 999px !important; overflow: visible !important; background: transparent !important; }
#ast-desktop-header .dgwt-wcas-search-input, #ast-desktop-header input.dgwt-wcas-search-input {
  height: 46px !important; width: 100% !important; padding: 0 56px 0 22px !important; border: 0 !important; border-radius: 999px !important; background: #fff !important;
  font-family: var(--pc-tekst) !important; font-size: 15px !important; font-style: normal !important; color: var(--pc-ink) !important; box-shadow: 0 1px 2px rgba(0,0,0,.08) inset !important; transition: box-shadow .15s;
}
#ast-desktop-header .dgwt-wcas-search-input::placeholder { color: #7c8590 !important; font-style: normal !important; opacity: 1 !important; }
#ast-desktop-header .dgwt-wcas-search-input:focus { outline: 0 !important; box-shadow: 0 0 0 3px rgba(140,208,224,.6) !important; }
#ast-desktop-header .dgwt-wcas-search-submit {
  position: absolute !important; right: 5px !important; top: 5px !important; width: 36px !important; height: 36px !important; min-width: 0 !important; padding: 0 !important; margin: 0 !important;
  border: 0 !important; border-radius: 999px !important; background: var(--pc-teal) !important; display: flex !important; align-items: center !important; justify-content: center !important;
}
#ast-desktop-header .dgwt-wcas-search-submit svg { width: 16px !important; height: 16px !important; }
#ast-desktop-header .dgwt-wcas-search-submit svg, #ast-desktop-header .dgwt-wcas-search-submit svg path { fill: #fff !important; }
#ast-desktop-header .dgwt-wcas-search-submit:hover { background: #0A5A70 !important; }
#ast-desktop-header .dgwt-wcas-preloader { right: 50px !important; }
.dgwt-wcas-suggestions-wrapp { border: 1px solid var(--pc-line) !important; border-radius: var(--pc-r-kaart) !important; box-shadow: 0 14px 36px rgba(27,34,51,.14) !important; overflow: hidden; margin-top: 6px !important; }

/* ---------- 18. filterbalk op de echte FacetWP-DOM: .facet-wrap > h3.facet-label + .facetwp-facet ---------- */
.pc-filterbalk { align-items: flex-start !important; gap: 12px 32px !important; padding: 16px 0 !important; }
.pc-filterbalk .pc-f-item { display: block !important; width: auto !important; margin: 0 !important; }
.pc-filterbalk .facet-wrap { display: flex !important; flex-direction: column !important; align-items: flex-start !important; gap: 8px !important; margin: 0 !important; }
.pc-filterbalk h3.facet-label, .pc-filterbalk .facet-label, .pc-filterbalk .pc-fl {
  font-size: 11px !important; font-weight: 700 !important; letter-spacing: .08em !important; text-transform: uppercase !important; color: var(--pc-muted) !important;
  margin: 0 !important; padding: 0 !important; line-height: 1.2 !important; display: block !important; font-family: var(--pc-kop) !important;
}
.pc-f-prijs .pc-fl { display: none !important; }
.pc-filterbalk .facet-wrap > .facetwp-facet { display: flex !important; align-items: center !important; min-height: 42px !important; margin: 0 !important; gap: 12px; }
.pc-filterbalk .facetwp-type-fselect .fs-wrap { display: flex !important; align-items: center !important; min-height: 42px !important; min-width: 220px; }
.pc-filterbalk .fs-wrap .fs-label-wrap { width: 100%; min-height: 42px !important; border: 1px solid var(--pc-line) !important; border-radius: var(--pc-r-knop) !important; background: #fff !important; box-shadow: none !important; display: flex !important; align-items: center !important; }
.pc-filterbalk .fs-wrap .fs-label-wrap .fs-label { padding: 0 34px 0 14px !important; font-size: 14px !important; font-weight: 500 !important; color: var(--pc-ink) !important; }
.pc-filterbalk .fs-wrap .fs-arrow { right: 14px !important; border-top-color: var(--pc-ink) !important; }
.pc-f-prijs .facetwp-facet-prijs { width: auto !important; padding: 0 10px !important; }
.pc-f-prijs .facetwp-slider-wrap { width: 190px !important; margin: 0 !important; }
.pc-f-prijs .facetwp-slider-label { margin: 0 !important; white-space: nowrap; font-variant-numeric: tabular-nums; font-size: 13px !important; color: var(--pc-muted) !important; }
.pc-f-prijs .facetwp-slider-reset { margin: 0 0 0 4px !important; font-size: 12px; }
.pc-f-voorraad .facetwp-checkbox { min-height: 0 !important; padding: 0 0 0 26px !important; background-position: 0 center !important; font-size: 14px !important; margin: 0 !important; }
.pc-filterbalk .pc-f-rechts { margin-left: auto !important; width: auto !important; display: flex !important; align-items: center !important; gap: 16px !important; align-self: flex-start !important; padding-top: 22px; }
.pc-filterbalk .woocommerce-result-count { font-size: 13px !important; color: var(--pc-muted) !important; margin: 0 !important; }
.pc-filterbalk .woocommerce-ordering select { min-height: 42px !important; border: 1px solid var(--pc-line) !important; border-radius: var(--pc-r-knop) !important; background-color: #fff !important; font-size: 14px !important; font-weight: 600 !important; color: var(--pc-ink) !important; padding: 0 36px 0 14px !important; box-shadow: none !important; }
.pc-filterbalk .pc-f-sel:not(:has(li)) { display: none !important; }
.pc-filterbalk .pc-f-sel { order: 10; width: 100% !important; margin: 0 !important; }
.pc-filterbalk .facetwp-selections ul { margin: 0 !important; }
@media (max-width: 921px) {
  .pc-filterbalk { display: block !important; padding: 12px 14px !important; }
  .pc-filterbalk .pc-f-item { width: 100% !important; margin: 0 0 12px !important; }
  .pc-filterbalk .facetwp-type-fselect .fs-wrap { min-width: 0; width: 100%; }
  .pc-filterbalk .pc-f-rechts { width: 100% !important; justify-content: space-between; padding-top: 0; }
}
