/**
* Theme Name: Supgor Child
* Description: This is a child theme of Supgor, generated by Merlin WP.
* Author: <a href="http://themeforest.net/user/KlbTheme">KlbTheme (Sinan ISIK)</a>
* Template: supgor
* Version: 1.0.9
*/

/* ==========================================================================
   1. UNIVERSAL PRODUCT CARD SIZING (LOOP / GRID ONLY - NOT SINGLE PRODUCT)
   ========================================================================== */
.box-grid-item .product,
.products .product:not(.single-product),
.site-countdown-products .product,
.site-products-wrapper .product:not(.single-product),
ul.products li.product:not(.single-product) {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    box-sizing: border-box !important;
}

.box-grid-item .product .product-inner,
.products .product:not(.single-product) .product-inner,
.site-countdown-products .product .product-inner {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    width: 100% !important;
}

/* Square, Centered Product Image Container for Cards */
.box-grid-item .product .product-thumbnail,
.box-grid-item .product .product-media,
.products .product:not(.single-product) .product-thumbnail,
.products .product:not(.single-product) .product-media,
.site-countdown-products .product .product-media {
    position: relative !important;
    width: 100% !important;
    aspect-ratio: 1 / 1 !important;
    max-height: 260px !important;
    min-height: 170px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    background: #ffffff !important;
    padding: 10px !important;
    box-sizing: border-box !important;
}

.box-grid-item .product .product-media a,
.products .product:not(.single-product) .product-media a {
    width: 100% !important;
    height: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.box-grid-item .product .product-media img,
.products .product:not(.single-product) .product-media img,
.site-countdown-products .product .product-media img,
ul.products li.product:not(.single-product) img {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
    object-position: center !important;
    transition: transform 0.25s ease !important;
}

.box-grid-item .product:hover .product-media img,
.products .product:not(.single-product):hover .product-media img {
    transform: scale(1.05) !important;
}

.box-grid-item .product .product-body,
.products .product:not(.single-product) .product-body,
.site-countdown-products .product .product-body {
    flex: 1 1 auto !important;
    display: flex !important;
    flex-direction: column !important;
    padding-top: 10px !important;
}

.products .product:not(.single-product) .product-title,
.box-grid-item .product .product-title,
.products .product:not(.single-product) h2.woocommerce-loop-product__title {
    font-size: 14px !important;
    line-height: 1.4 !important;
    margin-bottom: 6px !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    min-height: 38px !important;
}

.products .product:not(.single-product) .price,
.box-grid-item .product .price,
.site-countdown-products .product .product-cart,
.products .product:not(.single-product) .product-cart-button {
    margin-top: auto !important;
}

/* ==========================================================================
   2. CATEGORY CAROUSEL & BOX SIZING
   ========================================================================== */
.category-box,
.categories-carousel .category-box {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    text-align: center !important;
    height: 100% !important;
    padding: 8px !important;
}

.category-box .category-thumbnail {
    width: 100px !important;
    height: 100px !important;
    min-width: 100px !important;
    min-height: 100px !important;
    max-width: 100px !important;
    max-height: 100px !important;
    border-radius: 50% !important;
    overflow: hidden !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 auto 10px auto !important;
    background: #f4f6f8 !important;
    padding: 12px !important;
    box-sizing: border-box !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.04) !important;
}

.category-box .category-thumbnail img {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
    object-position: center !important;
}

.category-box .category-name {
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
    margin: 0 !important;
    color: #1d2327 !important;
}

/* ==========================================================================
   3. SINGLE PRODUCT 2-COLUMN LAYOUT & GALLERY STYLING
   ========================================================================== */
.single-product-wrapper,
.single-product-wrapper .product,
.single-product.product {
    display: block !important;
    height: auto !important;
    width: 100% !important;
}

.single-product-wrapper .product-body {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 30px !important;
    width: 100% !important;
    padding-top: 0 !important;
}

.single-product-wrapper .product-gallery-column {
    flex: 0 0 calc(48% - 15px) !important;
    max-width: calc(48% - 15px) !important;
    width: calc(48% - 15px) !important;
    box-sizing: border-box !important;
}

.single-product-wrapper .product-detail-column {
    flex: 0 0 calc(52% - 15px) !important;
    max-width: calc(52% - 15px) !important;
    width: calc(52% - 15px) !important;
    box-sizing: border-box !important;
}

@media (max-width: 991px) {
    .single-product-wrapper .product-body {
        flex-direction: column !important;
        gap: 24px !important;
    }
    .single-product-wrapper .product-gallery-column,
    .single-product-wrapper .product-detail-column {
        flex: 0 0 100% !important;
        max-width: 100% !important;
        width: 100% !important;
    }
}

.woocommerce-product-gallery__wrapper {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #ffffff !important;
    border-radius: 8px !important;
    min-height: 350px !important;
}

.woocommerce-product-gallery__image {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
}

.woocommerce-product-gallery__image img {
    max-height: 480px !important;
    width: auto !important;
    max-width: 100% !important;
    object-fit: contain !important;
    margin: 0 auto !important;
}

.flex-control-thumbs li img {
    aspect-ratio: 1 / 1 !important;
    object-fit: contain !important;
    border-radius: 6px !important;
    background: #ffffff !important;
}

/* ==========================================================================
   4. TRANSLATION BAR SUPPRESSION (ZERO TOP BAR)
   ========================================================================== */
iframe.goog-te-banner-frame,
.goog-te-banner-frame,
.goog-te-banner-frame.skiptranslate,
#goog-gt-tt,
.goog-te-balloon-frame,
.goog-tooltip,
.goog-tooltip:hover,
.goog-text-highlight {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    max-height: 0 !important;
    pointer-events: none !important;
    border: none !important;
    box-shadow: none !important;
    background: transparent !important;
}

body {
    top: 0px !important;
    position: static !important;
    min-height: 100% !important;
}

.skiptranslate:not(.supgor-lang-pill-btn):not(.kw-lang-pill-btn) {
    display: none !important;
}

#google_translate_element {
    display: none !important;
}

/* ==========================================================================
   5. HOMEPAGE FEATURE BOXES & BANNER LAYOUT ALIGNMENT
   ========================================================================== */
.elementor-element-2272b23 > .e-con-inner,
.elementor-element-11e87f0 .elementor-element-2272b23 > .e-con-inner {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 20px !important;
    width: 100% !important;
}

.elementor-element-2272b23 > .e-con-inner > .elementor-element,
.elementor-element-af55b83,
.elementor-element-d6213b5,
.elementor-element-47dabf9 {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 14px !important;
    flex: 1 1 240px !important;
    min-width: 220px !important;
}

.elementor-element-2272b23 .elementor-widget-icon {
    flex-shrink: 0 !important;
    width: auto !important;
    margin: 0 !important;
}

.elementor-element-3fb6408,
.elementor-element-46925ea,
.elementor-element-7fd2e34,
.elementor-element-2272b23 > .e-con-inner > .elementor-element > .e-con-inner {
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    align-items: flex-start !important;
    justify-content: center !important;
    gap: 2px !important;
    flex: 1 1 auto !important;
    width: auto !important;
}

.elementor-element-2272b23 .elementor-heading-title {
    margin: 0 !important;
    line-height: 1.3 !important;
}

/* Banner Box Links & Content Stacking */
.elementor-widget-supgor-banner-box .site-banner-content {
    position: relative !important;
    z-index: 2 !important;
}

.elementor-widget-supgor-banner-box a.wrap-link {
    z-index: 3 !important;
}