:root{
  --ccc-ink:#122847;
  --ccc-blue:#295f9f;
  --ccc-orange:#f26432;
  --ccc-orange-dark:#df5122;
  --ccc-green:#18a13a;
  --ccc-mint:#eaf8f4;
  --ccc-line:#dfe7ee;
  --ccc-soft:#f6f8fa;
  --ccc-shadow:0 12px 34px rgba(16,40,70,.10);
}

/* ---------- Shared progress ---------- */
.ccc-progress{
  width:min(760px,calc(100% - 32px));
  margin:4px auto 22px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  color:#8290a0;
  font-size:12px;
  font-weight:750;
}
.ccc-progress__step{display:flex;align-items:center;gap:7px;white-space:nowrap}
.ccc-progress__dot{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#edf1f5;color:#738195;font-size:11px;font-weight:900}
.ccc-progress__step.is-current{color:var(--ccc-ink)}
.ccc-progress__step.is-current .ccc-progress__dot{background:var(--ccc-blue);color:#fff}
.ccc-progress__step.is-done{color:#3e765e}
.ccc-progress__step.is-done .ccc-progress__dot{background:#e6f6ec;color:#15923b}
.ccc-progress__line{width:54px;height:2px;background:#e3e8ed;border-radius:2px}

/* ==========================================================
   CART
   ========================================================== */
.coolioo-conversion-cart .ccc-cart-grid{
  width:min(1360px,calc(100% - 40px));
  margin:0 auto 40px;
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr);
  gap:28px;
  align-items:start;
}
.coolioo-conversion-cart .ccc-cart-main,
.coolioo-conversion-cart .cart-collaterals{
  min-width:0;
}
.coolioo-conversion-cart .woocommerce-cart-form,
.coolioo-conversion-cart .cart_totals,
.coolioo-conversion-cart .coolioo-upsell{
  border:1px solid var(--ccc-line)!important;
  border-radius:20px!important;
  background:#fff!important;
  box-shadow:var(--ccc-shadow)!important;
}
.coolioo-conversion-cart .woocommerce-cart-form{overflow:hidden}

/* Cart table: product first, controls second */
.coolioo-conversion-cart table.shop_table{
  border:0!important;
  border-radius:0!important;
  margin:0!important;
  background:#fff;
}
.coolioo-conversion-cart table.shop_table thead th{
  padding:14px 16px!important;
  border:0!important;
  background:#f3f6f9!important;
  color:#6f7f90!important;
  font-size:11px!important;
  font-weight:800!important;
  letter-spacing:.05em;
  text-transform:uppercase;
}
.coolioo-conversion-cart table.shop_table td{
  padding:18px 14px!important;
  border-top:1px solid #edf1f4!important;
  vertical-align:middle!important;
}
.coolioo-conversion-cart td.product-thumbnail img{width:64px!important;height:64px!important;object-fit:cover;border-radius:10px}
.coolioo-conversion-cart td.product-name a{color:var(--ccc-ink)!important;font-size:15px;font-weight:800;text-decoration:none}
.coolioo-conversion-cart td.product-price,
.coolioo-conversion-cart td.product-subtotal{color:var(--ccc-ink);font-weight:800}
.coolioo-conversion-cart td.product-remove a{width:28px;height:28px;display:grid!important;place-items:center;border-radius:50%;background:#fff3ef;color:#d84f25!important;font-size:18px!important;text-decoration:none!important}

/* Quantity stepper */
.ccc-qty{display:inline-grid;grid-template-columns:32px 46px 32px;align-items:center;border:1px solid #dce4eb;border-radius:12px;overflow:hidden;background:#fff}
.ccc-qty button{height:36px;border:0;background:#f6f8fa;color:#193353;font-size:18px;cursor:pointer}
.ccc-qty input.qty{width:46px!important;height:36px!important;padding:0!important;border:0!important;text-align:center!important;background:#fff!important;box-shadow:none!important;-moz-appearance:textfield}
.ccc-qty input.qty::-webkit-outer-spin-button,.ccc-qty input.qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}

/* Coupon becomes a secondary action instead of a visual blocker */
.coolioo-conversion-cart .actions{padding:14px 16px!important;background:#fafbfd}
.coolioo-conversion-cart .coupon{display:none!important}
.coolioo-conversion-cart .coupon.ccc-open{display:flex!important;gap:8px;align-items:center}
.ccc-coupon-toggle{appearance:none;border:0;background:none;padding:8px 0;color:#617287;font-size:12px;font-weight:750;text-decoration:underline;cursor:pointer}
.coolioo-conversion-cart .coupon input{border-radius:10px!important;min-height:42px}
.coolioo-conversion-cart .coupon button{border-radius:10px!important;min-height:42px!important}

/* Existing Coolioo upsell: one recommendation, compact and decision-oriented */
.coolioo-conversion-cart .coolioo-upsell{
  margin:14px 0 0!important;
  padding:16px!important;
  box-shadow:none!important;
  background:linear-gradient(135deg,#f8fcfb,#eef9f6)!important;
  border-color:#cbe7de!important;
}
.coolioo-conversion-cart .coolioo-upsell__head{gap:8px!important;margin:0 0 8px!important}
.coolioo-conversion-cart .coolioo-upsell__icon{width:30px!important;height:30px!important;flex-basis:30px!important;font-size:14px!important;background:#fff!important}
.coolioo-conversion-cart .coolioo-upsell__title{font-size:19px!important;line-height:1.2!important;margin:0 0 3px!important;color:var(--ccc-ink)!important}
.coolioo-conversion-cart .coolioo-upsell__sub{font-size:12.5px!important;line-height:1.4!important;color:#617286!important;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.coolioo-conversion-cart .coolioo-upsell__badge{margin:6px 0 10px!important;padding:7px 10px!important;font-size:12px!important}
.coolioo-conversion-cart .coolioo-upsell__row{padding:10px!important;border-radius:14px!important;display:grid!important;grid-template-columns:56px minmax(0,1fr) auto!important;gap:10px!important}
.coolioo-conversion-cart .coolioo-upsell__thumb{width:56px!important}
.coolioo-conversion-cart .coolioo-upsell__thumb img{width:52px!important;max-width:52px!important;border-radius:8px}
.coolioo-conversion-cart .coolioo-upsell__name{font-size:15px!important;line-height:1.2!important;margin-bottom:2px!important}
.coolioo-conversion-cart .coolioo-upsell__price{font-size:13px!important}
.coolioo-conversion-cart .coolioo-upsell__btn{min-width:130px!important;padding:11px 14px!important;border-radius:12px!important;font-size:12px!important;background:var(--ccc-blue)!important;box-shadow:none!important}

/* Sticky cart summary */
.coolioo-conversion-cart .cart-collaterals{width:auto!important;margin:0!important}
.coolioo-conversion-cart .cart_totals{float:none!important;width:100%!important;padding:18px!important;position:sticky;top:126px}
.coolioo-conversion-cart .cart_totals h2{margin:0 0 12px!important;color:var(--ccc-ink)!important;font-size:21px!important;font-weight:850!important}
.coolioo-conversion-cart .cart_totals table{margin-bottom:10px!important}
.coolioo-conversion-cart .cart_totals th,.coolioo-conversion-cart .cart_totals td{padding:10px 0!important;border-top:1px solid #edf1f4!important;background:transparent!important}
.coolioo-conversion-cart .cart_totals .order-total th,.coolioo-conversion-cart .cart_totals .order-total td{font-size:18px!important;color:var(--ccc-ink)!important;font-weight:900!important}
.coolioo-conversion-cart .wc-proceed-to-checkout{padding:8px 0 0!important}
.coolioo-conversion-cart .wc-proceed-to-checkout a.checkout-button{
  min-height:54px!important;display:flex!important;align-items:center!important;justify-content:center!important;margin:0!important;border-radius:14px!important;background:var(--ccc-orange)!important;color:#fff!important;font-size:16px!important;font-weight:850!important;box-shadow:0 8px 18px rgba(242,100,50,.18)!important
}
.coolioo-conversion-cart .wc-proceed-to-checkout a.checkout-button:hover{background:var(--ccc-orange-dark)!important}
.ccc-cart-confidence{display:grid;gap:7px;margin:0 0 10px;padding:11px 12px;border-radius:12px;background:#f8fafb;border:1px solid #e7ecef}
.ccc-cart-confidence>div{display:flex;align-items:center;gap:8px;color:#617286;font-size:11px}
.ccc-cart-confidence span{width:18px;height:18px;border-radius:50%;display:grid;place-items:center;background:#e8f7ee;color:#16943b;font-size:10px;font-weight:900}
.ccc-cart-confidence strong{font-weight:750;color:#425a72}

/* ==========================================================
   CHECKOUT
   ========================================================== */
.coolioo-conversion-checkout form.checkout{
  width:min(1220px,calc(100% - 40px));
  margin:0 auto 60px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1.08fr) minmax(390px,.92fr)!important;
  gap:0 28px!important;
  align-items:start!important;
}
.coolioo-conversion-checkout #customer_details{grid-column:1!important;grid-row:1 / span 3!important;width:100%!important;margin:0!important}
.coolioo-conversion-checkout #order_review_heading{display:none!important}
.coolioo-conversion-checkout #order_review{
  grid-column:2!important;grid-row:1!important;position:sticky!important;top:126px!important;width:100%!important;margin:0!important;padding:18px!important;border:1px solid var(--ccc-line)!important;border-radius:20px!important;background:#fff!important;box-shadow:var(--ccc-shadow)!important
}
.coolioo-conversion-checkout #order_review:before{content:'Je bestelling';display:block;margin:0 0 10px;color:var(--ccc-ink);font-size:21px;font-weight:850}
.coolioo-conversion-checkout #order_review table.shop_table{margin:0 0 10px!important;border:0!important;border-radius:0!important}
.coolioo-conversion-checkout #order_review table.shop_table th,
.coolioo-conversion-checkout #order_review table.shop_table td{padding:8px 8px!important;border-top:1px solid #edf1f4!important;font-size:12px!important;background:transparent!important}
.coolioo-conversion-checkout #order_review table.shop_table thead th{color:#728197!important;font-size:10px!important;text-transform:uppercase;letter-spacing:.04em}
.coolioo-conversion-checkout #order_review .order-total th,
.coolioo-conversion-checkout #order_review .order-total td{font-size:15px!important;color:var(--ccc-ink)!important;font-weight:900!important}

/* Payment methods stay inside the same compact decision card */
.coolioo-conversion-checkout #payment{margin:8px 0 0!important;padding:10px!important;border:1px solid #e4eaf0!important;border-radius:15px!important;background:#f8fafc!important;box-shadow:none!important}
.coolioo-conversion-checkout #payment ul.payment_methods{padding:0!important;margin:0!important;border:0!important}
.coolioo-conversion-checkout #payment ul.payment_methods li{margin:0 0 6px!important;padding:9px 10px!important;border:1px solid #e1e7ed!important;border-radius:11px!important;background:#fff!important;min-height:42px}
.coolioo-conversion-checkout #payment ul.payment_methods li:last-child{margin-bottom:0!important}
.coolioo-conversion-checkout #payment ul.payment_methods li label{display:flex!important;align-items:center!important;min-height:24px!important;font-size:12px!important;color:#324a63!important}
.coolioo-conversion-checkout #payment .payment_box{margin:7px 0 0!important;padding:9px!important;border-radius:9px!important;font-size:11px!important;background:#f4f7f9!important}
.coolioo-conversion-checkout .woocommerce-terms-and-conditions-wrapper{margin:9px 0 7px!important;font-size:10.5px!important;line-height:1.35!important;color:#66788a!important}
.coolioo-conversion-checkout #payment .place-order{margin:0!important;padding:0!important;background:transparent!important}
.coolioo-conversion-checkout #place_order{
  width:100%!important;min-height:54px!important;margin:8px 0 0!important;border:0!important;border-radius:14px!important;background:var(--ccc-orange)!important;color:#fff!important;font-size:16px!important;font-weight:850!important;box-shadow:0 8px 18px rgba(242,100,50,.18)!important
}
.coolioo-conversion-checkout #place_order:hover{background:var(--ccc-orange-dark)!important}
.ccc-checkout-confidence{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin:5px 0 0;color:#6d7d8d;font-size:9.5px;font-weight:650}

/* Billing card + less perceived effort */
.coolioo-conversion-checkout #customer_details .col-1,
.coolioo-conversion-checkout #customer_details .col-2{float:none!important;width:100%!important;margin:0 0 16px!important;padding:18px!important;border:1px solid var(--ccc-line)!important;border-radius:20px!important;background:#fff!important;box-shadow:var(--ccc-shadow)!important}
.coolioo-conversion-checkout #customer_details h3{margin:0 0 12px!important;color:var(--ccc-ink)!important;font-size:21px!important;font-weight:850!important}
.coolioo-conversion-checkout .form-row{margin-bottom:10px!important}
.coolioo-conversion-checkout .form-row label{margin-bottom:4px!important;color:#607183!important;font-size:10.5px!important;font-weight:750!important}
.coolioo-conversion-checkout .input-text,
.coolioo-conversion-checkout select{
  min-height:48px!important;padding:11px 13px!important;border:1px solid #dce4ea!important;border-radius:12px!important;background:#f7f8fa!important;box-shadow:none!important;font-size:13px!important
}
.coolioo-conversion-checkout .input-text:focus,
.coolioo-conversion-checkout select:focus{border-color:#7ea5c8!important;background:#fff!important;box-shadow:0 0 0 3px rgba(41,95,159,.08)!important}

/* Hide nonessential review widgets inside checkout to keep commitment focus. */
.coolioo-conversion-checkout .ccc-hidden-checkout-distraction{display:none!important}

/* Mobile sticky order action */
.ccc-checkout-dock{display:none}

@media(max-width:980px){
  .ccc-progress{width:calc(100% - 24px);margin-bottom:14px;font-size:10px;gap:6px}
  .ccc-progress__line{width:22px}
  .ccc-progress__dot{width:21px;height:21px;font-size:10px}

  .coolioo-conversion-cart .ccc-cart-grid{width:calc(100% - 20px);display:block;margin-bottom:110px}
  .coolioo-conversion-cart .ccc-cart-main{margin-bottom:14px}
  .coolioo-conversion-cart .cart_totals{position:static!important;padding:15px!important}
  .coolioo-conversion-cart table.shop_table thead{display:none}
  .coolioo-conversion-cart table.shop_table tbody tr.cart_item{display:grid!important;grid-template-columns:28px 70px minmax(0,1fr);gap:8px;padding:13px!important;border-top:1px solid #edf1f4}
  .coolioo-conversion-cart table.shop_table tbody tr.cart_item td{display:block!important;padding:0!important;border:0!important}
  .coolioo-conversion-cart td.product-remove{grid-column:1;grid-row:1}
  .coolioo-conversion-cart td.product-thumbnail{grid-column:2;grid-row:1 / span 3}
  .coolioo-conversion-cart td.product-name{grid-column:3;grid-row:1}
  .coolioo-conversion-cart td.product-price{grid-column:3;grid-row:2;font-size:13px}
  .coolioo-conversion-cart td.product-quantity{grid-column:3;grid-row:3}
  .coolioo-conversion-cart td.product-subtotal{grid-column:3;grid-row:4;font-size:13px}
  .coolioo-conversion-cart .coolioo-upsell__row{grid-template-columns:48px minmax(0,1fr)!important}
  .coolioo-conversion-cart .coolioo-upsell__btn{grid-column:1 / -1;width:100%!important}

  .coolioo-conversion-checkout form.checkout{width:calc(100% - 20px);display:block!important;margin-bottom:120px!important}
  .coolioo-conversion-checkout #customer_details,.coolioo-conversion-checkout #order_review{width:100%!important;position:static!important}
  .coolioo-conversion-checkout #customer_details .col-1,.coolioo-conversion-checkout #customer_details .col-2,.coolioo-conversion-checkout #order_review{padding:14px!important;border-radius:16px!important}
  .coolioo-conversion-checkout #order_review{margin-top:12px!important}

  .ccc-checkout-dock{
    position:fixed;z-index:2147483400;left:8px;right:8px;bottom:calc(8px + env(safe-area-inset-bottom));display:grid;grid-template-columns:minmax(0,1fr) minmax(178px,1.2fr);gap:10px;align-items:center;padding:10px;border:1px solid #dce6ee;border-radius:18px;background:rgba(255,255,255,.985);box-shadow:0 14px 36px rgba(16,40,70,.18);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)
  }
  .ccc-checkout-dock__total{display:flex;flex-direction:column;gap:2px;color:#68798b;font-size:10px}
  .ccc-checkout-dock__total strong{color:var(--ccc-ink);font-size:20px;line-height:1;font-weight:900}
  .ccc-checkout-dock__button{min-height:52px;border:0;border-radius:14px;background:var(--ccc-orange);color:#fff;font-size:14px;font-weight:850;cursor:pointer}
}


/* ==========================================================
   1.0.1 — compatibility + layout hardening
   Coolioo heeft al bestaande cart/checkout styling. Deze laag neutraliseert
   oude floats/percentages nadat de conversion grid is opgebouwd.
   ========================================================== */

/* CART: de linker kolom moet de volledige gridkolom gebruiken. */
.coolioo-conversion-cart .ccc-cart-grid{
  box-sizing:border-box!important;
  max-width:1180px!important;
  width:calc(100% - 32px)!important;
  grid-template-columns:minmax(0,1.55fr) minmax(340px,.75fr)!important;
  gap:24px!important;
}
.coolioo-conversion-cart .ccc-cart-main{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  float:none!important;
  clear:none!important;
  display:block!important;
}
.coolioo-conversion-cart .woocommerce-cart-form{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  float:none!important;
  clear:none!important;
  display:block!important;
  margin:0!important;
  box-sizing:border-box!important;
}
.coolioo-conversion-cart .woocommerce-cart-form table.shop_table,
.coolioo-conversion-cart .woocommerce-cart-form table.cart{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  table-layout:auto!important;
  box-sizing:border-box!important;
}
.coolioo-conversion-cart .woocommerce-cart-form table.cart th,
.coolioo-conversion-cart .woocommerce-cart-form table.cart td{
  white-space:normal!important;
  word-break:normal!important;
  writing-mode:horizontal-tb!important;
  text-orientation:mixed!important;
}
.coolioo-conversion-cart .woocommerce-cart-form table.cart th.product-remove,
.coolioo-conversion-cart .woocommerce-cart-form table.cart td.product-remove{width:38px!important;min-width:38px!important;max-width:38px!important}
.coolioo-conversion-cart .woocommerce-cart-form table.cart th.product-thumbnail,
.coolioo-conversion-cart .woocommerce-cart-form table.cart td.product-thumbnail{width:80px!important;min-width:80px!important;max-width:80px!important}
.coolioo-conversion-cart .woocommerce-cart-form table.cart th.product-price,
.coolioo-conversion-cart .woocommerce-cart-form table.cart td.product-price{width:95px!important;min-width:95px!important}
.coolioo-conversion-cart .woocommerce-cart-form table.cart th.product-quantity,
.coolioo-conversion-cart .woocommerce-cart-form table.cart td.product-quantity{width:126px!important;min-width:126px!important}
.coolioo-conversion-cart .woocommerce-cart-form table.cart th.product-subtotal,
.coolioo-conversion-cart .woocommerce-cart-form table.cart td.product-subtotal{width:105px!important;min-width:105px!important}
.coolioo-conversion-cart .woocommerce-cart-form table.cart th.product-name,
.coolioo-conversion-cart .woocommerce-cart-form table.cart td.product-name{width:auto!important;min-width:150px!important}
.coolioo-conversion-cart .woocommerce-cart-form .actions{
  width:auto!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
.coolioo-conversion-cart .cart-collaterals{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  float:none!important;
  clear:none!important;
  box-sizing:border-box!important;
}
.coolioo-conversion-cart .cart-collaterals .cart_totals{
  width:100%!important;
  max-width:none!important;
  box-sizing:border-box!important;
}
.coolioo-conversion-cart .ccc-progress{
  width:100%!important;
  max-width:680px!important;
  box-sizing:border-box!important;
}

/* Checkout: rechts blijft compact en de echte WooCommerce CTA blijft zichtbaar. */
@media(min-width:981px){
  .coolioo-conversion-checkout form.checkout{
    max-width:1180px!important;
    width:calc(100% - 32px)!important;
    grid-template-columns:minmax(0,1.08fr) minmax(400px,.92fr)!important;
    gap:24px!important;
  }
  .coolioo-conversion-checkout #customer_details,
  .coolioo-conversion-checkout #order_review{
    min-width:0!important;
    max-width:none!important;
    float:none!important;
    clear:none!important;
    box-sizing:border-box!important;
  }
  .coolioo-conversion-checkout #order_review{
    top:112px!important;
    max-height:calc(100vh - 132px)!important;
    overflow-y:auto!important;
    overscroll-behavior:contain;
    scrollbar-width:thin;
    padding-bottom:0!important;
  }
  .coolioo-conversion-checkout #payment .place-order{
    position:sticky!important;
    z-index:20!important;
    bottom:0!important;
    margin:8px -10px 0!important;
    padding:12px 10px 16px!important;
    background:rgba(255,255,255,.985)!important;
    border-top:1px solid #e7edf2!important;
    box-shadow:0 -12px 22px rgba(18,40,71,.07)!important;
    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);
  }
  .coolioo-conversion-checkout #place_order{
    margin:0!important;
  }
}

@media(max-width:980px){
  .coolioo-conversion-cart .ccc-cart-grid{
    width:calc(100% - 20px)!important;
    max-width:none!important;
  }
  .coolioo-conversion-cart .woocommerce-cart-form table.cart th,
  .coolioo-conversion-cart .woocommerce-cart-form table.cart td{
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
  }
}


/* ==========================================================
   1.0.2 — DIVI THEME BUILDER SAFE MODE
   Geen DOM-reparenting. De bestaande Divi rijen/kolommen blijven eigenaar
   van de layout; deze laag moderniseert uitsluitend in-place.
   ========================================================== */

/* Oude 1.0.0/1.0.1 conversion-grid mag nooit meer layout bepalen. */
.coolioo-conversion-cart .ccc-cart-grid{display:contents!important;}
.coolioo-conversion-cart .ccc-cart-main{display:contents!important;}

/* Als cart products + totals al als 2 Divi kolommen in dezelfde row staan. */
@media(min-width:981px){
  .coolioo-conversion-cart .et_pb_row.ccc-cart-divi-row{
    width:min(1180px,calc(100% - 32px))!important;
    max-width:1180px!important;
    display:grid!important;
    grid-template-columns:minmax(0,1.55fr) minmax(340px,.75fr)!important;
    gap:24px!important;
    align-items:start!important;
  }
  .coolioo-conversion-cart .et_pb_row.ccc-cart-divi-row>.et_pb_column{
    width:auto!important;
    max-width:none!important;
    min-width:0!important;
    margin:0!important;
    float:none!important;
  }
  .coolioo-conversion-cart .ccc-cart-summary-col{
    position:sticky!important;
    top:112px!important;
    align-self:start!important;
  }
  .coolioo-conversion-cart .ccc-cart-summary-col .cart_totals{
    position:static!important;
    top:auto!important;
  }
}

/* Cart module zelf vult altijd zijn bestaande Divi kolom. */
.coolioo-conversion-cart .woocommerce-cart-form,
.coolioo-conversion-cart .woocommerce-cart-form table.shop_table,
.coolioo-conversion-cart .woocommerce-cart-form table.cart{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  float:none!important;
  clear:none!important;
  box-sizing:border-box!important;
}
.coolioo-conversion-cart .woocommerce-cart-form table.cart{
  table-layout:auto!important;
}
.coolioo-conversion-cart .woocommerce-cart-form table.cart th,
.coolioo-conversion-cart .woocommerce-cart-form table.cart td{
  writing-mode:horizontal-tb!important;
  text-orientation:mixed!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}
.coolioo-conversion-cart .woocommerce-cart-form table.cart td.product-name,
.coolioo-conversion-cart .woocommerce-cart-form table.cart th.product-name{
  min-width:220px!important;
}

/* Divi kan eigen module wrappers percentagebreedtes geven. */
.coolioo-conversion-cart .ccc-cart-primary-col .et_pb_module,
.coolioo-conversion-cart .ccc-cart-summary-col .et_pb_module{
  max-width:none!important;
}

/* Checkout: 1.0.2 laat Divi/WooCommerce de structurele 2-koloms layout beheren. */
.coolioo-conversion-checkout form.checkout{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  display:block!important;
}
.coolioo-conversion-checkout #customer_details{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}
.coolioo-conversion-checkout #order_review{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  position:static!important;
  top:auto!important;
  max-height:none!important;
  overflow:visible!important;
}

/* Laat bestaande WooCommerce/Divi floats staan indien ze de front-end layout vormen;
   alleen onze kaartstyling blijft actief. */
@media(min-width:981px){
  .coolioo-conversion-checkout #customer_details .col-1,
  .coolioo-conversion-checkout #customer_details .col-2{
    box-sizing:border-box!important;
  }
  .coolioo-conversion-checkout #payment .place-order{
    position:static!important;
    margin:8px 0 0!important;
    padding:0!important;
    border-top:0!important;
    box-shadow:none!important;
    background:transparent!important;
  }
}

/* Checkout conversion dock: desktop én mobiel, alleen zichtbaar als echte CTA uit beeld is. */
.ccc-checkout-dock{
  position:fixed!important;
  z-index:2147483300!important;
  left:50%!important;
  right:auto!important;
  bottom:18px!important;
  width:min(720px,calc(100% - 32px))!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(220px,300px)!important;
  gap:14px!important;
  align-items:center!important;
  padding:11px 12px!important;
  border:1px solid #dce6ee!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.985)!important;
  box-shadow:0 16px 38px rgba(16,40,70,.18)!important;
  backdrop-filter:blur(14px)!important;
  -webkit-backdrop-filter:blur(14px)!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transform:translate(-50%,120%)!important;
  transition:transform .2s ease,opacity .16s ease,visibility 0s linear .2s!important;
}
.ccc-checkout-dock.is-visible{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transform:translate(-50%,0)!important;
  transition:transform .2s ease,opacity .16s ease,visibility 0s!important;
}
.ccc-checkout-dock__total{display:flex!important;flex-direction:column!important;gap:2px!important;color:#68798b!important;font-size:10px!important;}
.ccc-checkout-dock__total strong{color:var(--ccc-ink)!important;font-size:22px!important;line-height:1!important;font-weight:900!important;}
.ccc-checkout-dock__button{min-height:52px!important;border:0!important;border-radius:14px!important;background:var(--ccc-orange)!important;color:#fff!important;font-size:14px!important;font-weight:850!important;cursor:pointer!important;}

@media(max-width:980px){
  .coolioo-conversion-cart .et_pb_row.ccc-cart-divi-row{
    display:block!important;
  }
  .coolioo-conversion-cart .ccc-cart-summary-col{
    position:static!important;
  }
  .coolioo-conversion-cart .woocommerce-cart-form table.cart td.product-name,
  .coolioo-conversion-cart .woocommerce-cart-form table.cart th.product-name{
    min-width:0!important;
  }
  .ccc-checkout-dock{
    left:8px!important;
    right:8px!important;
    bottom:calc(8px + env(safe-area-inset-bottom))!important;
    width:auto!important;
    grid-template-columns:minmax(0,1fr) minmax(170px,1.2fr)!important;
    gap:10px!important;
    padding:10px!important;
    border-radius:18px!important;
    transform:translateY(120%)!important;
  }
  .ccc-checkout-dock.is-visible{transform:translateY(0)!important;}
}


/* ==========================================================
   1.0.3 — MOBILE CART REBUILD
   WooCommerce table remains intact for accessibility, but on mobile each
   cart row becomes a real product card instead of a squeezed data table.
   ========================================================== */
@media(max-width:980px){
  .coolioo-conversion-cart h1{
    font-size:clamp(34px,10vw,48px)!important;
    line-height:1.05!important;
  }

  .coolioo-conversion-cart .woocommerce-cart-form{
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    overflow:visible!important;
  }

  .coolioo-conversion-cart .woocommerce-cart-form table.cart,
  .coolioo-conversion-cart .woocommerce-cart-form table.cart tbody{
    display:block!important;
    width:100%!important;
    background:transparent!important;
  }

  .coolioo-conversion-cart .woocommerce-cart-form table.cart thead{
    display:none!important;
  }

  .coolioo-conversion-cart .woocommerce-cart-form table.cart tr.cart_item{
    position:relative!important;
    display:grid!important;
    grid-template-columns:82px minmax(0,1fr)!important;
    grid-template-areas:
      "thumb name"
      "thumb price"
      "thumb qty"
      "subtotal subtotal"!important;
    column-gap:14px!important;
    row-gap:8px!important;
    width:100%!important;
    margin:0 0 12px!important;
    padding:16px!important;
    border:1px solid var(--ccc-line)!important;
    border-radius:18px!important;
    background:#fff!important;
    box-shadow:0 10px 28px rgba(16,40,70,.09)!important;
  }

  .coolioo-conversion-cart .woocommerce-cart-form table.cart tr.cart_item>td{
    display:block!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
    background:transparent!important;
    text-align:left!important;
  }

  /* Kill WooCommerce/Divi responsive pseudo labels; we add only the useful ones. */
  .coolioo-conversion-cart .woocommerce-cart-form table.cart tr.cart_item>td::before{
    display:none!important;
    content:none!important;
  }

  .coolioo-conversion-cart td.product-remove{
    position:absolute!important;
    top:10px!important;
    right:10px!important;
    z-index:3!important;
  }
  .coolioo-conversion-cart td.product-remove a{
    width:30px!important;
    height:30px!important;
    font-size:17px!important;
  }

  .coolioo-conversion-cart td.product-thumbnail{
    grid-area:thumb!important;
    align-self:start!important;
  }
  .coolioo-conversion-cart td.product-thumbnail img{
    display:block!important;
    width:82px!important;
    height:82px!important;
    max-width:82px!important;
    object-fit:contain!important;
    border-radius:12px!important;
    background:#f8fafb!important;
  }

  .coolioo-conversion-cart td.product-name{
    grid-area:name!important;
    padding-right:30px!important;
  }
  .coolioo-conversion-cart td.product-name a{
    display:block!important;
    color:var(--ccc-ink)!important;
    font-size:17px!important;
    line-height:1.25!important;
    font-weight:850!important;
  }
  .coolioo-conversion-cart td.product-name dl.variation,
  .coolioo-conversion-cart td.product-name .variation{
    margin:6px 0 0!important;
    color:#66788b!important;
    font-size:11px!important;
    line-height:1.35!important;
  }

  .coolioo-conversion-cart td.product-price{
    grid-area:price!important;
    color:var(--ccc-ink)!important;
    font-size:17px!important;
    font-weight:900!important;
  }
  .coolioo-conversion-cart td.product-price::before{
    content:'Prijs'!important;
    display:block!important;
    margin-bottom:2px!important;
    color:#7a8898!important;
    font-size:9px!important;
    line-height:1!important;
    font-weight:800!important;
    letter-spacing:.06em!important;
    text-transform:uppercase!important;
  }

  .coolioo-conversion-cart td.product-quantity{
    grid-area:qty!important;
  }
  .coolioo-conversion-cart td.product-quantity::before{
    content:'Aantal'!important;
    display:block!important;
    margin-bottom:5px!important;
    color:#7a8898!important;
    font-size:9px!important;
    line-height:1!important;
    font-weight:800!important;
    letter-spacing:.06em!important;
    text-transform:uppercase!important;
  }
  .coolioo-conversion-cart .ccc-qty{
    grid-template-columns:38px 48px 38px!important;
    border-radius:12px!important;
  }
  .coolioo-conversion-cart .ccc-qty button,
  .coolioo-conversion-cart .ccc-qty input.qty{
    height:38px!important;
  }

  .coolioo-conversion-cart td.product-subtotal{
    grid-area:subtotal!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    margin-top:4px!important;
    padding-top:12px!important;
    border-top:1px solid #edf1f4!important;
    color:var(--ccc-ink)!important;
    font-size:15px!important;
    font-weight:900!important;
  }
  .coolioo-conversion-cart td.product-subtotal::before{
    content:'Subtotaal'!important;
    display:block!important;
    color:#607286!important;
    font-size:11px!important;
    font-weight:750!important;
  }

  .coolioo-conversion-cart .woocommerce-cart-form table.cart tr:not(.cart_item){
    display:block!important;
    width:100%!important;
  }
  .coolioo-conversion-cart .woocommerce-cart-form table.cart tr:not(.cart_item)>td.actions{
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:12px!important;
    border:1px solid var(--ccc-line)!important;
    border-radius:16px!important;
    background:#fff!important;
    box-shadow:0 8px 22px rgba(16,40,70,.07)!important;
  }

  .coolioo-conversion-cart .ccc-coupon-toggle{
    display:block!important;
    width:100%!important;
    padding:8px 0!important;
    text-align:center!important;
    font-size:12px!important;
  }
  .coolioo-conversion-cart .coupon.ccc-open{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    width:100%!important;
    gap:8px!important;
    margin:8px 0!important;
  }
  .coolioo-conversion-cart .coupon.ccc-open input{
    width:100%!important;
    min-width:0!important;
  }

  /* Auto update is handled by +/- buttons; remove the dead-looking secondary CTA. */
  .coolioo-conversion-cart [name="update_cart"]{
    display:none!important;
  }

  .coolioo-conversion-cart .cart_totals{
    margin-top:12px!important;
    border-radius:18px!important;
    padding:16px!important;
  }

  .coolioo-conversion-cart .ccc-cart-confidence{
    margin-bottom:8px!important;
  }

  /* Always-available mobile checkout action, like leading commerce apps. */
  .ccc-cart-dock{
    position:fixed!important;
    z-index:2147483300!important;
    left:8px!important;
    right:8px!important;
    bottom:calc(8px + env(safe-area-inset-bottom))!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(170px,1.15fr)!important;
    gap:10px!important;
    align-items:center!important;
    padding:10px!important;
    border:1px solid #dce6ee!important;
    border-radius:18px!important;
    background:rgba(255,255,255,.985)!important;
    box-shadow:0 16px 38px rgba(16,40,70,.18)!important;
    backdrop-filter:blur(14px)!important;
    -webkit-backdrop-filter:blur(14px)!important;
  }
  .ccc-cart-dock__total{
    min-width:0!important;
    display:flex!important;
    flex-direction:column!important;
    gap:2px!important;
    color:#718093!important;
    font-size:10px!important;
    font-weight:700!important;
  }
  .ccc-cart-dock__total strong{
    color:var(--ccc-ink)!important;
    font-size:22px!important;
    line-height:1!important;
    font-weight:900!important;
  }
  .ccc-cart-dock__button{
    min-height:52px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:14px!important;
    background:var(--ccc-orange)!important;
    color:#fff!important;
    text-decoration:none!important;
    font-size:15px!important;
    font-weight:850!important;
    box-shadow:0 7px 18px rgba(242,100,50,.20)!important;
  }

  .coolioo-conversion-cart{
    padding-bottom:calc(92px + env(safe-area-inset-bottom))!important;
  }

  /* Keep popular WhatsApp widgets above the cart dock instead of over it. */
  .coolioo-conversion-cart .joinchat,
  .coolioo-conversion-cart .ht-ctc-chat,
  .coolioo-conversion-cart .qlwapp,
  .coolioo-conversion-cart .wa__btn_popup,
  .coolioo-conversion-cart .whatsapp_float{
    bottom:calc(100px + env(safe-area-inset-bottom))!important;
  }
}

@media(max-width:390px){
  .coolioo-conversion-cart .woocommerce-cart-form table.cart tr.cart_item{
    grid-template-columns:70px minmax(0,1fr)!important;
    column-gap:11px!important;
    padding:14px!important;
  }
  .coolioo-conversion-cart td.product-thumbnail img{
    width:70px!important;
    height:70px!important;
    max-width:70px!important;
  }
  .ccc-cart-dock{
    grid-template-columns:minmax(0,1fr) minmax(155px,1.1fr)!important;
  }
}

@media(min-width:981px){
  .ccc-cart-dock{display:none!important;}
}
