/*
 Theme Name:   Hello Elementor Child
 Theme URI:    https://elementor.com/
 Description:  Child theme for Hello Elementor
 Author:       Your Name
 Author URI:   https://yourwebsite.com
 Template:     hello-elementor
 Version:      1.0.0
 Text Domain:  hello-elementor-child
*/
/* Remove flex slider behavior */
/* Desktop: 2-column grid */
@media (min-width: 769px) {
    .woocommerce-product-gallery__wrapper {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr);
        gap: 10px;
    }

    .woocommerce-product-gallery__image {
        width: 100% !important;
        float: none !important;
    }

    .woocommerce-product-gallery__image img {
        width: 100%;
        height: auto;
        display: block;
    }
}
.custom-mini-cart { padding:20px; }

.item {
    display:flex;
    gap:15px;
    margin:15px 0;
}

.img img { width:80px; }

.qty {
    display:flex;
    gap:10px;
    align-items:center;
}

.bar {
    height:4px;
    background:#eee;
}

.fill {
    height:100%;
    background:red;
}

.btn {
    display:block;
    padding:12px;
    background:black;
    color:white;
    text-align:center;
    margin-top:10px;
}

.custom-mini-cart { padding:20px; }

.mini-item {
    display:flex;
    gap:15px;
    margin-bottom:20px;
}

.img img { width:80px; }

.qty {
    display:flex;
    gap:10px;
    align-items:center;
}

.bar {
    height:4px;
    background:#eee;
    margin-top:10px;
}

.fill {
    height:100%;
    background:red;
}

.btn {
    display:block;
    padding:12px;
    background:black;
    color:white;
    text-align:center;
    margin-top:10px;
}

.mini-footer .subtotal {
  flex: 0 0 100%;
}
.mini-footer .btn {
  flex: 0 0 48%;
}
.mini-footer .btn.light {
  flex: 0 0 100%;
}

.elementor-menu-cart__main {
  padding: 40px !important;
  width: 40%;
}
.widget_shopping_cart_content.custom-mini-cart {
  padding: 0;
}
.mini-items {
  margin-top: 20px;
}
.mini-item .info h4 {
  font-size: 14px;
  font-family: "Montserrat",Open-sans;
  text-transform: uppercase;
}

.woocommerce div.product div.images .woocommerce-product-gallery__image a {
  cursor: zoom-in;
}

.elementor-lightbox-image.elementor-lightbox-prevent-close.swiper-lazy.swiper-lazy-loaded {
  cursor: zoom-in;
}

.cfvsw-swatches-container.cfvsw-shop-container {
  justify-content: center;
  align-items: center;
  text-align: center;
}
.cfvsw-shop-variations tr td {
  justify-content: center;
  background: transparent !important;
}
.cfvsw-swatches-option.cfvsw-label-option {
  border: none;
  text-align: center;
  font-size: 12px;
  font-weight: 500;
  text-transform: uppercase;
  font-family: "Montserrat", Open-sans;
}

@media(max-width:768px){
.product-type-simple #add-to-cart-attributes {
  position: fixed;
  bottom: 0;
  z-index: 999;
  width: 100%;
  left: 0;
  background: #fff;
  padding: 10px;
  box-shadow: 10px 0 10px 0;
}
}
/* =========================
   MOBILE PRODUCT SLIDER
========================= */
@media (max-width: 768px) {

    .woocommerce-product-gallery__wrapper {
        overflow: hidden;
        position: relative;
        width: 100%;
    }

    .custom-slider-track {
        display: flex;
        width: 100%;
        will-change: transform;
        touch-action: pan-y; /* allow vertical scroll */
    }

    .woocommerce-product-gallery__image {
        min-width: 100%;
        flex-shrink: 0;
    }

    .woocommerce-product-gallery__image img {
        width: 100%;
        height: auto;
        display: block;
        pointer-events: none; /* smoother swipe */
        user-select: none;
    }

    /* =========================
       DOTS (TOP LEFT STYLE)
    ========================= */
    .custom-slider-dots {
        position: absolute;
        top: 12px;
        left: 12px;
        display: flex;
        gap: 6px;
        z-index: 20;
    }

    .custom-slider-dots .dot {
        width: 7px;
        height: 7px;
        border-radius: 50%;
        background: rgba(0,0,0,0.35);
        transition: all 0.25s ease;
    }

    .custom-slider-dots .dot.active {
        background: #000;
        transform: scale(1.2);
    }

    /* =========================
       SMOOTH FEEL ENHANCEMENTS
    ========================= */
    .custom-slider-track:active {
        cursor: grabbing;
    }

    .woocommerce-product-gallery__wrapper::after {
        content: "";
        position: absolute;
        inset: 0;
        pointer-events: none;
        background: linear-gradient(to right, rgba(0,0,0,0.03), transparent 20%, transparent 80%, rgba(0,0,0,0.03));
    }
}


/* =========================
   OPTIONAL: MODAL IMPROVEMENT
========================= */
.pswp.custom-modal-slider {
    touch-action: pan-y;
}
@media (max-width: 768px) {

    .woocommerce-product-gallery__wrapper {
        position: relative;
        overflow: hidden;
    }

    .custom-slider-track {
        display: flex;
        transition: transform 0.3s ease;
        will-change: transform;
    }

    .custom-slide-item {
        min-width: 100%;
        flex-shrink: 0;
    }

    .custom-slide-item img {
        width: 100%;
        display: block;
        pointer-events: none;
        user-select: none;
    }

    /* dots */
    .custom-slider-dots {
        position: absolute;
        top: 12px;
        left: 12px;
        display: flex;
        gap: 6px;
        z-index: 10;
    }

    .custom-slider-dots .dot {
        width: 7px;
        height: 7px;
        border-radius: 50%;
        background: rgba(0,0,0,0.35);
    }

    .custom-slider-dots .dot.active {
        background: #000;
        transform: scale(1.2);
    }
}

.wp-block-woocommerce-cart.alignwide.wc-block-cart {
  margin: 0 !important;
  padding: 20px;
}

@media(max-width:768px){
.elementor-widget-theme-site-logo {
  z-index: -1 !important;
}
}
/* Normal content */
.elementor-section,
.e-con {
    position: relative;
    z-index: 1;
}

/* Header */
header {
    position: relative;
    z-index: 100;
}

/* Mobile menu (Elementskit) */
.ekit_menu_responsive_mobile,
.elementskit-menu-container {
    z-index: 9999 !important;
}

/* Mini cart (WooCommerce) */
.woocommerce-mini-cart,
.widget_shopping_cart,
.cart-contents {
    z-index: 9999 !important;
}

/* Overlay (if exists) */
.dialog-widget,
.elementor-lightbox {
    z-index: 10000 !important;
}
/* Hide menu toggle when mini cart is open */
body.woocommerce-cart-open .elementskit-menu-hamburger,
body.cart-open .elementskit-menu-hamburger,
body.mini-cart-open .elementskit-menu-hamburger {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}
.menu-logo {
  position: absolute !important;
  top: 20px;
  width: 170px;
}
body:has(.elementor-menu-cart--shown) .elementor-widget-ekit-nav-menu {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

.menu-logo {
  width: 60%;
}

@media(min-width:768px){
.woocommerce div.product div.images img {
  height:  805px !important;
  object-fit: cover;
}
}
@media(max-width:768px){
	.product-categories .product-category {
	  font-size: 10px !important;
	}
}

.pswp img{
    object-fit: contain !important;
}

.pswp__img{
    max-height: 90vh !important;
    width: auto !important;
    height: auto !important;
    margin: auto;
}