.gallery-main.zoom-container{ position:relative; overflow:hidden; cursor:zoom-in; isolation:isolate; }
.gallery-main.zoom-container #mainProductImage{ user-select:none; pointer-events:none; transform:none !important; transition:none !important; }
.product-magnifier-lens{ position:absolute; left:50%; top:50%; width:min(500px, calc(100% - 34px)); height:min(500px, calc(100% - 34px)); border:1px solid #eadde3; border-radius:0; background-color:#fff; background-repeat:no-repeat; box-shadow:0 22px 70px rgba(17,17,17,.24); opacity:0; pointer-events:none; transform:translate(-50%,-50%) scale(.985); transition:opacity .18s ease, transform .18s ease; z-index:30; overflow:hidden; }
.gallery-main.zoom-container.is-magnifying .product-magnifier-lens{ opacity:1; transform:translate(-50%,-50%) scale(1); }
.zoom-box-label{ position:absolute; left:16px; top:16px; padding:6px 11px; border-radius:0; background:rgba(17,17,17,.82); color:#fff; font-size:11px; font-weight:700; letter-spacing:.3px; z-index:2; }
.product-lightbox{ position:fixed; inset:0; display:none; align-items:center; justify-content:center; padding:30px; z-index:9999; }
.product-lightbox.is-open{ display:flex; }
.product-lightbox-backdrop{ position:absolute; inset:0; background:rgba(17,17,17,.72); backdrop-filter:blur(8px); }
.product-lightbox-panel{ position:relative; width:min(1100px,92vw); max-width:92vw; max-height:92vh; background:#fff; border-radius:0; padding:12px; box-shadow:0 30px 90px rgba(0,0,0,.28); z-index:1; box-sizing:border-box; display:flex; align-items:center; justify-content:center; overflow:hidden; }
.product-lightbox-panel img{ display:block; width:auto; height:auto; max-width:100%; max-height:calc(92vh - 24px); object-fit:contain !important; object-position:center center; margin:0; padding:0; border:0; background:#fff; }
.product-lightbox-close{ position:absolute; right:0px; top:0px; width:48px; height:48px; border-radius:0%; background:#111; color:#fff; display:flex; align-items:center; justify-content:center; box-shadow:0 16px 35px rgba(0,0,0,.28); z-index:2; }
.product-lightbox-close:hover{ background:#d83a73; }
.shade-options{ display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.shade-option{ width:auto; min-width:64px; min-height:48px; padding:8px 13px; gap:9px; border-radius:0; }
.shade-option .shade-swatch{ width:24px; height:24px; flex:0 0 24px; border-radius:50%; border:2px solid #fff; box-shadow:0 0 0 1px #e5e5e5; }
.shade-option .shade-name{ font-size:16px; font-weight:700; }
.shade-option.active{ border-color:#111; background:#111; color:#fff; }
.shade-option.active .shade-swatch{ box-shadow:0 0 0 1px rgba(255,255,255,.8); }
@media(max-width:768px){
.product-magnifier-lens{ display:none; }
.gallery-main.zoom-container{ cursor:default; }
.product-lightbox{ padding:16px; }
.product-lightbox-panel{ width:100%; max-width:100%; max-height:94vh; padding:8px; border-radius:0; }
.product-lightbox-panel img{ max-width:100%; max-height:calc(94vh - 16px); }
.product-lightbox-close{ right:10px; top:10px; }
}
.out-stock{ color:#dc3545; }
.reviews-section, .related-products{ margin-top:80px; }
.reviews-layout{ display:grid; grid-template-columns:minmax(0,1fr) 380px; gap:30px; align-items:start; }
.reviews-list{ display:grid; gap:18px; }
.review-card, .review-form{ padding:24px; border:1px solid #ececec; border-radius:0; background:#fff; box-shadow:0 10px 30px rgba(0,0,0,.04); }
.review-card h4{ margin:10px 0 8px; color:#111; font-family:'KMR Waldenburg Buch', Arial, sans-serif; }
.review-card p{ color:#666; line-height:1.8; }
.review-card span{ color:#999; font-size:16px; }
.review-form{ display:grid; gap:16px; }
.review-form h3{ margin:0; color:#111; font-family:'KMR Waldenburg Buch', Arial, sans-serif; }
.review-form label{ display:grid; gap:8px; color:#111; font-weight:700; font-size:16px; }
.review-form input, .review-form select, .review-form textarea{ width:100%; border:1px solid #e8e8e8; border-radius:0; padding:0 16px; min-height:48px; outline:none; font:inherit; }
.review-form textarea{ min-height:120px; padding:16px; }
.auth-alert{ padding:16px 16px; border-radius:0; margin-bottom:22px; font-size:16px; font-weight:600; }
.auth-alert.error{ background:#fdecef; color:#b02a37; border:1px solid #f5c6cf; }
.auth-alert.success{ background:#eaf8ef; color:#198754; border:1px solid #cbeed7; }
@media(max-width:992px){
.reviews-layout{ grid-template-columns:1fr; }
}
/* Product detail information accordions */ .product-info-accordions{margin:28px 0 22px;border-top:1px solid #ececec;}
.product-info-accordion{border-bottom:1px solid #ececec;}
.product-info-accordion-toggle{ width:100%;min-height:68px;padding:0;border:0;background:transparent; display:flex;align-items:center;justify-content:space-between;gap:20px; color:#111;text-align:left;cursor:pointer;font-family:inherit; font-size:17px;font-weight:500;text-transform:uppercase;letter-spacing:.02em; font-family:'KMR Waldenburg Buch', Arial, sans-serif; }
.product-info-accordion-toggle i{ width:34px;height:34px;border:1px solid #ededed;border-radius:50%; display:flex;align-items:center;justify-content:center;flex:0 0 34px; font-size:16px;transition:transform .25s ease,background-color .25s ease; }
.product-info-accordion-toggle[aria-expanded="true"] i{transform:rotate(180deg);background:#fafafa;}
.product-info-accordion-panel{overflow:hidden;}
.product-info-accordion-content{padding:0 42px 20px 0;color:#555;font-size:16px;line-height:1.85;}
@media (max-width:768px){
.product-info-accordions{margin-top:22px;}
.product-info-accordion-toggle{min-height:60px;font-size:15px;}
.product-info-accordion-content{padding-right:0;font-size:16px;}
}

/* ==========================================================
   INSTA COLORS — PREMIUM GLOBAL BRAND SYSTEM
   Calm luxury / editorial storefront system.
   Typography and visual hierarchy only; no JS/functionality changes.
========================================================== */
:root{
--ic-black:#111111;
--ic-white:#ffffff;
--ic-offwhite:#fbfaf9;
--ic-text:#1b1b1b;
--ic-muted:#6b6b6b;
--ic-line:#e7e4e5;
--ic-pink:#d72f6d;
--ic-pink-dark:#b92359;
--ic-pink-soft:#fff5f8;
--ic-body-font:"KMR Waldenburg Buch",sans-serif;
--ic-heading-font:Inter,sans-serif;
}
html{font-size:16px;}
body{font-family:var(--ic-body-font)!important;font-size:16px!important;font-weight:400!important;line-height:1.55;color:var(--ic-text);}
body :where(p,li,a,label,input,textarea,select,option,button,small,span,td,th){font-family:var(--ic-body-font)!important;font-size:16px!important;font-weight:400!important;line-height:1.55;}
body :where(strong,b){font-family:var(--ic-body-font)!important;font-weight:500!important;}
body :where(h1,h2,h3,h4,h5,h6,.heading,.section-title,.section-heading,.page-title,.page-heading,.hero-title,.card-title,.product-title,.feature-title,.checkout-title,.account-title,.cart-title){font-family:var(--ic-heading-font)!important;font-weight:400!important;color:var(--ic-black);}
body :where(h1){font-size:48px!important;line-height:1.08!important;letter-spacing:-.025em;}
body :where(h2){font-size:38px!important;line-height:1.12!important;letter-spacing:-.02em;}
body :where(h3){font-size:28px!important;line-height:1.18!important;letter-spacing:-.015em;}
body :where(h4){font-size:22px!important;line-height:1.25!important;}
body :where(h5){font-size:18px!important;line-height:1.3!important;}
body :where(h6){font-size:16px!important;line-height:1.35!important;}
body :where(.page-title,.page-heading,.hero-title){font-family:var(--ic-heading-font)!important;font-size:48px!important;font-weight:400!important;line-height:1.08!important;}
body :where(.section-title,.section-heading,.checkout-title,.account-title,.cart-title){font-family:var(--ic-heading-font)!important;font-size:38px!important;font-weight:400!important;line-height:1.12!important;}
body :where(.card-title,.product-title,.feature-title){font-family:var(--ic-heading-font)!important;font-size:20px!important;font-weight:400!important;line-height:1.3!important;}
body :where(.section-subtitle,.section-eyebrow,.eyebrow,.kicker){font-family:var(--ic-body-font)!important;font-size:11px!important;font-weight:500!important;letter-spacing:.18em!important;text-transform:uppercase;}
body :where(input,textarea,select){font-size:15px!important;}
body :where(button,.btn,.button){font-size:14px!important;font-weight:400!important;letter-spacing:.01em;}
body :where(.text-muted,.muted,.section-description,.hero-description){color:var(--ic-muted);}
body :where(a){color:inherit;text-decoration:none;}
body :where(a:hover){color:var(--ic-pink);}
::selection{background:var(--ic-pink);color:#fff;}

/* Header — restrained, premium, no visual noise. */
.topbar{background:var(--ic-black)!important;color:#fff!important;font-size:13px!important;box-shadow:none!important;}
.topbar a{font-size:13px!important;color:#fff!important;}
.site-header{background:#fff!important;box-shadow:0 1px 0 var(--ic-line)!important;border-bottom:1px solid var(--ic-line)!important;}
.site-header.sticky{box-shadow:0 1px 0 var(--ic-line)!important;}
.navbar{min-height:78px;}
.nav-menu{gap:34px;}
.nav-menu>li>a{font-family:var(--ic-body-font)!important;font-size:16px!important;font-weight:400!important;letter-spacing:0!important;padding:28px 0!important;color:var(--ic-black)!important;}
.nav-menu>li>a:hover,.nav-menu>li>a.active{color:var(--ic-pink)!important;}
.dropdown{border:1px solid var(--ic-line)!important;border-radius:0!important;box-shadow:0 12px 35px rgba(17,17,17,.08)!important;}
.dropdown li a{font-family:var(--ic-body-font)!important;font-size:14px!important;font-weight:400!important;}

/* Common luxury surface language. */
body :where(.card,.product-card,.category-card,.account-card,.summary-card,.wishlist-card,.order-card,.address-card,.auth-card,.auth-info,.inner-card,.inner-sidebar-card){border-radius:0!important;box-shadow:none!important;border:1px solid var(--ic-line);}
body :where(.product-card,.category-card,.wishlist-card){transition:border-color .2s ease!important;}
body :where(.product-card:hover,.category-card:hover,.wishlist-card:hover){transform:none!important;box-shadow:none!important;border-color:#d2ced0!important;}
body :where(.product-card img,.category-card img,.wishlist-card img){transition:none!important;transform:none!important;filter:none!important;}

/* Buttons — one strong brand action, not multiple competing treatments. */
body :where(.btn,.button,.homepage-category-btn,.category-btn){border-radius:0!important;box-shadow:none!important;font-family:var(--ic-body-font)!important;font-weight:400!important;}
body :where(.btn-primary,.btn-dark,.btn-block,.homepage-category-btn){background:var(--ic-black)!important;color:#fff!important;border-color:var(--ic-black)!important;}
body :where(.btn-primary:hover,.btn-dark:hover,.btn-block:hover,.homepage-category-btn:hover){background:var(--ic-pink)!important;color:#fff!important;border-color:var(--ic-pink)!important;transform:none!important;}

/* Footer — black, quiet, editorial. */
footer,.site-footer{background:var(--ic-black)!important;color:#d9d9d9!important;border-top:0!important;}
footer h1,footer h2,footer h3,footer h4,footer h5,footer h6,.site-footer h1,.site-footer h2,.site-footer h3,.site-footer h4,.site-footer h5,.site-footer h6{font-family:var(--ic-heading-font)!important;color:#fff!important;font-weight:400!important;}
footer p,footer li,footer a,footer span,footer small,.site-footer p,.site-footer li,.site-footer a,.site-footer span,.site-footer small{font-family:var(--ic-body-font)!important;color:#bdbdbd!important;font-size:15px!important;font-weight:400!important;line-height:1.7;}
footer a:hover,.site-footer a:hover{color:#fff!important;}
footer .footer-title,footer .widget-title,.site-footer .footer-title,.site-footer .widget-title{font-size:18px!important;font-weight:400!important;letter-spacing:.01em;}
footer .footer-distributor{background:var(--ic-pink)!important;}
footer .footer-distributor p,footer .footer-distributor a{color:#fff!important;}
footer .footer-bottom,.site-footer .footer-bottom{border-top:1px solid rgba(255,255,255,.12)!important;}

/* Mobile hierarchy. */
@media(max-width:768px){
body{font-size:15px!important;}
body :where(p,li,a,label,input,textarea,select,option,button,small,span,td,th){font-size:15px!important;}
body :where(h1){font-size:38px!important;}
body :where(h2){font-size:32px!important;}
body :where(h3){font-size:24px!important;}
body :where(h4){font-size:20px!important;}
body :where(h5){font-size:17px!important;}
body :where(h6){font-size:15px!important;}
body :where(.page-title,.page-heading,.hero-title){font-size:38px!important;}
body :where(.section-title,.section-heading,.checkout-title,.account-title,.cart-title){font-size:32px!important;}
body :where(.card-title,.product-title,.feature-title){font-size:18px!important;}
.nav-menu>li>a{font-size:15px!important;}
footer p,footer li,footer a,footer span,footer small,.site-footer p,.site-footer li,.site-footer a,.site-footer span,.site-footer small{font-size:14px!important;}
}


/* ==========================================================
   INSTA COLORS — PREMIUM PRODUCT DETAIL EXPERIENCE
   Editorial luxury / large-brand storefront system.
   Visual layer only; existing PHP/JS behaviour is preserved.
   ========================================================== */

:root{
    --ic-black:#111111;
    --ic-white:#ffffff;
    --ic-offwhite:#fbfaf9;
    --ic-text:#1b1b1b;
    --ic-muted:#6b6b6b;
    --ic-line:#e7e4e5;
    --ic-pink:#d72f6d;
    --ic-pink-dark:#b92359;
    --ic-pink-soft:#fff5f8;
    --ic-body-font:"KMR Waldenburg Buch",sans-serif;
    --ic-heading-font:Inter,sans-serif;
}

.product-page,
#main-content{
    color:var(--ic-text);
    font-family:var(--ic-body-font);
}

#main-content :where(p,li,a,label,input,textarea,select,option,button,small,span){
    font-family:var(--ic-body-font);
}

#main-content :where(h1,h2,h3,h4,h5,h6){
    font-family:var(--ic-heading-font) !important;
    font-weight:400 !important;
    color:var(--ic-black);
}

/* Hero / breadcrumb */
.product-banner{
    padding:64px 0 48px !important;
    background:linear-gradient(135deg,#fff 0%,#fff6f9 100%) !important;
    border-bottom:1px solid var(--ic-line);
}
.product-banner .shop-banner-content{max-width:1100px;margin:0 auto;text-align:center;}
.product-banner h1{
    max-width:850px;
    margin:0 auto 18px !important;
    font-family:var(--ic-heading-font) !important;
    font-size:clamp(38px,4.2vw,58px) !important;
    line-height:1.06 !important;
    letter-spacing:-.035em !important;
    font-weight:400 !important;
}
.product-banner .breadcrumb{justify-content:center;color:var(--ic-muted);font-size:13px !important;gap:10px;}

/* Main product layout */
.product-details{padding:78px 0 100px !important;background:#fff;}
.product-wrapper{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:72px !important;align-items:start;}
.product-gallery{position:sticky;top:105px;}

.gallery-main.zoom-container{
    position:relative;
    min-height:650px;
    width:100%;
    margin:0 !important;
    padding:0 !important;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    background:#fff;
    border:1px solid var(--ic-line);
    border-radius:0 !important;
    box-sizing:border-box;
}
.gallery-main.zoom-container #mainProductImage{
    display:block;
    width:100%;
    height:100%;
    min-width:0;
    min-height:0;
    margin:0 !important;
    padding:0 !important;
    border:0;
    object-fit:cover;
    object-position:center;
    background:#fff;
}
.gallery-badge{
    position:absolute;top:22px;left:22px;z-index:5;
    min-height:38px;padding:0 13px;display:flex;align-items:center;justify-content:center;
    background:var(--ic-pink) !important;color:#fff !important;
    font-size:12px !important;font-weight:500 !important;letter-spacing:.06em;
}
.zoom-btn{
    position:absolute;right:20px;top:20px;z-index:5;width:46px;height:46px;
    display:flex;align-items:center;justify-content:center;border:1px solid var(--ic-line);
    border-radius:50%;background:#fff;color:var(--ic-black);box-shadow:none;transition:none;
}
.zoom-btn:hover{background:var(--ic-black);border-color:var(--ic-black);color:#fff;}
.gallery-thumbs{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:0px;margin-top:12px;     border:0px solid #dcdcdc;}
.gallery-thumbs .thumb{
    height:auto;
    width:100%;
    margin:0 !important;
    padding:0 !important;
    display:block;
    overflow:hidden;
    background:#fff;

    border-radius:0 !important;
    cursor:pointer;
    transition:none;
    box-sizing:border-box;
}

.gallery-thumbs .thumb img{
    display:block;
    width:100%;
    height:100%;
    margin:0 !important;
    padding:0 !important;
    border:1px solid #dcdcdc;
    object-fit:contain;
    object-position:center;
	
}

.gallery-thumbs .thumb img:hover{
    display:block;
    width:100%;
    height:100%;
    margin:0 !important;
    padding:0 !important;
    object-fit:contain;
	border:1px solid #eeeeee;
    object-position:center;
	
}

/* Information hierarchy */
.product-info{padding-top:4px;}
.product-brand{
    display:inline-block;margin-bottom:13px;color:var(--ic-pink) !important;
    font-family:var(--ic-body-font) !important;font-size:12px !important;font-weight:500 !important;
    letter-spacing:.2em !important;text-transform:uppercase;
}
.product-info .product-title{
    margin:0 0 15px !important;font-family:var(--ic-heading-font) !important;
    font-size:clamp(34px,3.5vw,50px) !important;line-height:1.08 !important;
    letter-spacing:-.03em !important;font-weight:400 !important;
}
.product-sku{display:flex;gap:6px;color:#8a8a8a;font-size:12px !important;letter-spacing:.04em;margin-bottom:18px;}
.product-sku strong{color:#444;font-weight:500 !important;}
.product-rating{display:flex;align-items:center;gap:9px;margin-bottom:24px;padding-bottom:22px;border-bottom:1px solid var(--ic-line);}
.product-rating .stars{color:#e9a400;display:flex;gap:2px;}
.product-rating .stars i{font-size:14px !important;}
.product-rating .rating-value,.product-rating .review-count{color:#666;font-size:13px !important;}
.product-rating .review-count a{color:#555;text-decoration:underline;text-underline-offset:3px;}
.product-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:13px;margin:0 0 14px;}
.product-price .current-price{color:var(--ic-black) !important;font-family:var(--ic-heading-font) !important;font-size:32px !important;line-height:1.15;font-weight:500 !important;letter-spacing:-.02em;}
.product-price .old-price{color:#888 !important;font-size:16px !important;text-decoration:line-through;}
.discount-tag{display:inline-flex;align-items:center;min-height:30px;padding:0 9px;background:var(--ic-pink-soft);color:var(--ic-pink) !important;font-size:11px !important;font-weight:500 !important;letter-spacing:.06em;text-transform:uppercase;}
.availability{display:inline-flex;align-items:center;min-height:32px;margin:2px 0 22px;font-size:13px !important;font-weight:500 !important;}
.availability.in-stock{color:#287a58;}
.availability.in-stock::before{content:"";width:7px;height:7px;margin-right:8px;border-radius:50%;background:#2ca85a;}
.availability.out-stock{color:#b32645;}
.product-description{max-width:650px;margin:0 0 12px;color:#5f5f5f !important;font-size:16px !important;line-height:1.85 !important;}

/* Accordions */
.product-info-accordions{margin:20px 0 22px !important;border-top:1px dashed var(--ic-line) !important;}
.product-info-accordion{border-bottom:1px solid var(--ic-line) !important;}
.product-info-accordion-toggle{min-height:62px !important;color:var(--ic-black) !important;font-family:var(--ic-body-font) !important;font-size:13px !important;font-weight:500 !important;letter-spacing:.1em !important;}
.product-info-accordion-toggle i{width:32px;height:32px;flex:0 0 32px;border:1px solid var(--ic-line);}
.product-info-accordion-content{padding:0 45px 19px 0 !important;color:#666 !important;font-size:15px !important;line-height:1.8 !important;}

/* Features */
.product-features{display:grid;gap:10px;margin:20px 0 26px;padding:0;list-style:none;}
.product-features li{display:flex;align-items:flex-start;gap:10px;color:#555;font-size:14px !important;line-height:1.55;}
.product-features i{flex:0 0 auto;color:var(--ic-pink);margin-top:3px;}

/* Variant */
.option-group{margin:26px 0;padding-top:23px;border-top:1px solid var(--ic-line);}
.option-title{display:flex;align-items:center;gap:8px;margin-bottom:14px;color:var(--ic-black);font-size:13px !important;font-weight:500 !important;text-transform:uppercase;letter-spacing:.08em;}
.option-title span{color:#777;font-size:13px !important;text-transform:none;letter-spacing:0;}
.shade-options{gap:9px !important;}
.shade-option{min-height:44px !important;padding:6px 11px !important;border:1px solid var(--ic-line) !important;background:#fff !important;color:#333 !important;}
.shade-option:hover{border-color:#999 !important;}
.shade-option.active{background:var(--ic-black) !important;border-color:var(--ic-black) !important;color:#fff !important;}
.shade-option .shade-swatch{width:22px !important;height:22px !important;flex-basis:22px !important;}

/* Purchase */
.purchase-actions{display:grid;grid-template-columns:150px minmax(0,1fr) minmax(0,1fr);gap:10px;margin-top:24px;}
.quantity-box{min-height:54px;display:flex;align-items:center;justify-content:center;border:1px solid var(--ic-line);background:#fff;}
.quantity-btn{width:42px;height:52px;border:0;background:transparent;color:#333;font-size:18px !important;}
.quantity-value{font-family:var(--ic-body-font) !important;font-size:15px !important;color:var(--ic-black);}
.purchase-actions .btn{min-height:54px;border-radius:0 !important;font-size:14px !important;font-weight:400 !important;letter-spacing:.02em;}
.purchase-actions .btn-cart{background:var(--ic-black) !important;border-color:var(--ic-black) !important;}
.purchase-actions .btn-buy{background:var(--ic-pink) !important;border-color:var(--ic-pink) !important;color:#fff !important;}
.purchase-actions .btn:hover{transform:none !important;}
.product-info > .product-actions{display:flex;gap:10px;margin:17px 0 27px;}
.product-info > .product-actions .action-circle{width:46px;height:46px;display:flex;align-items:center;justify-content:center;border:1px solid var(--ic-line);border-radius:50%;background:#fff;color:var(--ic-black);transition:none;}
.product-info > .product-actions .action-circle:hover{background:var(--ic-pink);border-color:var(--ic-pink);color:#fff;}

/* Assurances */
.delivery-info{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--ic-line);border-bottom:1px solid var(--ic-line);margin-top:6px;}
.delivery-item{min-height:105px;display:flex;gap:11px;align-items:center;padding:16px 13px;border-right:1px solid var(--ic-line);}
.delivery-item:last-child{border-right:0;}
.delivery-item > i{flex:0 0 auto;color:var(--ic-pink);font-size:19px;}
.delivery-item h5{margin:0 0 5px;font-family:var(--ic-heading-font) !important;font-size:14px !important;font-weight:400 !important;}
.delivery-item p{margin:0;color:#777;font-size:12px !important;line-height:1.45 !important;}

/* Description / reviews */
.product-tabs{margin-top:72px;padding-top:34px;border-top:1px solid var(--ic-line);}
.product-tabs .tab-content{
    width:100%;
    max-width:none;
    min-width:0;
    overflow:visible;
}
.product-tabs h3{margin:0 0 15px;font-size:28px !important;}
.product-tabs p{
    width:100%;
    max-width:none;
    margin:0;
    padding:0;
    color:#666;
    font-size:16.6px !important;
    line-height:1.9;
    white-space:normal;
    overflow:visible;
    overflow-wrap:anywhere;
    word-break:normal;
}
.reviews-section{margin-top:88px !important;padding-top:10px;}
.section-header{margin-bottom:30px;}
.section-header .section-subtitle{display:block;margin-bottom:10px;color:var(--ic-pink) !important;font-family:var(--ic-body-font) !important;font-size:11px !important;font-weight:500 !important;letter-spacing:.18em !important;text-transform:uppercase;}
.section-header .section-title{margin:0 0 10px !important;font-family:var(--ic-heading-font) !important;font-size:38px !important;line-height:1.12 !important;font-weight:400 !important;letter-spacing:-.02em;}
.section-header .section-description{margin:0;color:#777;font-size:15px !important;}
.review-card,.review-form{padding:26px !important;border:1px solid var(--ic-line) !important;border-radius:0 !important;box-shadow:none !important;}
.review-card .stars{color:#e9a400;}
.review-card h4{margin:12px 0 8px !important;font-family:var(--ic-heading-font) !important;font-size:20px !important;font-weight:400 !important;}
.review-card p{color:#666 !important;font-size:15px !important;line-height:1.8 !important;}
.review-card span{font-size:13px !important;color:#888 !important;}
.review-form{gap:15px !important;}
.review-form h3{font-family:var(--ic-heading-font) !important;font-size:25px !important;font-weight:400 !important;}
.review-form label{color:#333 !important;font-size:13px !important;font-weight:500 !important;}
.review-form input,.review-form select,.review-form textarea{border:1px solid var(--ic-line) !important;min-height:50px !important;font-size:14px !important;background:#fff;}
.review-form input:focus,.review-form select:focus,.review-form textarea:focus{border-color:var(--ic-pink) !important;box-shadow:0 0 0 3px rgba(215,47,109,.08);}
.review-form .btn{min-height:50px;}

/* ==========================================================
   RELATED PRODUCTS — FOUR ACROSS ON DESKTOP
   ========================================================== */
.related-products{margin-top:96px !important;padding-top:12px;}
.related-products .section-header{text-align:center;margin-bottom:38px;}
.related-products .section-header .section-title{font-size:40px !important;letter-spacing:-.025em;}
.related-products .products-grid.related-products-grid{display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:24px !important;align-items:stretch;}
.related-product-card{position:relative;min-width:0;display:flex;flex-direction:column;background:#fff;border:1px solid var(--ic-line) !important;border-radius:0 !important;box-shadow:none !important;overflow:hidden;transition:border-color .2s ease !important;}
.related-product-card:hover{border-color:#cfcacc !important;box-shadow:none !important;transform:none !important;}
.related-product-card .product-image{position:relative;height:350px;background:var(--ic-offwhite);border-bottom:1px solid var(--ic-line);overflow:hidden;}
.related-product-image-link{width:100%;height:100%;display:flex;align-items:center;justify-content:center;}
.related-product-image-link img{display:block;width:100%;height:100%;padding:0px;object-fit:contain;transition:none !important;transform:none !important;}
.related-product-card:hover .related-product-image-link img{transform:none !important;}
.related-product-badge{position:absolute;top:16px;left:16px;z-index:4;min-height:34px;padding:0 11px;display:flex;align-items:center;justify-content:center;background:var(--ic-pink);color:#fff;font-size:10px !important;font-weight:500 !important;letter-spacing:.08em;}
.related-product-badge-dark{background:var(--ic-black);}
.related-product-actions{position:absolute;top:15px;right:15px;z-index:5;display:flex;flex-direction:column;gap:8px;margin:0 !important;opacity:0;transform:translateX(7px);transition:opacity .2s ease,transform .2s ease;}
.related-product-card:hover .related-product-actions,.related-product-actions:focus-within{opacity:1;transform:translateX(0);}
.related-product-actions a{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border:1px solid var(--ic-line);border-radius:50%;background:#fff;color:var(--ic-black);font-size:15px !important;}
.related-product-actions a:hover{background:var(--ic-pink);border-color:var(--ic-pink);color:#fff;}
.related-product-actions a[aria-disabled="true"]{opacity:.45;pointer-events:none;}
.related-product-card .product-content{display:flex;flex-direction:column;align-items:center;text-align:center;flex:1;padding:23px 20px 20px;background:#fff;}
.related-product-card .product-brand{margin:0 0 8px;font-size:10px !important;letter-spacing:.18em !important;}
.related-product-card .product-title{width:100%;min-height:52px;margin:0 0 9px !important;font-family:var(--ic-heading-font) !important;font-size:19px !important;line-height:1.3 !important;font-weight:400 !important;}
.related-product-card .product-title a{color:var(--ic-black);}
.related-product-card .product-title a:hover{color:var(--ic-pink);}
.related-product-rating{display:flex;align-items:center;justify-content:center;gap:7px;min-height:21px;margin:0 0 12px;}
.related-stars{display:flex;gap:1px;color:#e9a400;}
.related-stars i{font-family:"bootstrap-icons" !important;font-size:13px !important;}
.related-review-count{color:#888;font-size:12px !important;}
.related-product-card .related-product-price{justify-content:center;gap:10px;margin:0 0 17px;}
.related-product-card .new-price{color:var(--ic-black);font-family:var(--ic-heading-font) !important;font-size:19px !important;font-weight:500 !important;}
.related-product-card .old-price{color:#888;font-size:13px !important;text-decoration:line-through;}
.related-add-cart{width:100%;min-height:47px;display:flex !important;align-items:center;justify-content:center;gap:8px;margin-top:auto;border-radius:0 !important;background:var(--ic-black) !important;border:1px solid var(--ic-black) !important;color:#fff !important;font-size:13px !important;font-weight:400 !important;letter-spacing:.02em;}
.related-add-cart:hover{background:var(--ic-pink) !important;border-color:var(--ic-pink) !important;color:#fff !important;transform:none !important;}
.related-add-cart.disabled{background:#e5e5e5 !important;border-color:#e5e5e5 !important;color:#777 !important;pointer-events:none;}

/* Responsive */
@media(max-width:1100px){
    .product-wrapper{gap:45px !important;}
    .gallery-main.zoom-container{min-height:570px;}
    .gallery-main.zoom-container #mainProductImage{height:570px;padding:0 !important;}
    .related-products .products-grid.related-products-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:20px !important;}
    .related-product-card .product-image{height:340px;}
}
@media(max-width:992px){
    .product-gallery{position:relative;top:auto;}
    .product-wrapper{grid-template-columns:1fr;gap:45px !important;}
    .gallery-main.zoom-container{min-height:560px;}
    .gallery-main.zoom-container #mainProductImage{height:560px;padding:0 !important;}
    .delivery-info{grid-template-columns:1fr;}
    .delivery-item{border-right:0;border-bottom:1px solid var(--ic-line);}
    .delivery-item:last-child{border-bottom:0;}
}
@media(max-width:768px){
    .product-banner{padding:48px 0 38px !important;}
    .product-banner h1{font-size:36px !important;}
    .product-details{padding:50px 0 70px !important;}
    .gallery-main.zoom-container{min-height:460px;}
    .gallery-main.zoom-container #mainProductImage{height:460px;padding:0 !important;}
    .gallery-thumbs .thumb{height:78px;}
    .product-info .product-title{font-size:36px !important;}
    .product-price .current-price{font-size:28px !important;}
    .purchase-actions{grid-template-columns:1fr 1fr;}
    .quantity-box{grid-column:1 / -1;}
    .product-description{font-size:15px !important;}
    .product-tabs{margin-top:55px;}
    .reviews-section{margin-top:65px !important;}
    .section-header .section-title,.related-products .section-header .section-title{font-size:32px !important;}
    .related-products{margin-top:70px !important;}
    .related-products .products-grid.related-products-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:16px !important;}
    .related-product-card .product-image{height:280px;}
    .related-product-image-link img{padding:0;}
    .related-product-card .product-content{padding:19px 14px 16px;}
    .related-product-card .product-title{min-height:46px;font-size:17px !important;}
    .related-product-actions{opacity:1;transform:none;}
    .related-product-actions a{width:36px;height:36px;}
}
@media(max-width:520px){
    .product-wrapper{gap:32px !important;}
    .gallery-main.zoom-container{min-height:390px;}
    .gallery-main.zoom-container #mainProductImage{height:390px;padding:0 !important;}
    .gallery-badge{top:14px;left:14px;}
    .zoom-btn{top:14px;right:14px;}
    .product-info .product-title{font-size:31px !important;}
    .purchase-actions{grid-template-columns:1fr;}
    .quantity-box{grid-column:auto;}
    .purchase-actions .btn{width:100%;}
    .related-products .products-grid.related-products-grid{grid-template-columns:1fr !important;}
    .related-product-card .product-image{height:350px;}
}

/* ==========================================================
   FINAL PRODUCT GALLERY / MAGNIFIER CONTRACT
   Keep the gallery wrapper and zoom surface structurally stable.
   ========================================================== */
.product-details .product-gallery{
    width:100%;
    min-width:0;
}

.product-details .gallery-main.zoom-container{
    position:relative;
    width:100%;
    min-width:0;
    min-height:650px;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    isolation:isolate;
    box-sizing:border-box;
}

.product-details .gallery-main.zoom-container #mainProductImage{
    display:block;
    width:100%;
    height:100%;
    min-width:0;
    min-height:0;
    margin:0 !important;
    padding:0 !important;
    object-fit:cover;
    object-position:center;
    user-select:none;
    pointer-events:none;
    transform:none !important;
    transition:none !important;
}

.product-details .product-magnifier-lens{
    position:absolute;
    left:50%;
    top:50%;
    width:min(500px,calc(100% - 34px));
    height:min(500px,calc(100% - 34px));
    z-index:30;
    overflow:hidden;
    pointer-events:none;
    background-color:#fff;
    background-repeat:no-repeat;
    background-origin:padding-box;
    border:1px solid #eadde3;
    box-shadow:0 22px 70px rgba(17,17,17,.24);
    opacity:0;
    transform:translate(-50%,-50%) scale(.985);
    transition:opacity .18s ease,transform .18s ease;
}

.product-details .gallery-main.zoom-container.is-magnifying .product-magnifier-lens{
    opacity:1;
    transform:translate(-50%,-50%) scale(1);
}

@media(max-width:992px){
    .product-details .gallery-main.zoom-container{
        min-height:560px;
    }
}

@media(max-width:768px){
    .product-details .gallery-main.zoom-container{
        min-height:460px;
    }

    .product-details .product-magnifier-lens{
        display:none;
    }

    .product-details .gallery-main.zoom-container{
        cursor:default;
    }
}

@media(max-width:520px){
    .product-details .gallery-main.zoom-container{
        min-height:390px;
    }
}

/* ==========================================================
   FINAL PRODUCT GALLERY — TRUE FULL-BLEED IMAGE
   The main gallery is a square frame and the product artwork
   fills that frame completely. This intentionally overrides
   earlier contain rules in this legacy stylesheet.
   ========================================================== */
.product-details .product-gallery .gallery-main.zoom-container{
    width:100% !important;
    aspect-ratio:1 / 1 !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    margin:0 !important;
    padding:0 !important;
    display:block !important;
    position:relative !important;
    overflow:hidden !important;
    box-sizing:border-box !important;
}

.product-details .product-gallery .gallery-main.zoom-container #mainProductImage{
    display:block !important;
    width:100% !important;
    height:100% !important;
    max-width:none !important;
    min-width:0 !important;
    max-height:none !important;
    min-height:0 !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    object-fit:cover !important;
    object-position:center center !important;
    box-sizing:border-box !important;
}

/* Keep the thumbnails independent from the full-bleed main image. */

@media(max-width:992px){
    .product-details .product-gallery .gallery-main.zoom-container{
        aspect-ratio:1 / 1 !important;
        height:auto !important;
        min-height:0 !important;
    }
}

@media(max-width:768px){
    .product-details .product-gallery .gallery-main.zoom-container{
        aspect-ratio:1 / 1 !important;
        height:auto !important;
        min-height:0 !important;
    }
}


/* ==========================================================
   FINAL PRODUCT IMAGE — SINGLE AUTHORITATIVE RULESET
   No legacy width cap; no crop; no inner spacing.
   ========================================================== */

.product-details .product-gallery .gallery-main.zoom-container{
    position:relative !important;
    width:100% !important;
    aspect-ratio:1 / 1 !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    margin:0 !important;
    padding:0 !important;
    display:block !important;
    overflow:hidden !important;
    box-sizing:border-box !important;
    background:#ffffff !important;
}

.product-details .product-gallery .gallery-main.zoom-container #mainProductImage{
    position:absolute !important;
    inset:0 !important;
    display:block !important;
    width:100% !important;
    height:100% !important;
    min-width:100% !important;
    min-height:100% !important;
    max-width:none !important;
    max-height:none !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    box-sizing:border-box !important;
    object-fit:contain !important;
    object-position:center center !important;
    transform:none !important;
    transition:none !important;
    background:#f5f5f5 !important;
}

/* Do not let legacy generic gallery rules cap the image. */
.product-details .gallery-main img#mainProductImage{
    max-width:none !important;
    width:100% !important;
}

/* Keep zoom surface aligned with the exact image box. */
.product-details .product-magnifier-lens{
    z-index:30 !important;
}

@media(max-width:992px){
    .product-details .product-gallery .gallery-main.zoom-container{
        aspect-ratio:1 / 1 !important;
        height:auto !important;
        min-height:0 !important;
    }
}

@media(max-width:768px){
    .product-details .product-gallery .gallery-main.zoom-container{
        aspect-ratio:1 / 1 !important;
        height:auto !important;
        min-height:0 !important;
    }
}

@media(max-width:520px){
    .product-details .product-gallery .gallery-main.zoom-container{
        aspect-ratio:1 / 1 !important;
        height:auto !important;
        min-height:0 !important;
    }
}

/* FINAL LIGHTBOX IMAGE FIT — SHOW COMPLETE ORIGINAL IMAGE */
.product-lightbox .product-lightbox-panel img#productLightboxImage{width:auto !important;height:auto !important;max-width:100% !important;max-height:calc(92vh - 24px) !important;object-fit:contain !important;object-position:center center !important;margin:0 !important;padding:0 !important;}
@media(max-width:768px){.product-lightbox .product-lightbox-panel img#productLightboxImage{max-width:100% !important;max-height:calc(94vh - 16px) !important;}}
/* ==========================================================
   FINAL PRODUCT PAGE REFINEMENT
   Visual-only CSS override. No HTML/PHP/JS changes.
   ========================================================== */
.product-details > .container,
.product-banner > .container,
#main-content > .container{width:100%;max-width:1480px!important;margin-left:auto;margin-right:auto;padding-left:24px;padding-right:24px}
.product-banner{padding:42px 0 30px!important}
.product-banner h1{font-size:clamp(34px,3.6vw,50px)!important;line-height:1.08!important;margin-bottom:12px!important}
.product-banner .breadcrumb{font-size:14px!important;line-height:1.45!important;gap:8px}
.product-details{padding:46px 0 58px!important}
.product-wrapper{grid-template-columns:minmax(0,1.03fr) minmax(0,.97fr);gap:48px!important;align-items:start}
.product-gallery{top:96px}
.product-details .product-gallery .gallery-main.zoom-container{width:100%!important;aspect-ratio:1/1!important;min-height:0!important;max-height:none!important}
.product-details .product-gallery .gallery-main.zoom-container #mainProductImage{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center center!important}
.gallery-thumbs{gap:8px;margin-top:10px}
.gallery-thumbs .thumb{border:1px solid transparent}
.product-info{padding-top:0}
.product-brand{margin-bottom:8px;font-size:12px!important;line-height:1.35!important}
.product-info .product-title{margin:0 0 10px!important;font-size:clamp(30px,3.05vw,44px)!important;line-height:1.12!important;font-weight:500!important;letter-spacing:-.028em!important}
.product-sku{margin-bottom:12px;font-size:13px!important;line-height:1.45!important}
.product-rating{gap:8px;margin-bottom:17px;padding-bottom:15px}
.product-rating .rating-value,.product-rating .review-count{font-size:14px!important;line-height:1.4!important}
.product-price{gap:10px;margin:0 0 9px}
.product-price .current-price{font-size:30px!important;font-weight:600!important}
.product-price .old-price{font-size:15px!important}
.availability{min-height:28px;margin:0 0 14px;font-size:14px!important;line-height:1.45!important}
.product-description{max-width:none;margin:0 0 8px;font-size:16px!important;line-height:1.68!important;color:#4e4e4e!important}
.product-info-accordions{margin:14px 0 16px!important;border-top:1px solid var(--ic-line)!important}
.product-info-accordion{border-bottom:1px solid var(--ic-line)!important}
.product-info-accordion-toggle{min-height:50px!important;padding:0!important;gap:16px;color:var(--ic-black)!important;font-family:var(--ic-body-font)!important;font-size:15px!important;font-weight:700!important;line-height:1.4!important;letter-spacing:.035em!important;text-transform:uppercase}
.product-info-accordion-toggle span{font-weight:700!important}
.product-info-accordion-toggle i{width:28px;height:28px;flex:0 0 28px;font-size:14px}
.product-info-accordion-content{padding:0 36px 15px 0!important;color:#555!important;font-size:16.5px!important;line-height:1.68!important}
.product-features{gap:7px;margin:14px 0 18px}
.product-features li{gap:8px;color:#4f4f4f;font-size:14.5px!important;line-height:1.5!important}
.option-group{margin:18px 0;padding-top:16px}
.option-title{margin-bottom:10px;font-size:13px!important;line-height:1.4!important}
.shade-options{gap:7px!important}
.shade-option{min-height:40px!important;padding:5px 10px!important;font-size:14px!important}
.shade-option .shade-swatch{width:21px!important;height:21px!important;flex-basis:21px!important}
.purchase-actions{grid-template-columns:132px minmax(0,1fr) minmax(0,1fr);gap:8px;margin-top:18px}
.quantity-box{min-height:50px}
.quantity-btn{width:38px;height:48px}
.purchase-actions .btn{min-height:50px;height:50px;font-size:14px!important}
.product-info > .product-actions{gap:8px;margin:12px 0 18px}
.product-info > .product-actions .action-circle{width:42px;height:42px}
.delivery-info{margin-top:0}
.delivery-item{min-height:88px;padding:12px 11px}
.delivery-item h5{margin-bottom:3px;font-size:13px!important;line-height:1.35!important}
.delivery-item p{font-size:12px!important;line-height:1.4!important}
.product-tabs{margin-top:50px;padding-top:26px}
.product-tabs h3{margin-bottom:10px;font-size:24px!important}
.product-tabs p{font-size:16.5px!important;line-height:1.72!important}
.reviews-section{margin-top:58px!important;padding-top:0}
.section-header{margin-bottom:22px}
.section-header .section-title{font-size:34px!important;line-height:1.15!important;margin-bottom:8px!important}
.section-header .section-description{font-size:15px!important;line-height:1.6!important}
.review-card,.review-form{padding:20px!important}
.review-card p{font-size:15px!important;line-height:1.7!important}
.related-products{margin-top:62px!important;padding-top:6px}
.related-products .section-header{margin-bottom:26px}
.related-products .section-header .section-title{font-size:36px!important}
.related-products .products-grid.related-products-grid{gap:18px!important}
.related-product-card .product-image{height:310px}
.related-product-card .product-content{padding:18px 18px 16px}
.related-product-card .product-title{min-height:48px;font-size:18px!important;line-height:1.3!important}
.related-add-cart{min-height:44px;font-size:13px!important}
.product-details,.product-info,.product-description,.product-info-accordion-content,.product-tabs,.reviews-section,.related-products{overflow:visible}
@media(max-width:1100px){.product-details>.container,.product-banner>.container,#main-content>.container{max-width:100%!important;padding-left:20px;padding-right:20px}.product-wrapper{gap:34px!important}.product-info .product-title{font-size:clamp(29px,3.5vw,40px)!important}}
@media(max-width:992px){.product-details{padding:38px 0 50px!important}.product-wrapper{grid-template-columns:1fr;gap:34px!important}.product-gallery{position:relative;top:auto}.product-info .product-title{font-size:38px!important}.delivery-info{grid-template-columns:1fr}.delivery-item{min-height:76px;border-right:0;border-bottom:1px solid var(--ic-line)}.delivery-item:last-child{border-bottom:0}}
@media(max-width:768px){.product-details>.container,.product-banner>.container,#main-content>.container{padding-left:16px;padding-right:16px}.product-banner{padding:34px 0 25px!important}.product-banner h1{font-size:32px!important;line-height:1.1!important;margin-bottom:10px!important}.product-details{padding:34px 0 44px!important}.product-wrapper{gap:28px!important}.product-info .product-title{font-size:32px!important}.product-description,.product-info-accordion-content,.product-tabs p{font-size:15px!important;line-height:1.65!important}.product-info-accordion-toggle{min-height:48px!important;font-size:14px!important;letter-spacing:.025em!important}.product-info-accordion-content{padding:0 0 14px!important}.purchase-actions{grid-template-columns:1fr 1fr}.quantity-box{grid-column:1/-1}.reviews-section{margin-top:48px!important}.section-header .section-title,.related-products .section-header .section-title{font-size:30px!important}.related-products{margin-top:54px!important}.related-product-card .product-image{height:250px}}
@media(max-width:520px){.product-banner h1{font-size:29px!important}.product-details{padding-bottom:38px!important}.product-wrapper{gap:24px!important}.product-info .product-title{font-size:29px!important}.product-price .current-price{font-size:27px!important}.purchase-actions{grid-template-columns:1fr}.quantity-box{grid-column:auto}.related-products .products-grid.related-products-grid{grid-template-columns:1fr!important}.related-product-card .product-image{height:320px}}

/* ==========================================================
   FINAL AUTHORITATIVE HEADING ALIGNMENT
   Reviews + Related Products centered to the browser viewport.
   CSS-only; no HTML/PHP/JS changes.
   ========================================================== */
#main-content .reviews-section > .section-header,
#main-content .related-products > .section-header{
    width:100vw !important;
    max-width:none !important;
    margin-top:0 !important;
    margin-right:0 !important;
    margin-bottom:28px !important;
    margin-left:calc(50% - 50vw) !important;
    padding-left:20px !important;
    padding-right:20px !important;
    box-sizing:border-box !important;
    text-align:center !important;
    display:block !important;
}

#main-content .reviews-section > .section-header .section-subtitle,
#main-content .reviews-section > .section-header .section-title,
#main-content .reviews-section > .section-header .section-description,
#main-content .related-products > .section-header .section-subtitle,
#main-content .related-products > .section-header .section-title,
#main-content .related-products > .section-header .section-description{
    display:block !important;
    width:100% !important;
    max-width:none !important;
    margin-left:auto !important;
    margin-right:auto !important;
    text-align:center !important;
}

@media(max-width:768px){
    #main-content .reviews-section > .section-header,
    #main-content .related-products > .section-header{
        margin-bottom:22px !important;
        padding-left:16px !important;
        padding-right:16px !important;
    }
}


/* ==========================================================
   FINAL PRODUCT LAYOUT — 40% GALLERY / 60% PRODUCT DETAILS
   Visual-only override. Existing HTML/PHP/JS unchanged.
   ========================================================== */
.product-details .product-wrapper{
    grid-template-columns:minmax(0, 2fr) minmax(0, 3fr) !important;
    gap:48px !important;
    align-items:start !important;
}

.product-details .product-gallery{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
}

.product-details .product-info{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
}

.product-details .gallery-main.zoom-container{
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
}

@media (max-width: 992px){
    .product-details .product-wrapper{
        grid-template-columns:1fr !important;
        gap:34px !important;
    }
}

/* ==========================================================
   IMAGE DELIVERY PERFORMANCE
   Network/loading hints only — product dimensions and design
   remain unchanged.
   ========================================================== */
.product-card .product-image,
.related-product-card .product-image{
    content-visibility:auto;
    contain-intrinsic-size: 350px;
}
.product-card .product-image img,
.related-product-image-link img{
    content-visibility:auto;
}