/* =========================
   STICKY ADD TO CART
   Mobiel + tablet actief
   Desktop uitgeschakeld
========================= */

@media (min-width: 1025px) {
  .wpcsb-wrapper {
    display: none !important;
  }
}

/* TABLET */
@media (min-width: 768px) and (max-width: 1024px) {

  .wpcsb-wrapper.wpcsb-active {
    background: #0f3b33 !important;
    padding: 12px 22px !important;
    box-shadow: 0 -4px 20px rgba(0,0,0,0.14) !important;
    border: none !important;
    z-index: 99999 !important;
  }

  .wpcsb-wrapper,
  .wpcsb-container,
  .wpcsb-product,
  .wpcsb-product-action {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
  }

  .wpcsb-product {
    display: grid !important;
    grid-template-columns: 1fr auto !important;
    align-items: center !important;
    gap: 14px !important;
    width: 100% !important;
  }

  .wpcsb-product-info {
    display: block !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .wpcsb-product-image,
  .wpcsb-product-thumb,
  .wpcsb-product-info img {
    display: none !important;
  }

  .wpcsb-product-title,
  .wpcsb-product-name,
  .wpcsb-product-info a {
    display: block !important;
    color: #fff !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-width: 420px !important;
    margin: 0 0 4px 0 !important;
  }

  .wpcsb-product-price,
  .wpcsb-price {
    display: block !important;
    color: #fff !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    margin: 0 !important;
  }

  .wpcsb-wrapper.wpcsb-active .wpcsb-product-price *,
  .wpcsb-wrapper.wpcsb-active .wpcsb-price *,
  .wpcsb-wrapper.wpcsb-active .price * {
    font-size: 15px !important;
    line-height: 1 !important;
    letter-spacing: -0.2px !important;
  }

  .wpcsb-wrapper.wpcsb-active del,
  .wpcsb-wrapper.wpcsb-active del * {
    font-size: 12px !important;
    opacity: 0.7 !important;
    color: rgba(255,255,255,0.75) !important;
    text-decoration-color: rgba(255,255,255,0.8) !important;
  }

  .wpcsb-wrapper.wpcsb-active ins,
  .wpcsb-wrapper.wpcsb-active ins * {
    font-size: 16px !important;
    color: #e8471e !important;
    text-decoration: none !important;
    font-weight: 900 !important;
  }

  .wpcsb-wrapper.wpcsb-active .bg-discount-badge {
    display: none !important;
  }

  .wpcsb-product-action {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 !important;
    padding: 0 !important;
    flex-shrink: 0 !important;
  }

  .wpcsb-wrapper input.qty {
    width: 46px !important;
    height: 42px !important;
    border-radius: 10px !important;
    border: 2px solid rgba(255,255,255,0.22) !important;
    background: rgba(255,255,255,0.08) !important;
    color: #fff !important;
    font-weight: 700 !important;
    text-align: center !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  .wpcsb-wrapper .button,
  .wpcsb-wrapper button {
    height: 42px !important;
    padding: 0 24px !important;
    border-radius: 999px !important;
    background: #e8471e !important;
    color: #fff !important;
    border: none !important;
    font-weight: 700 !important;
    margin: 0 !important;
  }
}

/* MOBIEL */
@media (max-width: 767px) {

  .wpcsb-wrapper.wpcsb-active {
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 10px 14px !important;
    background: #0f3b33 !important;
    box-shadow: 0 -4px 20px rgba(0,0,0,0.18) !important;
    z-index: 99999 !important;
  }

  .wpcsb-wrapper,
  .wpcsb-container,
  .wpcsb-product,
  .wpcsb-product-action {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
  }

  .wpcsb-container {
    width: 100% !important;
  }

  .wpcsb-product {
    display: grid !important;
    grid-template-columns: 1fr auto !important;
    align-items: center !important;
    gap: 6px !important;
    width: 100% !important;
  }

  .wpcsb-product-info {
    display: block !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .wpcsb-product-image,
  .wpcsb-product-thumb,
  .wpcsb-product-info img {
    display: none !important;
  }

  .wpcsb-product-title,
  .wpcsb-product-name,
  .wpcsb-product-info a {
    display: block !important;
    color: #fff !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-width: 220px !important;
    margin: 0 0 4px 0 !important;
    text-decoration: none !important;
  }

  .wpcsb-product-price,
  .wpcsb-price {
    color: #ffffff !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    margin: 0 !important;
  }

  .wpcsb-wrapper.wpcsb-active .wpcsb-product-price *,
  .wpcsb-wrapper.wpcsb-active .wpcsb-price *,
  .wpcsb-wrapper.wpcsb-active .price * {
    font-size: 13px !important;
    line-height: 1 !important;
    letter-spacing: -0.2px !important;
  }

  .wpcsb-wrapper.wpcsb-active del,
  .wpcsb-wrapper.wpcsb-active del * {
    font-size: 11px !important;
    opacity: 0.7 !important;
    color: rgba(255,255,255,0.75) !important;
    text-decoration-thickness: 2px !important;
    text-decoration-color: rgba(255,255,255,0.8) !important;
  }

  .wpcsb-wrapper.wpcsb-active ins,
  .wpcsb-wrapper.wpcsb-active ins * {
    font-size: 15px !important;
    color: #e8471e !important;
    text-decoration: none !important;
    font-weight: 900 !important;
  }

  .wpcsb-wrapper.wpcsb-active .bg-discount-badge {
    display: none !important;
  }

  .wpcsb-product-action {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    margin: 0 !important;
    padding: 0 !important;
    flex-shrink: 0 !important;
  }

  .wpcsb-wrapper input.qty {
    width: 38px !important;
    height: 38px !important;
    border-radius: 11px !important;
    border: 2px solid rgba(255,255,255,0.18) !important;
    background: rgba(255,255,255,0.08) !important;
    color: #fff !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    text-align: center !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  .wpcsb-wrapper .button,
  .wpcsb-wrapper button {
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
    min-height: 42px !important;
    padding: 0 !important;
    border-radius: 999px !important;
    border: none !important;
    background: #e8471e !important;
    color: transparent !important;
    font-size: 0 !important;
    position: relative !important;
    margin: 0 !important;
    box-shadow: none !important;
  }

  .wpcsb-wrapper .button::before,
  .wpcsb-wrapper button::before {
    content: "🛒+";
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff !important;
    font-size: 17px !important;
    line-height: 1 !important;
  }

  .wpcsb-wrapper * {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
}

/* ================================
   Bekijk ook / gerelateerde producten
   Zelfde stijl als homepage
================================ */

.related.products{
    max-width:1500px !important;
    width:100% !important;
    margin:20px auto 0 !important;
    padding-top:30px !important;
    box-sizing:border-box !important;
}

.related.products > h2{
    color:transparent !important;
    font-size:0 !important;
    line-height:1.2 !important;
    margin:0 !important;
}

.related.products > h2::before{
    content:"BEKIJK OOK";
    color:#111 !important;
    font-size:24px !important;
    font-weight:800 !important;
    display:block !important;
    margin-bottom:24px !important;
    text-transform:uppercase !important;
    letter-spacing:.3px !important;
}

.related.products ul.products{
    display:grid !important;
    grid-template-columns:repeat(6,1fr) !important;
    gap:18px !important;
    align-items:stretch !important;
    margin:0 !important;
    padding:0 !important;
}

.related.products ul.products li.product{
    background:#fff !important;
    border-radius:14px !important;
    padding:14px 16px 18px !important;
    box-shadow:0 3px 14px rgba(0,0,0,.045) !important;
    transition:all .25s ease !important;
    display:flex !important;
    flex-direction:column !important;
    min-height:380px !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
    overflow:hidden !important;
    text-align:left !important;
}

.related.products ul.products li.product:hover{
    transform:translateY(-3px);
    box-shadow:0 8px 20px rgba(0,0,0,.08) !important;
}

.related.products ul.products li.product a.woocommerce-LoopProduct-link{
    display:grid !important;
    grid-template-rows:175px 50px 22px 32px !important;
    width:100% !important;
    text-decoration:none !important;
    flex:0 0 auto !important;
    text-align:left !important;
}

.related.products ul.products li.product img{
    grid-row:1 !important;
    height:175px !important;
    max-height:175px !important;
    width:100% !important;
    object-fit:contain !important;
    justify-self:center !important;
    align-self:center !important;
    margin:0 !important;
}

.related.products ul.products li.product h2,
.related.products ul.products li.product .woocommerce-loop-product__title{
    grid-row:2 !important;
    font-size:15px !important;
    font-weight:800 !important;
    line-height:1.18 !important;
    text-transform:uppercase !important;
    color:#222 !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    height:36px !important;
    min-height:36px !important;
    max-height:36px !important;
    padding:0 !important;
    margin:10px 0 0 !important;
    text-align:left !important;
    width:100% !important;
}

.related.products ul.products li.product .star-rating{
    grid-row:3 !important;
    height:22px !important;
    margin:-1px 0 0 !important;
    justify-self:start !important;
    align-self:center !important;
    font-size:15px !important;
    transform:scale(.92);
    transform-origin:left center !important;
    overflow:hidden !important;
}

.related.products ul.products li.product .price{
    grid-row:4 !important;
    display:flex !important;
    flex-direction:row !important;
    align-items:baseline !important;
    justify-content:flex-start !important;
    gap:8px !important;
    flex-wrap:wrap !important;
    font-size:23px !important;
    font-weight:900 !important;
    color:#e8471e !important;
    text-align:left !important;
    width:100% !important;
    max-width:100% !important;
    margin:6px 0 0 !important;
    min-height:32px !important;
    line-height:1.12 !important;
    letter-spacing:-.45px !important;
}

.related.products ul.products li.product .price del,
.related.products ul.products li.product .price del .amount,
.related.products ul.products li.product .price del bdi{
    color:#9c9c9c !important;
    opacity:1 !important;
    font-size:16px !important;
    font-weight:600 !important;
    text-decoration:line-through !important;
    line-height:1 !important;
    position:relative !important;
    top:-2px !important;
}

.related.products ul.products li.product .price ins,
.related.products ul.products li.product .price ins .amount,
.related.products ul.products li.product .price ins bdi,
.related.products ul.products li.product .price > .amount,
.related.products ul.products li.product .price > .amount bdi{
    color:#e8471e !important;
    font-size:23px !important;
    font-weight:900 !important;
    text-decoration:none !important;
    background:transparent !important;
    line-height:1 !important;
}

.related.products ul.products li.product .button{
    margin:12px 0 0 !important;
}

.related.products ul.products li.product .bg-icon-cart-button,
.related.products ul.products li.product .button.added,
.related.products ul.products li.product .bg-icon-cart-button.added{
    margin:12px 0 0 !important;
}

.related.products ul.products li.product a.added_to_cart,
.related.products ul.products li.product .added_to_cart{
    display:none !important;
}

/* HARD FIX: prijs links forceren bij Bekijk ook */
.related.products ul.products li.product .woocommerce-LoopProduct-link > .price,
.related.products ul.products li.product a.woocommerce-LoopProduct-link > span.price{
    display:flex !important;
    flex-direction:row !important;
    justify-content:flex-start !important;
    align-items:baseline !important;
    gap:8px !important;
    width:100% !important;
    max-width:100% !important;
    margin-left:0 !important;
    margin-right:0 !important;
    text-align:left !important;
}

.related.products ul.products li.product .woocommerce-LoopProduct-link > .price del,
.related.products ul.products li.product .woocommerce-LoopProduct-link > .price ins{
    display:inline-block !important;
    margin-left:0 !important;
    margin-right:0 !important;
    text-align:left !important;
}

.related.products ul.products li.product .woocommerce-LoopProduct-link > .price .amount,
.related.products ul.products li.product .woocommerce-LoopProduct-link > .price bdi{
    display:inline-block !important;
    text-align:left !important;
}

.related.products ul.products li.product .woocommerce-LoopProduct-link{
    text-align:left !important;
}

/* Tablet */
@media (min-width:768px) and (max-width:1024px){

    .related.products{
        max-width:1600px !important;
        width:100% !important;
    }

    .related.products ul.products{
        grid-template-columns:repeat(3,1fr) !important;
        gap:16px !important;
    }

    .related.products ul.products li.product{
        padding:14px 14px 16px !important;
        min-height:365px !important;
    }

    .related.products ul.products li.product a.woocommerce-LoopProduct-link{
        grid-template-rows:155px 46px 21px 31px !important;
    }

    .related.products ul.products li.product img{
        height:155px !important;
        max-height:155px !important;
    }

    .related.products ul.products li.product h2,
    .related.products ul.products li.product .woocommerce-loop-product__title{
        font-size:14px !important;
        height:34px !important;
        min-height:34px !important;
        max-height:34px !important;
        margin-top:8px !important;
    }

    .related.products ul.products li.product .star-rating{
        height:21px !important;
        font-size:14px !important;
        margin:-1px 0 0 !important;
    }

    .related.products ul.products li.product .price{
        font-size:22px !important;
        min-height:31px !important;
        gap:7px !important;
        margin:6px 0 0 !important;
    }

    .related.products ul.products li.product .woocommerce-LoopProduct-link > .price,
    .related.products ul.products li.product a.woocommerce-LoopProduct-link > span.price{
        gap:7px !important;
    }

    .related.products ul.products li.product .price del,
    .related.products ul.products li.product .price del .amount,
    .related.products ul.products li.product .price del bdi{
        font-size:15px !important;
    }

    .related.products ul.products li.product .price ins,
    .related.products ul.products li.product .price ins .amount,
    .related.products ul.products li.product .price ins bdi,
    .related.products ul.products li.product .price > .amount,
    .related.products ul.products li.product .price > .amount bdi{
        font-size:22px !important;
    }

    .related.products ul.products li.product .button,
    .related.products ul.products li.product .bg-icon-cart-button,
    .related.products ul.products li.product .button.added,
    .related.products ul.products li.product .bg-icon-cart-button.added{
        margin:10px 0 0 !important;
    }
}

/* Mobiel */
@media (max-width:767px){

    .related.products{
        max-width:1600px !important;
        width:100% !important;
        padding-top:22px !important;
        margin-top:8px !important;
        overflow:hidden !important;
    }

    .related.products > h2::before{
        font-size:24px !important;
        margin-bottom:16px !important;
        padding-left:15px !important;
    }

    .related.products ul.products{
        grid-template-columns:1fr 1fr !important;
        gap:14px !important;
        padding:0 12px !important;
    }

    .related.products ul.products li.product{
        padding:12px 10px 14px !important;
        min-height:325px !important;
    }

    .related.products ul.products li.product a.woocommerce-LoopProduct-link{
        grid-template-rows:140px 43px 20px 30px !important;
    }

    .related.products ul.products li.product img{
        height:140px !important;
        max-height:140px !important;
    }

    .related.products ul.products li.product h2,
    .related.products ul.products li.product .woocommerce-loop-product__title{
        font-size:13px !important;
        height:31px !important;
        min-height:31px !important;
        max-height:31px !important;
        margin-top:6px !important;
    }

    .related.products ul.products li.product .star-rating{
        height:20px !important;
        font-size:13px !important;
        margin:-1px 0 0 !important;
    }

    .related.products ul.products li.product .price{
        font-size:20px !important;
        gap:6px !important;
        min-height:30px !important;
        margin:6px 0 0 !important;
    }

    .related.products ul.products li.product .woocommerce-LoopProduct-link > .price,
    .related.products ul.products li.product a.woocommerce-LoopProduct-link > span.price{
        gap:6px !important;
    }

    .related.products ul.products li.product .price del,
    .related.products ul.products li.product .price del .amount,
    .related.products ul.products li.product .price del bdi{
        font-size:13px !important;
    }

    .related.products ul.products li.product .price ins,
    .related.products ul.products li.product .price ins .amount,
    .related.products ul.products li.product .price ins bdi,
    .related.products ul.products li.product .price > .amount,
    .related.products ul.products li.product .price > .amount bdi{
        font-size:20px !important;
    }

    .related.products ul.products li.product .button,
    .related.products ul.products li.product .bg-icon-cart-button,
    .related.products ul.products li.product .button.added,
    .related.products ul.products li.product .bg-icon-cart-button.added{
        margin:10px 0 0 !important;
    }
}

/* ================================
   Specificaties premium stijl
   Desktop + tablet + mobiel
================================ */

/* Titel specificaties */
.single-product h2,
.single-product .woocommerce-product-attributes h2 {
    font-size: 22px !important;
    font-weight: 900 !important;
    line-height: 1.1 !important;
    letter-spacing: -0.5px !important;
    color: #2b2b2b !important;

    margin: 0 0 16px !important;
    padding: 0 !important;
}

/* Specificaties tabel reset */
.single-product table.woocommerce-product-attributes {
    width: 100% !important;
    border: none !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;

    margin: 0 0 8px !important;
    padding: 0 !important;

    background: transparent !important;
}

/* Desktop: 3 kolommen */
@media (min-width: 1025px) {
    .single-product table.woocommerce-product-attributes tbody {
        display: grid !important;
        grid-template-columns: repeat(3, 1fr) !important;
        gap: 10px 12px !important;
    }
}

/* Tablet: 2 kolommen */
@media (min-width: 768px) and (max-width: 1024px) {
    .single-product table.woocommerce-product-attributes tbody {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 10px 12px !important;
    }
}

/* Mobiel: 1 kolom */
@media (max-width: 767px) {
    .single-product table.woocommerce-product-attributes tbody {
        display: block !important;
    }
}

/* Specificatiekaartjes */
.single-product table.woocommerce-product-attributes tr {
    display: block !important;

    min-height: 64px !important;
    margin: 0 !important;
    padding: 11px 16px !important;

    background: #ffffff !important;
    border: 1px solid #eeeeee !important;
    border-radius: 14px !important;

    box-shadow: 0 4px 14px rgba(0,0,0,0.035) !important;

    box-sizing: border-box !important;

    transition: transform 0.18s ease, box-shadow 0.18s ease !important;
}

/* Hover alleen op desktop/tablet met muis */
@media (hover: hover) {
    .single-product table.woocommerce-product-attributes tr:hover {
        transform: translateY(-1px) !important;
        box-shadow: 0 6px 18px rgba(0,0,0,0.055) !important;
    }
}

/* Label + waarde reset */
.single-product table.woocommerce-product-attributes th,
.single-product table.woocommerce-product-attributes td {
    display: block !important;
    width: 100% !important;

    padding: 0 !important;
    margin: 0 !important;

    text-align: left !important;
    border: none !important;
    background: transparent !important;
}

/* Label */
.single-product table.woocommerce-product-attributes th {
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 1.15 !important;

    color: #111111 !important;

    margin-bottom: 5px !important;
}

/* Waarde */
.single-product table.woocommerce-product-attributes td,
.single-product table.woocommerce-product-attributes td p {
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;

    color: #666666 !important;
}

.single-product table.woocommerce-product-attributes td p {
    margin: 0 !important;
}

/* Minder ruimte richting productbeschrijving */
.single-product .woocommerce-product-details__short-description {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* ================================
   Tablet verfijning
================================ */

@media (min-width: 768px) and (max-width: 1024px) {

    .single-product h2,
    .single-product .woocommerce-product-attributes h2 {
        font-size: 21px !important;
        margin-bottom: 14px !important;
    }

    .single-product table.woocommerce-product-attributes {
        margin-bottom: 6px !important;
    }

    .single-product table.woocommerce-product-attributes tr {
        min-height: 62px !important;
        padding: 10px 14px !important;
    }

    .single-product table.woocommerce-product-attributes th {
        font-size: 13.5px !important;
    }

    .single-product table.woocommerce-product-attributes td,
    .single-product table.woocommerce-product-attributes td p {
        font-size: 13.5px !important;
    }
}

/* ================================
   Mobiel verfijning
================================ */

@media (max-width: 767px) {

    .single-product h2,
    .single-product .woocommerce-product-attributes h2 {
        font-size: 22px !important;
        margin-bottom: 14px !important;
    }

    .single-product table.woocommerce-product-attributes {
        margin-bottom: 4px !important;
    }

    .single-product table.woocommerce-product-attributes tr {
        min-height: auto !important;
        margin-bottom: 10px !important;
        padding: 13px 16px !important;

        border-radius: 14px !important;
    }

    .single-product table.woocommerce-product-attributes tr:last-child {
        margin-bottom: 0 !important;
    }

    .single-product table.woocommerce-product-attributes th {
        font-size: 15px !important;
        margin-bottom: 5px !important;
    }

    .single-product table.woocommerce-product-attributes td,
    .single-product table.woocommerce-product-attributes td p {
        font-size: 15px !important;
        line-height: 1.35 !important;
    }
}

/* ================================
   Premium trustblok styling
   Productpagina + shop + categorieën
================================ */

/* Productpagina + shop + categorieën */
.single-product .product-trust-box,
.post-type-archive-product .product-trust-box,
.tax-product_cat .product-trust-box,
.tax-product_tag .product-trust-box {
    margin-top: 16px !important;
}

/* Container */
.single-product .product-trust-box .elementor-widget-container,
.post-type-archive-product .product-trust-box .elementor-widget-container,
.tax-product_cat .product-trust-box .elementor-widget-container,
.tax-product_tag .product-trust-box .elementor-widget-container {
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

/* Hoofdblok */
.single-product .product-trust-box .elementor-icon-list-items,
.post-type-archive-product .product-trust-box .elementor-icon-list-items,
.tax-product_cat .product-trust-box .elementor-icon-list-items,
.tax-product_tag .product-trust-box .elementor-icon-list-items {
    margin: 0 !important;
    padding: 6px 18px !important;

    background: #ffffff !important;
    border: 1px solid #eeeeee !important;
    border-radius: 16px !important;

    box-shadow: 0 6px 22px rgba(0,0,0,0.04) !important;

    overflow: hidden !important;
    list-style: none !important;
}

/* USP regel */
.single-product .product-trust-box .elementor-icon-list-item,
.post-type-archive-product .product-trust-box .elementor-icon-list-item,
.tax-product_cat .product-trust-box .elementor-icon-list-item,
.tax-product_tag .product-trust-box .elementor-icon-list-item {
    display: flex !important;
    align-items: center !important;

    gap: 11px !important;

    padding: 12px 0 !important;
    margin: 0 !important;

    border-bottom: 1px solid #f2f2f2 !important;

    transition: transform 0.2s ease !important;
}

.single-product .product-trust-box .elementor-icon-list-item:last-child,
.post-type-archive-product .product-trust-box .elementor-icon-list-item:last-child,
.tax-product_cat .product-trust-box .elementor-icon-list-item:last-child,
.tax-product_tag .product-trust-box .elementor-icon-list-item:last-child {
    border-bottom: none !important;
}

/* Subtiele premium hover */
@media (hover: hover) {
    .single-product .product-trust-box .elementor-icon-list-item:hover,
    .post-type-archive-product .product-trust-box .elementor-icon-list-item:hover,
    .tax-product_cat .product-trust-box .elementor-icon-list-item:hover,
    .tax-product_tag .product-trust-box .elementor-icon-list-item:hover {
        transform: translateX(2px) !important;
    }
}

/* Icoon */
.single-product .product-trust-box .elementor-icon-list-icon,
.post-type-archive-product .product-trust-box .elementor-icon-list-icon,
.tax-product_cat .product-trust-box .elementor-icon-list-icon,
.tax-product_tag .product-trust-box .elementor-icon-list-icon {
    width: 22px !important;
    min-width: 22px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    color: #ef3f1f !important;
}

.single-product .product-trust-box .elementor-icon-list-icon i,
.single-product .product-trust-box .elementor-icon-list-icon svg,
.post-type-archive-product .product-trust-box .elementor-icon-list-icon i,
.post-type-archive-product .product-trust-box .elementor-icon-list-icon svg,
.tax-product_cat .product-trust-box .elementor-icon-list-icon i,
.tax-product_cat .product-trust-box .elementor-icon-list-icon svg,
.tax-product_tag .product-trust-box .elementor-icon-list-icon i,
.tax-product_tag .product-trust-box .elementor-icon-list-icon svg {
    font-size: 16px !important;
    width: 16px !important;
    height: 16px !important;
}

/* Tekst */
.single-product .product-trust-box .elementor-icon-list-text,
.post-type-archive-product .product-trust-box .elementor-icon-list-text,
.tax-product_cat .product-trust-box .elementor-icon-list-text,
.tax-product_tag .product-trust-box .elementor-icon-list-text {
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: 1.35 !important;

    color: #1f1f1f !important;
    letter-spacing: -0.01em !important;

    text-transform: none !important;
}

/* ================================
   Valued widget onder trustblok
================================ */

.single-product .product-trust-box .bg-valued-usp {
    margin-top: 12px !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

.single-product .product-trust-box .bg-valued-usp valued-widget {
    display: block !important;
}

/* Mobiel */
@media (max-width: 767px) {
    .single-product .product-trust-box,
    .post-type-archive-product .product-trust-box,
    .tax-product_cat .product-trust-box,
    .tax-product_tag .product-trust-box {
        margin-top: 14px !important;
    }

    .single-product .product-trust-box .elementor-icon-list-items,
    .post-type-archive-product .product-trust-box .elementor-icon-list-items,
    .tax-product_cat .product-trust-box .elementor-icon-list-items,
    .tax-product_tag .product-trust-box .elementor-icon-list-items {
        padding: 6px 14px !important;
        border-radius: 14px !important;
        box-shadow: 0 5px 18px rgba(0,0,0,0.04) !important;
    }

    .single-product .product-trust-box .elementor-icon-list-item,
    .post-type-archive-product .product-trust-box .elementor-icon-list-item,
    .tax-product_cat .product-trust-box .elementor-icon-list-item,
    .tax-product_tag .product-trust-box .elementor-icon-list-item {
        padding: 11px 0 !important;
        gap: 10px !important;
    }

    .single-product .product-trust-box .elementor-icon-list-icon,
    .post-type-archive-product .product-trust-box .elementor-icon-list-icon,
    .tax-product_cat .product-trust-box .elementor-icon-list-icon,
    .tax-product_tag .product-trust-box .elementor-icon-list-icon {
        width: 20px !important;
        min-width: 20px !important;
    }

    .single-product .product-trust-box .elementor-icon-list-icon i,
    .single-product .product-trust-box .elementor-icon-list-icon svg,
    .post-type-archive-product .product-trust-box .elementor-icon-list-icon i,
    .post-type-archive-product .product-trust-box .elementor-icon-list-icon svg,
    .tax-product_cat .product-trust-box .elementor-icon-list-icon i,
    .tax-product_cat .product-trust-box .elementor-icon-list-icon svg,
    .tax-product_tag .product-trust-box .elementor-icon-list-icon i,
    .tax-product_tag .product-trust-box .elementor-icon-list-icon svg {
        font-size: 15px !important;
        width: 15px !important;
        height: 15px !important;
    }

    .single-product .product-trust-box .elementor-icon-list-text,
    .post-type-archive-product .product-trust-box .elementor-icon-list-text,
    .tax-product_cat .product-trust-box .elementor-icon-list-text,
    .tax-product_tag .product-trust-box .elementor-icon-list-text {
        font-size: 14px !important;
        font-weight: 600 !important;
        line-height: 1.35 !important;
    }

    .single-product .product-trust-box .bg-valued-usp {
        margin-top: 10px !important;
    }
}

/* ================================
   Productbeschrijving premium stijl
================================ */

.single-product .product-description-box{
    max-width:1250px !important;
    width:100% !important;
    margin:20px auto 28px !important;
    padding:28px 56px !important;
    background:#fff !important;
    border-radius:18px !important;
    box-shadow:0 6px 22px rgba(0,0,0,.04) !important;
    box-sizing:border-box !important;
}

.single-product .elementor-widget.product-description-box,
.single-product .product-description-box .elementor-widget-container,
.single-product .product-description-box .elementor-text-editor{
    width:100% !important;
    max-width:none !important;
    box-sizing:border-box !important;
}

.single-product .product-description-box p,
.single-product .product-description-box li{
    color:#4d4d4d !important;
    font-size:17px !important;
    font-weight:400 !important;
    line-height:1.72 !important;
}

.single-product .product-description-box p{
    margin:0 0 18px !important;
}

.single-product .product-description-box p:last-child{
    margin-bottom:0 !important;
}

.single-product .product-description-box h1{
    color:#e8471e !important;
    font-size:38px !important;
    font-weight:900 !important;
    line-height:1.08 !important;
    letter-spacing:-.6px !important;
    margin:0 0 22px !important;
}

.single-product .product-description-box h2,
.single-product .product-description-box h3{
    color:#e8471e !important;
    font-size:24px !important;
    font-weight:900 !important;
    line-height:1.18 !important;
    letter-spacing:-.25px !important;
    margin:30px 0 12px !important;
    padding-top:20px !important;
    border-top:1px solid rgba(0,0,0,.055) !important;
}

.single-product .product-description-box h2:first-child,
.single-product .product-description-box h3:first-child{
    margin-top:0 !important;
    padding-top:0 !important;
    border-top:none !important;
}

.single-product .product-description-box strong{
    font-weight:700 !important;
    color:#111 !important;
}

.single-product .product-description-box a{
    color:#e8471e !important;
    font-weight:600 !important;
    text-decoration:none !important;
}

.single-product .product-description-box a:hover{
    text-decoration:underline !important;
}

/* Lijsten met vinkjes */
.single-product .product-description-box ul{
    list-style:none !important;
    padding:0 !important;
    margin:14px 0 20px !important;
}

.single-product .product-description-box ul li{
    position:relative !important;
    padding-left:28px !important;
    margin:0 0 10px !important;
}

.single-product .product-description-box ul li::before{
    content:"✓" !important;
    position:absolute !important;
    left:0 !important;
    top:0 !important;
    color:#4b7f16 !important;
    font-weight:900 !important;
}

.single-product .product-description-box ol{
    margin:14px 0 20px !important;
    padding-left:22px !important;
}

/* Tabellen */
.single-product .product-description-box table{
    width:100% !important;
    border-collapse:collapse !important;
    margin:22px 0 !important;
    overflow:hidden !important;
    border-radius:12px !important;
}

.single-product .product-description-box th{
    background:#e8471e !important;
    color:#fff !important;
    padding:14px !important;
    text-align:left !important;
}

.single-product .product-description-box td{
    border:1px solid #eee !important;
    padding:14px !important;
    color:#555 !important;
}

/* Quote */
.single-product .product-description-box blockquote{
    background:#fafafa !important;
    border-left:5px solid #e8471e !important;
    padding:20px 24px !important;
    border-radius:12px !important;
    margin:24px 0 !important;
}

/* ================================
   Tablet
================================ */

@media (min-width:768px) and (max-width:1024px){

    .single-product .product-description-box{
        max-width:1600px !important;
        width:calc(100% - 24px) !important;
        margin:18px auto 28px !important;
        padding:26px 34px !important;
    }

    .single-product .product-description-box h1{
        font-size:34px !important;
    }

    .single-product .product-description-box h2,
    .single-product .product-description-box h3{
        font-size:22px !important;
        margin:28px 0 11px !important;
        padding-top:18px !important;
    }

    .single-product .product-description-box p,
    .single-product .product-description-box li{
        font-size:16px !important;
    }
}

/* ================================
   Mobiel
================================ */

@media (max-width:767px){

    .single-product .product-description-box{
        max-width:1600px !important;
        width:calc(100% - 12px) !important;
        margin:16px auto 22px !important;
        padding:20px 16px !important;
        border-radius:16px !important;
    }

    .single-product .product-description-box h1{
        font-size:30px !important;
        margin-bottom:18px !important;
    }

    .single-product .product-description-box h2,
    .single-product .product-description-box h3{
        font-size:21px !important;
        margin:26px 0 11px !important;
        padding-top:18px !important;
    }

    .single-product .product-description-box p,
    .single-product .product-description-box li{
        font-size:15.5px !important;
    }

    .single-product .product-description-box table,
    .single-product .product-description-box thead,
    .single-product .product-description-box tbody,
    .single-product .product-description-box tr,
    .single-product .product-description-box td,
    .single-product .product-description-box th{
        display:block !important;
        width:100% !important;
    }

    .single-product .product-description-box th{
        border-radius:12px 12px 0 0 !important;
    }

    .single-product .product-description-box td{
        border-top:none !important;
    }
}

/* =================================
   Productreviews styling
================================= */

.woocommerce-tabs ul.tabs {
    visibility: hidden !important;
    height: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
}

#tab-reviews {
    display: block !important;
}

#tab-description,
#tab-additional_information {
    display: none !important;
}

.single-product .woocommerce-tabs {
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
}

.single-product .woocommerce-tabs:has(#tab-reviews ol.commentlist li) {
    background: transparent !important;
    padding: 10px 0 35px !important;
    margin-top: 20px !important;
}

/* Review titel/header */
#tab-reviews .woocommerce-Reviews-title {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 18px !important;

    font-size: 22px !important;
    font-weight: 800 !important;
    color: #222 !important;
    line-height: 1.35 !important;

    margin: 0 0 26px 0 !important;
    padding-top: 0 !important;
    border-top: none !important;
}

#tab-reviews .woocommerce-Reviews-title::after {
    content: "";
    width: 150px;
    height: 56px;
    flex-shrink: 0;
    background: url("https://bestekgigant.nl/wp-content/uploads/2026/05/logo-250x95px.svg") no-repeat center center;
    background-size: contain;
    opacity: 0.96;
}

#tab-reviews #review_form_wrapper,
#tab-reviews #respond.comment-respond {
    display: none !important;
}

#tab-reviews ol.commentlist {
    margin: 0 !important;
    padding: 0 !important;
}

#tab-reviews ol.commentlist li {
    margin: 0 0 20px 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

#tab-reviews ol.commentlist li:last-child {
    margin-bottom: 0 !important;
}

#tab-reviews ol.commentlist li img.avatar {
    display: none !important;
}

/* Review kaart */
#tab-reviews ol.commentlist li .comment-text {
    margin-left: 0 !important;
    padding: 30px 34px !important;

    border: 1px solid #ededed !important;
    border-radius: 22px !important;

    background: #ffffff !important;
    box-shadow: 0 8px 26px rgba(0,0,0,.045) !important;
}

#tab-reviews .woocommerce-review__author {
    font-size: 18px !important;
    font-weight: 800 !important;
    color: #222 !important;
}

#tab-reviews .woocommerce-review__verified {
    display: inline-block !important;
    margin-left: 10px !important;
    padding: 5px 12px !important;

    border-radius: 999px !important;
    background: #f4f4f4 !important;

    color: #666 !important;
    font-size: 12px !important;
    font-style: normal !important;
    font-weight: 600 !important;
}

#tab-reviews .woocommerce-review__published-date {
    font-size: 14px !important;
    color: #999 !important;
    margin-left: 8px !important;
}

#tab-reviews .comment-text p {
    font-size: 17px !important;
    line-height: 1.8 !important;
    color: #333 !important;
    margin-top: 18px !important;
    margin-bottom: 0 !important;
}

#tab-reviews .star-rating {
    float: right !important;
    color: #FDCC0D !important;
    font-size: 18px !important;
}

#tab-reviews .star-rating::before {
    color: #E0E0E0 !important;
}

#tab-reviews .star-rating span::before {
    color: #FDCC0D !important;
}

/* =================================
   Mobiel
================================= */

@media (max-width: 767px) {

    .single-product .woocommerce-tabs:has(#tab-reviews ol.commentlist li) {
        padding: 10px 0 28px !important;
        margin-top: 16px !important;
    }

    #tab-reviews .woocommerce-Reviews-title {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 10px !important;

        font-size: 20px !important;
        line-height: 1.3 !important;

        margin-bottom: 20px !important;
        padding-top: 0 !important;
    }

    #tab-reviews .woocommerce-Reviews-title::after {
        width: 130px !important;
        height: 48px !important;
    }

    #tab-reviews ol.commentlist li {
        margin-bottom: 16px !important;
    }

    #tab-reviews ol.commentlist li .comment-text {
        padding: 22px 20px !important;
        border-radius: 18px !important;
        box-shadow: 0 6px 20px rgba(0,0,0,.04) !important;
    }

    #tab-reviews .star-rating {
        float: none !important;
        display: block !important;
        margin: 0 0 14px 0 !important;
        font-size: 20px !important;
    }

    #tab-reviews .woocommerce-review__author {
        display: block !important;
        font-size: 18px !important;
        margin-bottom: 8px !important;
    }

    #tab-reviews .woocommerce-review__verified {
        margin-left: 0 !important;
        margin-top: 4px !important;
        margin-bottom: 6px !important;
    }

    #tab-reviews .woocommerce-review__published-date {
        display: inline !important;
        margin-left: 6px !important;
        font-size: 14px !important;
        line-height: 1.4 !important;
    }

    #tab-reviews .woocommerce-review__verified + .woocommerce-review__dash {
        display: inline !important;
        color: #999 !important;
        margin: 0 4px !important;
    }

    #tab-reviews .comment-text p {
        font-size: 16px !important;
        line-height: 1.7 !important;
        margin-top: 18px !important;
    }
}

/* ================================
   Mobiel fixed widgets netjes binnen scherm houden
   + Chaty verbergen op productpagina's
================================ */

@media (max-width: 767px) {

  /* WebwinkelKeur widget */
  #ww-widget-review,
  .ww-widget-review {
    transform: scale(0.9);
    transform-origin: bottom left;

    left: 0 !important;
    bottom: 0 !important;
  }

  /* Chaty op ALLE pagina's behalve productpagina */
  body:not(.single-product) .chaty-widget,
  body:not(.single-product) .chaty-widget-button,
  body:not(.single-product) .chaty-channel {
    transform: scale(0.9);
    transform-origin: bottom right;
  }

  body:not(.single-product) .chaty-widget {
    right: 8px !important;
    bottom: 8px !important;
  }

  /* Chaty volledig verbergen op productpagina */
  .single-product .chaty-widget,
  .single-product .chaty-widget-button,
  .single-product .chaty-channel {
    display: none !important;
  }

}

/* ================================
   PREMIUM PRODUCT REVIEWS
================================ */

.single-product .woocommerce-product-rating {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 4px 0 14px 0 !important;
    flex-wrap: wrap;
}

/* REVIEW LOGO */
.single-product .woocommerce-product-rating::before {
    content: "";
    width: 22px;
    height: 22px;
    display: inline-block;
    background-image: url("https://bestekgigant.nl/wp-content/uploads/2026/05/logo-32x32px.svg");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    flex-shrink: 0;
}

/* STARS */
.single-product .star-rating {
    margin: 0 !important;
    font-size: 16px !important;
    letter-spacing: 0 !important;
    line-height: 1 !important;
}

.single-product .star-rating span::before {
    color: #FDCC0D !important;
}

.single-product .star-rating::before {
    color: #E0E0E0 !important;
}

/* REVIEW LINK */
.single-product .woocommerce-review-link {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;

    padding: 5px 11px !important;

    background: #f7f7f7 !important;
    border-radius: 999px !important;

    font-size: 13px !important;
    font-weight: 600 !important;

    color: #444 !important;
    text-decoration: none !important;

    line-height: 1 !important;

    transition: all 0.2s ease;
}

.single-product .woocommerce-review-link:hover {
    background: #e8471e !important;
    color: #fff !important;
}

/* MOBILE */
@media (max-width: 767px) {

    .single-product .woocommerce-product-rating {
        gap: 8px;
        margin: 4px 0 12px 0 !important;
    }

    .single-product .woocommerce-product-rating::before {
        width: 20px;
        height: 20px;
    }

    .single-product .star-rating {
        font-size: 15px !important;
    }

    .single-product .woocommerce-review-link {
        padding: 5px 9px !important;
        font-size: 12px !important;
    }
}

/* SKU / categorie / tags verbergen */

.single-product .sku_wrapper,
.single-product .posted_in,
.single-product .tagged_as {
    display: none !important;
}

/* ================================
   Mobiel/tablet hamburger menu
   Premium kaartstijl Bestekgigant
================================ */

@media (max-width:1024px){

    /* ================================
       Dropdownpaneel
    ================================ */

    .elementor-nav-menu--dropdown,
    .elementor-nav-menu__container{
        background:#f8f8f8 !important;
        padding:16px !important;
        border-top:1px solid rgba(0,0,0,.04) !important;
        border-radius:0 0 22px 22px !important;
        box-shadow:0 18px 42px rgba(0,0,0,.11) !important;
        box-sizing:border-box !important;
    }

    /* ================================
       Algemene reset
    ================================ */

    .elementor-nav-menu--dropdown ul,
    .elementor-nav-menu--dropdown .sub-menu{
        margin:0 !important;
        padding:0 !important;
        list-style:none !important;
        box-sizing:border-box !important;
    }

    .elementor-nav-menu--dropdown ul{
        background:transparent !important;
    }

    /* ================================
       Hoofditems als kaarten
    ================================ */

    .elementor-nav-menu--dropdown > ul > li,
    .elementor-nav-menu--dropdown ul.elementor-nav-menu > li{
        margin:0 0 10px !important;
        padding:0 !important;

        background:#fff !important;
        border:1px solid #e9e9e9 !important;
        border-radius:15px !important;

        box-shadow:0 4px 14px rgba(0,0,0,.045) !important;
        overflow:hidden !important;

        transition:
            border-color .2s ease,
            box-shadow .2s ease,
            background-color .2s ease !important;
    }

    .elementor-nav-menu--dropdown > ul > li:last-child,
    .elementor-nav-menu--dropdown ul.elementor-nav-menu > li:last-child{
        margin-bottom:0 !important;
    }

    /* Hover over complete kaart */
    .elementor-nav-menu--dropdown > ul > li:hover,
    .elementor-nav-menu--dropdown ul.elementor-nav-menu > li:hover{
        border-color:rgba(232,71,30,.18) !important;
        box-shadow:0 7px 18px rgba(0,0,0,.06) !important;
    }

    /* ================================
       Hoofdlinks
    ================================ */

    .elementor-nav-menu--dropdown > ul > li > a,
    .elementor-nav-menu--dropdown ul.elementor-nav-menu > li > a{
        width:100% !important;
        min-height:58px !important;
        padding:14px 15px 14px 18px !important;

        display:flex !important;
        align-items:center !important;
        justify-content:space-between !important;
        gap:14px !important;

        color:#252525 !important;
        background:#fff !important;
        border:none !important;
        border-radius:14px !important;

        font-size:16px !important;
        font-weight:900 !important;
        line-height:1.2 !important;
        letter-spacing:.2px !important;
        text-transform:uppercase !important;
        text-decoration:none !important;

        box-shadow:none !important;
        box-sizing:border-box !important;

        -webkit-tap-highlight-color:transparent !important;

        transition:
            color .2s ease,
            background-color .2s ease !important;
    }

    /* Hoofdlink hover */
    .elementor-nav-menu--dropdown > ul > li > a:hover,
    .elementor-nav-menu--dropdown ul.elementor-nav-menu > li > a:hover{
        color:#e8471e !important;
        background:#fffaf7 !important;
    }

    /* Huidige pagina subtiel markeren */
    .elementor-nav-menu--dropdown li.current-menu-item > a,
    .elementor-nav-menu--dropdown li.current-menu-ancestor > a,
    .elementor-nav-menu--dropdown a.elementor-item-active{
        color:#e8471e !important;
        background:#fffaf7 !important;
        box-shadow:none !important;
    }

    /* Gesloten categorie houdt afgeronde onderkant */
    .elementor-nav-menu--dropdown
    .menu-item-has-children:not(.bg-menu-open) > a{
        border-radius:14px !important;
    }

    /* ================================
       Pijltjes
    ================================ */

    .elementor-nav-menu--dropdown .sub-arrow{
        width:32px !important;
        height:32px !important;
        min-width:32px !important;
        flex:0 0 32px !important;

        padding:0 !important;
        margin:0 !important;

        display:flex !important;
        align-items:center !important;
        justify-content:center !important;

        color:#333 !important;
        background:#f3f3f3 !important;
        border:1px solid #ededed !important;
        border-radius:50% !important;

        font-size:12px !important;
        line-height:1 !important;

        cursor:pointer !important;
        pointer-events:auto !important;

        transform:rotate(0deg) !important;

        transition:
            color .2s ease,
            background-color .2s ease,
            border-color .2s ease,
            transform .22s ease,
            box-shadow .2s ease !important;
    }

    /* Alle gesloten pijltjes neutraal */
    .elementor-nav-menu--dropdown
    .menu-item-has-children:not(.bg-menu-open) > a .sub-arrow,

    .elementor-nav-menu--dropdown
    .menu-item-has-children.current-menu-item:not(.bg-menu-open) > a .sub-arrow,

    .elementor-nav-menu--dropdown
    .menu-item-has-children.current-menu-ancestor:not(.bg-menu-open) > a .sub-arrow,

    .elementor-nav-menu--dropdown
    .menu-item-has-children:not(.bg-menu-open) > a.elementor-item-active .sub-arrow{
        color:#333 !important;
        background:#f3f3f3 !important;
        border-color:#ededed !important;
        box-shadow:none !important;
        transform:rotate(0deg) !important;
    }

    /* Geopend pijltje */
    .elementor-nav-menu--dropdown
    .menu-item-has-children.bg-menu-open > a .sub-arrow{
        color:#fff !important;
        background:#e8471e !important;
        border-color:#e8471e !important;
        box-shadow:0 5px 12px rgba(232,71,30,.22) !important;
        transform:rotate(180deg) !important;
    }

    /* ================================
       Geopende kaart
    ================================ */

    .elementor-nav-menu--dropdown
    .menu-item-has-children.bg-menu-open{
        background:#fff !important;
        border-color:rgba(232,71,30,.24) !important;
        box-shadow:0 8px 22px rgba(232,71,30,.08) !important;
    }

    .elementor-nav-menu--dropdown
    .menu-item-has-children.bg-menu-open > a{
        color:#e8471e !important;
        background:#fff7f4 !important;

        border-radius:14px 14px 0 0 !important;
        border-bottom:1px solid rgba(232,71,30,.12) !important;

        box-shadow:none !important;
    }

    /* ================================
       Submenu
    ================================ */

    .elementor-nav-menu--dropdown
    .menu-item-has-children > .sub-menu{
        display:none !important;

        margin:0 !important;
        padding:4px 16px 8px !important;

        background:#fff !important;
        border:none !important;
        border-radius:0 0 14px 14px !important;
        box-shadow:none !important;
    }

    /* Alleen eigen PHP-status opent submenu */
    .elementor-nav-menu--dropdown
    .menu-item-has-children.bg-menu-open > .sub-menu{
        display:block !important;
    }

    /* Elementor-status mag submenu niet openen */
    .elementor-nav-menu--dropdown
    .menu-item-has-children.elementor-active:not(.bg-menu-open) > .sub-menu,

    .elementor-nav-menu--dropdown
    .menu-item-has-children.open:not(.bg-menu-open) > .sub-menu{
        display:none !important;
    }

    /* ================================
       Submenu-items
    ================================ */

    .elementor-nav-menu--dropdown .sub-menu li{
        position:relative !important;

        margin:0 !important;
        padding:0 !important;

        background:transparent !important;
        border:none !important;
        border-radius:0 !important;
        box-shadow:none !important;
    }

    .elementor-nav-menu--dropdown .sub-menu li + li{
        border-top:1px solid #eeeeee !important;
    }

    /* ================================
       Submenu-links
    ================================ */

    .elementor-nav-menu--dropdown .sub-menu a{
        width:100% !important;
        min-height:44px !important;
        padding:11px 8px !important;

        display:flex !important;
        align-items:center !important;
        justify-content:flex-start !important;
        gap:10px !important;

        color:#555 !important;
        background:transparent !important;
        border:none !important;
        border-radius:8px !important;

        font-size:14px !important;
        font-weight:600 !important;
        line-height:1.3 !important;
        letter-spacing:0 !important;
        text-transform:none !important;
        text-decoration:none !important;

        box-shadow:none !important;
        box-sizing:border-box !important;

        transition:
            color .2s ease,
            background-color .2s ease,
            padding-left .2s ease !important;
    }

    /* Klein accentbolletje */
    .elementor-nav-menu--dropdown .sub-menu a::before{
        content:"" !important;

        width:6px !important;
        height:6px !important;
        min-width:6px !important;

        display:block !important;

        background:#d7d7d7 !important;
        border-radius:50% !important;

        transition:
            background-color .2s ease,
            transform .2s ease !important;
    }

    .elementor-nav-menu--dropdown .sub-menu a:hover{
        color:#e8471e !important;
        background:#fff9f6 !important;
        padding-left:11px !important;
    }

    .elementor-nav-menu--dropdown .sub-menu a:hover::before{
        background:#e8471e !important;
        transform:scale(1.2) !important;
    }

    /* Actief submenu-item */
    .elementor-nav-menu--dropdown .sub-menu a.elementor-item-active,
    .elementor-nav-menu--dropdown .sub-menu li.current-menu-item > a{
        color:#e8471e !important;
        background:#fff7f4 !important;
        font-weight:800 !important;
    }

    .elementor-nav-menu--dropdown
    .sub-menu a.elementor-item-active::before,

    .elementor-nav-menu--dropdown
    .sub-menu li.current-menu-item > a::before{
        background:#e8471e !important;
        transform:scale(1.2) !important;
    }

    /* ================================
       Items zonder submenu
    ================================ */

    .elementor-nav-menu--dropdown
    ul.elementor-nav-menu > li:not(.menu-item-has-children) > a::after{
        content:"→" !important;

        margin-left:auto !important;

        color:#b6b6b6 !important;
        font-size:20px !important;
        font-weight:400 !important;
        line-height:1 !important;

        transition:
            color .2s ease,
            transform .2s ease !important;
    }

    .elementor-nav-menu--dropdown
    ul.elementor-nav-menu > li:not(.menu-item-has-children) > a:hover::after{
        color:#e8471e !important;
        transform:translateX(3px) !important;
    }

    /* ================================
       Focus
    ================================ */

    .elementor-nav-menu--dropdown a:focus{
        outline:none !important;
    }

    .elementor-nav-menu--dropdown a:focus-visible{
        outline:2px solid rgba(232,71,30,.35) !important;
        outline-offset:-2px !important;
    }
}

/* ================================
   Alleen mobiel
================================ */

@media (max-width:767px){

    .elementor-nav-menu--dropdown,
    .elementor-nav-menu__container{
        padding:12px !important;
        border-radius:0 0 19px 19px !important;
    }

    .elementor-nav-menu--dropdown > ul > li,
    .elementor-nav-menu--dropdown ul.elementor-nav-menu > li{
        margin-bottom:8px !important;
        border-radius:14px !important;
    }

    .elementor-nav-menu--dropdown > ul > li > a,
    .elementor-nav-menu--dropdown ul.elementor-nav-menu > li > a{
        min-height:54px !important;
        padding:12px 12px 12px 15px !important;
        border-radius:13px !important;

        font-size:15px !important;
        letter-spacing:.1px !important;
    }

    .elementor-nav-menu--dropdown
    .menu-item-has-children.bg-menu-open > a{
        border-radius:13px 13px 0 0 !important;
    }

    .elementor-nav-menu--dropdown .sub-arrow{
        width:30px !important;
        height:30px !important;
        min-width:30px !important;
        flex-basis:30px !important;
        font-size:11px !important;
    }

    .elementor-nav-menu--dropdown
    .menu-item-has-children > .sub-menu{
        padding:3px 13px 7px !important;
        border-radius:0 0 13px 13px !important;
    }

    .elementor-nav-menu--dropdown .sub-menu a{
        min-height:42px !important;
        padding:10px 6px !important;
        font-size:13.5px !important;
    }

    .elementor-nav-menu--dropdown .sub-menu a:hover{
        padding-left:9px !important;
    }

    .elementor-nav-menu--dropdown
    ul.elementor-nav-menu > li:not(.menu-item-has-children) > a::after{
        font-size:18px !important;
    }
}

/* ================================
   Categoriepagina tekst premium stijl
================================ */

.woocommerce.archive .term-description,
.woocommerce-page.archive .term-description,
.woocommerce .woocommerce-products-header__description,
.woocommerce-page .woocommerce-products-header__description,
.category-description-box{
    max-width:1250px !important;
    width:100% !important;
    margin:20px auto 28px !important;
    padding:28px 56px !important;
    background:#fff !important;
    border-radius:18px !important;
    box-shadow:0 6px 22px rgba(0,0,0,.04) !important;
    box-sizing:border-box !important;
}

.woocommerce.archive .term-description p,
.woocommerce-page.archive .term-description p,
.woocommerce .woocommerce-products-header__description p,
.woocommerce-page .woocommerce-products-header__description p,
.category-description-box p,
.woocommerce.archive .term-description li,
.woocommerce-page.archive .term-description li,
.woocommerce .woocommerce-products-header__description li,
.woocommerce-page .woocommerce-products-header__description li,
.category-description-box li{
    color:#4d4d4d !important;
    font-size:17px !important;
    font-weight:400 !important;
    line-height:1.72 !important;
}

.woocommerce.archive .term-description p,
.woocommerce-page.archive .term-description p,
.woocommerce .woocommerce-products-header__description p,
.woocommerce-page .woocommerce-products-header__description p,
.category-description-box p{
    margin:0 0 18px !important;
}

.woocommerce.archive .term-description p:last-child,
.woocommerce-page.archive .term-description p:last-child,
.woocommerce .woocommerce-products-header__description p:last-child,
.woocommerce-page .woocommerce-products-header__description p:last-child,
.category-description-box p:last-child{
    margin-bottom:0 !important;
}

.woocommerce.archive .term-description h1,
.woocommerce-page.archive .term-description h1,
.woocommerce .woocommerce-products-header__description h1,
.woocommerce-page .woocommerce-products-header__description h1,
.category-description-box h1{
    color:#e8471e !important;
    font-size:38px !important;
    font-weight:900 !important;
    line-height:1.08 !important;
    letter-spacing:-.6px !important;
    margin:0 0 22px !important;
}

.woocommerce.archive .term-description h2,
.woocommerce.archive .term-description h3,
.woocommerce-page.archive .term-description h2,
.woocommerce-page.archive .term-description h3,
.woocommerce .woocommerce-products-header__description h2,
.woocommerce .woocommerce-products-header__description h3,
.woocommerce-page .woocommerce-products-header__description h2,
.woocommerce-page .woocommerce-products-header__description h3,
.category-description-box h2,
.category-description-box h3{
    color:#e8471e !important;
    font-size:24px !important;
    font-weight:900 !important;
    line-height:1.18 !important;
    letter-spacing:-.25px !important;
    margin:30px 0 12px !important;
    padding-top:20px !important;
    border-top:1px solid rgba(0,0,0,.055) !important;
}

.woocommerce.archive .term-description h2:first-child,
.woocommerce.archive .term-description h3:first-child,
.woocommerce-page.archive .term-description h2:first-child,
.woocommerce-page.archive .term-description h3:first-child,
.woocommerce .woocommerce-products-header__description h2:first-child,
.woocommerce .woocommerce-products-header__description h3:first-child,
.woocommerce-page .woocommerce-products-header__description h2:first-child,
.woocommerce-page .woocommerce-products-header__description h3:first-child,
.category-description-box h2:first-child,
.category-description-box h3:first-child{
    margin-top:0 !important;
    padding-top:0 !important;
    border-top:none !important;
}

.woocommerce.archive .term-description strong,
.woocommerce-page.archive .term-description strong,
.woocommerce .woocommerce-products-header__description strong,
.woocommerce-page .woocommerce-products-header__description strong,
.category-description-box strong{
    font-weight:700 !important;
    color:#111 !important;
}

.woocommerce.archive .term-description a,
.woocommerce-page.archive .term-description a,
.woocommerce .woocommerce-products-header__description a,
.woocommerce-page .woocommerce-products-header__description a,
.category-description-box a{
    color:#e8471e !important;
    font-weight:600 !important;
    text-decoration:none !important;
}

.woocommerce.archive .term-description a:hover,
.woocommerce-page.archive .term-description a:hover,
.woocommerce .woocommerce-products-header__description a:hover,
.woocommerce-page .woocommerce-products-header__description a:hover,
.category-description-box a:hover{
    text-decoration:underline !important;
}

/* Lijsten met vinkjes */
.woocommerce.archive .term-description ul,
.woocommerce-page.archive .term-description ul,
.woocommerce .woocommerce-products-header__description ul,
.woocommerce-page .woocommerce-products-header__description ul,
.category-description-box ul{
    list-style:none !important;
    padding:0 !important;
    margin:14px 0 20px !important;
}

.woocommerce.archive .term-description ul li,
.woocommerce-page.archive .term-description ul li,
.woocommerce .woocommerce-products-header__description ul li,
.woocommerce-page .woocommerce-products-header__description ul li,
.category-description-box ul li{
    position:relative !important;
    padding-left:28px !important;
    margin:0 0 10px !important;
}

.woocommerce.archive .term-description ul li::before,
.woocommerce-page.archive .term-description ul li::before,
.woocommerce .woocommerce-products-header__description ul li::before,
.woocommerce-page .woocommerce-products-header__description ul li::before,
.category-description-box ul li::before{
    content:"✓" !important;
    position:absolute !important;
    left:0 !important;
    top:0 !important;
    color:#4b7f16 !important;
    font-weight:900 !important;
}

.woocommerce.archive .term-description ol,
.woocommerce-page.archive .term-description ol,
.woocommerce .woocommerce-products-header__description ol,
.woocommerce-page .woocommerce-products-header__description ol,
.category-description-box ol{
    margin:14px 0 20px !important;
    padding-left:22px !important;
}

/* Tablet */
@media (min-width:768px) and (max-width:1024px){
    .woocommerce.archive .term-description,
    .woocommerce-page.archive .term-description,
    .woocommerce .woocommerce-products-header__description,
    .woocommerce-page .woocommerce-products-header__description,
    .category-description-box{
        max-width:1600px !important;
        width:calc(100% - 24px) !important;
        margin:18px auto 28px !important;
        padding:26px 34px !important;
    }

    .woocommerce.archive .term-description h1,
    .woocommerce-page.archive .term-description h1,
    .woocommerce .woocommerce-products-header__description h1,
    .woocommerce-page .woocommerce-products-header__description h1,
    .category-description-box h1{
        font-size:34px !important;
    }

    .woocommerce.archive .term-description h2,
    .woocommerce.archive .term-description h3,
    .woocommerce-page.archive .term-description h2,
    .woocommerce-page.archive .term-description h3,
    .woocommerce .woocommerce-products-header__description h2,
    .woocommerce .woocommerce-products-header__description h3,
    .woocommerce-page .woocommerce-products-header__description h2,
    .woocommerce-page .woocommerce-products-header__description h3,
    .category-description-box h2,
    .category-description-box h3{
        font-size:22px !important;
        margin:28px 0 11px !important;
        padding-top:18px !important;
    }

    .woocommerce.archive .term-description p,
    .woocommerce-page.archive .term-description p,
    .woocommerce .woocommerce-products-header__description p,
    .woocommerce-page .woocommerce-products-header__description p,
    .category-description-box p,
    .woocommerce.archive .term-description li,
    .woocommerce-page.archive .term-description li,
    .woocommerce .woocommerce-products-header__description li,
    .woocommerce-page .woocommerce-products-header__description li,
    .category-description-box li{
        font-size:16px !important;
    }
}

/* Mobiel */
@media (max-width:767px){
    .woocommerce.archive .term-description,
    .woocommerce-page.archive .term-description,
    .woocommerce .woocommerce-products-header__description,
    .woocommerce-page .woocommerce-products-header__description,
    .category-description-box{
        max-width:1600px !important;
        width:calc(100% - 12px) !important;
        margin:16px auto 22px !important;
        padding:20px 16px !important;
        border-radius:16px !important;
    }

    .woocommerce.archive .term-description h1,
    .woocommerce-page.archive .term-description h1,
    .woocommerce .woocommerce-products-header__description h1,
    .woocommerce-page .woocommerce-products-header__description h1,
    .category-description-box h1{
        font-size:30px !important;
        margin-bottom:18px !important;
    }

    .woocommerce.archive .term-description h2,
    .woocommerce.archive .term-description h3,
    .woocommerce-page.archive .term-description h2,
    .woocommerce-page.archive .term-description h3,
    .woocommerce .woocommerce-products-header__description h2,
    .woocommerce .woocommerce-products-header__description h3,
    .woocommerce-page .woocommerce-products-header__description h2,
    .woocommerce-page .woocommerce-products-header__description h3,
    .category-description-box h2,
    .category-description-box h3{
        font-size:21px !important;
        margin:26px 0 11px !important;
        padding-top:18px !important;
    }

    .woocommerce.archive .term-description p,
    .woocommerce-page.archive .term-description p,
    .woocommerce .woocommerce-products-header__description p,
    .woocommerce-page .woocommerce-products-header__description p,
    .category-description-box p,
    .woocommerce.archive .term-description li,
    .woocommerce-page.archive .term-description li,
    .woocommerce .woocommerce-products-header__description li,
    .woocommerce-page .woocommerce-products-header__description li,
    .category-description-box li{
        font-size:15.5px !important;
    }
}

/* ================================
   Premium prijs styling + dynamische sale badge
================================ */

.single-product p.price,
.single-product .price,
.single-product .woocommerce-variation-price {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    flex-wrap: wrap !important;

    margin: 4px 0 12px !important;
}

/* Normale prijs */
.single-product .price > .woocommerce-Price-amount.amount,
.single-product .price > span.woocommerce-Price-amount.amount {
    font-size: 46px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    color: #e8471e !important;
    letter-spacing: -1.4px !important;
}

/* Oude prijs hoger uitgelijnd */
.single-product del {
    display: inline-flex !important;
    align-items: flex-start !important;
    transform: translateY(-8px) !important;
}

.single-product del,
.single-product del .woocommerce-Price-amount {
    opacity: 0.45 !important;
    font-size: 28px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    color: #777 !important;
    text-decoration-thickness: 3px !important;
    text-decoration-color: #e8471e !important;
}

/* Nieuwe sale prijs */
.single-product ins,
.single-product ins .woocommerce-Price-amount {
    text-decoration: none !important;
    font-size: 46px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    color: #e8471e !important;
    letter-spacing: -1.4px !important;
}

/* Dynamische kortingsbadge */
.single-product .bg-discount-badge {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 8px 14px !important;
    border-radius: 999px !important;
    background: #4F7D1A !important;
    color: #fff !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    letter-spacing: 0.2px !important;
    box-shadow: 0 5px 14px rgba(79,125,26,0.18) !important;
}

/* Mobiel hoofdprijs */
@media (max-width: 767px) {

    .single-product p.price,
    .single-product .price,
    .single-product .woocommerce-variation-price {
        gap: 7px !important;
        margin: 4px 0 10px !important;
    }

    .single-product .price > .woocommerce-Price-amount.amount,
    .single-product .price > span.woocommerce-Price-amount.amount {
        font-size: 36px !important;
        letter-spacing: -1px !important;
    }

    .single-product del {
        transform: translateY(-9px) !important;
    }

    .single-product del,
    .single-product del .woocommerce-Price-amount {
        font-size: 21px !important;
        line-height: 1 !important;
        text-decoration-thickness: 2px !important;
    }

    .single-product ins,
    .single-product ins .woocommerce-Price-amount {
        font-size: 36px !important;
        letter-spacing: -1px !important;
    }

    .single-product .bg-discount-badge {
        font-size: 12px !important;
        padding: 6px 10px !important;
    }
}

/* ================================
   Bekijk ook / related reset + prijs mooier
================================ */

.single-product ul.products li.product .price,
.single-product .related ul.products li.product .price,
.single-product .upsells ul.products li.product .price {
    display: block !important;
    margin: 0 !important;
    gap: 0 !important;
    text-align: center !important;
    color: #e8471e !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    line-height: 1.1 !important;
    letter-spacing: -0.2px !important;
}

.single-product ul.products li.product .price .woocommerce-Price-amount,
.single-product .related ul.products li.product .price .woocommerce-Price-amount,
.single-product .upsells ul.products li.product .price .woocommerce-Price-amount {
    color: #e8471e !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    line-height: 1.1 !important;
    letter-spacing: -0.2px !important;
}

.single-product ul.products li.product del,
.single-product ul.products li.product del .woocommerce-Price-amount {
    opacity: 0.25 !important;
    color: #999 !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    text-decoration-thickness: 2px !important;
    transform: none !important;
}

.single-product ul.products li.product ins,
.single-product ul.products li.product ins .woocommerce-Price-amount {
    color: #e8471e !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    text-decoration: none !important;
}

.single-product ul.products li.product .bg-discount-badge,
.single-product .related .bg-discount-badge,
.single-product .upsells .bg-discount-badge {
    display: none !important;
}

/* ================================
   Premium kortingsbadge
================================ */

.woocommerce ul.products li.product {
    position: relative !important;
}

.woocommerce ul.products li.product .bg-loop-discount-badge {
    position: absolute !important;
    top: 9px !important;
    left: 9px !important;
    z-index: 20 !important;

    background: #e8471e !important;
    color: #fff !important;

    font-size: 12px !important;   /* Desktop iets groter */
    font-weight: 800 !important;
    line-height: 1 !important;
    letter-spacing: -.15px !important;

    padding: 6px 10px !important;
    border-radius: 999px !important;

    box-shadow: 0 3px 8px rgba(232,71,30,.16) !important;

    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* Tablet */
@media (min-width:768px) and (max-width:1024px){

    .woocommerce ul.products li.product .bg-loop-discount-badge{
        top: 8px !important;
        left: 8px !important;

        font-size: 11px !important;
        padding: 6px 10px !important;
    }

}

/* Mobiel */
@media (max-width:767px){

    .woocommerce ul.products li.product .bg-loop-discount-badge{
        top: 7px !important;
        left: 7px !important;

        font-size: 10px !important;
        padding: 5px 9px !important;
    }

}

/* ==========================================
   Assortimentpagina tekst - Premium
========================================== */

.assortiment-description-box{
    max-width:1500px !important;
    width:100% !important;
    margin:24px auto 60px !important;
    padding:42px 56px 52px !important;
    background:#fff !important;
    border-radius:18px !important;
    box-shadow:0 6px 22px rgba(0,0,0,.04) !important;
    box-sizing:border-box !important;
}

.assortiment-description-box p,
.assortiment-description-box li{
    color:#4d4d4d !important;
    font-size:17px !important;
    font-weight:400 !important;
    line-height:1.72 !important;
}

.assortiment-description-box p{
    margin:0 0 18px !important;
}

.assortiment-description-box h1{
    color:#e8471e !important;
    font-size:38px !important;
    font-weight:900 !important;
    line-height:1.08 !important;
    letter-spacing:-.6px !important;
    margin:0 0 22px !important;
}

.assortiment-description-box h2,
.assortiment-description-box h3{
    color:#e8471e !important;
    font-size:24px !important;
    font-weight:900 !important;
    line-height:1.18 !important;
    letter-spacing:-.25px !important;
    margin:34px 0 12px !important;
    padding-top:22px !important;
    border-top:1px solid rgba(0,0,0,.055) !important;
}

.assortiment-description-box h2:first-child,
.assortiment-description-box h3:first-child{
    margin-top:0 !important;
    padding-top:0 !important;
    border-top:none !important;
}

.assortiment-description-box strong{
    color:#111 !important;
    font-weight:700 !important;
}

.assortiment-description-box a{
    color:#e8471e !important;
    font-weight:600 !important;
    text-decoration:none !important;
}

.assortiment-description-box a:hover{
    text-decoration:underline !important;
}

/* Vinkjes */

.assortiment-description-box ul{
    list-style:none !important;
    padding:0 !important;
    margin:14px 0 22px !important;
}

.assortiment-description-box ul li{
    position:relative !important;
    padding-left:28px !important;
    margin:0 0 10px !important;
}

.assortiment-description-box ul li::before{
    content:"✓" !important;
    position:absolute !important;
    left:0 !important;
    top:0 !important;
    color:#4b7f16 !important;
    font-weight:900 !important;
}

.assortiment-description-box ol{
    margin:14px 0 22px !important;
    padding-left:22px !important;
}

/* Tabellen */

.assortiment-description-box table{
    width:100% !important;
    border-collapse:collapse !important;
    margin:24px 0 !important;
    overflow:hidden !important;
    border-radius:12px !important;
}

.assortiment-description-box th{
    background:#e8471e !important;
    color:#fff !important;
    padding:14px !important;
    text-align:left !important;
}

.assortiment-description-box td{
    border:1px solid #eee !important;
    padding:14px !important;
    color:#555 !important;
}

/* Quotes */

.assortiment-description-box blockquote{
    background:#fafafa !important;
    border-left:5px solid #e8471e !important;
    padding:20px 24px !important;
    border-radius:12px !important;
    margin:26px 0 !important;
}

/* ================================
   Tablet
================================ */

@media (min-width:768px) and (max-width:1024px){

    .assortiment-description-box{
        max-width:1600px !important;
        width:calc(100% - 24px) !important;
        margin:22px auto 50px !important;
        padding:34px !important;
    }

    .assortiment-description-box h1{
        font-size:34px !important;
    }

    .assortiment-description-box h2,
    .assortiment-description-box h3{
        font-size:22px !important;
    }

    .assortiment-description-box p,
    .assortiment-description-box li{
        font-size:16px !important;
    }
}

/* ================================
   Mobiel
================================ */

@media (max-width:767px){

    .assortiment-description-box{
        max-width:1600px !important;
        width:calc(100% - 12px) !important;
        margin:18px auto 40px !important;
        padding:22px 16px 30px !important;
        border-radius:16px !important;
    }

    .assortiment-description-box h1{
        font-size:30px !important;
        margin-bottom:18px !important;
    }

    .assortiment-description-box h2,
    .assortiment-description-box h3{
        font-size:21px !important;
        margin:28px 0 11px !important;
        padding-top:20px !important;
    }

    .assortiment-description-box p,
    .assortiment-description-box li{
        font-size:15.5px !important;
    }

    .assortiment-description-box table,
    .assortiment-description-box thead,
    .assortiment-description-box tbody,
    .assortiment-description-box tr,
    .assortiment-description-box td,
    .assortiment-description-box th{
        display:block !important;
        width:100% !important;
    }

    .assortiment-description-box th{
        border-radius:12px 12px 0 0 !important;
    }

    .assortiment-description-box td{
        border-top:none !important;
    }
}

/* FILTER SIDEBAR - clean premium styling */

/* Kopteksten terug normaal maken */
.elementor-widget-heading.mobile-filter-item {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 0 8px 0 !important;
}

/* Hoofdtitel FILTERS */
.elementor-widget-heading.mobile-filter-item:first-of-type {
    margin-bottom: 18px !important;
}

.elementor-widget-heading.mobile-filter-item .elementor-heading-title {
    margin: 0 !important;
    padding: 0 !important;
    font-weight: 600 !important;
    color: #222 !important;
}

/* Filterkaarten */
.elementor-widget-jet-smart-filters-checkboxes.mobile-filter-item,
.elementor-widget-jet-smart-filters-range.mobile-filter-item {
    background: #ffffff !important;
    background-color: #ffffff !important;
    border: 1px solid #eeeeee !important;
    border-radius: 14px !important;
    padding: 20px !important;
    margin: 0 0 26px 0 !important;
    box-shadow: 0 4px 16px rgba(0,0,0,.025) !important;
}

/* Prijskaart iets compacter */
.elementor-widget-jet-smart-filters-range.mobile-filter-item {
    padding: 16px 20px !important;
}

/* Alles binnen filters geforceerd wit */
.elementor-widget-jet-smart-filters-checkboxes.mobile-filter-item *,
.elementor-widget-jet-smart-filters-range.mobile-filter-item *,
.jet-smart-filters-checkboxes-wrap,
.jet-smart-filters-range,
.jet-range,
.jet-range *,
.jet-range__slider-wrapper,
.jet-range__inputs {
    background-color: #ffffff !important;
}

/* Euro-vakjes lichtgrijs houden */
.jet-range__inputs .jet-range__inputs-prefix,
.jet-range__inputs .jet-range__inputs-suffix {
    background-color: #eef1f5 !important;
}

/* Binnenste reset */
.jet-smart-filters-checkboxes-wrap,
.jet-smart-filters-range {
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Labels */
.jet-checkboxes-list__label {
    font-size: 16px !important;
    line-height: 1.45 !important;
    color: #333 !important;
}

/* Checkbox spacing */
.jet-checkboxes-list__row {
    margin-bottom: 10px !important;
}

/* Prijs slider */
.jet-range__slider {
    margin: 8px 0 18px 0 !important;
}

.jet-range__inputs {
    gap: 12px !important;
}

/* Mobiel */
@media (max-width: 767px) {

    .elementor-widget-jet-smart-filters-checkboxes.mobile-filter-item,
    .elementor-widget-jet-smart-filters-range.mobile-filter-item {
        margin-bottom: 22px !important;
    }

    .elementor-widget-jet-smart-filters-range.mobile-filter-item {
        padding: 14px 16px !important;
    }

    .jet-checkboxes-list__label {
        font-size: 15px !important;
    }
}
/* Checkbox actief: vakje groen */
.jet-checkboxes-list__input:checked + .jet-checkboxes-list__button .jet-checkboxes-list__decorator {
    background-color: #4b7f16 !important;
    border-color: #4b7f16 !important;
    position: relative !important;
}

/* Oud vinkje/icon verbergen */
.jet-checkboxes-list__input:checked + .jet-checkboxes-list__button .jet-checkboxes-list__decorator * {
    display: none !important;
}

/* Nieuw wit vinkje tekenen */
.jet-checkboxes-list__input:checked + .jet-checkboxes-list__button .jet-checkboxes-list__decorator::after {
    content: "✓" !important;
    color: #fff !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -52%) !important;
    line-height: 1 !important;
}

/* Regel/label normaal houden */
.jet-checkboxes-list__input:checked + .jet-checkboxes-list__button,
.jet-checkboxes-list__input:checked + .jet-checkboxes-list__button .jet-checkboxes-list__label {
    background: transparent !important;
    color: #333 !important;
}
.jet-checkboxes-list__input:checked + .jet-checkboxes-list__button .jet-checkboxes-list__label {
    font-weight: 600 !important;
}
.filter-hidden,
.mobile-filter-item.filter-hidden,
body.mobile-filters-open .mobile-filter-item.filter-hidden {
    display: none !important;
}
/* Mobiele filters iets smaller */
@media (max-width:1024px){

    .elementor-widget-jet-smart-filters-checkboxes.mobile-filter-item,
    .elementor-widget-jet-smart-filters-range.mobile-filter-item{

        width:calc(100% - 24px) !important;
        margin-left:auto !important;
        margin-right:auto !important;
        box-sizing:border-box !important;
    }

    .elementor-widget-heading.mobile-filter-item{
        width:calc(100% - 24px) !important;
        margin-left:auto !important;
        margin-right:auto !important;
        box-sizing:border-box !important;
    }

}

/* ================================
   Homepage productkaarten premium
================================ */

.home .woocommerce{
    max-width:1500px !important;
    width:100% !important;
    margin:0 auto !important;
    box-sizing:border-box !important;
}

.home .woocommerce ul.products{
    display:grid !important;
    grid-template-columns:repeat(6,1fr) !important;
    gap:18px !important;
    align-items:stretch !important;
    margin:0 !important;
    padding:0 !important;
}

.home .woocommerce ul.products li.product{
    background:#fff !important;
    border-radius:14px !important;
    padding:14px 16px 18px !important;
    box-shadow:0 3px 14px rgba(0,0,0,.045) !important;
    transition:all .25s ease !important;
    display:flex !important;
    flex-direction:column !important;
    min-height:380px !important;
    width:100% !important;
    margin:0 !important;
    overflow:hidden !important;
}

.home .woocommerce ul.products li.product:hover{
    transform:translateY(-3px);
    box-shadow:0 8px 20px rgba(0,0,0,.08) !important;
}

.home .woocommerce ul.products li.product a.woocommerce-LoopProduct-link{
    display:grid !important;
    grid-template-rows:175px 50px 22px 32px !important;
    width:100% !important;
    text-decoration:none !important;
    flex:0 0 auto !important;
}

.home .woocommerce ul.products li.product img{
    grid-row:1 !important;
    height:175px !important;
    max-height:175px !important;
    width:100% !important;
    object-fit:contain !important;
    justify-self:center !important;
    align-self:center !important;
    margin:0 !important;
}

/* Titel */
.home .woocommerce ul.products li.product h2,
.home .woocommerce ul.products li.product .woocommerce-loop-product__title{
    grid-row:2 !important;
    font-size:15px !important;
    font-weight:800 !important;
    line-height:1.18 !important;
    text-transform:uppercase !important;
    color:#222 !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    height:36px !important;
    min-height:36px !important;
    max-height:36px !important;
    padding:0 !important;
    margin:10px 0 0 !important;
    text-align:left !important;
    width:100% !important;
}

/* Sterren */
.home .woocommerce ul.products li.product .star-rating{
    grid-row:3 !important;
    height:22px !important;
    margin:2px 0 0 !important;
    justify-self:start !important;
    align-self:center !important;
    font-size:15px !important;
    transform:scale(.92);
    transform-origin:left center !important;
    overflow:hidden !important;
}

/* Prijs */
.home .woocommerce ul.products li.product .price{
    grid-row:4 !important;
    display:flex !important;
    align-items:baseline !important;
    justify-content:flex-start !important;
    gap:8px !important;
    flex-wrap:wrap !important;
    font-size:23px !important;
    font-weight:900 !important;
    color:#e8471e !important;
    text-align:left !important;
    width:100% !important;
    margin:2px 0 0 !important;
    min-height:32px !important;
    line-height:1.12 !important;
    letter-spacing:-.45px !important;
}

/* Oude prijs */
.home .woocommerce ul.products li.product .price del,
.home .woocommerce ul.products li.product .price del .amount,
.home .woocommerce ul.products li.product .price del bdi{
    color:#9c9c9c !important;
    opacity:1 !important;
    font-size:16px !important;
    font-weight:600 !important;
    text-decoration:line-through !important;
    line-height:1 !important;
    position:relative !important;
    top:-2px !important;
}

/* Nieuwe / normale prijs */
.home .woocommerce ul.products li.product .price ins,
.home .woocommerce ul.products li.product .price ins .amount,
.home .woocommerce ul.products li.product .price ins bdi,
.home .woocommerce ul.products li.product .price > .amount,
.home .woocommerce ul.products li.product .price > .amount bdi{
    color:#e8471e !important;
    font-size:23px !important;
    font-weight:900 !important;
    text-decoration:none !important;
    background:transparent !important;
    line-height:1 !important;
}

/* Button fallback */
.home .woocommerce ul.products li.product .button{
    border-radius:999px !important;
    padding:12px 16px !important;
    font-size:13px !important;
    line-height:1.15 !important;
    font-weight:700 !important;
    width:100% !important;
    min-height:62px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    margin:12px 0 0 !important;
    text-align:left !important;
    text-transform:uppercase !important;
    transition:all .22s ease !important;
}

.home .woocommerce ul.products li.product .button:hover{
    background:#467d12 !important;
    transform:translateY(-2px);
    box-shadow:0 8px 18px rgba(0,0,0,.12) !important;
}

.home .woocommerce ul.products li.product.outofstock .button,
.home .woocommerce ul.products li.product .button.disabled,
.home .woocommerce ul.products li.product .button.loading{
    background:#9a9a9a !important;
    color:#fff !important;
    opacity:1 !important;
}

/* Icoonknop spacing */
.home .woocommerce ul.products li.product .bg-icon-cart-button,
.home .woocommerce ul.products li.product .button.added,
.home .woocommerce ul.products li.product .bg-icon-cart-button.added{
    margin:12px 0 0 !important;
}

/* Verberg 'Bekijk winkelwagen' */
.home .woocommerce ul.products li.product a.added_to_cart,
.home .woocommerce ul.products li.product .added_to_cart{
    display:none !important;
}

/* ================================
   Tablet
================================ */

@media (min-width:768px) and (max-width:1024px){

    .home .woocommerce{
        max-width:1600px !important;
        width:100% !important;
    }

    .home .woocommerce ul.products{
        grid-template-columns:repeat(3,1fr) !important;
        gap:16px !important;
    }

    .home .woocommerce ul.products li.product{
        padding:14px 14px 16px !important;
        min-height:365px !important;
    }

    .home .woocommerce ul.products li.product a.woocommerce-LoopProduct-link{
        grid-template-rows:155px 46px 21px 31px !important;
    }

    .home .woocommerce ul.products li.product img{
        height:155px !important;
        max-height:155px !important;
    }

    .home .woocommerce ul.products li.product h2,
    .home .woocommerce ul.products li.product .woocommerce-loop-product__title{
        font-size:14px !important;
        height:34px !important;
        min-height:34px !important;
        max-height:34px !important;
        margin-top:8px !important;
    }

    .home .woocommerce ul.products li.product .star-rating{
        height:21px !important;
        font-size:14px !important;
    }

    .home .woocommerce ul.products li.product .price{
        font-size:22px !important;
        min-height:31px !important;
        gap:7px !important;
    }

    .home .woocommerce ul.products li.product .price del,
    .home .woocommerce ul.products li.product .price del .amount,
    .home .woocommerce ul.products li.product .price del bdi{
        font-size:15px !important;
    }

    .home .woocommerce ul.products li.product .price ins,
    .home .woocommerce ul.products li.product .price ins .amount,
    .home .woocommerce ul.products li.product .price ins bdi,
    .home .woocommerce ul.products li.product .price > .amount,
    .home .woocommerce ul.products li.product .price > .amount bdi{
        font-size:22px !important;
    }

    .home .woocommerce ul.products li.product .button,
    .home .woocommerce ul.products li.product .bg-icon-cart-button,
    .home .woocommerce ul.products li.product .button.added,
    .home .woocommerce ul.products li.product .bg-icon-cart-button.added{
        margin:10px 0 0 !important;
    }

    .home .woocommerce ul.products li.product .button{
        min-height:58px !important;
        font-size:12px !important;
        padding:10px 12px !important;
    }
}

/* ================================
   Mobiel
================================ */

@media (max-width:767px){

    .home .woocommerce{
        max-width:1600px !important;
        width:100% !important;
    }

    .home .woocommerce ul.products{
        grid-template-columns:1fr 1fr !important;
        gap:14px !important;
    }

    .home .woocommerce ul.products li.product{
        padding:12px 10px 14px !important;
        min-height:325px !important;
    }

    .home .woocommerce ul.products li.product a.woocommerce-LoopProduct-link{
        grid-template-rows:140px 43px 20px 30px !important;
    }

    .home .woocommerce ul.products li.product img{
        height:140px !important;
        max-height:140px !important;
    }

    .home .woocommerce ul.products li.product h2,
    .home .woocommerce ul.products li.product .woocommerce-loop-product__title{
        font-size:13px !important;
        height:31px !important;
        min-height:31px !important;
        max-height:31px !important;
        margin-top:6px !important;
    }

    .home .woocommerce ul.products li.product .star-rating{
        height:20px !important;
        font-size:13px !important;
    }

    .home .woocommerce ul.products li.product .price{
        font-size:20px !important;
        gap:6px !important;
        min-height:30px !important;
    }

    .home .woocommerce ul.products li.product .price del,
    .home .woocommerce ul.products li.product .price del .amount,
    .home .woocommerce ul.products li.product .price del bdi{
        font-size:13px !important;
    }

    .home .woocommerce ul.products li.product .price ins,
    .home .woocommerce ul.products li.product .price ins .amount,
    .home .woocommerce ul.products li.product .price ins bdi,
    .home .woocommerce ul.products li.product .price > .amount,
    .home .woocommerce ul.products li.product .price > .amount bdi{
        font-size:20px !important;
    }

    .home .woocommerce ul.products li.product .button,
    .home .woocommerce ul.products li.product .bg-icon-cart-button,
    .home .woocommerce ul.products li.product .button.added,
    .home .woocommerce ul.products li.product .bg-icon-cart-button.added{
        margin:10px 0 0 !important;
    }

    .home .woocommerce ul.products li.product .button{
        min-height:56px !important;
        font-size:12px !important;
        padding:10px 8px !important;
    }
}

/* Vaak samen gekocht */
.bg-complete-set {
    background: #ffffff;
    border: 1px solid #ececec;
    border-radius: 16px;
    padding: 16px;
    margin: 18px 0 4px !important;
}

.bg-complete-set h2 {
    color: #e8471e;
    font-size: 19px;
    font-weight: 900;
    text-transform: uppercase;
    margin: 0 0 8px;
}

.bg-complete-set p {
    margin: 0 0 14px;
    font-size: 13.5px;
    color: #555;
}

.bg-complete-set-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
}

.bg-complete-set-card {
    background: #fff;
    border: 1px solid #ececec;
    border-radius: 16px;
    padding: 14px;
    display: flex;
    flex-direction: column;
    min-height: 220px !important;
    box-shadow: 0 4px 14px rgba(0,0,0,.05);
    transition: all .25s ease;
}

.bg-complete-set-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 24px rgba(0,0,0,.09);
}

.bg-complete-set-link {
    text-decoration: none !important;
    color: inherit;
    display: grid;
    grid-template-rows: 105px 18px 20px 30px;
    row-gap: 4px;
}

.bg-complete-set-image {
    display: flex;
    align-items: center;
    justify-content: center;
}

.bg-complete-set-image img {
    max-height: 100px;
    max-width: 100%;
    width: auto;
}

.bg-complete-set-title {
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    color: #222;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.bg-complete-set-rating {
    height: 20px;
    display: flex;
    align-items: center;
    margin-top: -2px;
}

.bg-complete-set-rating .star-rating {
    font-size: 11px !important;
    margin: 0 !important;
}

.bg-complete-set-rating .star-rating::before,
.bg-complete-set-rating .star-rating span::before {
    color: #f5b400 !important;
}

.bg-complete-set-price {
    display: flex;
    flex-direction: row;
    align-items: baseline;
    justify-content: flex-start;
    gap: 10px;
    min-height: 32px;
    line-height: 1;
}

.bg-old-price {
    color: #999;
    font-size: 13px;
    font-weight: 700;
    text-decoration: line-through;
    line-height: 1;
    position: relative;
    top: -4px;
}

.bg-old-price.is-empty {
    visibility: hidden;
}

.bg-current-price {
    color: #e8471e;
    font-size: 18px;
    font-weight: 900;
    line-height: 1;
}

.bg-complete-set-button {
    margin-top: 8px !important;
    background: #e8471e;
    color: #fff !important;
    border-radius: 999px;
    padding: 8px 14px;
    text-align: center;
    text-decoration: none !important;
    font-size: 12px;
    font-weight: 700;
}

.bg-complete-set-button:hover {
    background: #cf3d17;
}

.bg-complete-set .bg-discount-badge,
.bg-complete-set-card .onsale,
.bg-complete-set-card .sale,
.bg-complete-set-card .discount-badge,
.bg-complete-set-card .save-badge {
    display: none !important;
}

@media (max-width:767px) {

    .bg-complete-set {
        padding: 14px;
        margin-bottom: 2px !important;
    }

    .bg-complete-set h2 {
        font-size: 17px;
    }

    .bg-complete-set-card {
        padding: 10px;
        min-height: 200px !important;
    }

    .bg-complete-set-link {
        grid-template-rows: 75px 16px 18px 28px;
        row-gap: 3px;
    }

    .bg-complete-set-image img {
        max-height: 70px;
    }

    .bg-complete-set-title {
        font-size: 11px;
    }

    .bg-complete-set-rating {
        margin-top: -2px;
    }

    .bg-complete-set-rating .star-rating {
        font-size: 10px !important;
    }

    .bg-complete-set-price {
        gap: 8px;
        min-height: 28px;
    }

    .bg-old-price {
        font-size: 12px;
        top: -3px;
    }

    .bg-current-price {
        font-size: 16px;
    }

    .bg-complete-set-button {
        font-size: 12px;
        padding: 8px 10px;
    }
}

/* ==========================================
   Homepage categorie showcase - strak premium
========================================== */

.bg-category-showcase {
    max-width: 1500px;
    margin: 34px auto 0;
    padding: 0 0 42px;
    background: transparent;
    border: none;
    box-shadow: none;
    position: relative;
}

/* Grijze lijn */
.bg-category-showcase::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 1px;
    background: linear-gradient(
        to right,
        rgba(0,0,0,0),
        rgba(0,0,0,.10),
        rgba(0,0,0,0)
    );
}

/* Oranje accent */
.bg-category-showcase::before {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -2px;
    transform: translateX(-50%);
    width: 92px;
    height: 4px;
    background: #e8471e;
    border-radius: 999px;
    z-index: 2;
}

.bg-category-showcase-heading {
    margin-bottom: 24px;
}

.bg-category-showcase-heading::before {
    content: "";
    display: block;
    width: 54px;
    height: 4px;
    background: #e8471e;
    border-radius: 99px;
    margin-bottom: 14px;
}

.bg-category-showcase-heading h2 {
    margin: 0 0 8px;
    font-size: 36px;
    line-height: 1.08;
    font-weight: 900;
    letter-spacing: -.9px;
    color: #222;
}

.bg-category-showcase-heading p {
    margin: 0;
    font-size: 16px;
    color: #666;
    line-height: 1.5;
}

/* ==========================================
   GRID
========================================== */

.bg-category-showcase-grid {
    display: grid;
    grid-template-columns: repeat(5,minmax(0,1fr));
    gap: 22px;
}

.bg-category-showcase-card {
    background: #fff;
    border-radius: 20px;
    overflow: hidden;
    border: 1px solid #eee;
    text-decoration: none !important;
    color: inherit;
    box-shadow: 0 5px 18px rgba(0,0,0,.055);
    transition: .25s;
}

.bg-category-showcase-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 14px 34px rgba(0,0,0,.11);
}

.bg-category-showcase-image {
    height: 220px;
    overflow: hidden;
    background: #fff;
}

.bg-category-showcase-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .35s;
}

.bg-category-showcase-card:hover img {
    transform: scale(1.045);
}

.bg-category-showcase-content {
    min-height: 68px;
    padding: 16px 18px;
    border-top: 1px solid #f2f2f2;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.bg-category-showcase-content span {
    font-size: 16px;
    line-height: 1.15;
    font-weight: 900;
    text-transform: uppercase;
    color: #222;
}

.bg-category-showcase-content strong {
    color: #e8471e;
    font-size: 27px;
    transition: .2s;
}

.bg-category-showcase-card:hover strong {
    transform: translateX(4px);
}

/* ==========================================
   TABLET
========================================== */

@media (max-width:1024px){

.bg-category-showcase{
    max-width:1600px;
    margin:30px auto 0;
    padding:0 0 36px 20px;
}

.bg-category-showcase::before{
    width:76px;
}

.bg-category-showcase-heading{
    padding-right:20px;
    margin-bottom:20px;
}

.bg-category-showcase-heading h2{
    font-size:30px;
}

.bg-category-showcase-heading p{
    font-size:15px;
}

.bg-category-showcase-grid{
    display:flex;
    overflow-x:auto;
    overflow-y:hidden;
    gap:16px;
    padding:0 20px 10px 0;
    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;
}

.bg-category-showcase-grid::-webkit-scrollbar{
    display:none;
}

.bg-category-showcase-card{
    flex:0 0 46%;
    scroll-snap-align:start;
}

.bg-category-showcase-image{
    height:190px;
}

}

/* ==========================================
   MOBIEL
========================================== */

@media (max-width:767px){

.bg-category-showcase{
    max-width:1600px;
    margin:24px auto 0;
    padding:0 0 32px 16px;
}

.bg-category-showcase::before{
    width:64px;
    height:3px;
}

.bg-category-showcase-heading{
    padding-right:16px;
    margin-bottom:16px;
}

.bg-category-showcase-heading::before{
    width:44px;
    height:3px;
    margin-bottom:12px;
}

.bg-category-showcase-heading h2{
    font-size:26px;
}

.bg-category-showcase-heading p{
    font-size:14px;
}

.bg-category-showcase-grid{
    display:flex;
    overflow-x:auto;
    overflow-y:hidden;
    gap:14px;
    padding:0 16px 8px 0;
    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;
}

.bg-category-showcase-grid::-webkit-scrollbar{
    display:none;
}

.bg-category-showcase-card{
    flex:0 0 80%;
    scroll-snap-align:start;
}

.bg-category-showcase-image{
    height:172px;
}

}

/* ==========================================
   Homepage USP's - premium
========================================== */

.bg-home-usps{
    max-width:1250px !important;
    width:100% !important;
    margin:28px auto 50px !important;
    padding:0 !important;
}

.bg-home-usps > .elementor-container,
.bg-home-usps .elementor-container,
.bg-home-usps > .e-con-inner{
    max-width:1500px !important;
    width:100% !important;
}

.bg-home-usps .elementor-container{
    gap:24px !important;
    align-items:stretch !important;
}

/* USP kaart */
.bg-home-usps .elementor-column{
    background:#fff !important;
    border:1px solid #eeeeee !important;
    border-radius:20px !important;
    padding:34px 28px !important;
    text-align:center !important;
    box-shadow:0 6px 20px rgba(0,0,0,.055) !important;
    transition:.25s ease !important;
}

.bg-home-usps .elementor-column:hover{
    transform:translateY(-4px);
    box-shadow:0 14px 34px rgba(0,0,0,.10) !important;
}

/* Icoon */
.bg-home-usps .elementor-icon{
    width:72px !important;
    height:72px !important;
    margin:0 auto 22px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    border-radius:50% !important;
    background:#e8471e !important;
    color:#fff !important;
    font-size:30px !important;
    box-shadow:0 10px 24px rgba(232,71,30,.28) !important;
}

.bg-home-usps .elementor-icon i,
.bg-home-usps .elementor-icon svg{
    color:#fff !important;
    fill:#fff !important;
}

/* Titel USP */
.bg-home-usps h1,
.bg-home-usps h2,
.bg-home-usps h3,
.bg-home-usps h4,
.bg-home-usps h5,
.bg-home-usps h6,
.bg-home-usps .elementor-heading-title{
    margin:0 0 10px !important;
    font-size:23px !important;
    line-height:1.08 !important;
    font-weight:900 !important;
    letter-spacing:-0.9px !important;
    color:#222 !important;
    text-transform:none !important;
    font-family:inherit !important;
}

/* Tekst USP */
.bg-home-usps p,
.bg-home-usps .elementor-widget-text-editor,
.bg-home-usps .elementor-widget-text-editor p,
.bg-home-usps .elementor-text-editor{
    margin:0 !important;
    font-size:16px !important;
    line-height:1.5 !important;
    font-weight:400 !important;
    color:#666 !important;
    font-family:inherit !important;
}

/* ==========================================
   Tablet - 3 naast elkaar
========================================== */

@media (min-width:768px) and (max-width:1024px){

    .bg-home-usps{
        max-width:1600px !important;
        margin:26px auto 44px !important;
        padding:0 20px !important;
    }

    .bg-home-usps > .elementor-container,
    .bg-home-usps .elementor-container,
    .bg-home-usps > .e-con-inner{
        max-width:1600px !important;
        display:flex !important;
        flex-wrap:nowrap !important;
        gap:18px !important;
        align-items:stretch !important;
    }

    .bg-home-usps .elementor-column{
        width:33.333% !important;
        flex:0 0 calc(33.333% - 12px) !important;
        padding:28px 18px !important;
    }

    .bg-home-usps .elementor-icon{
        width:58px !important;
        height:58px !important;
        font-size:25px !important;
        margin-bottom:16px !important;
    }

    .bg-home-usps h1,
    .bg-home-usps h2,
    .bg-home-usps h3,
    .bg-home-usps h4,
    .bg-home-usps h5,
    .bg-home-usps h6,
    .bg-home-usps .elementor-heading-title{
        font-size:18px !important;
    }

    .bg-home-usps p,
    .bg-home-usps .elementor-widget-text-editor,
    .bg-home-usps .elementor-widget-text-editor p,
    .bg-home-usps .elementor-text-editor{
        font-size:14px !important;
    }
}

/* ==========================================
   Mobiel
========================================== */

@media (max-width:767px){

    .bg-home-usps{
        max-width:1600px !important;
        margin:24px auto 38px !important;
        padding:0 16px !important;
    }

    .bg-home-usps > .elementor-container,
    .bg-home-usps .elementor-container,
    .bg-home-usps > .e-con-inner{
        max-width:1600px !important;
    }

    .bg-home-usps .elementor-container{
        gap:16px !important;
    }

    .bg-home-usps .elementor-column{
        padding:26px 22px !important;
        border-radius:18px !important;
    }

    .bg-home-usps .elementor-icon{
        width:54px !important;
        height:54px !important;
        font-size:23px !important;
        margin-bottom:14px !important;
    }

    .bg-home-usps h1,
    .bg-home-usps h2,
    .bg-home-usps h3,
    .bg-home-usps h4,
    .bg-home-usps h5,
    .bg-home-usps h6,
    .bg-home-usps .elementor-heading-title{
        font-size:20px !important;
    }

    .bg-home-usps p,
    .bg-home-usps .elementor-widget-text-editor,
    .bg-home-usps .elementor-widget-text-editor p,
    .bg-home-usps .elementor-text-editor{
        font-size:14px !important;
    }
}

/* ==========================================
   Footer - premium styling v3.1
========================================== */

.elementor-location-footer{
    background:#fff !important;
    border-top:none !important;
    padding-top:36px !important;
}

/* Footer containers */
.elementor-location-footer .elementor-section,
.elementor-location-footer .e-con,
.elementor-location-footer .elementor-container{
    max-width:1400px !important;
    margin-left:auto !important;
    margin-right:auto !important;
}

/* Kolommen */
.elementor-location-footer .elementor-column{
    padding-left:30px !important;
    padding-right:30px !important;
}

/* Titels */
.elementor-location-footer .elementor-widget-heading .elementor-heading-title{
    position:relative;
    font-size:20px !important;
    line-height:1.15 !important;
    font-weight:900 !important;
    letter-spacing:-.4px !important;
    color:#222 !important;
    margin:0 0 28px !important;
    text-transform:uppercase !important;
}

/* Oranje accent boven titels */
.elementor-location-footer .elementor-widget-heading .elementor-heading-title::before{
    content:"";
    display:block;
    width:38px;
    height:4px;
    background:#e8471e;
    border-radius:999px;
    margin-bottom:14px;
}

/* Tekst en links */
.elementor-location-footer p,
.elementor-location-footer li,
.elementor-location-footer a,
.elementor-location-footer .elementor-icon-list-text{
    font-size:16px !important;
    line-height:1.8 !important;
    font-weight:500 !important;
    color:#555 !important;
    text-decoration:none !important;
}

/* Link hover */
.elementor-location-footer a{
    transition:.22s ease !important;
}

.elementor-location-footer a:hover{
    color:#e8471e !important;
    padding-left:4px;
}

/* Contact iconen */
.elementor-location-footer .elementor-icon-list-icon i,
.elementor-location-footer .elementor-icon-list-icon svg{
    color:#e8471e !important;
    fill:#e8471e !important;
}

.elementor-location-footer .elementor-icon-list-item{
    align-items:flex-start !important;
    margin-bottom:13px !important;
}

/* Meer optische lengte in kortere kolommen */
.elementor-location-footer .elementor-widget-nav-menu li,
.elementor-location-footer .elementor-widget-icon-list li{
    margin-bottom:7px !important;
}

/* Copyright / onderste tekst */
.elementor-location-footer .elementor-widget-text-editor{
    font-size:15px !important;
    line-height:1.55 !important;
    color:#666 !important;
}

/* Betaallogo's */
.elementor-location-footer img{
    max-height:38px !important;
    width:auto !important;
    object-fit:contain !important;
    transition:.22s ease !important;
}

.elementor-location-footer img:hover{
    transform:translateY(-2px);
}

/* Onderste betaal/copyright-sectie */
.elementor-location-footer .elementor-section:last-child,
.elementor-location-footer .e-con:last-child{
    border-top:1px solid #ececec !important;
    padding-top:22px !important;
    margin-top:26px !important;
}

/* Mobiel */
@media(max-width:767px){

    .elementor-location-footer{
        padding-top:28px !important;
    }

    .elementor-location-footer .elementor-column{
        padding-left:18px !important;
        padding-right:18px !important;
        margin-bottom:30px !important;
    }

    .elementor-location-footer .elementor-widget-heading .elementor-heading-title{
        font-size:20px !important;
        margin-bottom:18px !important;
    }

    .elementor-location-footer .elementor-widget-heading .elementor-heading-title::before{
        width:34px;
        height:3px;
        margin-bottom:12px;
    }

    .elementor-location-footer p,
    .elementor-location-footer li,
    .elementor-location-footer a,
    .elementor-location-footer .elementor-icon-list-text{
        font-size:15px !important;
        line-height:1.65 !important;
    }

    .elementor-location-footer img{
        max-height:32px !important;
    }

    .elementor-location-footer .elementor-section:last-child,
    .elementor-location-footer .e-con:last-child{
        margin-top:20px !important;
        padding-top:20px !important;
    }
}
/* ==========================================
   Tablet footer fix
========================================== */

@media (min-width:768px) and (max-width:1024px){

    .elementor-location-footer .elementor-container{
        display:flex !important;
        flex-wrap:wrap !important;
        gap:34px 0 !important;
    }

    .elementor-location-footer .elementor-column{
        width:50% !important;
        flex:0 0 50% !important;
        padding-left:24px !important;
        padding-right:24px !important;
    }

    /* Derde kolom onderaan over volledige breedte */
    .elementor-location-footer .elementor-column:nth-child(3){
        width:100% !important;
        flex:0 0 100% !important;
    }

    .elementor-location-footer .elementor-column:nth-child(3) .elementor-widget-container{
        max-width:100% !important;
    }

    .elementor-location-footer .elementor-column:nth-child(3) ul{
        columns:2;
        column-gap:50px;
    }

    .elementor-location-footer .elementor-widget-heading .elementor-heading-title{
        font-size:19px !important;
        line-height:1.2 !important;
    }

    .elementor-location-footer p,
    .elementor-location-footer li,
    .elementor-location-footer a,
    .elementor-location-footer .elementor-icon-list-text{
        font-size:15px !important;
        line-height:1.7 !important;
    }
}

/* Premium icon cart button */
.woocommerce ul.products li.product .bg-icon-cart-button,
.woocommerce ul.products li.product a.bg-icon-cart-button.button{
    width:128px !important;
    min-width:128px !important;
    max-width:128px !important;
    height:52px !important;
    min-height:52px !important;
    padding:0 !important;
    margin:auto 0 0 0 !important;

    border-radius:14px !important;
    background:#4b7f16 !important;
    border:none !important;

    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:12px !important;

    font-size:0 !important;
    line-height:1 !important;

    box-shadow:0 4px 12px rgba(0,0,0,.08) !important;
    transition:all .22s ease !important;
}

.woocommerce ul.products li.product .bg-icon-cart-button:hover{
    background:#467d12 !important;
    transform:translateY(-2px);
    box-shadow:0 10px 24px rgba(0,0,0,.12) !important;
}

.woocommerce ul.products li.product .bg-icon-cart-button .bg-cart-plus{
    font-size:24px !important;
    font-weight:400 !important;
    line-height:1 !important;
    color:#fff !important;
    margin-top:-1px !important;
}

.woocommerce ul.products li.product .bg-icon-cart-button i{
    font-size:23px !important;
    line-height:1 !important;
    color:#fff !important;
}

/* Uitverkocht button */
.woocommerce ul.products li.product.outofstock .bg-icon-cart-button,
.woocommerce ul.products li.product.outofstock a.bg-icon-cart-button.button,
.woocommerce ul.products li.product.outofstock .button.bg-icon-cart-button{
    background:#a6a6a6 !important;
    background-color:#a6a6a6 !important;
    color:#fff !important;
    font-size:14px !important;
    font-weight:800 !important;
    line-height:1 !important;
    box-shadow:none !important;
    cursor:not-allowed !important;
    pointer-events:none !important;
    opacity:1 !important;
    gap:0 !important;
}

.woocommerce ul.products li.product.outofstock .bg-icon-cart-button:hover{
    background:#a6a6a6 !important;
    transform:none !important;
    box-shadow:none !important;
}

.woocommerce ul.products li.product.outofstock .bg-icon-cart-button .bg-cart-plus,
.woocommerce ul.products li.product.outofstock .bg-icon-cart-button i{
    display:none !important;
}

.woocommerce ul.products li.product.outofstock .bg-icon-cart-button::after{
    content:"Uitverkocht" !important;
    color:#fff !important;
    font-size:14px !important;
    font-weight:800 !important;
    line-height:1 !important;
}

/* Tablet */
@media (min-width:768px) and (max-width:1024px){

    .woocommerce ul.products li.product .bg-icon-cart-button,
    .woocommerce ul.products li.product a.bg-icon-cart-button.button{
        width:118px !important;
        min-width:118px !important;
        max-width:118px !important;
        height:50px !important;
        min-height:50px !important;
        border-radius:14px !important;
        gap:11px !important;
    }

    .woocommerce ul.products li.product .bg-icon-cart-button .bg-cart-plus{
        font-size:23px !important;
    }

    .woocommerce ul.products li.product .bg-icon-cart-button i{
        font-size:22px !important;
    }

    .woocommerce ul.products li.product.outofstock .bg-icon-cart-button::after{
        font-size:13px !important;
    }
}

/* Mobiel */
@media (max-width:767px){

    .woocommerce ul.products li.product .bg-icon-cart-button,
    .woocommerce ul.products li.product a.bg-icon-cart-button.button{
        width:108px !important;
        min-width:108px !important;
        max-width:108px !important;
        height:46px !important;
        min-height:46px !important;
        border-radius:14px !important;
        gap:10px !important;
    }

    .woocommerce ul.products li.product .bg-icon-cart-button .bg-cart-plus{
        font-size:22px !important;
    }

    .woocommerce ul.products li.product .bg-icon-cart-button i{
        font-size:20px !important;
    }

    .woocommerce ul.products li.product.outofstock .bg-icon-cart-button::after{
        font-size:12.5px !important;
    }
}

/* Forceer de radius zodat geen andere .button CSS hem overschrijft */
.woocommerce ul.products li.product a.bg-icon-cart-button.button,
.woocommerce ul.products li.product .button.bg-icon-cart-button{
    border-radius:14px !important;
}

/* Reviewaantal achter de sterren */

.related.products .bg-rating-row,
.woocommerce ul.products .bg-rating-row{
    grid-row:3 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    height:22px !important;
    margin:-1px 0 0 !important;
}

.related.products .bg-rating-row .star-rating,
.woocommerce ul.products .bg-rating-row .star-rating{
    margin:0 !important;
}

.related.products .bg-review-count,
.woocommerce ul.products .bg-review-count{
    display:inline-flex !important;
    align-items:center !important;
    margin-left:4px !important;
    color:#8b8b8b !important;
    font-size:13px !important;
    font-weight:600 !important;
    line-height:1 !important;
    position:relative !important;
    top:0 !important;
}

/* Mobiel */
@media (max-width:767px){

    .related.products .bg-review-count,
    .woocommerce ul.products .bg-review-count{
        font-size:11px !important;
        margin-left:4px !important;
        font-weight:600 !important;
        top:-1px !important;
    }

}

/* ================================
   Productkaarten premium stijl
   Homepage + winkelpagina + categoriepagina
================================ */

/* Containers */
.home .woocommerce{
    max-width:1500px !important;
    width:100% !important;
    margin:0 auto !important;
    box-sizing:border-box !important;
}

/* Grid */
.home .woocommerce ul.products,
.post-type-archive-product .woocommerce ul.products,
.tax-product_cat .woocommerce ul.products{
    display:grid !important;
    align-items:stretch !important;
    margin:0 !important;
    padding:0 !important;
}

.home .woocommerce ul.products{
    grid-template-columns:repeat(6,1fr) !important;
    gap:18px !important;
}

.post-type-archive-product .woocommerce ul.products,
.tax-product_cat .woocommerce ul.products{
    grid-template-columns:repeat(4,1fr) !important;
    gap:22px !important;
}

/* Productkaart */
.home .woocommerce ul.products li.product,
.post-type-archive-product .woocommerce ul.products li.product,
.tax-product_cat .woocommerce ul.products li.product{
    background:#fff !important;
    border-radius:14px !important;
    padding:14px 16px 18px !important;
    box-shadow:0 3px 14px rgba(0,0,0,.045) !important;
    transition:all .25s ease !important;
    display:flex !important;
    flex-direction:column !important;
    min-height:380px !important;
    width:100% !important;
    margin:0 !important;
    overflow:hidden !important;
}

.post-type-archive-product .woocommerce ul.products li.product,
.tax-product_cat .woocommerce ul.products li.product{
    max-width:100% !important;
    text-align:left !important;
}

.home .woocommerce ul.products li.product:hover,
.post-type-archive-product .woocommerce ul.products li.product:hover,
.tax-product_cat .woocommerce ul.products li.product:hover{
    transform:translateY(-3px);
    box-shadow:0 8px 20px rgba(0,0,0,.08) !important;
}

/* Productlink layout */
.home .woocommerce ul.products li.product a.woocommerce-LoopProduct-link,
.post-type-archive-product .woocommerce ul.products li.product a.woocommerce-LoopProduct-link,
.tax-product_cat .woocommerce ul.products li.product a.woocommerce-LoopProduct-link{
    display:grid !important;
    grid-template-rows:175px 50px 22px 32px !important;
    width:100% !important;
    text-decoration:none !important;
    flex:0 0 auto !important;
}

.post-type-archive-product .woocommerce ul.products li.product a.woocommerce-LoopProduct-link,
.tax-product_cat .woocommerce ul.products li.product a.woocommerce-LoopProduct-link{
    text-align:left !important;
}

/* Afbeelding */
.home .woocommerce ul.products li.product img,
.post-type-archive-product .woocommerce ul.products li.product img,
.tax-product_cat .woocommerce ul.products li.product img{
    grid-row:1 !important;
    height:175px !important;
    max-height:175px !important;
    width:100% !important;
    object-fit:contain !important;
    justify-self:center !important;
    align-self:center !important;
    margin:0 !important;
}

/* Titel */
.home .woocommerce ul.products li.product h2,
.home .woocommerce ul.products li.product .woocommerce-loop-product__title,
.post-type-archive-product .woocommerce ul.products li.product h2,
.post-type-archive-product .woocommerce ul.products li.product .woocommerce-loop-product__title,
.tax-product_cat .woocommerce ul.products li.product h2,
.tax-product_cat .woocommerce ul.products li.product .woocommerce-loop-product__title{
    grid-row:2 !important;
    font-weight:800 !important;
    line-height:18px !important;
    text-transform:uppercase !important;
    color:#222 !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    height:36px !important;
    min-height:36px !important;
    max-height:36px !important;
    padding:0 !important;
    margin:10px 0 0 !important;
    text-align:left !important;
    width:100% !important;
    clip-path:inset(0 0 0 0) !important;
}

.home .woocommerce ul.products li.product h2,
.home .woocommerce ul.products li.product .woocommerce-loop-product__title{
    font-size:15px !important;
}

.post-type-archive-product .woocommerce ul.products li.product h2,
.post-type-archive-product .woocommerce ul.products li.product .woocommerce-loop-product__title,
.tax-product_cat .woocommerce ul.products li.product h2,
.tax-product_cat .woocommerce ul.products li.product .woocommerce-loop-product__title{
    font-size:14px !important;
}

/* Sterren */
.home .woocommerce ul.products li.product .star-rating,
.post-type-archive-product .woocommerce ul.products li.product .star-rating,
.tax-product_cat .woocommerce ul.products li.product .star-rating{
    grid-row:3 !important;
    height:22px !important;
    justify-self:start !important;
    align-self:center !important;
    font-size:15px !important;
    transform:scale(.92);
    transform-origin:left center !important;
    overflow:hidden !important;
}

.home .woocommerce ul.products li.product .star-rating{
    margin:2px 0 0 !important;
}

.post-type-archive-product .woocommerce ul.products li.product .star-rating,
.tax-product_cat .woocommerce ul.products li.product .star-rating{
    margin:-1px 0 0 !important;
}

/* Prijs */
.home .woocommerce ul.products li.product .price,
.post-type-archive-product .woocommerce ul.products li.product .price,
.tax-product_cat .woocommerce ul.products li.product .price{
    grid-row:4 !important;
    display:flex !important;
    flex-direction:row !important;
    align-items:baseline !important;
    justify-content:flex-start !important;
    gap:8px !important;
    flex-wrap:wrap !important;
    font-size:23px !important;
    font-weight:900 !important;
    color:#e8471e !important;
    text-align:left !important;
    width:100% !important;
    margin:6px 0 0 !important;
    min-height:32px !important;
    line-height:1.12 !important;
    letter-spacing:-.45px !important;
}

.home .woocommerce ul.products li.product .price{
    margin:2px 0 0 !important;
}

.post-type-archive-product .woocommerce ul.products li.product .price,
.tax-product_cat .woocommerce ul.products li.product .price{
    max-width:100% !important;
}

/* Oude prijs */
.home .woocommerce ul.products li.product .price del,
.home .woocommerce ul.products li.product .price del .amount,
.home .woocommerce ul.products li.product .price del bdi,
.post-type-archive-product .woocommerce ul.products li.product .price del,
.post-type-archive-product .woocommerce ul.products li.product .price del .amount,
.post-type-archive-product .woocommerce ul.products li.product .price del bdi,
.tax-product_cat .woocommerce ul.products li.product .price del,
.tax-product_cat .woocommerce ul.products li.product .price del .amount,
.tax-product_cat .woocommerce ul.products li.product .price del bdi{
    color:#9c9c9c !important;
    opacity:1 !important;
    font-size:16px !important;
    font-weight:600 !important;
    text-decoration:line-through !important;
    line-height:1 !important;
    position:relative !important;
    top:-2px !important;
}

/* Nieuwe / normale prijs */
.home .woocommerce ul.products li.product .price ins,
.home .woocommerce ul.products li.product .price ins .amount,
.home .woocommerce ul.products li.product .price ins bdi,
.home .woocommerce ul.products li.product .price > .amount,
.home .woocommerce ul.products li.product .price > .amount bdi,
.post-type-archive-product .woocommerce ul.products li.product .price ins,
.post-type-archive-product .woocommerce ul.products li.product .price ins .amount,
.post-type-archive-product .woocommerce ul.products li.product .price ins bdi,
.post-type-archive-product .woocommerce ul.products li.product .price > .amount,
.post-type-archive-product .woocommerce ul.products li.product .price > .amount bdi,
.tax-product_cat .woocommerce ul.products li.product .price ins,
.tax-product_cat .woocommerce ul.products li.product .price ins .amount,
.tax-product_cat .woocommerce ul.products li.product .price ins bdi,
.tax-product_cat .woocommerce ul.products li.product .price > .amount,
.tax-product_cat .woocommerce ul.products li.product .price > .amount bdi{
    color:#e8471e !important;
    font-size:23px !important;
    font-weight:900 !important;
    text-decoration:none !important;
    background:transparent !important;
    line-height:1 !important;
}

/* Homepage button fallback */
.home .woocommerce ul.products li.product .button{
    border-radius:999px !important;
    padding:12px 16px !important;
    font-size:13px !important;
    line-height:1.15 !important;
    font-weight:700 !important;
    width:100% !important;
    min-height:62px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    margin:12px 0 0 !important;
    text-align:left !important;
    text-transform:uppercase !important;
    transition:all .22s ease !important;
}

.home .woocommerce ul.products li.product .button:hover{
    background:#467d12 !important;
    transform:translateY(-2px);
    box-shadow:0 8px 18px rgba(0,0,0,.12) !important;
}

/* Button spacing */
.home .woocommerce ul.products li.product .bg-icon-cart-button,
.home .woocommerce ul.products li.product .button.added,
.home .woocommerce ul.products li.product .bg-icon-cart-button.added,
.post-type-archive-product .woocommerce ul.products li.product .button,
.post-type-archive-product .woocommerce ul.products li.product .bg-icon-cart-button,
.post-type-archive-product .woocommerce ul.products li.product .button.added,
.post-type-archive-product .woocommerce ul.products li.product .bg-icon-cart-button.added,
.tax-product_cat .woocommerce ul.products li.product .button,
.tax-product_cat .woocommerce ul.products li.product .bg-icon-cart-button,
.tax-product_cat .woocommerce ul.products li.product .button.added,
.tax-product_cat .woocommerce ul.products li.product .bg-icon-cart-button.added{
    margin:12px 0 0 !important;
}

/* Uitverkochte button */
.home .woocommerce ul.products li.product.outofstock .button,
.home .woocommerce ul.products li.product .button.disabled,
.home .woocommerce ul.products li.product .button.loading,
.post-type-archive-product .woocommerce ul.products li.product.outofstock .button,
.post-type-archive-product .woocommerce ul.products li.product .button.disabled,
.post-type-archive-product .woocommerce ul.products li.product .button.loading,
.tax-product_cat .woocommerce ul.products li.product.outofstock .button,
.tax-product_cat .woocommerce ul.products li.product .button.disabled,
.tax-product_cat .woocommerce ul.products li.product .button.loading{
    background:#9a9a9a !important;
    color:#fff !important;
    opacity:1 !important;
}

/* Verberg 'Bekijk winkelwagen' */
.home .woocommerce ul.products li.product a.added_to_cart,
.home .woocommerce ul.products li.product .added_to_cart,
.post-type-archive-product .woocommerce ul.products li.product a.added_to_cart,
.post-type-archive-product .woocommerce ul.products li.product .added_to_cart,
.tax-product_cat .woocommerce ul.products li.product a.added_to_cart,
.tax-product_cat .woocommerce ul.products li.product .added_to_cart{
    display:none !important;
}

/* Reviewaantal achter sterren */
.post-type-archive-product .bg-rating-row,
.tax-product_cat .bg-rating-row{
    grid-row:3 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    height:22px !important;
    margin:-1px 0 0 !important;
}

.post-type-archive-product .bg-rating-row .star-rating,
.tax-product_cat .bg-rating-row .star-rating{
    margin:0 !important;
}

.post-type-archive-product .bg-review-count,
.tax-product_cat .bg-review-count{
    display:inline-flex !important;
    align-items:center !important;
    margin-left:4px !important;
    color:#8b8b8b !important;
    font-size:13px !important;
    font-weight:600 !important;
    line-height:1 !important;
    position:relative !important;
    top:0 !important;
}

/* ================================
   Tablet
================================ */
@media (min-width:768px) and (max-width:1024px){

    .home .woocommerce{
        max-width:1600px !important;
        width:100% !important;
    }

    .home .woocommerce ul.products,
    .post-type-archive-product .woocommerce ul.products,
    .tax-product_cat .woocommerce ul.products{
        grid-template-columns:repeat(3,1fr) !important;
        gap:16px !important;
    }

    .home .woocommerce ul.products li.product,
    .post-type-archive-product .woocommerce ul.products li.product,
    .tax-product_cat .woocommerce ul.products li.product{
        padding:14px 14px 16px !important;
        min-height:365px !important;
    }

    .home .woocommerce ul.products li.product a.woocommerce-LoopProduct-link,
    .post-type-archive-product .woocommerce ul.products li.product a.woocommerce-LoopProduct-link,
    .tax-product_cat .woocommerce ul.products li.product a.woocommerce-LoopProduct-link{
        grid-template-rows:155px 46px 21px 31px !important;
    }

    .home .woocommerce ul.products li.product img,
    .post-type-archive-product .woocommerce ul.products li.product img,
    .tax-product_cat .woocommerce ul.products li.product img{
        height:155px !important;
        max-height:155px !important;
    }

    .home .woocommerce ul.products li.product h2,
    .home .woocommerce ul.products li.product .woocommerce-loop-product__title,
    .post-type-archive-product .woocommerce ul.products li.product h2,
    .post-type-archive-product .woocommerce ul.products li.product .woocommerce-loop-product__title,
    .tax-product_cat .woocommerce ul.products li.product h2,
    .tax-product_cat .woocommerce ul.products li.product .woocommerce-loop-product__title{
        font-size:14px !important;
        line-height:17px !important;
        height:34px !important;
        min-height:34px !important;
        max-height:34px !important;
        margin-top:8px !important;
    }

    .home .woocommerce ul.products li.product .star-rating,
    .post-type-archive-product .woocommerce ul.products li.product .star-rating,
    .tax-product_cat .woocommerce ul.products li.product .star-rating{
        height:21px !important;
        font-size:14px !important;
        margin:-1px 0 0 !important;
    }

    .home .woocommerce ul.products li.product .price,
    .post-type-archive-product .woocommerce ul.products li.product .price,
    .tax-product_cat .woocommerce ul.products li.product .price{
        font-size:22px !important;
        min-height:31px !important;
        gap:7px !important;
    }

    .post-type-archive-product .woocommerce ul.products li.product .price,
    .tax-product_cat .woocommerce ul.products li.product .price{
        gap:5px !important;
        margin:6px 0 0 !important;
        flex-wrap:nowrap !important;
    }

    .home .woocommerce ul.products li.product .price del,
    .home .woocommerce ul.products li.product .price del .amount,
    .home .woocommerce ul.products li.product .price del bdi,
    .post-type-archive-product .woocommerce ul.products li.product .price del,
    .post-type-archive-product .woocommerce ul.products li.product .price del .amount,
    .post-type-archive-product .woocommerce ul.products li.product .price del bdi,
    .tax-product_cat .woocommerce ul.products li.product .price del,
    .tax-product_cat .woocommerce ul.products li.product .price del .amount,
    .tax-product_cat .woocommerce ul.products li.product .price del bdi{
        font-size:15px !important;
    }

    .home .woocommerce ul.products li.product .price ins,
    .home .woocommerce ul.products li.product .price ins .amount,
    .home .woocommerce ul.products li.product .price ins bdi,
    .home .woocommerce ul.products li.product .price > .amount,
    .home .woocommerce ul.products li.product .price > .amount bdi,
    .post-type-archive-product .woocommerce ul.products li.product .price ins,
    .post-type-archive-product .woocommerce ul.products li.product .price ins .amount,
    .post-type-archive-product .woocommerce ul.products li.product .price ins bdi,
    .post-type-archive-product .woocommerce ul.products li.product .price > .amount,
    .post-type-archive-product .woocommerce ul.products li.product .price > .amount bdi,
    .tax-product_cat .woocommerce ul.products li.product .price ins,
    .tax-product_cat .woocommerce ul.products li.product .price ins .amount,
    .tax-product_cat .woocommerce ul.products li.product .price ins bdi,
    .tax-product_cat .woocommerce ul.products li.product .price > .amount,
    .tax-product_cat .woocommerce ul.products li.product .price > .amount bdi{
        font-size:22px !important;
    }

    .home .woocommerce ul.products li.product .button,
    .home .woocommerce ul.products li.product .bg-icon-cart-button,
    .home .woocommerce ul.products li.product .button.added,
    .home .woocommerce ul.products li.product .bg-icon-cart-button.added,
    .post-type-archive-product .woocommerce ul.products li.product .button,
    .post-type-archive-product .woocommerce ul.products li.product .bg-icon-cart-button,
    .tax-product_cat .woocommerce ul.products li.product .button,
    .tax-product_cat .woocommerce ul.products li.product .bg-icon-cart-button{
        margin:10px 0 0 !important;
    }

    .home .woocommerce ul.products li.product .button{
        min-height:58px !important;
        font-size:12px !important;
        padding:10px 12px !important;
    }
}

/* ================================
   Mobiel
================================ */
@media (max-width:767px){

    .home .woocommerce{
        max-width:1600px !important;
        width:100% !important;
    }

    .home .woocommerce ul.products,
    .post-type-archive-product .woocommerce ul.products,
    .tax-product_cat .woocommerce ul.products{
        grid-template-columns:1fr 1fr !important;
        gap:14px !important;
    }

    .post-type-archive-product .woocommerce ul.products,
    .tax-product_cat .woocommerce ul.products{
        padding:0 12px !important;
    }

    .home .woocommerce ul.products li.product,
    .post-type-archive-product .woocommerce ul.products li.product,
    .tax-product_cat .woocommerce ul.products li.product{
        padding:12px 10px 14px !important;
        min-height:325px !important;
    }

    .home .woocommerce ul.products li.product a.woocommerce-LoopProduct-link,
    .post-type-archive-product .woocommerce ul.products li.product a.woocommerce-LoopProduct-link,
    .tax-product_cat .woocommerce ul.products li.product a.woocommerce-LoopProduct-link{
        grid-template-rows:140px 43px 20px 30px !important;
    }

    .home .woocommerce ul.products li.product img,
    .post-type-archive-product .woocommerce ul.products li.product img,
    .tax-product_cat .woocommerce ul.products li.product img{
        height:140px !important;
        max-height:140px !important;
    }

    .home .woocommerce ul.products li.product h2,
    .home .woocommerce ul.products li.product .woocommerce-loop-product__title,
    .post-type-archive-product .woocommerce ul.products li.product h2,
    .post-type-archive-product .woocommerce ul.products li.product .woocommerce-loop-product__title,
    .tax-product_cat .woocommerce ul.products li.product h2,
    .tax-product_cat .woocommerce ul.products li.product .woocommerce-loop-product__title{
        font-size:13px !important;
        line-height:15.5px !important;
        height:31px !important;
        min-height:31px !important;
        max-height:31px !important;
        margin-top:6px !important;
    }

    .home .woocommerce ul.products li.product .star-rating,
    .post-type-archive-product .woocommerce ul.products li.product .star-rating,
    .tax-product_cat .woocommerce ul.products li.product .star-rating{
        height:20px !important;
        font-size:13px !important;
        margin:-1px 0 0 !important;
    }

    .home .woocommerce ul.products li.product .price,
    .post-type-archive-product .woocommerce ul.products li.product .price,
    .tax-product_cat .woocommerce ul.products li.product .price{
        font-size:20px !important;
        gap:6px !important;
        min-height:30px !important;
        margin:6px 0 0 !important;
    }

    .home .woocommerce ul.products li.product .price del,
    .home .woocommerce ul.products li.product .price del .amount,
    .home .woocommerce ul.products li.product .price del bdi,
    .post-type-archive-product .woocommerce ul.products li.product .price del,
    .post-type-archive-product .woocommerce ul.products li.product .price del .amount,
    .post-type-archive-product .woocommerce ul.products li.product .price del bdi,
    .tax-product_cat .woocommerce ul.products li.product .price del,
    .tax-product_cat .woocommerce ul.products li.product .price del .amount,
    .tax-product_cat .woocommerce ul.products li.product .price del bdi{
        font-size:13px !important;
    }

    .home .woocommerce ul.products li.product .price ins,
    .home .woocommerce ul.products li.product .price ins .amount,
    .home .woocommerce ul.products li.product .price ins bdi,
    .home .woocommerce ul.products li.product .price > .amount,
    .home .woocommerce ul.products li.product .price > .amount bdi,
    .post-type-archive-product .woocommerce ul.products li.product .price ins,
    .post-type-archive-product .woocommerce ul.products li.product .price ins .amount,
    .post-type-archive-product .woocommerce ul.products li.product .price ins bdi,
    .post-type-archive-product .woocommerce ul.products li.product .price > .amount,
    .post-type-archive-product .woocommerce ul.products li.product .price > .amount bdi,
    .tax-product_cat .woocommerce ul.products li.product .price ins,
    .tax-product_cat .woocommerce ul.products li.product .price ins .amount,
    .tax-product_cat .woocommerce ul.products li.product .price ins bdi,
    .tax-product_cat .woocommerce ul.products li.product .price > .amount,
    .tax-product_cat .woocommerce ul.products li.product .price > .amount bdi{
        font-size:20px !important;
    }

    .post-type-archive-product .bg-review-count,
    .tax-product_cat .bg-review-count{
        font-size:11px !important;
        margin-left:4px !important;
        font-weight:600 !important;
        top:-1px !important;
    }

    .home .woocommerce ul.products li.product .button,
    .home .woocommerce ul.products li.product .bg-icon-cart-button,
    .home .woocommerce ul.products li.product .button.added,
    .home .woocommerce ul.products li.product .bg-icon-cart-button.added,
    .post-type-archive-product .woocommerce ul.products li.product .button,
    .post-type-archive-product .woocommerce ul.products li.product .bg-icon-cart-button,
    .tax-product_cat .woocommerce ul.products li.product .button,
    .tax-product_cat .woocommerce ul.products li.product .bg-icon-cart-button{
        margin:10px 0 0 !important;
    }

    .home .woocommerce ul.products li.product .button{
        min-height:56px !important;
        font-size:12px !important;
        padding:10px 8px !important;
    }
}

/* ==========================================
   Over ons pagina - premium compact
========================================== */

body.page-id-739 .elementor-739{
    max-width:1250px !important;
    width:100% !important;
    margin:24px auto 60px !important;
    padding:42px 56px 52px !important;
    background:#fff !important;
    border-radius:18px !important;
    box-shadow:0 6px 22px rgba(0,0,0,.04) !important;
    box-sizing:border-box !important;
}

body.page-id-739 .elementor-739 .elementor-widget{
    margin-bottom:0 !important;
}

/* H1 */
body.page-id-739 .elementor-739 h1{
    color:#e8471e !important;
    font-size:38px !important;
    font-weight:900 !important;
    line-height:1.08 !important;
    letter-spacing:-.6px !important;
    margin:0 0 22px !important;
}

/* Paragrafen */
body.page-id-739 .elementor-739 p{
    color:#4d4d4d !important;
    font-size:17px !important;
    font-weight:400 !important;
    line-height:1.72 !important;
    margin:0 0 16px !important;
}

/* USP trustbar */
body.page-id-739 .elementor-739 .elementor-widget-icon-list{
    margin:10px 0 14px !important;
    padding:8px 0 !important;
    border-top:1px solid rgba(0,0,0,.055) !important;
    border-bottom:1px solid rgba(0,0,0,.055) !important;
}

body.page-id-739 .elementor-739 .elementor-widget-icon-list .elementor-icon-list-items{
    display:grid !important;
    grid-template-columns:repeat(4,auto) !important;
    justify-content:start !important;
    gap:28px !important;
    margin:0 !important;
    padding:0 !important;
}

body.page-id-739 .elementor-739 .elementor-widget-icon-list .elementor-icon-list-item{
    display:flex !important;
    align-items:center !important;
    gap:7px !important;
    padding:0 !important;
    margin:0 !important;
    background:none !important;
    border:none !important;
    box-shadow:none !important;
}

body.page-id-739 .elementor-739 .elementor-widget-icon-list .elementor-icon-list-text{
    color:#2f2f2f !important;
    font-size:15.5px !important;
    font-weight:700 !important;
    line-height:1.3 !important;
}

body.page-id-739 .elementor-739 .elementor-widget-icon-list .elementor-icon-list-icon{
    color:#e8471e !important;
}

/* H2/H3 */
body.page-id-739 .elementor-739 h2,
body.page-id-739 .elementor-739 h3{
    color:#e8471e !important;
    font-size:24px !important;
    font-weight:900 !important;
    line-height:1.18 !important;
    letter-spacing:-.25px !important;
    margin:34px 0 12px !important;
    padding-top:22px !important;
    border-top:1px solid rgba(0,0,0,.055) !important;
}

/* Lijsten */
body.page-id-739 .elementor-739 .elementor-widget-text-editor ul{
    list-style:none !important;
    padding:0 !important;
    margin:14px 0 22px !important;
}

body.page-id-739 .elementor-739 .elementor-widget-text-editor ul li{
    position:relative !important;
    padding-left:28px !important;
    margin:0 0 8px !important;
    color:#444 !important;
    font-size:16.5px !important;
    line-height:1.55 !important;
}

body.page-id-739 .elementor-739 .elementor-widget-text-editor ul li::before{
    content:"✓" !important;
    position:absolute !important;
    left:0 !important;
    top:0 !important;
    color:#4b7f16 !important;
    font-weight:900 !important;
}

/* Tablet */
@media (min-width:768px) and (max-width:1024px){

    body.page-id-739 .elementor-739{
        max-width:1600px !important;
        width:calc(100% - 24px) !important;
        margin:18px auto 46px !important;
        padding:30px 24px 40px !important;
    }

    body.page-id-739 .elementor-739 .elementor-widget-icon-list .elementor-icon-list-items{
        grid-template-columns:repeat(2,auto) !important;
        gap:12px 28px !important;
    }
}

/* Mobiel */
@media (max-width:767px){

    body.page-id-739 .elementor-739{
        max-width:1600px !important;
        width:calc(100% - 8px) !important;
        margin:8px auto 34px !important;
        padding:20px 10px 26px !important;
        border-radius:14px !important;
    }

    body.page-id-739 .elementor-739 h1{
        font-size:30px !important;
        margin-bottom:18px !important;
    }

    body.page-id-739 .elementor-739 p{
        font-size:15.5px !important;
        line-height:1.68 !important;
    }

    body.page-id-739 .elementor-739 .elementor-widget-icon-list{
        margin:8px 0 12px !important;
        padding:8px 0 !important;
    }

    body.page-id-739 .elementor-739 .elementor-widget-icon-list .elementor-icon-list-items{
        grid-template-columns:1fr !important;
        gap:8px !important;
    }

    body.page-id-739 .elementor-739 .elementor-widget-icon-list .elementor-icon-list-text{
        font-size:15.5px !important;
    }

    body.page-id-739 .elementor-739 h2,
    body.page-id-739 .elementor-739 h3{
        font-size:21px !important;
        margin:28px 0 11px !important;
        padding-top:18px !important;
    }
}

/* ==========================================
   FAQ pagina - Premium
========================================== */

body.page-id-1036 .elementor-1036{
    max-width:1250px !important;
    width:100% !important;
    margin:24px auto 60px !important;
    padding:42px 56px 52px !important;
    background:#fff !important;
    border-radius:18px !important;
    box-shadow:0 6px 22px rgba(0,0,0,.04) !important;
    box-sizing:border-box !important;
}

/* Widgets */

body.page-id-1036 .elementor-1036 .elementor-widget{
    margin-bottom:0 !important;
}

/* Content volledige breedte */

body.page-id-1036 .elementor-1036 .elementor-column,
body.page-id-1036 .elementor-1036 .elementor-widget-container,
body.page-id-1036 .elementor-1036 .elementor-text-editor{
    width:100% !important;
    max-width:none !important;
}

/* H1 */

body.page-id-1036 .elementor-1036 h1{
    color:#e8471e !important;
    font-size:38px !important;
    font-weight:900 !important;
    line-height:1.08 !important;
    letter-spacing:-.6px !important;
    margin:0 0 18px !important;
}

/* H2 */

body.page-id-1036 .elementor-1036 h2{
    color:#e8471e !important;
    font-size:25px !important;
    font-weight:900 !important;
    margin:36px 0 14px !important;
    padding-top:24px !important;
    border-top:1px solid rgba(0,0,0,.06) !important;
}

/* Tekst */

body.page-id-1036 .elementor-1036 p{
    color:#4d4d4d !important;
    font-size:17px !important;
    font-weight:400 !important;
    line-height:1.72 !important;
}

/* Accordion */

body.page-id-1036 .elementor-1036 .elementor-accordion{
    margin-top:6px !important;
}

body.page-id-1036 .elementor-1036 .elementor-accordion-item{
    border:1px solid #ececec !important;
    border-radius:14px !important;
    overflow:hidden !important;
    margin-bottom:14px !important;
    background:#fff !important;
    box-shadow:0 3px 10px rgba(0,0,0,.035) !important;
    transition:all .2s ease !important;
}

body.page-id-1036 .elementor-1036 .elementor-accordion-item:hover{
    box-shadow:0 8px 22px rgba(0,0,0,.06) !important;
}

/* Vraag */

body.page-id-1036 .elementor-1036 .elementor-tab-title{
    background:#fff !important;
    border:none !important;
    padding:20px 22px !important;
}

/* H3 vragen */

body.page-id-1036 .elementor-1036 .elementor-tab-title h3{
    color:#222 !important;
    font-size:17px !important;
    font-weight:800 !important;
    line-height:1.35 !important;
    margin:0 !important;
}

body.page-id-1036 .elementor-1036 .elementor-tab-title.elementor-active h3{
    color:#222 !important;
}

/* Antwoord */

body.page-id-1036 .elementor-1036 .elementor-tab-content{
    border:none !important;
    padding:0 22px 22px !important;
    color:#555 !important;
    font-size:16px !important;
    line-height:1.7 !important;
}

body.page-id-1036 .elementor-1036 .elementor-tab-content p:last-child{
    margin-bottom:0 !important;
}

/* Plus / min icoon */

body.page-id-1036 .elementor-1036 .elementor-accordion-icon{
    color:#e8471e !important;
    font-size:17px !important;
}

/* FAQ vragen: zelfde rustige stijl als Over ons */

body.page-id-1036 .elementor-1036 .elementor-tab-title h3,
body.page-id-1036 .elementor-1036 .elementor-tab-title a{
    text-transform:none !important;
    color:#222 !important;
    font-size:17px !important;
    font-weight:800 !important;
    line-height:1.35 !important;
    letter-spacing:0 !important;
    margin:0 !important;
}

/* Tablet */

@media (min-width:768px) and (max-width:1024px){

    body.page-id-1036 .elementor-1036{
        max-width:1600px !important;
        width:calc(100% - 24px) !important;
        padding:34px !important;
    }

    body.page-id-1036 .elementor-1036 h1{
        font-size:34px !important;
        margin-bottom:18px !important;
    }

}

/* Mobiel */

@media (max-width:767px){

    body.page-id-1036 .elementor-1036{
        max-width:1600px !important;
        width:calc(100% - 12px) !important;
        padding:22px 16px 30px !important;
        border-radius:16px !important;
    }

    body.page-id-1036 .elementor-1036 h1{
        font-size:30px !important;
        margin-bottom:16px !important;
    }

    body.page-id-1036 .elementor-1036 h2{
        font-size:22px !important;
    }

    body.page-id-1036 .elementor-1036 p{
        font-size:15.5px !important;
    }

    body.page-id-1036 .elementor-1036 .elementor-accordion{
        margin-top:4px !important;
    }

    body.page-id-1036 .elementor-1036 .elementor-tab-title{
        padding:16px !important;
    }

    body.page-id-1036 .elementor-1036 .elementor-tab-title h3,
    body.page-id-1036 .elementor-1036 .elementor-tab-title a{
        font-size:15.5px !important;
    }

    body.page-id-1036 .elementor-1036 .elementor-tab-content{
        padding:0 16px 16px !important;
        font-size:15px !important;
    }

}

/* ==========================================
   Contact pagina - Premium
========================================== */

body.page-id-1095 .elementor-1095{
    max-width:1250px !important;
    width:100% !important;
    margin:24px auto 60px !important;
    padding:42px 56px 52px !important;
    background:#fff !important;
    border-radius:18px !important;
    box-shadow:0 6px 22px rgba(0,0,0,.04) !important;
    box-sizing:border-box !important;
}

/* Widgets */
body.page-id-1095 .elementor-1095 .elementor-widget{
    margin-bottom:0 !important;
}

/* Content breedte */
body.page-id-1095 .elementor-1095 .elementor-column,
body.page-id-1095 .elementor-1095 .elementor-widget-container,
body.page-id-1095 .elementor-1095 .elementor-text-editor{
    width:100% !important;
    max-width:none !important;
}

/* H1 */
body.page-id-1095 .elementor-1095 h1{
    color:#e8471e !important;
    font-size:38px !important;
    font-weight:900 !important;
    line-height:1.08 !important;
    letter-spacing:-.6px !important;
    margin:0 0 22px !important;
}

/* H2/H3 */
body.page-id-1095 .elementor-1095 h2,
body.page-id-1095 .elementor-1095 h3{
    color:#e8471e !important;
    font-size:21px !important;
    font-weight:900 !important;
    line-height:1.25 !important;
    margin:20px 0 8px !important;
}

/* Tekst */
body.page-id-1095 .elementor-1095 p,
body.page-id-1095 .elementor-1095 li{
    color:#4d4d4d !important;
    font-size:17px !important;
    font-weight:400 !important;
    line-height:1.65 !important;
}

/* Links */
body.page-id-1095 .elementor-1095 a{
    color:#e8471e !important;
    font-weight:600 !important;
}

/* Lijsten */
body.page-id-1095 .elementor-1095 ul{
    margin:10px 0 22px !important;
    padding-left:22px !important;
}

/* Contactinformatie blokken */
body.page-id-1095 .elementor-1095 .elementor-icon-box-wrapper,
body.page-id-1095 .elementor-1095 .elementor-image-box-wrapper{
    display:flex !important;
    align-items:center !important;
    gap:18px !important;
    margin:18px 0 !important;
}

body.page-id-1095 .elementor-1095 .elementor-icon,
body.page-id-1095 .elementor-1095 .elementor-icon-box-icon{
    width:58px !important;
    height:58px !important;
    min-width:58px !important;
    border-radius:50% !important;
    background:#222 !important;
    color:#fff !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
}

/* Formulier - premium verbeterd */
body.page-id-1095 .elementor-1095 form{
    background:#333333 !important;
    border-radius:22px !important;
    padding:38px 44px 28px !important;
    margin-top:34px !important;
    box-shadow:inset 0 0 0 999px rgba(0,0,0,.02) !important;
}

/* Binnenste formulierlaag / spacing */
body.page-id-1095 .elementor-1095 form .elementor-field-group,
body.page-id-1095 .elementor-1095 form .form-row,
body.page-id-1095 .elementor-1095 form .wpforms-field,
body.page-id-1095 .elementor-1095 form .wpcf7-form-control-wrap{
    margin-bottom:14px !important;
}

/* Velden */
body.page-id-1095 .elementor-1095 input,
body.page-id-1095 .elementor-1095 textarea,
body.page-id-1095 .elementor-1095 select{
    background:#3b3b3b !important;
    border:2px solid rgba(255,255,255,.88) !important;
    border-radius:999px !important;
    color:#fff !important;
    font-size:15px !important;
    padding:13px 20px !important;
    box-shadow:none !important;
    transition:all .2s ease !important;
}

body.page-id-1095 .elementor-1095 textarea{
    border-radius:18px !important;
    min-height:130px !important;
    resize:vertical !important;
}

body.page-id-1095 .elementor-1095 input::placeholder,
body.page-id-1095 .elementor-1095 textarea::placeholder{
    color:rgba(255,255,255,.72) !important;
}

body.page-id-1095 .elementor-1095 input:focus,
body.page-id-1095 .elementor-1095 textarea:focus,
body.page-id-1095 .elementor-1095 select:focus{
    border-color:#e8471e !important;
    background:#3f3f3f !important;
    outline:none !important;
}

/* Verzendknop */
body.page-id-1095 .elementor-1095 button,
body.page-id-1095 .elementor-1095 input[type="submit"]{
    min-width:178px !important;
    background:#e8471e !important;
    color:#fff !important;
    border:none !important;
    border-radius:999px !important;
    font-size:14px !important;
    font-weight:900 !important;
    text-transform:uppercase !important;
    padding:14px 36px !important;
    margin-top:12px !important;
    margin-bottom:8px !important;
    transition:all .2s ease !important;
}

body.page-id-1095 .elementor-1095 button:hover,
body.page-id-1095 .elementor-1095 input[type="submit"]:hover{
    background:#d83f18 !important;
    transform:translateY(-1px) !important;
}

/* Verplicht-tekst dichter onder knop */
body.page-id-1095 .elementor-1095 form p,
body.page-id-1095 .elementor-1095 form .form-required,
body.page-id-1095 .elementor-1095 form .required-note,
body.page-id-1095 .elementor-1095 form .wpforms-required-label,
body.page-id-1095 .elementor-1095 form .wpcf7-not-valid-tip{
    margin-top:8px !important;
    margin-bottom:0 !important;
    color:rgba(255,255,255,.55) !important;
    font-size:14px !important;
}

/* Tablet */
@media (min-width:768px) and (max-width:1024px){

    body.page-id-1095 .elementor-1095{
        max-width:1600px !important;
        width:calc(100% - 24px) !important;
        padding:34px !important;
    }

    body.page-id-1095 .elementor-1095 h1{
        font-size:34px !important;
    }

    body.page-id-1095 .elementor-1095 form{
        padding:34px 32px 26px !important;
    }
}

/* Mobiel */
@media (max-width:767px){

    body.page-id-1095 .elementor-1095{
        max-width:1600px !important;
        width:calc(100% - 12px) !important;
        margin:18px auto 40px !important;
        padding:22px 16px 30px !important;
        border-radius:16px !important;
    }

    body.page-id-1095 .elementor-1095 h1{
        font-size:30px !important;
        margin-bottom:18px !important;
    }

    body.page-id-1095 .elementor-1095 h2,
    body.page-id-1095 .elementor-1095 h3{
        font-size:19px !important;
    }

    body.page-id-1095 .elementor-1095 p,
    body.page-id-1095 .elementor-1095 li{
        font-size:15.5px !important;
    }

    /* Contactblokken mobiel: icoon links, tekst rechts */
    body.page-id-1095 .elementor-1095 .elementor-icon-box-wrapper,
    body.page-id-1095 .elementor-1095 .elementor-image-box-wrapper{
        display:flex !important;
        flex-direction:row !important;
        align-items:flex-start !important;
        justify-content:flex-start !important;
        gap:16px !important;
        margin:18px 0 22px !important;
        text-align:left !important;
    }

    body.page-id-1095 .elementor-1095 .elementor-icon-box-icon,
    body.page-id-1095 .elementor-1095 .elementor-icon{
        width:46px !important;
        height:46px !important;
        min-width:46px !important;
        flex:0 0 46px !important;
        margin:0 !important;
        border-radius:50% !important;
    }

    body.page-id-1095 .elementor-1095 .elementor-icon i,
    body.page-id-1095 .elementor-1095 .elementor-icon svg{
        font-size:22px !important;
        width:22px !important;
        height:22px !important;
    }

    body.page-id-1095 .elementor-1095 .elementor-icon-box-content{
        flex:1 !important;
        min-width:0 !important;
        text-align:left !important;
    }

    body.page-id-1095 .elementor-1095 .elementor-icon-box-title{
        margin:0 0 4px !important;
        text-align:left !important;
    }

    body.page-id-1095 .elementor-1095 .elementor-icon-box-description{
        margin:0 !important;
        text-align:left !important;
    }

    body.page-id-1095 .elementor-1095 form{
        padding:24px 18px 22px !important;
        border-radius:18px !important;
    }

    body.page-id-1095 .elementor-1095 input,
    body.page-id-1095 .elementor-1095 textarea{
        width:100% !important;
    }

    body.page-id-1095 .elementor-1095 button,
    body.page-id-1095 .elementor-1095 input[type="submit"]{
        width:auto !important;
        min-width:160px !important;
    }
}

/* ==========================================
   Zakelijk bestellen pagina - Premium
========================================== */

body.page-id-1008 .elementor-1008{
    max-width:1250px !important;
    width:100% !important;
    margin:24px auto 60px !important;
    padding:42px 56px 52px !important;
    background:#fff !important;
    border-radius:18px !important;
    box-shadow:0 6px 22px rgba(0,0,0,.04) !important;
    box-sizing:border-box !important;
}

/* Widgets */
body.page-id-1008 .elementor-1008 .elementor-widget{
    margin-bottom:0 !important;
}

/* Content breedte */
body.page-id-1008 .elementor-1008 .elementor-column,
body.page-id-1008 .elementor-1008 .elementor-widget-container,
body.page-id-1008 .elementor-1008 .elementor-text-editor{
    width:100% !important;
    max-width:none !important;
}

/* H1 */
body.page-id-1008 .elementor-1008 h1{
    color:#e8471e !important;
    font-size:38px !important;
    font-weight:900 !important;
    line-height:1.08 !important;
    letter-spacing:-.6px !important;
    margin:0 0 22px !important;
}

/* H2/H3 */
body.page-id-1008 .elementor-1008 h2,
body.page-id-1008 .elementor-1008 h3{
    color:#e8471e !important;
    font-size:24px !important;
    font-weight:900 !important;
    line-height:1.18 !important;
    letter-spacing:-.25px !important;
    margin:34px 0 12px !important;
    padding-top:22px !important;
    border-top:1px solid rgba(0,0,0,.055) !important;
}

/* Tekst */
body.page-id-1008 .elementor-1008 p,
body.page-id-1008 .elementor-1008 li{
    color:#4d4d4d !important;
    font-size:17px !important;
    font-weight:400 !important;
    line-height:1.72 !important;
}

/* Links */
body.page-id-1008 .elementor-1008 a{
    color:#e8471e !important;
    font-weight:600 !important;
}

/* Lijsten */
body.page-id-1008 .elementor-1008 ul{
    list-style:none !important;
    padding:0 !important;
    margin:14px 0 22px !important;
}

body.page-id-1008 .elementor-1008 ul li{
    position:relative !important;
    padding-left:28px !important;
    margin:0 0 8px !important;
}

body.page-id-1008 .elementor-1008 ul li::before{
    content:"✓" !important;
    position:absolute !important;
    left:0 !important;
    top:0 !important;
    color:#4b7f16 !important;
    font-weight:900 !important;
}

/* Formulier */
body.page-id-1008 .elementor-1008 form{
    background:#333333 !important;
    border-radius:22px !important;
    padding:38px 44px 28px !important;
    margin-top:34px !important;
}

body.page-id-1008 .elementor-1008 input,
body.page-id-1008 .elementor-1008 textarea,
body.page-id-1008 .elementor-1008 select{
    background:#3b3b3b !important;
    border:2px solid rgba(255,255,255,.88) !important;
    border-radius:999px !important;
    color:#fff !important;
    font-size:15px !important;
    padding:13px 20px !important;
    box-shadow:none !important;
    transition:all .2s ease !important;
}

body.page-id-1008 .elementor-1008 textarea{
    border-radius:18px !important;
    min-height:130px !important;
}

body.page-id-1008 .elementor-1008 input::placeholder,
body.page-id-1008 .elementor-1008 textarea::placeholder{
    color:rgba(255,255,255,.72) !important;
}

body.page-id-1008 .elementor-1008 input:focus,
body.page-id-1008 .elementor-1008 textarea:focus,
body.page-id-1008 .elementor-1008 select:focus{
    border-color:#e8471e !important;
    background:#3f3f3f !important;
    outline:none !important;
}

/* Button */
body.page-id-1008 .elementor-1008 button,
body.page-id-1008 .elementor-1008 input[type="submit"]{
    min-width:178px !important;
    background:#e8471e !important;
    color:#fff !important;
    border:none !important;
    border-radius:999px !important;
    font-size:14px !important;
    font-weight:900 !important;
    text-transform:uppercase !important;
    padding:14px 36px !important;
    margin-top:12px !important;
    transition:all .2s ease !important;
}

body.page-id-1008 .elementor-1008 button:hover,
body.page-id-1008 .elementor-1008 input[type="submit"]:hover{
    background:#d83f18 !important;
    transform:translateY(-1px) !important;
}

/* Tablet */
@media (min-width:768px) and (max-width:1024px){

    body.page-id-1008 .elementor-1008{
        max-width:1600px !important;
        width:calc(100% - 24px) !important;
        padding:34px !important;
    }

    body.page-id-1008 .elementor-1008 h1{
        font-size:34px !important;
    }

    body.page-id-1008 .elementor-1008 form{
        padding:34px 32px 26px !important;
    }
}

/* Mobiel */
@media (max-width:767px){

    body.page-id-1008 .elementor-1008{
        max-width:1600px !important;
        width:calc(100% - 12px) !important;
        margin:18px auto 40px !important;
        padding:22px 16px 30px !important;
        border-radius:16px !important;
    }

    body.page-id-1008 .elementor-1008 h1{
        font-size:30px !important;
        margin-bottom:18px !important;
    }

    body.page-id-1008 .elementor-1008 h2,
    body.page-id-1008 .elementor-1008 h3{
        font-size:21px !important;
        margin:28px 0 11px !important;
        padding-top:20px !important;
    }

    body.page-id-1008 .elementor-1008 p,
    body.page-id-1008 .elementor-1008 li{
        font-size:15.5px !important;
    }

    body.page-id-1008 .elementor-1008 form{
        padding:24px 18px 22px !important;
        border-radius:18px !important;
    }

    body.page-id-1008 .elementor-1008 input,
    body.page-id-1008 .elementor-1008 textarea{
        width:100% !important;
    }

    body.page-id-1008 .elementor-1008 button,
    body.page-id-1008 .elementor-1008 input[type="submit"]{
        min-width:160px !important;
    }
}

body.woocommerce-checkout {
  background: #fafafa;
  overflow-x: hidden;
}

body.woocommerce-checkout .elementor-widget-woocommerce-checkout-page {
  max-width: 1500px !important;
  margin: 0 auto !important;
}

/* Premium kaarten */
body.woocommerce-checkout .bg-bol-box,
body.woocommerce-checkout .bg-coupon-box,
body.woocommerce-checkout #order_review,
body.woocommerce-checkout #payment {
  background: #fff;
  border-radius: 20px;
  padding: 26px;
  box-shadow: 0 8px 30px rgba(0,0,0,0.04);
  box-sizing: border-box;
}

body.woocommerce-checkout #order_review,
body.woocommerce-checkout .bg-coupon-box {
  margin-bottom: 28px;
}

body.woocommerce-checkout .bg-bol-box {
  text-align: left;
  margin-bottom: 32px;
}

/* Typografie algemeen */
body.woocommerce-checkout,
body.woocommerce-checkout p,
body.woocommerce-checkout td,
body.woocommerce-checkout th,
body.woocommerce-checkout label {
  color: #444;
  font-weight: 400;
  line-height: 1.6;
}

/* Titels */
body.woocommerce-checkout .bg-bol-box h3,
body.woocommerce-checkout .bg-coupon-box h3,
body.woocommerce-checkout #order_review_heading,
body.woocommerce-checkout .woocommerce-billing-fields h3,
body.woocommerce-checkout .woocommerce-shipping-fields h3,
body.woocommerce-checkout .woocommerce-additional-fields h3 {
  color: #2f2f2f !important;
  font-size: 24px !important;
  font-weight: 900 !important;
  line-height: 1.18 !important;
  letter-spacing: -.25px !important;
  margin: 0 0 18px !important;
  text-transform: none !important;
  position: relative;
}

body.woocommerce-checkout .bg-bol-box h3::after,
body.woocommerce-checkout .bg-coupon-box h3::after,
body.woocommerce-checkout #order_review_heading::after,
body.woocommerce-checkout .woocommerce-billing-fields h3::after {
  content: "";
  display: block;
  width: 44px;
  height: 3px;
  background: #e8471e;
  border-radius: 99px;
  margin-top: 10px;
}

/* Geen streep onder verzendadres/notities/handmatig */
body.woocommerce-checkout .woocommerce-shipping-fields h3::after,
body.woocommerce-checkout .woocommerce-additional-fields h3::after,
body.woocommerce-checkout .bg-manual-intro h3::after {
  display: none !important;
  content: none !important;
}

/* Handmatig invullen subtieler */
body.woocommerce-checkout .bg-manual-intro h3 {
  color: #2f2f2f !important;
  font-size: 20px !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
  margin: 0 0 18px !important;
  text-transform: none !important;
}

/* Paragrafen */
body.woocommerce-checkout .bg-bol-box p,
body.woocommerce-checkout .bg-coupon-box p {
  margin: 0 0 18px;
  color: #4d4d4d;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.65;
}

/* Labels */
body.woocommerce-checkout label {
  color: #2f2f2f !important;
  font-size: 15px !important;
  font-weight: 700 !important;
}

/* Inputs */
body.woocommerce-checkout input,
body.woocommerce-checkout select,
body.woocommerce-checkout textarea {
  color: #444 !important;
  font-size: 16px !important;
  font-weight: 500 !important;
}

body.woocommerce-checkout input::placeholder,
body.woocommerce-checkout textarea::placeholder {
  color: #8a8a8a !important;
  font-weight: 400 !important;
}

/* bol.checkout */
body.woocommerce-checkout cvb-button {
  display: block;
  max-width: 420px;
  margin: 0;
}

/* Coupon */
body.woocommerce-checkout .bg-coupon-box .coupon-container-grid {
  margin: 0 !important;
}

body.woocommerce-checkout .bg-coupon-box input {
  width: 100% !important;
  border-radius: 999px !important;
  min-height: 52px !important;
  padding-left: 20px !important;
}

body.woocommerce-checkout .bg-coupon-box button {
  width: 100% !important;
  margin-top: 12px !important;
  border-radius: 999px !important;
  min-height: 52px !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  letter-spacing: .3px !important;
}

/* OF divider */
body.woocommerce-checkout .bg-manual-intro {
  margin: 34px 0 26px;
}

body.woocommerce-checkout .bg-divider {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 20px;
  text-transform: uppercase;
  color: #999;
  font-size: 14px;
}

body.woocommerce-checkout .bg-divider:before,
body.woocommerce-checkout .bg-divider:after {
  content: "";
  height: 1px;
  background: #e5e5e5;
  flex: 1;
}

/* Productregel */
body.woocommerce-checkout .bg-product-card {
  display: flex;
  gap: 14px;
  align-items: flex-start;
}

body.woocommerce-checkout .bg-product-img,
body.woocommerce-checkout .bg-product-img img {
  width: 70px;
  height: 70px;
  min-width: 70px;
}

body.woocommerce-checkout .bg-product-img img {
  object-fit: contain;
  border-radius: 12px;
  background: #fff;
  padding: 6px;
}

body.woocommerce-checkout .bg-product-title {
  color: #2f2f2f;
  font-size: 16px;
  line-height: 1.35;
  font-weight: 800;
}

body.woocommerce-checkout .bg-product-qty {
  margin-top: 5px;
  font-size: 14px;
  line-height: 1.6;
  color: #666;
}

body.woocommerce-checkout .product-quantity {
  display: none !important;
}

/* Totaalbedrag subtieler */
body.woocommerce-checkout .order-total .amount {
  color: #2f2f2f !important;
  font-size: 22px !important;
  font-weight: 900 !important;
}

/* BTW-tekst normaal houden */
body.woocommerce-checkout .order-total small,
body.woocommerce-checkout .order-total .includes_tax,
body.woocommerce-checkout .order-total .tax_label,
body.woocommerce-checkout .order-total small .amount,
body.woocommerce-checkout .order-total .includes_tax .amount {
  color: #666 !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
}

/* Betaalmethodes */
body.woocommerce-checkout #payment {
  margin-top: 0 !important;
}

body.woocommerce-checkout .e-checkout__order_review-2 {
  display: block !important;
}

body.woocommerce-checkout #payment ul.payment_methods {
  padding: 0 !important;
  margin: 0 0 22px !important;
  border: 0 !important;
}

body.woocommerce-checkout #payment ul.payment_methods li {
  padding: 8px 0 !important;
}

body.woocommerce-checkout #payment ul.payment_methods label {
  font-size: 17px !important;
  font-weight: 600 !important;
  color: #444 !important;
}

body.woocommerce-checkout #payment .place-order {
  padding: 0 !important;
  margin-top: 20px !important;
}

body.woocommerce-checkout #place_order {
  width: 100% !important;
  min-height: 58px !important;
  border-radius: 999px !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  letter-spacing: .3px !important;
}

/* Bol betaalmethode verbergen */
body.woocommerce-checkout #payment ul.payment_methods li.payment_method_cvb {
  display: none !important;
}

/* Lege ruimte beperken */
body.woocommerce-checkout .woocommerce-additional-fields,
body.woocommerce-checkout .woocommerce-additional-fields__field-wrapper,
body.woocommerce-checkout .woocommerce-additional-fields .form-row {
  margin-bottom: 0 !important;
}

/* Desktop sticky rechterkolom */
@media (min-width: 1025px) {
  body.woocommerce-checkout .e-checkout__column-end {
    position: sticky;
    top: 120px;
    align-self: flex-start;
  }
}

/* Tablet */
@media (max-width: 1024px) {
  body.woocommerce-checkout .bg-bol-box,
  body.woocommerce-checkout .bg-coupon-box,
  body.woocommerce-checkout #order_review,
  body.woocommerce-checkout #payment {
    margin-bottom: 24px;
    padding: 24px;
  }

  body.woocommerce-checkout cvb-button {
    max-width: 100%;
  }
}

/* Mobiel */
@media (max-width: 767px) {
  html,
  body,
  body.woocommerce-checkout,
  body.woocommerce-checkout #page,
  body.woocommerce-checkout .site {
    max-width: 100% !important;
    overflow-x: hidden !important;
    box-sizing: border-box !important;
  }

  body.woocommerce-checkout .elementor-widget-woocommerce-checkout-page {
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
    margin-left: calc(50% - 50vw + 12px) !important;
    margin-right: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }

  body.woocommerce-checkout .elementor-widget-woocommerce-checkout-page > .elementor-widget-container,
  body.woocommerce-checkout .e-checkout,
  body.woocommerce-checkout .e-checkout__container,
  body.woocommerce-checkout .e-checkout__column,
  body.woocommerce-checkout .e-checkout__column-start,
  body.woocommerce-checkout .e-checkout__column-end,
  body.woocommerce-checkout .woocommerce-checkout-review-order,
  body.woocommerce-checkout .woocommerce-billing-fields,
  body.woocommerce-checkout .woocommerce-additional-fields,
  body.woocommerce-checkout .woocommerce-checkout-payment {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
    transform: none !important;
  }

  body.woocommerce-checkout .bg-order-box,
  body.woocommerce-checkout .bg-coupon-box,
  body.woocommerce-checkout .bg-bol-box,
  body.woocommerce-checkout #payment {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 20px !important;
    border-radius: 18px !important;
    box-sizing: border-box !important;
  }

  body.woocommerce-checkout .bg-order-box {
    background: #fff !important;
    box-shadow: 0 8px 30px rgba(0,0,0,0.04) !important;
  }

  body.woocommerce-checkout .bg-order-box #order_review {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    border-radius: 0 !important;
  }

  body.woocommerce-checkout table,
  body.woocommerce-checkout .bg-order-box table.shop_table {
    width: 100% !important;
    max-width: 100% !important;
  }

  body.woocommerce-checkout #order_review_heading {
    margin-bottom: 22px !important;
  }

  body.woocommerce-checkout .bg-bol-box h3,
  body.woocommerce-checkout .bg-coupon-box h3,
  body.woocommerce-checkout #order_review_heading,
  body.woocommerce-checkout .woocommerce-billing-fields h3 {
    font-size: 21px !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
  }

  body.woocommerce-checkout .bg-manual-intro h3 {
    font-size: 18px !important;
    font-weight: 500 !important;
  }

  body.woocommerce-checkout .bg-bol-box p,
  body.woocommerce-checkout .bg-coupon-box p {
    font-size: 15.5px !important;
    line-height: 1.68 !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
  }

  body.woocommerce-checkout cvb-button {
    max-width: 100% !important;
  }

  body.woocommerce-checkout .bg-product-img,
  body.woocommerce-checkout .bg-product-img img {
    width: 60px;
    height: 60px;
    min-width: 60px;
  }

  body.woocommerce-checkout .bg-product-title {
    font-size: 15.5px !important;
  }

  body.woocommerce-checkout .product-name {
    width: auto !important;
  }

  body.woocommerce-checkout .woocommerce-additional-fields,
  body.woocommerce-checkout .woocommerce-additional-fields__field-wrapper,
  body.woocommerce-checkout .woocommerce-additional-fields .form-row {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }
}
body.woocommerce-checkout .elementor-element-8f9f65c {
  display: none !important;
}

/* ==========================================
   Verzenden & retourneren pagina - Premium
========================================== */

body.page-id-3019 .elementor-3019{
    max-width:1250px !important;
    width:100% !important;
    margin:24px auto 60px !important;
    padding:42px 56px 52px !important;
    background:#fff !important;
    border-radius:18px !important;
    box-shadow:0 6px 22px rgba(0,0,0,.04) !important;
    box-sizing:border-box !important;
}

body.page-id-3019 .elementor-3019 .elementor-widget{
    margin-bottom:0 !important;
}

body.page-id-3019 .elementor-3019 .elementor-column,
body.page-id-3019 .elementor-3019 .elementor-widget-container,
body.page-id-3019 .elementor-3019 .elementor-text-editor{
    width:100% !important;
    max-width:none !important;
}

body.page-id-3019 .elementor-3019 h1{
    color:#e8471e !important;
    font-size:38px !important;
    font-weight:900 !important;
    line-height:1.08 !important;
    letter-spacing:-.6px !important;
    margin:0 0 22px !important;
}

body.page-id-3019 .elementor-3019 h2,
body.page-id-3019 .elementor-3019 h3{
    color:#e8471e !important;
    font-size:24px !important;
    font-weight:900 !important;
    line-height:1.18 !important;
    letter-spacing:-.25px !important;
    margin:34px 0 12px !important;
    padding-top:22px !important;
    border-top:1px solid rgba(0,0,0,.055) !important;
}

body.page-id-3019 .elementor-3019 p,
body.page-id-3019 .elementor-3019 li{
    color:#4d4d4d !important;
    font-size:17px !important;
    font-weight:400 !important;
    line-height:1.72 !important;
}

body.page-id-3019 .elementor-3019 a{
    color:#e8471e !important;
    font-weight:600 !important;
    text-decoration:none !important;
}

body.page-id-3019 .elementor-3019 a:hover{
    text-decoration:underline !important;
}

/* Normale tekstlijsten: vinkjes tonen */
body.page-id-3019 .elementor-3019 .elementor-widget-text-editor ul{
    list-style:none !important;
    padding:0 !important;
    margin:14px 0 22px !important;
}

body.page-id-3019 .elementor-3019 .elementor-widget-text-editor ul li{
    position:relative !important;
    padding-left:28px !important;
    margin:0 0 10px !important;
}

body.page-id-3019 .elementor-3019 .elementor-widget-text-editor ul li::before{
    content:"✓" !important;
    position:absolute !important;
    left:0 !important;
    top:0 !important;
    color:#4b7f16 !important;
    font-weight:900 !important;
}

/* Elementor icon-list: geen EXTRA css-vinkjes */
body.page-id-3019 .elementor-3019 .elementor-icon-list-item::before{
    content:none !important;
    display:none !important;
}

body.page-id-3019 .elementor-3019 table{
    width:100% !important;
    border-collapse:collapse !important;
    margin:24px 0 !important;
    overflow:hidden !important;
    border-radius:12px !important;
}

body.page-id-3019 .elementor-3019 th{
    background:#e8471e !important;
    color:#fff !important;
    padding:14px !important;
    text-align:left !important;
}

body.page-id-3019 .elementor-3019 td{
    border:1px solid #eee !important;
    padding:14px !important;
    color:#555 !important;
}

body.page-id-3019 .elementor-3019 blockquote{
    background:#fafafa !important;
    border-left:5px solid #e8471e !important;
    padding:20px 24px !important;
    border-radius:12px !important;
    margin:26px 0 !important;
}

@media (min-width:768px) and (max-width:1024px){
    body.page-id-3019 .elementor-3019{
        max-width:1600px !important;
        width:calc(100% - 24px) !important;
        padding:34px !important;
    }

    body.page-id-3019 .elementor-3019 h1{
        font-size:34px !important;
    }

    body.page-id-3019 .elementor-3019 h2,
    body.page-id-3019 .elementor-3019 h3{
        font-size:22px !important;
    }
}

@media (max-width:767px){
    body.page-id-3019 .elementor-3019{
        max-width:1600px !important;
        width:calc(100% - 12px) !important;
        margin:18px auto 40px !important;
        padding:22px 16px 30px !important;
        border-radius:16px !important;
    }

    body.page-id-3019 .elementor-3019 h1{
        font-size:30px !important;
        margin-bottom:18px !important;
    }

    body.page-id-3019 .elementor-3019 h2,
    body.page-id-3019 .elementor-3019 h3{
        font-size:21px !important;
        margin:28px 0 11px !important;
        padding-top:20px !important;
    }

    body.page-id-3019 .elementor-3019 p,
    body.page-id-3019 .elementor-3019 li{
        font-size:15.5px !important;
    }

    body.page-id-3019 .elementor-3019 table,
    body.page-id-3019 .elementor-3019 thead,
    body.page-id-3019 .elementor-3019 tbody,
    body.page-id-3019 .elementor-3019 tr,
    body.page-id-3019 .elementor-3019 td,
    body.page-id-3019 .elementor-3019 th{
        display:block !important;
        width:100% !important;
    }

    body.page-id-3019 .elementor-3019 th{
        border-radius:12px 12px 0 0 !important;
    }

    body.page-id-3019 .elementor-3019 td{
        border-top:none !important;
    }
}

/* ==========================================
   Algemene voorwaarden pagina - Premium
========================================== */

body.page-id-1345 .elementor-1345{
    max-width:1250px !important;
    width:100% !important;
    margin:24px auto 60px !important;
    padding:42px 56px 52px !important;
    background:#fff !important;
    border-radius:18px !important;
    box-shadow:0 6px 22px rgba(0,0,0,.04) !important;
    box-sizing:border-box !important;
}

/* Widgets */
body.page-id-1345 .elementor-1345 .elementor-widget{
    margin-bottom:0 !important;
}

/* Content breedte */
body.page-id-1345 .elementor-1345 .elementor-column,
body.page-id-1345 .elementor-1345 .elementor-widget-container,
body.page-id-1345 .elementor-1345 .elementor-text-editor{
    width:100% !important;
    max-width:none !important;
}

/* H1 */
body.page-id-1345 .elementor-1345 h1{
    color:#e8471e !important;
    font-size:38px !important;
    font-weight:900 !important;
    line-height:1.08 !important;
    letter-spacing:-.6px !important;
    margin:0 0 22px !important;
}

/* H2 / H3 */
body.page-id-1345 .elementor-1345 h2,
body.page-id-1345 .elementor-1345 h3{
    color:#e8471e !important;
    font-size:24px !important;
    font-weight:900 !important;
    line-height:1.18 !important;
    letter-spacing:-.25px !important;
    margin:34px 0 12px !important;
    padding-top:22px !important;
    border-top:1px solid rgba(0,0,0,.055) !important;
}

/* Tekst */
body.page-id-1345 .elementor-1345 p,
body.page-id-1345 .elementor-1345 li{
    color:#4d4d4d !important;
    font-size:17px !important;
    font-weight:400 !important;
    line-height:1.72 !important;
}

/* Links */
body.page-id-1345 .elementor-1345 a{
    color:#e8471e !important;
    font-weight:600 !important;
    text-decoration:none !important;
}

body.page-id-1345 .elementor-1345 a:hover{
    text-decoration:underline !important;
}

/* Lijsten */
body.page-id-1345 .elementor-1345 .elementor-widget-text-editor ul{
    list-style:none !important;
    padding:0 !important;
    margin:14px 0 22px !important;
}

body.page-id-1345 .elementor-1345 .elementor-widget-text-editor ul li{
    position:relative !important;
    padding-left:28px !important;
    margin:0 0 10px !important;
}

body.page-id-1345 .elementor-1345 .elementor-widget-text-editor ul li::before{
    content:"✓" !important;
    position:absolute !important;
    left:0 !important;
    top:0 !important;
    color:#4b7f16 !important;
    font-weight:900 !important;
}

/* Genummerde lijsten */
body.page-id-1345 .elementor-1345 .elementor-widget-text-editor ol{
    margin:16px 0 24px 24px !important;
    padding:0 !important;
}

body.page-id-1345 .elementor-1345 .elementor-widget-text-editor ol li{
    padding-left:6px !important;
    margin-bottom:10px !important;
}

/* Tabellen */
body.page-id-1345 .elementor-1345 table{
    width:100% !important;
    border-collapse:collapse !important;
    margin:24px 0 !important;
    border-radius:12px !important;
    overflow:hidden !important;
}

body.page-id-1345 .elementor-1345 th{
    background:#e8471e !important;
    color:#fff !important;
    padding:14px !important;
    text-align:left !important;
}

body.page-id-1345 .elementor-1345 td{
    border:1px solid #eee !important;
    padding:14px !important;
    color:#555 !important;
}

/* Quotes */
body.page-id-1345 .elementor-1345 blockquote{
    background:#fafafa !important;
    border-left:5px solid #e8471e !important;
    padding:20px 24px !important;
    border-radius:12px !important;
    margin:26px 0 !important;
}

/* Tablet */
@media (min-width:768px) and (max-width:1024px){

    body.page-id-1345 .elementor-1345{
        max-width:1600px !important;
        width:calc(100% - 24px) !important;
        padding:34px !important;
    }

    body.page-id-1345 .elementor-1345 h1{
        font-size:34px !important;
    }

    body.page-id-1345 .elementor-1345 h2,
    body.page-id-1345 .elementor-1345 h3{
        font-size:22px !important;
    }

}

/* Mobiel */
@media (max-width:767px){

    body.page-id-1345 .elementor-1345{
        max-width:1600px !important;
        width:calc(100% - 12px) !important;
        margin:18px auto 40px !important;
        padding:22px 16px 30px !important;
        border-radius:16px !important;
    }

    body.page-id-1345 .elementor-1345 h1{
        font-size:30px !important;
        margin-bottom:18px !important;
    }

    body.page-id-1345 .elementor-1345 h2,
    body.page-id-1345 .elementor-1345 h3{
        font-size:21px !important;
        margin:28px 0 11px !important;
        padding-top:20px !important;
    }

    body.page-id-1345 .elementor-1345 p,
    body.page-id-1345 .elementor-1345 li{
        font-size:15.5px !important;
    }

    body.page-id-1345 .elementor-1345 table,
    body.page-id-1345 .elementor-1345 thead,
    body.page-id-1345 .elementor-1345 tbody,
    body.page-id-1345 .elementor-1345 tr,
    body.page-id-1345 .elementor-1345 td,
    body.page-id-1345 .elementor-1345 th{
        display:block !important;
        width:100% !important;
    }

    body.page-id-1345 .elementor-1345 th{
        border-radius:12px 12px 0 0 !important;
    }

    body.page-id-1345 .elementor-1345 td{
        border-top:none !important;
    }

}
/* Alleen inhoudsopgave-links zwart maken */
body.page-id-1345 .elementor-1345 a[href^="#"]{
    color:#222 !important;
    font-weight:600 !important;
}

body.page-id-1345 .elementor-1345 a[href^="#"]:hover{
    color:#e8471e !important;
}

/* ==========================================
   Privacy & cookiebeleid - Premium
========================================== */

body.page-id-1370 .elementor-1370{
    max-width:1250px !important;
    width:100% !important;
    margin:24px auto 60px !important;
    padding:42px 56px 52px !important;
    background:#fff !important;
    border-radius:18px !important;
    box-shadow:0 6px 22px rgba(0,0,0,.04) !important;
    box-sizing:border-box !important;
}

/* Widgets */
body.page-id-1370 .elementor-1370 .elementor-widget{
    margin-bottom:0 !important;
}

/* Content breedte */
body.page-id-1370 .elementor-1370 .elementor-column,
body.page-id-1370 .elementor-1370 .elementor-widget-container,
body.page-id-1370 .elementor-1370 .elementor-text-editor{
    width:100% !important;
    max-width:none !important;
}

/* H1 */
body.page-id-1370 .elementor-1370 h1{
    color:#e8471e !important;
    font-size:38px !important;
    font-weight:900 !important;
    line-height:1.08 !important;
    letter-spacing:-.6px !important;
    margin:0 0 22px !important;
}

/* H2 / H3 */
body.page-id-1370 .elementor-1370 h2,
body.page-id-1370 .elementor-1370 h3{
    color:#222 !important;
    font-size:24px !important;
    font-weight:900 !important;
    line-height:1.18 !important;
    letter-spacing:-.25px !important;
    margin:34px 0 12px !important;
    padding-top:22px !important;
    border-top:1px solid rgba(0,0,0,.055) !important;
}

/* Tekst */
body.page-id-1370 .elementor-1370 p,
body.page-id-1370 .elementor-1370 li{
    color:#4d4d4d !important;
    font-size:17px !important;
    font-weight:400 !important;
    line-height:1.72 !important;
}

/* Links */
body.page-id-1370 .elementor-1370 a{
    color:#e8471e !important;
    font-weight:600 !important;
    text-decoration:none !important;
}

body.page-id-1370 .elementor-1370 a:hover{
    text-decoration:underline !important;
}

/* Lijsten */
body.page-id-1370 .elementor-1370 ul,
body.page-id-1370 .elementor-1370 ol{
    margin:14px 0 22px !important;
    padding-left:24px !important;
}

body.page-id-1370 .elementor-1370 li{
    margin-bottom:10px !important;
}

/* Tabellen */
body.page-id-1370 .elementor-1370 table{
    width:100% !important;
    border-collapse:collapse !important;
    margin:24px 0 !important;
    overflow:hidden !important;
    border-radius:12px !important;
}

body.page-id-1370 .elementor-1370 th{
    background:#e8471e !important;
    color:#fff !important;
    padding:14px !important;
    text-align:left !important;
}

body.page-id-1370 .elementor-1370 td{
    border:1px solid #eee !important;
    padding:14px !important;
    color:#555 !important;
}

/* Callout */
body.page-id-1370 .elementor-1370 blockquote{
    background:#fafafa !important;
    border-left:5px solid #e8471e !important;
    padding:20px 24px !important;
    border-radius:12px !important;
    margin:26px 0 !important;
}

/* Tablet */
@media (min-width:768px) and (max-width:1024px){

    body.page-id-1370 .elementor-1370{
        max-width:1600px !important;
        width:calc(100% - 24px) !important;
        padding:34px !important;
    }

    body.page-id-1370 .elementor-1370 h1{
        font-size:34px !important;
    }

    body.page-id-1370 .elementor-1370 h2,
    body.page-id-1370 .elementor-1370 h3{
        font-size:22px !important;
    }

}

/* Mobiel */
@media (max-width:767px){

    body.page-id-1370 .elementor-1370{
        max-width:1600px !important;
        width:calc(100% - 12px) !important;
        margin:18px auto 40px !important;
        padding:22px 16px 30px !important;
        border-radius:16px !important;
    }

    body.page-id-1370 .elementor-1370 h1{
        font-size:30px !important;
        margin-bottom:18px !important;
    }

    body.page-id-1370 .elementor-1370 h2,
    body.page-id-1370 .elementor-1370 h3{
        font-size:21px !important;
        margin:28px 0 11px !important;
        padding-top:20px !important;
    }

    body.page-id-1370 .elementor-1370 p,
    body.page-id-1370 .elementor-1370 li{
        font-size:15.5px !important;
    }

    body.page-id-1370 .elementor-1370 table,
    body.page-id-1370 .elementor-1370 thead,
    body.page-id-1370 .elementor-1370 tbody,
    body.page-id-1370 .elementor-1370 tr,
    body.page-id-1370 .elementor-1370 td,
    body.page-id-1370 .elementor-1370 th{
        display:block !important;
        width:100% !important;
    }

    body.page-id-1370 .elementor-1370 th{
        border-radius:12px 12px 0 0 !important;
    }

    body.page-id-1370 .elementor-1370 td{
        border-top:none !important;
    }

}

/* ================================
   Linked Variations by Iconic
   Premium variantblok met labels
================================ */

.iconic-wlv-variations,
.iconic-wlv-variations table,
.iconic-wlv-variations tbody,
.iconic-wlv-variations tr,
.iconic-wlv-variations td,
.iconic-wlv-variations th{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    border:none !important;
    background:transparent !important;
    padding:0 !important;
    margin:0 !important;
}

.iconic-wlv-variations{
    margin:18px 0 20px !important;
    padding:18px !important;
    border:1px solid #ececec !important;
    border-radius:16px !important;
    background:#fff !important;
    overflow:hidden !important;
    box-shadow:0 4px 14px rgba(0,0,0,.045) !important;
}

.iconic-wlv-variations tr{
    clear:both !important;
    margin:0 !important;
}

.iconic-wlv-variations tr + tr{
    margin-top:22px !important;
    padding-top:22px !important;
    border-top:1px solid rgba(0,0,0,.075) !important;
}

.iconic-wlv-variations .label,
.iconic-wlv-variations td.label,
.iconic-wlv-variations th.label{
    display:none !important;
}

.bg-wlv-heading{
    flex:0 0 100% !important;
    width:100% !important;
    display:block !important;
    font-size:15px !important;
    font-weight:800 !important;
    color:#333 !important;
    margin:0 0 10px !important;
    line-height:1.2 !important;
}

.iconic-wlv-variations .value,
.iconic-wlv-variations td.value,
.iconic-wlv-terms{
    display:flex !important;
    flex-wrap:wrap !important;
    align-items:flex-start !important;
    justify-content:flex-start !important;
    gap:16px !important;
    padding:0 !important;
    margin:0 !important;
    list-style:none !important;
    width:100% !important;
    clear:both !important;
}

.iconic-wlv-terms__term,
.iconic-wlv-variations li{
    box-sizing:border-box !important;
    width:148px !important;
    min-width:148px !important;
    max-width:148px !important;
    height:128px !important;
    min-height:128px !important;
    max-height:128px !important;
    padding:12px 12px 11px !important;
    margin:0 !important;

    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:8px !important;

    float:none !important;
    position:relative !important;

    background:#fff !important;
    border:1px solid #e5e5e5 !important;
    border-radius:15px !important;
    box-shadow:0 4px 12px rgba(0,0,0,.05) !important;

    outline:none !important;
    overflow:hidden !important;
    transition:border-color .22s ease, background-color .22s ease, box-shadow .22s ease !important;
}

/* Tekstvariant zonder afbeelding */
.iconic-wlv-terms__term.bg-no-image,
.iconic-wlv-variations li.bg-no-image{
    width:168px !important;
    min-width:168px !important;
    max-width:168px !important;
    height:54px !important;
    min-height:54px !important;
    max-height:54px !important;
    padding:9px 32px 9px 14px !important;
    justify-content:center !important;
    align-items:center !important;
    gap:0 !important;
    overflow:hidden !important;
}

.iconic-wlv-terms__term.bg-no-image .iconic-wlv-terms__term-content{
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    color:#222 !important;
    font-size:16px !important;
    font-weight:900 !important;
    line-height:1.1 !important;
    text-align:center !important;
    white-space:nowrap !important;
}

.iconic-wlv-terms__term.bg-no-image .bg-wlv-term-label{
    display:none !important;
}

.iconic-wlv-terms__term-content{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:100% !important;
    height:76px !important;
    min-height:76px !important;
    max-height:76px !important;
    background:transparent !important;
    border:none !important;
    box-shadow:none !important;
    outline:none !important;
}

.iconic-wlv-terms__term:hover{
    transform:none !important;
    border-color:#e8471e !important;
    box-shadow:0 5px 14px rgba(232,71,30,.10) !important;
}

.iconic-wlv-terms__term--current,
.iconic-wlv-terms__term--current:hover,
.iconic-wlv-terms__term--current:focus,
.iconic-wlv-terms__term--current:active{
    position:relative !important;
    overflow:hidden !important;
    border:2px solid #e8471e !important;
    background:#fff7f4 !important;
    transform:none !important;
    outline:none !important;
    box-shadow:0 5px 14px rgba(232,71,30,.14) !important;
}

.iconic-wlv-terms__term--image,
.iconic-wlv-terms__term--image:hover,
.iconic-wlv-terms__term--image:focus,
.iconic-wlv-terms__term--image:active,
.iconic-wlv-terms__term--image *,
.iconic-wlv-terms__term--image *:hover,
.iconic-wlv-terms__term--image *:focus,
.iconic-wlv-terms__term--image *:active{
    outline:none !important;
}

.iconic-wlv-terms__term--current *,
.iconic-wlv-terms__term--current *::before,
.iconic-wlv-terms__term--current *::after{
    background:transparent !important;
    border:none !important;
    outline:none !important;
    box-shadow:none !important;
}

.iconic-wlv-variations img,
.iconic-wlv-terms__term img,
.iconic-wlv-terms__term-content img{
    display:block !important;
    width:102px !important;
    height:68px !important;
    max-width:102px !important;
    max-height:68px !important;
    object-fit:contain !important;
    margin:0 auto !important;
    padding:0 !important;
    border:none !important;
    border-radius:8px !important;
    background:transparent !important;
    box-shadow:none !important;
    outline:none !important;
    float:none !important;
    position:static !important;
}

.bg-wlv-term-label{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    color:#222 !important;
    font-size:14px !important;
    font-weight:900 !important;
    line-height:1.15 !important;
    text-align:center !important;
    text-transform:none !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    pointer-events:none !important;
}

.iconic-wlv-terms__term::before,
.iconic-wlv-terms__term-content::before{
    display:none !important;
    content:none !important;
}

.iconic-wlv-terms__term--current::after{
    content:"✓" !important;
    position:absolute !important;
    top:8px !important;
    right:8px !important;
    width:20px !important;
    height:20px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    border-radius:50% !important;
    background:#e8471e !important;
    color:#fff !important;
    font-size:12px !important;
    font-weight:900 !important;
    line-height:1 !important;
    box-shadow:0 3px 8px rgba(232,71,30,.20) !important;
    z-index:10 !important;
}

.iconic-wlv-terms__term.bg-no-image.iconic-wlv-terms__term--current::after,
.iconic-wlv-variations li.bg-no-image.iconic-wlv-terms__term--current::after{
    top:7px !important;
    right:7px !important;
    width:17px !important;
    height:17px !important;
    font-size:9.5px !important;
}

.iconic-wlv-variations p,
.iconic-wlv-variations br{
    display:none !important;
}

/* Mobiel */
@media (max-width:767px){

    .iconic-wlv-variations{
        margin:14px 0 18px !important;
        padding:14px !important;
        border-radius:14px !important;
    }

    .iconic-wlv-variations tr + tr{
        margin-top:18px !important;
        padding-top:18px !important;
    }

    .bg-wlv-heading{
        font-size:14px !important;
        margin-bottom:8px !important;
    }

    .iconic-wlv-variations .value,
    .iconic-wlv-variations td.value,
    .iconic-wlv-terms{
        gap:10px !important;
    }

    .iconic-wlv-terms__term,
    .iconic-wlv-variations li{
        width:108px !important;
        min-width:108px !important;
        max-width:108px !important;
        height:104px !important;
        min-height:104px !important;
        max-height:104px !important;
        padding:9px !important;
        gap:6px !important;
    }

    .iconic-wlv-terms__term.bg-no-image,
    .iconic-wlv-variations li.bg-no-image{
        width:calc(50% - 5px) !important;
        min-width:calc(50% - 5px) !important;
        max-width:calc(50% - 5px) !important;
        height:54px !important;
        min-height:54px !important;
        max-height:54px !important;
        padding:9px 26px 9px 10px !important;
        overflow:hidden !important;
    }

    .iconic-wlv-terms__term.bg-no-image .iconic-wlv-terms__term-content{
        font-size:13.5px !important;
        letter-spacing:-.35px !important;
        white-space:nowrap !important;
    }

    .iconic-wlv-terms__term-content{
        height:60px !important;
        min-height:60px !important;
        max-height:60px !important;
    }

    .iconic-wlv-variations img,
    .iconic-wlv-terms__term img,
    .iconic-wlv-terms__term-content img{
        width:78px !important;
        height:52px !important;
        max-width:78px !important;
        max-height:52px !important;
    }

    .bg-wlv-term-label{
        font-size:11.5px !important;
        font-weight:900 !important;
    }

    .iconic-wlv-terms__term--current::after{
        width:17px !important;
        height:17px !important;
        top:6px !important;
        right:6px !important;
        font-size:10px !important;
    }

    .iconic-wlv-terms__term.bg-no-image.iconic-wlv-terms__term--current::after,
    .iconic-wlv-variations li.bg-no-image.iconic-wlv-terms__term--current::after{
        width:16px !important;
        height:16px !important;
        top:6px !important;
        right:6px !important;
        font-size:9.5px !important;
    }
}

