/* ============================================
   EA Product Custom Styles - Simplified
   Only common styles, no variation-specific
   ============================================ */

/* ============================================
   PRODUCT IMAGE - FULL WIDTH (NO CONTAINER PADDING)
   ============================================ */

@media only screen and (min-width: 1000px) {
    /* Remove padding from product container */
    .container > .woocommerce.single-product div.product[data-tab-pos],
    .container > .single-product div.product[data-tab-pos],
    body .container > .woocommerce.single-product div.product {
        padding: 0 !important;
    }
    
    /* Images - no padding, full width */
    .woocommerce div.product div.images,
    .single-product div.product div.images,
    .single-product-main-image {
        padding: 0 !important;
        margin: 0 !important;
    }
    
    /* Summary - restore padding for text content */
    .woocommerce div.product div.summary,
    .single-product div.product div.summary {
        padding-left: 70px !important;
        padding-right: 70px !important;
    }
}

/* Remove internal spacing from gallery elements */
.woocommerce-product-gallery,
.woocommerce-product-gallery__wrapper,
.woocommerce-product-gallery__image,
.woocommerce-product-gallery__image a {
    margin: 0 !important;
    padding: 0 !important;
}

.woocommerce-product-gallery__image img,
.woocommerce div.product div.images img {
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
}

/* Single Product Title Styling */
.woocommerce div.product .summary .product_title,
.woocommerce div.product .summary h1.product_title,
.woocommerce div.product .summary .entry-title.product_title,
.single-product .product_title,
.single-product h1.product_title {
    font-family: 'Graphik', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif !important;
    font-weight: 600 !important;
    font-style: normal !important;
    font-size: 48px !important;
    line-height: 110% !important;
    letter-spacing: -1.08px !important;
    vertical-align: middle !important;
    color: #161E2E !important;
    margin: 0 0 20px 0 !important;
    padding: 0 !important;
}

/* Responsive Product Title */
@media (max-width: 768px) {
    .woocommerce div.product .summary .product_title,
    .woocommerce div.product .summary h1.product_title,
    .woocommerce div.product .summary .entry-title.product_title,
    .single-product .product_title,
    .single-product h1.product_title {
        font-size: 32px !important;
        letter-spacing: -0.75px !important;
    }
}

/* ============================================
   Mobile Product Layout - Stack vertically
   ============================================ */

@media only screen and (max-width: 768px) {
    /* Product main container - ensure vertical stacking */
    .woocommerce div.product,
    .single-product div.product {
        display: flex !important;
        flex-direction: column !important;
    }
    
    /* Product images - full width at top */
    .woocommerce div.product div.images,
    .single-product div.product div.images,
    .woocommerce div.product .product-images,
    .single-product div.product .product-images {
        width: 100% !important;
        float: none !important;
        margin: 0 0 30px 0 !important;
        padding: 0 !important;
        order: 1 !important;
    }
    
    /* Product summary - full width below images */
    .woocommerce div.product div.summary,
    .single-product div.product div.summary,
    .woocommerce div.product .summary,
    .single-product div.product .summary {
        width: 100% !important;
        float: none !important;
        margin: 0 !important;
        padding: 0 20px !important;
        order: 2 !important;
        clear: both !important;
    }
    
    /* Product meta spacing fixes */
    .woocommerce div.product .product_meta,
    .single-product div.product .product_meta {
        margin-bottom: 20px !important;
        padding-bottom: 0 !important;
    }
    
    /* Price spacing fix - remove large gap */
    .woocommerce div.product .summary .price,
    .single-product div.product .summary .price {
        margin-bottom: 20px !important;
        padding-bottom: 0 !important;
    }
    
    /* Variations form spacing */
    .woocommerce div.product .summary .variations_form,
    .single-product div.product .summary .variations_form {
        margin-bottom: 20px !important;
    }
    
    /* Cart form spacing */
    .woocommerce div.product .summary .cart,
    .single-product div.product .summary .cart,
    .woocommerce div.product .summary form.cart,
    .single-product div.product .summary form.cart {
        margin-bottom: 20px !important;
        padding-bottom: 0 !important;
    }
    
    /* Remove excessive spacing after price */
    .woocommerce div.product .summary .price::after,
    .single-product div.product .summary .price::after {
        display: none !important;
    }
    
    /* Tabs section - full width below */
    .woocommerce div.product .woocommerce-tabs,
    .single-product div.product .woocommerce-tabs,
    .woocommerce div.product .product-tabs,
    .single-product div.product .product-tabs {
        width: 100% !important;
        float: none !important;
        clear: both !important;
        margin-top: 40px !important;
        order: 3 !important;
    }
    
    /* Description/Overview section spacing */
    .woocommerce div.product .woocommerce-product-details__short-description,
    .single-product div.product .woocommerce-product-details__short-description,
    .woocommerce div.product .summary .short-description,
    .single-product div.product .summary .short-description {
        margin-bottom: 20px !important;
        padding-bottom: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
    }
    
    /* Overview section - full width on mobile */
    .woocommerce div.product .woocommerce-tabs,
    .single-product div.product .woocommerce-tabs,
    .woocommerce-tabs .wc-tabs,
    .woocommerce-tabs .woocommerce-Tabs-panel,
    .woocommerce-tabs .panel,
    #tab-description,
    .woocommerce-Tabs-panel--description {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 20px !important;
        padding-right: 20px !important;
        box-sizing: border-box !important;
    }
    
    /* Tab content - full width */
    .woocommerce-tabs .panel,
    .woocommerce-Tabs-panel {
        width: 100% !important;
        max-width: 100% !important;
        float: none !important;
    }
    
    /* EA Overview Section - Stack vertically on mobile */
    .ea-overview-section,
    .ea-overview-section > div {
        display: flex !important;
        flex-direction: column !important;
        gap: 20px !important;
        width: 100% !important;
    }
    
    .ea-overview-section > div > div {
        width: 100% !important;
        flex: none !important;
        flex-shrink: 1 !important;
    }
    
    /* EA Tabs Section - Stack vertically on mobile */
    .ea-tabs-section {
        display: flex !important;
        flex-direction: column !important;
        gap: 30px !important;
        width: 100% !important;
    }
    
    .ea-tabs-navigation,
    .ea-tabs-content {
        width: 100% !important;
        flex: none !important;
        flex-shrink: 1 !important;
    }
    
    /* Product Specifications - full width */
    .ea-product-specifications {
        width: 100% !important;
        max-width: 100% !important;
    }
    
    .ea-product-specifications table {
        width: 100% !important;
    }
    
    /* Overview label and content */
    .ea-product-overview {
        width: 100% !important;
        max-width: 100% !important;
    }
    
    /* Fix any floated elements */
    .woocommerce div.product div.images,
    .woocommerce div.product div.summary,
    .single-product div.product div.images,
    .single-product div.product div.summary {
        float: none !important;
        clear: both !important;
    }
}

/* Spec Sheet Link Hover */
.ea-spec-sheet-link {
    color: #1a1a1a;
    text-decoration: none;
    font-size: 14px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    transition: opacity 0.3s ease;
    white-space: nowrap;
}

.ea-spec-sheet-link:hover {
    opacity: 0.7;
}

/* Tab Link Hover */
.ea-tab-link:hover {
    opacity: 0.7;
}

/* Scroll padding for tab sections */
.ea-tabs-section {
    scroll-margin-top: 5vh;
}

.ea-tab-panel {
    scroll-margin-top: 5vh;
}

html {
    scroll-padding-top: 5vh;
}
