/*
Theme Name:   Flatsome Child — Tifoso Store
Theme URI:    https://tifosostore.com
Description:  Child theme de Flatsome para Tifoso Store. Paleta dark premium
              (fondo casi negro + dorado + rojo) inspirada en el logo.
              Tipografía: Oswald (titulares) + Inter (cuerpo).
Author:       Tifoso Store
Template:     flatsome
Version:      0.6.0
Text Domain:  flatsome-child
*/

/* ============================================================
   Variables globales — Paleta Tifoso Store Dark Premium
   ============================================================ */
:root {
    --tifoso-bg-primary: #0A0A0D;
    --tifoso-bg-secondary: #141418;
    --tifoso-bg-tertiary: #1F1F24;
    --tifoso-gold: #D4A944;
    --tifoso-gold-hover: #E8C067;
    --tifoso-gold-muted: #8B7340;
    --tifoso-red: #B8232B;
    --tifoso-red-hover: #D4333C;
    --tifoso-text-primary: #F5F5F0;
    --tifoso-text-secondary: #A8A8A0;
    --tifoso-text-muted: #6A6A65;
    --tifoso-border: #2A2A30;
    --tifoso-success: #3DAA5B;
    --tifoso-error: #E04848;
    --tifoso-transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}

/* ============================================================
   Base body + tipografía
   ============================================================ */
body,
.page-wrapper,
#wrapper {
    background-color: var(--tifoso-bg-primary) !important;
    color: var(--tifoso-text-primary) !important;
    font-family: 'Inter', 'Manrope', -apple-system, BlinkMacSystemFont, sans-serif;
    font-variant-numeric: tabular-nums;
}

h1, h2, h3, h4, h5, h6,
.heading-font,
.site-title,
.entry-title,
.product_title,
.product-title,
.woocommerce-loop-product__title,
.box-text-inner h1, .box-text-inner h2, .box-text-inner h3 {
    font-family: 'Oswald', 'Saira Condensed', sans-serif !important;
    font-weight: 600 !important;
    color: var(--tifoso-text-primary) !important;
    letter-spacing: 0.01em;
    text-transform: uppercase;
}

p, li, .woocommerce-Tabs-panel p {
    color: var(--tifoso-text-primary);
}

a { color: var(--tifoso-gold); text-decoration: none; transition: var(--tifoso-transition); }
a:hover { color: var(--tifoso-gold-hover); }

/* ============================================================
   Flatsome Header
   ============================================================ */
.header,
.header-main,
.header-wrapper,
.header-top,
#header {
    background-color: var(--tifoso-bg-primary) !important;
    border-bottom: 1px solid var(--tifoso-border) !important;
}

.header-top {
    background-color: var(--tifoso-bg-secondary) !important;
    color: var(--tifoso-gold) !important;
    font-size: 0.82rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.header-nav li > a,
.nav > li > a {
    color: var(--tifoso-text-primary) !important;
    font-family: 'Oswald', sans-serif !important;
    font-weight: 500 !important;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    font-size: 0.9rem;
}

.header-nav li > a:hover,
.nav > li.current-menu-item > a {
    color: var(--tifoso-gold) !important;
}

.header-block-block-1,
.header-cart-title,
.cart-item .cart-counter {
    color: var(--tifoso-gold) !important;
}

.header-cart .cart-icon strong {
    color: var(--tifoso-gold) !important;
    border-color: var(--tifoso-gold) !important;
}

/* ============================================================
   Flatsome Product Cards (box-shop)
   ============================================================ */
.box-shop .box-image,
.product-small .box-image,
.col .col-inner {
    background-color: var(--tifoso-bg-secondary) !important;
    border: 1px solid var(--tifoso-border) !important;
    border-radius: 4px !important;
    transition: var(--tifoso-transition) !important;
}

.box-shop:hover .box-image,
.product-small:hover .box-image,
.col:hover .col-inner {
    border-color: var(--tifoso-gold) !important;
    box-shadow: 0 4px 24px rgba(212, 169, 68, 0.15) !important;
    transform: translateY(-2px);
}

.box-text,
.product-small .box-text {
    background-color: var(--tifoso-bg-secondary) !important;
    padding: 1rem !important;
}

.woocommerce-loop-product__title,
.name.product-title,
.product-small .name {
    color: var(--tifoso-text-primary) !important;
    font-family: 'Oswald', sans-serif !important;
    font-size: 1rem !important;
    font-weight: 500 !important;
}

.price,
.price-wrapper .price,
.woocommerce ul.products li.product .price,
.product-small .price {
    color: var(--tifoso-gold) !important;
    font-family: 'Oswald', sans-serif !important;
    font-weight: 600 !important;
    font-size: 1.25rem !important;
}

.price del,
.price del .amount {
    color: var(--tifoso-text-muted) !important;
    font-size: 0.85rem !important;
    opacity: 0.7;
}

.price ins,
.price ins .amount {
    color: var(--tifoso-gold) !important;
    text-decoration: none !important;
    font-weight: 700 !important;
}

/* ============================================================
   Botones Flatsome
   ============================================================ */
.button,
button,
input[type="submit"],
.woocommerce a.button,
.woocommerce button.button,
.woocommerce #respond input#submit,
.woocommerce-page a.button,
.woocommerce-page button.button,
.single_add_to_cart_button,
.button.primary {
    background-color: var(--tifoso-red) !important;
    color: var(--tifoso-text-primary) !important;
    border: none !important;
    border-radius: 2px !important;
    font-family: 'Oswald', sans-serif !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.1em !important;
    padding: 0.85rem 1.75rem !important;
    transition: var(--tifoso-transition) !important;
    cursor: pointer;
    box-shadow: none !important;
    text-shadow: none !important;
}

.button:hover,
button:hover,
input[type="submit"]:hover,
.single_add_to_cart_button:hover {
    background-color: var(--tifoso-red-hover) !important;
    transform: translateY(-1px);
}

.button.is-outline,
.button.secondary {
    background-color: transparent !important;
    border: 1px solid var(--tifoso-gold) !important;
    color: var(--tifoso-gold) !important;
}

.button.is-outline:hover {
    background-color: var(--tifoso-gold) !important;
    color: var(--tifoso-bg-primary) !important;
}

/* ============================================================
   Flatsome Single Product Page
   ============================================================ */
.product-page-title,
.product_title {
    color: var(--tifoso-text-primary) !important;
    font-size: 2.25rem !important;
    font-family: 'Oswald', sans-serif !important;
}

.single-product .product-info .price,
.single-product .price {
    color: var(--tifoso-gold) !important;
    font-family: 'Oswald', sans-serif !important;
    font-size: 2.25rem !important;
    font-weight: 700 !important;
}

.product-gallery-slider,
.product-gallery {
    background-color: var(--tifoso-bg-secondary) !important;
    padding: 1.5rem !important;
    border-radius: 4px !important;
}

.product-short-description {
    color: var(--tifoso-text-secondary) !important;
}

.product-tabs li.active a,
.tabbed-content .nav > li.active > a {
    color: var(--tifoso-gold) !important;
    border-bottom-color: var(--tifoso-gold) !important;
}

/* Selector talla (variaciones Flatsome) */
.variations table,
.variations select,
.variations_form select {
    background-color: var(--tifoso-bg-tertiary) !important;
    color: var(--tifoso-text-primary) !important;
    border: 1px solid var(--tifoso-border) !important;
    padding: 0.65rem 1rem !important;
    border-radius: 2px !important;
}

.variations select:focus {
    border-color: var(--tifoso-gold) !important;
    outline: none !important;
}

/* ============================================================
   Disclaimer legal (inyectado automáticamente por el MCP)
   ============================================================ */
.tifoso-disclaimer {
    margin-top: 1.5rem !important;
    padding: 1rem 1.25rem !important;
    background-color: var(--tifoso-bg-tertiary) !important;
    border-left: 3px solid var(--tifoso-gold) !important;
    border-radius: 4px !important;
    font-size: 0.85rem !important;
    color: var(--tifoso-text-secondary) !important;
    line-height: 1.5;
}

.tifoso-disclaimer strong {
    color: var(--tifoso-gold) !important;
    font-weight: 600;
}

/* ============================================================
   Badges (sale, new, hot, stock)
   ============================================================ */
.badge,
.badge-inner,
.woocommerce span.onsale,
.product-badges .badge-inner {
    background-color: var(--tifoso-red) !important;
    color: var(--tifoso-text-primary) !important;
    font-family: 'Oswald', sans-serif !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.1em !important;
    border-radius: 2px !important;
    font-size: 0.75rem !important;
}

.stock.in-stock {
    color: var(--tifoso-success) !important;
}

.stock.out-of-stock {
    color: var(--tifoso-error) !important;
}

/* ============================================================
   Trust row bajo add-to-cart
   ============================================================ */
.tifoso-trust-row {
    display: flex;
    gap: 2rem;
    padding: 1.5rem 0;
    border-top: 1px solid var(--tifoso-border);
    border-bottom: 1px solid var(--tifoso-border);
    margin: 2rem 0;
    justify-content: center;
    flex-wrap: wrap;
}

.tifoso-trust-badge {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: var(--tifoso-text-secondary);
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}

.tifoso-trust-badge svg {
    color: var(--tifoso-gold);
    width: 22px;
    height: 22px;
}

/* ============================================================
   Flatsome Footer
   ============================================================ */
.footer,
.footer-wrapper,
.absolute-footer,
#footer {
    background-color: var(--tifoso-bg-primary) !important;
    color: var(--tifoso-text-secondary) !important;
    border-top: 1px solid var(--tifoso-border) !important;
}

.footer a,
.absolute-footer a {
    color: var(--tifoso-text-secondary) !important;
}

.footer a:hover {
    color: var(--tifoso-gold) !important;
}

.footer h1, .footer h2, .footer h3,
.footer .widget-title {
    color: var(--tifoso-gold) !important;
    font-size: 1rem !important;
    letter-spacing: 0.1em !important;
}

.footer input[type="email"] {
    background-color: var(--tifoso-bg-tertiary) !important;
    color: var(--tifoso-text-primary) !important;
    border: 1px solid var(--tifoso-border) !important;
    padding: 0.75rem !important;
}

/* ============================================================
   Forms generales
   ============================================================ */
input[type="text"],
input[type="email"],
input[type="password"],
input[type="tel"],
input[type="number"],
input[type="search"],
textarea,
select {
    background-color: var(--tifoso-bg-tertiary) !important;
    color: var(--tifoso-text-primary) !important;
    border: 1px solid var(--tifoso-border) !important;
    border-radius: 2px !important;
    padding: 0.75rem 1rem !important;
    font-family: 'Inter', sans-serif !important;
}

input:focus, textarea:focus, select:focus {
    border-color: var(--tifoso-gold) !important;
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(212, 169, 68, 0.15) !important;
}

label {
    color: var(--tifoso-text-secondary) !important;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    font-size: 0.85rem;
}

/* ============================================================
   Breadcrumbs
   ============================================================ */
.woocommerce-breadcrumb,
.breadcrumbs {
    color: var(--tifoso-text-secondary) !important;
    font-size: 0.85rem !important;
    letter-spacing: 0.05em;
}

.woocommerce-breadcrumb a,
.breadcrumbs a {
    color: var(--tifoso-gold-muted) !important;
}

/* ============================================================
   Responsive
   ============================================================ */
@media (max-width: 768px) {
    h1 { font-size: 2rem; }
    h2 { font-size: 1.5rem; }
    .product_title, .product-page-title { font-size: 1.75rem !important; }
    .single-product .price { font-size: 1.75rem !important; }
}

/* ============================================================
   TIFOSO — UI FIXES v2 (legibilidad WCAG, dentro de Flatsome)
   Basado en auditoría de contraste real. Área de producto = blanca,
   texto a oscuro legible. Mini-cart oscuro. Botón ATC cr>=4.5.
   ============================================================ */

/* P0 — Ficha producto: texto legible sobre el área blanca (fix cr 1.09 blanco/blanco) */
body.single-product .product-short-description,
body.single-product .product-short-description p,
body.single-product .product-short-description li,
body.single-product .product-short-description span,
body.single-product .woocommerce-product-details__short-description,
body.single-product .woocommerce-product-details__short-description p,
body.single-product .woocommerce-product-details__short-description li,
body.single-product .product-info p,
body.single-product .product-info li,
body.single-product .summary p,
body.single-product .summary li {
    color: #374151 !important;          /* gris oscuro sobre blanco — cr ~9.5 */
}

/* P0 — Recuadro disclaimer/avviso del producto (texto antes invisible) */
body.single-product .product-info [class*="disclaim"],
body.single-product .product-info [class*="disclaim"] *,
body.single-product .summary [class*="disclaim"],
body.single-product .summary [class*="disclaim"] *,
body.single-product .product-info .tifoso-disclaimer,
body.single-product .product-info .tifoso-disclaimer * {
    color: #4b3a12 !important;          /* marrón oscuro legible */
}

/* P1 — Mini-cart: fondo oscuro -> precio dorado legible (cr 2.2 -> ~6.8) */
.cart-sidebar, .widget_shopping_cart, .woocommerce-mini-cart,
.header-cart .dropdown, .header-cart-dropdown, .nav-dropdown.mini-cart,
.cart-dropdown .nav-dropdown, li.cart-item .nav-dropdown {
    background-color: #141418 !important;
    color: #F5F5F0 !important;
    border: 1px solid #2A2A30 !important;
}
.cart-sidebar a, .widget_shopping_cart a, .woocommerce-mini-cart a,
.cart-sidebar .product-title, .woocommerce-mini-cart-item a {
    color: #F5F5F0 !important;
}
.cart-sidebar .woocommerce-Price-amount, .widget_shopping_cart .woocommerce-Price-amount,
.woocommerce-mini-cart .woocommerce-Price-amount, .cart-sidebar .amount {
    color: #D4A944 !important;          /* dorado sobre #141418 = cr ~6.8 */
}

/* P1 — Botón "Aggiungi al carrello": cr 4.35 -> 5.1 (rojo más oscuro) */
body.single-product .single_add_to_cart_button,
.woocommerce button.button.single_add_to_cart_button,
.single-product .single_add_to_cart_button.button {
    background-color: #9E1B22 !important;
    color: #F5F5F0 !important;
}
body.single-product .single_add_to_cart_button:hover,
.woocommerce button.button.single_add_to_cart_button:hover {
    background-color: #B8232B !important;
}

/* P1 — Select de talla legible (es <select>, no swatches) */
body.single-product .variations select,
body.single-product table.variations select {
    background-color: #1F1F24 !important;
    color: #F5F5F0 !important;
    border: 1px solid #2A2A30 !important;
}

/* P2 — Trust bar: texto un punto más legible */
.tifoso-trust-badge { font-size: 0.9rem !important; letter-spacing: 0.05em !important; }
.tifoso-trust-row { gap: 1.5rem !important; }

/* ============================================================
   TIFOSO — UI FIXES v3: CARRITO + CHECKOUT (fondo oscuro, textos
   WooCommerce #111/#666 -> legibles). Basado en contraste medido.
   ============================================================ */

/* Textos del carrito/checkout sobre fondo oscuro -> claros (eran #666 cr 3.2) */
.woocommerce-cart .cart_item td,
.woocommerce-cart table.cart td,
.woocommerce-cart .product-name,
.woocommerce-cart .product-name a,
.woocommerce-cart .product-quantity,
.woocommerce-checkout #order_review td,
.woocommerce-checkout #order_review th,
.woocommerce-checkout .woocommerce-checkout-review-order-table td,
.woocommerce-checkout .woocommerce-checkout-review-order-table th,
.woocommerce-checkout #order_review .product-name,
.woocommerce-checkout .cart-subtotal th,
.woocommerce-checkout .order-total th,
.woocommerce-cart .cart-subtotal th,
.woocommerce-cart .order-total th {
    color: #F5F5F0 !important;
}

/* Precios en carrito y resumen de pedido (eran #111 cr 1.03 = INVISIBLES) */
.woocommerce-cart .cart_item .amount,
.woocommerce-cart .cart_item .woocommerce-Price-amount,
.woocommerce-cart .cart_totals .amount,
.woocommerce-cart .order-total .amount,
.woocommerce-checkout #order_review .amount,
.woocommerce-checkout #order_review .woocommerce-Price-amount,
.woocommerce-checkout .cart-subtotal .amount,
.woocommerce-checkout .order-total .amount,
.woocommerce-checkout .woocommerce-checkout-review-order-table .amount {
    color: #D4A944 !important;          /* dorado sobre oscuro = legible */
}

/* Botón "Procedi al checkout" y "Place order": cr 4.35 -> 5.1 */
.checkout-button, a.checkout-button,
.wc-proceed-to-checkout .button,
#place_order, .woocommerce #place_order,
.woocommerce-cart .checkout-button {
    background-color: #9E1B22 !important;
    color: #F5F5F0 !important;
}
.checkout-button:hover, #place_order:hover,
.woocommerce #place_order:hover { background-color: #B8232B !important; }

/* Etiquetas de opciones en ficha de producto (PATCHES, taglia) sobre área blanca */
body.single-product .product-info label,
body.single-product .summary label,
body.single-product .product-info .pa_label,
body.single-product .product-info legend {
    color: #374151 !important;
}

/* v3.1 — Botón "Procedi al checkout": override de regla #E11D2E (alta especificidad) */
html body.woocommerce-cart a.checkout-button,
html body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
html body .wc-proceed-to-checkout a.checkout-button.button,
html body a.checkout-button.button.alt {
    background-color: #9E1B22 !important;
    color: #ffffff !important;
}

/* ============================================================
   TIFOSO — REFINAMIENTO PREMIUM FICHA PRODUCTO v4
   Paleta restringida: ROJO solo en el CTA principal. Secundarios y
   chips elegantes (oscuro + dorado). Texto legible. Sin trust dup.
   Alta especificidad para ganar al snippet 1951.
   ============================================================ */

/* 1) Descripción / FAQ accordion: texto legible (era #F5F5F0 sobre <details> blanco) */
html body .tifoso-product-data-accordion,
html body .tifoso-product-data-accordion p,
html body .tifoso-product-data-accordion li,
html body .tifoso-product-data-accordion h4,
html body .tifoso-product-data-accordion__body,
html body .tifoso-product-data-accordion__body p,
html body .tifoso-product-data-accordion__body li,
html body .tifoso-product-data-accordion__body h3,
html body .tifoso-product-data-accordion__body h4,
html body .tifoso-product-data-accordion details,
html body .tifoso-product-data-accordion details * {
    color: #2b2f36 !important;
}
html body .tifoso-product-data-accordion h2,
html body .tifoso-product-data-accordion h3,
html body .tifoso-product-data-accordion summary {
    color: #0D1117 !important;
}
html body .tifoso-product-data-accordion a { color: #9a7212 !important; }

/* 2) CHIPS DE TALLA — premium (blanco con borde, oscuro+dorado al seleccionar) */
html body .tifoso-size-chip {
    background: #ffffff !important;
    color: #1a1d23 !important;
    border: 1.5px solid #d4d4d8 !important;
    border-radius: 6px !important;
    font-family: 'Oswald', sans-serif !important;
    font-weight: 600 !important;
    box-shadow: none !important;
    transition: all .18s ease !important;
}
html body .tifoso-size-chip:hover {
    border-color: #0D1117 !important;
    color: #0D1117 !important;
    background: #faf8f2 !important;
}
html body .tifoso-size-chip.selected,
html body .tifoso-size-chip.active,
html body .tifoso-size-chip.is-selected,
html body .tifoso-size-chip[aria-pressed="true"] {
    background: #0D1117 !important;
    color: #D4A944 !important;
    border-color: #0D1117 !important;
}
html body .tifoso-size-chip.disabled,
html body .tifoso-size-chip[disabled],
html body .tifoso-size-chip.out-of-stock {
    opacity: .4 !important; text-decoration: line-through !important; cursor: not-allowed !important;
}

/* 3) CANTIDAD — stepper sobrio (no rojo) */
html body .ux-quantity__button,
html body .quantity .ux-quantity__button {
    background: #f1f1ef !important;
    color: #0D1117 !important;
    border: 1px solid #d4d4d8 !important;
    box-shadow: none !important;
}
html body .ux-quantity__button:hover { background: #e6e3da !important; }

/* 4) Trust duplicado tenue -> ocultar (las 4 tarjetas ya lo comunican) */
html body .tifoso-product-trust { display: none !important; }

/* 5) Botones SECUNDARIOS (guida taglie, preferiti) -> outline elegante, no rojo */
html body .tifoso-size-guide-trigger,
html body .tifoso-favorite-button {
    background: transparent !important;
    color: #0D1117 !important;
    border: 1.5px solid #0D1117 !important;
    box-shadow: none !important;
    font-weight: 600 !important;
}
html body .tifoso-size-guide-trigger:hover,
html body .tifoso-favorite-button:hover {
    background: #0D1117 !important;
    color: #D4A944 !important;
    border-color: #0D1117 !important;
}

/* 6) Precios en "Migliori valutati" / relacionados (eran tenues) */
html body .product_list_widget .amount,
html body .product_list_widget .woocommerce-Price-amount,
html body section.related .price,
html body .up-sells .price {
    color: #D4A944 !important;
}
html body .product_list_widget a { color: #F5F5F0 !important; }

/* 7) Sticky add-to-cart bar (texto legible) */
html body .sticky-add-to-cart .product-title,
html body .sticky-product-cart .title,
html body .sticky-add-to-cart .name { color: #F5F5F0 !important; }

/* ============================================================
   TIFOSO — LAYOUT FICHA PRODUCTO v5: ORDEN + EQUILIBRIO
   Causa del "hueco negro": columna galería con fondo oscuro
   estirada a toda la altura de la fila. Fix: no estirar columnas,
   galería sticky, quitar 3ª columna vacía, ensanchar summary.
   ============================================================ */
html body.single-product .content-row {
    align-items: flex-start !important;   /* columnas NO se estiran -> elimina el hueco negro */
    gap: 2.5rem !important;
}
/* Galería: sin fondo oscuro + sticky premium + alto natural */
html body.single-product .product-gallery.col,
html body.single-product .content-row .product-gallery {
    background: transparent !important;
    align-self: flex-start !important;
    position: -webkit-sticky !important;
    position: sticky !important;
    top: 90px !important;
}
/* Quitar la 3ª columna vacía (180px desperdiciados) */
html body.single-product .content-row .product-sidebar-small,
html body.single-product .content-row .col.large-2.hide-for-medium {
    display: none !important;
}
/* Summary más ancho y aireado (era 360px apretado) */
html body.single-product .product-info.summary.col-fit,
html body.single-product .content-row .product-info.summary {
    flex: 1 1 0 !important;
    max-width: 520px !important;
    background: transparent !important;
}
/* Bloque de info del producto (la "tarjeta" blanca) con más respiro */
html body.single-product .product-info.summary {
    padding: 0 4px !important;
}
@media (max-width: 849px) {
    html body.single-product .product-gallery.col { position: static !important; }
    html body.single-product .product-info.summary.col-fit { max-width: 100% !important; }
}

/* ============================================================
   TIFOSO — FLATSOME NATIVO (ficha producto): título y precio
   legibles sobre el área blanca nativa (era invisible/tenue).
   El child theme global los pone claros para fondos oscuros;
   aquí, scoped a single-product, los ponemos oscuros premium.
   ============================================================ */
html body.single-product .product-title,
html body.single-product h1.product_title,
html body.single-product .product-page-title,
html body.single-product .entry-summary .product_title {
    color: #0D1117 !important;
}
/* Precio actual: oscuro fuerte (legible + premium sobre blanco) */
html body.single-product .summary .price,
html body.single-product .summary .price > .amount,
html body.single-product .summary .price ins,
html body.single-product .summary .price ins .amount,
html body.single-product .entry-summary .price .woocommerce-Price-amount {
    color: #0D1117 !important;
    font-weight: 700 !important;
}
/* Precio tachado (oferta): gris medio */
html body.single-product .summary .price del,
html body.single-product .summary .price del .amount {
    color: #9a9a9a !important;
    font-weight: 400 !important;
}
/* Descripción / tabs nativos legibles sobre blanco */
html body.single-product .woocommerce-tabs .panel,
html body.single-product .woocommerce-Tabs-panel,
html body.single-product .woocommerce-tabs .panel p,
html body.single-product .woocommerce-tabs .panel li,
html body.single-product #tab-description,
html body.single-product #tab-description * {
    color: #2b2f36 !important;
}
html body.single-product .woocommerce-tabs .panel h2,
html body.single-product .woocommerce-tabs .panel h3,
html body.single-product #tab-description h2,
html body.single-product #tab-description h3 {
    color: #0D1117 !important;
}
/* Tabs nativos: pestaña activa en dorado/oscuro legible */
html body.single-product .woocommerce-tabs ul.tabs li a { color: #6a6a65 !important; }
html body.single-product .woocommerce-tabs ul.tabs li.active a { color: #0D1117 !important; }

/* Trust badges (Spedizione/Pagamenti/Reso) legibles sobre el área blanca nativa */
html body.single-product .tifoso-trust-badge,
html body.single-product .tifoso-trust-badge span,
html body.single-product .tifoso-trust-row span {
    color: #4b5563 !important;
}
html body.single-product .tifoso-trust-badge svg { color: #D4A944 !important; }

/* ============================================================
   TIFOSO — GUÍA DE TALLAS (premium, método nativo Flatsome)
   ============================================================ */
.tifoso-sg-trigger {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    margin: 10px 0 4px !important;
    font-family: 'Oswald', sans-serif !important;
    font-weight: 600 !important;
    font-size: .82rem !important;
    letter-spacing: .04em !important;
    text-transform: uppercase !important;
    color: #0D1117 !important;
    border-bottom: 1.5px solid #D4A944 !important;
    text-decoration: none !important;
    cursor: pointer !important;
    padding-bottom: 2px !important;
}
.tifoso-sg-trigger:hover { color: #B8860B !important; }
.tifoso-size-guide { font-family: 'Inter', sans-serif; color: #2b2f36; }
.tifoso-size-guide h3 {
    font-family: 'Oswald', sans-serif !important;
    text-transform: uppercase; letter-spacing: .04em;
    color: #0D1117 !important; margin: 0 0 6px; font-size: 1.15rem;
}
.tifoso-size-guide > p { color: #555; font-size: .92rem; margin: 0 0 14px; }
.tifoso-sg-table {
    width: 100%; border-collapse: collapse; margin: 0 0 14px;
    font-size: .92rem;
}
.tifoso-sg-table thead th {
    background: #0D1117; color: #D4A944 !important;
    font-family: 'Oswald', sans-serif; text-transform: uppercase;
    letter-spacing: .04em; font-size: .8rem; font-weight: 600;
    padding: 11px 14px; text-align: left;
}
.tifoso-sg-table tbody td {
    padding: 10px 14px; border-bottom: 1px solid #ececec; color: #2b2f36;
}
.tifoso-sg-table tbody tr:nth-child(even) td { background: #faf8f2; }
.tifoso-sg-table tbody td strong { color: #0D1117; }
.tifoso-sg-note { font-size: .82rem; color: #777; line-height: 1.6; margin: 0; }
.tifoso-sg-note strong { color: #0D1117; }
/* Tabla del size guide dentro de la pestaña nativa también legible */
html body.single-product .woocommerce-Tabs-panel .tifoso-sg-table thead th,
html body.single-product .woocommerce-tabs .panel .tifoso-sg-table thead th { color: #D4A944 !important; }

/* ============================================================
   TIFOSO — PREMIUM PRODUCT PAGE v6 (pulido nativo Flatsome)
   ============================================================ */

/* A. CTA estados — botón SIEMPRE rojo sólido (consistente, sin fade) */
html body.single-product .single_add_to_cart_button.disabled,
html body.single-product .single_add_to_cart_button[disabled],
html body.single-product .woocommerce-variation-add-to-cart-disabled .single_add_to_cart_button {
    background-color: #9E1B22 !important;
    color: #F5F5F0 !important;
    border: none !important;
    opacity: 1 !important;
    cursor: pointer !important;
    box-shadow: 0 4px 16px rgba(158, 27, 34, 0.22) !important;
    letter-spacing: 0.12em !important;
}
html body.single-product .single_add_to_cart_button:not(.disabled):not([disabled]) {
    background-color: #9E1B22 !important;
    color: #F5F5F0 !important;
    border: none !important;
    opacity: 1 !important;
    cursor: pointer !important;
    box-shadow: 0 4px 16px rgba(158, 27, 34, 0.35) !important;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
    letter-spacing: 0.1em !important;
}
html body.single-product .single_add_to_cart_button:not(.disabled):not([disabled]):hover {
    background-color: #B8232B !important;
    box-shadow: 0 6px 22px rgba(184, 35, 43, 0.45) !important;
    transform: translateY(-1px) !important;
}
@media (prefers-reduced-motion: no-preference) {
  html body.single-product .wc-variation-selection-needed .variations select,
  html body.single-product .variations_form.wc-variation-selection-needed select {
      border-color: #D4A944 !important;
      box-shadow: 0 0 0 2px rgba(212, 169, 68, 0.2) !important;
      animation: tifoso-pulse-border 2.2s ease-in-out infinite !important;
  }
}
@keyframes tifoso-pulse-border {
    0%, 100% { box-shadow: 0 0 0 2px rgba(212, 169, 68, 0.15); }
    50%       { box-shadow: 0 0 0 4px rgba(212, 169, 68, 0.32); }
}

/* B. Galería nativa Flatsome (NO romper el slider: solo cosmético en .col) */
html body.single-product .woocommerce-product-gallery,
html body.single-product .product-gallery-slider {
    background: #ffffff !important;
}
html body.single-product .product-gallery .image-tools .image-tool,
html body.single-product .product-gallery a.image-zoom-tool { cursor: zoom-in; }
/* Thumbnails nativos (.col dentro del slider): borde y radio cosméticos,
   SIN tocar display/flex/width para no colapsar el slider */
html body.single-product .product-thumbnails .col a,
html body.single-product .product-thumbnails .col img {
    border-radius: 4px !important;
    transition: opacity 0.15s ease !important;
}
html body.single-product .product-thumbnails .col {
    border: 1.5px solid transparent !important;
    border-radius: 5px !important;
    transition: border-color 0.18s ease, box-shadow 0.18s ease !important;
    overflow: hidden;
}
html body.single-product .product-thumbnails .col:hover { border-color: rgba(212,169,68,0.6) !important; }
html body.single-product .product-thumbnails .col:hover img { opacity: 0.85 !important; }
/* Thumb activo: Flatsome usa .is-nav-selected */
html body.single-product .product-thumbnails .col.is-nav-selected,
html body.single-product .product-thumbnails .col.is-selected {
    border-color: #D4A944 !important;
    box-shadow: 0 0 0 1px #D4A944 !important;
}

/* C. Precio jerarquía */
html body.single-product .summary .price ins .amount,
html body.single-product .summary .price > .woocommerce-Price-amount {
    color: #0D1117 !important;
    font-size: 2rem !important;
    font-weight: 700 !important;
    font-family: 'Oswald', sans-serif !important;
    line-height: 1.1 !important;
}
html body.single-product .summary .price del .woocommerce-Price-amount {
    color: #9a9a9a !important;
    font-size: 1.1rem !important;
    font-weight: 400 !important;
}

/* D. Rating dorado */
html body.single-product .woocommerce-product-rating {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 4px 0 12px !important;
}
html body.single-product .star-rating { font-size: 1.1rem !important; line-height: 1 !important; color: #D4A944 !important; }
html body.single-product .star-rating::before,
html body.single-product .star-rating span::before { color: #D4A944 !important; }
html body.single-product .woocommerce-review-link {
    color: #6A6A65 !important;
    font-size: 0.82rem !important;
    text-decoration: none !important;
    border-bottom: 1px solid rgba(212, 169, 68, 0.5) !important;
    padding-bottom: 1px !important;
}
html body.single-product .woocommerce-review-link:hover { color: #0D1117 !important; border-bottom-color: #D4A944 !important; }

/* E. Separadores cálidos + label TAGLIA */
html body.single-product .product-short-description,
html body.single-product .woocommerce-product-details__short-description {
    border-top: 1px solid #f0ede6 !important;
    padding-top: 1rem !important;
    margin-top: 0.75rem !important;
    color: #374151 !important;
}
html body.single-product .variations_form {
    border-top: 1px solid #f0ede6 !important;
    padding-top: 1rem !important;
    margin-top: 0.5rem !important;
}
html body.single-product .variations th.label label,
html body.single-product .variations .label label {
    color: #0D1117 !important;
    font-family: 'Oswald', sans-serif !important;
    font-weight: 600 !important;
    font-size: 0.82rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.1em !important;
}

/* F. Disponibilidad (hook PHP) */
.tifoso-availability {
    display: flex; align-items: center; gap: 7px;
    font-size: 0.82rem; font-family: 'Inter', sans-serif;
    color: #374151; margin: 0 0 14px; letter-spacing: 0.01em;
}
.tifoso-availability__dot {
    width: 7px; height: 7px; border-radius: 50%;
    background: #3DAA5B; flex-shrink: 0;
    box-shadow: 0 0 0 3px rgba(61, 170, 91, 0.2);
}
@media (prefers-reduced-motion: no-preference) {
  .tifoso-availability__dot { animation: tifoso-dot-pulse 2.5s ease-in-out infinite; }
}
@keyframes tifoso-dot-pulse {
    0%, 100% { box-shadow: 0 0 0 3px rgba(61, 170, 91, 0.2); }
    50%       { box-shadow: 0 0 0 5px rgba(61, 170, 91, 0.08); }
}

/* I. Spacing equilibrio */
html body.single-product .content-row { gap: 3rem !important; }
html body.single-product .product-info.summary { padding-bottom: 2.5rem !important; padding-top: 0.25rem !important; }
html body.single-product .woocommerce-tabs {
    margin-top: 3rem !important;
    padding-top: 2rem !important;
    border-top: 1px solid #f0ede6 !important;
}

/* J. Mobile */
@media (max-width: 849px) {
    html body.single-product .flex-control-thumbs {
        flex-direction: row !important; gap: 6px !important;
        overflow-x: auto !important; padding-bottom: 4px !important;
    }
    html body.single-product .flex-control-thumbs li {
        width: 56px !important; height: 56px !important; min-width: 56px !important;
    }
    html body.single-product .summary .price ins .amount,
    html body.single-product .summary .price > .woocommerce-Price-amount { font-size: 1.6rem !important; }
}

/* ============================================================
   K. DESCRIPCIÓN LARGA LEGIBLE (FIX CRÍTICO CONTRASTE)
   El contenido fue escrito para el overlay oscuro antiguo (texto
   #F5F5F0). En la página nativa BLANCA queda invisible (cr 1.09).
   Forzamos texto oscuro legible. NO afecta a .tifoso-sg-table
   (la tabla de tallas tiene su propio fondo oscuro y va aparte).
   ============================================================ */
html body.single-product .product-section .entry-content,
html body.single-product .product-section .panel.entry-content,
html body.single-product .product-section .entry-content p,
html body.single-product .product-section .entry-content li,
html body.single-product .product-section .entry-content td,
html body.single-product .product-section .entry-content span,
html body.single-product .product-section .entry-content div,
html body.single-product .product-section .toc,
html body.single-product .product-section .toc a {
    color: #2b2f36 !important;
}
html body.single-product .product-section .entry-content h1,
html body.single-product .product-section .entry-content h2,
html body.single-product .product-section .entry-content h3,
html body.single-product .product-section .entry-content h4,
html body.single-product .product-section .toc-title,
html body.single-product .product-section .entry-content strong,
html body.single-product .product-section .entry-content b {
    color: #0D1117 !important;
}
html body.single-product .product-section .entry-content a:not(.button) {
    color: #9E1B22 !important;
    text-decoration: underline;
    text-underline-offset: 2px;
}
/* TOC: caja sutil marfil para separar el índice */
html body.single-product .product-section .toc.table-of-contents {
    background: #faf8f2 !important;
    border: 1px solid #efe9da !important;
    border-radius: 6px !important;
    padding: 14px 18px !important;
}
/* Tabla nativa "Informazioni aggiuntive" legible */
html body.single-product .woocommerce-product-attributes th,
html body.single-product .woocommerce-product-attributes td,
html body.single-product .shop_attributes th,
html body.single-product .shop_attributes td {
    color: #2b2f36 !important;
}
html body.single-product .woocommerce-product-attributes th,
html body.single-product .shop_attributes th { color: #0D1117 !important; }
/* Título de cada sección del producto (layout sections) legible */
html body.single-product .product-section > .row > .col > h3,
html body.single-product .product-section .section-title,
html body.single-product .product-section .col-inner > h3 {
    color: #0D1117 !important;
}

/* ============================================================
   L. RECOLOR ROJOS DECORATIVOS -> GRAFITO #0D1117 + posiciones
   Origen del rojo Flatsome: --fs-color-primary (#E11D2E).
   Lo cambiamos a grafito en TODO lo derivado. El CTA "Aggiungi
   al carrello" y los badges de confianza/urgencia se mantienen
   rojos porque están definidos explícitamente aparte.
   ============================================================ */
:root,
body { --fs-color-primary: #0D1117; }

/* Re-afirmar el CTA en rojo (no debe heredar el grafito) */
html body.single-product .single_add_to_cart_button,
html body.woocommerce .button.checkout,
html body .checkout-button {
    background-color: #9E1B22 !important;
    color: #F5F5F0 !important;
}

/* Buscador (cabecera, global) */
html body .ux-search-submit,
html body .ux-search-box .submit-button,
html body .searchform .ux-search-submit,
html body form[role="search"] .submit-button {
    background-color: #0D1117 !important;
    border-color: #0D1117 !important;
    color: #F5F5F0 !important;
}
html body .ux-search-submit:hover,
html body .ux-search-box .submit-button:hover { background-color: #1F1F24 !important; }

/* Flechas de slider (galería, miniaturas, hero) — más pequeñas y limpias */
html body .flickity-prev-next-button,
html body .product-gallery-slider .flickity-button,
html body .product-thumbnails .flickity-prev-next-button {
    background: rgba(13, 17, 23, 0.6) !important;
    color: #F5F5F0 !important;
    width: 42px !important;
    height: 42px !important;
    border-radius: 50% !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.18) !important;
    transition: background 0.18s ease !important;
}
html body .flickity-prev-next-button:hover,
html body .product-gallery-slider .flickity-button:hover { background: #0D1117 !important; }
html body .flickity-button .flickity-button-icon { fill: #F5F5F0 !important; }
html body .flickity-button:disabled { opacity: 0 !important; }

/* Botón zoom de la galería */
html body .image-tools .zoom-button,
html body a.zoom-button,
html body .product-gallery .zoom-button {
    background: rgba(13, 17, 23, 0.6) !important;
    border-color: transparent !important;
    color: #F5F5F0 !important;
    width: 46px !important;
    height: 46px !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.18) !important;
}
html body a.zoom-button:hover { background: #0D1117 !important; }

/* Badge de descuento (onsale) -> grafito con texto dorado
   (alta especificidad para superar .woocommerce span.onsale base) */
html body .woocommerce span.onsale,
html body.single-product span.onsale,
html body .product-small span.onsale,
html body .onsale,
html body span.onsale {
    background-color: #0D1117 !important;
    color: #D4A944 !important;
    border: 1px solid rgba(212, 169, 68, 0.5) !important;
    font-weight: 700 !important;
    letter-spacing: 0.03em !important;
    box-shadow: none !important;
}

/* Flechas de navegación prodotto (hero, next-prev-thumbs) -> grafito.
   Alta especificidad para superar .button / .woocommerce a.button base. */
html body .next-prev-thumbs .button,
html body .next-prev-thumbs .button.icon,
html body li.prod-dropdown > a.button,
html body li.prod-dropdown > a.button.icon,
html body .product-pagination a,
html body .next-prev-nav a,
html body nav.product-nav a {
    background-color: #0D1117 !important;
    color: #F5F5F0 !important;
    border-color: #0D1117 !important;
    box-shadow: none !important;
}
html body .next-prev-thumbs .button:hover,
html body li.prod-dropdown > a.button:hover {
    background-color: #1F1F24 !important;
    border-color: #1F1F24 !important;
}
/* Dropdown de la navegación prodotto (al pasar el ratón) legible */
html body .next-prev-thumbs .nav-dropdown { background-color: #0D1117 !important; }

/* Botón "volver arriba" (back-to-top) -> grafito */
html body .back-to-top,
html body a.back-to-top,
html body button.back-to-top {
    background-color: #0D1117 !important;
    border-color: #0D1117 !important;
    color: #F5F5F0 !important;
}
html body .back-to-top:hover { background-color: #1F1F24 !important; }

/* Filtro de precio (categorías): handles grafito, barra de rango dorada */
html body .price_slider .ui-slider-handle,
html body .ui-slider .ui-slider-handle,
html body .price_slider_wrapper .ui-slider-handle {
    background-color: #0D1117 !important;
    border-color: #0D1117 !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.25) !important;
}
html body .price_slider .ui-slider-range,
html body .ui-slider .ui-slider-range {
    background-color: #D4A944 !important;
}
html body .price_slider,
html body .ui-slider.price_slider { background-color: #e8e3d6 !important; }

/* Badges decorativos de las tarjetas (callout / -50% / secondary) -> grafito + dorado.
   Cubrimos el contenedor .callout.badge y TODOS los .badge-inner. */
html body .badge-inner.secondary,
html body .badge-inner,
html body .callout .badge-inner,
html body .product-small .badge-inner,
html body .badge.callout .badge-inner,
html body div.callout.badge,
html body .badge.callout {
    background-color: #0D1117 !important;
    color: #D4A944 !important;
    border-color: #0D1117 !important;
}
/* El badge "Esaurito"/out-of-stock se mantiene neutro legible */
html body .badge-inner.on-sale,
html body .out-of-stock-label .badge-inner { background-color: #0D1117 !important; color: #F5F5F0 !important; }

/* Punto activo de carruseles (flickity) -> dorado en vez de rojo */
html body .flickity-page-dots .dot.is-selected,
html body .flickity-page-dots .dot.selected,
html body ol.flickity-page-dots li.dot.is-selected {
    background-color: #D4A944 !important;
    border-color: #D4A944 !important;
}

/* Botón ".white" (hero "Cerca la tua squadra") -> blanco real, texto oscuro */
html body a.button.white,
html body .button.white:not(.single_add_to_cart_button) {
    background-color: #F5F5F0 !important;
    color: #0D1117 !important;
    border-color: #F5F5F0 !important;
}
html body a.button.white:hover { background-color: #D4A944 !important; border-color: #D4A944 !important; }

/* Toggles (acordeones/menús) decorativos -> grafito */
html body button.toggle,
html body .accordion button.toggle {
    background-color: #0D1117 !important;
    color: #F5F5F0 !important;
    border-color: #0D1117 !important;
}

/* CTAs de navegación/secundarios (alert, tfq, hero) -> DORADO premium.
   Jerarquía: dorado = esplora/scopri, rojo = comprare (Aggiungi al carrello). */
html body a.button.alert,
html body a.button.alert.is-outline,
html body a.tfq-primary,
html body .button.alert:not(.single_add_to_cart_button) {
    background-color: #D4A944 !important;
    color: #0D1117 !important;
    border-color: #D4A944 !important;
    text-shadow: none !important;
}
html body a.button.alert:hover,
html body a.tfq-primary:hover {
    background-color: #c2982f !important;
    border-color: #c2982f !important;
    color: #0D1117 !important;
}

/* ============================================================
   M. MICRO-INTERACCIONES MODERNAS / ACOGEDORAS (nativo, fiable)
   Solo efectos verificables (hover/transición CSS). NADA de
   animaciones de scroll falsas.
   ============================================================ */

/* Transiciones suaves globales en enlaces y botones */
html body a,
html body .button {
    transition: color .2s ease, background-color .2s ease,
                border-color .2s ease, transform .2s ease, box-shadow .2s ease;
}

/* Tarjetas de producto: imagen con zoom + esquinas suaves (acogedor) */
html body .box-image {
    overflow: hidden !important;
    border-radius: 8px !important;
}
html body .box-image img {
    transition: transform .55s cubic-bezier(.2,.6,.2,1) !important;
    will-change: transform;
}
html body .product-small:hover .box-image img,
html body li.product:hover .box-image img,
html body .col-inner:hover .box-image img {
    transform: scale(1.06) !important;
}

/* Elevación sutil de la tarjeta al pasar el ratón */
html body .product-small,
html body li.product {
    transition: transform .25s ease !important;
}
html body .product-small:hover,
html body li.product:hover {
    transform: translateY(-4px) !important;
}
html body .product-small:hover .box-image,
html body li.product:hover .box-image {
    box-shadow: 0 10px 26px rgba(13,17,23,0.12) !important;
}

/* Tiles de categoría / image-box: leve elevación al hover */
html body .image-box:hover,
html body .col .ux-box:hover {
    transform: translateY(-3px);
    transition: transform .25s ease;
}

/* Botones: micro-elevación al hover (sensación interactiva) */
html body .button:not(.is-link):hover {
    transform: translateY(-1px);
}

/* ============================================================
   N. BARRA DE GARANTÍAS (bajo cabecera) + FOOTER DE CONFIANZA
   ============================================================ */
/* Barra de garantías */
.tifoso-guarantee-bar {
    background: #0D1117;
    border-top: 1px solid rgba(212,169,68,0.18);
    border-bottom: 1px solid rgba(255,255,255,0.06);
}
.tifoso-gb-inner {
    max-width: 1200px; margin: 0 auto; padding: 9px 16px;
    display: flex; justify-content: center; align-items: center;
    gap: 34px; flex-wrap: wrap;
}
.tifoso-gb-item {
    display: inline-flex; align-items: center; gap: 8px;
    color: #E8E6E0; font-family: 'Inter', sans-serif;
    font-size: 0.8rem; letter-spacing: 0.02em;
}
.tifoso-gb-ico { font-size: 1rem; line-height: 1; }
@media (max-width: 749px) {
    .tifoso-gb-inner { gap: 16px; padding: 8px 12px; }
    .tifoso-gb-item { font-size: 0.72rem; gap: 6px; }
    .tifoso-gb-item:nth-child(n+3) { display: none; }
}

/* Footer de confianza */
.tifoso-foot-trust {
    background: #0D1117;
    padding: 40px 16px 18px;
    border-top: 1px solid rgba(255,255,255,0.06);
}
.tifoso-ft-grid {
    max-width: 1200px; margin: 0 auto;
    display: grid; grid-template-columns: 1.7fr 1fr 1fr 1fr; gap: 32px;
}
.tifoso-ft-brand {
    font-family: 'Oswald', sans-serif; font-weight: 700;
    font-size: 1.35rem; color: #ffffff; letter-spacing: 0.04em;
}
.tifoso-ft-tag {
    color: #97968f; font-size: 0.85rem; line-height: 1.6;
    margin: 0.5rem 0 0.85rem; max-width: 330px;
}
.tifoso-ft-contact { margin: 0; font-size: 0.85rem; color: #c9c7c1; }
.tifoso-ft-contact a { color: #D4A944; text-decoration: none; }
.tifoso-ft-contact a:hover { text-decoration: underline; }
.tifoso-ft-col h4 {
    font-family: 'Oswald', sans-serif; color: #D4A944;
    font-size: 0.85rem; text-transform: uppercase; letter-spacing: 0.1em;
    margin: 0 0 0.85rem;
}
.tifoso-ft-col ul { list-style: none; margin: 0; padding: 0; }
.tifoso-ft-col li { margin-bottom: 0.5rem; }
.tifoso-ft-col li a {
    color: #c2c0ba; text-decoration: none; font-size: 0.85rem;
    transition: color 0.15s ease;
}
.tifoso-ft-col li a:hover { color: #D4A944; }
.tifoso-ft-pay { display: flex; flex-wrap: wrap; gap: 7px; margin-bottom: 0.85rem; }
.tifoso-ft-pay span {
    background: #ffffff; color: #0D1117; font-weight: 700;
    font-size: 0.7rem; letter-spacing: 0.02em; padding: 5px 9px;
    border-radius: 4px; font-family: 'Inter', sans-serif;
}
.tifoso-ft-ship { color: #97968f; font-size: 0.78rem; line-height: 1.7; margin: 0; }
@media (max-width: 849px) {
    .tifoso-ft-grid { grid-template-columns: 1fr 1fr; gap: 26px; }
}
@media (max-width: 549px) {
    .tifoso-ft-grid { grid-template-columns: 1fr; gap: 22px; }
}

/* Pulsante flottante WhatsApp (sopra il back-to-top, no overlap) */
.tifoso-wa-float {
    position: fixed; right: 20px; bottom: 88px; z-index: 9998;
    width: 54px; height: 54px; border-radius: 50%;
    background: #25D366; display: flex; align-items: center; justify-content: center;
    box-shadow: 0 6px 18px rgba(0,0,0,0.25);
    transition: transform .2s ease, box-shadow .2s ease;
}
.tifoso-wa-float:hover {
    transform: translateY(-2px) scale(1.05);
    box-shadow: 0 8px 22px rgba(37,211,102,0.45);
    background: #20bd5a;
}
.tifoso-wa-float svg { width: 30px; height: 30px; display: block; }
@media (max-width: 600px) {
    .tifoso-wa-float { width: 50px; height: 50px; right: 14px; bottom: 76px; }
    .tifoso-wa-float svg { width: 27px; height: 27px; }
}

/* ============================================================
   O. CARRITO/CHECKOUT: botones secundarios -> grafito.
   El CTA principal (Procedi / Place order) se mantiene ROJO.
   ============================================================ */
html body .button-continue-shopping,
html body .woocommerce-cart .button-continue-shopping.button,
html body button[name="update_cart"],
html body .cart .actions .button.primary,
html body .coupon .button,
html body .coupon .is-form.expand.button,
html body .is-form.expand.button,
html body button.back-to-top,
html body a.back-to-top,
html body .back-to-top.button {
    background-color: #0D1117 !important;
    border-color: #0D1117 !important;
    color: #F5F5F0 !important;
}
html body .button-continue-shopping:hover,
html body button[name="update_cart"]:hover,
html body .is-form.expand.button:hover,
html body .back-to-top:hover {
    background-color: #1F1F24 !important;
    border-color: #1F1F24 !important;
}
/* CTA principal carrito/checkout -> ROJO (se mantiene) */
html body .wc-proceed-to-checkout .checkout-button,
html body .checkout-button,
html body #place_order {
    background-color: #9E1B22 !important;
    color: #F5F5F0 !important;
    border: none !important;
}
html body .wc-proceed-to-checkout .checkout-button:hover,
html body #place_order:hover { background-color: #B8232B !important; }


/* ============================================================
   P. SECCIONES DE LIGA (home) + MINI-CART
   Arregla contraste de titulos (#EEE->oscuro) y reanade escudo.
   ============================================================ */

/* Cabecera de seccion de liga: escudo + texto en fila */
html body .tifoso-league-head {
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
}
html body .tifoso-league-logo {
    width: 56px !important;
    height: 56px !important;
    object-fit: contain !important;
    flex-shrink: 0 !important;
    filter: drop-shadow(0 2px 6px rgba(0,0,0,0.12));
}
html body .tifoso-league-text { display: flex; flex-direction: column; }

/* Titulo de seccion LEGIBLE (era #EEEEEE invisible sobre blanco) */
html body .section-title,
html body .tifoso-league-section .section-title {
    color: #0D1117 !important;
    font-family: 'Oswald', sans-serif !important;
    font-weight: 700 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
    margin: 0 0 2px !important;
    line-height: 1.05 !important;
}
html body .section-sub,
html body .tifoso-league-section .section-sub {
    color: #6A6A65 !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 0.9rem !important;
    margin: 0 !important;
}
/* Boton "VEDI ..." de la seccion -> grafito (coherente) */
html body .tifoso-league-btn,
html body .tifoso-league-section .button {
    background-color: #0D1117 !important;
    border-color: #0D1117 !important;
    color: #F5F5F0 !important;
}
html body .tifoso-league-btn:hover { background-color: #1F1F24 !important; border-color: #1F1F24 !important; }

/* MINI-CART desplegable: botones secundario grafito / primario rojo */
html body .widget_shopping_cart .buttons .button:first-child,
html body .cart-sidebar .buttons .button.wc-forward:not(.checkout),
html body .mini_cart_buttons .button:not(.checkout) {
    background-color: #0D1117 !important;
    border-color: #0D1117 !important;
    color: #F5F5F0 !important;
}
html body .widget_shopping_cart .buttons .checkout,
html body .mini_cart_buttons .checkout,
html body .cart-sidebar .button.checkout {
    background-color: #9E1B22 !important;
    border-color: #9E1B22 !important;
    color: #F5F5F0 !important;
}

@media (max-width: 549px) {
    html body .tifoso-league-logo { width: 44px !important; height: 44px !important; }
    html body .tifoso-league-head { gap: 11px !important; }
}


/* P2. Titulo REAL de secciones de liga en home (clase del snippet) */
html body .tifoso-league-products-title,
html body h2.tifoso-league-products-title {
    color: #0D1117 !important;
}
html body .tifoso-league-products-copy,
html body .tifoso-league-products-sub {
    color: #64748b !important;
}
/* boton VEDI ... de cada liga -> grafito */
html body .tifoso-league-products-section .button,
html body .tifoso-league-products-head .button,
html body a.tifoso-league-products-link {
    background-color: #0D1117 !important;
    border-color: #0D1117 !important;
    color: #F5F5F0 !important;
    font-family: 'Oswald', sans-serif !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
    font-size: 13px !important;
    padding: 11px 20px !important;
    border-radius: 6px !important;
    text-decoration: none !important;
    align-self: center !important;
    flex-shrink: 0 !important;
    transition: background 0.2s ease !important;
}
html body a.tifoso-league-products-link:hover { background-color: #9E1B22 !important; }

/* P3. Escudo de liga: agrupar logo + titulo a la IZQUIERDA, link a la derecha */
html body .tifoso-league-products-head {
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
}
html body .tifoso-league-products-logo {
    width: 56px !important;
    height: 56px !important;
    object-fit: contain !important;
    flex-shrink: 0 !important;
    order: 0 !important;
    filter: drop-shadow(0 2px 6px rgba(0,0,0,0.12));
}
/* el div con titulo+copy queda pegado al logo; el link se va a la derecha */
html body .tifoso-league-products-head > div:not(.tifoso-league-products-logo) { order: 1 !important; }
html body a.tifoso-league-products-link { margin-left: auto !important; order: 2 !important; }
@media (max-width: 549px) {
    html body .tifoso-league-products-logo { width: 42px !important; height: 42px !important; }
    html body .tifoso-league-products-head { gap: 11px !important; flex-wrap: wrap !important; }
}


/* ============================================================
   Q. ANCHO UNIFICADO DE SECCIONES (alinear todo)
   Unifica el contenedor a un mismo ancho para que footer,
   barra de garantias, filas Flatsome y secciones de liga
   queden alineados (sin escalones ni espacios irregulares).
   ============================================================ */
:root { --tifoso-container: 1280px; }

/* Barra de garantias */
html body .tifoso-gb-inner { max-width: var(--tifoso-container) !important; }
/* Footer de confianza */
html body .tifoso-ft-grid { max-width: var(--tifoso-container) !important; }
/* Secciones de liga (producto) + cabeceras: mismo ancho */
html body .tifoso-product-league-sections .row,
html body .tifoso-product-league-sections .products.row,
html body .tifoso-product-league-sections .slider-wrapper,
html body .tifoso-league-products-head {
    max-width: var(--tifoso-container) !important;
    margin-left: auto !important;
    margin-right: auto !important;
}
/* Zona de logos de liga (marquee) — su contenedor interno */
html body .tifoso-league-zone .row { max-width: var(--tifoso-container) !important; }
/* Footer widgets nativo de Flatsome (Migliori valutati + absolute footer) */
html body .footer-widgets .row,
html body .absolute-footer .row { max-width: var(--tifoso-container) !important; margin: 0 auto !important; }


/* Q2. FILAS FLATSOME nativas al mismo ancho del resto (1280) */
html body.home #main .row:not(.row-collapse):not(.is-full-width),
html body.home #main .row-large {
    max-width: var(--tifoso-container) !important;
    margin-left: auto !important;
    margin-right: auto !important;
}


/* ============================================================
   R. PLACEHOLDER ELEGANTE (imagenes faltantes) + grid uniforme
   Reemplaza el icono gris roto de WooCommerce por un fondo de
   marca, para que ningun tile quede descuadrado/feo.
   ============================================================ */
/* Imagen placeholder de Woo -> fondo grafito con escudo tenue */
html body img.woocommerce-placeholder,
html body img[src*="woocommerce-placeholder"]{
    background:
      radial-gradient(circle at 50% 42%, rgba(212,169,68,0.10), transparent 60%),
      linear-gradient(145deg,#0D1117 0%,#1F1F24 100%) !important;
    object-fit:contain !important;
    padding:18% !important;
    opacity:1 !important;
}
/* Tiles de subcategoria: misma altura/relacion para que no se descuadren */
html body .product-category .box-image,
html body .product-category .box-image .image-cover{
    border-radius:8px !important;
    overflow:hidden !important;
    background:#0D1117 !important;
}
html body .product-category img{
    width:100% !important;
    aspect-ratio:1/1 !important;
    object-fit:cover !important;
    display:block !important;
}
/* Nombre + contador del tile legibles y centrados */
html body .product-category .box-text{
    text-align:center !important;
}


/* ============================================================
   S. FIX CONTRASTE: tarjetas "Compra senza dubbi" + Prodotti correlati
   (Auditados: cr 1.09 y 1.03 = invisibles)
   ============================================================ */

/* 1) Tarjetas "COMPRA SENZA DUBBI" (.tifoso-guides-pro / .tifoso-guide-card):
   titulos h3 claros sobre tarjeta blanca -> oscuro legible */
html body .tifoso-guides-pro .tifoso-guide-card h3,
html body .tifoso-guides-pro .tifoso-guide-card h4,
html body .tifoso-guides-pro .col-inner h3,
html body a.tifoso-guide-card h3 {
    color: #0D1117 !important;
}
html body .tifoso-guides-pro .tifoso-guide-card p,
html body a.tifoso-guide-card p {
    color: #374151 !important;
}

/* 2) PRODOTTI CORRELATI + cualquier listado con .box-text oscuro:
   titulo claro, precio dorado, categoria legible */
html body .related .product-small .box-text .product-title,
html body .related .product-small .box-text .woocommerce-loop-product__title,
html body .product-small .box-text.box-text-products .product-title {
    color: #F5F5F0 !important;
}
html body .related .product-small .box-text .price,
html body .related .product-small .box-text .price .amount,
html body .related .product-small .box-text .price bdi,
html body .product-small .box-text .price .woocommerce-Price-amount {
    color: #D4A944 !important;
}
html body .related .product-small .box-text .price del,
html body .related .product-small .box-text .price del .amount {
    color: #8a8a82 !important;
}
html body .related .product-small .box-text .category,
html body .product-small .box-text .category {
    color: #c2c0ba !important;
}


/* ============================================================
   T. FIX FOOTER "Migliori valutati" + sticky cart overlap
   ============================================================ */
/* Widget top-rated en footer: titulos claros sobre fondo oscuro
   (la regla body.single-product .product-title #0D1117 se colaba aqui) */
html body .footer-widgets .widget_top_rated_products .product-title,
html body .footer-widgets .product_list_widget .product-title,
html body #footer .widget_top_rated_products a,
html body .footer-widgets .widget_top_rated_products a,
html body.single-product .footer-widgets .product-title {
    color: #F5F5F0 !important;
}
html body .footer-widgets .widget_top_rated_products .amount,
html body .footer-widgets .product_list_widget .amount,
html body .footer-widgets .widget .amount {
    color: #D4A944 !important;
}
html body .footer-widgets .widget_top_rated_products .star-rating::before,
html body .footer-widgets .star-rating { color: #D4A944 !important; }

/* Barra sticky de compra: que NO se solape con el footer */
html body .product-sticky-bottom,
html body .sticky-add-to-cart,
html body .sticky-product-cart {
    z-index: 30 !important;
}
/* dar espacio al final para que la sticky no tape el footer */
@media (min-width: 850px){
  html body.single-product #main { padding-bottom: 0 !important; }
}


/* ============================================================
   U. FOOTER LOGO + STICKY ADD-TO-CART contraste
   ============================================================ */
/* Logo del footer (sustituye al texto Tifoso Store) */
html body .tifoso-ft-brand{display:flex;align-items:center;gap:12px;margin-bottom:14px;text-decoration:none;}
html body .tifoso-ft-brand img{width:56px;height:56px;object-fit:contain;display:block;}
html body .tifoso-ft-brand-name{font-family:Oswald,sans-serif;font-weight:700;font-size:1.35rem;color:#ffffff;letter-spacing:0.04em;}

/* Barra sticky nativa Flatsome (.sticky-add-to-cart): nombre y precio legibles */
html body .sticky-add-to-cart,
html body .sticky-add-to-cart-wrapper{
    background:#ffffff !important;
}
html body .sticky-add-to-cart .sticky-add-to-cart__content,
html body .sticky-add-to-cart .product-title,
html body .sticky-add-to-cart .sticky-add-to-cart__product-title,
html body .sticky-add-to-cart h2,
html body .sticky-add-to-cart h3,
html body .sticky-add-to-cart .name{
    color:#0D1117 !important;
}
html body .sticky-add-to-cart .amount,
html body .sticky-add-to-cart .price .amount{
    color:#9E1B22 !important;
    font-weight:700 !important;
}


/* ============================================================
   V. AJUSTES v7 — APROBADOS POR EL CLIENTE (2026-05-30)
   1) Ancho unificado REAL a 1280 (mata los escalones 1320/1840 que
      inyectan los snippets inline en home-shell y FAQ)
   2) Contraste WCAG: grises apagados -> legibles (>=4.5:1)
   3) Logo único en cabecera (oculta el duplicado .header-logo-dark)
   4) Pulido del acordeón FAQ (interactivo + animación, nativo Flatsome)
   ============================================================ */

/* V1. ANCHO 1280 — overrides que faltaban. Mayor especificidad que los
   <style> de snippet (.tifoso-home-shell .row = 1320, .tifoso-faq-pro .row
   = 1320, fila de producto sin clase .row) -> todo queda alineado a 1280. */
html body .tifoso-home-shell .row,
html body .tifoso-faq-pro .row,
html body .tifoso-product-league-row {
    max-width: var(--tifoso-container) !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* V2. CONTRASTE WCAG */
/* Precio tachado en tarjetas (fondo oscuro): subir luminosidad + opacidad */
html body .price del,
html body .price del .amount {
    color: var(--tifoso-text-secondary) !important;   /* #A8A8A0 sobre oscuro */
    opacity: 1 !important;
}
/* Subtítulos de sección de liga sobre blanco (estaban en el límite ~4.5) */
html body .section-sub,
html body .tifoso-league-section .section-sub { color: #565b64 !important; }
html body .tifoso-league-products-copy,
html body .tifoso-league-products-sub { color: #4b5563 !important; }
/* Footer: tagline + línea de envío (eran #97968f sobre #0D1117, ~4.4:1) */
html body .tifoso-ft-tag,
html body .tifoso-ft-ship { color: #b5b3ac !important; }
/* Breadcrumbs: enlace dorado pleno en vez del dorado apagado */
html body .woocommerce-breadcrumb a,
html body .breadcrumbs a { color: var(--tifoso-gold) !important; }
/* Ficha producto: pestañas inactivas + "leggi recensioni" (eran #6a6a65) */
html body.single-product .woocommerce-tabs ul.tabs li a { color: #4b5563 !important; }
html body.single-product .woocommerce-review-link { color: #4b5563 !important; }

/* V3. LOGO ÚNICO — la cabecera es SIEMPRE oscura: mostrar solo el logo
   principal y ocultar el duplicado .header-logo-dark (misma imagen, sobra).
   Garantiza que el principal quede siempre visible en cualquier estado. */
html body .header-logo-dark { display: none !important; }
html body .header-main .logo a.header-logo,
html body .logo a.header_logo,
html body .header-logo {
    display: inline-block !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* V4. ACORDEÓN FAQ (nativo Flatsome [accordion]) — interactivo + animación */
html body .tifoso-faq-pro .accordion-title {
    cursor: pointer !important;
    transition: color .2s ease, padding-left .2s ease, background-color .2s ease !important;
}
html body .tifoso-faq-pro .accordion-title:hover {
    color: #9E1B22 !important;
    background-color: rgba(13,17,23,0.03) !important;
}
/* Icono +/- con transición suave */
html body .tifoso-faq-pro .accordion-title .toggle {
    transition: transform .25s ease, color .2s ease !important;
}
/* Estado abierto (Flatsome marca .active en .accordion-item) */
html body .tifoso-faq-pro .accordion-item.active .accordion-title { color: #0D1117 !important; }
html body .tifoso-faq-pro .accordion-item.active .accordion-title .toggle {
    transform: translateY(-50%) rotate(180deg) !important;
    color: #9E1B22 !important;
}
/* Reveal suave del contenido (complementa el slide JS nativo de Flatsome) */
html body .tifoso-faq-pro .accordion-item.active .accordion-inner {
    animation: tifoso-faq-reveal .28s ease both !important;
}
@keyframes tifoso-faq-reveal {
    from { opacity: 0; transform: translateY(-4px); }
    to   { opacity: 1; transform: translateY(0); }
}


/* ============================================================
   W. AUDITORÍA COMPRADOR v8 — diseño + confianza (2026-05-31)
   Hallazgos de la auditoría como comprador (diseño + faltantes).
   ============================================================ */

/* W1. [CRÍTICO] Estrellas de rating SIEMPRE doradas (en el catálogo y
   sliders de home heredaban el grafito de --fs-color-primary -> invisibles
   sobre la tarjeta oscura). */
html body .star-rating,
html body .star-rating::before,
html body .star-rating span::before { color: #D4A944 !important; }

/* W2. [CRÍTICO] Notices de WooCommerce con estilo de marca (carrito vacío,
   "prodotto aggiunto", errores de cupón...). Antes: default azul Flatsome
   sobre fondo oscuro = ilegible y fuera de marca. */
html body .woocommerce-info,
html body .woocommerce-message,
html body .woocommerce-error,
html body .woocommerce-noreviews,
html body .woocommerce .woocommerce-info,
html body .woocommerce .woocommerce-message,
html body .woocommerce .woocommerce-error {
    background: #141418 !important;
    color: #F5F5F0 !important;
    border-top: 3px solid #D4A944 !important;
    border-radius: 4px !important;
}
html body .woocommerce-error { border-top-color: #E04848 !important; }
html body .woocommerce-message { border-top-color: #3DAA5B !important; }
html body .woocommerce-info a,
html body .woocommerce-message a,
html body .woocommerce-error a { color: #D4A944 !important; }
html body .woocommerce-info::before,
html body .woocommerce-message::before,
html body .woocommerce-error::before { color: inherit !important; }

/* W3. Iconos SVG de la barra de garantías y footer (sustituyen los emojis) */
html body .tifoso-gb-ico { display: inline-flex; align-items: center; }
html body .tifoso-gb-ico svg { width: 17px; height: 17px; color: #D4A944; }
html body .tifoso-ft-shipline { display: flex; align-items: center; gap: 7px; margin-bottom: 4px; }
html body .tifoso-ft-shipline svg { width: 15px; height: 15px; color: #D4A944; flex-shrink: 0; }

/* W4. Rojo descontrolado en acciones que NO son "comprar" -> grafito.
   Jerarquía de marca: rojo solo "Aggiungi al carrello"/checkout. */
/* Buscador de cabecera (snippet lo dejaba rojo #e11d2e) */
html body .tifoso-header-search .ux-search-submit,
html body .tifoso-header-search form .ux-search-submit,
html body .tifoso-header-search .submit-button {
    background-color: #0D1117 !important;
    border-color: #0D1117 !important;
    color: #F5F5F0 !important;
}
/* CTA "Vai al catalogo" del bloque FAQ -> dorado (explorar) */
html body .tifoso-faq-actions a.tfq-primary,
html body .tifoso-faq-cta a.tfq-primary {
    background-color: #D4A944 !important;
    color: #0D1117 !important;
    border-color: #D4A944 !important;
}
html body .tifoso-faq-actions a.tfq-primary:hover { background-color: #c2982f !important; }
/* Botones de utilidad (filtro de precio, volver a la tienda, vaciar) -> grafito */
html body .price_slider_amount button.button,
html body .widget_price_filter button.button,
html body .return-to-shop a.button,
html body a.reset_variations,
html body .woocommerce-cart-form a.button:not(.checkout-button) {
    background-color: #0D1117 !important;
    border-color: #0D1117 !important;
    color: #F5F5F0 !important;
}
html body .price_slider_amount button.button:hover,
html body .widget_price_filter button.button:hover { background-color: #1F1F24 !important; }

/* W5. Móvil: NO ocultar señales de confianza. Mostrar las 4 garantías
   en dos filas en vez de esconder "Pagamento" y "Assistenza". */
@media (max-width: 749px) {
    html body .tifoso-gb-item:nth-child(n+3) { display: inline-flex !important; }
    html body .tifoso-gb-inner { gap: 9px 16px !important; }
    html body .tifoso-gb-item { font-size: 0.7rem !important; }
}


/* ============================================================
   X. SELECTOR DE CANTIDAD ordenado + alineado con "Aggiungi al carrello"
   Problema: el input numérico heredaba el fondo oscuro de los formularios
   (#1F1F24) y quedaba como una caja negra entre los botones claros −/+,
   descuadrado respecto al botón rojo. Lo unificamos en un stepper limpio.
   ============================================================ */

/* Fila cantidad + botón a la misma altura y bien alineados */
html body.single-product .woocommerce-variation-add-to-cart,
html body.single-product form.cart:not(.variations_form) {
    display: flex !important;
    align-items: stretch !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
}

/* Grupo del stepper: borde único, esquinas redondeadas, fondo claro */
html body.single-product .ux-quantity.quantity {
    display: inline-flex !important;
    align-items: stretch !important;
    height: 52px !important;
    border: 1px solid #d4d4d8 !important;
    border-radius: 6px !important;
    overflow: hidden !important;
    background: #ffffff !important;
    box-shadow: none !important;
}

/* Número: fondo CLARO, texto oscuro, centrado, sin flechas nativas */
html body.single-product .ux-quantity .qty,
html body.single-product .ux-quantity input.input-text.qty {
    height: 100% !important;
    width: 52px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #ffffff !important;
    color: #0D1117 !important;
    border: none !important;
    border-left: 1px solid #ececec !important;
    border-right: 1px solid #ececec !important;
    border-radius: 0 !important;
    text-align: center !important;
    font-family: 'Oswald', sans-serif !important;
    font-weight: 600 !important;
    font-size: 1rem !important;
    box-shadow: none !important;
    -moz-appearance: textfield !important;
}
html body.single-product .ux-quantity .qty::-webkit-outer-spin-button,
html body.single-product .ux-quantity .qty::-webkit-inner-spin-button {
    -webkit-appearance: none !important; margin: 0 !important;
}

/* Botones −/+ : claros, misma altura, sin borde propio (lo da el grupo) */
html body.single-product .ux-quantity .ux-quantity__button {
    height: 100% !important;
    width: 46px !important;
    margin: 0 !important;
    background: #f5f5f3 !important;
    color: #0D1117 !important;
    border: none !important;
    border-radius: 0 !important;
    font-size: 1.2rem !important;
    line-height: 1 !important;
    box-shadow: none !important;
}
html body.single-product .ux-quantity .ux-quantity__button:hover { background: #e6e3da !important; }

/* Botón comprar: misma altura del stepper, texto centrado */
html body.single-product .woocommerce-variation-add-to-cart .single_add_to_cart_button,
html body.single-product form.cart .single_add_to_cart_button {
    height: 52px !important;
    margin: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 1 1 auto !important;
    min-width: 220px !important;
}


/* ============================================================
   Y. PERSONALIZZAZIONE (Nome/Numero + Toppe) + sellos de pago
   Estilo tipo imbictoz, dentro de la paleta Tifoso.
   ============================================================ */
html body.single-product .tifoso-perso {
    border: 1px solid #e7e3d8 !important;
    border-radius: 10px !important;
    background: #faf8f2 !important;
    padding: 14px 18px !important;
    margin: 6px 0 16px !important;
}
html body.single-product .tifoso-perso__title {
    font-family: 'Oswald', sans-serif !important;
    font-size: .95rem !important;
    text-transform: uppercase !important;
    letter-spacing: .06em !important;
    color: #0D1117 !important;
    margin: 0 0 6px !important;
}
html body.single-product .tifoso-perso__check {
    display: flex !important;
    align-items: center !important;
    gap: 9px !important;
    padding: 9px 0 !important;
    margin: 0 !important;
    color: #2b2f36 !important;
    font-family: 'Inter', sans-serif !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    font-size: .92rem !important;
    cursor: pointer !important;
    border-top: 1px solid #ece8dd !important;
}
html body.single-product .tifoso-perso__check input[type="checkbox"] {
    width: 17px !important; height: 17px !important;
    accent-color: #9E1B22 !important;
    flex-shrink: 0 !important; margin: 0 !important;
}
html body.single-product .tifoso-perso__price {
    margin-left: auto !important;
    font-family: 'Oswald', sans-serif !important;
    font-weight: 600 !important;
    color: #9E1B22 !important;
    white-space: nowrap !important;
}
html body.single-product .tifoso-perso__price .woocommerce-Price-amount { color: #9E1B22 !important; font-size: .95rem !important; }
html body.single-product .tifoso-perso__nn { display: flex !important; gap: 8px !important; padding: 8px 0 4px !important; }
html body.single-product .tifoso-perso__nn[hidden] { display: none !important; }
html body.single-product .tifoso-perso__input {
    flex: 1 1 auto !important;
    background: #ffffff !important;
    color: #0D1117 !important;
    border: 1px solid #d4d4d8 !important;
    border-radius: 6px !important;
    padding: .6rem .8rem !important;
    text-transform: uppercase !important;
    font-family: 'Oswald', sans-serif !important;
    letter-spacing: .04em !important;
    box-shadow: none !important;
}
html body.single-product .tifoso-perso__input--num { flex: 0 0 72px !important; text-align: center !important; }
html body.single-product .tifoso-perso__label {
    display: block !important;
    font-size: .76rem !important; text-transform: uppercase !important; letter-spacing: .05em !important;
    color: #6a6a65 !important; margin: 10px 0 0 !important;
}

/* Sellos de pago + "Pagamento sicuro garantito" bajo el botón */
html body.single-product .tifoso-pay-assurance {
    display: flex !important; align-items: center !important; justify-content: space-between !important;
    flex-wrap: wrap !important; gap: 10px !important;
    margin: 12px 0 0 !important; padding-top: 12px !important; border-top: 1px solid #f0ede6 !important;
}
html body.single-product .tifoso-pay-secure {
    display: inline-flex !important; align-items: center !important; gap: 7px !important;
    font-size: .82rem !important; color: #374151 !important; font-weight: 600 !important;
}
html body.single-product .tifoso-pay-secure svg { width: 15px !important; height: 15px !important; color: #3DAA5B !important; }
html body.single-product .tifoso-pay-badges { display: inline-flex !important; gap: 6px !important; }
html body.single-product .tifoso-pay-badges span {
    background: #0D1117 !important; color: #fff !important;
    font-family: 'Inter', sans-serif !important; font-weight: 700 !important;
    font-size: .62rem !important; letter-spacing: .03em !important; padding: 4px 7px !important; border-radius: 4px !important;
}


/* ============================================================
   Z. CAJA GARANZIA (ficha producto) + footer pagos unificados
   ============================================================ */
/* Caja Garanzia: tarjeta oscura premium bajo el área de compra */
html body.single-product .tifoso-garanzia {
    margin: 18px 0 0 !important;
    background: #0D1117 !important;
    border: 1px solid rgba(212,169,68,0.18) !important;
    border-radius: 12px !important;
    padding: 16px 18px 6px !important;
    color: #F5F5F0 !important;
}
html body.single-product .tifoso-garanzia__head {
    display: flex !important; align-items: center !important; gap: 9px !important;
    font-family: 'Oswald', sans-serif !important; font-weight: 700 !important;
    text-transform: uppercase !important; letter-spacing: .05em !important;
    color: #D4A944 !important; font-size: .92rem !important; margin: 0 0 8px !important;
}
html body.single-product .tifoso-garanzia__head svg { width: 18px !important; height: 18px !important; color: #D4A944 !important; }
html body.single-product .tifoso-garanzia__row {
    display: flex !important; gap: 12px !important; align-items: flex-start !important;
    padding: 12px 0 !important; border-top: 1px solid rgba(255,255,255,0.08) !important;
}
html body.single-product .tifoso-garanzia__row svg { width: 20px !important; height: 20px !important; color: #D4A944 !important; flex-shrink: 0 !important; margin-top: 2px !important; }
html body.single-product .tifoso-garanzia__row strong {
    display: block !important; color: #ffffff !important;
    font-family: 'Oswald', sans-serif !important; font-weight: 600 !important;
    font-size: .88rem !important; text-transform: uppercase !important; letter-spacing: .03em !important;
}
html body.single-product .tifoso-garanzia__row span {
    display: block !important; color: #b9b7b0 !important;
    font-family: 'Inter', sans-serif !important; font-size: .8rem !important; line-height: 1.5 !important; margin-top: 3px !important;
}

/* Footer: ocultar la barra de iconos de pago por defecto de Flatsome
   (gris, con "Cash on Delivery") -> deja solo los chips "PAGAMENTI SICURI"
   ya estilizados arriba. Unifica y elimina la promesa de contrassegno. */
html body .absolute-footer .payment-icons,
html body .absolute-footer .footer-secondary .payment-icons { display: none !important; }
