.product-speed-badges{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin:.4rem 0 1rem}.speed-badge{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .7rem;border-radius:999px;font-size:.76rem;font-weight:900}.speed-badge.fast{background:#fff0d7;color:#985000;border:1px solid #ffc675}.product-speed-badges small{color:var(--muted)}.product-tier-pricing{display:flex;align-items:center;gap:.75rem;margin:-.5rem 0 1rem;padding:.8rem 1rem;border:1px solid #ffd0a0;border-radius:14px;background:#fff8ef;color:#8d4800}.product-tier-pricing>i{font-size:1.25rem}.product-tier-pricing span{display:grid}.product-tier-pricing small{color:#7b6755}.product-fulfillment-card{display:flex;align-items:center;gap:.8rem;margin:1rem 0;padding:1rem;border-radius:16px;border:1px solid var(--line);background:#f8f9fb}.product-fulfillment-card .fulfillment-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:#fff}.product-fulfillment-card span:last-child{display:grid}.product-fulfillment-card small{color:var(--muted)}.product-fulfillment-card.fast-track{background:#fff8e8;border-color:#ffc875;color:#8d4800}.product-fulfillment-card.fast-track .fulfillment-icon{background:#f07d00;color:#fff}.product-fulfillment-card.made-to-order{background:#f3f5f8}.product-fulfillment-card.unprinted{background:#eef7ff;border-color:#bddcf7;color:#164e7a}.tier-inline{display:inline-block;margin-left:.35rem;padding:.15rem .4rem;border-radius:999px;background:#fff0d7;color:#985000;font-size:.7rem}.cart-fulfillment{display:flex;gap:.55rem;align-items:flex-start;margin-top:.65rem;padding:.65rem .75rem;border-radius:12px;background:#f5f6f8}.cart-fulfillment span{display:grid}.cart-fulfillment small{color:var(--muted);line-height:1.4}.cart-fulfillment.fast-track{background:#fff5df;color:#8d4800}.cart-fulfillment.unprinted{background:#eef7ff;color:#164e7a}.cart-order-leadtime,.checkout-leadtime{display:flex;gap:.7rem;align-items:center;padding:.9rem;border-radius:14px;background:#f5f6f8;margin:1rem 0}.cart-order-leadtime i,.checkout-leadtime i{font-size:1.3rem;color:#f07d00}.cart-order-leadtime span,.checkout-leadtime span{display:grid}.cart-order-leadtime small,.checkout-leadtime small{color:var(--muted)}.summary-fulfillment{display:block!important;margin-top:.35rem;color:#6b7280}.summary-fulfillment.fast-track{color:#9b5000}.order-fulfillment{display:flex!important;align-items:center;gap:.35rem;margin-top:.4rem;color:#6b7280}.order-fulfillment.fast-track{color:#9b5000}.order-dispatch-banner{max-width:1380px;margin:1rem auto;padding:1rem 1.25rem;border-radius:16px;background:#fff8ef;border:1px solid #ffd0a0;display:flex;align-items:center;gap:.75rem}.order-dispatch-banner i{font-size:1.4rem;color:#f07d00}.order-dispatch-banner span{display:grid}

/* dotShirt 1.14.0 - rustige productflow + Line mockups */
.product-main-image.has-line-artwork{position:relative}.line-design-artwork{position:absolute;z-index:4;left:var(--line-design-left,50%);top:var(--line-design-top,28%);width:var(--line-design-width,38%);height:auto;max-height:54%;object-fit:contain;transform:translateX(-50%);pointer-events:none;filter:drop-shadow(0 2px 2px rgba(0,0,0,.08))}
.line-model-selector{border:0;padding:0;margin:1rem 0}.line-model-selector legend{font-size:.9rem;font-weight:900;margin-bottom:.55rem}.line-model-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.line-model-card{display:flex;align-items:center;justify-content:space-between;gap:.75rem;border:1px solid var(--line);border-radius:14px;padding:.8rem .9rem;background:#fff;color:var(--ink)}.line-model-card span{display:grid}.line-model-card small{color:var(--muted)}.line-model-card em{font-style:normal;font-weight:900}.line-model-card.active{border-color:var(--pink);box-shadow:0 0 0 2px rgba(220,34,87,.08);background:#fff8fa}
.color-swatch-extra{display:none}.color-swatches.show-all .color-swatch-extra{display:grid}.color-more-toggle{margin-top:.55rem;border:0;background:transparent;color:var(--pink);font-weight:800;font-size:.8rem;padding:.35rem 0}
.product-info .product-action-bar{margin-top:1.25rem}.product-promises{margin-top:.9rem}.product-price-live-row{margin-bottom:.5rem}.product-lead{margin-bottom:.65rem}.product-meta-line{padding:.55rem 0}.finish-single-note{margin-top:.65rem}
.reviews-layout{grid-template-columns:minmax(0,1fr) minmax(280px,340px);gap:1.5rem}.reviews-layout h2{font-size:clamp(1.8rem,3vw,2.8rem)}.review-score{margin:.75rem 0 1.25rem}.review-score>strong{font-size:2.3rem}.review-card,.review-form-card{border-radius:16px;padding:1rem}.review-form-card{position:static}
@media(max-width:700px){.line-model-options{grid-template-columns:1fr}.line-design-artwork{max-height:48%}}
.product-card-image{position:relative}.product-card-line-artwork{position:absolute!important;z-index:2;left:var(--line-left,50%);top:var(--line-top,29%);width:var(--line-width,38%)!important;height:auto!important;max-height:48%;object-fit:contain!important;transform:translateX(-50%);pointer-events:none}
.cart-item-image.line-composite{position:relative;display:block}.cart-item-image.line-composite>img:first-child{position:relative;z-index:1}.cart-item-line-artwork{position:absolute!important;z-index:2;left:var(--line-left,50%);top:var(--line-top,28%);width:var(--line-width,40%)!important;height:auto!important;max-height:48%;object-fit:contain!important;transform:translateX(-50%);pointer-events:none}
.line-cart-badge{background:#fff1df!important;color:#9b5000!important}
.product-reviews-clean{background:#f7f7f8}.reviews-clean-head{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;margin-bottom:1.25rem}.reviews-clean-head h2{margin:.2rem 0;font-size:clamp(1.8rem,3vw,2.8rem)}.reviews-clean-head p{margin:0;color:var(--muted)}.reviews-clean-score{display:flex;align-items:center;gap:.8rem;padding:.8rem 1rem;border:1px solid var(--line);border-radius:16px;background:#fff}.reviews-clean-score>strong{font-size:2rem;line-height:1}.reviews-clean-score>span{display:grid}.review-list-clean{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.review-card-clean{min-height:170px;display:flex;flex-direction:column}.review-card-clean p{flex:1}.review-card-clean footer{display:flex;align-items:center;justify-content:space-between;gap:.75rem;color:var(--muted);font-size:.78rem;font-weight:700}.review-card-clean footer span{display:inline-flex;align-items:center;gap:.3rem;color:#146c3c}.review-empty-clean{grid-column:1/-1;display:flex;align-items:center;gap:.9rem;padding:1.2rem;border:1px dashed #cfd2d8;border-radius:16px;background:#fff}.review-empty-clean>i{font-size:1.5rem;color:var(--pink)}.review-empty-clean span{display:grid}.review-empty-clean small{color:var(--muted)}.review-compose-card{margin-top:1rem;border:1px solid var(--line);border-radius:16px;background:#fff;overflow:hidden}.review-compose-card>summary{list-style:none;cursor:pointer;padding:1rem 1.1rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.review-compose-card>summary::-webkit-details-marker{display:none}.review-compose-card>summary>span{display:grid;grid-template-columns:auto 1fr;column-gap:.6rem}.review-compose-card>summary>span>i{grid-row:1/3;color:#f2a100}.review-compose-card>summary small{color:var(--muted)}.review-compose-body{border-top:1px solid var(--line);padding:1rem}.review-compose-form{display:grid;grid-template-columns:180px 1fr;gap:.8rem}.review-compose-form label{display:grid;gap:.35rem;font-weight:800}.review-compose-form input,.review-compose-form select,.review-compose-form textarea{width:100%;border:1px solid var(--line);border-radius:12px;padding:.75rem}.review-compose-wide{grid-column:1/-1}.review-compose-actions{display:flex;align-items:center;justify-content:space-between;gap:1rem}.review-compose-actions small{color:var(--muted)}.review-login-compact{display:flex;align-items:center;justify-content:space-between;gap:1rem}.review-login-compact p{margin:0}.review-login-compact>div{display:flex;gap:.5rem}
@media(max-width:700px){.reviews-clean-head{align-items:flex-start;flex-direction:column}.review-list-clean{grid-template-columns:1fr}.review-compose-form{grid-template-columns:1fr}.review-compose-wide{grid-column:1}.review-compose-actions,.review-login-compact{align-items:stretch;flex-direction:column}.review-login-compact>div{display:grid}}

/* dotShirt 1.14.1 — Line productkaart: basis + artwork blijven één vaste compositie op hover */
.product-card-image>.product-card-composite{position:absolute;inset:0;display:block;overflow:hidden;background:#fafafa;transition:transform .45s ease;transform-origin:center center}
.product-card-image>.product-card-composite>.product-card-base-image{position:absolute!important;inset:0;width:100%!important;height:100%!important;object-fit:contain!important;background:#fafafa!important;transform:none!important;transition:none!important}
.product-card-image>.product-card-composite>.product-card-line-artwork{position:absolute!important;z-index:2;left:var(--line-left,50%);top:var(--line-top,29%);width:var(--line-width,38%)!important;height:auto!important;max-height:48%;object-fit:contain!important;background:transparent!important;transform:translateX(-50%)!important;transition:none!important;pointer-events:none}
.product-card:hover .product-card-image>.product-card-composite{transform:scale(1.035)}
.product-card:hover .product-card-image>.product-card-composite>.product-card-base-image{transform:none!important}
.product-card:hover .product-card-image>.product-card-composite>.product-card-line-artwork{transform:translateX(-50%)!important;background:transparent!important}


/* dotShirt 1.14.9 — Line artwork autoscaler
   De uploadresolutie bepaalt nooit meer de zichtbare grootte. Het artwork wordt
   binnen een vaste veilige printzone gepast met behoud van de originele verhouding. */
.product-main-image.has-line-artwork>.line-design-artwork{
  position:absolute!important;
  z-index:4!important;
  left:var(--line-design-left,50%)!important;
  top:var(--line-design-top,28%)!important;
  width:var(--line-design-width,38%)!important;
  height:46%!important;
  max-width:var(--line-design-width,38%)!important;
  max-height:46%!important;
  object-fit:contain!important;
  object-position:50% 0!important;
  transform:translateX(-50%)!important;
  background:transparent!important;
  pointer-events:none!important;
}
.product-card-image>.product-card-composite>.product-card-line-artwork{
  width:var(--line-width,38%)!important;
  height:44%!important;
  max-width:var(--line-width,38%)!important;
  max-height:44%!important;
  object-fit:contain!important;
  object-position:50% 0!important;
}
.cart-item-image.line-composite>.cart-item-line-artwork{
  width:var(--line-width,40%)!important;
  height:44%!important;
  max-width:var(--line-width,40%)!important;
  max-height:44%!important;
  object-fit:contain!important;
  object-position:50% 0!important;
}
@media(max-width:700px){
  .product-main-image.has-line-artwork>.line-design-artwork{height:44%!important;max-height:44%!important}
}
