/* Reviews */
.custom-review-carousel { padding:20px; }
.review-item { text-align:center; padding:20px; }
.star.full,.star.half { color:#f5b301; }
.star.empty { color:#e6e6e6; }
.review-text { max-width:340px; margin:auto; }

/* Size Guide */
#size-guide-button, #chart-button {
    border:1px solid #a3a3a3;
    padding:7px 10px;
    border-radius:5px;
    cursor:pointer;
}

.so-sizeguide-modal {
    display:none;
    position:fixed;
    inset:0;
    z-index:99999;
}

.so-sizeguide-modal.open { display:block; }

.so-sizeguide-backdrop {
    position:absolute;
    inset:0;
    background:rgba(0,0,0,0.6);
}

.so-sizeguide-dialog {
    position:relative;
    margin:5% auto;
    background:#fff;
    max-width:800px;
    padding:20px;
}
a#size-guide-button {
    background: transparent !important;
    border: 1px solid #a3a3a3;
    color: black;
    font-weight: 500;
    box-shadow: 3px 3px 5px #c6c6c6;
    padding: 7px 10px;
    border-radius: 5px;
}
	a#chart-button {
    background: transparent !important;
    border: 1px solid #a3a3a3;
    color: black;
    font-weight: 500;
    box-shadow: 3px 3px 5px #c6c6c6;
}
	.button-wrapper {
    margin: 7px 0 20px 0 !important;
}
	a#size-guide-button:hover, a#chart-button:hover {
    text-decoration: none;
    background: #f27e01 !important;
    border: #f27e01 !important;
    color: white;
}
/* Modal styling */
        .so-sizeguide-modal{ position:fixed; inset:0; display:none; z-index:999999; }
        .so-sizeguide-modal.is-open{ display:block; }
        .so-sizeguide-backdrop{ position:absolute; inset:0; background:rgba(0,0,0,.65); }

        .so-sizeguide-dialog{
            position:relative;
            width:min(900px, calc(100vw - 32px));
            margin:5vh auto;
            background:#fff;
            border-radius:14px;
            overflow:hidden;
            box-shadow:0 20px 60px rgba(0,0,0,.35);
        }
        .so-sizeguide-close{
            position:absolute;
            right:10px; top:10px;
            width:40px; height:40px;
            border-radius:10px;
            border:1px solid rgba(0,0,0,.12);
            background:#fff;
            cursor:pointer;
            font-size:24px;
            line-height:1;
        }
        .so-sizeguide-content{ padding:14px; max-height:85vh; overflow:auto; }
        .so-sizeguide-content img{ width:100%; height:auto; display:block; }

        /* Make sure both buttons sit in one row neatly */
        .button-wrapper{
            display:flex;
            gap:10px;
            align-items:center;
            flex-wrap:wrap;
        }
.product-categories-home .product-category .product-wrapper {
    position: relative;
    overflow: hidden;
}
.product-content.opened {
    max-height: 3500px !important;
    overflow: auto !important;
}
.faq-section{
max-width:1100px;
margin:auto;
font-family:Arial, Helvetica, sans-serif;
}

.faq-title{
text-align:center;
font-size:32px;
font-weight:700;
margin-bottom:25px;
}

.faq-item{
border-bottom:8px solid #ffffff;
}

.faq-question{
background:#e9e9e9;
padding:18px 20px;
font-size:18px;
cursor:pointer;
display:flex;
justify-content:space-between;
align-items:center;
}

.faq-question:hover{
background:#e1e1e1;
}

.faq-answer{
display:none;
background:#f7f7f7;
padding:18px 20px;
font-size:15px;
line-height:1.6;
}

.faq-item.active .faq-answer{
display:block;
}

.faq-icon{
font-size:26px;
font-weight:bold;
}
/* Dark overlay */
.product-categories-home .product-category .product-wrapper::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.45); /* adjust opacity here */
    z-index: 1;
    transition: 0.3s ease;
}

/* Keep image normal */
.product-categories-home .product-category .product-wrapper img {
    display: block;
    width: 100%;
}

/* Position text over image */
.product-categories-home .product-category .meta-wrapper {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

/* Make text white */
.product-categories-home .product-category .heading-title a {
    color: #fff;
    font-size: 28px;
    font-weight: 600;
    text-decoration: none;
}
.home-text-section {
    border: 1px solid #cacaca;
    border-radius: 5px;
    padding: 30px 10px;
    max-height: 550px !important;
    overflow: auto;
}