/* 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;
}
.product-categories-home .product-category .product-wrapper {
    position: relative;
    overflow: hidden;
}
.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;
}