/*
Theme Name: Blocksy Child
Theme URI: https://creativethemes.com/blocksy/
Description: Child theme for Blocksy containing the Stitch design system 572462280698873945 for Burkina Jetables.
Author: Antigravity
Author URI: https://google.com
Template: blocksy
Version: 1.0.0
*/

/* Enforce the Google Font DM Sans and design tokens on the site */
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,100..1000;1,9..40,100..1000&display=swap');

:root {
    /* Stitch Color Palette mapped to Blocksy variables */
    --theme-palette-color-1: #3a8244 !important;       /* Primary Green */
    --theme-palette-color-2: #316e3a !important;       /* Deep Forest Green (Primary Hover) */
    --theme-palette-color-3: #e2241a !important;       /* Secondary Red */
    --theme-palette-color-4: #fad616 !important;       /* Vibrant Yellow (Secondary Accent) */
    --theme-palette-color-5: #1A1C1E !important;       /* Text Main (Dark charcoal) */
    --theme-palette-color-6: #40493d !important;       /* Text Body (On-surface variant) */
    --theme-palette-color-7: #E0E4E2 !important;       /* Border color */
    --theme-palette-color-8: #f8f9fa !important;       /* Background / Light Gray Surface */
    
    /* Font override */
    --theme-font-family: 'DM Sans', sans-serif !important;
    --theme-heading-font-family: 'DM Sans', sans-serif !important;
    
    /* Roundness and spacing scale matching Stitch specs */
    --theme-button-radius: 0.25rem !important;          /* ROUND_FOUR roundness default (0.25rem / 4px) */
    --theme-input-radius: 0.25rem !important;
    --theme-card-radius: 0.5rem !important;             /* soft 8px card borders */
}

/* Fallback Font overrides */
body, h1, h2, h3, h4, h5, h6, p, a, button, input, select, textarea {
    font-family: 'DM Sans', sans-serif !important;
}

/* Hero Vertical Menu Styling */
.hero-vertical-nav {
    display: block;
}
.hero-vertical-nav ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}
.hero-vertical-nav ul li {
    margin: 0;
    padding: 0;
}
.hero-vertical-nav ul li a {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    color: #40493d !important;
    text-decoration: none;
    font-size: 14px;
    font-weight: 600;
    padding: 0.5rem 0;
    border-bottom: 1px solid rgba(224, 228, 226, 0.5);
    transition: all 0.2s ease-in-out;
}
.hero-vertical-nav ul li a:hover {
    color: #3a8244 !important;
    border-bottom-color: #3a8244 !important;
    padding-left: 4px;
}
.hero-vertical-nav ul li a::before {
    content: "label";
    font-family: 'Material Symbols Outlined';
    font-size: 18px;
    color: #3a8244 !important;
    display: inline-block;
    vertical-align: middle;
}
.hero-vertical-nav ul li a::after {
    content: "chevron_right";
    font-family: 'Material Symbols Outlined';
    margin-left: auto;
    font-size: 16px;
    color: #bfcaba !important;
    opacity: 0.4;
    transition: opacity 0.2s ease;
}
.hero-vertical-nav ul li a:hover::after {
    opacity: 0.8;
}

/* Fallback media query to ensure the column displays on desktop screens */
@media (min-width: 1024px) {
    div.hidden.lg\:flex {
        display: flex !important;
    }
}

/* WooCommerce Single Product Page Styling */
.single-product div.product {
    margin-top: 2rem !important;
    margin-bottom: 4rem !important;
}

/* 1. Image Gallery Customization */
.single-product .woocommerce-product-gallery {
    border-radius: 24px !important;
    overflow: hidden !important;
    border: 1px solid var(--theme-palette-color-7) !important;
    box-shadow: 0 4px 20px -2px rgba(30, 86, 49, 0.08) !important;
    background: #ffffff !important;
    padding: 12px !important;
}
.single-product .woocommerce-product-gallery img {
    border-radius: 16px !important;
}
.single-product .woocommerce-product-gallery .flex-control-thumbs {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 12px !important;
    padding: 12px 0 0 0 !important;
    margin: 0 !important;
    list-style: none !important;
}
.single-product .woocommerce-product-gallery .flex-control-thumbs li {
    width: 100% !important;
    float: none !important;
    margin: 0 !important;
}
.single-product .woocommerce-product-gallery .flex-control-thumbs img {
    border-radius: 12px !important;
    border: 2px solid transparent !important;
    transition: border-color 0.2s ease !important;
}
.single-product .woocommerce-product-gallery .flex-control-thumbs img.flex-active,
.single-product .woocommerce-product-gallery .flex-control-thumbs img:hover {
    border-color: var(--theme-palette-color-1) !important;
}

/* 2. Product Summary Info */
.single-product .summary.entry-summary {
    padding-left: 1.5rem !important;
}
.single-product .product_title {
    font-size: 32px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    color: var(--theme-palette-color-5) !important;
    margin-bottom: 1rem !important;
}

/* Ratings */
.single-product .woocommerce-product-rating {
    margin-bottom: 1.5rem !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}
.single-product .star-rating {
    color: var(--theme-palette-color-4) !important; /* Vibrant Amber */
}

/* Price */
.single-product p.price {
    font-size: 28px !important;
    font-weight: 700 !important;
    color: var(--theme-palette-color-1) !important; /* Primary Green */
    margin-bottom: 1.5rem !important;
}
.single-product p.price del {
    font-size: 20px !important;
    color: var(--theme-palette-color-6) !important;
    opacity: 0.6;
}
.single-product p.price ins {
    text-decoration: none !important;
    margin-left: 8px;
}

/* Description */
.single-product .woocommerce-product-details__short-description {
    font-size: 16px !important;
    line-height: 1.6 !important;
    color: var(--theme-palette-color-6) !important;
    margin-bottom: 2rem !important;
    border-bottom: 1px solid var(--theme-palette-color-7);
    padding-bottom: 1.5rem;
}

/* 3. Add to Cart Form & Quantity */
.single-product form.cart {
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
    margin-bottom: 2rem !important;
}
.single-product .quantity {
    display: inline-flex !important;
    align-items: center !important;
    border: 1px solid var(--theme-palette-color-7) !important;
    border-radius: 30px !important;
    padding: 4px 12px !important;
    background: #ffffff !important;
}
.single-product .quantity input.qty {
    border: none !important;
    width: 50px !important;
    height: 40px !important;
    text-align: center !important;
    font-weight: 700 !important;
    font-size: 16px !important;
    color: var(--theme-palette-color-5) !important;
    background: transparent !important;
}
.single-product .quantity input.qty:focus {
    box-shadow: none !important;
    outline: none !important;
}
.single-product button.single_add_to_cart_button {
    background: var(--theme-palette-color-1) !important; /* Primary Green */
    color: #ffffff !important;
    font-weight: 700 !important;
    font-size: 16px !important;
    padding: 14px 36px !important;
    border-radius: 30px !important; /* Pill style */
    border: none !important;
    transition: all 0.2s ease-in-out !important;
    box-shadow: 0 4px 12px rgba(13, 99, 27, 0.2) !important;
    cursor: pointer !important;
}
.single-product button.single_add_to_cart_button:hover {
    background: var(--theme-palette-color-2) !important; /* Deep Forest Green */
    transform: translateY(-1px) !important;
    box-shadow: 0 6px 16px rgba(13, 99, 27, 0.3) !important;
}

/* 4. Product Tabs (Description, Additional Info, Reviews) */
.single-product .woocommerce-tabs {
    margin-top: 4rem !important;
    border-top: 1px solid var(--theme-palette-color-7) !important;
    padding-top: 2rem !important;
}
.single-product .woocommerce-tabs ul.tabs {
    display: flex !important;
    border-bottom: 1px solid var(--theme-palette-color-7) !important;
    padding-left: 0 !important;
    margin-bottom: 2rem !important;
    list-style: none !important;
}
.single-product .woocommerce-tabs ul.tabs li {
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    margin: 0 2rem 0 0 !important;
    padding: 0 0 1rem 0 !important;
}
.single-product .woocommerce-tabs ul.tabs li a {
    color: var(--theme-palette-color-6) !important;
    font-weight: 600 !important;
    font-size: 16px !important;
    padding: 0 !important;
    text-decoration: none !important;
}
.single-product .woocommerce-tabs ul.tabs li.active {
    border-bottom: 2px solid var(--theme-palette-color-1) !important;
}
.single-product .woocommerce-tabs ul.tabs li.active a {
    color: var(--theme-palette-color-1) !important;
}





