/**
Theme Name: Destilerías de Galicia
Author: Origami Soluciones
Author URI: https://origamisoluciones.com/
Description: Tema hijo para la firma Destilerías de Galicia
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: destilerias-de-galicia
Template: astra
*/

/* ============================================================
   DESTILERÍAS GALICIA — Custom Stylesheet
   Arquitectura: Variables → Utilities → Components → States
   ============================================================ */


/* ============================================================
   1. VARIABLES
   ============================================================ */

:root {
    --color-brand:        #8A3A15;
    --color-brand-dark:   #6d2c10;
    --color-white:        #FFFFFF;
    --color-white-muted:  rgba(255, 255, 255, 0.8);
    --color-black:        #000000;
    --color-text-muted:   #454545;
    --color-card-bg:      #EFEFEF;

    --font-primary:   'DM Sans', sans-serif;
    --font-serif:     'Playfair Display', serif;

    --radius-sm:  4px;
    --radius-md:  8px;
    --btn-padding: 8px 12px;
}


/* ============================================================
   2. UTILITIES
   ============================================================ */

.btn-ghost {
    padding: var(--btn-padding) !important;
    background: transparent !important;
    color: var(--color-black) !important;
    border: none !important;
    box-shadow: none !important;
}

.btn-ghost:hover {
    color: var(--color-brand) !important;
    background: transparent !important;
}


/* ============================================================
   3. COMPONENTES
   ============================================================ */


/* --- 3.1 WPForms --- */

.wpforms-field-label-inline {
    color: var(--color-white) !important;
    padding-left: 0 !important;
}

.wpforms-field-label-inline a {
    color: var(--color-white-muted) !important;
    text-decoration: none !important;
}

.wpforms-field-label-inline a:hover {
    color: var(--color-white) !important;
}

.wpforms-container .wpforms-field input[type="text"],
.wpforms-container .wpforms-field input[type="email"],
.wpforms-container .wpforms-field input[type="number"],
.wpforms-container .wpforms-field textarea {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}


/* --- 3.2 Mapa del sitio --- */

.sitemap a {
    color: var(--color-text-muted) !important;
    text-decoration: none !important;
}

.sitemap a:hover {
    color: var(--color-black) !important;
}


/* --- 3.3 Google Maps --- */

.elementor-element-b7f61a4 iframe {
    filter: sepia(30%) saturate(80%) !important;
}


/* --- 3.4 Cards WooCommerce — UAEL (tienda) y Astra (relacionados) --- */

/* UAEL */
/* Spacing horizontal entre cards UAEL — 3 columnas */
.uael-woo-products-inner ul.products li {
    width: calc(33.333% - 11px) !important;
    margin-right: 16px !important;
}

.uael-woo-products-inner ul.products li:nth-child(3n) {
    margin-right: 0 !important;
}

.uael-woo-product-wrapper {
    background-color: var(--color-card-bg) !important;
    border-radius: var(--radius-md) !important;
    overflow: hidden !important;
}

.uael-woo-products-thumbnail-wrap {
    padding: 12px 12px 0 !important;
    background-color: var(--color-card-bg) !important;
    border-radius: var(--radius-md) var(--radius-md) 0 0 !important;
}

.uael-woo-products-thumbnail-wrap img {
    border-radius: var(--radius-sm) !important;
}

.uael-woo-products-summary-wrap {
    padding: 12px !important;
}

/* Astra — contenedor li */
.products li.product {
    border-radius: var(--radius-md) !important;
    overflow: hidden !important;
    background-color: var(--color-card-bg) !important;
    padding: 0 !important;
}

/* Astra — imagen */
.astra-shop-thumbnail-wrap {
    padding: 12px 12px 0 !important;
    background-color: var(--color-card-bg) !important;
    border-radius: var(--radius-md) var(--radius-md) 0 0 !important;
    overflow: hidden !important;
}

.astra-shop-thumbnail-wrap img {
    border-radius: var(--radius-sm) !important;
}

/* Astra — resumen */
.astra-shop-summary-wrap {
    padding: 12px !important;
    background-color: var(--color-card-bg) !important;
    border-radius: 0 0 var(--radius-md) var(--radius-md) !important;
}

/* Gap solo en ficha de producto */
.single-product .ast-woo-product-no-review.product {
    gap: 40px !important;
}

/* Sin gap en listados y relacionados */
.products .ast-woo-product-no-review.product {
    gap: 0 !important;
}

/* Botón comprar — productos relacionados */
.related.products .add_to_cart_button.button {
    padding: var(--btn-padding) !important;
    background-color: var(--color-brand) !important;
    color: var(--color-white) !important;
    border: none !important;
    box-shadow: none !important;
}

.related.products .add_to_cart_button.button:hover {
    background-color: var(--color-brand-dark) !important;
    color: var(--color-white) !important;
}


/* --- 3.5 Ficha de producto --- */

/* Hero — título */
.hero-producto .product_title.entry-title {
    color: var(--color-white) !important;
    font-size: 44px;
}

@media (max-width: 1024px) {
    .hero-producto .product_title.entry-title { font-size: 40px !important; }
}

@media (max-width: 880px) {
    .hero-producto .product_title.entry-title { font-size: 38px !important; }
}

@media (max-width: 767px) {
    .hero-producto .product_title.entry-title { font-size: 36px !important; }
}

/* Galería */
.woocommerce-product-gallery__image {
    box-shadow: 1px 1px 10px 1px rgba(0, 0, 0, 0.2) !important;
    border-radius: var(--radius-md) !important;
    overflow: hidden !important;
}

.woocommerce-product-gallery__image img {
    border-radius: var(--radius-md) !important;
}

/* Layout galería + summary */
.woocommerce div.product {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
}

.woocommerce div.product .summary.entry-summary {
    float: none !important;
    align-self: center !important;
}

.woocommerce div.product .woocommerce-product-gallery {
    float: none !important;
}

/* Formulario cantidad + botón */
.woocommerce form.cart {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 12px !important;
}

/* Botón comprar — ficha de producto */
.single_add_to_cart_button {
    padding: var(--btn-padding) !important;
    background-color: var(--color-brand) !important;
    color: var(--color-white) !important;
    border: none !important;
    box-shadow: none !important;
}

.single_add_to_cart_button:hover {
    background-color: var(--color-brand-dark) !important;
    color: var(--color-white) !important;
}


/* --- 3.6 Carrito --- */

.woocommerce-cart-form .shop_table,
.woocommerce-cart-form .shop_table td,
.woocommerce-cart-form .shop_table th,
.woocommerce-cart-form .shop_table tr {
    border: none !important;
    box-shadow: none !important;
}

.woocommerce-cart-form .shop_table thead th,
.cart_totals h2 {
    background-color: var(--color-brand) !important;
    color: var(--color-white) !important;
    font-family: var(--font-serif) !important;
    font-weight: 700 !important;
}

.woocommerce-cart-form .shop_table a,
.cart_totals .shop_table a {
    color: var(--color-black) !important;
    text-decoration: none !important;
}

.woocommerce-cart-form .shop_table a:hover,
.cart_totals .shop_table a:hover {
    color: var(--color-brand) !important;
}

.woocommerce-cart-form .button[name="update_cart"],
.woocommerce-cart-form .button[name="apply_coupon"] {
    padding: var(--btn-padding) !important;
    background: transparent !important;
    color: var(--color-black) !important;
    border: none !important;
    box-shadow: none !important;
}

.woocommerce-cart-form .button[name="update_cart"]:hover,
.woocommerce-cart-form .button[name="apply_coupon"]:hover {
    background: transparent !important;
    color: var(--color-brand) !important;
}

.checkout-button.button.alt {
    padding: var(--btn-padding) !important;
    background-color: var(--color-brand) !important;
    color: var(--color-white) !important;
    border: none !important;
}

.checkout-button.button.alt:hover {
    background-color: var(--color-brand-dark) !important;
}

.wc-proceed-to-checkout .ast-checkout-coupon a.button {
    padding: var(--btn-padding) !important;
    background: transparent !important;
    color: var(--color-black) !important;
    border: none !important;
    box-shadow: none !important;
}

.wc-proceed-to-checkout .ast-checkout-coupon a.button:hover {
    background: transparent !important;
    color: var(--color-brand) !important;
}


/* --- 3.7 Mi cuenta --- */

.woocommerce-MyAccount-navigation ul li a {
    color: var(--color-black) !important;
    text-decoration: none !important;
    font-family: var(--font-primary) !important;
    font-weight: 400 !important;
    background: transparent !important;
}

.woocommerce-MyAccount-navigation ul li a:hover,
.woocommerce-MyAccount-navigation-link.is-active a {
    color: var(--color-brand) !important;
    background: transparent !important;
    border-color: var(--color-brand) !important;
}

.woocommerce-MyAccount-navigation-link.is-active,
.woocommerce-MyAccount-navigation ul li:hover {
    background-color: transparent !important;
    border-right: 3px solid var(--color-brand) !important;
}

.ast-wooaccount-user-wrapper,
.ast-wooaccount-user-wrapper .ast-username {
    color: var(--color-black) !important;
    font-family: var(--font-primary) !important;
}

.woocommerce-MyAccount-content a {
    color: var(--color-brand) !important;
    text-decoration: none !important;
    font-family: var(--font-primary) !important;
}

.woocommerce-MyAccount-content a:hover {
    color: var(--color-brand-dark) !important;
}

.woocommerce-MyAccount-content .button {
    padding: var(--btn-padding) !important;
    background: transparent !important;
    color: var(--color-black) !important;
    border: none !important;
    box-shadow: none !important;
    font-family: var(--font-primary) !important;
}

.woocommerce-MyAccount-content .button:hover {
    background: transparent !important;
    color: var(--color-brand) !important;
}


/* --- 3.8 Mensajes WooCommerce --- */

.woocommerce-info {
    border-top-color: var(--color-brand) !important;
}

.woocommerce-info::before {
    color: var(--color-brand) !important;
}

.woocommerce-info .woocommerce-Button {
    background-color: var(--color-brand) !important;
    color: var(--color-white) !important;
    border-color: var(--color-brand) !important;
}

.woocommerce-info .woocommerce-Button:hover {
    background-color: var(--color-brand-dark) !important;
}


/* ============================================================
   4. MENÚ DE NAVEGACIÓN
   ============================================================ */

.dropdown-menu-toggle.ast-header-navigation-arrow,
.menu-item-has-children > a .ast-icon.icon-arrow,
.menu-item-has-children > .ast-menu-toggle,
.menu-item-has-children > a .dropdown-menu-toggle,
.menu-item-has-children .sub-menu .ast-icon.icon-arrow {
    display: none !important;
}

.menu-item-has-children .sub-menu {
    display: block !important;
    padding-left: 20px !important;
}

@media (min-width: 921px) and (max-width: 1150px) {
    .ast-builder-menu-1 .menu-link,
    .ast-builder-menu-2 .menu-link,
    .ast-builder-menu-1 .menu-text,
    .ast-builder-menu-2 .menu-text {
        font-size: 14px !important;
        padding: 6px !important;
    }

    .ast-builder-menu-1 .main-header-menu,
    .ast-builder-menu-2 .main-header-menu {
        gap: 4px !important;
    }
}

.uael-woo-product-wrapper .uael-woo-products-description {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

.uael-woo-product-wrapper .uael-woo-products-description p {
    margin-bottom: 6px !important;
    margin-top: 0 !important;
    padding-bottom: 0 !important;
}

.uael-woo-product-wrapper .button.add_to_cart_button {
    margin-left: 0 !important;
}