/*
Theme Name: GeneratePress Child
Theme URI: https://generatepress.com
Template: generatepress
Author: Tom Usborne
Author URI: https://generatepress.com/about
Description: GeneratePress is a lightweight WordPress theme built with a focus on speed and usability. Performance is important to us, which is why a fresh GeneratePress install adds less than 10kb (gzipped) to your page size. We take full advantage of the block editor (Gutenberg), which gives you more control over creating your content. If you use page builders, GeneratePress is the right theme for you. It is completely compatible with all major page builders, including Beaver Builder and Elementor. Thanks to our emphasis on WordPress coding standards, we can boast full compatibility with all well-coded plugins, including WooCommerce. GeneratePress is fully responsive, uses valid HTML/CSS, and is translated into over 25 languages by our amazing community of users. A few of our many features include 60+ color controls, powerful dynamic typography, 5 navigation locations, 5 sidebar layouts, dropdown menus (click or hover), and 9 widget areas. Learn more and check out our powerful premium version at https://generatepress.com
Tags: two-columns,three-columns,one-column,right-sidebar,left-sidebar,footer-widgets,blog,e-commerce,flexible-header,full-width-template,buddypress,custom-header,custom-background,custom-menu,custom-colors,sticky-post,threaded-comments,translation-ready,rtl-language-support,featured-images,theme-options
Version: 3.6.1.1775307299
Updated: 2026-04-04 12:54:59

*/

/* ==========================================================================
   Premium Product Page Styling - Amazon Affiliate
   ========================================================================== */

/* 1. Layout & Header Gap Cleanup */
.single-product .site-content, 
.single-product #content {
    padding-top: 0 !important;
}

.single-product #content {
    margin-top: -2rem;
}

/* 1.5 Typography & Hierarchy */
.woocommerce-breadcrumb {
    font-size: 0.75rem !important;
    opacity: 0.7;
    margin-top: 0 !important;
    margin-bottom: 1.2rem !important; /* Reduced for tightness */
    color: var(--contrast-3);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.single-product .product_title {
    font-family: 'Comfortaa', display;
    font-weight: 700;
    line-height: 1.1;
    font-size: 2.2rem !important;
    margin-bottom: 2rem !important;
    color: var(--accent);
    letter-spacing: -0.5px;
    width: 100%;
    flex: 1 1 100%;
    grid-column: 1 / -1;
    clear: both;
}

/* 2. Image Presentation cleanup */
.woocommerce-product-gallery__wrapper,
.woocommerce-product-gallery__image,
.woocommerce-product-gallery {
    border: none !important;
    outline: none !important;
}

.single-product div.product div.images img {
    box-shadow: 0 20px 50px rgba(0,0,0,0.1);
    border-radius: 16px;
    transition: transform 0.3s ease;
}

/* Hide redundant H1/H2 in description */
.woocommerce-Tabs-panel--description > h1:first-child,
.woocommerce-Tabs-panel--description > h2:first-child {
    display: none;
}

/* 2. Price Styling */
.single-product p.price {
    font-size: 2.2rem !important;
    font-weight: 800 !important;
    color: #B12704 !important; /* Amazon Price Red */
    margin-bottom: 1.2rem !important;
}

.single-product p.price del {
    font-size: 1.1rem;
    color: #565959;
    margin-right: 8px;
}

.single-product p.price ins {
    text-decoration: none;
}

/* 3. Unified Summary Card */
.aoi-unified-card {
    background: #fff;
    border: 1px solid #f0f0f0;
    border-radius: 16px;
    margin: 0 0 1.5rem 0;
    box-shadow: 0 10px 30px rgba(0,0,0,0.03);
    overflow: hidden;
    position: relative;
}

/* Re-posicionar la insignia de OFERTA en la tarjeta unificada */
.aoi-unified-card .onsale {
    position: absolute;
    top: 0;
    left: 0;
    margin: 0;
    border-radius: 16px 0 16px 0;
    z-index: 5;
    font-size: 0.75rem;
    padding: 4px 12px;
}

/* Conversion Section (Inside Unified Card) */
.aoi-unified-card .price,
.aoi-unified-card .cart {
    padding: 0 1.25rem;
}

.aoi-unified-card .price {
    padding-top: 1.5rem; /* Ajustado para dejar aire desde el top/badge */
    margin-bottom: 0.5rem !important; /* Condensar brutalmente la distancia al botón */
}

.aoi-unified-card .cart {
    padding-bottom: 0;
    margin-bottom: 0 !important;
}

/* 4. Trust Badges (Confidence Box) */
.aoi-trust-badges {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px; /* Ligeramente más compacto */
    margin: 0.5rem 1.25rem 1rem 1.25rem; /* Márgenes radicalmente reducidos respecto al botón y los metaboxes */
}

.badge-item {
    background: #fdfbfb;
    padding: 10px 5px;
    border-radius: 8px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 6px !important;
    border: 1px solid #f5f5f5;
    transition: all 0.3s ease;
}

.badge-item:hover {
    background: #fff;
    border-color: #eee;
    transform: translateY(-2px);
}

.badge-item .dashicons {
    font-size: 1.2rem;
    color: #2ecc71;
    height: auto;
    width: auto;
}

.badge-item span:not(.dashicons) {
    font-size: 0.65rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--contrast-4);
}

/* 5. Minimalist Meta Box (Integrated) */
.product_meta {
    background: #fafafa;
    padding: 0.75rem 1.25rem; /* Ajuste drástico de height */
    font-size: 0.75rem;
    color: var(--contrast-4);
    display: flex;
    flex-direction: column;
    gap: 4px; /* Las líneas de meta más juntas */
    border-top: 1px solid #f0f0f0;
}

.product_meta > span {
    display: block;
    border-bottom: 1px solid rgba(0,0,0,0.02);
    padding-bottom: 4px;
}

.product_meta > span:last-child {
    border-bottom: none;
}

.product_meta .sku_wrapper,
.product_meta .posted_in,
.product_meta .tagged_as {
    font-weight: 700;
    color: var(--accent);
    margin-right: 5px;
}

.product_meta a {
    font-weight: 400;
    color: var(--accent);
    text-decoration: none;
    background: #fff;
    padding: 1px 6px;
    border-radius: 4px;
    border: 1px solid #eee;
    margin-right: 2px;
    display: inline-block;
    transition: all 0.2s ease;
}

.product_meta a:hover {
    border-color: var(--accent-2);
    color: var(--accent-2);
}

/* 6. Content Blocks stying */
.woocommerce-Tabs-panel--description h2, 
.woocommerce-Tabs-panel--description h3 {
    border-left: 4px solid var(--accent-2);
    padding-left: 15px;
    margin-top: 2.5rem !important;
    margin-bottom: 1.5rem !important;
}

/* 6. Universal Sticky Buy Bar */
.aoi-sticky-bar {
    position: fixed;
    left: 0;
    width: 100%;
    background: #fff;
    box-shadow: 0 5px 20px rgba(0,0,0,0.1);
    z-index: 9999;
    transform: translateY(-100%);
    transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    padding: 8px 0;
}

.aoi-sticky-bar.is-visible {
    transform: translateY(0);
}

/* Desktop: Top Bar */
@media (min-width: 769px) {
    .aoi-sticky-bar {
        top: 0;
    }
    .admin-bar .aoi-sticky-bar {
        top: 32px;
    }
}

/* Mobile: Bottom Bar */
@media (max-width: 768px) {
    .aoi-sticky-bar {
        bottom: 0;
        top: auto;
        transform: translateY(100%);
        padding: 6px 0;
        box-shadow: 0 -5px 20px rgba(0,0,0,0.1);
    }
    .aoi-sticky-bar.is-visible {
        transform: translateY(0);
    }
    .sticky-title {
        display: none; /* Hide title on mobile to save space */
    }
}

.sticky-container {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 20px;
}

.sticky-product {
    display: flex;
    align-items: center;
    gap: 12px;
}

.sticky-product img {
    height: 45px;
    width: 45px;
    object-fit: contain;
    border: 1px solid #eee;
    border-radius: 4px;
}

.sticky-info {
    display: flex;
    flex-direction: column;
}

.sticky-title {
    font-weight: 700;
    font-size: 0.85rem;
    color: var(--accent);
    line-height: 1.2;
    max-width: 300px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sticky-price {
    font-weight: 800;
    color: #B12704 !important;
    font-size: 1.1rem !important;
    margin: 0 !important;
}

.aoi-sticky-bar .sticky-button {
    background: linear-gradient(to bottom, #f7dfa1, #f0c14b) !important;
    border: 1px solid #a88734 !important;
    color: #111 !important;
    padding: 10px 25px !important;
    font-weight: 700 !important;
    font-size: 1rem !important;
    border-radius: 999px !important;
    text-decoration: none !important;
    box-shadow: 0 4px 12px rgba(240, 193, 75, 0.4) !important;
    transition: all 0.3s ease !important;
    display: inline-flex !important;
    align-items: center !important;
}

/* 3. Premium Amazon Button */
.single-product .single_add_to_cart_button.button.alt {
    background: linear-gradient(to bottom, #f7dfa1, #f0c14b) !important;
    border: 1px solid #a88734 !important;
    color: #111 !important;
    padding: 16px 40px !important;
    font-weight: 700 !important;
    font-size: 1.25rem !important;
    border-radius: 999px !important;
    box-shadow: 0 4px 15px rgba(240, 193, 75, 0.3) !important;
    text-transform: none !important;
    transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100%; /* Full width in the conversion zone if needed, or inline */
}

.single-product .single_add_to_cart_button.button.alt:hover {
    background: linear-gradient(to bottom, #f5d78e, #eeb933) !important;
    transform: translateY(-3px) scale(1.02);
    box-shadow: 0 8px 25px rgba(240, 193, 75, 0.4) !important;
}

.single-product .single_add_to_cart_button.button.alt::before {
    content: "\f174"; /* Dashicon cart */
    font-family: dashicons;
    margin-right: 12px;
    font-size: 1.4rem;
}

/* 4. Technical Data Sheet (Tables) */
.woocommerce-Tabs-panel--description table {
    border: none !important;
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 10px 40px rgba(0,0,0,0.05);
}

.woocommerce-Tabs-panel--description th {
    background: #fdfbfb !important;
    color: var(--accent) !important;
    text-transform: uppercase;
    font-size: 0.75rem;
    letter-spacing: 1px;
    width: 35%;
    padding: 15px 20px !important;
}

.woocommerce-Tabs-panel--description td {
    padding: 15px 20px !important;
}

.woocommerce-Tabs-panel--description tr:nth-child(even) {
    background: #fafafa;
}

/* Reset mobile padding for sticky bar */
@media (max-width: 768px) {
    body.single-product {
        padding-bottom: 80px !important;
    }
}

/* 7. FAQ Accordion */
.aoi-faq-accordion details {
    border: 1px solid #eee;
    border-radius: 10px;
    margin-bottom: 12px;
    background: #fff;
    transition: all 0.3s ease;
    box-shadow: 0 2px 5px rgba(0,0,0,0.02);
}

.aoi-faq-accordion details[open] {
    box-shadow: 0 5px 15px rgba(0,0,0,0.05);
}

.aoi-faq-accordion summary {
    padding: 18px 25px;
    font-weight: 700;
    cursor: pointer;
    list-style: none;
    position: relative;
    color: var(--accent);
    background: #fff;
    font-size: 1.1rem;
    display: flex;
    align-items: center;
    outline: none;
}

.aoi-faq-accordion summary::-webkit-details-marker {
    display: none;
}

.aoi-faq-accordion summary::after {
    content: "\f347"; /* Dashicon Down */
    font-family: dashicons;
    margin-left: auto;
    transition: transform 0.3s ease;
    font-size: 1.2rem;
    color: var(--accent-2);
}

.aoi-faq-accordion details[open] summary::after {
    transform: rotate(180deg);
}

.aoi-faq-accordion .faq-answer {
    padding: 0 25px 20px 25px;
    color: var(--contrast-3);
    line-height: 1.7;
}

.aoi-faq-accordion h3 {
    margin: 0 !important;
    font-size: inherit !important;
    border: none !important;
    padding: 0 !important;
}
