/* Hallmark · component: approved product detail · genre: editorial · theme: existing Natursun
 * Self-review: hierarchy, native behavior and restrained presentation; no score/certification claimed.
 * Product-only asset; content and stock still come from native PrestaShop editors/providers.
 */
body#product {
 --ns-ink:#203b34;--ns-muted:#50645c;--ns-paper:#f7f8f3;--ns-soft:#edf1e9;--ns-line:#d4ddd3;--ns-green:#245f48;
 --ns-photo:#fff;
 color:var(--ns-ink);background:var(--ns-paper);
}
body#product[data-bs-theme=dark],html[data-bs-theme=dark] body#product {
 --ns-ink:#e3eee6;--ns-muted:#b0c5b7;--ns-paper:#15251c;--ns-soft:#243b2c;--ns-line:#425b49;
}
body#product .product__container {display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(2rem,5vw,5rem);align-items:start;margin:1rem 0 3.5rem;}
body#product .product__left,body#product .product__right {width:auto;max-width:none;min-width:0;}
body#product .product__right {padding:1.25rem 0 0;display:flex;flex-direction:column;align-items:stretch;}
body#product .product__manufacturer {margin-bottom:1rem;font-size:.875rem;letter-spacing:.04em;}
body#product .product__name {max-width:none;font-size:clamp(2rem,3.2vw,3rem);line-height:1.08;letter-spacing:-.025em;font-weight:650;text-wrap:balance;margin-bottom:1.75rem;}
body#product .product__review-summary {order:5;margin-top:1.75rem;padding-top:0;border-top:0;}
body#product .ps-sharebuttons {font-size:.875rem;color:var(--ns-muted);}
body#product .product__prices {padding:0 0 1.5rem;margin:0 0 1.5rem;border-color:var(--ns-line);}
body#product .product__prices .product__price {font-size:2.25rem;font-weight:700;font-variant-numeric:tabular-nums;}
body#product .product__description-short {font-size:1rem;line-height:1.6;}
body#product .product__description-short:empty {margin:0;}
body#product .product__actions {padding-top:0;border-top:0;}
body#product .product__carousel {overflow:hidden;border-radius:16px;background:#fff;border:0;}
body#product .product__carousel .carousel-item img {height:clamp(24rem,40vw,36rem);width:100%;object-fit:contain;background:#fff;}
body#product .product__thumbnails {margin-top:1rem;}
body#product .product__thumbnails:has(.product__thumbnail-item:only-child) {display:none;}
body#product .product__actions .btn-primary {min-height:3.25rem;font-size:1.0625rem;border-radius:10px;box-shadow:none;background:var(--ns-green);}
body#product .product__actions .btn-primary:hover {background:#194a37;}
body#product .product__actions .product-quantity {gap:.75rem;}
body#product .product__actions .product__availability {padding:0;background:transparent;border:0;border-radius:0;}
body#product .product__story {margin-top:3rem;}
body#product .product__story-heading {padding:0;max-width:none;}
body#product .product__story-heading h2 {font-size:1.875rem;letter-spacing:-.02em;}
body#product .product__story-index {gap:1rem;margin:1.5rem 0 2rem;}
body#product .product__story-index a {border:0;border-bottom:2px solid var(--ns-line);border-radius:0;background:transparent;padding:1rem 0;box-shadow:none;}
body#product .product__story-index a:hover {border-color:var(--ns-green);color:var(--ns-green);}
body#product .product__bottom--single {max-width:none;}
body#product .product__accordion .accordion-item {border-color:var(--ns-line);}
body#product .product__accordion .accordion-button {font-size:1.125rem;padding:1.5rem 0;font-weight:650;}
body#product .product__accordion .accordion-button:focus-visible {outline:2px solid var(--dc-color-focus,var(--ns-green));outline-offset:-2px;}
@media (scripting: none) {
 body#product .product__accordion :is(#product_description,#product_details,#product_attachments) {scroll-margin-block-start:4rem;}
 body#product .product__accordion :is(#product_description,#product_details,#product_attachments) > .accordion-collapse {display:block;}
 body#product .product__accordion :is(#product_description,#product_details,#product_attachments) > .accordion-header > button {display:none;}
 body#product .product__accordion :is(#product_description,#product_details,#product_attachments) > .accordion-header > noscript {display:block;font-size:1.125rem;font-weight:650;padding:1.5rem 0;}
}
body#product .product__description,
body#product .product__accordion .accordion-body { width:100%;max-width:none;font-size:1.125rem;line-height:1.65; }
body#product .product__description > * {max-width:none;}
body#product .product__description h2,body#product .product__description h3 {font-size:1.375rem;line-height:1.3;margin:2rem 0 .75rem;color:var(--ns-ink);}
body#product .product__description p {margin:.75rem 0 1.5rem;color:var(--ns-muted);}
body#product .product__description.rich-text > * + * {margin-block-start:1rem;}
body#product .product__description.rich-text > h2:not(:first-child),body#product .product__description.rich-text > h3:not(:first-child) {margin-block-start:2rem;}
/* Hide only redundant direct breaks after blocks; inline authored breaks remain. */
body#product .product__description > :is(h2,h3,p,ul,ol) + br,
body#product .product__description > :is(h2,h3,p,ul,ol) + br + br {display:none;}
body#product .product__description h2:first-child {margin-top:0;}
body#product .product__carousel {position:relative;}
body#product .product__carousel .wishlist-button-product {position:absolute!important;top:.75rem!important;right:.75rem!important;left:auto!important;bottom:auto!important;}
body#product .wishlist-button-product {background:#fff!important;box-shadow:none;border-radius:50%;}

body#product .product__prices .product__price {font-size:clamp(2.5rem,3.5vw,3rem);font-weight:750;line-height:1.15;letter-spacing:-.025em;}
body#product .product__discount-price {align-items:center;flex-wrap:wrap;gap:.5rem 1rem;margin-bottom:.625rem;}
body#product .product__regular-price {font-size:1rem;}
body#product .product__discount-percentage,body#product .product__discount-amount {display:inline-block;padding:.375rem .625rem;background:var(--ns-soft);color:var(--ns-green)!important;font-size:1rem;font-weight:700;line-height:1.35;border-radius:4px;}
body#product .product__availability {margin-block:0 1rem;}
body#product .product__availability[data-stock-state="last_remaining_items"] {background:transparent;border:0;}
body#product .product__availability[data-stock-state="last_remaining_items"] .product__availability-status {color:var(--dc-color-warning,#805600)!important;font-weight:500;}
body#product .product__availability .product__availability-icon {font-size:1rem;}
body#product .product__name {overflow-wrap:anywhere;}
body#product .product__actions .btn-primary:disabled {opacity:.55;cursor:not-allowed;}
body#product .product__actions .btn-primary:active:not(:disabled) {background:var(--ns-green);transform:translateY(1px);}
body#product .product__actions .btn-primary:focus-visible,body#product .ns-related button:focus-visible,body#product .ns-related__viewport:focus-visible {outline:3px solid var(--ns-green);outline-offset:3px;}
body#product .ns-related {margin-top:2.5rem;min-width:0;}
body#product .ns-related__header {display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.25rem;}
body#product .ns-related__header h2 {margin:0;}
body#product .ns-related__controls {display:flex;align-items:center;gap:.5rem;flex-shrink:0;}
body#product .ns-related__controls[hidden] {display:none;}
body#product .ns-related__controls button {width:44px;height:44px;border:1px solid var(--ns-line);border-radius:50%;background:var(--ns-photo);color:var(--ns-ink);font-size:1.5rem;line-height:1;}
body#product .ns-related__controls button:hover:not(:disabled) {background:var(--ns-soft);}
body#product .ns-related__controls button:active:not(:disabled) {transform:translateY(1px);}
body#product .ns-related__controls button:disabled {opacity:.35;cursor:not-allowed;}
body#product .ns-related__count {font-size:.875rem;min-width:4.5em;text-align:center;font-variant-numeric:tabular-nums;}
body#product .ns-related__viewport {--ns-related-cols:6;--ns-related-gap:1rem;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;padding-block:.25rem 1rem;touch-action:pan-x pan-y;}
body#product .ns-related__viewport > .products {display:grid;grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:calc((100% - (var(--ns-related-cols) - 1)*var(--ns-related-gap))/var(--ns-related-cols));gap:var(--ns-related-gap);margin:0;align-items:stretch;}
body#product .ns-related__viewport .product-miniature {width:auto;max-width:none;min-width:0;margin:0;scroll-snap-align:start;}
body#product .ns-related__viewport .product-miniature__inner {height:100%;}
body#product .ns-related__viewport .product-miniature .price {font-size:1.25rem;font-weight:700;font-variant-numeric:tabular-nums;}
body#product .ns-related__viewport .product-miniature .regular-price {font-size:.875rem;}
body#product .ns-related__viewport.is-dragging {scroll-snap-type:none;cursor:grabbing;user-select:none;}
body#product .ns-related__viewport img {user-select:none;}
@media(min-width:992px) {body#product .product__left {position:sticky;top:7.5rem;}}
@media(max-width:1199px) {body#product .ns-related__viewport {--ns-related-cols:4;}}
@media(max-width:991px) {
 body#product .product__container {grid-template-columns:1fr;gap:1rem;margin:0 0 2.5rem;}
 body#product .product__images {margin-bottom:0;}body#product .product__right {padding:0;}
 body#product .product__name {font-size:2rem;margin-bottom:1rem;text-wrap:pretty;}
 body#product .product__carousel .carousel-item img {height:min(48vw,15rem);}
 body#product .product__prices {margin-bottom:1rem;padding-bottom:1rem;}
 body#product .product__review-summary {margin-block-start:.5rem;padding-block-start:0;}
 /* The entrance animation keeps this column in its own stacking context. */
 body#product .product__right:has(.is-mobile-purchase-fixed) {position:relative;z-index:var(--dc-z-sticky);}
 body#product .product__add-to-cart-container:has(.is-mobile-purchase-fixed) {margin-block-end:0;}
 /* Keep the restock action reachable without a disabled purchase bar. */
 body#product .product__right:has(.product__availability[data-stock-state="unavailable"]):has(.ps-emailalerts--product)
   :is(.product__purchase-placeholder,.product__actions-qty-add) {display:none;}
 body#product .product__right:has(.product__availability[data-stock-state="unavailable"]):has(.ps-emailalerts--product)
   .product__add-to-cart-container {margin-block-end:0;}
 body#product .product__manufacturer {margin-bottom:.75rem;}
 body#product .product__story {margin-top:2.5rem;}body#product .product__story-heading h2 {font-size:1.5rem;}
 body#product .product__story-index {grid-template-columns:1fr;gap:0;margin:1rem 0 1.5rem;}body#product .product__story-index a {padding:.875rem 0;}
 body#product .ns-related__viewport {--ns-related-cols:3;}
}
@media(max-width:767px) {body#product .ns-related__viewport {--ns-related-cols:2;--ns-related-gap:.75rem;}body#product .ns-related__count {display:none;}body#product .ns-related__header {gap:.5rem;}}
@media(max-width:359px) {body#product .ns-related__viewport {--ns-related-cols:1;}}
@media(prefers-reduced-motion:reduce) {body#product .ns-related *{scroll-behavior:auto!important;transition:none!important;}}
