/*
Theme Name: Ice Cream Shop Custom
Template: astra
Description: Custom AICE-inspired design for ice cream shop - VIBRANT VERSION
Version: 1.16
Author: Your Name
*/

/* AICE Color Palette - VIBRANT & BRIGHT */
:root {
    /* Brighter, more saturated colors */
    --primary-pink: #FF88C8;
    --primary-blue: #7DD3FF;
    --accent-red: #FF4D8A;
    --accent-coral: #FF9B8A;
    --accent-mint: #7FFFC8;
    --accent-yellow: #FFEB7D;
    --dark-text: #2C3E50;
    --light-text: #7F8C8D;
    --white-bg: #FFFFFF;
    --light-bg: #F4F9FF; /* Matched to single product v1.11 */
    --whatsapp-green: #25D366;
    
    /* Hero gradient - much brighter */
    --hero-pink-start: #FF99D8;
    --hero-pink-mid: #FFB4E5;
    --hero-blue-mid: #ADE5FF;
    --hero-blue-end: #7DD3FF;
    
    /* Drip colors - more vibrant */
    --drip-pink: #FF88D4;
    --drip-blue: #8FD8FF;
    --drip-coral: #FFB8A3;
    --drip-mint: #A0FFD4;
}

/* Google Fonts - Playful typography */
@import url('https://fonts.googleapis.com/css2?family=Fredoka:wght@300;400;500;600;700&family=Quicksand:wght@300;400;500;600;700&display=swap');

/* Global Typography */
body {
    font-family: 'Quicksand', sans-serif;
    color: var(--dark-text);
    line-height: 1.6;
    background: var(--white-bg);
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Fredoka', sans-serif;
    font-weight: 600;
    color: var(--dark-text);
}

/* Reset & Base Styles */
* {
    box-sizing: border-box;
}

body {
    margin: 0;
    padding: 0;
    overflow-x: hidden;
}

.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

/* Hide Astra's default header */
.ast-header-wrapper,
.ast-primary-header-bar,
.site-header:not(.custom-header) {
    display: none !important;
}

.custom-header {
    display: block !important;
}

/* ============================================
   HEADER CUSTOMIZATION
   ============================================ */
.custom-header {
    background: #ffffff;
    box-shadow: 0 2px 20px rgba(0,0,0,0.08);
    position: sticky;
    top: 0;
    z-index: 1000;
}

.header-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 18px 30px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
}

.site-branding {
    flex-shrink: 0;
    margin-right: auto;
}

.site-branding .site-title,
.site-branding .custom-logo-link {
    margin: 0;
    font-size: 26px;
    font-weight: 600;
    font-family: 'Fredoka', sans-serif;
    color: var(--dark-text);
    text-decoration: none;
    display: block;
}

.site-branding .site-title a {
    color: var(--dark-text);
    text-decoration: none;
    transition: color 0.2s ease;
}

.site-branding .site-title a:hover {
    color: var(--accent-red);
}

.custom-logo,
.custom-logo-link img {
    max-height: 50px;
    width: auto;
    height: auto;
    display: block;
}

.custom-logo-link {
    display: inline-block;
    line-height: 0;
}

.main-navigation {
    flex: 0 1 auto;
    display: flex;
    justify-content: center;
    margin-left: 20px;
}

.main-navigation ul {
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
    gap: 50px;
    align-items: center;
}

.main-navigation li {
    margin: 0;
}

.main-navigation a {
    color: var(--dark-text);
    text-decoration: none;
    font-weight: 600;
    font-size: 17px;
    transition: color 0.2s ease;
    padding: 5px 0;
    position: relative;
    letter-spacing: 0.3px;
}

.main-navigation a:hover {
    color: var(--accent-red);
}

/* Header Search Bar (AJAX Search for WooCommerce) */
.header-search {
    flex: 0 1 320px;
    margin: 0 25px;
}

.header-search .dgwt-wcas-search-wrapp {
    max-width: 100%;
}

.header-search .dgwt-wcas-search-form {
    background: white;
    border-radius: 25px;
    border: 2px solid var(--primary-pink);
    transition: all 0.3s ease;
    box-shadow: 0 2px 10px rgba(255, 136, 200, 0.15);
}

.header-search .dgwt-wcas-search-form:focus-within {
    border-color: var(--accent-red);
    box-shadow: 0 4px 15px rgba(255, 77, 138, 0.25);
}

.header-search .dgwt-wcas-sf-wrapp input[type="search"] {
    background: transparent !important;
    border: none !important;
    padding: 10px 18px !important;
    font-size: 14px !important;
    font-family: 'Quicksand', sans-serif !important;
}

.header-search .dgwt-wcas-sf-wrapp input[type="search"]::placeholder {
    color: var(--light-text);
}

/* Hide the magnifying glass icon */
.header-search .dgwt-wcas-ico-magnifier,
.header-search .dgwt-wcas-ico-magnifier-handler,
.header-search .dgwt-wcas-search-icon,
.header-search .dgwt-wcas-search-submit {
    display: none !important;
}

.header-actions {
    display: flex;
    align-items: center;
    gap: 15px;
    flex-shrink: 0;
}

.header-icon {
    width: 38px;
    height: 38px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--dark-text);
    text-decoration: none;
    border-radius: 50%;
    transition: all 0.2s ease;
    cursor: pointer;
}

.header-icon:hover {
    background: var(--light-bg);
    color: var(--accent-red);
}

.header-icon svg {
    width: 20px;
    height: 20px;
}

/* Cart Icon with Badge */
.cart-icon {
    position: relative;
}

.cart-count {
    position: absolute;
    top: -5px;
    right: -5px;
    background: var(--accent-red);
    color: white;
    font-size: 11px;
    font-weight: 700;
    min-width: 18px;
    height: 18px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid white;
    box-shadow: 0 2px 6px rgba(255, 77, 138, 0.4);
}

.cart-count:empty,
.cart-count:contains("0") {
    display: none;
}

.login-button {
    background: var(--accent-red);
    color: white !important;
    padding: 10px 24px;
    border-radius: 25px;
    font-weight: 600;
    font-size: 14px;
    text-decoration: none;
    transition: all 0.2s ease;
    display: inline-block;
    white-space: nowrap;
}

.login-button:hover {
    background: #FF2D6F;
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(255, 77, 138, 0.4);
    color: white !important;
}

/* ============================================
   HERO SECTION - VIBRANT VERSION
   ============================================ */
.hero-section {
    background: linear-gradient(135deg, 
        var(--hero-pink-start) 0%, 
        var(--hero-pink-mid) 25%,
        var(--hero-blue-mid) 75%, 
        var(--hero-blue-end) 100%
    );
    min-height: 500px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 80px 20px;
    position: relative;
    overflow: hidden;
}

/* Enhanced dripping effect - MORE VISIBLE */
.hero-section::before {
    content: '';
    position: absolute;
    top: -2px;
    left: 0;
    right: 0;
    height: 100px;
    background: repeating-linear-gradient(
        to right,
        transparent 0,
        transparent 35px,
        var(--drip-pink) 35px,
        var(--drip-pink) 42px,
        transparent 42px,
        transparent 80px,
        var(--drip-blue) 80px,
        var(--drip-blue) 87px,
        transparent 87px,
        transparent 125px,
        var(--drip-coral) 125px,
        var(--drip-coral) 132px,
        transparent 132px,
        transparent 170px,
        var(--drip-mint) 170px,
        var(--drip-mint) 177px
    );
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 100'%3E%3Cpath d='M0,0 Q15,60 30,0 T60,0 T90,0 T120,0 T150,0 T180,0 T210,0 T240,0 T270,0 T300,0 T330,0 T360,0 T390,0 T420,0 T450,0 T480,0 T510,0 T540,0 T570,0 T600,0 T630,0 T660,0 T690,0 T720,0 T750,0 T780,0 T810,0 T840,0 T870,0 T900,0 T930,0 T960,0 T990,0 T1020,0 T1050,0 T1080,0 T1110,0 T1140,0 T1170,0 T1200,0 L1200,100 L0,100 Z' fill='white'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 100'%3E%3Cpath d='M0,0 Q15,60 30,0 T60,0 T90,0 T120,0 T150,0 T180,0 T210,0 T240,0 T270,0 T300,0 T330,0 T360,0 T390,0 T420,0 T450,0 T480,0 T510,0 T540,0 T570,0 T600,0 T630,0 T660,0 T690,0 T720,0 T750,0 T780,0 T810,0 T840,0 T870,0 T900,0 T930,0 T960,0 T990,0 T1020,0 T1050,0 T1080,0 T1110,0 T1140,0 T1170,0 T1200,0 L1200,100 L0,100 Z' fill='white'/%3E%3C/svg%3E");
    -webkit-mask-size: cover;
    mask-size: cover;
    opacity: 0.85;
    z-index: 1;
}

.hero-content {
    position: relative;
    z-index: 2;
}

.hero-content h1 {
    font-size: 56px;
    color: white;
    margin-bottom: 15px;
    font-weight: 600;
    text-shadow: 2px 2px 10px rgba(0,0,0,0.2);
    letter-spacing: -1px;
}

.hero-tagline {
    font-size: 22px;
    color: white;
    margin-bottom: 35px;
    font-weight: 400;
    opacity: 0.98;
    text-shadow: 1px 1px 4px rgba(0,0,0,0.15);
}

.hero-button {
    display: inline-block;
    padding: 14px 40px;
    border-radius: 30px;
    background: #ffffff;
    color: var(--accent-red);
    font-weight: 600;
    font-size: 16px;
    text-decoration: none;
    box-shadow: 0 8px 25px rgba(0,0,0,0.2);
    transition: all 0.3s ease;
}

.hero-button:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 35px rgba(0,0,0,0.25);
    color: var(--accent-red);
}

/* Floating decorative elements - BRIGHTER */
.hero-decorations {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    pointer-events: none;
    overflow: hidden;
}

.floating-scoop {
    position: absolute;
    border-radius: 50%;
    animation: float 8s ease-in-out infinite;
    opacity: 0.9;
    box-shadow: 0 15px 40px rgba(0,0,0,0.2);
}

.floating-scoop.scoop-1 {
    width: 130px;
    height: 130px;
    top: 15%;
    left: 10%;
    background: radial-gradient(circle at 35% 35%, #FFE0F0, var(--primary-pink));
    animation-delay: 0s;
}

.floating-scoop.scoop-2 {
    width: 110px;
    height: 110px;
    top: 60%;
    right: 15%;
    background: radial-gradient(circle at 35% 35%, #D4F0FF, var(--primary-blue));
    animation-delay: 2s;
}

.floating-scoop.scoop-3 {
    width: 95px;
    height: 95px;
    bottom: 20%;
    left: 20%;
    background: radial-gradient(circle at 35% 35%, #FFF0D4, var(--accent-coral));
    animation-delay: 4s;
}

/* BRIGHTER sprinkle decorations */
.hero-decorations::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image: 
        radial-gradient(circle, var(--accent-coral) 3px, transparent 3px),
        radial-gradient(circle, var(--accent-mint) 3px, transparent 3px),
        radial-gradient(circle, var(--accent-yellow) 4px, transparent 4px),
        radial-gradient(circle, var(--primary-pink) 3px, transparent 3px),
        radial-gradient(circle, var(--primary-blue) 3px, transparent 3px);
    background-size: 120px 120px, 160px 160px, 200px 200px, 140px 140px, 180px 180px;
    background-position: 0 0, 40px 40px, 80px 80px, 120px 20px, 60px 100px;
    opacity: 0.35;
    animation: sprinkleFloat 20s linear infinite;
}

@keyframes float {
    0%, 100% {
        transform: translateY(0) translateX(0) rotate(0deg);
    }
    33% {
        transform: translateY(-35px) translateX(20px) rotate(120deg);
    }
    66% {
        transform: translateY(-20px) translateX(-15px) rotate(240deg);
    }
}

@keyframes sprinkleFloat {
    0% {
        background-position: 0 0, 40px 40px, 80px 80px, 120px 20px, 60px 100px;
    }
    100% {
        background-position: 120px 120px, 200px 200px, 280px 280px, 240px 140px, 180px 220px;
    }
}

/* ============================================
   CATEGORY SECTION - BRIGHTER BACKGROUND
   ============================================ */
.category-section {
    padding: 70px 0 50px;
    background: linear-gradient(135deg, #FFF5F9 0%, #F0FBFF 100%);
    position: relative;
}

/* Decorative wave at top */
.category-section::before {
    content: '';
    position: absolute;
    top: -50px;
    left: 0;
    right: 0;
    height: 50px;
    background: linear-gradient(135deg, #FFF5F9 0%, #F0FBFF 100%);
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 50'%3E%3Cpath d='M0,25 Q300,0 600,25 T1200,25 L1200,50 L0,50 Z' fill='white'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 50'%3E%3Cpath d='M0,25 Q300,0 600,25 T1200,25 L1200,50 L0,50 Z' fill='white'/%3E%3C/svg%3E");
    -webkit-mask-size: cover;
    mask-size: cover;
}

/* Add subtle confetti to category background */
.category-section::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image: 
        radial-gradient(circle, var(--primary-pink) 2px, transparent 2px),
        radial-gradient(circle, var(--primary-blue) 2px, transparent 2px),
        radial-gradient(circle, var(--accent-mint) 2px, transparent 2px);
    background-size: 200px 200px, 250px 250px, 220px 220px;
    background-position: 0 0, 60px 60px, 120px 30px;
    opacity: 0.08;
    pointer-events: none;
}

.section-title {
    text-align: center;
    margin-bottom: 45px;
    font-size: 36px;
    font-weight: 600;
    color: var(--dark-text);
}

/* Category Pills - ENHANCED */
.category-nav {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 16px;
    padding: 0 20px;
    position: relative;
    z-index: 1;
}

.category-pill {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 12px 18px;
    background: rgba(255, 255, 255, 0.95);
    border-radius: 50px;
    text-decoration: none;
    box-shadow: 0 6px 25px rgba(0,0,0,0.12);
    border: 2px solid transparent;
    transition: all 0.3s ease;
    position: relative;
    backdrop-filter: blur(10px);
}

.category-pill:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 35px rgba(255,77,138,0.2);
    border-color: var(--accent-red);
}

.category-pill.is-active {
    border-color: var(--accent-red);
    box-shadow: 0 10px 35px rgba(255,77,138,0.25);
    background: linear-gradient(135deg, #FFF0F5, #ffffff);
}

.category-pill__icon {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--primary-pink), var(--primary-blue));
    display: inline-flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    box-shadow: 0 4px 15px rgba(0,0,0,0.15);
}

.category-pill__img {
    width: 50px;
    height: 50px;
    object-fit: cover;
    border-radius: 50%;
    display: block;
}

.category-pill__emoji {
    font-size: 30px;
    line-height: 1;
}

.category-pill__label {
    font-weight: 600;
    color: var(--dark-text);
    font-size: 15px;
    white-space: nowrap;
    font-family: 'Quicksand', sans-serif;
}

/* ============================================
   EXPLORE SECTION - THEMED BACKGROUND
   ============================================ */
.explore-section {
    padding: 60px 0 40px;
    background: linear-gradient(135deg, #F0FBFF 0%, #FFFAFD 100%);
    position: relative;
}

/* Add floating ice cream scoops background */
.explore-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image: 
        radial-gradient(circle, rgba(255, 136, 200, 0.06) 40px, transparent 40px),
        radial-gradient(circle, rgba(125, 211, 255, 0.06) 35px, transparent 35px),
        radial-gradient(circle, rgba(255, 155, 138, 0.06) 30px, transparent 30px);
    background-size: 400px 400px, 350px 350px, 450px 450px;
    background-position: 50px 50px, 250px 150px, 400px 250px;
    pointer-events: none;
}

/* Add sprinkle confetti */
.explore-section::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image: 
        radial-gradient(circle, var(--accent-coral) 2px, transparent 2px),
        radial-gradient(circle, var(--primary-blue) 2px, transparent 2px),
        radial-gradient(circle, var(--accent-yellow) 2px, transparent 2px);
    background-size: 180px 180px, 220px 220px, 200px 200px;
    background-position: 0 0, 80px 80px, 40px 140px;
    opacity: 0.08;
    pointer-events: none;
}

.explore-title {
    text-align: center;
    margin-bottom: 40px;
    font-size: 32px;
    font-weight: 600;
    position: relative;
    z-index: 1;
}

/* ============================================
   FEATURED PRODUCTS SECTION - THEMED BACKGROUND
   ============================================ */
.featured-products-section {
    padding: 70px 0 80px;
    background: linear-gradient(135deg, #FFFAFD 0%, #F5F9FF 100%);
    position: relative;
}

/* Add large floating scoops */
.featured-products-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image: 
        radial-gradient(circle, rgba(255, 136, 200, 0.08) 50px, transparent 50px),
        radial-gradient(circle, rgba(125, 211, 255, 0.08) 45px, transparent 45px),
        radial-gradient(circle, rgba(160, 255, 212, 0.08) 40px, transparent 40px),
        radial-gradient(circle, rgba(255, 235, 125, 0.08) 38px, transparent 38px);
    background-size: 450px 450px, 500px 500px, 420px 420px, 380px 380px;
    background-position: 0 0, 300px 100px, 600px 200px, 150px 350px;
    pointer-events: none;
}

/* Add colorful sprinkles */
.featured-products-section::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image: 
        radial-gradient(circle, var(--primary-pink) 2px, transparent 2px),
        radial-gradient(circle, var(--primary-blue) 2px, transparent 2px),
        radial-gradient(circle, var(--accent-mint) 2px, transparent 2px),
        radial-gradient(circle, var(--accent-coral) 2px, transparent 2px),
        radial-gradient(circle, var(--accent-yellow) 3px, transparent 3px);
    background-size: 160px 160px, 200px 200px, 180px 180px, 220px 220px, 190px 190px;
    background-position: 0 0, 60px 60px, 120px 30px, 180px 90px, 40px 140px;
    opacity: 0.1;
    pointer-events: none;
}

/* ============================================
   PRODUCT CARDS - ENHANCED - HIGH SPECIFICITY
   ============================================ */
.featured-products-section ul.products,
.explore-section ul.products,
ul.products,
.woocommerce ul.products {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 28px !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    position: relative;
    z-index: 1;
}

.featured-products-section ul.products li.product,
.explore-section ul.products li.product,
ul.products li.product {
    background: #ffffff;
    border-radius: 24px;
    box-shadow: 0 6px 25px rgba(0, 0, 0, 0.1);
    padding: 0;
    text-align: center;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    overflow: hidden;
    border: 2px solid transparent;
    position: relative;
}

.featured-products-section ul.products li.product:hover,
.explore-section ul.products li.product:hover,
ul.products li.product:hover {
    transform: translateY(-10px);
    box-shadow: 0 15px 45px rgba(255, 77, 138, 0.2);
    border-color: var(--primary-pink);
}

/* Product image container */
.featured-products-section ul.products li.product a img,
.explore-section ul.products li.product a img,
ul.products li.product a img {
    width: 100%;
    height: 240px;
    object-fit: cover;
    border-radius: 24px 24px 0 0;
    transition: transform 0.4s ease;
}

.featured-products-section ul.products li.product:hover a img,
.explore-section ul.products li.product:hover a img,
ul.products li.product:hover a img {
    transform: scale(1.1);
}

/* Product content */
.featured-products-section ul.products li.product .woocommerce-loop-product__link,
.explore-section ul.products li.product .woocommerce-loop-product__link,
ul.products li.product .woocommerce-loop-product__link {
    display: block;
    text-decoration: none;
    color: inherit;
}

/* Product card content wrapper - centers button - HIGH SPECIFICITY */
.featured-products-section ul.products li.product,
.explore-section ul.products li.product,
ul.products li.product,
.woocommerce ul.products li.product {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
}

.featured-products-section ul.products li.product > *,
.explore-section ul.products li.product > *,
ul.products li.product > *,
.woocommerce ul.products li.product > * {
    text-align: center !important;
    width: 100%;
}

.featured-products-section ul.products li.product .woocommerce-loop-product__link,
.explore-section ul.products li.product .woocommerce-loop-product__link,
ul.products li.product .woocommerce-loop-product__link,
.woocommerce ul.products li.product .woocommerce-loop-product__link {
    width: 100%;
    text-align: center;
}

.featured-products-section ul.products li.product .woocommerce-loop-product__title,
.explore-section ul.products li.product .woocommerce-loop-product__title,
ul.products li.product .woocommerce-loop-product__title,
.featured-products-section ul.products li.product h2,
.explore-section ul.products li.product h2,
ul.products li.product h2 {
    font-size: 18px;
    margin: 15px 20px 8px;
    font-weight: 600;
    color: var(--dark-text);
    font-family: 'Fredoka', sans-serif;
}

.featured-products-section ul.products li.product .price,
.explore-section ul.products li.product .price,
ul.products li.product .price {
    color: var(--accent-red);
    font-weight: 700;
    margin: 0 20px 15px;
    font-size: 20px;
    font-family: 'Fredoka', sans-serif;
}

/* Add to cart button - MORE VIBRANT - CENTERED - HIGH SPECIFICITY */
.featured-products-section ul.products li.product .button,
.featured-products-section ul.products li.product .add_to_cart_button,
.featured-products-section ul.products li.product a.button,
.featured-products-section ul.products li.product a.add_to_cart_button,
.explore-section ul.products li.product .button,
.explore-section ul.products li.product .add_to_cart_button,
.explore-section ul.products li.product a.button,
.explore-section ul.products li.product a.add_to_cart_button,
ul.products li.product .button,
ul.products li.product .add_to_cart_button,
ul.products li.product a.button,
ul.products li.product a.add_to_cart_button,
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .add_to_cart_button,
.woocommerce ul.products li.product a.button,
.woocommerce ul.products li.product a.add_to_cart_button {
    border-radius: 25px !important;
    background: linear-gradient(135deg, var(--accent-red), #FF2D6F) !important;
    color: white !important;
    border: none !important;
    padding: 12px 28px !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    transition: all 0.3s ease !important;
    margin-left: auto !important;
    margin-right: auto !important;
    margin-top: 0 !important;
    margin-bottom: 20px !important;
    display: block !important;
    text-align: center !important;
    text-decoration: none !important;
    font-family: 'Quicksand', sans-serif !important;
    box-shadow: 0 4px 15px rgba(255, 77, 138, 0.3) !important;
    width: fit-content !important;
    max-width: 90% !important;
    float: none !important;
}

.featured-products-section ul.products li.product .button:hover,
.featured-products-section ul.products li.product .add_to_cart_button:hover,
.explore-section ul.products li.product .button:hover,
.explore-section ul.products li.product .add_to_cart_button:hover,
ul.products li.product .button:hover,
ul.products li.product .add_to_cart_button:hover {
    background: linear-gradient(135deg, #FF2D6F, var(--accent-red));
    transform: scale(1.08);
    box-shadow: 0 6px 20px rgba(255, 77, 138, 0.5);
    color: white !important;
}

/* Star rating */
.star-rating {
    color: #FFB800;
    margin: 10px auto;
}

/* ============================================
   SINGLE PRODUCT PAGE - FINAL POLISH (v1.11)
   ============================================ */
/* 1. Global Page Setup */
body.single-product {
    background: #F4F9FF !important;
}

/* Hide Breadcrumbs on Single Product Pages */
.single-product .woocommerce-breadcrumb,
.single-product nav.woocommerce-breadcrumb,
.single-product .ast-breadcrumbs,
.single-product .breadcrumb {
    display: none !important;
}

/* 2. Background Scoops */
body.single-product::before {
    content: '';
    position: fixed;
    top: 0; left: 0; width: 100%; height: 100%;
    background-image: 
        radial-gradient(circle at 10% 15%, var(--primary-pink) 180px, transparent 185px),
        radial-gradient(circle at 90% 25%, var(--primary-blue) 220px, transparent 225px);
    opacity: 0.08;
    pointer-events: none;
    z-index: 0;
}

/* 3. SUPER FORCE FULL WIDTH (Critical for Grid) */
.single-product #primary,
.single-product .ast-container,
.single-product .elementor-location-single,
.single-product .elementor-section-wrap,
.single-product .elementor-container,
.single-product .elementor-row,
.single-product .elementor-column,
.single-product .elementor-top-column {
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
    flex: 0 0 100% !important; /* Forces 100% width on columns */
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
}

/* 4. The Grand Product Card - ULTRA COMPACT */
.single-product div.product {
    max-width: 1050px !important;
    margin: 15px auto 40px !important; /* Even tighter top margin */
    background: rgba(255, 255, 255, 0.95) !important;
    backdrop-filter: blur(20px) !important;
    border-radius: 40px !important;
    border: 1px solid #ffffff !important;
    box-shadow: 0 15px 50px rgba(0,0,0,0.03) !important;
    padding: 30px !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 30px !important;
    position: relative;
    z-index: 10;
}

/* 5. Top Row Layout Control */
/* We use flex to keep image and summary side-by-side */
.single-product .woocommerce-product-gallery {
    flex: 1 1 450px !important;
    max-width: 480px !important;
    margin: 0 !important;
    border-radius: 30px !important;
    overflow: hidden !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.05) !important;
}

.single-product .summary {
    flex: 1 1 400px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    padding: 0 10px !important;
    background: transparent !important;
}

.single-product .product_title {
    font-size: 36px !important;
    line-height: 1.1 !important;
    color: var(--dark-text) !important;
    font-weight: 700 !important;
    margin: 0 0 10px 0 !important;
}

.single-product .price {
    font-size: 32px !important;
    color: var(--accent-red) !important;
    font-weight: 800 !important;
    margin-bottom: 15px !important;
}

/* 6. Styled Buttons & Input (Aice Theme) */
.single-product form.cart {
    display: flex !important;
    gap: 15px !important;
    align-items: center !important;
    margin-top: 10px !important;
}

.single-product .quantity input.qty {
    border-radius: 20px !important;
    border: 2px solid #FFECF5 !important;
    background: #FFF8FB !important;
    height: 50px !important;
    width: 70px !important;
}

.single-product .single_add_to_cart_button.button {
    background: linear-gradient(135deg, var(--accent-red), #FF2D6F) !important;
    border-radius: 25px !important;
    height: 50px !important;
    padding: 0 40px !important;
    font-weight: 700 !important;
    box-shadow: 0 8px 20px rgba(255, 77, 138, 0.3) !important;
    transition: all 0.3s ease !important;
}

.single-product .single_add_to_cart_button.button:hover {
    transform: scale(1.05) !important;
    box-shadow: 0 12px 30px rgba(255, 77, 138, 0.5) !important;
}

/* 7. COMPACT CONTENT SECTIONS */
.woocommerce-tabs.wc-tabs-wrapper,
.related.products,
.single-product .woocommerce-tabs ul.tabs {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
    margin-top: 20px !important;
    padding: 0 !important;
}

/* Hide the actual tab buttons as requested */
.single-product .woocommerce-tabs ul.tabs {
    display: none !important;
}

.woocommerce-tabs .woocommerce-Tabs-panel {
    border: none !important;
    padding: 0 !important;
    background: transparent !important;
}

/* 8. Related Products - Grid FIX */
.related.products {
    margin-top: 30px !important;
    padding-top: 30px !important;
    border-top: 2px dashed rgba(255, 136, 200, 0.1);
}

.related.products h2 {
    font-size: 28px !important;
    margin-bottom: 25px !important;
    text-align: left !important;
}

.related.products ul.products {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 25px !important;
    width: 100% !important;
}

/* 9. Responsive Tuning */
@media (max-width: 900px) {
    .related.products ul.products {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

@media (max-width: 600px) {
    .single-product div.product {
        padding: 20px !important;
        margin: 10px auto !important;
    }
    .single-product .product_title {
        font-size: 28px !important;
    }
}
@media (max-width: 1024px) {
    .header-container {
        padding: 15px 20px;
    }

    .main-navigation ul {
        gap: 20px;
    }

    .featured-products-section ul.products,
    .explore-section ul.products,
    ul.products,
    .woocommerce ul.products {
        grid-template-columns: repeat(3, 1fr) !important;
        gap: 20px !important;
    }

    .featured-products-section ul.products li.product,
    .explore-section ul.products li.product,
    ul.products li.product {
        border-radius: 20px;
    }

    .featured-products-section ul.products li.product a img,
    .explore-section ul.products li.product a img,
    ul.products li.product a img {
        height: 210px;
    }

    .hero-content h1 {
        font-size: 48px;
    }

    /* Single Product adjustments */
    .related.products ul.products {
        grid-template-columns: repeat(3, 1fr) !important;
        gap: 20px !important;
    }
}

@media (max-width: 768px) {
    .header-container {
        flex-wrap: wrap;
        gap: 15px;
    }

    .site-branding {
        order: 1;
        flex: 1;
    }

    .header-actions {
        order: 2;
    }

    .main-navigation {
        order: 3;
        width: 100%;
        margin-top: 10px;
    }

    .main-navigation ul {
        justify-content: flex-start;
        flex-wrap: wrap;
        gap: 15px;
    }

    .header-icon {
        display: none;
    }

    /* Show Cart Icon on Mobile */
    .header-icon.cart-icon {
        display: flex !important;
    }

    .hero-content h1 {
        font-size: 38px;
    }

    .hero-tagline {
        font-size: 18px;
    }

    .featured-products-section ul.products,
    .explore-section ul.products,
    ul.products,
    .woocommerce ul.products {
        grid-template-columns: 1fr !important;
        gap: 18px !important;
        padding: 0 15px !important;
    }
    
    .featured-products-section ul.products li.product,
    .explore-section ul.products li.product,
    ul.products li.product,
    .woocommerce ul.products li.product {
        max-width: 100% !important;
        margin: 0 auto !important;
    }

    .featured-products-section ul.products li.product,
    .explore-section ul.products li.product,
    ul.products li.product {
        border-radius: 18px;
        padding-bottom: 10px;
    }

    .featured-products-section ul.products li.product a img,
    .explore-section ul.products li.product a img,
    ul.products li.product a img {
        height: 180px;
    }

    .featured-products-section ul.products li.product .woocommerce-loop-product__title,
    .explore-section ul.products li.product .woocommerce-loop-product__title,
    ul.products li.product .woocommerce-loop-product__title,
    .featured-products-section ul.products li.product h2,
    .explore-section ul.products li.product h2,
    ul.products li.product h2 {
        font-size: 15px;
        margin: 12px 12px 6px;
        line-height: 1.3;
    }

    .featured-products-section ul.products li.product .price,
    .explore-section ul.products li.product .price,
    ul.products li.product .price {
        font-size: 16px;
        margin: 0 12px 12px;
    }

    .featured-products-section ul.products li.product .button,
    .featured-products-section ul.products li.product .add_to_cart_button,
    .featured-products-section ul.products li.product a.button,
    .explore-section ul.products li.product .button,
    .explore-section ul.products li.product .add_to_cart_button,
    .explore-section ul.products li.product a.button,
    ul.products li.product .button,
    ul.products li.product .add_to_cart_button,
    ul.products li.product a.button,
    .woocommerce ul.products li.product .button,
    .woocommerce ul.products li.product .add_to_cart_button,
    .woocommerce ul.products li.product a.button {
        width: 85% !important;
        padding: 10px 16px !important;
        font-size: 13px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        margin-top: 0 !important;
        margin-bottom: 16px !important;
        display: block !important;
    }

    .category-nav {
        gap: 12px;
    }

    .category-pill {
        padding: 10px 14px;
    }

    .category-pill__icon {
        width: 50px;
        height: 50px;
    }

    .category-pill__img {
        width: 42px;
        height: 42px;
    }

    /* Single Product adjustments */
    .single-product div.product {
        margin-top: 20px;
    }

    .single-product .product_title {
        font-size: 28px !important;
    }

    .woocommerce-tabs.wc-tabs-wrapper {
        padding: 25px !important;
        margin-top: 40px !important;
    }

    .woocommerce-tabs ul.tabs {
        gap: 15px !important;
        flex-wrap: wrap !important;
    }

    .related.products h2 {
        font-size: 26px !important;
        margin-bottom: 30px !important;
    }

    .related.products ul.products {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 15px !important;
    }
}

@media (max-width: 480px) {
    .hero-content h1 {
        font-size: 32px;
    }

    .hero-tagline {
        font-size: 16px;
    }

    .section-title {
        font-size: 26px;
        margin-bottom: 30px;
    }

    .featured-products-section,
    .explore-section {
        padding: 50px 0 60px;
    }

    .featured-products-section ul.products,
    .explore-section ul.products,
    ul.products,
    .woocommerce ul.products {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
        padding: 0 10px !important;
    }

    .featured-products-section ul.products li.product,
    .explore-section ul.products li.product,
    ul.products li.product,
    .woocommerce ul.products li.product {
        border-radius: 20px !important;
        max-width: 100% !important;
        margin: 0 auto !important;
    }

    .featured-products-section ul.products li.product a img,
    .explore-section ul.products li.product a img,
    ul.products li.product a img {
        height: 220px;
        border-radius: 20px 20px 0 0;
    }

    .featured-products-section ul.products li.product .woocommerce-loop-product__title,
    .explore-section ul.products li.product .woocommerce-loop-product__title,
    ul.products li.product .woocommerce-loop-product__title,
    .featured-products-section ul.products li.product h2,
    .explore-section ul.products li.product h2,
    ul.products li.product h2 {
        font-size: 16px;
        margin: 15px 15px 8px;
    }

    .featured-products-section ul.products li.product .price,
    .explore-section ul.products li.product .price,
    ul.products li.product .price {
        font-size: 18px;
        margin: 0 15px 15px;
    }

    .featured-products-section ul.products li.product .button,
    .featured-products-section ul.products li.product .add_to_cart_button,
    .featured-products-section ul.products li.product a.button,
    .explore-section ul.products li.product .button,
    .explore-section ul.products li.product .add_to_cart_button,
    .explore-section ul.products li.product a.button,
    ul.products li.product .button,
    ul.products li.product .add_to_cart_button,
    ul.products li.product a.button,
    .woocommerce ul.products li.product .button,
    .woocommerce ul.products li.product .add_to_cart_button,
    .woocommerce ul.products li.product a.button {
        width: 90% !important;
        padding: 12px 20px !important;
        font-size: 14px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        margin-top: 0 !important;
        margin-bottom: 18px !important;
        display: block !important;
    }
}
/* Mobile Adjustments for Single Product Page */
@media (max-width: 480px) {
    .single-product .product_title {
        font-size: 24px !important;
    }
    .related.products h2 {
        font-size: 22px !important;
    }
    .related.products ul.products {
        grid-template-columns: 1fr !important;
    }
}

/* ============================================
   SHOP PAGE ARCHIVE - MODERN LAYOUT (v1.12)
   ============================================ */
/* Global Background for Shop */
.woocommerce-shop,
.post-type-archive-product {
    background: var(--light-bg) !important;
}

.woocommerce-shop::before,
.post-type-archive-product::before {
    content: '';
    position: fixed;
    top: 0; left: 0; width: 100%; height: 100%;
    background-image: 
        radial-gradient(circle at 10% 20%, var(--primary-pink) 160px, transparent 165px),
        radial-gradient(circle at 90% 15%, var(--primary-blue) 200px, transparent 205px),
        radial-gradient(circle at 15% 85%, var(--accent-mint) 140px, transparent 145px),
        radial-gradient(circle at 85% 80%, var(--accent-yellow) 170px, transparent 175px);
    opacity: 0.08;
    pointer-events: none;
    z-index: 0;
}

/* Shop Title & Clean Header - REFINED v1.16 */
/* Specifically hide only breadcrumbs, NOT pagination */
.woocommerce-shop nav.woocommerce-breadcrumb,
.woocommerce-shop .ast-breadcrumbs,
.woocommerce-shop .breadcrumb {
    display: none !important;
}

/* Ensure Pagination is VISIBLE and CENTERED */
.woocommerce-shop .woocommerce-pagination,
.woocommerce-shop .ast-woocommerce-container > nav.woocommerce-pagination {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    text-align: center !important;
    margin: 60px auto 40px !important;
    clear: both !important;
}

/* ============================================
   MOBILE HEADER ADJUSTMENTS
   ============================================ */
@media (max-width: 768px) {
    /* Header Container - Allow wrapping */
    .header-container {
        flex-wrap: wrap !important;
        justify-content: space-between !important; /* Spread items out */
        padding: 10px 15px !important; /* Add side padding */
        gap: 0 !important;
    }

    /* Logo - Full Width & Centered */
    .site-branding {
        flex: 0 0 100% !important;
        text-align: center !important;
        order: 1 !important;
        margin-right: 0 !important;
        margin-bottom: 5px !important;
    }

    .site-branding .custom-logo-link img {
        max-height: 90px !important;
        width: auto !important;
        min-width: 240px !important; /* increased width */
        margin: 0 auto !important;
    }

    /* Navbar - Left aligned (Start) */
    .main-navigation {
        order: 2 !important;
        flex: 0 1 auto !important;
        margin: 0 !important;
        margin-top: 25px !important; /* Increased to align with cart */
    }
    
    .main-navigation ul {
        gap: 15px !important;
    }

    /* Header Actions (Cart) - Right aligned (End) */
    .header-actions {
        order: 3 !important;
        margin-left: auto !important; /* Push to right */
        padding-left: 0 !important;
        flex: 0 1 auto !important;
        display: flex !important;
        align-items: center !important;
        margin-top: 10px !important;
    }
    
    /* Specific row controls: Logo Row (100%), Nav+Cart Row (Auto) */
    /* Accessing via order requires siblings to flow naturally. 
       With gap=0 and no margins, they should touch. 
       We add margin-top to Nav/Cart to separate from Logo. 
    */
    .main-navigation,
    .header-actions {
        margin-top: 10px !important;
    }
}

.woocommerce-shop header.woocommerce-products-header {
    text-align: center !important;
    margin: 40px auto 30px !important;
    display: block !important;
}

.woocommerce-shop .woocommerce-products-header__title.page-title {
    font-size: 72px !important;
    font-weight: 800 !important;
    color: var(--dark-text) !important;
    font-family: 'Fredoka', sans-serif !important;
    margin: 0 !important;
    background: linear-gradient(135deg, var(--dark-text) 30%, var(--accent-red) 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    line-height: 1.1 !important;
}

/* ============================================
   CONTENT SEARCH BAR
   ============================================ */
.content-search-bar .dgwt-wcas-search-wrapp {
    max-width: 100%;
    margin: 0 auto;
}

.content-search-bar .dgwt-wcas-search-form {
    background: white;
    border-radius: 50px;
    border: 2px solid var(--primary-pink);
    transition: all 0.3s ease;
    box-shadow: 0 4px 20px rgba(255, 136, 200, 0.15);
    height: 56px;
}

.content-search-bar .dgwt-wcas-search-form:focus-within {
    border-color: var(--accent-red);
    box-shadow: 0 8px 25px rgba(255, 77, 138, 0.25);
    transform: translateY(-2px);
}

.content-search-bar .dgwt-wcas-sf-wrapp input[type="search"] {
    background: transparent !important;
    border: none !important;
    padding: 10px 25px !important;
    font-size: 16px !important;
    font-family: 'Quicksand', sans-serif !important;
    height: 100% !important;
}

.content-search-bar .dgwt-wcas-sf-wrapp input[type="search"]::placeholder {
    color: var(--light-text);
}

/* Hide magnifier if needed */
.content-search-bar .dgwt-wcas-ico-magnifier,
.content-search-bar .dgwt-wcas-ico-magnifier-handler {
    display: none !important;
}

/* --- HOME PAGE SEARCH --- */
.home-search-section .content-search-bar {
    max-width: 600px;
    margin: 30px auto;
    padding: 0 20px;
}

/* --- SHOP PAGE SEARCH (Centered) --- */
.shop-search-bar.content-search-bar {
    max-width: 500px;
    margin: 10px auto 40px;
    padding: 0 10px;
}

/* --- NAVBAR CENTERING CHECK --- */
.header-container {
    justify-content: space-between;
}

.main-navigation {
    flex: 1; /* Take up available space */
    display: flex;
    justify-content: center; /* Center the UL inside */
    margin: 0 20px;
}

/* Header Search Removal */
.header-search {
    display: none !important; 
}

/* REMOVE SORTING AND RESULT COUNT - AGGRESSIVE */
.woocommerce-shop .woocommerce-result-count, 
.woocommerce-shop .woocommerce-ordering,
.woocommerce-shop .ast-shop-control-strip {
    display: none !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}

/* Modern Product Card Grid */
.woocommerce-shop ul.products {
    max-width: 1100px !important;
    margin: 40px auto !important;
    padding: 0 20px !important;
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 30px !important;
    position: relative;
    z-index: 10;
}

.woocommerce-shop ul.products li.product {
    background: #ffffff !important;
    border-radius: 35px !important;
    padding: 0 !important;
    margin: 0 !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.04) !important;
    border: 1px solid rgba(255, 136, 200, 0.05) !important;
    overflow: hidden !important;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275) !important;
    display: flex !important;
    flex-direction: column !important;
}

.woocommerce-shop ul.products li.product:hover {
    transform: translateY(-12px) !important;
    box-shadow: 0 20px 50px rgba(255, 77, 138, 0.15) !important;
}

/* Image rounded inside card */
.woocommerce-shop ul.products li.product a img {
    border-radius: 0 !important; /* Managed by card overflow */
    margin-bottom: 0 !important;
    transition: transform 0.6s ease !important;
}

/* Responsive Shop Grid - UPDATED */
@media (max-width: 1024px) {
    .woocommerce-shop ul.products {
        grid-template-columns: repeat(3, 1fr) !important;
        gap: 25px !important;
    }
}

@media (max-width: 768px) {
    .woocommerce-shop ul.products {
        grid-template-columns: 1fr !important; /* SINGLE COLUMN for tablets */
        gap: 20px !important;
        padding: 0 15px !important;
    }
    
    .woocommerce-shop .woocommerce-products-header__title.page-title {
        font-size: 48px !important;
    }
    
    .woocommerce-shop ul.products li.product {
        border-radius: 25px !important;
        max-width: 500px !important;
        margin: 0 auto !important;
    }
    
    .woocommerce-shop ul.products li.product a img {
        height: 280px !important;
        object-fit: cover !important;
    }
    
    .woocommerce-shop ul.products li.product h2 {
        font-size: 20px !important;
        margin: 20px 20px 10px !important;
    }
    
    .woocommerce-shop ul.products li.product .price {
        font-size: 22px !important;
        margin-bottom: 15px !important;
    }
    
    .woocommerce-shop ul.products li.product .button {
        width: 90% !important;
        padding: 14px 30px !important;
        font-size: 15px !important;
        margin-bottom: 20px !important;
    }
}

@media (max-width: 600px) {
    .woocommerce-shop ul.products {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
    }
    
    .woocommerce-shop ul.products li.product {
        max-width: 100% !important;
    }
}

@media (max-width: 480px) {
    .woocommerce-shop ul.products {
        grid-template-columns: 1fr !important;
        gap: 18px !important;
        padding: 0 10px !important;
    }
    
    .woocommerce-shop ul.products li.product a img {
        height: 250px !important;
    }
}

.woocommerce-shop ul.products li.product:hover a img {
    transform: scale(1.08) !important;
}

/* Product Content Padding */
.woocommerce-shop ul.products li.product .woocommerce-loop-product__title,
.woocommerce-shop ul.products li.product .price,
.woocommerce-shop ul.products li.product .star-rating {
    padding: 0 20px !important;
}

.woocommerce-shop ul.products li.product h2 {
    font-size: 18px !important;
    margin: 20px 0 8px !important;
    color: var(--dark-text) !important;
}

.woocommerce-shop ul.products li.product .price {
    font-size: 20px !important;
    color: var(--accent-red) !important;
    font-weight: 700 !important;
    margin-bottom: 20px !important;
}

/* Add to Cart Button in Loop */
.woocommerce-shop ul.products li.product .button {
    background: linear-gradient(135deg, var(--accent-red), #FF2D6F) !important;
    border-radius: 25px !important;
    color: white !important;
    padding: 12px 25px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    width: 85% !important;
    margin: 0 auto 25px !important;
    display: block !important;
    text-align: center !important;
    box-shadow: 0 6px 15px rgba(255, 77, 138, 0.25) !important;
    border: none !important;
}

/* Compact Result Count and Ordering */
.woocommerce-shop .woocommerce-result-count, 
.woocommerce-shop .woocommerce-ordering {
    margin-bottom: 20px !important;
    padding: 0 20px !important;
}

/* Styled Pagination */
.woocommerce-pagination ul {
    border: none !important;
    display: flex !important;
    justify-content: center !important;
    gap: 10px !important;
}

.woocommerce-pagination ul li {
    border-right: none !important;
}

.woocommerce-pagination ul li a,
.woocommerce-pagination ul li span {
    border-radius: 15px !important;
    background: #fff !important;
    color: var(--dark-text) !important;
    padding: 12px 18px !important;
    box-shadow: 0 5px 15px rgba(0,0,0,0.05) !important;
    border: none !important;
    font-weight: 600 !important;
}

.woocommerce-pagination ul li span.current {
    background: var(--accent-red) !important;
    color: white !important;
}

/* Responsive Overrides */
@media (max-width: 1024px) {
    .woocommerce-shop ul.products {
        grid-template-columns: repeat(3, 1fr) !important;
        gap: 20px !important;
    }
}

@media (max-width: 768px) {
    .woocommerce-shop ul.products {
        grid-template-columns: repeat(2, 1fr) !important;
    }
    .woocommerce-shop .ast-archive-description .ast-archive-title {
        font-size: 38px !important;
        text-align: center !important;
    }
}

/* ============================================
   FLOATING INSTAGRAM ICON - UPDATED
   ============================================ */
.ig-floating-btn {
    position: fixed !important;
    bottom: 95px !important;
    right: 20px !important;
    width: 60px !important;
    height: 60px !important;
    background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%) !important;
    color: #ffffff !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: 0 6px 20px rgba(214, 36, 159, 0.4) !important;
    z-index: 2147483647 !important;
    transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) !important;
    text-decoration: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    animation: pulse-ig 2s ease-in-out infinite !important;
}

.ig-floating-btn:hover {
    transform: scale(1.15) translateY(-5px) !important;
    box-shadow: 0 10px 30px rgba(214, 36, 159, 0.5) !important;
    color: #ffffff !important;
    animation: none !important;
}

.ig-floating-btn svg {
    width: 30px !important;
    height: 30px !important;
    filter: drop-shadow(0 2px 4px rgba(0,0,0,0.2));
    fill: currentColor !important;
    display: block !important;
}

/* WhatsApp Floating Icon - UPDATED WITH ANIMATION */
.whatsapp-floating-btn {
    position: fixed !important;
    bottom: 20px !important;
    right: 20px !important;
    width: 60px !important;
    height: 60px !important;
    background: var(--whatsapp-green) !important;
    color: #ffffff !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: 0 6px 20px rgba(37, 211, 102, 0.4) !important;
    z-index: 2147483647 !important;
    transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) !important;
    text-decoration: none !important;
    animation: pulse-wa 2s ease-in-out infinite !important;
}

.whatsapp-floating-btn:hover {
    transform: scale(1.15) translateY(-5px) !important;
    box-shadow: 0 10px 30px rgba(37, 211, 102, 0.5) !important;
    color: #ffffff !important;
    animation: none !important;
}

.whatsapp-floating-btn svg {
    width: 32px !important;
    height: 32px !important;
    filter: drop-shadow(0 2px 4px rgba(0,0,0,0.2));
    fill: currentColor !important;
    display: block !important;
}

/* Pulse Animations for Both Icons */
@keyframes pulse-ig {
    0%, 100% {
        transform: scale(1);
        box-shadow: 0 6px 20px rgba(214, 36, 159, 0.4);
    }
    50% {
        transform: scale(1.05);
        box-shadow: 0 8px 25px rgba(214, 36, 159, 0.6);
    }
}

@keyframes pulse-wa {
    0%, 100% {
        transform: scale(1);
        box-shadow: 0 6px 20px rgba(37, 211, 102, 0.4);
    }
    50% {
        transform: scale(1.05);
        box-shadow: 0 8px 25px rgba(37, 211, 102, 0.6);
    }
}

/* Mobile Adjustments - UPDATED */
@media (max-width: 768px) {
    .ig-floating-btn {
        bottom: 90px !important;
        right: 15px !important;
        width: 50px !important;
        height: 50px !important;
    }
    
    .whatsapp-floating-btn {
        bottom: 20px !important;
        right: 15px !important;
        width: 50px !important;
        height: 50px !important;
    }

    .ig-floating-btn svg {
        width: 25px !important;
        height: 25px !important;
    }
    
    .whatsapp-floating-btn svg {
        width: 27px !important;
        height: 27px !important;
    }
}

@media (max-width: 480px) {
    .ig-floating-btn {
        bottom: 85px !important;
        right: 12px !important;
        width: 45px !important;
        height: 45px !important;
    }
    
    .whatsapp-floating-btn {
        bottom: 15px !important;
        right: 12px !important;
        width: 45px !important;
        height: 45px !important;
    }

    .ig-floating-btn svg {
        width: 22px !important;
        height: 22px !important;
    }
    
    .whatsapp-floating-btn svg {
        width: 24px !important;
        height: 24px !important;
    }
}

/* ============================================
   CHECKOUT PAGE CUSTOMIZATION
   ============================================ */
/* Centered Checkout Header */
.woocommerce-checkout .entry-title,
.woocommerce-checkout .woocommerce-products-header__title.page-title {
    text-align: center !important;
    font-size: 48px !important;
    font-weight: 700 !important;
    color: var(--dark-text) !important;
    font-family: 'Fredoka', sans-serif !important;
    margin: 40px 0 30px !important;
    background: linear-gradient(135deg, var(--dark-text) 30%, var(--accent-red) 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

/* Form Styling */
.woocommerce-checkout form.checkout.woocommerce-checkout {
    background: #ffffff;
    max-width: 1100px;
    margin: 0 auto 60px;
    padding: 40px;
    border-radius: 40px;
    box-shadow: 0 10px 40px rgba(0,0,0,0.05);
    border: 1px solid rgba(255, 136, 200, 0.1);
}

/* Remove "Have a coupon?" box styling to match */
.woocommerce-form-coupon-toggle .woocommerce-info {
    max-width: 1100px;
    margin: 0 auto 20px;
    border-radius: 20px;
    background: #FFF5F9;
    border-top: 3px solid var(--accent-red);
}

/* Billing Details Title */
.woocommerce-checkout h3#billing_details_heading, 
.woocommerce-checkout h3#ship-to-different-address {
    font-family: 'Fredoka', sans-serif;
    font-size: 24px;
    color: var(--dark-text);
    border-bottom: 2px dashed rgba(0,0,0,0.1);
    padding-bottom: 10px;
    margin-bottom: 25px;
}

/* Input Fields Styling */
.woocommerce-checkout input.input-text,
.woocommerce-checkout .select2-container .select2-selection--single {
    border-radius: 15px !important;
    border: 2px solid #F0F0F0 !important;
    background: #FAFAFA !important;
    padding: 12px 15px !important;
    height: auto !important;
    min-height: 45px;
    font-family: 'Quicksand', sans-serif !important;
    transition: all 0.3s ease !important;
}

.woocommerce-checkout input.input-text:focus,
.woocommerce-checkout .select2-container--default.select2-container--open .select2-selection--single {
    border-color: var(--primary-pink) !important;
    background: #FFF !important;
    box-shadow: 0 4px 15px rgba(255, 136, 200, 0.15) !important;
}

/* Order Review Section */
.woocommerce-checkout #order_review_heading {
    text-align: center;
    font-family: 'Fredoka', sans-serif;
    font-size: 28px;
    margin-top: 20px;
    margin-bottom: 30px;
    color: var(--dark-text);
}

.woocommerce-checkout #order_review {
    background: #F4F9FF;
    padding: 30px;
    border-radius: 25px;
    border: 2px solid #EBF5FF;
}

.woocommerce-checkout table.shop_table {
    border: none !important;
    border-radius: 15px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 4px 15px rgba(0,0,0,0.03);
}

.woocommerce-checkout table.shop_table th {
    background: var(--light-bg);
    color: var(--dark-text);
    font-weight: 700;
    padding: 15px 20px;
}

.woocommerce-checkout table.shop_table td {
    padding: 15px 20px;
    border-top: 1px solid #f0f0f0;
}

/* Payment Methods */
.woocommerce-checkout #payment {
    background: transparent !important;
    border-radius: 20px !important;
}

.woocommerce-checkout #payment ul.payment_methods {
    border-bottom: none !important;
    padding: 0 !important;
}

.woocommerce-checkout #payment div.payment_box {
    background: #FFF !important;
    box-shadow: 0 4px 15px rgba(0,0,0,0.05);
    border-radius: 15px;
    font-size: 14px;
    color: var(--light-text);
}

.woocommerce-checkout #payment div.payment_box::before {
    border-bottom-color: #FFF !important;
}

/* Place Order Button */
.woocommerce-checkout #place_order {
    width: 100%;
    margin-top: 20px;
    background: linear-gradient(135deg, var(--accent-red), #FF2D6F) !important;
    border-radius: 30px !important;
    padding: 18px !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    box-shadow: 0 8px 25px rgba(255, 77, 138, 0.3) !important;
    transition: all 0.3s ease !important;
}

.woocommerce-checkout #place_order:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 12px 35px rgba(255, 77, 138, 0.4) !important;
}

@media (max-width: 768px) {
    .woocommerce-checkout form.checkout.woocommerce-checkout {
        padding: 20px;
    }
    
    .woocommerce-checkout .col2-set .col-1, 
    .woocommerce-checkout .col2-set .col-2 {
        float: none;
        width: 100%;
    }
}