/*
 * Enter any custom CSS here.
 * This file will not be overwritten by theme updates.
*/

/* Center shop titles */
.section-title,
.section-subtitle{
    text-align:center !important;
    margin-left:auto !important;
    margin-right:auto !important;
}

/* Product cards */
.product-card{
    max-width: 320px;
    margin: 0 auto;
}

.product-image{
    height: 260px !important;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
}

.product-image img{
    width:100%;
    height:100%;
    object-fit:contain !important;
}

/* Product content */
.product-content{
    padding:18px !important;
}

/* Hide old thumbnails if any */
.thumbnails{
    display:none !important;
}

/* Carousel image */
.carousel-item img{
    width:100%;
    max-height:700px;
    object-fit:contain;
}

/* Smaller addon images */
.addon-small-image{
    max-width:120px !important;
    max-height:120px !important;
    object-fit:contain;
}

/* Cleaner carousel controls */
.carousel-control-prev,
.carousel-control-next{
    width:50px;
}


/* Slightly larger product cards */
.product-card{
    max-width: 360px !important;
    width:100%;
}

/* Keep images large */
.product-image{
    height:300px !important;
}

/* Center stock heading */
.section-subtitle,
.stock-title,
.products-subtitle{
    text-align:center !important;
    width:100%;
    display:block;
    margin-left:auto !important;
    margin-right:auto !important;
}

/* Center FAQ */
.faq-section,
.faq-section h1,
.faq-section h2,
.faq-section h3,
.faq-section p,
.faq-title{
    text-align:center !important;
}

/* Fix addon image size */
.addon-small-image,
.addon-product img,
.addon img{
    max-width:110px !important;
    max-height:110px !important;
    width:110px !important;
    height:110px !important;
    object-fit:contain !important;
    display:block;
    margin:auto;
}


/* FINAL ADDON FIX */
.addon img,
.addon-product img,
.addon-small-image,
.product-addon img{
    width:75px !important;
    height:75px !important;
    max-width:75px !important;
    max-height:75px !important;
    object-fit:contain !important;
    border-radius:8px;
    display:block;
}

/* Ensure addon descriptions display */
.addon-description,
.addon-product .description,
.product-addon .description,
.addon p,
.addon small{
    display:block !important;
    opacity:1 !important;
    visibility:visible !important;
    height:auto !important;
}


/* ===== FINAL PRODUCT CARD TUNING ===== */

.product-card{
    transform:scale(0.93);
    transform-origin:center top;
    margin:auto !important;
    max-width:340px !important;
}

.product-card .product-image,
.product-image{
    height:auto !important;
}

.product-card img,
.product-image img{
    object-fit:contain !important;
}

/* Keep same style while slightly smaller */
.product-card .content,
.product-content{
    padding:18px !important;
}

/* ===== CENTER TEXT ===== */

.section-subtitle,
.stock-title,
.products-subtitle,
.faq-title,
.faq-section,
.faq-section *{
    text-align:center !important;
    justify-content:center !important;
    align-items:center !important;
}

/* ===== FIX ADDON IMAGE ===== */

.addon img,
.addon-product img,
.product-addon img,
.addon-small-image{
    width:70px !important;
    height:70px !important;
    min-width:70px !important;
    min-height:70px !important;
    max-width:70px !important;
    max-height:70px !important;
    object-fit:contain !important;
    display:block !important;
    overflow:hidden !important;
    border-radius:8px;
}

/* Fix giant addon containers */
.addon,
.addon-product,
.product-addon{
    max-height:110px !important;
    overflow:hidden !important;
    display:flex !important;
    align-items:center !important;
    gap:12px;
}

/* Ensure addon descriptions show */
.addon-description,
.addon p,
.addon small{
    display:block !important;
    opacity:1 !important;
    visibility:visible !important;
}

/* Remove clickable styling from header text */
.top-header a{
    pointer-events:none !important;
    text-decoration:none !important;
    cursor:default !important;
}

/* Override blue carousel border → purple to match site theme */
.product-wrapper .carousel img {
    border: 1px solid rgb(75 0 130 / 50%) !important;
}

/* Remove underline from announcement bar link */
.announcement a,
.announcement a:hover,
.announcement a:visited {
    text-decoration: none !important;
    color: #ffffff !important;
}
