/* Balanced design approved for production — all product pages. No prices, stock or order logic. */
body#product #main .product__right { container-type:inline-size; }
body#product #main .ddd-product-heading { font-size:28px;line-height:1.28;font-weight:600;letter-spacing:-.02em; }
body#product #main .product__right #product-details { display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 18px; }
body#product #main .product-reference { margin:0;color:#626862;font-size:12px; }
body#product #main .ddd-balanced-brand { float:none!important;display:block;width:auto!important;height:28px!important;max-width:100px;object-fit:contain; }
body#product #main [id^="product-description-short-"] { font-size:14px;line-height:1.6; }
body#product #main [id^="product-description-short-"] .ddd-balanced-spacer,
body#product #main [id^="product-description-short-"] > p:empty,
body#product #main [id^="product-description-short-"] > p > br { display:none; }
body#product #main [id^="product-description-short-"] > p { margin:12px 0; }
body#product #main [id^="product-description-short-"] > p > strong { font-size:14px;font-weight:500;color:#555c56; }
body#product #main [id^="product-description-short-"] table { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%!important;border:0!important;margin:10px 0 14px!important; }
body#product #main [id^="product-description-short-"] tbody,
body#product #main [id^="product-description-short-"] tr { display:contents; }
body#product #main [id^="product-description-short-"] td { box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;gap:5px;width:auto!important;min-width:0;min-height:76px;padding:12px 14px!important;border:1px solid #e2e5e2!important;border-radius:10px;background:#f8f9f7!important; }
body#product #main [id^="product-description-short-"] td p { margin:0!important; }
body#product #main [id^="product-description-short-"] td p:first-child { font-size:12px!important;line-height:1.35;color:#616761!important; }
body#product #main [id^="product-description-short-"] td p:last-child { font-size:18px!important;line-height:1.3;font-weight:500;color:#242824; }
body#product #main .product_description_short__linkToDescription { margin:10px 0 0;font-size:13px; }
body#product #main .product-prices { display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 20px;margin:18px 0;padding-top:18px;border-top:1px solid #e5e7e4; }
body#product #main .product-prices > :not(.ddd-balanced-reviews) { grid-column:1; }
body#product #main .product-price { margin:0; }
body#product #main .product-without-taxes { margin:0 0 4px;font-size:30px;font-weight:600;line-height:1.2;letter-spacing:-.025em; }
body#product #main .current-price-value { font-size:14px;line-height:1.4;font-weight:400;color:#626862; }
body#product #main .ddd-balanced-reviews { grid-column:2;grid-row:1;display:flex;flex-direction:column;gap:4px;max-width:180px;text-align:right;font-size:12px;line-height:1.4;color:#616761; }
body#product #main .ddd-balanced-reviews a { color:#363d37;text-decoration:underline;text-underline-offset:3px; }
body#product #main .ddd-balanced-review-source { display:none!important; }
body#product #main .product-add-to-cart > .control-label[hidden] { display:none!important; }
body#product #main .product-add-to-cart .product-quantity { display:grid;grid-template-columns:100px minmax(0,1fr);gap:18px 10px;align-items:end;margin:0; }
body#product #main .product-quantity::after { display:none; }
body#product #main .product-quantity > * { min-width:0; }
body#product #main .product-quantity > .ddd-delivery-panel { grid-column:1 / -1;grid-row:1;box-sizing:border-box;width:100%;margin:0;padding:13px 15px;background:#f7f8f6;border:1px solid #e2e5e2;border-radius:10px; }
body#product #main .tf-free-shipping-message { margin:0;padding:0;min-height:0;background:none;border:0;color:#303831; }
body#product #main .tf-free-shipping-text,
body#product #main .tf-free-shipping-text strong { font-size:16px;line-height:1.4;font-weight:600; }
body#product #main .tf-free-shipping-icon { width:21px;height:21px; }
body#product #main .tf-availability { margin:6px 0 0;padding:0;min-height:0;border:0;background:none;font-size:13px;line-height:1.45; }
body#product #main .tf-stock-icon { flex:0 0 18px;width:18px;height:18px; }
body#product #main .tf-stock-label { font-weight:500;color:#3d6647; }
body#product #main .tf-shipping-window { font-weight:400;color:#535c55; }
body#product #main .product-quantity > .qty { display:block;grid-column:1;grid-row:2;width:100px;margin:0; }
body#product #main .ddd-balanced-quantity-label { display:block;margin:0 0 5px;font-size:12px;line-height:18px;font-weight:400;text-align:center;color:#616761; }
body#product #main .product-quantity > .tf-purchase-actions { display:grid;grid-column:2;grid-row:2;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:end;gap:10px;width:100%;margin:0; }
body#product #main .product-add-to-cart .tf-cart-column,
body#product #main .product-add-to-cart .tf-quote-column,
body#product #main .product-add-to-cart .quote-button-container { display:block;width:100%;min-width:0;margin:0; }
body#product #main .product-add-to-cart .add-to-cart,
body#product #main .product-add-to-cart .add-to-quote-btn { box-sizing:border-box;display:flex!important;align-items:center;justify-content:center;gap:8px;width:100%!important;min-width:0;height:50px;min-height:50px;margin:0!important;padding:10px 12px!important;border:1px solid #252a26;border-radius:999px;font-family:inherit;font-size:13px;font-weight:600;line-height:1.2;text-transform:none;white-space:nowrap;box-shadow:none; }
body#product #main .product-add-to-cart .add-to-cart { background:#202420!important;color:#fff!important; }
body#product #main .product-add-to-cart .add-to-cart:hover:not(:disabled) { background:#394039!important; }
body#product #main .product-add-to-cart .add-to-quote-btn { background:#fff!important;color:#252a26!important;border-color:#838b84; }
body#product #main .product-add-to-cart .add-to-quote-btn:hover:not(:disabled) { background:#f4f5f2!important; }
body#product #main .product-add-to-cart .add-to-quote-btn::before { content:'';display:block;flex:0 0 16px;width:16px;height:18px;background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3H6a1 1 0 0 0-1 1v16a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V8zM14 3v5h5M9 12h6M9 16h6'/%3E%3C/svg%3E") center/contain no-repeat; }
body#product #main .product-add-to-cart button:disabled { opacity:.5;cursor:not-allowed; }
body#product #main .product-add-to-cart button:focus-visible,
body#product #main .ddd-balanced-reviews a:focus-visible { outline:2px solid #343c36;outline-offset:3px; }
body#product #main .product-quantity .bootstrap-touchspin { box-sizing:border-box;display:grid;grid-template-columns:31px 36px 31px;align-items:center;width:100px;height:50px;border:1px solid #d1d6d0;border-radius:9px;overflow:hidden;box-shadow:none; }
body#product #main .product-quantity #quantity_wanted { grid-column:2;grid-row:1;box-sizing:border-box;width:36px!important;min-height:48px;height:48px;margin:0!important;padding:0!important;border:0!important;background:#fff;box-shadow:none;appearance:textfield;text-align:center;font-size:16px;font-weight:400; }
body#product #main .product-quantity #quantity_wanted::-webkit-inner-spin-button { appearance:none; }
body#product #main .product-quantity .input-group-btn-vertical { display:contents; }
body#product #main .product-quantity .btn-touchspin { position:static;transform:none!important;grid-row:1;display:flex;align-items:center;justify-content:center;width:31px!important;height:48px!important;min-width:0;margin:0!important;padding:0!important;border:0!important;border-radius:0;background:#fff;color:#4c544d;box-shadow:none; }
body#product #main .product-quantity .bootstrap-touchspin-down { grid-column:1; }
body#product #main .product-quantity .bootstrap-touchspin-up { grid-column:3; }
body#product #main .product-quantity .btn-touchspin:hover { background:#f3f5f1; }
body#product #main .product-quantity .btn-touchspin i,
body#product #main .product-quantity .btn-touchspin::after { display:none; }
body#product #main .product-quantity .btn-touchspin::before { display:block;position:static;width:auto;height:auto;background:none;font:400 20px/1 Arial,sans-serif;color:inherit; }
body#product #main .product-quantity .bootstrap-touchspin-down::before { content:'−'; }
body#product #main .product-quantity .bootstrap-touchspin-up::before { content:'+'; }
body#product #main #ddd-product-payments { grid-column:1 / -1;grid-row:3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;width:100%;max-width:100%;margin:0;padding:13px 0 0;border-top:1px solid #e5e7e4; }
body#product #main .ddd-payments-title { display:flex;align-items:center;justify-content:center;gap:6px;margin:0;font-size:12px;font-weight:400;line-height:1.4;color:#616761; }
body#product #main .ddd-payments-title::before { content:'';display:block;width:13px;height:15px;background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='10' width='16' height='11' rx='2'/%3E%3Cpath d='M8 10V7a4 4 0 0 1 8 0v3M12 14v3'/%3E%3C/svg%3E") center/contain no-repeat; }
body#product #main .ddd-payments-logos { display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;width:auto;max-width:100%; }
body#product #main .ddd-payments-logos img { flex:0 0 auto;width:48px!important;min-width:0;max-width:48px!important;height:32px!important;object-fit:contain; }
body#product #main .product-quantity > .ddd-product-reassurances { grid-column:1 / -1;grid-row:4;margin:0; }
body#product #main .ddd-product-reassurances .elementor-widget-image img { width:40px!important;height:40px!important; }
body#product #main .ddd-product-reassurances .widget-image-caption { font-size:12px!important;line-height:1.4; }
@container (max-width:560px) {
 body#product #main .product-quantity > .tf-purchase-actions { grid-template-columns:minmax(0,1fr); }
 body#product #main .product-quantity > .qty { align-self:start; }
 body#product #main .product-quantity > .tf-purchase-actions { padding-top:23px; }
}
@media(max-width:575px) {
 body#product #main .ddd-product-heading { font-size:24px; }
 body#product #main .product-container { gap:22px; }
 body#product #main [id^="product-description-short-"] td { min-height:78px;padding:11px!important; }
 body#product #main [id^="product-description-short-"] td p:last-child { font-size:17px!important; }
 body#product #main .product-prices { gap:8px 12px; }
 body#product #main .product-without-taxes { font-size:27px; }
 body#product #main .ddd-balanced-reviews { max-width:120px; }
 body#product #main .product-quantity { grid-template-columns:90px minmax(0,1fr); }
 body#product #main .product-add-to-cart .add-to-cart,
 body#product #main .product-add-to-cart .add-to-quote-btn { font-size:12px;gap:6px;padding:10px 8px!important; }
 body#product #main .product-quantity > .qty { width:90px; }
 body#product #main .product-quantity .bootstrap-touchspin { width:90px;grid-template-columns:28px 32px 28px; }
 body#product #main .product-quantity .btn-touchspin { width:28px!important; }
 body#product #main .product-quantity #quantity_wanted { width:32px!important; }
 body#product #main .ddd-payments-logos { gap:6px; }
}

body#product #main .ddd-price-reviews:has(.ddd-balanced-review-source) { display:none!important; }

/* Compact top: hide only the reference displayed above the key features. */
body#product #main .product__right #product-details > .product-reference { display:none; }
body#product #main .product__right #product-details:has(> .product-reference:only-child) { display:none;margin:0; }

/* Bring the key-feature label 12px closer to the product title. */
body#product #main .product__right [id^="product-description-short-"] > p:has(+ table) { margin-top:0; }
