/* ===================================================================
   WooCommerce Product Page Styles - Clean Implementation
   =================================================================== */

/* WooCommerce Notices Wrapper - Ensure it's always visible */
.woocommerce-notices-wrapper {
    width: 100%;
    margin-bottom: 2rem;
    clear: both;
}

.woocommerce-notices-wrapper:empty {
    display: none;
}

.woocommerce-notices-wrapper .woocommerce-error,
.woocommerce-notices-wrapper .woocommerce-info,
.woocommerce-notices-wrapper .woocommerce-message {
    padding: 1rem 1.5rem;
    margin: 0 0 1rem 0;
    border-radius: 8px;
    border-left: 4px solid;
    background: #fff;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

.woocommerce-notices-wrapper .woocommerce-error {
    border-left-color: #dc3545;
    color: #721c24;
    background-color: #f8d7da;
}

.woocommerce-notices-wrapper .woocommerce-info {
    border-left-color: #17a2b8;
    color: #0c5460;
    background-color: #d1ecf1;
}

.woocommerce-notices-wrapper .woocommerce-message {
    border-left-color: #28a745;
    color: #155724;
    background-color: #d4edda;
}

/* Main Product Grid Layout - Two Columns */
div.product .woocommerce-product-gallery {
    width: 55% !important; /* Larger gallery */
    float: left !important;
    margin-right: 5% !important;
}

div.product div.summary {
    width: 40% !important; /* Smaller summary */
    float: right !important;
}

/* Clear floats after product summary */
div.product .woocommerce-tabs {
    clear: both !important;
}

/* Ensure gallery resizes properly on smaller screens */
@media (max-width: 768px) {
    div.product .woocommerce-product-gallery,
    div.product div.summary {
        width: 100% !important;
        float: none !important;
        margin-right: 0 !important;
    }
}

/* Allow inline styles to work for product tabs */
.woocommerce-tabs .woocommerce-Tabs-panel {
    /* Removed forced alignment to allow inline styles */
}

.woocommerce-tabs .woocommerce-Tabs-panel p,
.woocommerce-tabs .woocommerce-Tabs-panel ul,
.woocommerce-tabs .woocommerce-Tabs-panel ol {
    /* Removed forced alignment to allow inline styles */
}

/* Product Page Layout */
.product-page {
    margin: 10px;
    margin-top: 10px;
    margin-bottom: 10px;
    margin-left: 10px;
    margin-right: 10px;
    padding: 10px;
}

.product-main-container {
    max-width: 1080px;
    margin: 5px auto;
    padding: 18rem 15% !important; /* Increased from 10% to 15% (5% more) */
}

/* Add external padding/margin for narrower screens */
@media (max-width: 1200px) {
    .product-main-container {
        margin: 5px 2rem;
    }
}

@media (max-width: 768px) {
    .product-main-container {
        margin: 5px 1rem;
        padding: 4rem 3rem !important; /* Increased from 2rem to 3rem (5% more) */
    }
}

@media (max-width: 480px) {
    .product-main-container {
        margin: 5px 0.5rem;
        padding: 3rem 1.5rem !important; /* Increased from 1rem to 1.5rem (5% more) */
    }
}

.product-main-wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3rem;
    align-items: start;
}

/* Product Gallery - Fixed Sizing */
.product-gallery {
    position: relative;
    max-width: 100%;
}

.product-gallery .woocommerce-product-gallery {
    background: #fff;
    border-radius: 12px;
    padding: 1.5rem;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08);
}

.product-gallery .woocommerce-product-gallery__wrapper {
    margin: 0;
    padding: 0;
    max-height: 500px;
    overflow: hidden;
    position: relative;
}

.product-gallery .woocommerce-product-gallery__image {
    margin-bottom: 1rem;
    border-radius: 8px;
    overflow: hidden;
    background: #f8f9fa;
    height: 450px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.product-gallery .woocommerce-product-gallery__image img {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
    display: block;
    border-radius: 8px;
    object-fit: contain;
}

/* FlexSlider Container Fix */
.product-gallery .flexslider {
    margin: 0;
    background: transparent;
    border: none;
}

.product-gallery .flex-viewport {
    max-height: 450px !important;
    overflow: hidden !important;
}

/* Gallery Thumbnails */
.product-gallery .flex-control-thumbs {
    display: flex;
    gap: 0.75rem;
    margin-top: 1rem;
    overflow-x: auto;
    padding: 0.5rem 0;
    list-style: none;
}

.product-gallery .flex-control-thumbs li {
    flex-shrink: 0;
    width: 80px;
    height: 80px;
    border-radius: 8px;
    overflow: hidden;
    cursor: pointer;
    border: 2px solid transparent;
    transition: all 0.3s ease;
}

.product-gallery .flex-control-thumbs li:hover {
    border-color: #c41e3a;
    transform: translateY(-2px);
}

.product-gallery .flex-control-thumbs li.flex-active {
    border-color: #2c1810;
}

.product-gallery .flex-control-thumbs li img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Product Info */
.product-info {
    padding: 3rem 15%; /* Increased from 10% to 15% (5% more) */
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08);
    margin: 2rem;
}

/* Override WooCommerce core styles with higher specificity */
.woocommerce div.product div.summary h1.product_title,
.woocommerce div.product .product_title,
.product-info .product_title {
    font-size: 1.5rem !important; /* Increased from 1.2rem to 1.5rem (one size larger) */
    color: #2c1810 !important;
    margin: 2rem 0 1.5rem 0 !important;
    line-height: 1.3 !important;
    padding-left: 0.5rem !important;
}

.product-info .price {
    font-size: 1.5rem;
    color: #c41e3a;
    font-weight: 700;
    margin: 1.5rem 0;
    padding-left: 0.5rem;
}

.product-info .woocommerce-product-details__short-description {
    color: #666;
    line-height: 1.6;
    margin: 1.5rem 0;
    padding-left: 0.5rem;
}

/* Add to Cart Button */
.product-info .cart .button {
    background: #2c1810;
    color: #fff;
    border: none;
    border-radius: 8px;
    padding: 12px 24px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: all 0.3s ease;
    width: 150px !important;
    min-width: 150px !important;
    max-width: 150px !important;
    font-size: 0.9rem;
    margin: 6rem 0 2rem 0 !important;
    display: block !important;
    flex: none !important;
    flex-grow: 0 !important;
    flex-shrink: 0 !important;
    clear: both !important;
    float: none !important;
}

/* Ensure button positioning on larger screens */
@media (min-width: 769px) {
    .product-info .cart .button {
        margin: 8rem 0 2rem 0 !important;
        display: block !important;
        clear: both !important;
        float: none !important;
    }
}

.product-info .cart .button:hover {
    background: #c41e3a;
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(196, 30, 58, 0.3);
}

/* Product Variations and Quantity Alignment */
.product-info table.variations {
    background-color: transparent !important;
    border: none;
    margin: 1.5rem 0;
    padding-left: 0.5rem;
}

.product-info table.variations td,
.product-info table.variations th {
    background: #fff !important;
    background-color: #fff !important;
    border: none;
    padding: 0 0 1rem 0;
}

/* Additional specific rules to ensure white background for variation table cells */
.woocommerce div.product form.cart table.variations td,
.woocommerce div.product form.cart table.variations th,
.woocommerce div.product .variations td,
.woocommerce div.product .variations th,
.woocommerce table.variations td,
.woocommerce table.variations th,
table.variations td,
table.variations th,
.variations td,
.variations th {
    background: #fff !important;
    background-color: #fff !important;
    background-image: none !important;
}

.product-info table.variations label {
    font-weight: 600;
    color: #2c1810;
    display: block;
    margin-bottom: 0.5rem;
    background: #fff !important;
    background-color: #fff !important;
    padding: 0.5rem 1rem;
    border-radius: 6px;
    border: 1px solid #e0e0e0;
    box-shadow: none;
}

/* Additional specific rules to ensure white background for variation labels */
.woocommerce div.product form.cart table.variations label,
.woocommerce div.product .variations label,
.woocommerce table.variations label,
table.variations label,
.variations label {
    background: #fff !important;
    background-color: #fff !important;
}

/* Override any gray backgrounds that might be applied */
.woocommerce div.product form.cart table.variations label[style*="background"],
.woocommerce div.product .variations label[style*="background"],
.woocommerce table.variations label[style*="background"],
table.variations label[style*="background"],
.variations label[style*="background"] {
    background: #fff !important;
    background-color: #fff !important;
}

/* Comprehensive fix for all variation label backgrounds */
.woocommerce div.product form.cart table.variations label,
.woocommerce div.product .variations label,
.woocommerce table.variations label,
table.variations label,
.variations label,
.product-info table.variations label,
.woocommerce div.product div.summary table.variations label,
.woocommerce div.product form.cart .variations label,
.woocommerce div.product .cart .variations label,
.woocommerce form.cart table.variations label,
.woocommerce .cart table.variations label,
.woocommerce div.product .variations td label,
.woocommerce div.product .variations th label,
.woocommerce table.variations td label,
.woocommerce table.variations th label,
table.variations td label,
table.variations th label,
.variations td label,
.variations th label {
    background: #fff !important;
    background-color: #fff !important;
    background-image: none !important;
    background-repeat: no-repeat !important;
    background-position: initial !important;
    background-size: initial !important;
}

/* Force override any inline styles */
.woocommerce div.product form.cart table.variations label[style*="background"],
.woocommerce div.product .variations label[style*="background"],
.woocommerce table.variations label[style*="background"],
table.variations label[style*="background"],
.variations label[style*="background"],
.product-info table.variations label[style*="background"],
.woocommerce div.product div.summary table.variations label[style*="background"] {
    background: #fff !important;
    background-color: #fff !important;
    background-image: none !important;
}

.product-info table.variations select {
    width: 100%;
    padding: 10px;
    border: 1px solid #ddd;
    border-radius: 6px;
}

.product-info .cart .quantity {
    margin: 1.5rem 0 2.5rem 0;
    padding-left: 0.5rem;
}

/* Quantity label - positioned to the left like a 2x2 grid */
.product-info .cart div.quantity::before,
.product-info .cart .quantity::before,
.woocommerce div.product div.summary .quantity::before,
.woocommerce div.product div.summary div.quantity::before {
    content: "Quantity";
    display: inline-block;
    font-weight: 600;
    color: #2c1810;
    margin-right: 1rem;
    vertical-align: middle;
    min-width: 80px;
}

/* Make quantity input display inline */
.product-info .cart .quantity,
.woocommerce div.product div.summary .quantity {
    display: inline-block;
    vertical-align: middle;
}

/* Product Details Section - Full Width */
.product-details-section {
    background: #f8f9fa;
    padding: 4rem 0;
    margin-top: 3rem;
}

.product-details-container {
    max-width: 100%;
    margin: 0 auto;
    padding: 0;
}

/* Product Tabs - Fixed Alignment */
.product-details-section .woocommerce-tabs {
    background: #fff;
    border-radius: 0;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08);
    overflow: hidden;
    margin-bottom: 3rem;
    width: 100%;
}

.product-details-section .wc-tabs {
    display: flex;
    justify-content: center;
    background: #f8f9fa;
    margin: 0;
    padding: 0;
    list-style: none;
    border-bottom: none;
}

.product-details-section .wc-tabs li {
    margin: 0;
    flex: 1;
    max-width: 200px;
}

.product-details-section .wc-tabs li a {
    display: block;
    padding: 1.5rem 1rem;
    text-align: center;
    color: #666;
    text-decoration: none;
    border-bottom: 3px solid transparent;
    transition: all 0.3s ease;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-size: 0.9rem;
}

.product-details-section .wc-tabs li.active a {
    color: #2c1810;
    border-bottom-color: #c41e3a;
    background: #fff;
}

.product-details-section .wc-tabs li a:hover {
    color: #c41e3a;
    background: rgba(255,255,255,0.5);
}

.product-details-section .wc-tab {
    padding: 2rem 20px;
    line-height: 1.7;
    min-height: 200px;
    display: block;
    width: 100%;
    box-sizing: border-box;
}

.product-details-section .wc-tab h2 {
    color: #2c1810;
    margin-bottom: 1.5rem;
    font-size: 1.5rem;
}

.product-details-section .wc-tab p {
    margin-bottom: 1.5rem;
    color: #555;
    font-size: 1rem;
    line-height: 1.6;
    max-width: none;
}

.product-details-section .wc-tab ul,
.product-details-section .wc-tab ol {
    display: block;
    max-width: 100%;
    margin: 0 0 1.5rem 0;
}

.product-details-section .wc-tab li {
    margin-bottom: 0.5rem;
    color: #555;
}

/* Related Products - Fixed Width */
.product-details-section .related.products,
.product-details-section .upsells.products {
    margin-top: 3rem;
    width: 100%;
    max-width: 100%;
}

.product-details-section .related h2,
.product-details-section .upsells h2 {
    text-align: center;
    font-size: 1.8rem;
    color: #2c1810;
    margin-bottom: 2rem;
}

.product-details-section .related ul.products,
.product-details-section .upsells ul.products {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 2rem !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
}

.product-details-section .related ul.products li.product,
.product-details-section .upsells ul.products li.product {
    background: #fff !important;
    border-radius: 12px !important;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08) !important;
    padding: 1.5rem !important;
    transition: all 0.3s ease !important;
    border: 1px solid #f0f0f0 !important;
    text-align: center !important;
    width: 100% !important;
    margin: 0 !important;
    float: none !important;
    display: block !important;
}

.product-details-section .related ul.products li.product:hover,
.product-details-section .upsells ul.products li.product:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 30px rgba(0,0,0,0.12);
}

.product-details-section .related ul.products li.product img,
.product-details-section .upsells ul.products li.product img {
    width: 100% !important;
    height: 250px !important;
    object-fit: cover !important;
    border-radius: 8px !important;
    margin-bottom: 1rem !important;
}

.product-details-section .related ul.products li.product h2,
.product-details-section .upsells ul.products li.product h2,
.product-details-section .related ul.products li.product .woocommerce-loop-product__title,
.product-details-section .upsells ul.products li.product .woocommerce-loop-product__title {
    font-size: 1rem !important;
    font-weight: 600 !important;
    color: #2c1810 !important;
    margin: 1rem 0 0.5rem 0 !important;
    line-height: 1.3 !important;
}

.product-details-section .related ul.products li.product .price,
.product-details-section .upsells ul.products li.product .price {
    color: #c41e3a !important;
    font-weight: 700 !important;
    font-size: 1.1rem !important;
}

/* Override any column classes that might be interfering */
.product-details-section .related ul.products.columns-1,
.product-details-section .related ul.products.columns-2,
.product-details-section .related ul.products.columns-3,
.product-details-section .related ul.products.columns-4,
.product-details-section .related ul.products.columns-5,
.product-details-section .related ul.products.columns-6,
.product-details-section .upsells ul.products.columns-1,
.product-details-section .upsells ul.products.columns-2,
.product-details-section .upsells ul.products.columns-3,
.product-details-section .upsells ul.products.columns-4,
.product-details-section .upsells ul.products.columns-5,
.product-details-section .upsells ul.products.columns-6 {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
}

/* Mobile Responsive */
@media (max-width: 768px) {
    .product-main-wrapper {
        grid-template-columns: 1fr;
        gap: 2rem;
    }
    
    .product-info .product_title {
        font-size: 1.3rem !important; /* Slightly smaller on mobile but still larger than original */
    }
    
    .product-details-section .wc-tabs {
        flex-direction: column;
    }
    
    .product-details-section .wc-tabs li {
        max-width: none;
    }
    
    .product-details-section .wc-tab {
        padding: 2rem 1rem;
    }
    
    .product-details-section .related ul.products,
    .product-details-section .upsells ul.products {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }
}

@media (max-width: 1024px) {
    .product-details-section .related ul.products,
    .product-details-section .upsells ul.products {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* ===================================================================
   Navigation Menu Styles - User Account & Cart
   =================================================================== */

.menu-item-icon {
    display: flex;
    align-items: center;
    margin-left: 1.5rem;
}

.menu-item-icon a {
    display: flex;
    align-items: center;
    color: #2c1810;
    font-size: 1.2rem;
    position: relative;
    transition: color 0.3s ease;
}

.menu-item-icon a:hover {
    color: #c41e3a;
}

.menu-item-icon .menu-text {
    font-size: 0.9rem;
    margin-left: 0.5rem;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.menu-item-cart .cart-contents-count {
    position: absolute;
    top: -8px;
    right: -12px;
    background-color: #c41e3a;
    color: #fff;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    font-size: 0.75rem;
    line-height: 20px;
    text-align: center;
    font-weight: 600;
}

/* Sub-menu for logged-in user */
.menu-item-account .sub-menu {
    display: none;
    position: absolute;
    top: 100%;
    right: 0;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 8px 25px rgba(0,0,0,0.15);
    padding: 0.5rem 0;
    min-width: 200px;
    z-index: 1000;
}

.menu-item-account:hover .sub-menu {
    display: block;
}

.menu-item-account .sub-menu li a {
    padding: 12px 20px;
    color: #333;
    background: transparent;
    transition: all 0.3s ease;
}

.menu-item-account .sub-menu li a:hover {
    background: #f8f9fa;
    color: #c41e3a;
}

/* ===================================================================
   WooCommerce Page Layout & Structure
   =================================================================== */

/* Main WooCommerce page wrapper */
.woocommerce-page {
    background: #f8f9fa;
    min-height: 70vh;
}

.woocommerce-page .site-main {
    padding: 2rem 0;
}

.woocommerce-page .container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0;
}

/* Page headers */
.woocommerce-page .page-header {
    text-align: center;
    margin-bottom: 3rem;
    padding: 2rem 0;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08);
}

.woocommerce-page .page-title {
    font-size: 2.5rem;
    color: #2c1810;
    margin: 0 0 0.5rem 0;
    font-weight: 700;
}

.woocommerce-page .page-subtitle {
    color: #666;
    font-size: 1.1rem;
    margin: 0;
}

/* Breadcrumbs */
.woocommerce-breadcrumb {
    background: #fff;
    padding: 3rem 2rem 1rem 2rem; /* Increased top padding from 1rem to 3rem to avoid header collision */
    border-radius: 8px;
    margin-bottom: 2rem;
    margin-top: 2rem; /* Added top margin for additional spacing */
    box-shadow: 0 2px 10px rgba(0,0,0,0.05);
    font-size: 0.9rem;
}

.woocommerce-breadcrumb a {
    color: #c41e3a;
    text-decoration: none;
}

.woocommerce-breadcrumb a:hover {
    text-decoration: underline;
}

/* ===================================================================
   My Account Page Styles
   =================================================================== */

.my-account-wrapper {
    padding: 2rem 0;
    background: #f8f9fa;
    min-height: 70vh;
}

.my-account-container {
    max-width: none;
    margin: 0;
    padding: 0 2rem 0 0;
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: 3rem;
    align-items: start;
}

.account-navigation-sidebar {
    background: #fff;
    border-radius: 12px;
    padding: 2rem;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08);
    height: fit-content;
}

/* My Account Navigation */
.woocommerce-MyAccount-navigation {
    margin: 0;
    padding: 0;
    list-style: none;
    display: block;
}

.woocommerce-MyAccount-navigation li {
    margin: 0;
    padding: 0;
    border-bottom: 1px solid #f0f0f0;
}

.woocommerce-MyAccount-navigation li:last-child {
    border-bottom: none;
}

.woocommerce-MyAccount-navigation a {
    display: block;
    padding: 1rem 0;
    color: #2c1810;
    text-decoration: none;
    font-weight: 500;
    transition: all 0.3s ease;
    border-left: 3px solid transparent;
}

.woocommerce-MyAccount-navigation a:hover,
.woocommerce-MyAccount-navigation .is-active a {
    color: #c41e3a;
    background: #f8f9fa;
    border-left-color: #c41e3a;
}

.woocommerce-MyAccount-navigation .is-active a {
    font-weight: 600;
}

/* My Account Content */
.woocommerce-MyAccount-content {
    background: #fff;
    border-radius: 12px;
    padding: 2rem;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08);
    margin-left: 0;
    margin-right: 0;
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
}

.woocommerce-MyAccount-content h3 {
    color: #2c1810;
    font-size: 1.5rem;
    margin-bottom: 1.5rem;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid #f0f0f0;
}

.woocommerce-MyAccount-content p {
    color: #666;
    line-height: 1.6;
    margin-bottom: 1rem;
}

/* Orders table */
.woocommerce-orders-table {
    width: 100%;
    border-collapse: collapse;
    margin: 1rem 0;
}

.woocommerce-orders-table th,
.woocommerce-orders-table td {
    padding: 1rem;
    text-align: left;
    border-bottom: 1px solid #f0f0f0;
}

.woocommerce-orders-table th {
    background: #f8f9fa;
    font-weight: 600;
    color: #2c1810;
}

.woocommerce-orders-table td {
    color: #666;
}

.woocommerce-orders-table .woocommerce-orders-table__row--status-completed {
    background: #f8fff8;
}

.woocommerce-orders-table .woocommerce-orders-table__row--status-processing {
    background: #fff8f0;
}

/* Addresses */
.woocommerce-Address {
    background: #f8f9fa;
    padding: 1.5rem;
    border-radius: 8px;
    margin-bottom: 1.5rem;
}

.woocommerce-Address h3 {
    margin: 0 0 1rem 0;
    color: #2c1810;
    font-size: 1.2rem;
}

.woocommerce-Address address {
    font-style: normal;
    color: #666;
    line-height: 1.6;
}

.woocommerce-Address .edit {
    display: inline-block;
    margin-top: 1rem;
    padding: 0.5rem 1rem;
    background: #2c1810;
    color: #fff;
    text-decoration: none;
    border-radius: 6px;
    font-size: 0.9rem;
    transition: all 0.3s ease;
}

.woocommerce-Address .edit:hover {
    background: #c41e3a;
    color: #fff;
}

.account-user-info {
    display: flex;
    align-items: center;
    margin-bottom: 2rem;
    padding-bottom: 2rem;
    border-bottom: 1px solid #f0f0f0;
}

.account-avatar {
    border-radius: 50%;
    margin-right: 1rem;
}

.user-details h3 {
    margin: 0 0 0.5rem 0;
    color: #2c1810;
    font-size: 1.2rem;
}

.user-details p {
    margin: 0;
    color: #666;
    font-size: 0.9rem;
}

.account-content {
    background: #fff;
    border-radius: 12px;
    padding: 2rem;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08);
}

.login-register-wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3rem;
    max-width: 800px;
    margin: 0 auto;
}

.login-form-container,
.register-form-container {
    background: #fff;
    border-radius: 12px;
    padding: 2rem;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08);
}

.login-form-container h2,
.register-form-container h2 {
    text-align: center;
    color: #2c1810;
    margin-bottom: 1.5rem;
}

/* Responsive styles for My Account page */
@media (max-width: 768px) {
    .my-account-container {
        padding: 0 1rem;
        grid-template-columns: 1fr;
        gap: 2rem;
    }
    
    .woocommerce-account .my-account-container {
        padding: 0 1rem;
        max-width: 100%;
    }
    
    .woocommerce-account .container,
    .woocommerce-account .woocommerce-page .container {
        padding: 0 1rem !important;
        max-width: 100% !important;
    }
    
    .login-register-wrapper {
        grid-template-columns: 1fr;
        gap: 2rem;
    }
    
    .account-user-info {
        flex-direction: column;
        text-align: center;
    }
    
    .account-avatar {
        margin-right: 0;
        margin-bottom: 1rem;
    }
    
    .woocommerce-MyAccount-content {
        padding: 1rem;
        overflow-x: hidden;
    }
}

/* Specific My Account page alignment fixes */
.woocommerce-account .my-account-container {
    padding: 0 2rem;
    margin: 0 auto;
    max-width: 1400px;
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: 3rem;
    align-items: start;
    width: 100%;
    box-sizing: border-box;
}

/* Override container centering for My Account page */
.woocommerce-account .container,
.woocommerce-account .woocommerce-page .container {
    max-width: 1400px !important;
    margin: 0 auto !important;
    padding: 0 2rem !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.woocommerce-account .woocommerce-MyAccount-content {
    margin-left: 0;
    margin-right: 0;
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
    box-sizing: border-box;
}

/* ===================================================================
   Cart Page Styles
   =================================================================== */

.cart-page-wrapper {
    padding: 2rem 0;
    background: #f8f9fa;
    min-height: 70vh;
}

.cart-page-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 1rem;
}

.cart-header {
    text-align: center;
    margin-bottom: 3rem;
}

.cart-header .page-title {
    font-size: 2.5rem;
    color: #2c1810;
    margin-bottom: 0.5rem;
}

.cart-subtitle {
    color: #666;
    font-size: 1.1rem;
}

.cart-table-wrapper {
    background: #fff;
    border-radius: 12px;
    padding: 2rem;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08);
    overflow-x: auto;
}

/* Cart table styling */
.woocommerce-cart-table {
    width: 100%;
    border-collapse: collapse;
}

.woocommerce-cart-table th {
    background: #f8f9fa;
    padding: 1rem;
    text-align: left;
    font-weight: 600;
    color: #2c1810;
    border-bottom: 2px solid #e0e0e0;
}

.woocommerce-cart-table td {
    padding: 1rem;
    border-bottom: 1px solid #f0f0f0;
    vertical-align: top;
}

.woocommerce-cart-table .product-thumbnail img {
    width: 80px;
    height: 80px;
    object-fit: cover;
    border-radius: 8px;
}

.woocommerce-cart-table .product-name {
    font-weight: 500;
    color: #2c1810;
}

.woocommerce-cart-table .product-name a {
    color: #2c1810;
    text-decoration: none;
}

.woocommerce-cart-table .product-name a:hover {
    color: #c41e3a;
}

.woocommerce-cart-table .product-price {
    font-weight: 600;
    color: #2c1810;
}

.woocommerce-cart-table .product-quantity {
    width: 120px;
}

.woocommerce-cart-table .quantity {
    display: flex;
    align-items: center;
    border: 1px solid #e0e0e0;
    border-radius: 6px;
    overflow: hidden;
}

.woocommerce-cart-table .quantity input {
    border: none;
    padding: 0.5rem;
    text-align: center;
    width: 60px;
    font-size: 1rem;
}

.woocommerce-cart-table .quantity button {
    border: none;
    background: #f8f9fa;
    padding: 0.5rem 0.75rem;
    cursor: pointer;
    font-size: 1.2rem;
    color: #666;
    transition: all 0.3s ease;
}

.woocommerce-cart-table .quantity button:hover {
    background: #e0e0e0;
    color: #2c1810;
}

.woocommerce-cart-table .product-subtotal {
    font-weight: 600;
    color: #2c1810;
}

.woocommerce-cart-table .product-remove a {
    color: #dc3545;
    text-decoration: none;
    font-size: 1.2rem;
    font-weight: bold;
    transition: all 0.3s ease;
}

.woocommerce-cart-table .product-remove a:hover {
    color: #c41e3a;
}

/* Cart actions */
.cart-actions {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 2rem;
    padding-top: 2rem;
    border-top: 1px solid #f0f0f0;
}

.coupon {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.coupon input {
    padding: 0.75rem 1rem;
    border: 1px solid #e0e0e0;
    border-radius: 6px;
    font-size: 1rem;
}

.coupon button {
    padding: 0.75rem 1.5rem;
    background: #2c1810;
    color: #fff;
    border: none;
    border-radius: 6px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.3s ease;
}

.coupon button:hover {
    background: #c41e3a;
}

/* Cart totals */
.cart-collaterals {
    margin-top: 3rem;
}

.cart_totals {
    background: #fff;
    border-radius: 12px;
    padding: 2rem;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08);
    max-width: 400px;
    margin-left: auto;
}

.cart_totals h2 {
    color: #2c1810;
    font-size: 1.5rem;
    margin-bottom: 1.5rem;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid #f0f0f0;
}

.shop_table {
    width: 100%;
    border-collapse: collapse;
}

.shop_table th,
.shop_table td {
    padding: 0.75rem 0;
    text-align: left;
    border-bottom: 1px solid #f0f0f0;
}

.shop_table th {
    font-weight: 500;
    color: #666;
}

.shop_table td {
    font-weight: 600;
    color: #2c1810;
    text-align: right;
}

.shop_table .order-total th,
.shop_table .order-total td {
    font-size: 1.2rem;
    font-weight: 700;
    color: #2c1810;
    border-top: 2px solid #e0e0e0;
    border-bottom: none;
}

.wc-proceed-to-checkout {
    margin-top: 1.5rem;
}

.wc-proceed-to-checkout .checkout-button {
    display: block;
    width: 100%;
    padding: 1rem 2rem;
    background: #d4af37;
    color: #2c1810;
    text-decoration: none;
    text-align: center;
    border-radius: 8px;
    font-weight: 600;
    font-size: 1.1rem;
    transition: all 0.3s ease;
}

.wc-proceed-to-checkout .checkout-button:hover {
    background: #b8941f;
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(184, 148, 31, 0.3);
}

.woocommerce-cart-table__table {
    width: 100%;
    border-collapse: collapse;
}

.woocommerce-cart-table__table th,
.woocommerce-cart-table__table td {
    padding: 1rem;
    text-align: left;
    border-bottom: 1px solid #f0f0f0;
}

.woocommerce-cart-table__table th {
    background: #f8f9fa;
    font-weight: 600;
    color: #2c1810;
}

.product-thumbnail img {
    width: 80px;
    height: 80px;
    object-fit: cover;
    border-radius: 8px;
}

.product-details {
    min-width: 200px;
}

.product-remove a {
    color: #dc3545;
    font-size: 1.5rem;
    text-decoration: none;
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #fff;
    border: 1px solid #dc3545;
    transition: all 0.3s ease;
}

.product-remove a:hover {
    background: #dc3545;
    color: #fff;
}

.cart-actions {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    padding-top: 1rem;
}

.coupon {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.cart-collaterals {
    background: #fff;
    border-radius: 12px;
    padding: 2rem;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08);
}

/* ===================================================================
   Checkout Page Styles
   =================================================================== */

.checkout-page-wrapper {
    padding: 2rem 0;
    background: #f8f9fa;
    min-height: 70vh;
}

.checkout-page-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 1rem;
}

.checkout-header {
    text-align: center;
    margin-bottom: 3rem;
}

.checkout-header .page-title {
    font-size: 2.5rem;
    color: #2c1810;
    margin-bottom: 0.5rem;
}

.checkout-subtitle {
    color: #666;
    font-size: 1.1rem;
}

.checkout-form-wrapper {
    display: grid;
    grid-template-columns: 1fr 400px;
    gap: 3rem;
}

.checkout-billing-shipping {
    background: #fff;
    border-radius: 12px;
    padding: 2rem;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08);
}

.checkout-customer-details {
    display: grid;
    gap: 2rem;
}

.checkout-billing h3,
.checkout-shipping h3 {
    color: #2c1810;
    margin-bottom: 1.5rem;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid #c41e3a;
}

.checkout-order-review {
    background: #fff;
    border-radius: 12px;
    padding: 2rem;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08);
    height: fit-content;
}

.checkout-order-review h3 {
    color: #2c1810;
    margin-bottom: 1.5rem;
    text-align: center;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid #c41e3a;
}

/* Checkout form styling */
.woocommerce-checkout {
    background: #fff;
    border-radius: 12px;
    padding: 2rem;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08);
}

.woocommerce-checkout h3 {
    color: #2c1810;
    font-size: 1.5rem;
    margin-bottom: 1.5rem;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid #f0f0f0;
}

.woocommerce-checkout .form-row {
    margin-bottom: 1.5rem;
}

.woocommerce-checkout label {
    display: block;
    margin-bottom: 0.5rem;
    font-weight: 500;
    color: #2c1810;
}

.woocommerce-checkout input[type="text"],
.woocommerce-checkout input[type="email"],
.woocommerce-checkout input[type="tel"],
.woocommerce-checkout input[type="password"],
.woocommerce-checkout select,
.woocommerce-checkout textarea {
    width: 100%;
    padding: 0.75rem 1rem;
    border: 1px solid #e0e0e0;
    border-radius: 6px;
    font-size: 1rem;
    transition: all 0.3s ease;
}

.woocommerce-checkout input[type="text"]:focus,
.woocommerce-checkout input[type="email"]:focus,
.woocommerce-checkout input[type="tel"]:focus,
.woocommerce-checkout input[type="password"]:focus,
.woocommerce-checkout select:focus,
.woocommerce-checkout textarea:focus {
    outline: none;
    border-color: #c41e3a;
    box-shadow: 0 0 0 3px rgba(196, 30, 58, 0.1);
}

.woocommerce-checkout .form-row-first {
    float: left;
    width: 48%;
    margin-right: 2%;
}

.woocommerce-checkout .form-row-last {
    float: right;
    width: 48%;
    margin-left: 2%;
}

.woocommerce-checkout .form-row-wide {
    clear: both;
    width: 100%;
}

/* Order review */
.woocommerce-checkout-review-order {
    background: #fff;
    border-radius: 12px;
    padding: 2rem;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08);
    height: fit-content;
}

.woocommerce-checkout-review-order h3 {
    color: #2c1810;
    font-size: 1.5rem;
    margin-bottom: 1.5rem;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid #f0f0f0;
}

.woocommerce-checkout-review-order-table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 1.5rem;
}

.woocommerce-checkout-review-order-table th,
.woocommerce-checkout-review-order-table td {
    padding: 0.75rem 0;
    text-align: left;
    border-bottom: 1px solid #f0f0f0;
}

.woocommerce-checkout-review-order-table th {
    font-weight: 500;
    color: #666;
}

.woocommerce-checkout-review-order-table td {
    font-weight: 600;
    color: #2c1810;
    text-align: right;
}

.woocommerce-checkout-review-order-table .order-total th,
.woocommerce-checkout-review-order-table .order-total td {
    font-size: 1.2rem;
    font-weight: 700;
    color: #2c1810;
    border-top: 2px solid #e0e0e0;
    border-bottom: none;
}

/* Payment methods */
.woocommerce-checkout #payment {
    background: #f8f9fa;
    border-radius: 8px;
    margin-top: 1.5rem;
}

.woocommerce-checkout #payment ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.woocommerce-checkout #payment li {
    padding: 1rem;
    border-bottom: 1px solid #e0e0e0;
}

.woocommerce-checkout #payment li:last-child {
    border-bottom: none;
}

.woocommerce-checkout #payment label {
    margin: 0;
    font-weight: 500;
    color: #2c1810;
}

.woocommerce-checkout #payment .payment_box {
    background: #fff;
    padding: 1rem;
    margin-top: 0.5rem;
    border-radius: 6px;
    border-left: 3px solid #c41e3a;
}

.woocommerce-checkout #payment .payment_box p {
    margin: 0;
    color: #666;
    font-size: 0.9rem;
}

.woocommerce-checkout #place_order {
    display: block;
    width: 100%;
    padding: 1rem 2rem;
    background: #d4af37;
    color: #2c1810;
    text-decoration: none;
    text-align: center;
    border-radius: 8px;
    font-weight: 600;
    font-size: 1.1rem;
    border: none;
    cursor: pointer;
    transition: all 0.3s ease;
}

.woocommerce-checkout #place_order:hover {
    background: #b8941f;
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(184, 148, 31, 0.3);
}

/* ===================================================================
   Shop/Archive Page Styles
   =================================================================== */

.shop-page-wrapper {
    padding: 2rem 0;
    background: #f8f9fa;
    min-height: 70vh;
}

.shop-page-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 1rem;
}

.shop-header {
    text-align: center;
    margin-bottom: 3rem;
}

.shop-header .page-title {
    font-size: 2.5rem;
    color: #2c1810;
    margin-bottom: 0.5rem;
}

.shop-subtitle {
    color: #666;
    font-size: 1.1rem;
}

/* Shop controls */
.shop-controls {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 2rem;
    padding: 1rem 0;
    border-bottom: 1px solid #e0e0e0;
}

.woocommerce-ordering {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.woocommerce-ordering select {
    padding: 0.5rem 1rem;
    border: 1px solid #e0e0e0;
    border-radius: 6px;
    font-size: 1rem;
    background: #fff;
}

.woocommerce-result-count {
    color: #666;
    font-size: 0.9rem;
}

/* Products grid */
.products-grid {
    background: #fff;
    border-radius: 12px;
    padding: 2rem;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08);
}

/* Remove duplicate grid definition */

.products-grid .product {
    background: #fff;
    border-radius: 12px;
    padding: 1.5rem;
    box-shadow: 0 4px 15px rgba(0,0,0,0.08);
    transition: all 0.3s ease;
    text-align: center;
}

.products-grid .product:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(0,0,0,0.15);
}

.products-grid .product img {
    width: 100%;
    height: 250px;
    object-fit: cover;
    border-radius: 8px;
    margin-bottom: 1rem;
}

.products-grid .product h2 {
    font-size: 1.2rem;
    color: #2c1810;
    margin: 0 0 0.5rem 0;
}

.products-grid .product h2 a {
    color: #2c1810;
    text-decoration: none;
}

.products-grid .product h2 a:hover {
    color: #c41e3a;
}

.products-grid .product .price {
    font-size: 1.1rem;
    font-weight: 600;
    color: #2c1810;
    margin-bottom: 1rem;
}

.products-grid .product .price del {
    color: #999;
    margin-right: 0.5rem;
}

.products-grid .product .price ins {
    text-decoration: none;
    color: #c41e3a;
}

.products-grid .product .button {
    display: inline-block;
    padding: 0.75rem 1.5rem;
    background: #2c1810;
    color: #fff;
    text-decoration: none;
    border-radius: 6px;
    font-weight: 500;
    transition: all 0.3s ease;
}

.products-grid .product .button:hover {
    background: #c41e3a;
    transform: translateY(-2px);
}

/* Pagination */
.woocommerce-pagination {
    margin-top: 3rem;
    text-align: center;
}

.woocommerce-pagination ul {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.5rem;
    list-style: none;
    margin: 0;
    padding: 0;
}

.woocommerce-pagination li {
    margin: 0;
}

.woocommerce-pagination a,
.woocommerce-pagination span {
    display: block;
    padding: 0.75rem 1rem;
    border: 1px solid #e0e0e0;
    border-radius: 6px;
    text-decoration: none;
    color: #2c1810;
    transition: all 0.3s ease;
}

.woocommerce-pagination a:hover,
.woocommerce-pagination .current {
    background: #c41e3a;
    color: #fff;
    border-color: #c41e3a;
}

.shop-content {
    display: grid;
    grid-template-columns: 250px 1fr;
    gap: 3rem;
}

.shop-filters-sidebar {
    background: #fff;
    border-radius: 12px;
    padding: 1.5rem;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08);
    height: fit-content;
}

.filters-header h3 {
    color: #2c1810;
    margin-bottom: 1rem;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid #c41e3a;
}

.shop-products-area {
    background: #fff;
    border-radius: 12px;
    padding: 2rem;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08);
}

.shop-controls {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 2rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid #f0f0f0;
}

/* Remove duplicate grid definition */

.products-grid .products li.product {
    background: #f8f9fa;
    border-radius: 12px;
    padding: 1.5rem;
    transition: all 0.3s ease;
    border: 1px solid #f0f0f0;
    text-align: center;
}

.products-grid .products li.product:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 30px rgba(0,0,0,0.12);
    background: #fff;
}

.products-grid .products li.product img {
    width: 100%;
    height: 250px;
    object-fit: cover;
    border-radius: 8px;
    margin-bottom: 1rem;
}

.products-grid .products li.product h2 {
    font-size: 1rem;
    font-weight: 600;
    color: #2c1810;
    margin: 1rem 0 0.5rem 0;
    line-height: 1.3;
}

.products-grid .products li.product .price {
    color: #c41e3a;
    font-weight: 700;
    font-size: 1.1rem;
}

.no-products-found {
    text-align: center;
    padding: 4rem 2rem;
}

.no-products-found h2 {
    color: #2c1810;
    margin-bottom: 1rem;
}

.no-products-found p {
    color: #666;
    margin-bottom: 2rem;
}

.return-to-shop {
    background: #2c1810;
    color: #fff;
    padding: 12px 24px;
    border-radius: 8px;
    text-decoration: none;
    transition: all 0.3s ease;
}

.return-to-shop:hover {
    background: #c41e3a;
    transform: translateY(-2px);
}

/* ===================================================================
   Form Styles
   =================================================================== */

.woocommerce-form-row {
    margin-bottom: 1.5rem;
}

.woocommerce-form-row label {
    display: block;
    margin-bottom: 0.5rem;
    font-weight: 600;
    color: #2c1810;
}

.woocommerce-form-row input[type="text"],
.woocommerce-form-row input[type="email"],
.woocommerce-form-row input[type="password"],
.woocommerce-form-row input[type="tel"],
.woocommerce-form-row select,
.woocommerce-form-row textarea {
    width: 100%;
    padding: 12px;
    border: 1px solid #ddd;
    border-radius: 6px;
    font-size: 1rem;
    transition: border-color 0.3s ease;
}

.woocommerce-form-row input:focus,
.woocommerce-form-row select:focus,
.woocommerce-form-row textarea:focus {
    outline: none;
    border-color: #c41e3a;
    box-shadow: 0 0 0 2px rgba(196, 30, 58, 0.1);
}

/* ===================================================================
   Button Styles
   =================================================================== */

.woocommerce .button,
.woocommerce button.button,
.woocommerce input.button,
.button {
    background: #2c1810;
    color: #fff;
    border: none;
    border-radius: 8px;
    padding: 12px 24px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: all 0.3s ease;
    cursor: pointer;
    text-decoration: none;
    display: inline-block;
    font-size: 0.9rem;
}

.woocommerce .button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.button:hover {
    background: #c41e3a;
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(196, 30, 58, 0.3);
    color: #fff;
}

.woocommerce .button.alt {
    background: #d4af37;
    color: #2c1810;
}

.woocommerce .button.alt:hover {
    background: #b8941f;
    color: #2c1810;
}

/* ===================================================================
   Forms and General WooCommerce Elements
   =================================================================== */

/* Form styling */
.woocommerce form {
    margin: 0;
}

.woocommerce form .form-row {
    margin-bottom: 1.5rem;
}

.woocommerce form label {
    display: block;
    margin-bottom: 0.5rem;
    font-weight: 500;
    color: #2c1810;
}

.woocommerce form input[type="text"],
.woocommerce form input[type="email"],
.woocommerce form input[type="tel"],
.woocommerce form input[type="password"],
.woocommerce form input[type="number"],
.woocommerce form input[type="url"],
.woocommerce form select,
.woocommerce form textarea {
    width: 100%;
    padding: 0.75rem 1rem;
    border: 1px solid #e0e0e0;
    border-radius: 6px;
    font-size: 1rem;
    transition: all 0.3s ease;
    background: #fff;
}

.woocommerce form input[type="text"]:focus,
.woocommerce form input[type="email"]:focus,
.woocommerce form input[type="tel"]:focus,
.woocommerce form input[type="password"]:focus,
.woocommerce form input[type="number"]:focus,
.woocommerce form input[type="url"]:focus,
.woocommerce form select:focus,
.woocommerce form textarea:focus {
    outline: none;
    border-color: #c41e3a;
    box-shadow: 0 0 0 3px rgba(196, 30, 58, 0.1);
}

.woocommerce form .form-row-first {
    float: left;
    width: 48%;
    margin-right: 2%;
}

.woocommerce form .form-row-last {
    float: right;
    width: 48%;
    margin-left: 2%;
}

.woocommerce form .form-row-wide {
    clear: both;
    width: 100%;
}

/* Buttons */
.woocommerce .button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce a.button {
    display: inline-block;
    padding: 0.75rem 1.5rem;
    background: #2c1810;
    color: #fff;
    text-decoration: none;
    border: none;
    border-radius: 6px;
    font-weight: 500;
    font-size: 1rem;
    cursor: pointer;
    transition: all 0.3s ease;
    text-align: center;
}

.woocommerce .button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce a.button:hover {
    background: #c41e3a;
    color: #fff;
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(196, 30, 58, 0.3);
}

.woocommerce .button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce a.button.alt {
    background: #d4af37;
    color: #2c1810;
}

.woocommerce .button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover,
.woocommerce a.button.alt:hover {
    background: #b8941f;
    color: #2c1810;
}

/* Messages */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
    padding: 1rem 1.5rem;
    margin: 1rem 0;
    border-radius: 8px;
    border-left: 4px solid;
}

.woocommerce-message {
    background: #d4edda;
    border-left-color: #28a745;
    color: #155724;
}

.woocommerce-info {
    background: #d1ecf1;
    border-left-color: #17a2b8;
    color: #0c5460;
}

.woocommerce-error {
    background: #f8d7da;
    border-left-color: #dc3545;
    color: #721c24;
}

/* Tables */
.woocommerce table {
    width: 100%;
    border-collapse: collapse;
    margin: 1rem 0;
}

.woocommerce table th,
.woocommerce table td {
    padding: 1rem;
    text-align: left;
    border-bottom: 1px solid #f0f0f0;
}

.woocommerce table th {
    background: #f8f9fa;
    font-weight: 600;
    color: #2c1810;
}

.woocommerce table td {
    color: #666;
}

/* ===================================================================
   Mobile Responsive Design
   =================================================================== */

@media (max-width: 768px) {
    /* Navigation */
    .menu-item.user-account-menu > a,
    .menu-item.user-login-menu > a {
        margin-left: 0;
        margin-top: 0.5rem;
        display: block;
        text-align: center;
    }
    
    /* My Account */
    .my-account-container {
        grid-template-columns: 1fr;
        gap: 2rem;
    }
    
    .login-register-wrapper {
        grid-template-columns: 1fr;
        gap: 2rem;
    }
    
    .account-user-info {
        flex-direction: column;
        text-align: center;
    }
    
    .account-avatar {
        margin-right: 0;
        margin-bottom: 1rem;
    }
    
    /* Cart */
    .cart-actions {
        flex-direction: column;
        align-items: stretch;
    }
    
    .coupon {
        justify-content: center;
        margin-bottom: 1rem;
    }
    
    /* Checkout */
    .checkout-form-wrapper {
        grid-template-columns: 1fr;
        gap: 2rem;
    }
    
    /* Shop */
    .shop-content {
        grid-template-columns: 1fr;
        gap: 2rem;
    }
    
    .products-grid .products {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }
    
    .shop-controls {
        flex-direction: column;
        align-items: stretch;
        gap: 1rem;
    }
}

@media (max-width: 1024px) {
    .products-grid .products {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .checkout-form-wrapper {
        grid-template-columns: 1fr;
        gap: 2rem;
    }
}

/* ===================================================================
   Additional WooCommerce Page Styling
   =================================================================== */

/* Ensure WooCommerce pages don't look like blog posts */
.woocommerce-page .entry-content,
.woocommerce-page .entry-header,
/* COMMENTED OUT - These rules were hiding WooCommerce content
.woocommerce-page .entry-meta,
.woocommerce-page .entry-footer {
    display: none !important;
}
*/

.woocommerce-page .site-main {
    padding: 0 !important;
}

.woocommerce-page .container {
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding: 0 !important;
}

/* Override container padding specifically for product grids */
.woocommerce-page ul.products {
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* Exception for My Account page - remove centering */
.woocommerce-account .woocommerce-page .container {
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Override any blog-like styling */
.woocommerce-page .post,
.woocommerce-page .page {
    background: none !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* COMMENTED OUT - This was hiding page titles
.woocommerce-page .post-title,
.woocommerce-page .page-title {
    display: none !important;
}
*/

/* Ensure proper spacing and width */
.woocommerce-page .woocommerce {
    margin: 0 auto !important;
    padding: 0 !important;
    max-width: 100% !important;
}

/* Make content area full width */
.woocommerce-page .content-area {
    width: 100% !important;
    float: none !important;
    max-width: 100% !important;
}

/* Adjust entry-content padding */
.woocommerce-page .entry-content {
    padding: 0 !important;
    margin: 0 !important;
    max-width: 100% !important;
}

/* Hide sidebar on WooCommerce pages */
.woocommerce-page .sidebar,
.woocommerce-page #secondary {
    display: none !important;
}

/* Add your custom WooCommerce styles here */

.vintage-chicago-thumbnails-wrapper {
    overflow-x: auto;
    white-space: nowrap;
    margin-top: 1em;
}

.vintage-chicago-thumbnails {
    display: inline-block;
}

.vintage-chicago-thumbnail {
    display: inline-block;
    width: 100px;
    height: 100px;
    margin-right: 10px;
    cursor: pointer;
    border: 2px solid transparent;
}

.vintage-chicago-thumbnail.highlighted {
    border-color: #000;
}

/* Product tabs - full width, related products centered */
.woocommerce div.product div.woocommerce-tabs {
    max-width: 100%;
    margin: 0 auto;
    display: block;
    width: 100%;
}

.woocommerce div.product .related.products,
.woocommerce div.product section.related.products {
    text-align: center !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    display: block !important;
    width: 100% !important;
}

.woocommerce div.product div.woocommerce-tabs ul.tabs {
    justify-content: center !important;
    display: flex !important;
    margin: 0 auto !important;
    max-width: 600px !important;
}

.woocommerce div.product div.woocommerce-tabs ul.tabs li {
    text-align: center !important;
}

/* Prevent tab links from scrolling to top */
.woocommerce div.product div.woocommerce-tabs ul.tabs li a {
    scroll-behavior: auto !important;
    pointer-events: auto !important;
}

/* Center the related products heading */
.woocommerce div.product .related.products h2,
.woocommerce div.product section.related.products h2 {
    text-align: center !important;
    max-width: 600px !important;
    margin: 0 auto 2rem auto !important;
    display: block !important;
    width: 100% !important;
}

/* Tabs content - full width with side margins */
.woocommerce div.product div.woocommerce-tabs .woocommerce-Tabs-panel {
    max-width: 100%;
    margin: 0;
    padding: 2rem 20px;
}

.woocommerce div.product div.woocommerce-tabs .woocommerce-Tabs-panel p,
.woocommerce div.product div.woocommerce-tabs .woocommerce-Tabs-panel ul,
.woocommerce div.product div.woocommerce-tabs .woocommerce-Tabs-panel ol {
    max-width: 100%;
}

/* Center the related products grid - ONLY for related products, not main shop grid */
.woocommerce div.product .related.products ul.products,
.woocommerce div.product section.related.products ul.products {
    max-width: 1000px !important;
    margin: 0 auto !important;
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 2rem !important;
    list-style: none !important;
    padding: 0 !important;
}

/* Add padding to the bottom of related products container */
.woocommerce div.product .related.products,
.woocommerce div.product section.related.products {
    padding-bottom: 3rem !important;
}

.woocommerce div.product .related.products ul.products li.product {
    flex: 0 0 calc(33.333% - 1.33rem) !important;
    max-width: calc(33.333% - 1.33rem) !important;
    margin: 0 !important;
    float: none !important;
    display: block !important;
    text-align: center !important;
}

/* ===================================================================
   FINAL OVERRIDES - Ensure these styles take precedence over WooCommerce core
   =================================================================== */

/* ===================================================================
   CLEANED UP PRODUCT GRID STYLES - Fixed 3-column layout
   =================================================================== */

/* DISABLED - Using flexbox from nuclear-fix instead
.woocommerce ul.products,
.woocommerce-page ul.products {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 2rem !important;
    justify-content: start !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    width: 100% !important;
    box-sizing: border-box !important;
} */

/* Remove duplicate - already defined above */

/* Remove duplicate - already defined above */

/* Ensure individual product items work properly in grid */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    position: relative !important;
}

/* Responsive grid adjustments */
@media (max-width: 1024px) {
    .woocommerce ul.products:not(.related.products ul.products):not(.upsells.products ul.products),
    .woocommerce-page ul.products:not(.related.products ul.products):not(.upsells.products ul.products),
    .woocommerce .products:not(.related.products):not(.upsells.products),
    .woocommerce-page .woocommerce ul.products,
    .woocommerce-page .products,
    .shop-page-container .products,
    .category-page-container .products,
    .woocommerce ul.products,
    .woocommerce-page ul.products {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

@media (max-width: 768px) {
    .woocommerce ul.products:not(.related.products ul.products):not(.upsells.products ul.products),
    .woocommerce-page ul.products:not(.related.products ul.products):not(.upsells.products ul.products),
    .woocommerce .products:not(.related.products):not(.upsells.products),
    .woocommerce-page .woocommerce ul.products,
    .woocommerce-page .products,
    .shop-page-container .products,
    .category-page-container .products,
    .woocommerce ul.products,
    .woocommerce-page ul.products {
        grid-template-columns: 1fr !important;
        gap: 1.5rem !important;
    }
}

/* Ensure proper spacing and width */
.woocommerce-page .woocommerce {
    margin: 0 auto !important;
    padding: 0 !important;
    max-width: 100% !important;
}

/* Make content area full width */
.woocommerce-page .content-area {
    width: 100% !important;
    float: none !important;
    max-width: 100% !important;
}

/* Adjust entry-content padding */
.woocommerce-page .entry-content {
    padding: 0 !important;
    margin: 0 !important;
    max-width: 100% !important;
}

/* Hide sidebar on WooCommerce pages */
.woocommerce-page .sidebar,
.woocommerce-page #secondary {
    display: none !important;
}

/* Add your custom WooCommerce styles here */

.vintage-chicago-thumbnails-wrapper {
    overflow-x: auto;
    white-space: nowrap;
    margin-top: 1em;
}

.vintage-chicago-thumbnails {
    display: inline-block;
}

.vintage-chicago-thumbnail {
    display: inline-block;
    width: 100px;
    height: 100px;
    margin-right: 10px;
    cursor: pointer;
    border: 2px solid transparent;
}

.vintage-chicago-thumbnail.highlighted {
    border-color: #000;
}

/* Product tabs - full width, related products centered */
.woocommerce div.product div.woocommerce-tabs {
    max-width: 100%;
    margin: 0 auto;
    display: block;
    width: 100%;
}

.woocommerce div.product .related.products,
.woocommerce div.product section.related.products {
    text-align: center !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    display: block !important;
    width: 100% !important;
}

.woocommerce div.product div.woocommerce-tabs ul.tabs {
    justify-content: center !important;
    display: flex !important;
    margin: 0 auto !important;
    max-width: 600px !important;
}

.woocommerce div.product div.woocommerce-tabs ul.tabs li {
    text-align: center !important;
}

/* Prevent tab links from scrolling to top */
.woocommerce div.product div.woocommerce-tabs ul.tabs li a {
    scroll-behavior: auto !important;
    pointer-events: auto !important;
}

/* Center the related products heading */
.woocommerce div.product .related.products h2,
.woocommerce div.product section.related.products h2 {
    text-align: center !important;
    max-width: 600px !important;
    margin: 0 auto 2rem auto !important;
    display: block !important;
    width: 100% !important;
}

/* Tabs content - full width with side margins */
.woocommerce div.product div.woocommerce-tabs .woocommerce-Tabs-panel {
    max-width: 100%;
    margin: 0;
    padding: 2rem 20px;
}

.woocommerce div.product div.woocommerce-tabs .woocommerce-Tabs-panel p,
.woocommerce div.product div.woocommerce-tabs .woocommerce-Tabs-panel ul,
.woocommerce div.product div.woocommerce-tabs .woocommerce-Tabs-panel ol {
    max-width: 100%;
}

/* Center the related products grid - ONLY for related products, not main shop grid */
.woocommerce div.product .related.products ul.products,
.woocommerce div.product section.related.products ul.products {
    max-width: 1000px !important;
    margin: 0 auto !important;
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 2rem !important;
    list-style: none !important;
    padding: 0 !important;
}

/* Add padding to the bottom of related products container */
.woocommerce div.product .related.products,
.woocommerce div.product section.related.products {
    padding-bottom: 3rem !important;
}

.woocommerce div.product .related.products ul.products li.product {
    flex: 0 0 calc(33.333% - 1.33rem) !important;
    max-width: calc(33.333% - 1.33rem) !important;
    margin: 0 !important;
    float: none !important;
    display: block !important;
    text-align: center !important;
}

/* Product meta information styling - SKU and Categories */
.woocommerce div.product .product_meta,
.product-info .product_meta {
    margin: 1.5rem 0;
    padding: 1rem 0;
    border-top: 1px solid #f0f0f0;
    border-bottom: 1px solid #f0f0f0;
}

.woocommerce div.product .product_meta span,
.product-info .product_meta span {
    display: block;
    margin-bottom: 0.75rem;
    font-size: 0.9rem;
    line-height: 1.4;
}

.woocommerce div.product .product_meta span:last-child,
.product-info .product_meta span:last-child {
    margin-bottom: 0;
}

.woocommerce div.product .product_meta .sku_wrapper,
.product-info .product_meta .sku_wrapper {
    color: #666;
    font-weight: 500;
}

.woocommerce div.product .product_meta .sku_wrapper .sku,
.product-info .product_meta .sku_wrapper .sku {
    font-weight: 600;
    color: #2c1810;
}

.woocommerce div.product .product_meta .posted_in,
.product-info .product_meta .posted_in {
    color: #666;
    font-weight: 500;
}

.woocommerce div.product .product_meta .posted_in a,
.product-info .product_meta .posted_in a {
    color: #c41e3a;
    text-decoration: none;
    font-weight: 600;
    transition: color 0.3s ease;
}

.woocommerce div.product .product_meta .posted_in a:hover,
.product-info .product_meta .posted_in a:hover {
    color: #2c1810;
    text-decoration: underline;
}

/* Ensure categories are on their own line */
.woocommerce div.product .product_meta .posted_in,
.product-info .product_meta .posted_in {
    display: block !important;
    clear: both !important;
    margin-top: 0.5rem !important;
}

/* ===================================================================
   Responsive Breadcrumb Adjustments
   =================================================================== */

/* Mobile breadcrumb adjustments */
@media (max-width: 768px) {
    .woocommerce-breadcrumb {
        padding: 2rem 1rem 1rem 1rem; /* Reduced padding on mobile but still increased top padding */
        margin-top: 1rem; /* Reduced top margin on mobile */
        font-size: 0.8rem; /* Slightly smaller font on mobile */
    }
}

@media (max-width: 480px) {
    .woocommerce-breadcrumb {
        padding: 1.5rem 0.5rem 1rem 0.5rem; /* Further reduced padding on very small screens */
        margin-top: 0.5rem; /* Minimal top margin on very small screens */
        font-size: 0.75rem; /* Even smaller font on very small screens */
    }
}

/* ===================================================================
   MAXIMUM SPECIFICITY OVERRIDES - Override WooCommerce theme flexbox completely
   =================================================================== */

/* End of cleaned up CSS file */