/* ==========================================================================
   LA VETA – ESTILOS AISLADOS DE FICHA DE PRODUCTO (WOOCOMMERCE)
   ========================================================================== */

/* ==========================================================================
   BLOQUE: 1. Desacoplamiento y Limpieza de Variaciones (Zero Layout Shift)
   FINALIDAD: Oculta el precio duplicado inferior y el enlace "Limpiar" para evitar
              saltos de diseño (layout shift) al seleccionar opciones.
   ESTADO: Dado por bueno. No debería editarse a no ser que sea por conflicto de código.
   ========================================================================== */
.woocommerce-variation-price,
.single_variation .price,
.single_variation_wrap .woocommerce-variation-price,
.reset_variations {
    display: none !important;
}

/* ==========================================================================
   BLOQUE: 2. Estructura de Tabla de Variaciones (Apariencia Apilada / Stacked)
   FINALIDAD: Dispone las etiquetas de variación encima del desplegable y aplica
              el selector con chevron SVG, respetando las tipografías globales de Elementor.
   ESTADO: Dado por bueno. No debería editarse a no ser que sea por conflicto de código.
   ========================================================================== */
form.variations_form {
    margin: 16px 0 24px 0 !important;
    display: block !important;
    width: 100% !important;
}

table.variations {
    display: block !important;
    width: 100% !important;
    border: none !important;
    margin: 0 0 16px 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

table.variations tbody,
table.variations tr,
table.variations th,
table.variations td {
    display: block !important;
    width: 100% !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

table.variations th.label,
.la-veta-selector-label-wrap {
    display: block !important;
    padding: 0 0 6px 0 !important;
    margin: 0 !important;
    background: transparent !important;
    text-align: left !important;
    border: none !important;
    box-shadow: none !important;
}

table.variations th.label label,
.la-veta-selector-label-wrap label.la-veta-selector-label {
    display: block !important;
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
}

table.variations td.value,
.la-veta-select-styled-container {
    display: block !important;
    padding: 0 !important;
    margin: 0 0 14px 0 !important;
    width: 100% !important;
    border: none !important;
    box-shadow: none !important;
    background: transparent !important;
}

table.variations td.value select,
.la-veta-select-styled-container select.la-veta-select {
    display: block !important;
    width: 100% !important;
    height: 48px !important;
    border-radius: 10px !important;
    border: 1.5px solid var(--e-global-color-912da8ca, #cbd5e1) !important;
    padding: 0 40px 0 14px !important;
    background-color: #ffffff !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2301376d' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 14px center !important;
    background-size: 16px !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
    outline: none !important;
    box-sizing: border-box !important;
    box-shadow: none !important;
    transition: border-color 0.15s ease !important;
    cursor: pointer !important;
}

table.variations td.value select:focus,
.la-veta-select-styled-container select.la-veta-select:focus {
    border-color: var(--e-global-color-primary, #01376d) !important;
}

/* ==========================================================================
   BLOQUE: 3. Fila de Compra (Alineación Funcional Flexbox)
   FINALIDAD: Dispone el selector de cantidad y el botón de compra en una misma fila,
              respetando 100% los estilos de colores, tipografías y radios definidos en Elementor.
   ESTADO: Dado por bueno. No debería editarse a no ser que sea por conflicto de código.
   ========================================================================== */
.woocommerce-variation-add-to-cart,
form.cart:not(.variations_form) {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    width: 100% !important;
    margin-top: 14px !important;
    flex-wrap: wrap !important;
}

.woocommerce-variation-add-to-cart .quantity,
form.cart:not(.variations_form) .quantity {
    flex: 0 0 auto !important;
    margin: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
}

.woocommerce-variation-add-to-cart .single_add_to_cart_button,
form.cart:not(.variations_form) .single_add_to_cart_button,
.single_add_to_cart_button.button {
    flex: 1 1 200px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
}

.single_add_to_cart_button::after,
.single_add_to_cart_button::before,
button.loading::after,
button.loading::before,
.button.loading::after,
.button.loading::before {
    display: none !important;
    content: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    animation: none !important;
}

/* ==========================================================================
   BLOQUE: 4. Tarjeta Regalo (YITH Gift This Product)
   FINALIDAD: Recuadro al 100% de ancho con fondo azul cian corporativo (#00bfff),
              borde limpio y tipografías en blanco (#ffffff) con enlace interactivo.
   ESTADO: Dado por bueno. No debería editarse a no ser que sea por conflicto de código.
   ========================================================================== */
#gift-this-product,
.gift-this-product-main-container,
.ywgc-gift-this-product-container {
    display: block !important;
    width: 100% !important;
    clear: both !important;
    margin-top: 18px !important;
    margin-bottom: 0 !important;
    padding: 14px 16px !important;
    border-radius: 12px !important;
    background: var(--e-global-color-secondary, #00bfff) !important;
    border: 1px solid var(--e-global-color-secondary, #00bfff) !important;
    box-sizing: border-box !important;
    float: none !important;
    cursor: pointer !important;
}

.gift-this-product-description-container {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    margin: 0 !important;
    padding: 0 !important;
}

.gift-this-product-title-message {
    display: block !important;
    font-family: var(--e-global-typography-35780103-font-family, 'Montserrat'), sans-serif !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    color: var(--e-global-color-462f2d23, #ffffff) !important;
    line-height: 1.45 !important;
    margin: 0 !important;
    padding: 0 !important;
}

.gift-this-product-title-message br:last-of-type {
    display: none !important;
}

#give-as-present,
.give-as-present,
.give-as-present-button {
    display: inline-flex !important;
    align-self: flex-start !important;
    text-align: left !important;
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    font-family: var(--e-global-typography-a5ce33eb-font-family, 'Montserrat'), sans-serif !important;
    font-size: var(--e-global-typography-a5ce33eb-font-size, 18px) !important;
    font-weight: 700 !important;
    line-height: var(--e-global-typography-a5ce33eb-line-height, 1.2) !important;
    color: var(--e-global-color-462f2d23, #ffffff) !important;
    text-decoration: underline !important;
    cursor: pointer !important;
    box-shadow: none !important;
    transition: opacity 0.15s ease, color 0.15s ease !important;
}

#give-as-present:hover,
.give-as-present:hover,
.give-as-present-button:hover {
    color: var(--e-global-color-462f2d23, #ffffff) !important;
    opacity: 0.85 !important;
    text-decoration: underline !important;
}

#give-as-present:disabled,
.give-as-present:disabled,
.give-as-present-button:disabled {
    pointer-events: none !important;
}

/* ==========================================================================
   BLOQUE: Sistema de Notificaciones Flotantes (Toast) de WooCommerce
   FINALIDAD: Transforma los avisos de WooCommerce (.woocommerce-notices-wrapper)
              en tarjetas flotantes fijadas en la esquina inferior izquierda con estética Glassmorphism,
              evitando que tapen el contenido y otorgando una experiencia moderna con auto-cierre.
   ESTADO: Dado por bueno. No debería editarse a no ser que sea por conflicto de código.
   ========================================================================== */
.woocommerce-notices-wrapper {
    position: fixed !important;
    bottom: 24px !important;
    left: 24px !important;
    top: auto !important;
    right: auto !important;
    z-index: 99999 !important;
    max-width: 440px !important;
    width: calc(100vw - 48px) !important;
    pointer-events: none !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
}

.woocommerce-notices-wrapper:empty {
    display: none !important;
}

.woocommerce-message,
.woocommerce-error,
.woocommerce-info {
    pointer-events: auto !important;
    margin: 0 !important;
    padding: 16px 42px 16px 18px !important;
    border-radius: 12px !important;
    font-family: var(--e-global-typography-35780103-font-family, 'Montserrat'), sans-serif !important;
    font-size: 13.5px !important;
    font-weight: 500 !important;
    line-height: 1.5 !important;
    box-sizing: border-box !important;
    position: relative !important;
    overflow: hidden !important;
    border: none !important;
    outline: none !important;
    background: rgba(255, 255, 255, 0.72) !important;
    -webkit-backdrop-filter: blur(20px) saturate(180%) !important;
    backdrop-filter: blur(20px) saturate(180%) !important;
    box-shadow: 0 16px 36px rgba(1, 20, 50, 0.16), 0 2px 8px rgba(0, 0, 0, 0.04), inset 0 0 0 1px rgba(255, 255, 255, 0.8) !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 20px !important;
    animation: lvToastSlideIn 0.35s cubic-bezier(0.16, 1, 0.3, 1) forwards !important;
    transition: opacity 0.3s ease, transform 0.3s ease !important;
}

@keyframes lvToastSlideIn {
    from {
        opacity: 0;
        transform: translateY(20px) scale(0.96);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

.woocommerce-message::before,
.woocommerce-info::before,
.woocommerce-error::before {
    display: none !important;
    content: none !important;
}

.woocommerce-message {
    color: var(--e-global-color-primary, #01376d) !important;
}

.woocommerce-info {
    color: #0f172a !important;
}

.woocommerce-error {
    background: rgba(255, 255, 255, 0.78) !important;
    color: #991b1b !important;
    box-shadow: 0 16px 36px rgba(239, 68, 68, 0.12), 0 2px 8px rgba(0, 0, 0, 0.04), inset 0 0 0 1px rgba(254, 202, 202, 0.8) !important;
}

.woocommerce-error li {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.woocommerce-message a.button,
.woocommerce-message .button,
.woocommerce-error a.button,
.woocommerce-info a.button {
    order: 2 !important;
    margin: 0 !important;
    flex-shrink: 0 !important;
    white-space: nowrap !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 8px 18px !important;
    font-size: 13px !important;
    border-radius: 9999px !important;
    border: none !important;
    outline: none !important;
    background-color: var(--e-global-color-primary, #01376d) !important;
    color: #ffffff !important;
    text-decoration: none !important;
    font-weight: 700 !important;
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
    transform: none !important;
    line-height: 1.3 !important;
    transition: background-color 0.2s ease !important;
}

.woocommerce-message a.button:hover,
.woocommerce-message .button:hover,
.woocommerce-error a.button:hover,
.woocommerce-info a.button:hover {
    background-color: var(--e-global-color-secondary, #00bfff) !important;
    color: #ffffff !important;
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
    transform: none !important;
}

.lv-toast-close-btn {
    position: absolute !important;
    top: 14px !important;
    right: 14px !important;
    width: 22px !important;
    height: 22px !important;
    min-width: 22px !important;
    min-height: 22px !important;
    max-width: 22px !important;
    max-height: 22px !important;
    aspect-ratio: 1 / 1 !important;
    padding: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    border: none !important;
    outline: none !important;
    border-radius: 50% !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    background: rgba(1, 55, 109, 0.07) !important;
    color: var(--e-global-color-primary, #01376d) !important;
    opacity: 0.65 !important;
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
    transition: opacity 0.2s ease, background-color 0.2s ease !important;
    flex-shrink: 0 !important;
}

.lv-toast-close-btn svg {
    width: 9px !important;
    height: 9px !important;
    display: block !important;
    pointer-events: none !important;
    stroke: currentColor !important;
}

.lv-toast-close-btn:hover {
    opacity: 1 !important;
    background: rgba(1, 55, 109, 0.15) !important;
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
    transform: none !important;
}

@media (max-width: 767px) {
    .woocommerce-notices-wrapper {
        bottom: 16px !important;
        left: 16px !important;
        width: calc(100vw - 32px) !important;
    }
    .woocommerce-message,
    .woocommerce-error,
    .woocommerce-info {
        padding: 14px 38px 14px 16px !important;
        gap: 16px !important;
    }
}
/* ==========================================================================
   YITH GIFT CARD MODAL & BUTTON ENHANCEMENTS (GLOBAL)
   ========================================================================== */
.yith-ywgc-gift-this-product-modal-overlay {
    z-index: 999998 !important;
}

.yith-ywgc-gift-this-product-modal-wrapper {
    z-index: 999999 !important;
}

.gift_card_template_button.variations_button,
.yith-ywgc-gift-this-product-modal-wrapper .gift_card_template_button.variations_button {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 8px !important;
}

.gift_card_template_button .quantity,
.yith-ywgc-gift-this-product-modal-wrapper .gift_card_template_button .quantity {
    margin: 0 !important;
    display: flex !important;
    align-items: center !important;
}

.gift_card_template_button .quantity input.qty,
.yith-ywgc-gift-this-product-modal-wrapper .gift_card_template_button .quantity input.qty {
    margin: 0 !important;
    height: 46px !important;
    border-radius: 8px !important;
}

.gift_card_template_button .single_add_to_cart_button,
.yith-ywgc-gift-this-product-modal-wrapper .gift_card_template_button .single_add_to_cart_button.gift_card_add_to_cart_button,
.yith-ywgc-gift-this-product-modal-wrapper .single_add_to_cart_button.gift_card_add_to_cart_button,
.yith-ywgc-gift-this-product-modal-wrapper button.single_add_to_cart_button {
    background-color: var(--e-global-color-primary, #01376d) !important;
    color: #ffffff !important;
    font-family: var(--e-global-typography-primary-font-family, 'Montserrat'), sans-serif !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    border-radius: 8px !important;
    border: none !important;
    height: 46px !important;
    padding: 0 24px !important;
    margin: 0 !important;
    cursor: pointer !important;
    transition: background-color 0.2s ease, transform 0.15s ease !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.gift_card_template_button .single_add_to_cart_button:hover,
.yith-ywgc-gift-this-product-modal-wrapper .gift_card_template_button .single_add_to_cart_button.gift_card_add_to_cart_button:hover,
.yith-ywgc-gift-this-product-modal-wrapper .single_add_to_cart_button.gift_card_add_to_cart_button:hover,
.yith-ywgc-gift-this-product-modal-wrapper button.single_add_to_cart_button:hover {
    background-color: var(--e-global-color-secondary, #00bfff) !important;
    color: #ffffff !important;
}

/* ==========================================================================
   BLOQUE: 9. PÁGINA DE PRODUCTO: TARJETA REGALO LA VETA (YITH GIFT CARD)
   FINALIDAD: Optimización estética integral de la ficha de Tarjeta Regalo:
              separación armónica de cabecera y pie de página, tarjeta de
              vista previa con sombra suave, botones de importe redondeados
              sin textos cortados, campos de entrega estilizados y maquetación
              editorial en la descripción.
   ========================================================================== */

/* 1. Contenedor Padre (.site-main): espaciado armónico de cabecera y pie de página */
body.postid-1499 .site-main,
body:has(.product-type-gift-card) .site-main {
    max-width: 1240px !important;
    margin: 0 auto !important;
    padding-top: clamp(32px, 4vw, 56px) !important;
    padding-bottom: clamp(48px, 6vw, 96px) !important;
    padding-left: clamp(16px, 3.5vw, 40px) !important;
    padding-right: clamp(16px, 3.5vw, 40px) !important;
    box-sizing: border-box !important;
}

/* 2. Migas de pan (Breadcrumbs) - Ocultadas */
body.postid-1499 .woocommerce-breadcrumb,
body:has(.product-type-gift-card) .woocommerce-breadcrumb,
body.postid-1499 .site-main > .woocommerce-breadcrumb {
    display: none !important;
}

/* 3. Disposición del producto en 2 columnas fluidas */
.product-type-gift-card {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: clamp(28px, 4vw, 56px) !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    margin-bottom: 0 !important;
}

.product-type-gift-card .woocommerce-product-gallery {
    flex: 1 1 440px !important;
    max-width: 520px !important;
    width: 100% !important;
    float: none !important;
    margin: 0 !important;
}

.product-type-gift-card .summary.entry-summary {
    flex: 1 1 500px !important;
    max-width: 640px !important;
    width: 100% !important;
    float: none !important;
    margin: 0 !important;
}

/* 4. Tarjeta de vista previa de la Gift Card (columna izquierda) */
.product-type-gift-card .ywgc-main-form-preview-container {
    background: #ffffff !important;
    border: 1px solid rgba(0, 43, 73, 0.1) !important;
    border-radius: 20px !important;
    box-shadow: 0 16px 40px -8px rgba(0, 43, 73, 0.08), 0 4px 16px -4px rgba(0, 43, 73, 0.04) !important;
    padding: clamp(20px, 3vw, 28px) !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    transition: box-shadow 0.25s ease !important;
}

.product-type-gift-card .ywgc-main-form-preview-container:hover {
    box-shadow: 0 20px 48px -8px rgba(0, 43, 73, 0.12), 0 6px 20px -4px rgba(0, 43, 73, 0.06) !important;
}

.product-type-gift-card .ywgc-form-preview-title-container {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    border-bottom: 1.5px solid #f1f5f9 !important;
    padding-bottom: 14px !important;
    margin-bottom: 16px !important;
}

.product-type-gift-card .ywgc-form-preview-product-title {
    font-size: 17px !important;
    font-weight: 700 !important;
    color: #002B49 !important;
    font-family: var(--e-global-typography-primary-font-family, 'Plus Jakarta Sans', 'Montserrat'), sans-serif !important;
}

.product-type-gift-card .ywgc-form-preview-amount,
.yith-ywgc-gift-this-product-modal-wrapper .ywgc-form-preview-amount,
.ywgc-form-preview-title-container .ywgc-form-preview-amount {
    display: none !important;
}

.product-type-gift-card .ywgc-main-form-preview-container hr {
    display: none !important;
}

.product-type-gift-card .ywgc-form-preview-from-to-container {
    font-size: 14px !important;
    line-height: 1.7 !important;
    color: #334155 !important;
}

.product-type-gift-card .ywgc-form-preview-title {
    font-weight: 700 !important;
    color: #002B49 !important;
    margin-right: 6px !important;
}

.product-type-gift-card .selected_image_parent {
    border-radius: 16px !important;
    overflow: hidden !important;
    box-shadow: 0 8px 24px rgba(0, 43, 73, 0.08) !important;
    margin-bottom: 20px !important;
}

.product-type-gift-card .selected_image_parent img {
    border-radius: 16px !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
}

/* 5. Título y Precio del producto (columna derecha) */
.product-type-gift-card .product_title {
    color: #002B49 !important;
    font-size: clamp(28px, 3.2vw, 38px) !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    margin: 0 0 10px 0 !important;
    letter-spacing: -0.02em !important;
    font-family: var(--e-global-typography-primary-font-family, 'Plus Jakarta Sans', 'Montserrat'), sans-serif !important;
}

.product-type-gift-card p.price {
    font-size: 22px !important;
    font-weight: 700 !important;
    color: #002B49 !important;
    margin-bottom: 14px !important;
}

.product-type-gift-card .woocommerce-product-details__short-description p {
    font-size: 15px !important;
    line-height: 1.65 !important;
    color: #475569 !important;
    margin-bottom: 20px !important;
}

/* 6. Selector de Diseños ("Tu Imagen") */
.product-type-gift-card .step-appearance {
    margin-bottom: 20px !important;
}

.product-type-gift-card .ywgc-design-list ul {
    display: flex !important;
    gap: 12px !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.product-type-gift-card .ywgc-preset-image.ywgc-custom-picture {
    width: 110px !important;
    height: 90px !important;
    border: 1.5px dashed #cbd5e1 !important;
    border-radius: 12px !important;
    background: #f8fafc !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    position: relative !important;
    padding: 8px !important;
    box-sizing: border-box !important;
}

.product-type-gift-card .ywgc-preset-image.ywgc-custom-picture:hover {
    border-color: #002B49 !important;
    background: #f1f5f9 !important;
}

.product-type-gift-card .ywgc-custom-upload-label {
    font-size: 12px !important;
    font-weight: 600 !important;
    color: #475569 !important;
    margin-top: 4px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
}

/* 7. Selector de Importes (Elige un importe) */
.product-type-gift-card .ywgc_select_amount_title,
.product-type-gift-card .ywgc_delivery_info_title {
    width: 100% !important;
    flex: 1 1 100% !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #002B49 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
    margin: 0 0 14px 0 !important;
    font-family: var(--e-global-typography-primary-font-family, 'Plus Jakarta Sans', 'Montserrat'), sans-serif !important;
}

.product-type-gift-card .gift-cards-list {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    align-items: center !important;
    margin-bottom: 28px !important;
}

.product-type-gift-card .gift-cards-list button.ywgc-amount-buttons,
.product-type-gift-card .ywgc-predefined-amount-button.ywgc-amount-buttons {
    background: #f8fafc !important;
    border: 1.5px solid #e2e8f0 !important;
    border-radius: 10px !important;
    color: #002B49 !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    padding: 10px 18px !important;
    cursor: pointer !important;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.02) !important;
    font-family: var(--e-global-typography-primary-font-family, 'Plus Jakarta Sans', 'Montserrat'), sans-serif !important;
    margin: 0 !important;
}

.product-type-gift-card .gift-cards-list button.ywgc-amount-buttons:hover,
.product-type-gift-card .ywgc-predefined-amount-button.ywgc-amount-buttons:hover {
    border-color: #002B49 !important;
    background: #ffffff !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 10px rgba(0, 43, 73, 0.08) !important;
}

.product-type-gift-card .gift-cards-list button.ywgc-amount-buttons.selected_button,
.product-type-gift-card .ywgc-predefined-amount-button.ywgc-amount-buttons.selected_button {
    background: #002B49 !important;
    color: #ffffff !important;
    border-color: #002B49 !important;
    box-shadow: 0 4px 14px rgba(0, 43, 73, 0.22) !important;
    transform: translateY(-1px) !important;
}

/* Selector de Importe Personalizado */
.product-type-gift-card .gift-cards-list .ywgc-manual-amount-container.ywgc-manual-amount {
    min-width: 155px !important;
    height: 44px !important;
    padding: 0 16px !important;
    border-radius: 10px !important;
    border: 1.5px solid #e2e8f0 !important;
    background: #f8fafc !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.02) !important;
}

/* Hover inactivo */
.product-type-gift-card .gift-cards-list .ywgc-manual-amount-container.ywgc-manual-amount:not(.selected_button):not(:focus-within):hover {
    border-color: #002B49 !important;
    background: #ffffff !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 10px rgba(0, 43, 73, 0.08) !important;
}

/* Estado Inactivo (texto azul marino) */
.product-type-gift-card .gift-cards-list .ywgc-manual-amount-container:not(.selected_button):not(:focus-within) #ywgc-manual-amount {
    color: #002B49 !important;
    -webkit-text-fill-color: #002B49 !important;
}

.product-type-gift-card .gift-cards-list .ywgc-manual-amount-container:not(.selected_button):not(:focus-within) #ywgc-manual-amount::placeholder {
    color: #64748b !important;
    -webkit-text-fill-color: #64748b !important;
}

.product-type-gift-card .gift-cards-list .ywgc-manual-amount-container:not(.selected_button):not(:focus-within) .ywgc-manual-currency-symbol {
    color: #002B49 !important;
}

/* Estado ACTIVO o EN FOCO (fondo azul marino y texto blanco) */
.product-type-gift-card .gift-cards-list .ywgc-manual-amount-container.selected_button,
.product-type-gift-card .gift-cards-list button.ywgc-manual-amount-container.selected_button,
.product-type-gift-card .gift-cards-list .ywgc-manual-amount-container:focus-within {
    background: #002B49 !important;
    border-color: #002B49 !important;
    box-shadow: 0 4px 14px rgba(0, 43, 73, 0.22) !important;
    transform: translateY(-1px) !important;
}

.product-type-gift-card .gift-cards-list .ywgc-manual-amount-container.selected_button #ywgc-manual-amount,
.product-type-gift-card .gift-cards-list .ywgc-manual-amount-container.selected_button input,
.product-type-gift-card .gift-cards-list .ywgc-manual-amount-container:focus-within #ywgc-manual-amount,
.product-type-gift-card .gift-cards-list .ywgc-manual-amount-container:focus-within input {
    color: #ffffff !important;
    caret-color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

.product-type-gift-card .gift-cards-list .ywgc-manual-amount-container.selected_button #ywgc-manual-amount::placeholder,
.product-type-gift-card .gift-cards-list .ywgc-manual-amount-container.selected_button input::placeholder,
.product-type-gift-card .gift-cards-list .ywgc-manual-amount-container:focus-within #ywgc-manual-amount::placeholder,
.product-type-gift-card .gift-cards-list .ywgc-manual-amount-container:focus-within input::placeholder {
    color: rgba(255, 255, 255, 0.85) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, 0.85) !important;
}

.product-type-gift-card .gift-cards-list .ywgc-manual-amount-container.selected_button .ywgc-manual-currency-symbol,
.product-type-gift-card .gift-cards-list .ywgc-manual-amount-container:focus-within .ywgc-manual-currency-symbol {
    color: #ffffff !important;
    background: transparent !important;
}

/* Envoltorio e input */
.product-type-gift-card #ywgc-manual-amount-div-wrapper {
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.product-type-gift-card #ywgc-manual-amount {
    border: none !important;
    outline: none !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    background: transparent !important;
    padding: 0 !important;
    text-align: center !important;
    font-family: var(--e-global-typography-primary-font-family, 'Plus Jakarta Sans', 'Montserrat'), sans-serif !important;
    width: 100% !important;
    transition: color 0.15s ease !important;
}

.product-type-gift-card #ywgc-manual-amount:placeholder-shown ~ .ywgc-manual-currency-symbol {
    display: none !important;
}

.product-type-gift-card #ywgc-manual-amount:not(:placeholder-shown) ~ .ywgc-manual-currency-symbol {
    display: inline-block !important;
}

.product-type-gift-card .ywgc-manual-currency-symbol {
    position: static !important;
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    margin-left: 4px !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
}

/* ==========================================================================
   8. FORMULARIO DE ENTREGA (INFORMACIÓN DE ENTREGA)
   ========================================================================== */
.product-type-gift-card .gift-card-content-editor.step-content {
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 16px !important;
    padding: 22px 24px !important;
    margin-bottom: 16px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 18px !important;
}

/* Desactivar pseudo-elementos clearfix que actúan como flex items fantasma */
.product-type-gift-card .gift-card-content-editor.step-content::before,
.product-type-gift-card .gift-card-content-editor.step-content::after {
    display: none !important;
    content: none !important;
}

/* Fila 1: Nombre y Correo electrónico (cubren 100% con gap de 20px) */
.product-type-gift-card .ywgc-single-recipient {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 20px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.product-type-gift-card .ywgc-single-recipient::before,
.product-type-gift-card .ywgc-single-recipient::after {
    display: none !important;
    content: none !important;
}

.product-type-gift-card .ywgc-recipient-name,
.product-type-gift-card .ywgc-recipient-email {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

/* Fila 2: Mensaje (cubre 100% de la fila) */
.product-type-gift-card .ywgc-message {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

.product-type-gift-card .ywgc-message::before,
.product-type-gift-card .ywgc-message::after {
    display: none !important;
    content: none !important;
}

/* Fila 3: Entrega el y Tu nombre (cubren 100% con gap de 20px) */
.product-type-gift-card .ywgc-send-and-delivery-container {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 20px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.product-type-gift-card .ywgc-send-and-delivery-container::before,
.product-type-gift-card .ywgc-send-and-delivery-container::after {
    display: none !important;
    content: none !important;
}

.product-type-gift-card .ywgc-postdated,
.product-type-gift-card .ywgc-sender-name {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

.product-type-gift-card .ywgc-label-above-input label {
    display: block !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #334155 !important;
    margin: 0 0 6px 0 !important;
}

.product-type-gift-card .gift-card-content-editor input[type="text"],
.product-type-gift-card .gift-card-content-editor input[type="email"],
.product-type-gift-card .gift-card-content-editor textarea {
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
    box-sizing: border-box !important;
    border: 1.5px solid #cbd5e1 !important;
    border-radius: 10px !important;
    padding: 10px 14px !important;
    font-size: 14px !important;
    color: #0f172a !important;
    background: #ffffff !important;
    margin: 0 !important;
    transition: all 0.2s ease !important;
    font-family: inherit !important;
}

.product-type-gift-card .gift-card-content-editor input:focus,
.product-type-gift-card .gift-card-content-editor textarea:focus {
    border-color: #002B49 !important;
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(0, 43, 73, 0.1) !important;
    background: #ffffff !important;
}

.product-type-gift-card .gift-card-content-editor textarea {
    min-height: 80px !important;
    height: 80px !important;
    resize: vertical !important;
}

/* ==========================================================================
   9. BOTÓN AÑADIR AL CARRITO (SIN SELECTOR DE UNIDADES Y CERCANO A LA CARD)
   ========================================================================== */
.product-type-gift-card .quantity,
body.postid-1499 .quantity,
.product-type-gift-card .gift_card_template_button .quantity,
body.postid-1499 .gift_card_template_button .quantity {
    display: none !important;
}

.product-type-gift-card .gift_card_template_button.variations_button {
    display: flex !important;
    align-items: center !important;
    margin-top: 0 !important;
    margin-bottom: 20px !important;
    padding-top: 0 !important;
}

.product-type-gift-card .gift_card_template_button .single_add_to_cart_button {
    height: 48px !important;
    background: #002B49 !important;
    color: #ffffff !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    padding: 0 36px !important;
    border-radius: 10px !important;
    border: none !important;
    cursor: pointer !important;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
    box-shadow: 0 4px 14px rgba(0, 43, 73, 0.18) !important;
    width: auto !important;
    min-width: 240px !important;
}

.product-type-gift-card .gift_card_template_button .single_add_to_cart_button:hover {
    background: #001f35 !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 8px 20px rgba(0, 43, 73, 0.25) !important;
}

/* Ocultar meta de categoría repetitiva */
.product-type-gift-card .product_meta {
    margin-top: 18px !important;
    padding-top: 14px !important;
    border-top: 1px solid #f1f5f9 !important;
    font-size: 13px !important;
    color: #94a3b8 !important;
}

.product-type-gift-card .product_meta a {
    color: #64748b !important;
    text-decoration: none !important;
}

/* ==========================================================================
   10. SECCIÓN DE INFORMACIÓN: CARD HORIZONTAL (SIN PESTAÑAS NI VALORACIONES)
   ========================================================================== */

/* Contenedor wrapper de pestañas de WooCommerce neutralizado */
.product-type-gift-card .woocommerce-tabs,
body.postid-1499 .woocommerce-tabs {
    flex: 1 1 100% !important;
    width: 100% !important;
    margin-top: clamp(36px, 5vw, 64px) !important;
    padding-top: 0 !important;
    border-top: none !important;
}

/* Ocultar barra de navegación de pestañas (sin botones ni pestañas) */
.product-type-gift-card .woocommerce-tabs ul.tabs,
body.postid-1499 .woocommerce-tabs ul.tabs {
    display: none !important;
}

/* Ocultar sección y formularios de valoraciones */
.product-type-gift-card #reviews,
.product-type-gift-card #tab-reviews,
body.postid-1499 #reviews,
body.postid-1499 #tab-reviews {
    display: none !important;
}

/* Ocultar título genérico "Descripción" por defecto de WooCommerce */
.product-type-gift-card .woocommerce-Tabs-panel--description > h2:first-child,
body.postid-1499 .woocommerce-Tabs-panel--description > h2:first-child {
    display: none !important;
}

/* Desplegar panel de descripción directo y fluido */
.product-type-gift-card .woocommerce-tabs .woocommerce-Tabs-panel--description,
body.postid-1499 .woocommerce-tabs .woocommerce-Tabs-panel--description {
    display: block !important;
    padding: 0 !important;
    border: none !important;
    background: transparent !important;
}

/* Card Horizontal de Información con fondo Gris Perla y padding 100% igual en todos los lados */
.product-type-gift-card .lv-giftcard-card {
    background-color: var(--e-global-color-1df42862, #f8fafc) !important;
    border: 1.5px solid #e2e8f0 !important;
    border-radius: 24px !important;
    padding: clamp(24px, 3.2vw, 36px) !important;
    box-shadow: 0 4px 20px rgba(0, 43, 73, 0.03) !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* Asegurar que no haya párrafos vacíos ni márgenes residuales abajo */
.product-type-gift-card .lv-giftcard-card p:empty {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.product-type-gift-card .lv-giftcard-card > :last-child {
    margin-bottom: 0 !important;
}

.product-type-gift-card .lv-giftcard-card-header {
    margin-bottom: clamp(20px, 2.8vw, 28px) !important;
    max-width: 920px !important;
}

.product-type-gift-card .lv-giftcard-badge {
    display: inline-flex !important;
    align-items: center !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.08em !important;
    color: #002B49 !important;
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    padding: 5px 14px !important;
    border-radius: 20px !important;
    margin-bottom: 12px !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.02) !important;
}

.product-type-gift-card .lv-giftcard-card-title {
    font-family: var(--e-global-typography-primary-font-family, 'Plus Jakarta Sans', 'Montserrat'), sans-serif !important;
    font-size: clamp(22px, 2.6vw, 30px) !important;
    font-weight: 800 !important;
    color: #002B49 !important;
    line-height: 1.25 !important;
    margin: 0 0 12px 0 !important;
    letter-spacing: -0.01em !important;
}

.product-type-gift-card .lv-giftcard-lead {
    font-size: 15px !important;
    line-height: 1.65 !important;
    color: #475569 !important;
    margin: 0 !important;
}

.product-type-gift-card .lv-giftcard-lead strong {
    color: #002B49 !important;
}

/* Rejilla de 3 columnas horizontales */
.product-type-gift-card .lv-giftcard-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 20px !important;
    align-items: stretch !important;
    margin-bottom: 0 !important;
}

.product-type-gift-card .lv-giftcard-box {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 18px !important;
    padding: clamp(20px, 2.5vw, 26px) !important;
    display: flex !important;
    flex-direction: column !important;
    box-shadow: 0 2px 10px rgba(0, 43, 73, 0.02) !important;
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease !important;
}

.product-type-gift-card .lv-giftcard-box:hover {
    transform: translateY(-2px) !important;
    border-color: #cbd5e1 !important;
    box-shadow: 0 8px 24px rgba(0, 43, 73, 0.06) !important;
}

.product-type-gift-card .lv-giftcard-box-header {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    margin-bottom: 16px !important;
    padding-bottom: 12px !important;
    border-bottom: 1.5px solid #f1f5f9 !important;
}

.product-type-gift-card .lv-giftcard-step-num {
    font-size: 13px !important;
    font-weight: 800 !important;
    color: #002B49 !important;
    background: var(--e-global-color-1df42862, #f8fafc) !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px !important;
    padding: 3px 9px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
}

.product-type-gift-card .lv-giftcard-box-title {
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #002B49 !important;
    margin: 0 !important;
    font-family: var(--e-global-typography-primary-font-family, 'Plus Jakarta Sans', 'Montserrat'), sans-serif !important;
}

.product-type-gift-card .lv-giftcard-box ol,
.product-type-gift-card .lv-giftcard-box ul {
    margin: 0 !important;
    padding-left: 18px !important;
    font-size: 14px !important;
    line-height: 1.65 !important;
    color: #334155 !important;
    flex: 1 1 auto !important;
}

.product-type-gift-card .lv-giftcard-box li {
    margin-bottom: 10px !important;
}

.product-type-gift-card .lv-giftcard-box li:last-child {
    margin-bottom: 0 !important;
}

.product-type-gift-card .lv-giftcard-box li strong {
    color: #002B49 !important;
}

/* Responsivo para tablets y móviles */
@media (max-width: 991px) {
    .product-type-gift-card .lv-giftcard-grid {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
    }
}

@media (max-width: 767px) {
    .product-type-gift-card {
        display: block !important;
    }
    .product-type-gift-card .woocommerce-product-gallery,
    .product-type-gift-card .summary.entry-summary {
        max-width: 100% !important;
    }
    .product-type-gift-card .gift-cards-list {
        gap: 8px !important;
    }
    .product-type-gift-card .gift-cards-list button.ywgc-amount-buttons,
    .product-type-gift-card .ywgc-predefined-amount-button.ywgc-amount-buttons {
        flex: 1 1 calc(33.333% - 8px) !important;
        text-align: center !important;
        padding: 10px 8px !important;
    }
    .product-type-gift-card .gift-cards-list .ywgc-manual-amount-container.ywgc-manual-amount {
        flex: 1 1 100% !important;
    }
    .product-type-gift-card .gift_card_template_button .single_add_to_cart_button {
        max-width: 100% !important;
        width: 100% !important;
    }
    .product-type-gift-card .gift-card-content-editor.step-content {
        padding: 18px 16px !important;
        gap: 16px !important;
    }
    .product-type-gift-card .lv-giftcard-card {
        padding: 24px !important;
        border-radius: 20px !important;
    }
}

@media (max-width: 540px) {
    .product-type-gift-card .ywgc-single-recipient,
    .product-type-gift-card .ywgc-send-and-delivery-container {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
    }
}

/* ==========================================================================
   MODAL POPUP GIFT CARD: "REGALA ESTA ACTIVIDAD" (YITH WOOCOMMERCE GIFT CARDS)
   - Layout en 2 columnas en escritorio, pantallas grandes y laptop (>= 768px)
   - Ancho expandido a 1440px maximo (identico al ancho de las secciones del sitio)
   - Espaciado y padding basados en las variables de seccion de La Veta: clamp(36px, 4vw, 56px) clamp(24px, 4vw, 64px)
   - Eliminacion total de sombras en la tarjeta de previsualizacion, miniatura y su div contenedor padre
   - Miniatura de producto sugerido nitida en alta resolucion
   - Integracion con Tokens y Sistema de Diseno de La Veta
   ========================================================================== */

#yith-ywgc-gift-this-product-modal-container {
    z-index: 999999 !important;
}

.yith-ywgc-gift-this-product-modal-overlay {
    background: rgba(1, 25, 50, 0.65) !important;
    backdrop-filter: blur(6px) !important;
    -webkit-backdrop-filter: blur(6px) !important;
    z-index: 999998 !important;
}

.yith-ywgc-gift-this-product-modal-opened .yith-ywgc-gift-this-product-modal-wrapper,
#yith-ywgc-gift-this-product-modal-container .yith-ywgc-gift-this-product-modal-wrapper {
    background: #ffffff !important;
    border-radius: 24px !important;
    box-shadow: 0 35px 70px -15px rgba(1, 55, 109, 0.35) !important;
    border: 1px solid rgba(1, 55, 109, 0.08) !important;
    overflow-y: auto !important;
    scrollbar-width: thin !important;
    scrollbar-color: #cbd5e1 transparent !important;
    box-sizing: border-box !important;
}

/* Boton de Cierre */
#yith-ywgc-gift-this-product-modal-container .yith-ywgc-gift-this-product-modal-close {
    top: 24px !important;
    right: 28px !important;
    width: 38px !important;
    height: 38px !important;
    line-height: 36px !important;
    background: #f1f5f9 !important;
    border-radius: 50% !important;
    color: #01376d !important;
    font-size: 22px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.2s ease !important;
    cursor: pointer !important;
    z-index: 1000000 !important;
}

#yith-ywgc-gift-this-product-modal-container .yith-ywgc-gift-this-product-modal-close:hover {
    background: #01376d !important;
    color: #ffffff !important;
    transform: rotate(90deg) !important;
}

/* Titulo superior del Modal */
.yith-ywgc-gift-this-product-modal-content-wrapper .ywgc-gift-this-product-modal-title {
    font-family: var(--e-global-typography-primary-font-family, 'Bricolage Grotesque'), sans-serif !important;
    font-size: clamp(24px, 2.5vw, 32px) !important;
    font-weight: 800 !important;
    color: var(--e-global-color-primary, #01376d) !important;
    text-align: center !important;
    margin: 0 0 clamp(24px, 3vw, 40px) 0 !important;
    line-height: 1.2 !important;
}

/* Disposicion de 2 Columnas en Escritorio, Pantallas Grandes y Laptop (>= 768px) */
@media (min-width: 768px) {
    .yith-ywgc-gift-this-product-modal-opened .yith-ywgc-gift-this-product-modal-wrapper,
    #yith-ywgc-gift-this-product-modal-container .yith-ywgc-gift-this-product-modal-wrapper {
        width: min(1440px, 94vw) !important;
        max-width: 1440px !important;
        min-width: min(768px, 94vw) !important;
        max-height: 90vh !important;
        padding: clamp(36px, 4vw, 56px) clamp(24px, 4vw, 64px) !important;
        margin: auto !important;
    }

    .yith-ywgc-gift-this-product-modal-wrapper-region,
    .yith-ywgc-gift-this-product-modal,
    .yith-ywgc-gift-this-product-modal-inner,
    .yith-ywgc-gift-this-product-modal-content-wrapper,
    .yith-ywgc-gift-this-product-modal-content-wrapper [id*="gift-this-product"] {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        box-sizing: border-box !important;
    }

    /* Contenedor Flex de 2 Columnas (CERO WRAP) */
    .yith-ywgc-gift-this-product-modal-content-wrapper div.product,
    .yith-ywgc-gift-this-product-modal-content-wrapper div.product-type-gift-card,
    .yith-ywgc-gift-this-product-modal-content-wrapper [id*="gift-this-product"] div.product,
    .yith-ywgc-gift-this-product-modal-wrapper div.product,
    #yith-ywgc-gift-this-product-modal-container div.product,
    #yith-ywgc-gift-this-product-modal-container div.product-type-gift-card,
    #yith-ywgc-gift-this-product-modal-container [id^="product-"],
    body.single-product .yith-ywgc-gift-this-product-modal-wrapper div.product {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: flex-start !important;
        justify-content: space-between !important;
        gap: clamp(24px, 3.5vw, 56px) !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        float: none !important;
        clear: both !important;
        box-sizing: border-box !important;
    }

    /* Columna Izquierda: Tarjeta / Previsualizacion */
    .yith-ywgc-gift-this-product-modal-content-wrapper div.product .woocommerce-product-gallery,
    .yith-ywgc-gift-this-product-modal-content-wrapper [id^="product-"] .woocommerce-product-gallery,
    .yith-ywgc-gift-this-product-modal-wrapper div.product .woocommerce-product-gallery,
    #yith-ywgc-gift-this-product-modal-container .woocommerce-product-gallery {
        display: block !important;
        flex: 0 0 calc(48% - 15px) !important;
        width: calc(48% - 15px) !important;
        max-width: calc(48% - 15px) !important;
        min-width: 0 !important;
        float: none !important;
        position: sticky !important;
        top: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        opacity: 1 !important;
        box-sizing: border-box !important;
    }

    /* Columna Derecha: Formulario */
    .yith-ywgc-gift-this-product-modal-content-wrapper div.product .summary.entry-summary,
    .yith-ywgc-gift-this-product-modal-content-wrapper [id^="product-"] .summary.entry-summary,
    .yith-ywgc-gift-this-product-modal-wrapper div.product .summary.entry-summary,
    #yith-ywgc-gift-this-product-modal-container .summary.entry-summary {
        display: block !important;
        flex: 0 0 calc(52% - 15px) !important;
        width: calc(52% - 15px) !important;
        max-width: calc(52% - 15px) !important;
        min-width: 0 !important;
        float: none !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin: 0 !important;
        box-sizing: border-box !important;
    }
}

/* El formulario interno se despliega en bloque limpio */
.yith-ywgc-gift-this-product-modal-wrapper form.cart,
.yith-ywgc-gift-this-product-modal-wrapper form.gift-cards_form,
#yith-ywgc-gift-this-product-modal-container form.cart,
#yith-ywgc-gift-this-product-modal-container form.gift-cards_form {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    clear: both !important;
    box-sizing: border-box !important;
}

/* ELIMINACION TOTAL DE SOMBRAS DEL CARD DONDE SE VE LA MINIATURA / GIFTCARD Y DE SU DIV PADRE */
.yith-ywgc-gift-this-product-modal-wrapper .woocommerce-product-gallery,
.yith-ywgc-gift-this-product-modal-wrapper .woocommerce-product-gallery *,
.yith-ywgc-gift-this-product-modal-wrapper .ywgc-main-form-preview-container,
.yith-ywgc-gift-this-product-modal-wrapper .ywgc-main-form-preview-container:hover,
.yith-ywgc-gift-this-product-modal-wrapper .ywgc-gifted-product-container,
.yith-ywgc-gift-this-product-modal-wrapper .ywgc-gifted-product-container *,
.yith-ywgc-gift-this-product-modal-wrapper .selected_image_parent,
.yith-ywgc-gift-this-product-modal-wrapper .selected_image_parent *,
.yith-ywgc-gift-this-product-modal-wrapper .ywgc-product-suggested,
.yith-ywgc-gift-this-product-modal-wrapper .ywgc-product-image,
.yith-ywgc-gift-this-product-modal-wrapper .ywgc-product-image img,
#yith-ywgc-gift-this-product-modal-container .woocommerce-product-gallery,
#yith-ywgc-gift-this-product-modal-container .woocommerce-product-gallery *,
#yith-ywgc-gift-this-product-modal-container .ywgc-main-form-preview-container,
#yith-ywgc-gift-this-product-modal-container .ywgc-main-form-preview-container:hover,
#yith-ywgc-gift-this-product-modal-container .ywgc-gifted-product-container,
#yith-ywgc-gift-this-product-modal-container .ywgc-gifted-product-container *,
#yith-ywgc-gift-this-product-modal-container .selected_image_parent,
#yith-ywgc-gift-this-product-modal-container .selected_image_parent *,
#yith-ywgc-gift-this-product-modal-container .ywgc-product-suggested,
#yith-ywgc-gift-this-product-modal-container .ywgc-product-image,
#yith-ywgc-gift-this-product-modal-container .ywgc-product-image img,
.yith-ywgc-gift-this-product-modal-content-wrapper .woocommerce-product-gallery,
.yith-ywgc-gift-this-product-modal-content-wrapper .woocommerce-product-gallery *,
.yith-ywgc-gift-this-product-modal-content-wrapper .ywgc-main-form-preview-container,
.yith-ywgc-gift-this-product-modal-content-wrapper .ywgc-main-form-preview-container:hover,
.yith-ywgc-gift-this-product-modal-content-wrapper .ywgc-gifted-product-container,
.yith-ywgc-gift-this-product-modal-content-wrapper .ywgc-gifted-product-container *,
.yith-ywgc-gift-this-product-modal-content-wrapper .selected_image_parent,
.yith-ywgc-gift-this-product-modal-content-wrapper .selected_image_parent *,
.yith-ywgc-gift-this-product-modal-content-wrapper .ywgc-product-suggested,
.yith-ywgc-gift-this-product-modal-content-wrapper .ywgc-product-image,
.yith-ywgc-gift-this-product-modal-content-wrapper .ywgc-product-image img {
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
    filter: none !important;
}

.yith-ywgc-gift-this-product-modal-content-wrapper .woocommerce-product-gallery__image img {
    border-radius: 16px !important;
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
    width: 100% !important;
    height: auto !important;
    object-fit: cover !important;
}

.yith-ywgc-gift-this-product-modal-content-wrapper .ywgc-main-form-preview-container {
    background: #f8fafc !important;
    border: 1.5px solid #e2e8f0 !important;
    border-radius: 18px !important;
    margin-top: 0 !important;
    overflow: hidden !important;
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
}

.yith-ywgc-gift-this-product-modal-content-wrapper .ywgc-form-preview-title-container {
    padding: 16px 20px 0 20px !important;
    margin: 0 !important;
}

.yith-ywgc-gift-this-product-modal-content-wrapper .ywgc-form-preview-title {
    font-family: var(--e-global-typography-primary-font-family, 'Bricolage Grotesque'), sans-serif !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #01376d !important;
}

.yith-ywgc-gift-this-product-modal-content-wrapper .ywgc-form-preview-from-to-container,
.yith-ywgc-gift-this-product-modal-content-wrapper .ywgc-form-preview-message-container {
    padding: 10px 20px !important;
    margin: 0 !important;
    font-size: 13.5px !important;
    color: #475569 !important;
}

.yith-ywgc-gift-this-product-modal-content-wrapper .ywgc-gifted-product-container {
    background: #ffffff !important;
    border-top: 1.5px solid #e2e8f0 !important;
    padding: 16px 20px !important;
    margin: 0 !important;
    border-radius: 0 0 18px 18px !important;
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
}

.yith-ywgc-gift-this-product-modal-content-wrapper .ywgc-suggested-text {
    font-size: 12.5px !important;
    font-weight: 600 !important;
    color: #64748b !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    margin-bottom: 10px !important;
}

.yith-ywgc-gift-this-product-modal-content-wrapper .ywgc-product-suggested {
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
    margin-top: 0 !important;
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
}

/* Miniatura nitida de alta resolucion */
.yith-ywgc-gift-this-product-modal-content-wrapper .ywgc-product-suggested .ywgc-product-image,
.yith-ywgc-gift-this-product-modal-content-wrapper .ywgc-product-suggested .ywgc-product-image img {
    width: 80px !important;
    height: 80px !important;
    min-width: 80px !important;
    max-width: 80px !important;
    border-radius: 12px !important;
    object-fit: cover !important;
    border: 1px solid #e2e8f0 !important;
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
    image-rendering: -webkit-optimize-contrast !important;
}

.yith-ywgc-gift-this-product-modal-content-wrapper .ywgc-product-suggested .ywgc-product-info {
    margin: 0 !important;
}

.yith-ywgc-gift-this-product-modal-content-wrapper .ywgc-product-suggested .ywgc-product-title {
    font-family: var(--e-global-typography-primary-font-family, 'Bricolage Grotesque'), sans-serif !important;
    font-size: 15.5px !important;
    font-weight: 700 !important;
    color: #01376d !important;
    line-height: 1.3 !important;
    margin-bottom: 4px !important;
}

.yith-ywgc-gift-this-product-modal-content-wrapper .ywgc-product-suggested .ywgc-product-price {
    font-family: var(--e-global-typography-text-font-family, 'Montserrat'), sans-serif !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #00bfff !important;
}

/* Columna Derecha: Formulario */
.yith-ywgc-gift-this-product-modal-content-wrapper .gift-cards_form h3 {
    font-family: var(--e-global-typography-primary-font-family, 'Bricolage Grotesque'), sans-serif !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #01376d !important;
    margin-top: 0 !important;
    margin-bottom: 16px !important;
}

.yith-ywgc-gift-this-product-modal-content-wrapper .ywgc-single-recipient,
.yith-ywgc-gift-this-product-modal-content-wrapper .ywgc-send-and-delivery-container {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 16px !important;
    margin-bottom: 14px !important;
}

.yith-ywgc-gift-this-product-modal-content-wrapper .ywgc-label-above-input label {
    font-family: var(--e-global-typography-text-font-family, 'Montserrat'), sans-serif !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #1e293b !important;
    margin-bottom: 6px !important;
    display: block !important;
}

.yith-ywgc-gift-this-product-modal-content-wrapper input[type="text"],
.yith-ywgc-gift-this-product-modal-content-wrapper input[type="email"],
.yith-ywgc-gift-this-product-modal-content-wrapper textarea {
    width: 100% !important;
    padding: 12px 14px !important;
    border: 1.5px solid #e2e8f0 !important;
    border-radius: 12px !important;
    font-size: 14px !important;
    color: #0f172a !important;
    background: #f8fafc !important;
    transition: all 0.2s ease !important;
    box-sizing: border-box !important;
    margin: 0 !important;
}

.yith-ywgc-gift-this-product-modal-content-wrapper input:focus,
.yith-ywgc-gift-this-product-modal-content-wrapper textarea:focus {
    border-color: #00bfff !important;
    background: #ffffff !important;
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(0, 191, 255, 0.15) !important;
}

/* Boton Anadir al Carrito del Modal */
.yith-ywgc-gift-this-product-modal-content-wrapper .gift_card_template_button .single_add_to_cart_button {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    background-color: var(--e-global-color-primary, #01376d) !important;
    color: var(--e-global-color-462f2d23, #ffffff) !important;
    font-family: var(--e-global-typography-text-font-family, 'Montserrat'), sans-serif !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    letter-spacing: 0.3px !important;
    padding: 15px 28px !important;
    border-radius: 9999px !important;
    border: 1.5px solid var(--e-global-color-primary, #01376d) !important;
    text-align: center !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    margin-top: 20px !important;
    box-shadow: 0 8px 20px -4px rgba(1, 55, 109, 0.25) !important;
}

.yith-ywgc-gift-this-product-modal-content-wrapper .gift_card_template_button .single_add_to_cart_button:hover {
    background-color: var(--e-global-color-secondary, #00bfff) !important;
    border-color: var(--e-global-color-secondary, #00bfff) !important;
    color: #ffffff !important;
    box-shadow: 0 10px 24px -4px rgba(0, 191, 255, 0.35) !important;
    transform: translateY(-1px) !important;
}

/* Adaptabilidad Movil (< 768px) */
@media (max-width: 767px) {
    .yith-ywgc-gift-this-product-modal-opened .yith-ywgc-gift-this-product-modal-wrapper,
    #yith-ywgc-gift-this-product-modal-container .yith-ywgc-gift-this-product-modal-wrapper {
        width: 95vw !important;
        max-width: 95vw !important;
        min-width: unset !important;
        padding: 24px 16px !important;
        max-height: 92vh !important;
        border-radius: 18px !important;
    }

    .yith-ywgc-gift-this-product-modal-content-wrapper div.product,
    .yith-ywgc-gift-this-product-modal-content-wrapper div.product-type-gift-card,
    .yith-ywgc-gift-this-product-modal-wrapper div.product,
    #yith-ywgc-gift-this-product-modal-container div.product {
        display: flex !important;
        flex-direction: column !important;
        gap: 20px !important;
    }

    .yith-ywgc-gift-this-product-modal-content-wrapper div.product .woocommerce-product-gallery,
    .yith-ywgc-gift-this-product-modal-content-wrapper div.product .summary.entry-summary,
    .yith-ywgc-gift-this-product-modal-wrapper div.product .woocommerce-product-gallery,
    .yith-ywgc-gift-this-product-modal-wrapper div.product .summary.entry-summary {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 100% !important;
        position: static !important;
    }

    .yith-ywgc-gift-this-product-modal-content-wrapper .ywgc-single-recipient,
    .yith-ywgc-gift-this-product-modal-content-wrapper .ywgc-send-and-delivery-container {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }
}
