/* ══════════════════════════════════════════════════════════════════
   AUTHLETICWEAR V2 — PRODUCT PAGE REDESIGN
   
   Reskins the existing content-single-product.php markup to match the
   home/shop editorial aesthetic. No PHP changes required: everything
   is scoped to `body.v2-active` so non-V2 sites are untouched.
   
   Load order: redesign-v2.css → redesign-v2-additions.css → this file.
   ══════════════════════════════════════════════════════════════════ */


/* ══════════════════════════════════════════
   HERO LAYOUT — tighter gutters, more breathing room
   ══════════════════════════════════════════ */

body.v2-active .section-product-hero {
   background: #ffffff;
   padding-bottom: 70px;
}


body.v2-active .section-product-hero .row-product-hero {
   gap: 0px 48px;
}

@media (min-width: 992px) {
   body.v2-active .section-product-hero .row-product-hero .col-md-7 {
      padding-right: 0;
   }

   body.v2-active .col-product-gallery {
      padding-left: 16px;
      padding-top: 12px;
   }
}

/* Breadcrumbs above hero (if any) */
body.v2-active .section-product-hero .breadcrumbs p.breadcrumbs {
   font-size: 11px;
   letter-spacing: 0.14em;
   text-transform: uppercase;
   color: #888;
}


/* ══════════════════════════════════════════
   PRODUCT TITLE + STARS
   ══════════════════════════════════════════ */

body.v2-active .section-product-hero .product-title-wrapper {
   display: block;
   margin-top: 4px;
   margin-bottom: 12px;
}

body.v2-active .section-product-hero h1.product-name {
   font-family: 'Work Sans', sans-serif;
   font-size: clamp(1.6rem, 2.4vw, 2rem);
   font-weight: 800;
   letter-spacing: -0.01em;
   line-height: 1.1;
   text-transform: uppercase;
   color: #0a0a0a;
   margin-bottom: 8px;
}

body.v2-active .section-product-hero .product-reviews-stars-wrapper {
   display: flex;
   align-items: center;
   gap: 8px;
   margin-bottom: 0;
}

body.v2-active .section-product-hero .product-reviews-stars-wrapper .flex-stars {
   display: inline-flex;
   gap: 2px;
}

body.v2-active .section-product-hero .product-reviews-stars-wrapper .flex-stars svg path {
   fill: #0a0a0a;
}

body.v2-active .section-product-hero .product-reviews-stars-wrapper p.stars-total-reviews {
   font-size: 12px;
   color: #666;
   margin: 0;
   letter-spacing: 0.02em;
}

/* Limited / preorder tags above title */
body.v2-active .section-product-hero .limited-product {
   display: inline-block;
   font-size: 10px;
   font-weight: 700;
   letter-spacing: 0.18em;
   text-transform: uppercase;
   padding: 5px 10px;
   background: linear-gradient(100deg, #ff5f7e 0%, #b233ff 100%);
   color: #fff;
   margin-bottom: 10px;
   line-height: 1;
   border-radius: 0;
}

body.v2-active .section-product-hero .limited-product.preorder {
   background: #d43250;
}



/* ══════════════════════════════════════════
   PRICE
   ══════════════════════════════════════════ */

body.v2-active .section-product-hero .price-wrapper {
   margin: -7px 0 10px;
   font-family: 'Work Sans', sans-serif;
   display: flex;
   align-items: baseline;
   flex-wrap: wrap;
   gap: 10px;
   font-size: 20px;
}

body.v2-active .section-product-hero .price-wrapper del {
   color: #a0a0a0;
   font-size: 16px;
   font-weight: 400;
   text-decoration-thickness: 1px;
}

body.v2-active .section-product-hero .price-wrapper ins.special-color,
body.v2-active .section-product-hero .price-wrapper ins {
   color: #0a0a0a;
   font-weight: 800;
   font-size: 22px;
   text-decoration: none;
   background: transparent;
}

body.v2-active .section-product-hero .price-wrapper .bgn-price-line {
   width: 100%;
   margin-top: 2px;
   font-size: 13px;
   color: #888;
   font-weight: 500;
}

/* Coupon under price */
body.v2-active .section-product-hero .discount-coupon-text {
   margin: 2px 0 16px;
   padding: 4px 8px;
   font-size: 12px;
   background: #efefef;
}

body.v2-active .section-product-hero .discount-coupon-text.coupon-type {
   margin: 4px 0 16px;
   padding: 8px 12px;
   font-size: 12px;
   font-weight: 600;
   color: #0a0a0a;
   background: #f4efe6;
   border: 1px dashed #cfc5b0;
   line-height: 1.4;
   border-radius: 0;
}

body.v2-active .section-product-hero .discount-coupon-text strong {
   font-weight: 800;
}

body.v2-active .section-product-hero .discount-coupon-text.fifty-off {
   background: #fff4f1;
   border-color: #f0c7bd;
   color: #9a2a1a;
}


body.v2-active .offer-banner {
   display: none !important;
}

body.v2-active .marquee {
   display: none !important;
}

/* ══════════════════════════════════════════
   SIZE CHART TRIGGER + VARIATIONS TABLE
   ══════════════════════════════════════════ */

body.v2-active .section-product-hero table.variations {
   border: none;
}

body.v2-active .section-product-hero table.variations th.label .size-chart:not(.bundle) {
   display: inline-flex;
   align-items: center;
   gap: 6px;
   font-weight: 400;
   letter-spacing: 0.14em;
   text-transform: uppercase;
   color: #0a0a0a;
   cursor: pointer;
   border: 1px solid #bababa;
   border-radius: 8px;
   font-size: 9px;
}

body.v2-active .section-product-hero table.variations th.label .size-chart:not(.bundle) .icon {
   color: #0a0a0a;
}

body.v2-active .section-product-hero a.reset_variations {
   font-size: 11px;
   letter-spacing: 0.14em;
   text-transform: uppercase;
   color: #777;
}

/* Size select dropdowns / buttons — WooCommerce variable attributes */
body.v2-active .section-product-hero .variations select,
body.v2-active .section-product-hero .woo-variation-items-wrapper .variable-item {
   border-radius: 0;
   border: 1px solid #d5d5d0;
   transition: border-color 0.2s ease, background 0.2s ease;
}

body.v2-active .section-product-hero .woo-variation-items-wrapper .variable-item:hover,
body.v2-active .section-product-hero .woo-variation-items-wrapper .variable-item.selected {
   border-color: #0a0a0a;
}


/* ══════════════════════════════════════════
   PACKAGE SELECTOR — 1/2/3 pieces, premium reskin
   ══════════════════════════════════════════ */
body.v2-active.woo-variation-swatches .wvs-style-squared.variable-items-wrapper .variable-item:not(.radio-variable-item).button-variable-item {
   border-radius: 8px !important;
}

body.v2-active .package-box {
   border: 1px solid #d5d5d0;
   border-radius: 0;
   background: #fff;
   padding: 14px 10px;
   transition: border-color 0.2s ease, background 0.2s ease;
   line-height: 1.3;
   color: #0a0a0a;
   font-family: 'Work Sans', sans-serif;
   border-radius: 8px !important;
}

body.v2-active .package-box:hover {
   border-color: #0a0a0a;
}

body.v2-active .package-box.selected {
   background: #313758;
   color: #fff;
   border-color: #313758;
   font-weight: 700;
}

body.v2-active .package-box .package-qty {
   font-size: 17x;
   font-weight: 800;
   letter-spacing: 0.02em;
}

body.v2-active .package-box .package-price {
   font-size: 14px;
   letter-spacing: 0.02em;
}

body.v2-active .package-box .package-price span.amount {
   font-weight: 800;
}

body.v2-active .package-box .package-discount {
   background: #d43250;
   border-radius: 0;
   font-weight: 700;
   font-size: 11px;
   letter-spacing: 0.04em;
   top: -9px;
   padding: 3px 7px;
}

body.v2-active .package-box .best-choice {
   border-radius: 0;
   background: #ffd75e;
   color: #000;
   font-weight: 700;
   font-size: 11px;
   letter-spacing: 0.08em;
   text-transform: uppercase;
   padding: 4px 6px;
   bottom: -13px;
}

body.v2-active .package-box .best-choice.free {
   background: #0a0a0a;
}

body.v2-active .custom-package-selector {
   gap: 5px;
}

@media (max-width: 991px) {
   body.v2-active .custom-package-selector * {
      font-size: 12px !important;
   }

   body.v2-active .package-box .best-choice {
      font-size: 10px !important;
      text-transform: none !important;
      font-weight: 400 !important;
   }

   body.v2-active .package-box .best-choice {
      bottom: -13px;
   }
}

/* Tiered-discount package boxes (td-pkg) */
body.v2-active .td-pkg {
   border-radius: 0;
   border: 1px solid #d5d5d0;
   background: #fff;
   padding: 14px 16px;
   transition: border-color 0.2s ease, background 0.2s ease;
}

body.v2-active .td-pkg.selected {
   border-color: #0a0a0a;
   background: #fafaf7;
}

body.v2-active .td-pkg .td-pkg__disc {
   border-radius: 0;
   font-weight: 800;
   letter-spacing: 0.02em;
   font-family: 'Work Sans', sans-serif;
}

body.v2-active .td-pkg--green .td-pkg__disc--green {
   background: #1c8e4e;
   color: #fff;
}

body.v2-active .td-pkg--pink .td-pkg__disc--pink {
   background: #0a0a0a;
   color: #fff;
}

body.v2-active .td-pkg--default .td-pkg__disc--default {
   background: #f3f1ee;
   color: #0a0a0a;
}

body.v2-active .td-pkg__tag--pink {
   background: #0a0a0a;
   color: #fff;
   border-radius: 0;
   font-weight: 700;
   letter-spacing: 0.14em;
   text-transform: uppercase;
   font-size: 9px;
   padding: 3px 10px;
}

body.v2-active .td-pkg__headline {
   font-size: 14px;
   font-weight: 600;
   color: #0a0a0a;
}

body.v2-active .td-pkg__headline strong {
   font-weight: 800;
}

body.v2-active .td-pkg__sub {
   font-size: 12px;
   color: #666;
}

body.v2-active .td-pkg__per-piece {
   font-weight: 800;
   color: #0a0a0a;
   font-size: 15px;
}

body.v2-active .td-pkg__was {
   color: #a0a0a0;
   text-decoration: line-through;
   font-size: 12px;
}


/* ══════════════════════════════════════════
   ADD TO CART BUTTON — Black, premium, square
   ══════════════════════════════════════════ */

body.v2-active .single_add_to_cart_button {
   background: #0a0a0a !important;
   color: #fff !important;
   border: 2px solid #0a0a0a !important;
   border-radius: 8px !important;
   padding: 18px 36px !important;
   font-family: 'Work Sans', sans-serif !important;
   font-weight: 700 !important;
   letter-spacing: 0.18em !important;
   text-transform: uppercase !important;
   box-shadow: none !important;
   transition: background 0.2s ease, color 0.2s ease !important;
   width: 100%;
   margin-top: 14px;
}

body.v2-active .single_add_to_cart_button:hover {
   background: #fff !important;
   color: #0a0a0a !important;
}

body.v2-active .single_add_to_cart_button.disabled,
body.v2-active .single_add_to_cart_button:disabled {
   background: #d5d5d0 !important;
   border-color: #d5d5d0 !important;
   color: #7a7a7a !important;
}

/* Preorder button variant */
body.v2-active .product-template-general.preorder .single_add_to_cart_button {
   background: #d43250 !important;
   border-color: #d43250 !important;
   color: #fff !important;
}

body.v2-active .product-template-general.preorder .single_add_to_cart_button:hover {
   background: #fff !important;
   color: #d43250 !important;
}

/* Quantity input inside add-to-cart area */
body.v2-active .quantity .qty,
body.v2-active .woocommerce-variation-add-to-cart .quantity .qty {
   border-radius: 0 !important;
   border: 1px solid #d5d5d0 !important;
   font-family: 'Work Sans', sans-serif;
   font-weight: 600;
}

/* "More payment options" link */
body.v2-active .add-to-text {
   display: block;
   text-align: center;
   font-size: 12px;
   letter-spacing: 0.14em;
   text-transform: uppercase;
   color: #0a0a0a;
   text-decoration: underline;
   text-underline-offset: 3px;
   margin: 14px 0 6px;
   font-weight: 600;
}


/* ══════════════════════════════════════════
   WATCHING / STOCK / SHIPPING STRIPS
   ══════════════════════════════════════════ */

body.v2-active .section-product-hero .watching-this-product {
   display: flex;
   align-items: center;
   gap: 8px;
   background: #fafaf7;
   margin: 14px 0 0;
   font-size: 12px;
   color: #333;
}

body.v2-active .section-product-hero .watching-this-product svg {
   fill: #0a0a0a;
}

body.v2-active .section-product-hero .watching-this-product strong {
   color: #0a0a0a;
   font-weight: 700;
}

body.v2-active .section-product-hero .stock-wrapper {
   display: flex;
   align-items: center;
   gap: 8px;
   margin: 10px 0 0;
   font-size: 12px;
   color: #0a0a0a;
}

body.v2-active .section-product-hero .stock-wrapper .stock-circle {
   width: 8px;
   height: 8px;
   border-radius: 50%;
   background: #c0c0c0;
}

body.v2-active .section-product-hero .stock-wrapper .stock-circle.in-stock {
   background: #1c8e4e;
}

body.v2-active .section-product-hero .stock-wrapper .stock-circle.low-stock {
   background: #f0a020;
}

body.v2-active .section-product-hero .stock-wrapper p {
   font-weight: 500;
   letter-spacing: 0.02em;
}

body.v2-active .section-product-hero .order-today .stock-circle {
   background: #0a0a0a !important;
}

body.v2-active .section-product-hero .order-today span.date {
   font-weight: 700;
   color: #0a0a0a;
}




/* ══════════════════════════════════════════
   PRODUCT TABS — Description / Size / Delivery
   ══════════════════════════════════════════ */

body.v2-active .product-tabs-wrapper {
   margin-top: 28px;
   border-top: 1px solid #e8e8e5;
}

body.v2-active .product-tabs-wrapper .product-tab {
   border-bottom: 1px solid #e8e8e5;
   padding: 16px 0;
   background: transparent;
}

body.v2-active .product-tabs-wrapper .product-tab-inner {
   padding: 0;
}

body.v2-active .product-tabs-wrapper .product-tab .product-title {
   font-size: 12px;
   font-weight: 700;
   letter-spacing: 0.18em;
   text-transform: uppercase;
   color: #0a0a0a;
   display: flex;
   align-items: center;
   justify-content: space-between;
   width: 100%;
   margin: 0;
}

body.v2-active .product-tabs-wrapper .product-tab .product-tab-inner svg {
   color: #0a0a0a;
   transition: transform 0.2s ease;
}

body.v2-active .product-tabs-wrapper .product-tab.active .product-tab-inner svg {
   transform: rotate(180deg);
}

body.v2-active .product-tabs-text-wrapper .tab-description {
   padding: 4px 0 16px;
   font-size: 14px;
   line-height: 1.6;
   color: #444;
}


body.v2-active .product-tabs-text-wrapper .tab-description p.love-them {
   font-size: 13px;
   font-weight: 700;
   letter-spacing: 0.04em;
   color: #0a0a0a;
   margin-bottom: 12px;
   text-transform: uppercase;
   margin-top: 20px !important;
}


body.v2-active .product-tabs-text-wrapper .tab-description .bullet-product {
   width: 6px;
   height: 6px;
   background: #0a0a0a;
   border-radius: 50%;

}

body.v2-active .product-tabs-text-wrapper .tab-description table {
   border: 1px solid #e8e8e5;
}

body.v2-active .product-tabs-text-wrapper .tab-description td,
body.v2-active .product-tabs-text-wrapper .tab-description th {
   border-color: #e8e8e5;
   padding: 10px 12px;
}

body.v2-active .product-tabs-text-wrapper .tab-description th {
   background: #fafaf7;
   font-weight: 700;
   letter-spacing: 0.06em;
   text-transform: uppercase;
   font-size: 11px;
   color: #0a0a0a;
}


/* ══════════════════════════════════════════
   PAYMENT ICONS — Muted
   ══════════════════════════════════════════ */

body.v2-active .section-product-hero .product-intro-wrapper ul li svg {
   opacity: 0.85;
}


/* ══════════════════════════════════════════
   MATCHING PRODUCT
   ══════════════════════════════════════════ */

body.v2-active .matching-product {
   border: 1px solid #e8e8e5;
   border-radius: 0;
   padding: 14px 16px;
   margin-top: 18px;
   background: #fff;
}

body.v2-active .matching-product .inner {
   font-size: 11px;
   font-weight: 700;
   letter-spacing: 0.14em;
   text-transform: uppercase;
   color: #0a0a0a;
}

body.v2-active .matching-product .image-cover {
   border-radius: 0;
}

body.v2-active .matching-product .upsell-title {
   font-family: 'Work Sans', sans-serif;
   font-weight: 700;
   font-size: 13px;
   color: #0a0a0a;
}

body.v2-active .matching-product .price-upsell ins.special-color,
body.v2-active .matching-product .price-upsell ins {
   color: #0a0a0a;
   font-weight: 800;
}

body.v2-active .matching-product .upsell-text a {
   font-size: 11px;
   font-weight: 700;
   letter-spacing: 0.14em;
   text-transform: uppercase;
   color: #0a0a0a;
   text-decoration: underline;
   text-underline-offset: 3px;
}


/* ══════════════════════════════════════════
   PRODUCT DESCRIPTION — Editorial 2-column rows
   ══════════════════════════════════════════ */

body.v2-active .section-product-description {
   background: #fafaf7;
   padding: 80px 0;
   border-top: 1px solid #eceae5;
}

body.v2-active .section-product-description .row-main {
   margin-bottom: 50px;
}

body.v2-active .section-product-description h2.general-title {
   font-family: 'Work Sans', sans-serif;
   font-size: clamp(1.8rem, 3vw, 2.4rem);
   font-weight: 800;
   letter-spacing: -0.01em;
   text-transform: uppercase;
   color: #0a0a0a;
   margin-bottom: 10px;
}

body.v2-active .section-product-description .subtitle {
   font-size: 15px;
   color: #555;
   max-width: 700px;
   margin: 0 auto;
   line-height: 1.55;
}

body.v2-active .section-product-description .row-descriptions {
   align-items: center;
   gap: 40px 48px;
   margin-bottom: 32px;
}

body.v2-active .section-product-description .row-descriptions .text-wrapper {
   max-width: 500px;
   padding: 0 16px;
}

body.v2-active .section-product-description .row-descriptions .text-wrapper h2.general-title {
   font-size: clamp(1.4rem, 2.2vw, 1.8rem);
   text-transform: uppercase;
   margin-bottom: 12px;
}

body.v2-active .section-product-description .row-descriptions .text-wrapper p.text {
   font-size: 15px;
   line-height: 1.6;
   color: #333;
}

body.v2-active .section-product-description .image-cover {
   border-radius: 0;
   aspect-ratio: 4/5;
}


/* ══════════════════════════════════════════
   RELATED PRODUCTS SLIDER
   ══════════════════════════════════════════ */

body.v2-active .section-related-products {
   background: #ffffff;
   padding: 80px 0 60px;
}

body.v2-active .section-related-products h2.general-title {
   font-family: 'Work Sans', sans-serif;
   font-size: clamp(1.6rem, 2.6vw, 2.2rem);
   font-weight: 800;
   letter-spacing: -0.01em;
   text-transform: uppercase;
   color: #0a0a0a;
   margin-bottom: 32px;
}

body.v2-active .section-related-products .row-products-related {
   position: relative;
}

body.v2-active .swiper-related-products {
   overflow: hidden;
}

body.v2-active .swiper-related-products .swiper-slide {
   height: auto;
}

/* Hide legacy st0 colored arrow strokes, replace with clean design */
body.v2-active .swiper-button-prev.custom-product,
body.v2-active .swiper-button-next.custom-product {
   width: 40px;
   height: 40px;
   background: #fff;
   border: 1px solid #e0dcd3;
   box-shadow: none;
   border-radius: 0;
   transition: background 0.2s ease;
}

body.v2-active .swiper-button-prev.custom-product:hover,
body.v2-active .swiper-button-next.custom-product:hover {
   background: #0a0a0a;
}

body.v2-active .swiper-button-prev.custom-product svg,
body.v2-active .swiper-button-next.custom-product svg {
   width: 10px;
   height: 18px;
}

body.v2-active .swiper-button-prev.custom-product svg .st0,
body.v2-active .swiper-button-next.custom-product svg .st0 {
   stroke: #0a0a0a;
   transition: stroke 0.2s ease;
}

body.v2-active .swiper-button-prev.custom-product:hover svg .st0,
body.v2-active .swiper-button-next.custom-product:hover svg .st0 {
   stroke: #fff;
}


/* ══════════════════════════════════════════
   PRODUCT REVIEWS — Trustpilot-style header + clean card list
   Reskins the existing .review-product markup so we keep all the
   image/author/date logic untouched.
   ══════════════════════════════════════════ */

body.v2-active .section-product-reviews {
   background: #fafaf7;
   padding: 80px 0 90px;
   border-top: 1px solid #eceae5;
}

body.v2-active .section-product-reviews .row-intro .col {
   display: flex;
   flex-direction: column;
   align-items: center;
   text-align: center;
   gap: 14px;
}

body.v2-active .section-product-reviews h2.general-title {
   font-family: 'Work Sans', sans-serif;
   font-size: clamp(1.6rem, 2.6vw, 2.2rem);
   font-weight: 800;
   letter-spacing: -0.01em;
   text-transform: uppercase;
   color: #0a0a0a;
}

/* Trustpilot-style summary */
body.v2-active .section-product-reviews .total-review-wrapper {
   display: inline-flex;
   align-items: center;
   gap: 14px;
   background: #fff;
   border: 1px solid #e8e8e6;
   padding: 14px 22px;
}

body.v2-active .section-product-reviews .total-review-wrapper p.total-number {
   font-family: 'Work Sans', sans-serif;
   font-size: 24px;
   font-weight: 900;
   color: #0a0a0a;
   letter-spacing: -0.02em;
}

body.v2-active .section-product-reviews .total-review-wrapper .number-reviews {
   display: flex;
   align-items: center;
   gap: 10px;
}

body.v2-active .section-product-reviews .total-review-wrapper .flex-stars {
   display: inline-flex;
   gap: 2px;
}

body.v2-active .section-product-reviews .total-review-wrapper .flex-stars svg path {
   fill: #fff;
}

body.v2-active .section-product-reviews .total-review-wrapper p.stars-total-reviews {
   font-size: 12px;
   color: #555;
   letter-spacing: 0.02em;
}

/* Review cards — cleaner editorial look */
body.v2-active .section-product-reviews .row-main .col {
   max-width: 900px;
   margin: 0 auto;
}

body.v2-active .review-product {
   background: #fff;
   border: 1px solid #e8e8e6;
   border-radius: 0;
   padding: 22px 24px;
   margin-bottom: 14px;
   box-shadow: none;
}

body.v2-active .review-product:nth-child(-n+3) {
   display: block;
   /* keep existing load-more behaviour intact */
}

body.v2-active .review-product .review-product-header {
   border-bottom: 1px solid #f0efec;
   padding-bottom: 12px;
   margin-bottom: 12px;
   display: flex;
   align-items: center;
   justify-content: space-between;
   gap: 16px;
}

body.v2-active .review-product .author-circle {
   background: #0a0a0a;
   color: #fff;
   font-weight: 700;
   border-radius: 50%;
   font-size: 14px;
   letter-spacing: 0.02em;
   position: relative;
}

body.v2-active .review-product .author-circle svg {
   width: 16px;
   height: 16px;
   bottom: -3px;
   right: -3px;
}

body.v2-active .review-product .review-header-author .author-name-wrapper {
   margin-bottom: 2px;
}

body.v2-active .review-product .review-header-author .author-name-wrapper p.author-name {
   font-size: 13px;
   font-weight: 700;
   color: #0a0a0a;
   letter-spacing: 0.02em;
}

body.v2-active .review-product .review-header-author .author-name-wrapper .verified-buyer {
   font-size: 11px;
   color: #1c8e4e;
   font-weight: 600;
   letter-spacing: 0.04em;
   background: transparent;
   padding: 0;
   border: none;
}

body.v2-active .review-product .review-header-author .flex-stars svg path {
   fill: #0a0a0a;
}

body.v2-active .review-product .review-date-wrapper p.date {
   font-size: 11px;
   color: #888;
   letter-spacing: 0.02em;
}

body.v2-active .review-product .rewiew-product-body .review-text {
   font-size: 14px;
   line-height: 1.55;
   color: #333;
}

body.v2-active .review-product .rewiew-product-body .review-text .review-title {
   display: block;
   font-size: 14px;
   font-weight: 800;
   letter-spacing: 0.01em;
   color: #0a0a0a;
   margin-bottom: 4px;
}

body.v2-active .review-product .rewiew-product-body .review-images {
   margin-top: 12px;
   gap: 8px;
}

body.v2-active .review-product .rewiew-product-body .review-images .img.relative {
   border-radius: 0;
   overflow: hidden;
   border: 1px solid #e8e8e6;
}

/* Load more button */
body.v2-active #loadMore.btn-load-more {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   margin: 24px auto 0;
   padding: 14px 36px;
   background: transparent;
   border: 2px solid #0a0a0a;
   color: #0a0a0a;
   border-radius: 0;
   font-family: 'Work Sans', sans-serif;
   font-size: 12px;
   font-weight: 700;
   letter-spacing: 0.18em;
   text-transform: uppercase;
   cursor: pointer;
   transition: background 0.2s ease, color 0.2s ease;
}

body.v2-active #loadMore.btn-load-more:hover {
   background: #0a0a0a;
   color: #fff;
}


/* ══════════════════════════════════════════
   MODALS — Size chart + Warranty
   ══════════════════════════════════════════ */

body.v2-active .modal .modal__container {
   border-radius: 0;
}

body.v2-active .modal h2.general-title {
   font-family: 'Work Sans', sans-serif;
   font-weight: 800;
   letter-spacing: -0.01em;
   text-transform: uppercase;
}

body.v2-active .modal .modal__close {
   border-radius: 0;
}


/* ══════════════════════════════════════════
   GIFT OFFER INSIDE PRODUCT PAGE — same reskin as shop
   (already covered in redesign-v2-additions.css via body.v2-active
   .gift-offer-wrapper / .gift-offer-dual-wrapper rules, but we
   re-tighten margins when inside the hero column.)
   ══════════════════════════════════════════ */

body.v2-active .section-product-hero .gift-offer-wrapper,
body.v2-active .section-product-hero .gift-offer-dual-wrapper {
   max-width: 100%;
}


/* ══════════════════════════════════════════
   MOBILE POLISH
   ══════════════════════════════════════════ */

@media (max-width: 991px) {
   body.v2-active .section-product-hero {
      padding-bottom: 40px;
   }

   body.v2-active .section-product-hero h1.product-name {
      font-size: 1.4rem;
   }

   body.v2-active .section-product-hero .price-wrapper {
      font-size: 18px;
      margin: -7px 0 5px;
   }

   body.v2-active .section-product-hero .price-wrapper ins {
      font-size: 20px;
   }


   body.v2-active .section-product-description {
      padding: 50px 0;
   }

   body.v2-active .section-product-description .row-descriptions {
      gap: 22px;
      margin-bottom: 24px;
   }

   body.v2-active .section-related-products {
      padding: 50px 0 40px;
   }

   body.v2-active .section-product-reviews {
      padding: 50px 0 60px;
   }

   body.v2-active .review-product {
      padding: 18px 18px;
   }

   body.v2-active .review-product .review-product-header {
      flex-direction: column;
      align-items: flex-start;
      gap: 10px;
   }

   body.v2-active .td-pkg {
      padding: 12px 14px;
   }

   body.v2-active .td-pkg__headline {
      font-size: 13px;
   }
}

/* ══════════════════════════════════════════════════════════════════
   V2 PRODUCT PAGE — GIFT STRIP (matches shop page v2-gift-strip)
   Dark background, pink ribbon accent, single-row compact layout.
   Reuses the .gift-offer-dual-wrapper markup from gift-offer.php.
   ══════════════════════════════════════════════════════════════════ */
body.v2-active.single-product .gift-offer-dual-item {
   padding: 12px 19px;
   padding-bottom: 12px;
}

body.v2-active.single-product .gift-offer-dual-item .gift-icon {
   width: 34px;
   height: 34px;
}

body.v2-active.single-product .gift-offer-dual-item .gift-text .gift-title {
   color: #0a0a0a;
   font-size: 11px;
   font-weight: 700;
   letter-spacing: 0.02em;
}

body.v2-active.single-product .gift-offer-dual-item .gift-text .gift-condition {
   color: #555;
   font-size: 10px;
}

body.v2-active.single-product.product-template-default .gift-offer-dual-wrapper {
   margin-top: 30px;
   margin-bottom: 0;
}

body.v2-active.single-product .gift-offer-ribbon {
   font-size: 7px;
}

@media (max-width: 600px) {
   body.v2-active.single-product .gift-offer-dual-item {
      padding: 4px 10px;
      padding-bottom: 4px;
   }

   body.v2-active.single-product .gift-offer-dual-item .gift-icon {
      width: 26px;
      border: 0px;
      height: 25px;
   }
}