/*
Theme Name:   Woodmart Child
Description:  Child theme for Woodmart with custom functionality.
Author:       Your Name
Template:     woodmart
Version:      1.0.0
Text Domain:  woodmart-child
*/

/* ==========================================================================
   0) Fonts
   ========================================================================== */

/* Titillium Web – lokaal, alleen WOFF2 */
@font-face{
  font-family:"Titillium Web";
  font-style:normal;
  font-weight:400; /* regular */
  font-display:swap;
  src:url("assets/fonts/titillium/titillium-web-v19-latin-regular.woff2") format("woff2");
}
@font-face{
  font-family:"Titillium Web";
  font-style:normal;
  font-weight:600; /* semibold */
  font-display:swap;
  src:url("assets/fonts/titillium/titillium-web-v19-latin-600.woff2") format("woff2");
}
/* 700 -> map naar 600 om extra weight te vermijden */
@font-face{
  font-family:"Titillium Web";
  font-style:normal;
  font-weight:700;
  font-display:swap;
  src:url("assets/fonts/titillium/titillium-web-v19-latin-600.woff2") format("woff2");
}

/* ==========================================================================
   1) Basisset & variabelen
   ========================================================================== */
:root{
  --trl-green: #37B73E;
  --trl-red:   #EC4642;
  --trl-red-hover: #ff6156;
  --trl-gray-900: #000;
  --trl-gray-700: #3d3d3d;
  --trl-card-border: #e9e9e9; /* egale kaart-rand */
}

/* ==========================================================================
   2) Componenten & globale tweaks
   ========================================================================== */

/* Progress bar kleur - alleen 100% */
body .wd-progress-bar .progress-bar[style*="100%"] { background-color: var(--trl-green); }

/* B2BKing conversatie */
.b2bking_conversation_message { font-family: 'Titillium Web', sans-serif !important; color: #000 !important; }

/* Purchase lists header kleur */
table#b2bking_purchase_lists_table thead tr th { background: #d7d7d7 !important; }

/* Bulkorder & nieuwe gesprekken padding */
.b2bking_bulkorder_form_container_content,
.b2bking_myaccount_new_conversation_content { padding: 10px; }

/* Product labels */
body .product-label { font-size: 9px; }
/* Alleen SALE badge verbergen */
.product-label.onsale { display: none !important; }

/* Price suffix styling (sticky btn) */
.wd-sticky-btn .price small.woocommerce-price-suffix{
  display:inline; margin-left:5px; font-size:12px; color:rgba(255,255,255,0.5);
}

/* Knoppen afgeronde hoeken (B2B/WMCA) */
#b2bking_request_custom_quote_button,
.cart-table-section > .cart .cart-actions > .button,
.cart-table-section > .cart .cart-actions > .wd-coupon-form,
a.button.wcmca_add_new_address_button,
button.button.wcmca_add_new_address_button,
.wcmca_bulk_delete_button,
.wcmca_delete_all_button,
#wcmca_save_address_button_shipping,
#wcmca_save_address_button_billing { border-radius: var(--btn-default-brd-radius); }

/* Adres container bulk orders */
.wcmca_address_container { background: rgba(248,248,248,0.24) !important; }

/* Swatches desktop */
[class*="wd-swatches"].wd-size-large {
  --wd-swatch-size:130px !important;
  --wd-swatch-text-size:18px;
}
/* Swatches tablet tussenmaat */
@media (min-width:768px) and (max-width:1024px){
  [class*="wd-swatches"].wd-size-large {
    --wd-swatch-size:90px !important;
    --wd-swatch-text-size:14px;
  }
}

/* Menufoto’s */
.wd-nav-img { max-height:65px; }

/* Filter swatches regels */
.wd-swatches-filter.wd-layout-double li {
  flex: 0 1 calc(25% - (var(--wd-swatch-h-sp) / 1)) !important;
}

/* Filter labels consistent (tablet/desktop) */
@media (min-width:768px){
  .wd-filter-lable{
    font-size:14px;
    line-height:1.3;
    height:1.5em;
    display:block;
    overflow:hidden;
    white-space:normal;
    text-align:left;
  }
  li.wc-layered-nav-term.wd-swatches-filter-term{
    min-height:100px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    text-align:center;
  }
  .wd-filter-lable + .count{ margin-top:4px; }
}

/* Alleen TOPBAR: labels volledig tonen op desktop/tablet */
@media (min-width:768px){
  .filters-area.always-open.has-arrow .wd-filter-lable{
    height:auto !important;
    max-height:none !important;
    overflow:visible !important;
    white-space:normal !important;
    display:block;
    text-align:left;
  }
}

/* Product grid randen – alleen buiten product-archive/tag/cat  */
body:not(.post-type-archive-product):not(.tax-product_cat):not(.tax-product_tag)
  .wd-products-with-bg:not(.products-bordered-grid) .product-wrapper,
body:not(.post-type-archive-product):not(.tax-product_cat):not(.tax-product_tag)
  .wd-products-with-bg:not(.products-bordered-grid) .wd-cat-wrap {
  position: relative;
  box-shadow: none !important; /* geen schaduw */
}
body:not(.post-type-archive-product):not(.tax-product_cat):not(.tax-product_tag)
  .wd-products-with-bg:not(.products-bordered-grid) .product-wrapper::after,
body:not(.post-type-archive-product):not(.tax-product_cat):not(.tax-product_tag)
  .wd-products-with-bg:not(.products-bordered-grid) .wd-cat-wrap::after {
  content: "";
  position: absolute;
  inset: 0;
  border: 1px solid var(--trl-card-border);
  border-radius: inherit;
  pointer-events: none;
}
/* En: op archive pagina's expliciet géén rand (failsafe) */
body.post-type-archive-product  .wd-products-with-bg .product-wrapper::after,
body.post-type-archive-product  .wd-products-with-bg .wd-cat-wrap::after,
body.tax-product_cat          .wd-products-with-bg .product-wrapper::after,
body.tax-product_cat          .wd-products-with-bg .wd-cat-wrap::after,
body.tax-product_tag          .wd-products-with-bg .product-wrapper::after,
body.tax-product_tag          .wd-products-with-bg .wd-cat-wrap::after {
  content: none !important;
  border: 0 !important;
}

/* Donkere swatches rand (zonder :is) */
body:not(.global-color-scheme-light) .wd-swatch.wd-bg .wd-swatch-bg:not([style^="background-color"])::before,
body:not(.global-color-scheme-light) .wd-swatch.wd-bg .wd-swatch-bg[style*="#ffffff"]::before,
body:not(.global-color-scheme-light) .wd-swatch.wd-bg .wd-swatch-bg[style*="#FFFFFF"]::before,
body:not(.global-color-scheme-light) .wd-swatch.wd-bg .wd-swatch-bg[style*="255,255,255"]::before,
.color-scheme-dark .wd-swatch.wd-bg .wd-swatch-bg:not([style^="background-color"])::before,
.color-scheme-dark .wd-swatch.wd-bg .wd-swatch-bg[style*="#ffffff"]::before,
.color-scheme-dark .wd-swatch.wd-bg .wd-swatch-bg[style*="#FFFFFF"]::before,
.color-scheme-dark .wd-swatch.wd-bg .wd-swatch-bg[style*="255,255,255"]::before{
  border:1px solid rgba(0,0,0,0.25);
  box-shadow:0 0 2px rgba(0,0,0,0.37) !important;
}

/* In-stock icoon kleur (Woodmart default) */
p.stock.wd-style-default.in-stock::before { color: rgb(66,207,116) !important; }

/* Verberg registratie header */
.b2bking_b2bregistration_only_register_header { display:none; }

/* Filters-area toggle */
.filters-area{
  position:relative;
  border-bottom:none;
  margin-bottom:24px;
  cursor:default;
}
/* DICHT: ~halve rij zichtbaar, maar WEL scrollbaar */
.woodmart-woocommerce-layered-nav .wd-scroll-content{
  max-height: calc(var(--wd-swatch-size, 120px) * 0.5 + 30px);
  overflow-y:auto;
  transition:max-height .35s ease;
  overscroll-behavior:auto;
  -webkit-overflow-scrolling:touch;
  border-bottom:0 !important;
  box-shadow:none !important;
}
/* OPEN: ruim zichtbaar + native scroll */
.filters-area.expanded .wd-scroll-content{
  max-height: 1000px !important;
  overflow-y:auto;
}

/* Divider + Toggle (één dikke lijn + pill) */
.filters-divider{
  position: relative;
  height: 36px;
  margin-top: 8px;
  border-top: 2px solid #d9d9d9;
}
.filters-arrow{
  position:absolute;
  left:50%;
  top:0;
  transform: translate(-50%, -50%);
  height:36px;
  padding:0 12px;
  border:1px solid #e7e1e1;
  border-radius:999px;
  background:#fff;
  display:flex;
  align-items:center;
  gap:8px;
  font-size:13px;
  font-weight:600;
  color:#6f6f6f;
  cursor:pointer;
  z-index:3;
  box-shadow:0 1px 2px rgba(0,0,0,.04);
  user-select:none;
}
.filters-arrow::before{ content:"▼"; font-size:12px; line-height:1; }
.filters-area.expanded .filters-arrow::before{ content:"▲"; }
.filters-label{ line-height:1; }
/* alleen tonen als nuttig */
.filters-arrow{ display:none; }
.filters-area.has-arrow > .filters-divider > .filters-arrow{ display:flex; }
/* Huidige dunne border uit Woodmart filters weghalen */
.filters-area { border: none !important; border-block: none !important; }
.filters-area .filters-inner-area { border: none !important; }

/* Menu-icoon pseudo’s (font-family expliciet) */
.conversations-link a::before{ content:"\f103"; font-family:'woodmart-font','FontAwesome',sans-serif; }
.offers-link a::before{ content:"\f126"; font-family:'woodmart-font','FontAwesome',sans-serif; }
.purchase-lists-link a::before{ content:"\f138"; font-family:'woodmart-font','FontAwesome',sans-serif; }
.bulkorder-link a::before{ content:"\f123"; font-family:'woodmart-font','FontAwesome',sans-serif; }

/* Prices-hidden fallback */
.prices-hidden table.shop_table.b2bking_tiered_price_table{ display:block !important; }

/* Afbeelding-verhouding product */
.wd-product .product-image-link{ display:block; width:100%; aspect-ratio:1; overflow:hidden; }
.wd-product .product-image-link img{ width:100%; height:100%; object-fit:contain; }

/* Bulkformulier: knoptekst verkleinen + container */
button.b2bking_bulkorder_indigo_add.b2bking_bulkorder_cream_add,
button.b2bking_bulkorder_indigo_add.b2bking_bulkorder_cream_add:focus{ font-size:12px !important; }
.b2bking_bulkorder_form_container_top_indigo.b2bking_bulkorder_form_container_top_cream{
  background:#f9f9f9; border:1px solid #ccc; border-radius:5px;
}

/* Product wrapper flex-kolommen */
.wd-product .product-wrapper,
.wd-product .product-element-bottom{ display:flex; flex-direction:column; }
.wd-product .wd-product-stock{ margin-top:auto !important; }

/* ACF downloads & video */
.acf-downloads h3{ color:#000; font-size:18px; font-weight:600; margin-bottom:10px; }
.acf-documenten{ list-style:none; padding:0; margin:0; }
.acf-documenten li{ margin-bottom:6px; display:flex; align-items:center; }

/* Hide strikethrough original prices */
.price del, .woocommerce .price del, .woocommerce-Price-amount del{ display:none !important; }

/* Cross-sells wrapper */
.single-product .cross-sells{ clear:both !important; margin:50px 0 !important; }
.single-product .cross-sells .section-title{ text-align:center !important; margin-bottom:30px !important; }
.single-product .cross-sells .products{
  display:grid !important; grid-template-columns:repeat(4,1fr) !important; grid-gap:20px !important;
  margin:0 auto !important; padding:0 !important;
}
.single-product .summary .cross-sells{
  max-height:350px; overflow-y:auto; margin-top:20px; padding-right:10px;
}
.single-product .summary .cross-sells::-webkit-scrollbar{ width:6px; }
.single-product .summary .cross-sells::-webkit-scrollbar-thumb{ background-color:rgba(0,0,0,0.2); border-radius:3px; }
@media (max-width:768px){
  .single-product .cross-sells .products{ grid-template-columns:repeat(2,1fr) !important; grid-gap:10px !important; }
}

/* Staffelprijzen Cream Orderform - Kolombreedte fix */
.b2bking_bulkorder_cream_sku{ min-width:120px; width:auto; white-space:normal !important; overflow:visible; }
.b2bking_tier_table{ width:100%; }
.b2bking_tier_row_table{ padding:2px 8px; font-size:14px; white-space:nowrap; }

/* Serie-/swatch-titels: max 2 regels en gelijke hoogte */
.wd-swatches-filter-term .wd-filter-lable{
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; text-overflow:ellipsis;
  text-align:center; height:2.6em; line-height:1.3;
}

/* Serie- & Series-links visueel klikbaar */
.woocommerce-product-attributes-item--attribute_pa_serie .wd-attr-term a,
.woocommerce-product-attributes-item--attribute_pa_series .wd-attr-term a{
  color:var(--trl-red) !important; text-decoration:none !important; font-weight:600; cursor:pointer;
}
.woocommerce-product-attributes-item--attribute_pa_serie .wd-attr-term a:hover,
.woocommerce-product-attributes-item--attribute_pa_series .wd-attr-term a:hover{ color:var(--trl-red-hover) !important; }

/* Toggle – minimal glass, centered, with always-visible gray ring */
.toggle-prijzen-wrapper{ display:inline-flex; align-items:center; line-height:0; padding:0 4px; }

/* Switch */
.switch{
  position:relative; display:inline-block;
  --w: 32px; --h: 16px; --p: 2px;
  width:var(--w); height:var(--h); vertical-align:middle;
  --track:  rgba(255,255,255,.10);
}
body.global-color-scheme-light .switch{ --track: rgba(0,0,0,.08); }
.switch input{ position:absolute; inset:0; opacity:0; }
/* Track */
.switch > .slider{
  position:absolute; inset:0; border-radius:999px; cursor:pointer;
  background: var(--track);
  border: 1px solid transparent;
  box-shadow: 0 0 0 1.5px rgba(180,180,180,.95);
  transition: background .2s ease, box-shadow .2s ease;
}
@supports (backdrop-filter: blur(1px)){
  .switch > .slider{ -webkit-backdrop-filter: blur(4px) saturate(120%); backdrop-filter: blur(4px) saturate(120%); }
}
@supports (-webkit-backdrop-filter: blur(1px)){
  .switch > .slider{ -webkit-backdrop-filter: blur(4px) saturate(120%); backdrop-filter: blur(4px) saturate(120%); }
}
/* ON state */
.switch > input:checked + .slider{
  background: rgba(55,183,62,.45);
  box-shadow: 0 0 0 1.5px rgba(180,180,180,.95);
}
/* Thumb */
.switch > .slider::before{
  content:""; position:absolute; left:var(--p); top:50%;
  width: calc(var(--h) - 2*var(--p)); height: calc(var(--h) - 2*var(--p));
  transform: translate(0,-50%); border-radius:50%;
  background:#fff; border: 1px solid rgba(255,255,255,.70);
}
/* Move thumb when ON */
.switch > input:checked + .slider::before{ transform: translate(calc(var(--w) - var(--h)), -50%); }
/* Reduced motion */
@media (prefers-reduced-motion: reduce){
  .switch > .slider, .switch > .slider::before{ transition:none; }
}

/* Woo attribute verbergingsregels op grid */
.product-grid-item .woocommerce-product-attributes .woocommerce-product-attribute_pa_geschikt_voor_vrachtwagen,
.product-grid-item .woocommerce-product-attributes .woocommerce-product-attribute_pa_geschikt_voor_trailer,
.product-grid-item .woocommerce-product-attributes .woocommerce-product-attribute_pa_geschikt_voor_bedrijfswagen,
.product-grid-item .woocommerce-product-attributes .woocommerce-product-attribute_pa_geschikt_voor_aanhanger,
.product-grid-item .woocommerce-product-attributes .woocommerce-product-attribute_pa_geschikt_voor_tractor,
.product-grid-item .woocommerce-product-attributes .woocommerce-product-attribute_pa_geschikt_voor_graafmachine,
.product-grid-item .woocommerce-product-attributes .woocommerce-product-attribute_pa_geschikt_voor_4x4,
.product-grid-item .woocommerce-product-attributes .woocommerce-product-attribute_pa_geschikt_voor,
.product-grid-item .woocommerce-product-attributes .woocommerce-product-attributes-item--dimensions,
.product-grid-item .woocommerce-product-attributes .woocommerce-product-attributes-item--weight,
.product-grid-item .woocommerce-product-attributes .woocommerce-product-attributes-item--attribute_pa_afmetingen-filter,
.product-grid-item .woocommerce-product-attributes .woocommerce-product-attributes-item--attribute_pa_connector-filter,
.product-grid-item .woocommerce-product-attributes .woocommerce-product-attributes-item--attribute_pa_hs-code,
.product-grid-item .woocommerce-product-attributes .woocommerce-product-attributes-item--attribute_pa_breedte-filter,
.product-grid-item .woocommerce-product-attributes .woocommerce-product-attributes-item--attribute_pa_hoogte-filter,
.product-grid-item .woocommerce-product-attributes .woocommerce-product-attributes-item--attribute_pa_diepte-filter,
.product-grid-item .woocommerce-product-attributes .woocommerce-product-attributes-item--attribute_pa_gewicht,
.product-grid-item .woocommerce-product-attributes .woocommerce-product-attributes-item--attribute_pa_kabellengte-filter,
.product-grid-item .woocommerce-product-attributes .woocommerce-product-attributes-item--attribute_pa_leverancierscode,
.product-grid-item .woocommerce-product-attributes .woocommerce-product-attributes-item--attribute_pa_lumen-filter,
.product-grid-item .woocommerce-product-attributes .woocommerce-product-attributes-item--attribute_pa_voltage-filter,
.product-grid-item .woocommerce-product-attributes .woocommerce-product-attributes-item--attribute_pa_wattage-filter {
  display: none;
}

/* Mini-cart footer – compact (samengevoegd & ontdubbeld) */
body .cart-widget-side .shopping-cart-widget__footer,
body .cart-widget-side .shopping-cart-widget_footer{
  padding:8px 15px !important; flex:0 0 auto !important; font-size:14px !important; line-height:1.3 !important;
}
body .cart-widget-side .shopping-cart-widget__footer table,
body .cart-widget-side .shopping-cart-widget_footer table{
  width:100% !important; border-collapse:collapse; font-size:14px; line-height:1.3;
}
body .cart-widget-side .shopping-cart-widget__footer th,
body .cart-widget-side .shopping-cart-widget_footer th,
body .cart-widget-side .shopping-cart-widget__footer td,
body .cart-widget-side .shopping-cart-widget_footer td{ padding:2px 0 !important; }
body .cart-widget-side .shopping-cart-widget__footer p,
body .cart-widget-side .shopping-cart-widget_footer p{ margin:6px 0 0 !important; font-size:13px !important; }
body .cart-widget-side .shopping-cart-widget__footer tr:empty,
body .cart-widget-side .shopping-cart-widget_footer tr:empty{
  display:none !important;
  height:0 !important;
  line-height:0 !important;
}
@media (max-width:480px){
  body .cart-widget-side .shopping-cart-widget__footer,
  body .cart-widget-side .shopping-cart-widget_footer{ padding:6px 12px !important; font-size:13px !important; }
  body .cart-widget-side .shopping-cart-widget__footer table,
  body .cart-widget-side .shopping-cart-widget_footer table{ font-size:13px; }
}
/* Order-total altijd zwart + NL btw rij grijs */
tr.order-total strong .amount{ color:#000 !important; }
tr.tax-rate.tax-rate-nl-btw-21-1 th,
tr.tax-rate.tax-rate-nl-btw-21-1 td,
tr.tax-rate.tax-rate-nl-btw-21-1 .amount{ color:rgb(113 113 113) !important; }

/* Voorraad weergave – custom bolletje + hide defaults */
.wd-product-stock{
  position:relative; padding-left:18px; font-size:12px; line-height:1.4; font-weight:400 !important; color:#333;
}
.wd-product-stock::before{
  content:""; position:absolute; top:.3em; left:0; width:10px; height:10px; border-radius:50%;
  display:inline-block; background:transparent; box-shadow:none !important; border:none !important; text-indent:-9999px; overflow:hidden;
}
.wd-product-stock.in-stock::before{ background-color:#2ecc71; }
.wd-product-stock.low-stock::before{ background-color:#f39c12; }
.wd-product-stock.out-of-stock::before,
.wd-product-stock.available-on-backorder::before{ background-color:#525252; }
/* Verberg niet-onze stockregels */
p.wd-product-stock.stock:not(.tralert-stock){ display:none !important; }

/* Geen share buttons op wishlists */
.wd-wishlist-group .wd-social-icons{ display:none !important; }

/* PDP gallery desktop – vaste box */
@media (min-width:992px){
  .woocommerce div.product div.images .woocommerce-product-gallery__wrapper,
  .woocommerce div.product div.images .woocommerce-product-gallery__image{
    width:500px; height:500px; display:flex; justify-content:center; align-items:center; background-color:#fff;
  }
  .woocommerce div.product div.images .woocommerce-product-gallery__image img{
    max-width:100%; max-height:100%; object-fit:contain;
  }
}

/* 1px rand om elke categorie-tegel */
.wd-cats-element .wd-cat .wd-cat-inner{ position:relative; }
.wd-cats-element .wd-cat .wd-cat-inner::after{
  content:""; position:absolute; inset:0; border:1px solid var(--trl-gray-700); border-radius:inherit; pointer-events:none; z-index:2;
}

/* Mobile-specific (swatches + thumbnails) */
@media (max-width:768px){
  [class*="wd-swatches"].wd-size-large{ --wd-swatch-size:55px !important; --wd-swatch-text-size:5px; }
  .wd-swatches-filter.wd-layout-double li{ flex:0 1 calc(50% - (var(--wd-swatch-h-sp) / 1)) !important; }
  .woocommerce-product-gallery__thumbnails{
    display:flex !important; justify-content:center !important; overflow-x:auto !important;
    visibility:visible !important; opacity:1 !important; margin-top:10px !important;
  }
  .woocommerce-product-gallery__thumbnails .slick-slide,
  .woocommerce-product-gallery__thumbnails img{
    width:60px !important; height:auto !important; margin:0 5px !important; flex:0 0 auto !important;
  }
  .woocommerce-product-gallery__wrapper img{ width:100% !important; height:auto !important; }
}

/* Inline linkstijl voor blog & verlichtingstermen – alleen in single content */
.single-post .elementor-location-single .elementor-widget-theme-post-content a,
.single-post .elementor-location-single .elementor-widget-text-editor a,
.single-verlichtingstermen .elementor-location-single .elementor-widget-theme-post-content a,
.single-verlichtingstermen .elementor-location-single .elementor-widget-text-editor a,
.post-type-verlichtingstermen .elementor-location-single .elementor-widget-theme-post-content a,
.post-type-verlichtingstermen .elementor-location-single .elementor-widget-text-editor a {
  color: var(--trl-red) !important;
  font-weight: 600;
  text-decoration: none;
  transition: color .2s ease;
}
.single-post .elementor-widget-theme-post-content a:hover,
.single-post .elementor-widget-text-editor a:hover,
.single-verlichtingstermen .elementor-widget-theme-post-content a:hover,
.single-verlichtingstermen .elementor-widget-text-editor a:hover,
.post-type-verlichtingstermen .elementor-widget-theme-post-content a:hover,
.post-type-verlichtingstermen .elementor-widget-text-editor a:hover{
  color:var(--trl-red-hover) !important; text-decoration:underline;
}
.single-post .elementor-widget-theme-post-content .wd-product a,
.single-post .elementor-widget-theme-post-content .wd-entities-title a,
.single-verlichtingstermen .elementor-widget-theme-post-content .wd-product a,
.single-verlichtingstermen .elementor-widget-theme-post-content .wd-entities-title a,
.post-type-verlichtingstermen .elementor-widget-theme-post-content .wd-product a,
.post-type-verlichtingstermen .elementor-widget-theme-post-content .wd-entities-title a{
  color:inherit !important; font-weight:inherit !important; text-decoration:none !important;
}

/* Verberg page titles overal behalve op Woo product-archive/tag/cat */
body:not(.post-type-archive-product):not(.tax-product_cat):not(.tax-product_tag) .wd-page-title{ display:none !important; }

/* Verberg stock-status filter voor niet-ingelogde users */
.wd-widget-stock-status { display:none !important; }
/* Toon wel voor ingelogde users */
.logged-in .wd-widget-stock-status { display:block !important; }

/* My Account iconen (font-family expliciet) */
.wd-my-account-links .orders-link a:before { content:"\f190"; font-family:'woodmart-font','FontAwesome',sans-serif; }
.wd-my-account-links .offers-link a:before { content:"\f11d"; font-family:'woodmart-font','FontAwesome',sans-serif; }
.wd-my-account-links .bulkorder-link a:before { content:"\f122"; font-family:'woodmart-font','FontAwesome',sans-serif; }
.wd-my-account-links .xcore-facturen-link a:before,
.wd-my-account-links .invoices-link a:before { content:"\f142"; font-family:'woodmart-font','FontAwesome',sans-serif; }
.wd-my-account-links .retouren-link a:before { content:"\f128"; font-family:'woodmart-font','FontAwesome',sans-serif; }
.wd-my-account-links .addresses-link a:before { content:"\f139"; font-family:'woodmart-font','FontAwesome',sans-serif; }
.wd-my-account-links .edit-account-link a:before { content:"\f135"; font-family:'woodmart-font','FontAwesome',sans-serif; }
.wd-my-account-links .wishlist-link a:before,
.wd-my-account-links .bestellijst-link a:before { content:"\f134"; font-family:'woodmart-font','FontAwesome',sans-serif; }
.wd-my-account-links .csv-order-link a:before,
.wd-my-account-links .excel-order-link a:before { content:"\f136"; font-family:'woodmart-font','FontAwesome',sans-serif; }
.wd-my-account-links .spotlight-link a:before { content:"\f11c"; font-family:'woodmart-font','FontAwesome',sans-serif; }
.wd-my-account-links .customer-logout-link a:before,
.wd-my-account-links .logout-link a:before { content:"\f137"; font-family:'woodmart-font','FontAwesome',sans-serif; }

/* My Account: content vóór navigatie op mobiel */
@media (max-width: 992px) {
  .woocommerce-account .woocommerce {
    display: flex !important;
    flex-direction: column;
    gap: 20px;
  }
  .woocommerce-account .woocommerce-MyAccount-content { order: 1; width: 100%; }
  .woocommerce-account .woocommerce-MyAccount-navigation { order: 2; width: 100%; }
}

/* Mega menu: neutraal dark glass + hover-bridge (desktop) */
@media (min-width: 993px){
  .wd-dropdown-menu.wd-dropdown.wd-design-sized{
    background: rgba(26,28,32,0.50) !important;
    -webkit-backdrop-filter: blur(12px) saturate(120%) contrast(105%) !important;
    backdrop-filter: blur(12px) saturate(120%) contrast(105%) !important;
    border: 1px solid rgba(255,255,255,0.10);
    border-radius: 14px;
    box-shadow: 0 10px 30px rgba(0,0,0,.15), inset 0 1px 0 rgba(255,255,255,.10);
    color: #fff; overflow: hidden; will-change: backdrop-filter; transform: translateZ(0);
  }
  .wd-dropdown-menu .wd-entry-content,
  .wd-dropdown-menu .container,
  .wd-dropdown-menu .elementor-section,
  .wd-dropdown-menu .elementor-container,
  .wd-dropdown-menu .elementor-widget-wrap,
  .wd-dropdown-menu .elementor-column,
  .wd-dropdown-menu .elementor-widget-container { background: transparent !important; }
  .wd-dropdown-menu.wd-dropdown.wd-design-sized a,
  .wd-dropdown-menu.wd-dropdown.wd-design-sized .elementor-heading-title { color: #fff !important; }
  /* Deadspace fix */
  .menu-item.menu-item-has-children > .wd-dropdown-menu { margin-top: -5px !important; }
  .menu-item.menu-item-has-children > .wd-dropdown-menu::before{
    content: ""; position: absolute; left: 0; right: 0; top: -14px; height: 14px; background: transparent; display: block;
  }
}

/* === B2BKing formulier in cart – stabiel 1 kolom, met :has() + fallback === */

/* 1) Prefer: als :has() werkt → zet parent uit flex */
@supports selector(.cart-actions:has(.b2bking_before_quote_request_form)) {
  .woocommerce .cart-actions:has(.b2bking_before_quote_request_form) {
    display: block !important;
    clear: both !important;
    margin-top: 20px !important;

    /* jouw form-variabelen */
    --wd-form-bg:        #F7F7F8 !important;
    --wd-form-bd-color:  #E5E5E5 !important;
    --wd-form-bd-width:  1px !important;
    --wd-form-bd-radius: 5px !important;   /* onze */
    --wd-form-brd-radius: 5px !important;  /* woodmart variant */
    --wd-form-height:    47px !important;
    --wd-form-color:     #181818 !important;
  }
}

/* 2) Fallback: als :has() niet werkt → laat parent flex, maar forceer form full-row */
@supports not (selector(.cart-actions:has(.b2bking_before_quote_request_form))) {
  .woocommerce .cart-actions .b2bking_before_quote_request_form {
    flex: 1 1 100% !important;
    min-width: 100% !important;
    width: 100% !important;
    /* optioneel sorteren t.o.v. knoppen/coupon */
    order: 3;
  }
}

/* 3) Jouw grid + velden (blijft hetzelfde) */
.woocommerce .cart-actions .b2bking_before_quote_request_form {
  display: grid !important;
  grid-template-columns: 1fr !important;
  row-gap: 12px !important;
  column-gap: 24px !important;
  align-items: start !important;
}

.woocommerce .cart-actions .b2bking_before_quote_request_form > span[class*="_label"],
.woocommerce .cart-actions .b2bking_before_quote_request_form .b2bking_custom_quote_field_container span[class*="_label"]{
  display: block !important;
  margin: 0 0 6px !important;
  font-weight: 500; font-size: 14px; color: #181818;
}

.woocommerce .cart-actions .b2bking_before_quote_request_form > .b2bking_custom_quote_field_container{
  grid-column: 1 / -1 !important;
}

.woocommerce .cart-actions .b2bking_before_quote_request_form input[type="text"],
.woocommerce .cart-actions .b2bking_before_quote_request_form input[type="email"],
.woocommerce .cart-actions .b2bking_before_quote_request_form input[type="tel"],
.woocommerce .cart-actions .b2bking_before_quote_request_form input[type="number"],
.woocommerce .cart-actions .b2bking_before_quote_request_form textarea{
  background-color: var(--wd-form-bg) !important;
  border: var(--wd-form-bd-width) solid var(--wd-form-bd-color) !important;
  border-radius: var(--wd-form-bd-radius) !important;
  color: var(--wd-form-color) !important;
  padding: 6px 16px !important;
  height: var(--wd-form-height) !important;
  font-size: 14px !important; line-height: 1.4 !important;
  width: 100% !important; max-width: none !important;
  box-shadow: none !important; -webkit-appearance: none; appearance: none;
}

.woocommerce .cart-actions .b2bking_before_quote_request_form textarea{
  min-height:120px !important; height:auto !important; resize:vertical !important;
}

.woocommerce .cart-actions .b2bking_before_quote_request_form input::placeholder,
.woocommerce .cart-actions .b2bking_before_quote_request_form textarea::placeholder{ color:#7a7a7a !important; }
.woocommerce .cart-actions .b2bking_before_quote_request_form input:focus,
.woocommerce .cart-actions .b2bking_before_quote_request_form textarea:focus{
  border-color:#181818 !important; outline:none !important; box-shadow:0 0 0 2px rgba(0,0,0,.05) !important;
}

/* Mobile failsafe */
@media (max-width: 900px){
  .woocommerce .cart-actions .b2bking_before_quote_request_form{
    grid-template-columns: 1fr !important;
  }
}

/* CTA styling (ongewijzigd) */
.woocommerce .cart-actions #b2bking_request_custom_quote_button{
  background:#3d3d3d !important; color:#fff !important; border-color:#3d3d3d !important;
  background-image:none !important; text-shadow:none !important; box-shadow:none !important;
  transition: background .2s ease, border-color .2s ease, box-shadow .2s ease !important;
}
.woocommerce .cart-actions #b2bking_request_custom_quote_button:hover,
.woocommerce .cart-actions #b2bking_request_custom_quote_button:focus{
  background:#8EB171 !important; border-color:#8EB171 !important; color:#fff !important;
  outline:none !important; box-shadow:0 0 0 2px rgba(142,177,113,.12) !important;
}
.woocommerce .cart-actions #b2bking_request_custom_quote_button:active{
  background:#7ea461 !important; border-color:#7ea461 !important;
}
.woocommerce .cart-actions #b2bking_request_custom_quote_button:disabled,
.woocommerce .cart-actions #b2bking_request_custom_quote_button.disabled,
.woocommerce .cart-actions #b2bking_request_custom_quote_button.loading{
  background:#6b6b6b !important; border-color:#6b6b6b !important; color:#fff !important;
  opacity:1 !important; box-shadow:none !important;
}

/* Extra kleine tweaks */
.wd-product .wd-product-sku { color: #1c1c1c; font-weight: 600; }

/* Woo-notices boven alle content */
.woocommerce .woocommerce-notices-wrapper,
.woocommerce .woocommerce-error,
.woocommerce .woocommerce-message,
.woocommerce .woocommerce-info {
  position: relative; z-index: 9; margin-bottom: 16px;
}
/* voorkom afknippen */
.woocommerce-account .entry-content,
.woocommerce-account .container,
.woocommerce-account .entry-content .woocommerce { overflow: visible !important; }
/* reset tegen z-index push */
.woocommerce-account .elementor-section,
.woocommerce-account .vc_row,
.woocommerce-account .wd-section { z-index: 1 !important; position: relative; }
/* ruimte boven titel na notices */
.woocommerce-account .woocommerce-notices-wrapper + * { margin-top: 8px; }

/* Toolbar + safe area (validator-vriendelijk) */
.wd-toolbar { height: 55px; padding-bottom: 0; }
@media (max-width: 1024px) {
  .sticky-toolbar-on { padding-bottom: 55px; }
  .sticky-toolbar-on .scrollToTop { bottom: 67px; }
}
@supports (padding-bottom: env(safe-area-inset-bottom)) {
  .wd-toolbar { height: calc(55px + env(safe-area-inset-bottom)); padding-bottom: env(safe-area-inset-bottom); }
  @media (max-width: 1024px) {
    .sticky-toolbar-on { padding-bottom: calc(55px + env(safe-area-inset-bottom)); }
    .sticky-toolbar-on .scrollToTop { bottom: calc(67px + env(safe-area-inset-bottom)); }
  }
}

/* Offertes: meta-blok onder de actuele eenheidsprijs */
.trl-b2bking-price-meta{ font-size: 0.85em; line-height: 1.35; color:#666; margin-top:.25rem; }
.trl-b2bking-price-meta .label{ color:#666; }
.trl-b2bking-price-meta .price-strike{ text-decoration: line-through; color:#999; }
.trl-b2bking-price-meta .discount{ font-weight:600; margin-left:.25rem; }

/* Verberg 'Gesprekken' overal (navigatie + dashboard) */
.woocommerce-MyAccount-navigation-link--conversations,
.woocommerce-account .wd-my-account-links .conversations-link {
  display: none !important;
}

/* Sticky anchor offset op desktop */
@media (min-width: 1024px) {
  [id] { scroll-margin-top: 110px; }
}

/* ========================================================================
   STICKY ADD-TO-CART: PRIJZEN + VOORRAAD NETJES UITLIJNEN
   ======================================================================== */
.wd-sticky-btn .price {
  display: flex; align-items: baseline; gap: 8px; margin: 0; text-align: left !important;
  flex: 0 0 auto; min-width: max-content; color: var(--wd-primary-color);
}
.wd-sticky-btn .price, .wd-sticky-btn .price * { margin-inline: 0 !important; }
.wd-sticky-btn .price br { display: none !important; }
.wd-sticky-btn .b2bking_both_prices_text,
.wd-sticky-btn .b2bking_both_prices_price{ white-space: nowrap; }
.wd-sticky-btn .price bdi{ font-weight: 600; font-size: 18px; line-height: 1; }
.wd-sticky-btn .woocommerce-Price-currencySymbol{ margin-right: 2px; }
.wd-sticky-btn .woocommerce-price-suffix,
.wd-sticky-btn .price small{ margin-left: 4px; font-size: 12px; opacity: .85; display: inline; }
/* Voorraad-status naast prijs */
.wd-sticky-btn .stock {
  margin-left: 12px; font-size: 13px; line-height: 1.4; white-space: nowrap;
  position: relative; top: 1px; color: #666;
}

/* ========================================================================
   'Ook van deze serie' grid-forcer
   ======================================================================== */

/* Debug-scope helper (onzichtbaar) */
.single-product .ookvandezeserie { outline: 1px solid transparent; }

/* Forceer layout mét thumbnail, ongeacht Woodmart-varianten */
.single-product .ookvandezeserie .product-grid-item .product-wrapper,
.single-product .ookvandezeserie .wd-product .product-wrapper {
  display: grid !important;
  grid-template-columns: 64px 1fr !important;
  gap: 12px !important;
  align-items: start !important;
  padding: 20px !important; /* min 20px */
}

/* Linker kolom (image-blok) */
.single-product .ookvandezeserie .product-element-top,
.single-product .ookvandezeserie .product-thumbnail,
.single-product .ookvandezeserie .product-image-wrap,
.single-product .ookvandezeserie .product-image-link {
  display: block !important;
  width: 64px !important;
  min-width: 64px !important;
  flex: 0 0 64px !important;
}

/* Kill “hover-image” varianten die images verstoppen */
.single-product .ookvandezeserie .product-image-link img,
.single-product .ookvandezeserie .product-element-top img,
.single-product .ookvandezeserie .hover-img img,
.single-product .ookvandezeserie .hover-img {
  position: static !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  width: 100% !important; height: auto !important;
  display: block !important; object-fit: contain !important;
}

/* Rechter kolom (content) */
.single-product .ookvandezeserie .product-element-bottom {
  grid-column: 2 !important; align-self: start !important;
}

/* Titel: max 3 regels + gelijke hoogte */
.single-product .ookvandezeserie { --title-lines: 3; --title-lh: 1.3; }
.single-product .ookvandezeserie .wd-entities-title a {
  white-space: normal !important;
  display: -webkit-box !important; -webkit-box-orient: vertical !important;
  -webkit-line-clamp: var(--title-lines) !important;
  overflow: hidden !important; text-overflow: ellipsis !important;
  overflow-wrap: break-word; hyphens: auto;
}
.single-product .ookvandezeserie .wd-entities-title {
  line-height: var(--title-lh) !important;
  min-height: calc(1em * var(--title-lh) * var(--title-lines)) !important;
  margin: 0 0 8px 0 !important; padding: 0 !important;
}
.single-product .ookvandezeserie .price { display:block !important; margin-top:4px !important; }

/* Carousel varianten – sommige wraps heten zo */
.single-product .ookvandezeserie .wd-carousel .wd-slide .product-wrapper {
  display: grid !important;
}

/* Compare page: hide specific rows */
tr.compare-dimensions,
tr.compare-pa_leverancierscode {
  display: none !important;
}

/* ====================================================================== */
