/* CSS Variables (if not already defined globally) */
:root{
  --navy:#1A1A2E;
  --navy-mid:#16213E;
  --navy-deep:#0F3460;
  --red:#C0392B;
  --red-bright:#E74C3C;
  --white:#FFFFFF;
  --off-white:#F7F7F7;
  --gray-light:#EFEFEF;
  --gray-mid:#D0D0D0;
  --gray-dark:#888;
  --text:#1A1A2E;
  --text-soft:#5A5A6A;
  --container:1400px;
  --gutter:80px;
  --radius:4px;
  --font-h:'Barlow Condensed',sans-serif;
  --font-b:'Barlow',sans-serif;
}

/* ============================================
   SINGLE PRODUCT PAGE STYLES
   Furious Fight Gear Theme
   ============================================ */

/* ══════════════════════════════════════════
   1. BREADCRUMB
   ══════════════════════════════════════════ */

.breadcrumb-bar{
    background:var(--off-white);
    border-bottom:1px solid var(--gray-light);
    padding:12px 0;
}

.woocommerce-breadcrumb{
    display:flex;
    align-items:center;
    gap:8px;
    font-family:var(--font-h);
    font-size:11px;
    font-weight:600;
    letter-spacing:.1em;
    text-transform:uppercase;
    color:var(--text-soft);
}

.woocommerce-breadcrumb a{
    color:var(--text-soft);
    transition:color .2s;
}

.woocommerce-breadcrumb a:hover{
    color:var(--red);
}

.woocommerce-breadcrumb .bc-sep{
    color:var(--gray-mid);
}


/* ══════════════════════════════════════════
   2. PRODUCT HERO
   ══════════════════════════════════════════ */

.product-hero{
    padding:60px 0;
    background:var(--white);
}

.product-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:64px;
    align-items:start;
}


/* ══════════════════════════════════════════
   LEFT COLUMN: GALLERY
   ══════════════════════════════════════════ */

.gallery-wrapper{}

.gallery-main{
    border-radius:8px;
    overflow:hidden;
    background:var(--off-white);
    aspect-ratio:1/1;
    position:relative;
    cursor:zoom-in;
}

.gallery-main img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .6s ease;
    display:block;
}

.gallery-main:hover img{
    transform:scale(1.08);
}

.gallery-badge{
    position:absolute;
    top:16px;
    left:16px;
    z-index:2;
    display:flex;
    flex-direction:column;
    gap:6px;
}

.gbadge{
    padding:5px 10px;
    border-radius:2px;
    font-family:var(--font-h);
    font-size:10px;
    font-weight:700;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.gbadge-red{
    background:var(--red);
    color:var(--white);
}

.gbadge-navy{
    background:var(--navy);
    color:var(--white);
}

.gallery-wish{
    position:absolute;
    top:16px;
    right:16px;
    z-index:2;
    width:38px;
    height:38px;
    background:rgba(255,255,255,.92);
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    color:var(--gray-dark);
    cursor:pointer;
    transition:color .25s,transform .25s;
}

.gallery-wish:hover{
    color:var(--red);
    transform:scale(1.1);
}

.gallery-wish.active{
    color:var(--red);
}

.gallery-thumbs{
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:10px;
    margin-top:14px;
}

.thumb{
    border-radius:6px;
    overflow:hidden;
    cursor:pointer;
    border:2px solid transparent;
    transition:border-color .25s,transform .25s;
    aspect-ratio:1/1;
    background:var(--off-white);
}

.thumb img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .5s ease;
}

.thumb:hover img{
    transform:scale(1.06);
}

.thumb.active{
    border-color:var(--red);
}

.thumb:hover{
    border-color:var(--navy);
}

.gallery-video-btn{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    margin-top:14px;
    padding:10px 20px;
    border:1px solid var(--gray-mid);
    border-radius:var(--radius);
    font-family:var(--font-h);
    font-size:12px;
    font-weight:700;
    letter-spacing:.1em;
    text-transform:uppercase;
    color:var(--text-soft);
    cursor:pointer;
    transition:border-color .25s,color .25s;
    background:var(--white);
    width:100%;
}

.gallery-video-btn:hover{
    border-color:var(--red);
    color:var(--red);
}

.gallery-video-btn svg{
    width:16px;
    height:16px;
}


/* ══════════════════════════════════════════
   RIGHT COLUMN: PRODUCT INFO
   ══════════════════════════════════════════ */

.product-info-col{}

.summary.entry-summary{
    display:flex;
    flex-direction:column;
}

/* Product Name */
.prod-name{
    font-family:var(--font-h);
    font-size:clamp(36px,4vw,52px);
    font-weight:900;
    text-transform:uppercase;
    color:var(--navy);
    line-height:1;
    margin-bottom:14px;
}

/* Rating Row */
.rating-row{
    display:flex;
    align-items:center;
    gap:12px;
    margin-bottom:16px;
    flex-wrap:wrap;
}

.woocommerce-product-rating{
    display:flex;
    align-items:center;
    gap:8px;
}

.star-rating{
    color:var(--red);
    font-size:16px;
    position:relative;
    display:inline-block;
    width:5em;
    height:1em;
    line-height:1;
    font-family:star;
    overflow:hidden;
}

.star-rating::before{
    content:"★★★★★";
    color:var(--gray-light);
    float:left;
    top:0;
    left:0;
    position:absolute;
}

.star-rating span{
    overflow:hidden;
    float:left;
    top:0;
    left:0;
    position:absolute;
    padding-top:1.5em;
}

.star-rating span::before{
    content:"★★★★★";
    color:var(--red);
    top:0;
    position:absolute;
    left:0;
}

.rating-link{
    font-family:var(--font-h);
    font-size:11px;
    font-weight:700;
    letter-spacing:.08em;
    text-transform:uppercase;
    color:var(--red);
    cursor:pointer;
    border-bottom:1px solid var(--red);
    text-decoration:none;
    transition:opacity .2s;
}

.rating-link:hover{
    opacity:.75;
}

.scroll-to-reviews{
    margin-left:auto;
}

/* Price Row */
.price-row{
    display:flex;
    align-items:baseline;
    gap:12px;
    margin-bottom:20px;
}

.price{
    font-family:var(--font-h);
    font-size:40px;
    font-weight:900;
    color:var(--navy);
}

.price del{
    font-size:22px;
    font-weight:600;
    color:var(--gray-dark);
    margin-left:8px;
}

.price ins{
    text-decoration:none;
}

.price-save{
    background:rgba(192,57,43,.1);
    color:var(--red);
    padding:4px 10px;
    border-radius:20px;
    font-family:var(--font-h);
    font-size:11px;
    font-weight:700;
    letter-spacing:.08em;
    text-transform:uppercase;
}

/* Short Description */
.prod-short-desc{
    font-size:15px;
    color:var(--text-soft);
    line-height:1.75;
    margin-bottom:28px;
    padding-bottom:28px;
    border-bottom:1px solid var(--gray-light);
}

.prod-short-desc p{
    margin-bottom:0;
}


/* ══════════════════════════════════════════
   PRODUCT OPTIONS (SIZE & COLOR)
   ══════════════════════════════════════════ */

.variations_form .variations{
    display:flex;
    flex-direction:column;
    gap:24px;
    margin-bottom:24px;
}

.opt-section{
    display:flex;
    flex-direction:column;
}

.opt-label{
    font-family:var(--font-h);
    font-size:12px;
    font-weight:700;
    letter-spacing:.14em;
    text-transform:uppercase;
    color:var(--navy);
    margin-bottom:10px;
    display:flex;
    align-items:center;
    gap:6px;
}

.opt-label span{
    font-weight:400;
    color:var(--text-soft);
}

/* Size Buttons */
.size-btns{
    display:flex;
    gap:8px;
    flex-wrap:wrap;
}

.sz-btn{
    width:56px;
    height:44px;
    border-radius:var(--radius);
    border:1.5px solid var(--gray-mid);
    font-family:var(--font-h);
    font-size:14px;
    font-weight:700;
    color:var(--text-soft);
    background:var(--white);
    cursor:pointer;
    transition:border-color .2s,background .2s,color .2s;
}

.sz-btn:hover{
    border-color:var(--navy);
    color:var(--navy);
}

.sz-btn.active{
    border-color:var(--navy);
    background:var(--navy);
    color:var(--white);
}

.sz-btn.soldout{
    opacity:.35;
    cursor:not-allowed;
    text-decoration:line-through;
}

.size-guide-link{
    margin-top:8px;
    display:inline-flex;
    align-items:center;
    gap:4px;
    font-family:var(--font-h);
    font-size:11px;
    font-weight:700;
    letter-spacing:.08em;
    text-transform:uppercase;
    color:var(--red);
    text-decoration:none;
    transition:opacity .2s;
}

.size-guide-link:hover{
    opacity:.75;
}

.size-guide-link svg{
    width:14px;
    height:14px;
}

/* Color Swatches */
.color-swatches{
    display:flex;
    gap:8px;
}

.cs{
    width:32px;
    height:32px;
    border-radius:50%;
    cursor:pointer;
    border:3px solid transparent;
    transition:border-color .2s,transform .2s;
    position:relative;
}

.cs:hover{
    transform:scale(1.12);
}

.cs.active{
    border-color:var(--navy);
}

.cs::after{
    content:'';
    position:absolute;
    inset:-5px;
    border-radius:50%;
    border:1.5px solid var(--navy);
    opacity:0;
    transition:opacity .2s;
}

.cs.active::after{
    opacity:1;
}


/* ══════════════════════════════════════════
   QUANTITY CONTROL
   ══════════════════════════════════════════ */

.qty-row{
    display:flex;
    flex-direction:column;
    gap:10px;
    margin-bottom:24px;
}

.qty-ctrl{
    display:flex;
    align-items:center;
    border:1.5px solid var(--gray-mid);
    border-radius:var(--radius);
    overflow:hidden;
    width:fit-content;
}

.qty-btn{
    width:40px;
    height:44px;
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    color:var(--text-soft);
    transition:background .2s,color .2s;
    font-size:18px;
    background:var(--white);
    border:none;
}

.qty-btn:hover{
    background:var(--off-white);
    color:var(--navy);
}

.qty-ctrl .quantity{
    margin:0;
    display:flex;
}

.qty-ctrl .quantity .qty{
    width:48px;
    height:44px;
    text-align:center;
    font-family:var(--font-h);
    font-size:17px;
    font-weight:700;
    color:var(--navy);
    border:none;
    border-left:1.5px solid var(--gray-mid);
    border-right:1.5px solid var(--gray-mid);
    background:var(--white);
    -moz-appearance:textfield;
}

.qty-ctrl .quantity .qty::-webkit-outer-spin-button,
.qty-ctrl .quantity .qty::-webkit-inner-spin-button{
    -webkit-appearance:none;
    margin:0;
}

.qty-ctrl .quantity .qty:focus{
    outline:none;
}


/* ══════════════════════════════════════════
   3D CUSTOMIZE CTA CARD
   ══════════════════════════════════════════ */

.customize-cta{
    background:linear-gradient(135deg,rgba(26,26,46,.04) 0%,rgba(192,57,43,.05) 100%);
    border:1.5px solid rgba(192,57,43,.2);
    border-radius:8px;
    padding:18px 20px;
    display:flex;
    align-items:center;
    gap:16px;
    margin-bottom:24px;
    transition:border-color .3s,background .3s;
    cursor:pointer;
    text-decoration:none;
}

.customize-cta:hover{
    border-color:var(--red);
    background:rgba(192,57,43,.05);
}

.cc-icon{
    width:48px;
    height:48px;
    background:var(--red);
    border-radius:8px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
    color:var(--white);
}

.cc-icon svg{
    width:24px;
    height:24px;
}

.cc-text{
    flex:1;
}

.cc-text strong{
    display:block;
    font-family:var(--font-h);
    font-size:15px;
    font-weight:800;
    text-transform:uppercase;
    color:var(--navy);
    margin-bottom:3px;
    letter-spacing:.04em;
}

.cc-text span{
    font-size:13px;
    color:var(--text-soft);
}

.cc-arrow{
    margin-left:auto;
    color:var(--red);
    flex-shrink:0;
    transition:transform .2s;
}

.cc-arrow svg{
    width:20px;
    height:20px;
}

.customize-cta:hover .cc-arrow{
    transform:translateX(4px);
}


/* ══════════════════════════════════════════
   CTA BUTTONS (ADD TO CART & BUY NOW)
   ══════════════════════════════════════════ */

.cta-row{
    display:flex;
    gap:10px;
    margin-bottom:0;
    flex-wrap:wrap;
}

.cta-row .btn{
    flex:1;
    min-width:140px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
}

.btn{
    font-family:var(--font-h);
    font-size:14px;
    font-weight:700;
    letter-spacing:.1em;
    text-transform:uppercase;
    border-radius:var(--radius);
    padding:15px 30px;
    transition:transform .25s,box-shadow .25s,background .25s,color .25s,border-color .25s;
    cursor:pointer;
    text-decoration:none;
    border:none;
}

.btn:hover{
    transform:translateY(-2px);
}

.btn-red{
    background:var(--red);
    color:var(--white);
}

.btn-red:hover{
    background:var(--red-bright);
    box-shadow:0 0 28px rgba(192,57,43,.5);
}

.btn-dark{
    background:var(--navy);
    color:var(--white);
}

.btn-dark:hover{
    background:var(--navy-deep);
    box-shadow:0 8px 24px rgba(26,26,46,.3);
}

.btn svg{
    width:18px;
    height:18px;
}

.single_add_to_cart_button{
    background:var(--navy);
    color:var(--white);
}

.single_add_to_cart_button:hover{
    background:var(--navy-deep);
    color:var(--white);
}

.buy-now-btn{
    background:var(--red);
    color:var(--white);
}

.buy-now-btn:hover{
    background:var(--red-bright);
}



/* ══════════════════════════════════════════
   3. TRUST BADGES SECTION
   ══════════════════════════════════════════ */

.trust-bar{
    background:var(--navy);
    padding:0;
}

.trust-bar-inner{
    max-width:var(--container);
    margin:0 auto;
    padding:0 var(--gutter);
    display:grid;
    grid-template-columns:repeat(4,1fr);
}

.tb-item{
    text-align:center;
    padding:28px 20px;
    border-right:1px solid rgba(255,255,255,.07);
    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    transition:background .25s;
}

.tb-item:last-child{
    border-right:none;
}

.tb-item:hover{
    background:rgba(255,255,255,.04);
}

.tb-icon{
    color:var(--red);
    flex-shrink:0;
}

.tb-icon svg{
    width:24px;
    height:24px;
}

.tb-text-wrap{
    text-align:left;
}

.tb-title{
    font-family:var(--font-h);
    font-size:13px;
    font-weight:700;
    text-transform:uppercase;
    color:var(--white);
    letter-spacing:.06em;
}

.tb-sub{
    font-size:12px;
    color:rgba(255,255,255,.4);
    margin-top:1px;
}


/* ══════════════════════════════════════════
   4. PRODUCT TABS
   ══════════════════════════════════════════ */

.woocommerce-tabs{
    padding:80px 0;
    background:var(--white);
}

.woocommerce-tabs .wrap{
    max-width:var(--container);
    margin:0 auto;
    padding:0 var(--gutter);
}

.woocommerce-tabs ul.tabs{
    display:flex;
    gap:36px;
    border-bottom:2px solid var(--gray-light);
    margin-bottom:44px;
    padding:0;
    list-style:none;
}

.woocommerce-tabs ul.tabs li{
    margin:0;
    padding:0;
}

.woocommerce-tabs ul.tabs li a{
    font-family:var(--font-h);
    font-size:14px;
    font-weight:700;
    letter-spacing:.1em;
    text-transform:uppercase;
    color:var(--text-soft);
    padding:16px 0;
    display:block;
    border-bottom:2px solid transparent;
    margin-bottom:-2px;
    transition:color .2s,border-color .2s;
    text-decoration:none;
}

.woocommerce-tabs ul.tabs li a:hover,
.woocommerce-tabs ul.tabs li.active a{
    color:var(--red);
    border-bottom-color:var(--red);
}

.woocommerce-tabs .woocommerce-Tabs-panel{
    font-size:15px;
    color:var(--text-soft);
    line-height:1.85;
}

.woocommerce-tabs .woocommerce-Tabs-panel h2,
.woocommerce-tabs .woocommerce-Tabs-panel h3{
    font-family:var(--font-h);
    font-weight:800;
    text-transform:uppercase;
    color:var(--navy);
    margin-bottom:14px;
    letter-spacing:.04em;
}

.woocommerce-tabs .woocommerce-Tabs-panel h2{
    font-size:22px;
}

.woocommerce-tabs .woocommerce-Tabs-panel h3{
    font-size:18px;
}

.woocommerce-tabs .woocommerce-Tabs-panel p{
    margin-bottom:16px;
}

.woocommerce-tabs .woocommerce-Tabs-panel ul,
.woocommerce-tabs .woocommerce-Tabs-panel ol{
    margin-bottom:20px;
    padding-left:20px;
}

.woocommerce-tabs .woocommerce-Tabs-panel ul li,
.woocommerce-tabs .woocommerce-Tabs-panel ol li{
    margin-bottom:10px;
}


/* ══════════════════════════════════════════
   5. 3D CUSTOMIZATION SECTION  
   (Reuses home page .customizer styles)
   ══════════════════════════════════════════ */

/* These styles are already in the theme's main CSS */


/* ══════════════════════════════════════════
   6. REVIEWS SECTION
   ══════════════════════════════════════════ */

#reviews{
    padding:80px 0;
    background:var(--off-white);
}

#reviews .wrap{
    max-width:var(--container);
    margin:0 auto;
    padding:0 var(--gutter);
}

.woocommerce-Reviews-title{
    font-family:var(--font-h);
    font-size:clamp(32px,3.5vw,48px);
    font-weight:900;
    text-transform:uppercase;
    color:var(--navy);
    line-height:1.05;
    text-align:center;
    margin-bottom:52px;
}


/* ══════════════════════════════════════════
   7. RELATED PRODUCTS SECTION
   ══════════════════════════════════════════ */

.related-products{
    padding:80px 0;
    background:var(--white);
}

.related-products .section-header{
    margin-bottom:44px;
}

.related-products .section-title{
    font-family:var(--font-h);
    font-size:clamp(32px,3.5vw,48px);
    font-weight:900;
    text-transform:uppercase;
    color:var(--navy);
    line-height:1.05;
    margin-bottom:10px;
}

.related-products .section-sub{
    font-size:16px;
    color:var(--text-soft);
    line-height:1.75;
}

.related-products .products{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:20px;
}

/* Product cards use existing .product-card styles from cart page */


/* ══════════════════════════════════════════
   8. RESPONSIVE
   ══════════════════════════════════════════ */

@media(max-width:1100px){
    .product-grid{
        grid-template-columns:1fr;
        gap:48px;
    }

    .trust-bar-inner{
        grid-template-columns:repeat(2,1fr);
    }

    .tb-item:nth-child(2){
        border-right:none;
    }

    .tb-item:nth-child(3){
        border-top:1px solid rgba(255,255,255,.07);
    }

    .related-products .products{
        grid-template-columns:repeat(3,1fr);
    }
}

@media(max-width:700px){
    .gallery-thumbs{
        grid-template-columns:repeat(4,1fr);
    }

    .cta-row{
        flex-direction:column;
    }

    .cta-row .btn{
        min-width:auto;
    }

    .trust-bar-inner{
        grid-template-columns:1fr;
    }

    .tb-item{
        border-right:none;
        border-bottom:1px solid rgba(255,255,255,.07);
    }

    .tb-item:last-child{
        border-bottom:none;
    }

    .woocommerce-tabs ul.tabs{
        gap:20px;
        overflow-x:auto;
        -webkit-overflow-scrolling:touch;
    }

    .related-products .products{
        grid-template-columns:repeat(2,1fr);
    }

    .customize-cta{
        flex-direction:column;
        text-align:center;
    }

    .cc-arrow{
        margin:0;
    }
}

/* Wrap container */
.wrap{
    max-width:var(--container);
    margin:0 auto;
    padding:0 var(--gutter);
}

.center{
    text-align:center;
}

.section-header{
    margin-bottom:44px;
}

.section-title{
    font-family:var(--font-h);
    font-size:clamp(32px,3.5vw,48px);
    font-weight:900;
    text-transform:uppercase;
    color:var(--navy);
    line-height:1.05;
    margin-bottom:10px;
}

.section-sub{
    font-size:16px;
    color:var(--text-soft);
    line-height:1.75;
}

.section-tag{
    font-family:var(--font-h);
    font-size:11px;
    font-weight:700;
    letter-spacing:.28em;
    text-transform:uppercase;
    color:var(--red);
    margin-bottom:14px;
}


/* ══════════════════════════════════════════
   CUSTOMIZER STYLES (from homepage.css)
   ══════════════════════════════════════════ */

.customizer{
    padding:100px 0;
    background:var(--navy);
    position:relative;
    overflow:hidden;
}

.customizer::before{
    content:'';
    position:absolute;
    top:-150px;
    right:-150px;
    width:700px;
    height:700px;
    border-radius:50%;
    background:radial-gradient(circle,rgba(192,57,43,.1) 0%,transparent 65%);
    pointer-events:none;
}

.customizer::after{
    content:'';
    position:absolute;
    bottom:-100px;
    left:-100px;
    width:500px;
    height:500px;
    border-radius:50%;
    background:radial-gradient(circle,rgba(15,52,96,.3) 0%,transparent 65%);
    pointer-events:none;
}

.cust-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:80px;
    align-items:center;
    position:relative;
    z-index:1;
}

.cust-text .section-tag{
    color:var(--red);
}

.cust-text .section-title{
    color:var(--white);
}

.cust-text .section-sub{
    color:rgba(255,255,255,.6);
}

.cust-steps{
    display:flex;
    flex-direction:column;
    gap:18px;
    margin-bottom:40px;
}

.cust-step{
    display:flex;
    align-items:flex-start;
    gap:14px;
    color:rgba(255,255,255,.8);
}

.cust-dot{
    color:var(--red);
    flex-shrink:0;
    margin-top:6px;
}

.cust-ctas{
    display:flex;
    gap:14px;
}

.cust-media{
    position:relative;
}

.cust-img-wrap,
.cust-video-wrap{
    position:relative;
    border-radius:16px;
    overflow:hidden;
}

.cust-img-wrap img,
.cust-video{
    width:100%;
    height:auto;
    display:block;
}

@media(max-width:1100px){
    .cust-grid{
        grid-template-columns:1fr;
        gap:60px;
    }
}

@media(max-width:768px){
    .customizer{
        padding:80px 0;
    }
    
    .cust-grid{
        gap:40px;
    }
}


/* ══════════════════════════════════════════
   RATING ROW (matching HTML design)
   ══════════════════════════════════════════ */

.rating-row .stars{
    color:var(--red);
    font-size:18px;
    letter-spacing:2px;
}

.rating-num{
    font-family:var(--font-h);
    font-size:16px;
    font-weight:800;
    color:var(--navy);
}

.rating-count{
    font-size:14px;
    color:var(--text-soft);
}

.rating-link{
    font-family:var(--font-h);
    font-size:11px;
    font-weight:700;
    letter-spacing:.1em;
    text-transform:uppercase;
    color:var(--red);
    cursor:pointer;
    transition:opacity .2s;
    margin-left:auto;
}

.rating-link:hover{
    opacity:.75;
}


/* ══════════════════════════════════════════
   PRICE ROW (matching HTML design)
   ══════════════════════════════════════════ */

.price-current{
    font-family:var(--font-h);
    font-size:40px;
    font-weight:900;
    color:var(--navy);
}

.price-current ins{
    text-decoration:none;
}

.price-old{
    font-size:20px;
    color:var(--gray-dark);
    text-decoration:line-through;
    font-weight:400;
}

.price-save{
    background:rgba(192,57,43,.1);
    color:var(--red);
    padding:6px 12px;
    border-radius:20px;
    font-family:var(--font-h);
    font-size:12px;
    font-weight:700;
    letter-spacing:.08em;
    text-transform:uppercase;
}


/* ══════════════════════════════════════════
   META LIST (matching HTML design)
   ══════════════════════════════════════════ */

.meta-list{
    display:flex;
    flex-direction:column;
    gap:12px;
    margin-top:28px;
    padding-top:28px;
    border-top:1px solid var(--gray-light);
}

.meta-item{
    display:flex;
    align-items:center;
    gap:12px;
    font-size:14px;
    color:var(--text-soft);
}

.meta-item svg{
    color:var(--text-soft);
    flex-shrink:0;
}

.meta-item strong{
    color:var(--navy);
    font-weight:600;
}


/* ══════════════════════════════════════════
   PRODUCT EYEBROW
   ══════════════════════════════════════════ */

.prod-eyebrow{
    font-family:var(--font-h);
    font-size:11px;
    font-weight:700;
    letter-spacing:.28em;
    text-transform:uppercase;
    color:var(--red);
    margin-bottom:8px;
}


/* ══════════════════════════════════════════
   CLEAR/RESET BUTTON
   ══════════════════════════════════════════ */

.reset-variation{
    display:inline-flex;
    align-items:center;
    gap:5px;
    margin-top:9px;
    margin-left:12px;
    font-family:var(--font-h);
    font-size:11px;
    font-weight:700;
    letter-spacing:.1em;
    text-transform:uppercase;
    color:var(--text-soft);
    background:none;
    border:none;
    cursor:pointer;
    padding:0;
    transition:color .2s;
}

.reset-variation:hover{
    color:var(--red);
}

.reset-variation svg{
    width:14px;
    height:14px;
}


/* ══════════════════════════════════════════
   BREADCRUMB FIX - Equal spacing and no animation
   ══════════════════════════════════════════ */

.breadcrumb-bar{
    background:var(--off-white);
    border-bottom:1px solid var(--gray-light);
    padding:14px 0;
}

.breadcrumb-bar .wrap{
    display:flex;
    align-items:center;
    font-family:var(--font-h);
    font-size:11px;
    font-weight:600;
    letter-spacing:.1em;
    text-transform:uppercase;
    color:var(--text-soft);
}

.breadcrumb-bar a{
    color:var(--text-soft);
    text-decoration:none;
    transition:none;
}

.breadcrumb-bar a:hover{
    color:var(--red);
}

.woocommerce-breadcrumb{
    display:flex;
    align-items:center;
    gap:8px;
}

.woocommerce-breadcrumb .breadcrumb_last{
    color:var(--navy);
}

/* ══════════════════════════════════════════
   SINGLE PRODUCT POLISH — MATCH PROVIDED DESIGN
   ══════════════════════════════════════════ */

/* Breadcrumb: keep same clean website breadcrumb behavior */
.single-product .breadcrumb-bar{
    background:var(--off-white);
    border-top:0;
    border-bottom:1px solid var(--gray-light);
    padding:12px 0;
}

.single-product .breadcrumb-bar .wrap,
.single-product .woocommerce-breadcrumb{
    justify-content:flex-start;
    text-align:left;
}

.single-product .woocommerce-breadcrumb{
    gap:8px;
    font-family:var(--font-h);
    font-size:11px;
    font-weight:600;
    letter-spacing:.1em;
    text-transform:uppercase;
    color:var(--text-soft);
}

.single-product .woocommerce-breadcrumb a{
    color:var(--text-soft);
}

.single-product .woocommerce-breadcrumb a:hover{
    color:var(--red);
}

.single-product .woocommerce-breadcrumb .breadcrumb_last{
    color:var(--navy);
}

/* Category pills above product title — same feel as shop active filters */
.single-product-category-pills{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:8px;
    margin:0 0 14px;
}

.single-product-category-pill{
    display:inline-flex;
    align-items:center;
    gap:7px;
    background:rgba(192,57,43,.08);
    border:1px solid rgba(192,57,43,.28);
    border-radius:999px;
    color:var(--red);
    font-family:var(--font-h);
    font-size:11px;
    font-weight:700;
    letter-spacing:.1em;
    line-height:1;
    padding:9px 14px;
    text-transform:uppercase;
    text-decoration:none;
    transition:background .2s,color .2s,border-color .2s;
}

.single-product-category-pill:hover{
    background:var(--red);
    border-color:var(--red);
    color:var(--white);
}

/* Product info order/spacing */
.single-product .prod-name{
    margin-bottom:12px;
}

.single-product .rating-row{
    margin-bottom:18px;
}

.single-product .stars{
    color:var(--red);
    font-size:15px;
    letter-spacing:3px;
    line-height:1;
}

.single-product .rating-num{
    font-family:var(--font-h);
    font-size:14px;
    font-weight:800;
    color:var(--navy);
}

.single-product .rating-count{
    font-size:13px;
    color:var(--text-soft);
}

.single-product .rating-link{
    margin-left:0;
    border-bottom:1px solid currentColor;
}

.single-product .price-row{
    display:flex;
    align-items:baseline;
    gap:12px;
    margin-bottom:20px;
}

.single-product .price-current{
    font-family:var(--font-h);
    font-size:40px;
    font-weight:900;
    line-height:1;
    color:var(--navy);
}

.single-product .price-current .woocommerce-Price-amount,
.single-product .price-old .woocommerce-Price-amount{
    font:inherit;
    color:inherit;
}

.single-product .price-old{
    font-family:var(--font-h);
    font-size:22px;
    font-weight:600;
    color:var(--gray-dark);
    text-decoration:line-through;
}

.single-product .price-save{
    padding:5px 11px;
    border-radius:20px;
    background:rgba(192,57,43,.1);
    color:var(--red);
    font-family:var(--font-h);
    font-size:11px;
    font-weight:700;
    letter-spacing:.08em;
    text-transform:uppercase;
}

/* Always show gallery video button at bottom of gallery */
.single-product .gallery-video-btn{
    width:auto;
    min-width:190px;
}

.single-product .gallery-video-btn.no-video-url{
    opacity:1;
}

/* Variation action row */
.variation-actions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:14px;
    margin-top:10px;
}

.single-product .size-guide-link,
.single-product .reset-variation{
    display:inline-flex;
    align-items:center;
    gap:5px;
    margin:0;
    font-family:var(--font-h);
    font-size:11px;
    font-weight:700;
    letter-spacing:.1em;
    line-height:1;
    text-transform:uppercase;
    text-decoration:none;
}

.single-product .size-guide-link{
    color:var(--red);
}

.single-product .reset-variation{
    color:var(--text-soft);
    border:0;
    background:transparent;
    cursor:pointer;
    padding:0;
}

.single-product .size-guide-link:hover,
.single-product .reset-variation:hover{
    color:var(--red-bright);
}

.single-product .size-guide-link svg,
.single-product .reset-variation svg{
    width:14px;
    height:14px;
}

@media(max-width:700px){
    .single-product-category-pills{
        margin-bottom:12px;
    }

    .single-product .price-current{
        font-size:34px;
    }

    .single-product .gallery-video-btn{
        width:100%;
    }
}

/* ============================================
   SINGLE PRODUCT FINAL POLISH
   ============================================ */

.single-product-category-pills{
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    margin-bottom:12px;
}

.single-product-category-pill,
.single-product-category-pill.af-tag{
    display:inline-flex;
    align-items:center;
    gap:6px;
    background:rgba(192,57,43,.08);
    border:1px solid rgba(192,57,43,.2);
    color:var(--red);
    padding:5px 12px;
    border-radius:20px;
    font-family:var(--font-h);
    font-size:12px;
    font-weight:700;
    letter-spacing:.08em;
    line-height:1;
    text-transform:uppercase;
    text-decoration:none;
    transition:background .2s,border-color .2s,color .2s,transform .2s;
}

.single-product-category-pill:hover,
.single-product-category-pill.af-tag:hover{
    background:rgba(192,57,43,.15);
    border-color:rgba(192,57,43,.35);
    color:var(--red);
    transform:translateY(-1px);
}

.price-row{
    align-items:flex-end!important;
}

.price-current,
.price-old,
.price-save{
    line-height:1!important;
}

.price-save{
    align-self:flex-end;
    margin-bottom:3px;
}

.variation-actions{
    display:flex;
    align-items:center;
    gap:18px;
    flex-wrap:wrap;
    margin-top:10px;
}

.reset-variation{
    display:inline-flex;
    align-items:center;
    gap:4px;
    background:transparent;
    border:0;
    padding:0;
    font-family:var(--font-h);
    font-size:11px;
    font-weight:700;
    letter-spacing:.08em;
    text-transform:uppercase;
    color:var(--text-soft);
    cursor:pointer;
    transition:color .2s,opacity .2s;
}

.reset-variation:hover{
    color:var(--red);
}

.reset-variation svg{
    width:14px;
    height:14px;
}

.ffg-hidden-variation-select{
    position:absolute!important;
    left:-9999px!important;
    width:1px!important;
    height:1px!important;
    opacity:0!important;
    pointer-events:none!important;
}

.gallery-wish{
    display:none!important;
}

.single-product .trust-bar{
    display:none!important;
}

@media(max-width:700px){
    .single-product-category-pills{
        margin-bottom:10px;
    }

    .price-row{
        gap:8px;
        flex-wrap:wrap;
    }

    .variation-actions{
        gap:14px;
    }
}


/* Final single product polish: variation action placement, trust badge color, and button cleanup */
.single-product form.variations_form.cart > .variation-actions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:18px;
    margin:8px 0 24px;
}

.single-product .color-section{
    margin-bottom:12px;
}

.single-product .qty-row{
    margin-top:0;
}

.single-product .single_add_to_cart_button svg,
.single-product .buy-now-btn svg{
    display:none!important;
}

.single-product .single_add_to_cart_button,
.single-product .buy-now-btn{
    gap:0!important;
}

.single-product-cart-trust-badges .meta-item svg{
    color:var(--red)!important;
}

.single-product-cart-trust-badges .meta-item strong{
    color:var(--navy)!important;
    font-weight:700;
}

.single-product-cart-trust-badges .meta-item{
    color:var(--text-soft)!important;
}

.single-product .selected-size,
.single-product .selected-color{
    display:inline!important;
    color:var(--text-soft);
    font-weight:400;
    letter-spacing:.12em;
    margin-left:4px;
}

.single-product .sz-btn.active{
    border-color:var(--navy)!important;
    background:var(--navy)!important;
    color:var(--white)!important;
}

.single-product .cs.active{
    border-color:var(--navy)!important;
    transform:scale(1.03);
}

.single-product .cs.active::after{
    opacity:1!important;
}

@media(max-width:700px){
    .single-product form.variations_form.cart > .variation-actions{
        margin:8px 0 22px;
        gap:14px;
    }
}

/* Keep custom variation choices visibly selected immediately, even before WooCommerce resolves the full variation. */
.single-product .sz-btn.ffg-selected,
.single-product .sz-btn.active{
    border-color:var(--navy)!important;
    background:var(--navy)!important;
    color:var(--white)!important;
}

.single-product .cs.ffg-selected,
.single-product .cs.active{
    border-color:var(--navy)!important;
    transform:scale(1.03);
}

.single-product .cs.ffg-selected::after,
.single-product .cs.active::after{
    opacity:1!important;
}

/* ============================================
   Single Product Breadcrumb Vertical Alignment Fix
   Keeps breadcrumb aligned like the rest of the theme
   ============================================ */
.single-product .breadcrumb-bar{
    padding:18px 0 !important;
    min-height:54px;
    display:flex;
    align-items:center;
}

.single-product .breadcrumb-bar .wrap{
    width:100%;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
}

.single-product .breadcrumb-bar .woocommerce-breadcrumb{
    margin:0 !important;
    padding:0 !important;
    line-height:1.2 !important;
    display:flex !important;
    align-items:center !important;
    flex-wrap:wrap;
}

.single-product .breadcrumb-bar .woocommerce-breadcrumb a,
.single-product .breadcrumb-bar .woocommerce-breadcrumb span{
    line-height:1.2 !important;
}

/* Product tabs design polish */
.ffg-product-tabs.woocommerce-tabs,
.tabs-section.ffg-product-tabs{
    padding:80px 0;
    background:var(--white);
}

.ffg-product-tabs .ffg-tabs-nav,
.ffg-product-tabs.woocommerce-tabs ul.tabs{
    display:flex;
    gap:48px;
    align-items:flex-end;
    border-bottom:2px solid var(--gray-light);
    margin:0 0 48px;
    padding:0;
    list-style:none;
    overflow-x:auto;
    scrollbar-width:none;
}

.ffg-product-tabs .ffg-tabs-nav::-webkit-scrollbar{
    display:none;
}

.ffg-product-tabs.woocommerce-tabs ul.tabs li{
    margin:0;
    padding:0;
    border:0;
    background:transparent;
    white-space:nowrap;
}

.ffg-product-tabs.woocommerce-tabs ul.tabs li::before,
.ffg-product-tabs.woocommerce-tabs ul.tabs li::after{
    display:none!important;
}

.ffg-product-tabs.woocommerce-tabs ul.tabs li a{
    display:block;
    padding:0 0 18px;
    margin:0 0 -2px;
    border-bottom:2px solid transparent;
    font-family:var(--font-h);
    font-size:14px;
    font-weight:800;
    letter-spacing:.14em;
    text-transform:uppercase;
    color:var(--navy);
    text-decoration:none;
    transition:color .25s ease,border-color .25s ease;
}

.ffg-product-tabs.woocommerce-tabs ul.tabs li a:hover,
.ffg-product-tabs.woocommerce-tabs ul.tabs li.active a{
    color:var(--navy);
    border-bottom-color:var(--red);
}

.ffg-product-tabs .woocommerce-Tabs-panel{
    padding:0!important;
    margin:0!important;
    border:0!important;
    box-shadow:none!important;
    font-size:15px;
    color:var(--text-soft);
    line-height:1.85;
}

.ffg-product-tabs .tab-pane-inner,
.ffg-product-tabs .ffg-description-grid,
.ffg-product-tabs .ffg-specs-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:72px;
    align-items:start;
}

.ffg-product-tabs .desc-text h2,
.ffg-product-tabs .desc-text h3,
.ffg-product-tabs .woocommerce-Tabs-panel h2,
.ffg-product-tabs .woocommerce-Tabs-panel h3{
    font-family:var(--font-h);
    font-size:24px;
    font-weight:900;
    line-height:1.1;
    letter-spacing:.02em;
    text-transform:uppercase;
    color:var(--navy);
    margin:0 0 18px;
}

.ffg-product-tabs .woocommerce-Tabs-panel h2:first-child{
    display:none;
}

.ffg-product-tabs .desc-text p,
.ffg-product-tabs .woocommerce-Tabs-panel p{
    margin:0 0 20px;
    font-size:16px;
    color:var(--text-soft);
    line-height:1.9;
}

.ffg-product-tabs .desc-text ul,
.ffg-product-tabs .woocommerce-Tabs-panel ul{
    list-style:none;
    padding:0;
    margin:24px 0 0;
    display:flex;
    flex-direction:column;
    gap:10px;
}

.ffg-product-tabs .desc-text ul li,
.ffg-product-tabs .woocommerce-Tabs-panel ul li{
    position:relative;
    padding-left:24px;
    margin:0;
    font-size:15px;
    color:var(--text-soft);
    line-height:1.55;
}

.ffg-product-tabs .desc-text ul li::before,
.ffg-product-tabs .woocommerce-Tabs-panel ul li::before{
    content:'✓';
    position:absolute;
    left:0;
    top:0;
    color:var(--red);
    font-weight:700;
}

.ffg-product-tabs .desc-img{
    border-radius:8px;
    overflow:hidden;
    box-shadow:0 20px 60px rgba(0,0,0,.10);
    background:var(--off-white);
}

.ffg-product-tabs .desc-img img{
    width:100%;
    height:420px;
    object-fit:cover;
    display:block;
    transition:transform .7s ease;
}

.ffg-product-tabs .desc-img:hover img{
    transform:scale(1.04);
}

.ffg-product-tabs .ffg-features-grid,
.ffg-product-tabs .feat-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:24px;
}

.ffg-product-tabs .feat-item{
    background:var(--off-white);
    border:1px solid var(--gray-light);
    border-radius:6px;
    padding:28px 26px;
    transition:border-color .3s ease,box-shadow .3s ease,transform .3s ease;
}

.ffg-product-tabs .feat-item:hover{
    border-color:rgba(192,57,43,.35);
    box-shadow:0 16px 38px rgba(0,0,0,.08);
    transform:translateY(-2px);
}

.ffg-product-tabs .feat-item-icon{
    color:var(--red);
    margin-bottom:16px;
}

.ffg-product-tabs .feat-item-title{
    font-family:var(--font-h);
    font-size:18px;
    font-weight:900;
    line-height:1.1;
    text-transform:uppercase;
    color:var(--navy);
    margin-bottom:10px;
}

.ffg-product-tabs .feat-item-desc{
    font-size:15px;
    color:var(--text-soft);
    line-height:1.75;
    margin:0;
}

.ffg-product-tabs table.shop_attributes,
.ffg-product-tabs .woocommerce-product-attributes{
    width:100%;
    border-collapse:collapse;
    border:0;
    margin:0;
}

.ffg-product-tabs table.shop_attributes th,
.ffg-product-tabs table.shop_attributes td,
.ffg-product-tabs .woocommerce-product-attributes th,
.ffg-product-tabs .woocommerce-product-attributes td{
    padding:15px 0;
    border:0;
    border-bottom:1px solid var(--gray-light);
    background:transparent!important;
    color:var(--text-soft);
    font-size:15px;
}

.ffg-product-tabs table.shop_attributes th,
.ffg-product-tabs .woocommerce-product-attributes th{
    width:38%;
    font-family:var(--font-h);
    font-size:13px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
    color:var(--navy);
}

@media(max-width:900px){
    .ffg-product-tabs.woocommerce-tabs,
    .tabs-section.ffg-product-tabs{
        padding:56px 0;
    }

    .ffg-product-tabs .tab-pane-inner,
    .ffg-product-tabs .ffg-description-grid,
    .ffg-product-tabs .ffg-specs-grid{
        grid-template-columns:1fr;
        gap:32px;
    }

    .ffg-product-tabs .ffg-features-grid,
    .ffg-product-tabs .feat-grid{
        grid-template-columns:1fr;
    }

    .ffg-product-tabs .desc-img img{
        height:320px;
    }
}

@media(max-width:600px){
    .ffg-product-tabs .ffg-tabs-nav,
    .ffg-product-tabs.woocommerce-tabs ul.tabs{
        gap:28px;
        margin-bottom:34px;
    }

    .ffg-product-tabs.woocommerce-tabs ul.tabs li a{
        font-size:12px;
        padding-bottom:14px;
    }

    .ffg-product-tabs .desc-text p,
    .ffg-product-tabs .woocommerce-Tabs-panel p{
        font-size:15px;
    }
}

/* Product tabs full-width content cleanup - no tab images */
.ffg-product-tabs .ffg-description-grid,
.ffg-product-tabs .ffg-specs-grid,
.ffg-product-tabs .tab-pane-inner{
    display:block !important;
    width:100% !important;
}

.ffg-product-tabs .desc-img,
.ffg-product-tabs .ffg-specs-image{
    display:none !important;
}

.ffg-product-tabs .ffg-tab-full-content,
.ffg-product-tabs .desc-text,
.ffg-product-tabs .ffg-specs-content{
    width:100% !important;
    max-width:none !important;
}

.ffg-product-tabs .ffg-tab-full-content > *:last-child,
.ffg-product-tabs .desc-text > *:last-child,
.ffg-product-tabs .ffg-specs-content > *:last-child{
    margin-bottom:0 !important;
}

.ffg-product-tabs .ffg-features-grid,
.ffg-product-tabs .feat-grid{
    width:100% !important;
    max-width:none !important;
    display:grid !important;
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:24px !important;
}

.ffg-product-tabs .feat-item{
    width:100% !important;
    min-height:0 !important;
}

@media(max-width:900px){
    .ffg-product-tabs .ffg-features-grid,
    .ffg-product-tabs .feat-grid{
        grid-template-columns:1fr !important;
    }
}

/* Final override: force single product tab panels/content to use full container width */
.ffg-product-tabs .woocommerce-Tabs-panel,
.ffg-product-tabs .wc-tab,
.ffg-product-tabs .entry-content,
.ffg-product-tabs #tab-description,
.ffg-product-tabs #tab-specifications,
.ffg-product-tabs #tab-features{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    float:none !important;
    clear:both !important;
    margin-left:0 !important;
    margin-right:0 !important;
}

.ffg-product-tabs .ffg-tab-full-content,
.ffg-product-tabs .ffg-tab-full-content.desc-text,
.ffg-product-tabs .ffg-tab-full-content.ffg-specs-content,
.ffg-product-tabs .desc-text,
.ffg-product-tabs .ffg-specs-content{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    float:none !important;
    clear:both !important;
    margin-left:0 !important;
    margin-right:0 !important;
}

.ffg-product-tabs .ffg-tab-full-content p,
.ffg-product-tabs .desc-text p,
.ffg-product-tabs .ffg-specs-content p{
    max-width:100% !important;
}

.ffg-product-tabs .ffg-features-grid,
.ffg-product-tabs .feat-grid{
    width:100% !important;
    max-width:100% !important;
}

/* Final product tabs nav reset - matches single-product HTML design */
.single-product .woocommerce-tabs,
.single-product .ffg-product-tabs.woocommerce-tabs,
.single-product .tabs-section.ffg-product-tabs{
    margin-top:0 !important;
    padding-top:30px !important;
    padding-bottom:0 !important;
}

.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs,
.single-product .ffg-product-tabs .ffg-tabs-nav,
.single-product .woocommerce-tabs ul.tabs{
    display:flex !important;
    align-items:flex-end !important;
    gap:0 !important;
    width:100% !important;
    margin:0 0 48px !important;
    padding:0 !important;
    list-style:none !important;
    border:0 !important;
    border-bottom:2px solid var(--gray-light) !important;
    overflow-x:auto !important;
    scrollbar-width:none !important;
}

.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs::-webkit-scrollbar,
.single-product .ffg-product-tabs .ffg-tabs-nav::-webkit-scrollbar,
.single-product .woocommerce-tabs ul.tabs::-webkit-scrollbar{
    display:none !important;
}

.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs li,
.single-product .woocommerce-tabs ul.tabs li,
.single-product .woocommerce div.product .woocommerce-tabs ul.tabs li,
.single-product .woocommerce-page div.product .woocommerce-tabs ul.tabs li{
    position:relative !important;
    margin:0 56px 0 0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    white-space:nowrap !important;
}

.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs li:last-child,
.single-product .woocommerce-tabs ul.tabs li:last-child,
.single-product .woocommerce div.product .woocommerce-tabs ul.tabs li:last-child{
    margin-right:0 !important;
}

.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs li::before,
.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs li::after,
.single-product .woocommerce-tabs ul.tabs li::before,
.single-product .woocommerce-tabs ul.tabs li::after,
.single-product .woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.single-product .woocommerce div.product .woocommerce-tabs ul.tabs li::after{
    display:none !important;
    content:none !important;
}

.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs li a,
.single-product .woocommerce-tabs ul.tabs li a,
.single-product .woocommerce div.product .woocommerce-tabs ul.tabs li a,
.single-product .woocommerce-page div.product .woocommerce-tabs ul.tabs li a{
    display:block !important;
    height:50px !important;
    line-height:50px !important;
    padding:0 !important;
    margin:0 0 -2px !important;
    border:0 !important;
    border-bottom:2px solid transparent !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    font-family:var(--font-h) !important;
    font-size:13px !important;
    font-weight:800 !important;
    letter-spacing:.12em !important;
    text-transform:uppercase !important;
    color:var(--text-soft) !important;
    text-decoration:none !important;
    transition:color .2s ease,border-color .2s ease !important;
}

.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs li a:hover,
.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs li.active a,
.single-product .woocommerce-tabs ul.tabs li a:hover,
.single-product .woocommerce-tabs ul.tabs li.active a,
.single-product .woocommerce div.product .woocommerce-tabs ul.tabs li a:hover,
.single-product .woocommerce div.product .woocommerce-tabs ul.tabs li.active a{
    color:var(--navy) !important;
    border-bottom-color:var(--red) !important;
}

@media(max-width:600px){
    .single-product .ffg-product-tabs.woocommerce-tabs ul.tabs li,
    .single-product .woocommerce-tabs ul.tabs li,
    .single-product .woocommerce div.product .woocommerce-tabs ul.tabs li{
        margin-right:32px !important;
    }
    .single-product .ffg-product-tabs.woocommerce-tabs ul.tabs li a,
    .single-product .woocommerce-tabs ul.tabs li a,
    .single-product .woocommerce div.product .woocommerce-tabs ul.tabs li a{
        height:46px !important;
        line-height:46px !important;
        font-size:12px !important;
    }
}

/* Final tab click/styling fix: match HTML reference, no boxed tab styling */
.single-product .ffg-product-tabs,
.single-product .woocommerce-tabs.ffg-product-tabs{
    margin-top:0 !important;
    padding-top:30px !important;
    padding-bottom:0 !important;
}

.single-product .ffg-product-tabs ul.tabs,
.single-product .woocommerce-tabs.ffg-product-tabs ul.tabs{
    display:flex !important;
    align-items:flex-end !important;
    gap:56px !important;
    margin:0 0 48px !important;
    padding:0 !important;
    border:0 !important;
    border-bottom:2px solid var(--gray-light) !important;
    background:transparent !important;
    box-shadow:none !important;
    overflow-x:auto !important;
    list-style:none !important;
}

.single-product .ffg-product-tabs ul.tabs li,
.single-product .woocommerce-tabs.ffg-product-tabs ul.tabs li,
.single-product .woocommerce div.product .woocommerce-tabs.ffg-product-tabs ul.tabs li{
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
}

.single-product .ffg-product-tabs ul.tabs li::before,
.single-product .ffg-product-tabs ul.tabs li::after,
.single-product .woocommerce-tabs.ffg-product-tabs ul.tabs li::before,
.single-product .woocommerce-tabs.ffg-product-tabs ul.tabs li::after{
    display:none !important;
    content:none !important;
    box-shadow:none !important;
}

.single-product .ffg-product-tabs ul.tabs li a,
.single-product .woocommerce-tabs.ffg-product-tabs ul.tabs li a,
.single-product .woocommerce div.product .woocommerce-tabs.ffg-product-tabs ul.tabs li a{
    display:block !important;
    height:50px !important;
    line-height:50px !important;
    padding:0 !important;
    margin:0 0 -2px !important;
    border:0 !important;
    border-radius:0 !important;
    border-bottom:2px solid transparent !important;
    background:transparent !important;
    box-shadow:none !important;
    font-family:var(--font-h) !important;
    font-size:13px !important;
    font-weight:800 !important;
    letter-spacing:.12em !important;
    text-transform:uppercase !important;
    color:var(--text-soft) !important;
    text-decoration:none !important;
}

.single-product .ffg-product-tabs ul.tabs li.active a,
.single-product .ffg-product-tabs ul.tabs li a:hover,
.single-product .woocommerce-tabs.ffg-product-tabs ul.tabs li.active a,
.single-product .woocommerce-tabs.ffg-product-tabs ul.tabs li a:hover{
    color:var(--navy) !important;
    border-bottom-color:var(--red) !important;
}

@media(max-width:600px){
    .single-product .ffg-product-tabs ul.tabs,
    .single-product .woocommerce-tabs.ffg-product-tabs ul.tabs{
        gap:32px !important;
    }
}


/* FINAL OVERRIDE: Product tabs exactly like HTML design and no boxed/shadow active state */
.single-product .ffg-product-tabs.woocommerce-tabs,
.single-product .tabs-section.ffg-product-tabs,
.single-product .woocommerce div.product .woocommerce-tabs.ffg-product-tabs{
    margin-top:0 !important;
    padding-top:30px !important;
    padding-bottom:0 !important;
    background:#fff !important;
    box-shadow:none !important;
    border:0 !important;
}

.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs,
.single-product .ffg-product-tabs .ffg-tabs-nav,
.single-product .woocommerce div.product .woocommerce-tabs.ffg-product-tabs ul.tabs{
    display:flex !important;
    align-items:flex-end !important;
    gap:56px !important;
    width:100% !important;
    margin:0 0 48px !important;
    padding:0 !important;
    list-style:none !important;
    background:transparent !important;
    border:0 !important;
    border-bottom:2px solid var(--gray-light) !important;
    box-shadow:none !important;
    overflow-x:auto !important;
    scrollbar-width:none !important;
}

.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs li,
.single-product .woocommerce div.product .woocommerce-tabs.ffg-product-tabs ul.tabs li{
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    outline:0 !important;
}

.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs li::before,
.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs li::after,
.single-product .woocommerce div.product .woocommerce-tabs.ffg-product-tabs ul.tabs li::before,
.single-product .woocommerce div.product .woocommerce-tabs.ffg-product-tabs ul.tabs li::after{
    display:none !important;
    content:none !important;
    border:0 !important;
    box-shadow:none !important;
}

.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs li a,
.single-product .woocommerce div.product .woocommerce-tabs.ffg-product-tabs ul.tabs li a{
    display:block !important;
    height:50px !important;
    line-height:50px !important;
    margin:0 0 -2px !important;
    padding:0 !important;
    border:0 !important;
    border-bottom:2px solid transparent !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    outline:0 !important;
    font-family:var(--font-h) !important;
    font-size:13px !important;
    font-weight:800 !important;
    letter-spacing:.12em !important;
    text-transform:uppercase !important;
    color:var(--navy) !important;
    text-decoration:none !important;
}

.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs li.active a,
.single-product .woocommerce div.product .woocommerce-tabs.ffg-product-tabs ul.tabs li.active a,
.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs li a:hover,
.single-product .woocommerce div.product .woocommerce-tabs.ffg-product-tabs ul.tabs li a:hover{
    color:var(--red) !important;
    border-bottom-color:var(--red) !important;
    background:transparent !important;
    box-shadow:none !important;
}

@media(max-width:600px){
    .single-product .ffg-product-tabs.woocommerce-tabs ul.tabs,
    .single-product .ffg-product-tabs .ffg-tabs-nav,
    .single-product .woocommerce div.product .woocommerce-tabs.ffg-product-tabs ul.tabs{
        gap:32px !important;
    }
}

/* FINAL FIX: visible active underline for single product tabs */
.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs,
.single-product .ffg-product-tabs .ffg-tabs-nav,
.single-product .woocommerce div.product .woocommerce-tabs.ffg-product-tabs ul.tabs{
    border-bottom:2px solid #EFEFEF !important;
    box-shadow:none !important;
}

.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs li,
.single-product .woocommerce div.product .woocommerce-tabs.ffg-product-tabs ul.tabs li{
    position:relative !important;
    box-shadow:none !important;
}

.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs li a,
.single-product .woocommerce div.product .woocommerce-tabs.ffg-product-tabs ul.tabs li a{
    position:relative !important;
    z-index:2 !important;
    border-bottom:0 !important;
    box-shadow:none !important;
}

.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs li a::after,
.single-product .woocommerce div.product .woocommerce-tabs.ffg-product-tabs ul.tabs li a::after{
    content:"" !important;
    position:absolute !important;
    left:0 !important;
    right:0 !important;
    bottom:-2px !important;
    height:2px !important;
    background:transparent !important;
    display:block !important;
    box-shadow:none !important;
    border:0 !important;
}

.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs li.active a,
.single-product .woocommerce div.product .woocommerce-tabs.ffg-product-tabs ul.tabs li.active a{
    color:#C0392B !important;
}

.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs li.active a::after,
.single-product .woocommerce div.product .woocommerce-tabs.ffg-product-tabs ul.tabs li.active a::after,
.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs li a:hover::after,
.single-product .woocommerce div.product .woocommerce-tabs.ffg-product-tabs ul.tabs li a:hover::after{
    background:#C0392B !important;
}

/* Final product tabs active underline fix */
.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs,
.single-product .woocommerce-tabs.ffg-product-tabs ul.tabs {
    border-bottom: 2px solid var(--gray-light) !important;
    box-shadow: none !important;
}

.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs li,
.single-product .woocommerce-tabs.ffg-product-tabs ul.tabs li {
    position: relative !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs li a,
.single-product .woocommerce-tabs.ffg-product-tabs ul.tabs li a {
    position: relative !important;
    display: block !important;
    padding: 0 0 18px !important;
    margin: 0 0 -2px !important;
    border: 0 !important;
    box-shadow: none !important;
    color: var(--navy) !important;
}

.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs li a::after,
.single-product .woocommerce-tabs.ffg-product-tabs ul.tabs li a::after {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    height: 2px !important;
    background: transparent !important;
    display: block !important;
    border: 0 !important;
    box-shadow: none !important;
}

.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs li.active a,
.single-product .woocommerce-tabs.ffg-product-tabs ul.tabs li.active a,
.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs li.active a:hover,
.single-product .woocommerce-tabs.ffg-product-tabs ul.tabs li.active a:hover {
    color: var(--navy) !important;
    border: 0 !important;
}

.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs li.active a::after,
.single-product .woocommerce-tabs.ffg-product-tabs ul.tabs li.active a::after {
    background: var(--red) !important;
}

.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs li::before,
.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs li::after,
.single-product .woocommerce-tabs.ffg-product-tabs ul.tabs li::before,
.single-product .woocommerce-tabs.ffg-product-tabs ul.tabs li::after {
    display: none !important;
    content: none !important;
    box-shadow: none !important;
    border: 0 !important;
}

/* FINAL FINAL: force active product tab text + underline red */
body.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs li.active > a,
body.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs li.active > a:visited,
body.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs li.active > a:hover,
body.single-product .woocommerce div.product .ffg-product-tabs.woocommerce-tabs ul.tabs li.active > a,
body.single-product .woocommerce div.product .ffg-product-tabs.woocommerce-tabs ul.tabs li.active > a:visited,
body.single-product .woocommerce div.product .ffg-product-tabs.woocommerce-tabs ul.tabs li.active > a:hover,
body.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs li.description_tab.active > a,
body.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs li.specifications_tab.active > a,
body.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs li.features_tab.active > a {
    color: #C0392B !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs li > a {
    color: #1A1A2E !important;
}

body.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs li.active > a,
body.single-product .woocommerce div.product .ffg-product-tabs.woocommerce-tabs ul.tabs li.active > a {
    color: #C0392B !important;
}

body.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs li.active > a::after,
body.single-product .woocommerce div.product .ffg-product-tabs.woocommerce-tabs ul.tabs li.active > a::after,
body.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs li.description_tab.active > a::after,
body.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs li.specifications_tab.active > a::after,
body.single-product .ffg-product-tabs.woocommerce-tabs ul.tabs li.features_tab.active > a::after {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: -2px !important;
    height: 2px !important;
    background: #C0392B !important;
    display: block !important;
    opacity: 1 !important;
    border: 0 !important;
    box-shadow: none !important;
}

/* Single product: reuse homepage controlled 3D customizer section exactly */
.single-product-home-customizer{
    padding:100px 0;
    background:var(--navy);
    position:relative;
    overflow:hidden;
}
.single-product-home-customizer::before{
    content:'';
    position:absolute;
    top:-150px;
    right:-150px;
    width:700px;
    height:700px;
    border-radius:50%;
    background:radial-gradient(circle,rgba(192,57,43,.1) 0%,transparent 65%);
    pointer-events:none;
}
.single-product-home-customizer::after{
    content:'';
    position:absolute;
    bottom:-100px;
    left:-100px;
    width:500px;
    height:500px;
    border-radius:50%;
    background:radial-gradient(circle,rgba(15,52,96,.3) 0%,transparent 65%);
    pointer-events:none;
}
.single-product-home-customizer .cust-inner{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:80px;
    align-items:center;
    position:relative;
    z-index:1;
}
.single-product-home-customizer .cust-title{
    font-family:var(--font-h);
    font-size:clamp(40px,5vw,64px);
    font-weight:900;
    text-transform:uppercase;
    color:var(--white);
    line-height:.98;
    margin-bottom:20px;
}
.single-product-home-customizer .cust-title em{
    font-style:normal;
    color:var(--red);
}
.single-product-home-customizer .cust-desc{
    font-size:16px;
    color:rgba(255,255,255,.6);
    line-height:1.82;
    margin-bottom:32px;
    max-width:440px;
}
.single-product-home-customizer .cust-steps{
    display:flex;
    flex-direction:column;
    gap:18px;
    margin-bottom:40px;
}
.single-product-home-customizer .cstep{
    display:flex;
    align-items:flex-start;
    gap:14px;
}
.single-product-home-customizer .cstep-n{
    width:38px;
    height:38px;
    background:rgba(192,57,43,.15);
    border:1px solid rgba(192,57,43,.3);
    border-radius:4px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
    font-family:var(--font-h);
    font-size:14px;
    font-weight:800;
    color:var(--red);
}
.single-product-home-customizer .cstep-info strong{
    display:block;
    font-family:var(--font-h);
    font-size:15px;
    font-weight:700;
    text-transform:uppercase;
    color:var(--white);
    margin-bottom:3px;
    letter-spacing:.04em;
}
.single-product-home-customizer .cstep-info span{
    font-size:13px;
    color:rgba(255,255,255,.5);
    line-height:1.5;
}
.single-product-home-customizer .glove-stage{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:500px;
}
.single-product-home-customizer-media{
    max-width:100%;
    height:auto;
    border-radius:16px;
    box-shadow:0 40px 80px rgba(0,0,0,.6);
    display:block;
}
@media(max-width:1100px){
    .single-product-home-customizer .cust-inner{
        grid-template-columns:1fr;
        gap:60px;
    }
}
@media(max-width:768px){
    .single-product-home-customizer{
        padding:60px 0;
    }
    .single-product-home-customizer .cust-title{
        font-size:clamp(26px,7vw,36px);
    }
    .single-product-home-customizer .cust-desc{
        font-size:14px;
    }
    .single-product-home-customizer .cust-steps{
        gap:20px;
    }
    .single-product-home-customizer .cstep{
        padding:16px;
        flex-direction:column;
        text-align:left;
    }
    .single-product-home-customizer .cstep-n{
        margin-bottom:10px;
    }
    .single-product-home-customizer .pulse-wrap{
        width:100%;
    }
    .single-product-home-customizer .pulse-wrap .btn{
        width:100%;
        justify-content:center;
    }
    .single-product-home-customizer .glove-stage{
        min-height:auto;
    }
}


/* Single product homepage 3D section: keep reused homepage content visible on product pages */
.single-product-home-customizer .sr,
.single-product-home-customizer .sr-l,
.single-product-home-customizer .sr-r,
.single-product-home-customizer .visible,
.single-product-home-customizer .on {
    opacity: 1 !important;
    transform: none !important;
    visibility: visible !important;
}

.single-product-home-customizer .cust-text,
.single-product-home-customizer .cust-visual,
.single-product-home-customizer .glove-stage {
    opacity: 1 !important;
    visibility: visible !important;
}

/* ══════════════════════════════════════════
   FFG Dynamic Product Reviews
   ══════════════════════════════════════════ */
.ffg-product-reviews{
    padding:90px 0;
    background:var(--off-white);
    overflow:hidden;
}
.ffg-product-reviews .ffg-reviews-heading{
    margin-bottom:56px;
}
.ffg-review-summary-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:80px;
    max-width:940px;
    margin:0 auto 56px;
}
.ffg-review-summary-row .rh-summary{
    min-width:240px;
}
.ffg-review-summary-row .rh-big-num{
    font-family:var(--font-h);
    font-size:86px;
    line-height:.9;
    font-weight:900;
    color:var(--navy);
}
.ffg-review-summary-row .rh-stars{
    margin-top:18px;
    color:var(--red);
    font-size:20px;
    letter-spacing:4px;
}
.ffg-review-summary-row .rh-total{
    margin-top:8px;
    color:var(--text-soft);
    font-size:14px;
}
.ffg-review-summary-row .rh-bars{
    width:380px;
    max-width:100%;
}
.ffg-review-summary-row .rh-bar-row{
    display:grid;
    grid-template-columns:42px 1fr 42px;
    align-items:center;
    gap:12px;
    margin-bottom:8px;
}
.ffg-review-summary-row .rh-bar-label{
    font-family:var(--font-h);
    font-size:13px;
    font-weight:800;
    color:var(--navy);
}
.ffg-review-summary-row .rh-bar-track{
    height:9px;
    background:#ececec;
    border-radius:999px;
    overflow:hidden;
}
.ffg-review-summary-row .rh-bar-fill{
    height:100%;
    background:var(--red);
    border-radius:999px;
}
.ffg-review-summary-row .rh-bar-pct{
    font-size:12px;
    color:var(--text-soft);
    text-align:right;
}
.ffg-review-carousel-wrap{
    margin-top:0;
    margin-bottom:80px;
    overflow:hidden;
    max-width:100%;
}
.ffg-review-carousel{
    display:flex;
    gap:22px;
    animation:scrollT 32s linear infinite;
    width:max-content;
    will-change:transform;
}
.ffg-review-carousel:hover{
    animation-play-state:paused;
}
.ffg-review-card{
    background:var(--white);
    border:1px solid var(--gray-light);
    border-radius:6px;
    padding:30px;
    width:390px;
    min-height:240px;
    flex-shrink:0;
    transition:box-shadow .3s, transform .3s;
}
.ffg-review-card:hover{
    transform:translateY(-3px);
    box-shadow:0 14px 40px rgba(0,0,0,.08);
}
.ffg-review-card .tc-stars-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin-bottom:16px;
}
.ffg-review-card .tc-stars{
    color:var(--red);
    font-size:15px;
    letter-spacing:3px;
}
.ffg-review-card .tc-verified{
    color:#22a33b;
    font-family:var(--font-h);
    font-size:11px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}
.ffg-review-card-title{
    font-family:var(--font-h);
    font-size:16px;
    font-weight:900;
    color:var(--navy);
    text-transform:uppercase;
    margin:0 0 10px;
}
.ffg-review-card .tc-text{
    color:var(--text-soft);
    font-size:15px;
    font-style:italic;
    line-height:1.75;
    margin-bottom:22px;
}
.ffg-review-card .tc-author{
    display:flex;
    align-items:center;
    gap:13px;
}
.ffg-review-card .tc-av{
    width:44px;
    height:44px;
    border-radius:50%;
    background:var(--gray-mid);
    overflow:hidden;
    flex-shrink:0;
}
.ffg-review-card .tc-av img{
    width:100%;
    height:100%;
    object-fit:cover;
}
.ffg-review-card .tc-name{
    font-family:var(--font-h);
    font-size:14px;
    font-weight:900;
    text-transform:uppercase;
    color:var(--navy);
}
.ffg-review-card .tc-role{
    color:var(--gray-dark);
    font-size:12px;
    margin-top:2px;
}
.ffg-review-form-shell{
    background:var(--white);
    border:1px solid var(--gray-light);
    border-radius:8px;
    padding:44px;
    max-width:980px;
    margin:0 auto;
}
.ffg-write-review-heading{
    margin-bottom:34px;
}
.ffg-review-form{
    display:block;
}
.ffg-review-form .ffg-review-form-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:18px;
    margin-bottom:18px;
}
.ffg-review-form p{
    margin:0 0 18px;
}
.ffg-review-form label{
    display:block;
    font-family:var(--font-h);
    font-size:12px;
    font-weight:800;
    letter-spacing:.14em;
    text-transform:uppercase;
    color:var(--navy);
    margin-bottom:8px;
}
.ffg-review-form input[type="text"],
.ffg-review-form input[type="email"],
.ffg-review-form input[type="file"],
.ffg-review-form select,
.ffg-review-form textarea{
    width:100%;
    border:1px solid var(--gray-mid);
    border-radius:4px;
    background:var(--white);
    color:var(--navy);
    padding:13px 14px;
    font-family:var(--font-b);
    font-size:15px;
    outline:none;
    transition:border-color .2s, box-shadow .2s;
}
.ffg-review-form input:focus,
.ffg-review-form select:focus,
.ffg-review-form textarea:focus{
    border-color:var(--red);
    box-shadow:0 0 0 3px rgba(192,57,43,.12);
}
.ffg-review-form textarea{
    min-height:150px;
    resize:vertical;
}
.ffg-review-form .comment-form-author,
.ffg-review-form .comment-form-email{
    width:calc(50% - 9px);
    display:inline-block;
    vertical-align:top;
}
.ffg-review-form .comment-form-author{
    margin-right:14px;
}
.ffg-review-form .form-submit{
    margin-top:10px;
    text-align:center;
}
.ffg-review-form .submit,
.ffg-review-form .btn-red{
    width:auto;
    min-width:190px;
    background:var(--red) !important;
    color:var(--white) !important;
    border-radius:4px;
    padding:16px 30px;
    font-family:var(--font-h);
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
    border:0;
}
.ffg-review-form .submit:hover,
.ffg-review-form .btn-red:hover{
    background:var(--red-bright) !important;
    color:var(--white) !important;
}
.ffg-review-form .comment-form-cookies-consent{
    display:flex;
    align-items:center;
    gap:8px;
    color:var(--text-soft);
    font-size:14px;
}
.ffg-review-form .comment-form-cookies-consent label{
    margin:0;
    font-family:var(--font-b);
    font-size:14px;
    font-weight:400;
    letter-spacing:0;
    text-transform:none;
    color:var(--text-soft);
}
@media(max-width:900px){
    .ffg-review-summary-row{
        flex-direction:column;
        align-items:flex-start;
        gap:30px;
    }
    .ffg-review-form .ffg-review-form-grid,
    .ffg-review-form .comment-form-author,
    .ffg-review-form .comment-form-email{
        display:block;
        width:100%;
        margin-right:0;
    }
}
@media(max-width:700px){
    .ffg-product-reviews{
        padding:60px 0;
    }
    .ffg-review-card{
        width:310px;
        padding:24px;
    }
    .ffg-review-form-shell{
        padding:28px 20px;
    }
}


/* ============================================
   Final Fix: Single Product Breadcrumb + Review Carousel Speed
   - Prevent breadcrumb hover growth/jump
   - Match reviews carousel speed to homepage testimonials
   ============================================ */
.single-product .breadcrumb-bar,
.single-product .breadcrumb-bar:hover{
    padding:18px 0 !important;
    min-height:54px !important;
    height:auto !important;
    line-height:1.2 !important;
    transform:none !important;
    transition:none !important;
}

.single-product .breadcrumb-bar .wrap,
.single-product .breadcrumb-bar .wrap:hover,
.single-product .breadcrumb-bar .woocommerce-breadcrumb,
.single-product .breadcrumb-bar .woocommerce-breadcrumb:hover{
    margin:0 !important;
    padding:0 !important;
    min-height:0 !important;
    height:auto !important;
    line-height:1.2 !important;
    transform:none !important;
    transition:none !important;
    display:flex !important;
    align-items:center !important;
}

.single-product .breadcrumb-bar .woocommerce-breadcrumb a,
.single-product .breadcrumb-bar .woocommerce-breadcrumb a:hover,
.single-product .breadcrumb-bar .woocommerce-breadcrumb span,
.single-product .breadcrumb-bar .woocommerce-breadcrumb span:hover{
    margin:0 !important;
    padding:0 !important;
    line-height:1.2 !important;
    transform:none !important;
    transition:color .2s ease !important;
}

.single-product .ffg-review-carousel{
    animation:scrollT 32s linear infinite !important;
}

.single-product .ffg-review-carousel:hover{
    animation-play-state:paused !important;
}

/* ============================================
   FINAL PATCH: Single Product Breadcrumb Containment + Moving Reviews
   ============================================ */
.single-product .breadcrumb-bar,
.single-product .breadcrumb-bar:hover{
    background:var(--off-white) !important;
    border-bottom:1px solid var(--gray-light) !important;
    padding:18px 0 !important;
    min-height:54px !important;
    transform:none !important;
    transition:none !important;
}

.single-product .breadcrumb-bar .wrap,
.single-product .breadcrumb-bar .wrap:hover{
    width:100% !important;
    max-width:var(--container) !important;
    margin-left:auto !important;
    margin-right:auto !important;
    padding-left:var(--gutter) !important;
    padding-right:var(--gutter) !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    transform:none !important;
    transition:none !important;
}

.single-product .breadcrumb-bar .woocommerce-breadcrumb,
.single-product .breadcrumb-bar .woocommerce-breadcrumb:hover{
    margin:0 !important;
    padding:0 !important;
    min-height:0 !important;
    line-height:1.2 !important;
    display:flex !important;
    align-items:center !important;
    flex-wrap:wrap !important;
    gap:8px !important;
    transform:none !important;
    transition:none !important;
}

.single-product .breadcrumb-bar .woocommerce-breadcrumb a,
.single-product .breadcrumb-bar .woocommerce-breadcrumb a:hover,
.single-product .breadcrumb-bar .woocommerce-breadcrumb span,
.single-product .breadcrumb-bar .woocommerce-breadcrumb span:hover{
    margin:0 !important;
    padding:0 !important;
    line-height:1.2 !important;
    transform:none !important;
}

@media(max-width:1100px){
    .single-product .breadcrumb-bar .wrap,
    .single-product .breadcrumb-bar .wrap:hover{
        padding-left:40px !important;
        padding-right:40px !important;
    }
}

@media(max-width:700px){
    .single-product .breadcrumb-bar .wrap,
    .single-product .breadcrumb-bar .wrap:hover{
        padding-left:20px !important;
        padding-right:20px !important;
    }
}

@keyframes ffgProductReviewsScroll{
    from{transform:translateX(0)}
    to{transform:translateX(-50%)}
}

.single-product .ffg-review-carousel-wrap{
    overflow:hidden !important;
    max-width:100% !important;
}

.single-product .ffg-review-carousel{
    display:flex !important;
    gap:22px !important;
    width:max-content !important;
    min-width:max-content !important;
    will-change:transform !important;
    animation:ffgProductReviewsScroll 32s linear infinite !important;
}

.single-product .ffg-review-carousel:hover{
    animation-play-state:paused !important;
}


/* =========================================================
   Single product final sections: homepage CTA + related products
   ========================================================= */
.single-product .single-product-gym-cta{
    margin:0;
}
.single-product .single-product-gym-cta .gym-cta-inner,
.single-product .single-product-related-products .section-header,
.single-product .single-product-related-products .pc{
    opacity:1!important;
    visibility:visible!important;
    transform:none!important;
}
.single-product .single-product-related-products{
    background:#fff;
    padding:90px 0;
}
.single-product .single-product-related-products .prod-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:22px;
}
.single-product .single-product-related-products .pc{
    background:var(--off-white);
    border-radius:6px;
    overflow:hidden;
    cursor:pointer;
    transition:transform .35s ease,box-shadow .35s ease;
}
.single-product .single-product-related-products .pc:hover{
    transform:translateY(-8px)!important;
    box-shadow:0 20px 50px rgba(0,0,0,.11);
}
.single-product .single-product-related-products .pc-img{
    position:relative;
    overflow:hidden;
    height:280px;
    background:var(--off-white);
}
.single-product .single-product-related-products .pc-img img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .6s ease;
}
.single-product .single-product-related-products .pc:hover .pc-img img{
    transform:scale(1.06);
}
.single-product .single-product-related-products .pc-badge{
    position:absolute;
    top:12px;
    left:12px;
    background:var(--red);
    color:var(--white);
    padding:4px 10px;
    border-radius:2px;
    font-family:var(--font-h);
    font-size:11px;
    font-weight:700;
    letter-spacing:.08em;
    text-transform:uppercase;
    z-index:2;
}
.single-product .single-product-related-products .pc-body{
    padding:18px;
}
.single-product .single-product-related-products .pc-name{
    display:block;
    font-family:var(--font-h);
    font-size:18px;
    line-height:1.1;
    font-weight:800;
    text-transform:uppercase;
    color:var(--navy);
    margin-bottom:6px;
}
.single-product .single-product-related-products .pc-var{
    color:var(--text-soft);
    font-size:14px;
    margin-bottom:22px;
}
.single-product .single-product-related-products .pc-foot{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
}
.single-product .single-product-related-products .pc-price{
    font-family:var(--font-h);
    font-size:22px;
    font-weight:900;
    color:var(--navy);
}
.single-product .single-product-related-products .pc-old{
    color:var(--gray-dark);
    text-decoration:line-through;
    margin-right:8px;
    font-size:14px;
    font-weight:500;
}
.single-product .single-product-related-products .pc-add{
    width:36px;
    height:36px;
    border-radius:4px;
    background:var(--navy);
    color:var(--white);
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 36px;
    transition:background .25s ease,transform .25s ease;
}
.single-product .single-product-related-products .pc-add:hover{
    background:var(--red);
    transform:translateY(-2px)!important;
}
.single-product .single-product-related-products .pc-quick{
    display:none!important;
}
.footer{
    opacity:1!important;
    visibility:visible!important;
    transform:none!important;
}
@media(max-width:1100px){
    .single-product .single-product-related-products .prod-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:640px){
    .single-product .single-product-related-products{padding:60px 0;}
    .single-product .single-product-related-products .prod-grid{grid-template-columns:1fr;}
}


/* =========================================================
   Final Single Product Responsive + Reviews Background Polish
   - Reviews outer background white
   - Review cards/form use homepage-style light grey cards
   - Consistent container padding like header/footer/home sections
   - Mobile/tablet responsive cleanup for single product page
   ========================================================= */
.single-product #reviews.ffg-product-reviews,
.single-product .ffg-product-reviews{
    background:#ffffff !important;
    padding:90px 0 !important;
    overflow:hidden !important;
}
.single-product .ffg-product-reviews > .wrap,
.single-product .ffg-product-reviews .wrap,
.single-product .single-product-related-products .wrap,
.single-product .single-product-gym-cta .wrap,
.single-product .product-hero .wrap,
.single-product .woocommerce-tabs .wrap{
    width:100% !important;
    max-width:var(--container) !important;
    margin-left:auto !important;
    margin-right:auto !important;
    padding-left:var(--gutter) !important;
    padding-right:var(--gutter) !important;
    box-sizing:border-box !important;
}
.single-product .ffg-review-carousel-wrap{
    width:100% !important;
    max-width:var(--container) !important;
    margin:0 auto 80px !important;
    padding-left:var(--gutter) !important;
    padding-right:var(--gutter) !important;
    box-sizing:border-box !important;
    overflow:hidden !important;
}
.single-product .ffg-review-card,
.single-product .ffg-review-form-shell{
    background:var(--off-white) !important;
    border:1px solid var(--gray-light) !important;
}
.single-product .ffg-review-card:hover{
    background:var(--off-white) !important;
}
.single-product .ffg-review-form input[type="text"],
.single-product .ffg-review-form input[type="email"],
.single-product .ffg-review-form input[type="file"],
.single-product .ffg-review-form select,
.single-product .ffg-review-form textarea{
    background:#ffffff !important;
}
.single-product .single-product-gym-cta{
    margin-top:0 !important;
}
.single-product .single-product-related-products{
    overflow:hidden !important;
}
.single-product .footer,
.single-product footer.footer{
    opacity:1 !important;
    visibility:visible !important;
    transform:none !important;
}

/* Tablet: stack hero, keep same section rhythm */
@media(max-width:1100px){
    .single-product :root{--gutter:40px;}
    .single-product .wrap,
    .single-product .product-hero .wrap,
    .single-product .ffg-product-reviews .wrap,
    .single-product .ffg-review-carousel-wrap,
    .single-product .single-product-related-products .wrap,
    .single-product .single-product-gym-cta .wrap,
    .single-product .breadcrumb-bar .wrap{
        padding-left:40px !important;
        padding-right:40px !important;
    }
    .single-product .product-grid{
        grid-template-columns:1fr !important;
        gap:44px !important;
    }
    .single-product .gallery-main{
        max-width:760px;
        margin:0 auto;
    }
    .single-product .gallery-thumbs,
    .single-product .gallery-video-btn{
        max-width:760px;
        margin-left:auto;
        margin-right:auto;
    }
    .single-product .product-info-col{
        max-width:760px;
        margin:0 auto;
        width:100%;
    }
    .single-product .cust-grid,
    .single-product .custom-grid{
        grid-template-columns:1fr !important;
        gap:48px !important;
    }
    .single-product .single-product-related-products .prod-grid{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
}

/* Mobile: full responsive cleanup */
@media(max-width:700px){
    .single-product .wrap,
    .single-product .product-hero .wrap,
    .single-product .ffg-product-reviews .wrap,
    .single-product .ffg-review-carousel-wrap,
    .single-product .single-product-related-products .wrap,
    .single-product .single-product-gym-cta .wrap,
    .single-product .breadcrumb-bar .wrap{
        padding-left:20px !important;
        padding-right:20px !important;
    }
    .single-product .breadcrumb-bar{
        padding:12px 0 !important;
        min-height:auto !important;
    }
    .single-product .woocommerce-breadcrumb{
        font-size:10px !important;
        gap:6px !important;
        line-height:1.4 !important;
    }
    .single-product .product-hero{
        padding:38px 0 52px !important;
    }
    .single-product .product-grid{
        display:block !important;
    }
    .single-product .gallery-col,
    .single-product .product-info-col{
        width:100% !important;
        max-width:100% !important;
    }
    .single-product .gallery-main{
        border-radius:7px !important;
        width:100% !important;
        max-width:100% !important;
    }
    .single-product .gallery-badge{
        top:12px !important;
        left:12px !important;
    }
    .single-product .gbadge{
        font-size:9px !important;
        padding:5px 9px !important;
    }
    .single-product .gallery-thumbs{
        grid-template-columns:repeat(4,1fr) !important;
        gap:10px !important;
        margin-top:14px !important;
    }
    .single-product .gallery-video-btn{
        width:100% !important;
        margin-top:14px !important;
    }
    .single-product .product-info-col{
        margin-top:34px !important;
    }
    .single-product .single-product-category-pills{
        margin-bottom:14px !important;
    }
    .single-product .prod-name,
    .single-product .product_title{
        font-size:38px !important;
        line-height:.98 !important;
        margin-bottom:16px !important;
    }
    .single-product .rating-row{
        gap:9px !important;
        row-gap:7px !important;
        margin-bottom:18px !important;
    }
    .single-product .rating-row .stars,
    .single-product .stars{
        font-size:14px !important;
        letter-spacing:2px !important;
    }
    .single-product .rating-link{
        display:inline-flex !important;
    }
    .single-product .price-row{
        align-items:center !important;
        flex-wrap:wrap !important;
        gap:10px !important;
        margin-bottom:18px !important;
    }
    .single-product .price-current{
        font-size:36px !important;
        line-height:1 !important;
    }
    .single-product .price-old{
        font-size:18px !important;
    }
    .single-product .prod-short-desc{
        font-size:15px !important;
        line-height:1.75 !important;
        margin-bottom:24px !important;
        padding-bottom:24px !important;
    }
    .single-product .variations,
    .single-product .variations tbody,
    .single-product .variations tr,
    .single-product .variations td,
    .single-product .variations th{
        display:block !important;
        width:100% !important;
    }
    .single-product .size-btns,
    .single-product .ffg-variation-buttons{
        gap:8px !important;
        flex-wrap:wrap !important;
    }
    .single-product .sz-btn,
    .single-product .ffg-variation-button{
        min-width:56px !important;
        height:44px !important;
    }
    .single-product .qty-row,
    .single-product form.cart{
        width:100% !important;
    }
    .single-product .cta-row,
    .single-product .single_add_to_cart_button_wrap,
    .single-product .ffg-product-actions{
        display:flex !important;
        flex-direction:column !important;
        gap:12px !important;
        width:100% !important;
    }
    .single-product .cta-row .btn,
    .single-product .single_add_to_cart_button,
    .single-product .buy-now-button,
    .single-product .ffg-buy-now{
        width:100% !important;
        min-width:0 !important;
    }
    .single-product .woocommerce-tabs{
        margin-top:0 !important;
        padding-top:55px !important;
    }
    .single-product .woocommerce-tabs ul.tabs{
        display:flex !important;
        gap:30px !important;
        overflow-x:auto !important;
        white-space:nowrap !important;
        padding:0 0 12px !important;
        margin:0 0 32px !important;
        scrollbar-width:none !important;
    }
    .single-product .woocommerce-tabs ul.tabs::-webkit-scrollbar{
        display:none !important;
    }
    .single-product .woocommerce-tabs ul.tabs li a{
        font-size:12px !important;
        padding:0 0 10px !important;
    }
    .single-product .woocommerce-tabs .woocommerce-Tabs-panel,
    .single-product .ffg-tab-full-content{
        width:100% !important;
        max-width:100% !important;
    }
    .single-product .woocommerce-tabs .woocommerce-Tabs-panel p,
    .single-product .ffg-tab-full-content p{
        font-size:15px !important;
        line-height:1.85 !important;
    }
    .single-product .single-product-home-customizer,
    .single-product .customizer{
        padding:70px 0 !important;
    }
    .single-product .cust-title,
    .single-product .custom-title{
        font-size:34px !important;
        line-height:1.05 !important;
    }
    .single-product .cust-desc,
    .single-product .custom-desc{
        font-size:15px !important;
        line-height:1.75 !important;
    }
    .single-product .cust-visual,
    .single-product .glove-stage{
        display:none !important;
    }
    .single-product .ffg-product-reviews{
        padding:70px 0 !important;
    }
    .single-product .ffg-reviews-heading{
        margin-bottom:42px !important;
    }
    .single-product .ffg-review-summary-row{
        display:flex !important;
        flex-direction:column !important;
        align-items:flex-start !important;
        gap:30px !important;
        max-width:100% !important;
        margin-bottom:46px !important;
    }
    .single-product .ffg-review-summary-row .rh-big-num{
        font-size:70px !important;
    }
    .single-product .ffg-review-summary-row .rh-bars{
        width:100% !important;
    }
    .single-product .ffg-review-carousel-wrap{
        margin-bottom:54px !important;
    }
    .single-product .ffg-review-card{
        width:300px !important;
        min-height:250px !important;
        padding:24px !important;
    }
    .single-product .ffg-review-form-shell{
        padding:34px 20px !important;
        max-width:100% !important;
    }
    .single-product .ffg-review-form .ffg-review-form-grid{
        grid-template-columns:1fr !important;
        gap:0 !important;
    }
    .single-product .ffg-review-form .comment-form-author,
    .single-product .ffg-review-form .comment-form-email{
        display:block !important;
        width:100% !important;
        margin-right:0 !important;
    }
    .single-product .ffg-review-form textarea{
        min-height:150px !important;
    }
    .single-product .ffg-review-form .submit,
    .single-product .ffg-review-form .btn-red{
        width:100% !important;
        min-width:0 !important;
    }
    .single-product .single-product-gym-cta .gym-cta,
    .single-product .single-product-gym-cta{
        padding:70px 0 !important;
    }
    .single-product .single-product-gym-cta .gym-cta-actions,
    .single-product .gym-cta-actions,
    .single-product .single-product-gym-cta .gym-btns,
    .single-product .gym-btns{
        display:flex !important;
        flex-direction:column !important;
        gap:12px !important;
        align-items:stretch !important;
    }
    .single-product .single-product-gym-cta .btn,
    .single-product .gym-cta-actions .btn,
    .single-product .single-product-gym-cta .gym-btns .btn,
    .single-product .gym-btns .btn{
        width:100% !important;
        max-width:none !important;
    }
    .single-product .single-product-related-products{
        padding:70px 0 !important;
    }
    .single-product .single-product-related-products .prod-grid{
        grid-template-columns:1fr !important;
        gap:20px !important;
    }
    .single-product .single-product-related-products .pc-img{
        height:auto !important;
        aspect-ratio:1/1 !important;
    }
    .single-product footer.footer,
    .single-product .footer{
        padding-top:70px !important;
    }
}

@media(max-width:420px){
    .single-product .prod-name,
    .single-product .product_title{
        font-size:34px !important;
    }
    .single-product .section-title{
        font-size:32px !important;
    }
    .single-product .gallery-thumbs{
        gap:8px !important;
    }
    .single-product .ffg-review-card{
        width:285px !important;
    }
}

/* =========================================================
   Final Patch: Single Product Reviews Full-Width Carousel,
   Related Products Visibility, and Mobile Spacing Cleanup
   ========================================================= */

/* Keep review section white, but let the moving cards span full browser width like homepage testimonials */
.single-product #reviews.ffg-product-reviews,
.single-product .ffg-product-reviews{
    background:#ffffff !important;
}

.single-product .ffg-product-reviews > .wrap,
.single-product .ffg-product-reviews .wrap{
    max-width:var(--container) !important;
    margin-left:auto !important;
    margin-right:auto !important;
    padding-left:var(--gutter) !important;
    padding-right:var(--gutter) !important;
}

.single-product .ffg-review-carousel-wrap,
.single-product .ttrack-wrap.ffg-review-carousel-wrap{
    width:100vw !important;
    max-width:none !important;
    margin-left:calc(50% - 50vw) !important;
    margin-right:calc(50% - 50vw) !important;
    padding-left:0 !important;
    padding-right:0 !important;
    overflow:hidden !important;
}

.single-product .ffg-review-carousel,
.single-product .ttrack.ffg-review-carousel{
    animation:scrollT 32s linear infinite !important;
    width:max-content !important;
}

.single-product .ffg-review-carousel:hover,
.single-product .ttrack.ffg-review-carousel:hover{
    animation-play-state:paused !important;
}

.single-product .ffg-review-card,
.single-product .tc.ffg-review-card{
    background:#f7f7f7 !important;
}

.single-product .ffg-review-form-shell{
    background:#f7f7f7 !important;
}

/* Related products must always display below the gym CTA and use homepage card grid width */
.single-product .single-product-related-products{
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
    background:#ffffff !important;
    padding:90px 0 !important;
    overflow:hidden !important;
}

.single-product .single-product-related-products .wrap{
    max-width:var(--container) !important;
    margin-left:auto !important;
    margin-right:auto !important;
    padding-left:var(--gutter) !important;
    padding-right:var(--gutter) !important;
}

.single-product .single-product-related-products .prod-grid{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:24px !important;
}

/* Mobile cleanup requested */
@media(max-width:700px){
    .single-product .ffg-product-tabs.woocommerce-tabs,
    .single-product .tabs-section.ffg-product-tabs,
    .single-product .woocommerce div.product .woocommerce-tabs.ffg-product-tabs,
    .single-product .woocommerce-tabs{
        margin-top:0 !important;
        padding-top:30px !important;
        background:#fff !important;
        box-shadow:none !important;
        border:0 !important;
    }

    .single-product .ffg-product-tabs.woocommerce-tabs ul.tabs,
    .single-product .ffg-product-tabs .ffg-tabs-nav,
    .single-product .woocommerce div.product .woocommerce-tabs.ffg-product-tabs ul.tabs,
    .single-product .woocommerce-tabs ul.tabs{
        margin:0 0 30px !important;
        padding:0 0 12px !important;
        gap:30px !important;
    }

    .single-product .woocommerce-tabs .wrap{
        padding-left:0 !important;
        padding-right:0 !important;
    }

    .single-product .single-product-gym-cta,
    .single-product .single-product-gym-cta.gym-cta{
        padding:70px 20px !important;
        box-sizing:border-box !important;
    }

    .single-product .single-product-gym-cta .gym-cta-inner{
        width:100% !important;
        max-width:100% !important;
        margin-left:auto !important;
        margin-right:auto !important;
    }

    .single-product .ffg-review-carousel-wrap,
    .single-product .ttrack-wrap.ffg-review-carousel-wrap{
        width:100vw !important;
        margin-left:calc(50% - 50vw) !important;
        margin-right:calc(50% - 50vw) !important;
        padding-left:0 !important;
        padding-right:0 !important;
    }

    .single-product .single-product-related-products{
        padding:70px 0 !important;
    }

    .single-product .single-product-related-products .wrap{
        padding-left:20px !important;
        padding-right:20px !important;
    }

    .single-product .single-product-related-products .prod-grid{
        grid-template-columns:1fr !important;
        gap:20px !important;
    }
}

@media(min-width:701px) and (max-width:1100px){
    .single-product .single-product-related-products .prod-grid{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
}

/* Final mobile spacing patch */
@media (max-width: 767px){
  .single-product .ffg-product-tabs.woocommerce-tabs,
  .single-product .tabs-section.ffg-product-tabs{
    padding-left: 20px !important;
    padding-right: 20px !important;
    box-sizing: border-box !important;
  }

  .single-product .ffg-product-tabs .woocommerce-Tabs-panel,
  .single-product .ffg-product-tabs .tab-pane-inner,
  .single-product .ffg-product-tabs .ffg-description-grid,
  .single-product .ffg-product-tabs .ffg-specs-grid{
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .single-product .ffg-review-form-shell{
    padding-left: 20px !important;
    padding-right: 20px !important;
    width: calc(100% - 40px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }
}

/* =========================================================
   Final Patch: Single Product Mobile Reviews + Related Product Quick View
   ========================================================= */

/* Restore homepage-style quick view/eye button on related products */
.single-product .single-product-related-products .pc-quick{
    position:absolute !important;
    bottom:18px !important;
    right:18px !important;
    width:34px !important;
    height:34px !important;
    background:var(--navy) !important;
    border-radius:4px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    color:var(--white) !important;
    opacity:0 !important;
    visibility:visible !important;
    transform:translateY(6px) !important;
    transition:opacity .28s ease, transform .28s ease, background .3s ease, color .3s ease !important;
    z-index:5 !important;
}
.single-product .single-product-related-products .pc:hover .pc-quick,
.single-product .single-product-related-products .pc:focus-within .pc-quick{
    opacity:1 !important;
    transform:translateY(0) !important;
}
.single-product .single-product-related-products .pc-quick:hover{
    background:var(--red) !important;
    color:var(--white) !important;
}
.single-product .single-product-related-products .pc-quick svg{
    width:18px !important;
    height:18px !important;
    flex-shrink:0 !important;
}

@media (max-width: 767px){
    /* Reviews summary mobile spacing and centering */
    .single-product #reviews.ffg-product-reviews,
    .single-product .ffg-product-reviews{
        padding-left:0 !important;
        padding-right:0 !important;
    }

    .single-product .ffg-product-reviews > .wrap,
    .single-product .ffg-product-reviews .wrap{
        width:100% !important;
        max-width:100% !important;
        padding-left:20px !important;
        padding-right:20px !important;
        margin-left:auto !important;
        margin-right:auto !important;
        box-sizing:border-box !important;
    }

    .single-product .ffg-review-summary-row{
        width:100% !important;
        max-width:100% !important;
        margin-left:auto !important;
        margin-right:auto !important;
        padding-left:0 !important;
        padding-right:0 !important;
        align-items:center !important;
        text-align:center !important;
        box-sizing:border-box !important;
    }

    .single-product .ffg-review-summary-row .rh-summary{
        width:100% !important;
        min-width:0 !important;
        text-align:center !important;
    }

    .single-product .ffg-review-summary-row .rh-stars,
    .single-product .ffg-review-summary-row .rh-total{
        text-align:center !important;
        justify-content:center !important;
        margin-left:auto !important;
        margin-right:auto !important;
    }

    .single-product .ffg-review-summary-row .rh-bars{
        width:100% !important;
        max-width:320px !important;
        margin-left:auto !important;
        margin-right:auto !important;
        text-align:left !important;
    }

    .single-product .ffg-review-summary-row .rh-bar-row{
        grid-template-columns:38px 1fr 38px !important;
        gap:10px !important;
    }

    /* Review form mobile spacing */
    .single-product .ffg-review-form-shell{
        width:calc(100% - 40px) !important;
        max-width:100% !important;
        margin-left:auto !important;
        margin-right:auto !important;
        padding:34px 20px !important;
        box-sizing:border-box !important;
    }

    .single-product .ffg-review-form-shell .wrap,
    .single-product .ffg-review-form{
        width:100% !important;
        max-width:100% !important;
        padding-left:0 !important;
        padding-right:0 !important;
        box-sizing:border-box !important;
    }

    .single-product .ffg-review-form input[type="text"],
    .single-product .ffg-review-form input[type="email"],
    .single-product .ffg-review-form input[type="file"],
    .single-product .ffg-review-form select,
    .single-product .ffg-review-form textarea{
        max-width:100% !important;
        box-sizing:border-box !important;
    }

    /* Make quick view visible/tappable on mobile */
    .single-product .single-product-related-products .pc-quick{
        opacity:1 !important;
        transform:none !important;
        bottom:16px !important;
        right:16px !important;
    }
}

/* =========================================================
   Final Patch: Review mobile padding + product card action consistency
   ========================================================= */

/* Product card buttons: keep eye and plus actions consistent everywhere on single product related cards */
.single-product .single-product-related-products .pc-quick,
.single-product .single-product-related-products .pc-add{
    width:36px !important;
    height:36px !important;
    min-width:36px !important;
    max-width:36px !important;
    min-height:36px !important;
    max-height:36px !important;
    border-radius:4px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    box-sizing:border-box !important;
}
.single-product .single-product-related-products .pc-quick{
    right:18px !important;
    bottom:18px !important;
    opacity:0 !important;
    transform:translateY(6px) !important;
}
.single-product .single-product-related-products .pc:hover .pc-quick,
.single-product .single-product-related-products .pc:focus-within .pc-quick{
    opacity:1 !important;
    transform:translateY(0) !important;
}

@media (max-width:767px){
    /* Remove the extra mobile side padding caused by the reviews wrap */
    .single-product .ffg-product-reviews > .wrap,
    .single-product .ffg-product-reviews .wrap{
        padding-left:0 !important;
        padding-right:0 !important;
        max-width:100% !important;
        width:100% !important;
    }

    /* Keep the review summary and form aligned without the double side gutter */
    .single-product .ffg-review-summary-row,
    .single-product .ffg-reviews-heading{
        width:calc(100% - 40px) !important;
        max-width:100% !important;
        margin-left:auto !important;
        margin-right:auto !important;
        box-sizing:border-box !important;
    }

    .single-product .ffg-review-form-shell{
        width:calc(100% - 40px) !important;
        margin-left:auto !important;
        margin-right:auto !important;
        padding:34px 20px !important;
        box-sizing:border-box !important;
    }

    /* Do not show the eye button by default on mobile; reveal on hover/focus/tap state only */
    .single-product .single-product-related-products .pc-quick{
        width:36px !important;
        height:36px !important;
        right:16px !important;
        bottom:16px !important;
        opacity:0 !important;
        transform:translateY(6px) !important;
    }
    .single-product .single-product-related-products .pc:hover .pc-quick,
    .single-product .single-product-related-products .pc:focus-within .pc-quick,
    .single-product .single-product-related-products .pc.is-active .pc-quick{
        opacity:1 !important;
        transform:translateY(0) !important;
    }
    .single-product .single-product-related-products .pc-add{
        width:36px !important;
        height:36px !important;
        flex:0 0 36px !important;
    }
}


/* =========================================================
   FINAL LOCK: Header / announcement / breadcrumb hover height
   + mobile product variation spacing
   ========================================================= */

/* Lock announcement/header/breadcrumb vertical dimensions so hover cannot push layout down */
.single-product .announcement-bar,
.single-product .announcement-bar:hover,
.single-product .site-header,
.single-product .site-header:hover,
.single-product .breadcrumb-bar,
.single-product .breadcrumb-bar:hover{
    transform:none !important;
    transition:background .25s ease, color .25s ease, box-shadow .25s ease !important;
    box-sizing:border-box !important;
}

/* Announcement bar: keep height/padding unchanged on hover */
.single-product .announcement-bar,
.single-product .announcement-bar:hover{
    padding-top:11px !important;
    padding-bottom:11px !important;
    line-height:1.2 !important;
}
.single-product .announcement-bar *,
.single-product .announcement-bar *:hover{
    margin-top:0 !important;
    margin-bottom:0 !important;
    transform:none !important;
    line-height:inherit !important;
}

/* Header: keep all nav/icon/CTA hover effects from changing vertical height */
.single-product .site-header,
.single-product .site-header:hover{
    min-height:70px !important;
}
.single-product .site-header .hd,
.single-product .site-header .hd:hover{
    height:70px !important;
    min-height:70px !important;
    max-height:70px !important;
    align-items:center !important;
}
.single-product .site-header a,
.single-product .site-header a:hover,
.single-product .site-header button,
.single-product .site-header button:hover,
.single-product .site-header .hd-icon,
.single-product .site-header .hd-icon:hover,
.single-product .site-header .hd-cta,
.single-product .site-header .hd-cta:hover{
    transform:none !important;
    margin-top:0 !important;
    margin-bottom:0 !important;
    box-sizing:border-box !important;
}

/* Breadcrumb: fixed vertical rhythm on normal + hover */
.single-product .breadcrumb-bar,
.single-product .breadcrumb-bar:hover{
    height:54px !important;
    min-height:54px !important;
    max-height:54px !important;
    padding-top:0 !important;
    padding-bottom:0 !important;
    overflow:hidden !important;
    display:flex !important;
    align-items:center !important;
}
.single-product .breadcrumb-bar .wrap,
.single-product .breadcrumb-bar .wrap:hover,
.single-product .breadcrumb-bar .woocommerce-breadcrumb,
.single-product .breadcrumb-bar .woocommerce-breadcrumb:hover{
    height:54px !important;
    min-height:54px !important;
    max-height:54px !important;
    padding-top:0 !important;
    padding-bottom:0 !important;
    align-items:center !important;
    line-height:1 !important;
    transform:none !important;
    box-sizing:border-box !important;
}
.single-product .breadcrumb-bar a,
.single-product .breadcrumb-bar a:hover,
.single-product .breadcrumb-bar span,
.single-product .breadcrumb-bar span:hover{
    display:inline-flex !important;
    align-items:center !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    padding-top:0 !important;
    padding-bottom:0 !important;
    margin-top:0 !important;
    margin-bottom:0 !important;
    border-top:0 !important;
    border-bottom:0 !important;
    line-height:1 !important;
    transform:none !important;
    box-shadow:none !important;
}

/* Mobile-only: cleaner spacing between variation/attribute groups */
@media (max-width:767px){
    .single-product .variations_form .variations{
        gap:18px !important;
        margin-bottom:24px !important;
    }
    .single-product .variations_form .variations tr,
    .single-product .variations_form .variations .opt-section,
    .single-product .product-info-col .opt-section{
        margin-bottom:18px !important;
    }
    .single-product .product-info-col .opt-section + .opt-section{
        margin-top:4px !important;
    }
    .single-product .product-info-col .ffg-size-help-row,
    .single-product .product-info-col .variation-actions,
    .single-product .product-info-col .reset-variation{
        margin-top:10px !important;
    }
    .single-product .product-info-col .qty-row{
        margin-top:18px !important;
        margin-bottom:24px !important;
    }
    .single-product .size-btns,
    .single-product .ffg-variation-buttons,
    .single-product .color-swatches{
        margin-bottom:0 !important;
    }

    .single-product .breadcrumb-bar,
    .single-product .breadcrumb-bar:hover,
    .single-product .breadcrumb-bar .wrap,
    .single-product .breadcrumb-bar .wrap:hover,
    .single-product .breadcrumb-bar .woocommerce-breadcrumb,
    .single-product .breadcrumb-bar .woocommerce-breadcrumb:hover{
        height:48px !important;
        min-height:48px !important;
        max-height:48px !important;
    }

    .single-product .site-header,
    .single-product .site-header:hover,
    .single-product .site-header .hd,
    .single-product .site-header .hd:hover{
        min-height:64px !important;
        height:64px !important;
        max-height:64px !important;
    }
}


/* ══════════════════════════════════════════
   SIZE CHART SECTION
   ══════════════════════════════════════════ */

.size-chart-section{
    padding-top:50px !important;
    padding-bottom:50px !important;
    scroll-margin-top:120px;
    background:var(--white);
}

.size-chart-section .section-header{
    text-align:center;
    margin-bottom:52px;
}

.size-chart-wrapper{
    max-width:1200px;
    margin:0 auto;
    overflow-x:auto;
}

.size-chart-table{
    width:100%;
    border-collapse:collapse;
    border-radius:8px;
    overflow:hidden;
    box-shadow:0 2px 12px rgba(0,0,0,.08);
}

.size-chart-table thead tr{
    background:var(--navy);
}

.size-chart-table thead th{
    font-family:var(--font-h);
    font-size:12px;
    font-weight:700;
    letter-spacing:.12em;
    text-transform:uppercase;
    color:var(--white);
    padding:16px 20px;
    text-align:left;
    white-space:nowrap;
}

.size-chart-table tbody tr{
    background:var(--white);
    border-bottom:1px solid var(--gray-light);
    transition:background .2s;
}

.size-chart-table tbody tr:hover{
    background:var(--off-white);
}

.size-chart-table tbody tr:last-child{
    border-bottom:none;
}

.size-chart-table tbody tr.popular-row{
    background:rgba(192,57,43,.04);
    border-left:3px solid var(--red);
}

.size-chart-table tbody td{
    font-size:14px;
    color:var(--text);
    padding:16px 20px;
}

.popular-badge{
    display:inline-block;
    background:var(--red);
    color:var(--white);
    padding:3px 8px;
    border-radius:3px;
    font-family:var(--font-h);
    font-size:9px;
    font-weight:700;
    letter-spacing:.1em;
    text-transform:uppercase;
    margin-left:8px;
}

/* Responsive */
@media (max-width: 768px) {
    .size-chart-table{
        font-size:13px;
    }
    
    .size-chart-table thead th,
    .size-chart-table tbody td{
        padding:12px 15px;
    }
}


/* ══════════════════════════════════════════
   SPECIFICATIONS LIST (In Tabs)
   ══════════════════════════════════════════ */

.product-specifications-list{
    display:flex;
    flex-direction:column;
    gap:0;
    max-width:100% !important;
    width:100% !important;
}

.spec-row{
    display:flex;
    align-items:flex-start;
    padding:14px 0;
    border-bottom:1px solid var(--gray-light);
}

.spec-row:last-child{
    border-bottom:none;
}

.spec-label{
    flex:0 0 40%;
    font-family:var(--font-h);
    font-size:13px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.06em;
    color:var(--navy);
    padding-right:20px;
}

.spec-value{
    flex:1;
    font-size:15px;
    color:var(--text-soft);
    line-height:1.6;
}

/* Responsive */
@media (max-width: 768px) {
    .spec-row{
        flex-direction:column;
        gap:6px;
    }
    
    .spec-label{
        padding-right:0;
    }
}


/* Final 3-systems polish */
.single-product .size-chart-section {
    padding-top: 50px !important;
    padding-bottom: 50px !important;
    scroll-margin-top: 120px;
}

.single-product .size-chart-section .prod-eyebrow {
    text-align: center;
    margin-bottom: 10px;
}

