/**
 * Custom Product Page Styles
 */

/* Container layout */
.product-container {
    max-width: 1051px;
    margin: 0 auto;
    padding: 0 15px;
}

.product-layout {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    margin-bottom: 40px;
}

.product-image-section {
    width: 639px;
    min-width: 639px;
}

.product-info-section {
    width: 330px;
}

/* Hide duplicate product title - more comprehensive selectors */
.woocommerce-products-header .entry-title,
.woocommerce .woocommerce-products-header .entry-title,
body.woocommerce-page .page-title,
.woocommerce .page-title,
.woocommerce-breadcrumb + h1,
.entry-title:not(.product-info-section .entry-title),
body.single-product .site-main > h1,
body.single-product h1:not(.product-info-section .product_title),
body.single-product #content > h1,
body.single-product header h1,
body.single-product .woocommerce-products-header h1,
.site-main > h1.entry-title,
.woocommerce-products-header,
body.single-product h1:first-of-type:not(.product_title),
body.single-product .woocommerce > h1,
body.single-product h1.page-title,
body.single-product .woocommerce h1:not(.product_title),
.product_title:not(.product-info-section .product_title),
.site-header h1,
.CURREN,
body.single-product > h1:first-child,
body.single-product .woocommerce-notices-wrapper + h1 {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    opacity: 0 !important;
}

/* Make sure our single product title is visible */
.product-info-section .product_title.entry-title {
    font-size: 20px;
    margin-top: 25px !important;
    margin-bottom: 15px !important;
    font-weight: 700;
}

/* Price styling */
.price {
    font-size: 22px;
    font-weight: 600;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
}

.price del {
    font-size: 14px;
    color: #B4B4B5;
    margin-right: 0;
    text-decoration: line-through;
}
.wc-block-components-product-price {
    display: flex !important;
    flex-direction: column !important;
    align-self: start !important;
}
.wc-block-components-product-price__value.is-discounted{
    margin-left: 0 !important;
}
.price ins {
    text-decoration: none;
    color: #46C18F;
}

/* Product specifications list */
.product-specs {
    list-style: none;
    padding: 0;
    margin: 15px 0;
}

.product-specs li {
    position: relative;
    padding-left: 20px;
    margin-bottom: 8px;
    line-height: 1.4;
}

.product-specs li:before {
    content: "👉";
    position: absolute;
    left: 0;
    top: 0;
}

/* Variations styling */
.variations {
    margin-bottom: 20px;
}

.variation-row {
    display: flex;
    flex-direction: column;
    margin-bottom: 10px;
}

.variation-row .label {
    font-size: 14px;
    color:#909091;
    font-weight: 700;
    margin-bottom: 10px;
}

.variation-row .value {
    flex: 1;
}

.reset_variations {
    display: inline-block;
    margin-left: 10px;
    font-size: 12px;
    text-decoration: none;
}

/* Hide fullscreen icon */
.woocommerce-product-gallery__trigger {
    display: none !important;
}

/* Remove quantity input */
.quantity {
    display: none !important;
}

/* Add to cart button styling */
.single_add_to_cart_button {
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    margin-top: 20px !important;
    background-color: #00D6C7 !important;
    color: #000 !important;
    border: none !important;
    padding: 12px 20px !important;
    border-radius: 4px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    transition: background-color 0.3s ease !important;
}

.single_add_to_cart_button:hover {
    background-color: rgb(0, 159, 184) !important;
}

/* Delivery notice */
.delivery-notice {
    margin: 15px 0;
    padding: 10px;
    background-color: #f8f8f8;
    border-radius: 4px;
    font-size: 14px;
}

/* Product tabs */
.woocommerce-tabs {
    padding-top: 30px;
    border-top: 1px solid #eee;
}

.wc-tabs {
    list-style: none;
    padding: 0;
    margin: 0 0 20px;
    border-bottom: 1px solid #eee;
    display: flex;
}

.wc-tabs li {
    margin-right: 20px;
}

.wc-tabs li a {
    display: block;
    padding: 10px 5px;
    text-decoration: none;
    color: #666;
    font-weight: 600;
    border-bottom: 2px solid transparent;
}

.wc-tabs li.active a {
    color: #00b8d4;
    border-bottom-color: #00b8d4;
}

/* Carousel styling */
.product-thumbnail-carousel {
    position: relative;
    margin-top: 10px;
    width: 639px;
}

.product-thumbnail-carousel .carousel-prev, 
.product-thumbnail-carousel .carousel-next {
    width: 39px;
    height: 39px;
    top: 48%;
}

.carousel-slider {
    display: flex;
    overflow-x: auto;
    scroll-behavior: smooth;
    scrollbar-width: none; /* Firefox */
    -ms-overflow-style: none; /* IE and Edge */
}

.carousel-slider::-webkit-scrollbar {
    display: none; /* Chrome, Safari, Opera */
}

.carousel-slide {
    flex: 0 0 auto;
    margin-right: 10px;
    cursor: pointer;
    border: 2px solid transparent;
    transition: border-color 0.3s;
}

.carousel-slide.active {
    border-color: #00b8d4;
}

.carousel-thumbnail {
    width: 80px;
    height: 80px;
    object-fit: cover;
}

.carousel-next,
.carousel-prev {
    position: absolute;
    top: 40%;
    transform: translateY(-50%);
    width: 38px;
    height: 38px;
    background: #00D6C7;
    color: white;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    z-index: 1;
}

.carousel-next img,
.carousel-prev img{
    width: 50px !important;
    max-width: max-content;
}

.carousel-next {
    right: 0;
}

.carousel-prev {
    left: 0;
}

.carousel-next:hover,
.carousel-prev:hover {
    background: rgba(0, 214, 199, 0.9);
}

/* Responsive adjustments */
@media (max-width: 1080px) {
    .product-container {
        max-width: 100%;
    }
}

@media (max-width: 991px) {
    .product-layout {
        flex-direction: column;
    }
    
    .product-image-section,
    .product-info-section {
        width: 100%;
        min-width: auto;
    }
    
    .product-thumbnail-carousel {
        width: 100%;
    }
}

@media (max-width: 767px) {
    .wc-tabs {
        flex-direction: column;
    }
    
    .wc-tabs li {
        margin-right: 0;
        margin-bottom: 5px;
    }
}

/* Additional styling for a more polished look */
.woocommerce-product-details__short-description {
    font-size: 14px;
    margin-bottom: 20px;
    color: #666;
    line-height: 1.6;
    font-family: 'Montserrat', sans-serif;
}

/* For elements using emoji in list */
.product-specs li:before {
    content: "👉";
    position: absolute;
    left: 0;
}

/* Option to use a custom icon instead of emoji */
.product-specs.custom-icon li:before {
    content: "";
    background-image: url('path-to-custom-icon.png');
    background-size: contain;
    background-repeat: no-repeat;
    width: 16px;
    height: 16px;
}

/* Mini-cart popup styles */
.header-cart-popup {
	position: absolute;
	top: 60px;
	right: 0;
	width: 480px;
	max-height: 80vh;
	background: #fff;
	box-shadow: 0 4px 24px rgba(0,0,0,0.12);
	border-radius: 8px;
	z-index: 9999;
	display: none;
	padding: 27px 49px;
	overflow-y: auto;
}

/* When popup is visible */
.header-cart-popup.visible {
    display: block !important;
}

/* Fix for positioning on all pages */
.header-right {
	position: relative;
}
.mini-cart-popup-info {
    margin: 0;
    padding: 0;
    padding-left: 15px;
}
.mini-cart-popup-info span {
    font-weight: 700;
}
.mini-cart-popup-content { font-family: 'Montserrat', sans-serif; }
.mini-cart-popup-header {
	background: #CAF8E8;
	color: #000;
	padding: 10px 12px;
	border-radius: 4px;
	font-size: 14px;
	margin-bottom: 18px;
    display: flex;
    align-items: center;
}
.mini-cart-popup-product {
	display: flex;
	align-items: flex-start;
	position: relative;
	padding-bottom: 18px;
}

.mini-cart-popup-product:last-child {
	border-bottom: none;
}

.mini-cart-popup-image {
    flex-shrink: 0;
    margin-right: 16px;
    width: 104px;
    height: 104px;
}
.mini-cart-popup-image img {
	width: 100%;
	height: 100%;
	border-radius: 4px;
	object-fit: cover;
}
.mini-cart-popup-details { 
    flex: 1;
    margin-left: 0;
}
.mini-cart-popup-title { 
    font-weight: 700; 
    font-size: 16px;
    margin-bottom: 5px;
    height: 30px;
    padding-right: 15px;
}
.mini-cart-popup-variations {
    font-size: 14px;
    color: #666;
    margin: 6px 0;
}
.mini-cart-popup-variations span {
    font-weight: 700;
    color: #000;
}
.mini-cart-popup-regular-price {
    text-decoration: line-through;
    color: #888;
    font-size: 14px;
    text-align: right;
}
.mini-cart-popup-sale-price,
.mini-cart-popup-price {
    font-size: 16px;
    color: #009688;
    font-weight: 600;
    text-align: right;  
}
.mini-cart-popup-summary { 
    border-top: 1px solid #eee; 
    padding-top: 10px; 
    margin-bottom: 16px; 
}
.mini-cart-popup-row { 
    text-align: right;
    margin: 6px 0; 
    display: flex;
}
.mini-cart-popup-row span {
    width: 50%;
}
.mini-cart-popup-row.total { 
    font-weight: 700; 
}
.mini-cart-popup-actions { 
    text-align: right; 
}
.mini-cart-popup-checkout {
	background: #00d6c7;
	color: #000 !important;
	padding: 10px 28px;
	border-radius: 4px;
	font-weight: 700;
	text-decoration: none;
	font-size: 16px;
	transition: background 0.2s;
	display: inline-block;
}
.mini-cart-popup-checkout:hover {
	background: #00b8a9;
	text-decoration: none;
}
.mini-cart-popup-empty {
	text-align: center;
	padding: 20px 0;
	color: #666;
}
.mini-cart-remove-item {
    position: absolute;
    top: 0;
    right: 0;
    cursor: pointer;
    padding: 5px;
}

@media (max-width: 1080px) {
    
    .product-info-section .product_title.entry-title {
        margin-top: 5px !important;
        margin-bottom: 5px !important;
        text-align: center;
    }
    .price {
        display: flex;
        align-items: center;
        justify-content: center;
        margin-bottom: 10px ;
    }
    .custom-product-grid .price {
        justify-content: start;
    }
    .custom-product-grid .price del, .custom-product-grid .price ins, .custom-product-grid .product-title{
        font-size: 20px !important;
    }
    .fast-delivery-notice {
        justify-content: center;
        margin-top: 0 !important;
    }
    

}
@media (max-width: 600px) {
	.header-cart-popup { width: 95vw; right: 2vw; }
    .mini-cart-popup-image {
        width: 80px;
        height: 80px;
    }
} 