/**
 * ═══════════════════════════════════════════════════════════════════════════════
 * ULTRA PREMIUM LUXURY THEME - TuningFile.it
 * Design: High-end Supercar Dealership / Ferrari / Lamborghini Style
 * ═══════════════════════════════════════════════════════════════════════════════
 *
 * CONTRAST FIXES: WCAG 2.1 AA Compliant
 * QUESTO FILE DEVE ESSERE CARICATO PER ULTIMO
 */

/* ═══════════════════════════════════════════════════════════════════════════════
   LUXURY CSS VARIABLES - ENHANCED CONTRAST
   ═══════════════════════════════════════════════════════════════════════════════ */
:root {
    /* Premium Dark Palette */
    --lux-void: #030305;
    --lux-abyss: #050508;
    --lux-deep: #08080c;
    --lux-black: #0a0a0e;
    --lux-surface: #101014;
    --lux-elevated: #16161c;
    --lux-card: #1c1c24;
    --lux-hover: #242430;

    /* Luxury Red - Elegant Carminio (matching login button) */
    --lux-red: #c41e3a;
    --lux-red-vivid: #d4243f;
    --lux-red-deep: #8b0000;
    --lux-red-glow: rgba(196, 30, 58, 0.5);
    --lux-red-subtle: rgba(196, 30, 58, 0.15);

    /* Premium Gold Accents */
    --lux-gold: #fbbf24;
    --lux-gold-dim: #d97706;
    --lux-gold-glow: rgba(251, 191, 36, 0.4);

    /* HIGH CONTRAST White - WCAG AA Compliant */
    --lux-white: #ffffff;
    --lux-text-primary: rgba(255, 255, 255, 0.95);
    --lux-text-secondary: rgba(255, 255, 255, 0.85);
    --lux-text-muted: rgba(255, 255, 255, 0.70);
    --lux-text-subtle: rgba(255, 255, 255, 0.55);
    --lux-border: rgba(255, 255, 255, 0.08);
    --lux-border-hover: rgba(255, 255, 255, 0.15);

    /* Premium Shadows & Glows */
    --lux-shadow-subtle: 0 2px 10px rgba(0, 0, 0, 0.4);
    --lux-shadow-medium: 0 8px 30px rgba(0, 0, 0, 0.5);
    --lux-shadow-deep: 0 20px 60px rgba(0, 0, 0, 0.7);
    --lux-shadow-glow-red: 0 0 60px var(--lux-red-glow), 0 0 120px rgba(196, 30, 58, 0.2);
    --lux-shadow-glow-gold: 0 0 40px var(--lux-gold-glow);

    /* Premium Transitions */
    --lux-ease: cubic-bezier(0.25, 0.46, 0.45, 0.94);
    --lux-ease-out: cubic-bezier(0.16, 1, 0.3, 1);
    --lux-ease-bounce: cubic-bezier(0.34, 1.56, 0.64, 1);
    --lux-duration: 0.4s;
    --lux-duration-slow: 0.6s;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   GLOBAL RESET - FORCE LUXURY DARK EVERYWHERE
   ═══════════════════════════════════════════════════════════════════════════════ */
html {
    background: var(--lux-void) !important;
}

body,
.scheme-light,
.scheme-dark,
.page,
.home,
.ts-page,
main,
#content,
.content-area,
.site-content,
.luxury-dark-override {
    background: var(--lux-black) !important;
    background-image:
        radial-gradient(ellipse 80% 50% at 50% -20%, rgba(196, 30, 58, 0.08) 0%, transparent 50%),
        radial-gradient(ellipse 60% 40% at 100% 100%, rgba(196, 30, 58, 0.04) 0%, transparent 40%),
        linear-gradient(180deg, var(--lux-black) 0%, var(--lux-abyss) 100%) !important;
    color: var(--lux-text-primary) !important;
}

/* Subtle grain texture */
body::before {
    content: '';
    position: fixed;
    inset: 0;
    pointer-events: none;
    opacity: 0.02;
    z-index: 10000;
    background: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* ═══════════════════════════════════════════════════════════════════════════════
   SECTION SPACING - Riduce padding Bootstrap pt-7/pb-7
   ═══════════════════════════════════════════════════════════════════════════════ */
.nk-section.pt-7 {
    padding-top: 3rem !important;
}
.nk-section.pb-7 {
    padding-bottom: 3rem !important;
}
.nk-section.pt-lg-7 {
    padding-top: 2rem !important;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   TYPOGRAPHY - HIGH CONTRAST TEXT
   ═══════════════════════════════════════════════════════════════════════════════ */

/* Primary Headings - Pure White with Subtle Glow */
h1, h2, h3, h4, h5, h6,
.wp-header h2,
.ts-title,
.section-title,
.luxury-dark-override h1,
.luxury-dark-override h2,
.luxury-dark-override h3,
.luxury-dark-override h4,
.luxury-dark-override h5,
.luxury-dark-override h6 {
    color: var(--lux-white) !important;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    font-weight: 700;
    text-shadow: 0 0 40px rgba(255, 255, 255, 0.1);
}

/* Premium H1 with gradient */
h1, .ts-hero__title, .hero-title {
    background: linear-gradient(135deg,
        var(--lux-white) 0%,
        rgba(255, 255, 255, 0.9) 50%,
        var(--lux-white) 100%
    ) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
    filter: drop-shadow(0 4px 20px rgba(255, 255, 255, 0.15));
}

/* Body Text - High Contrast */
p, li, span, div, td, label,
.luxury-dark-override p,
.luxury-dark-override span,
.luxury-dark-override li,
.luxury-dark-override label {
    color: var(--lux-text-secondary) !important;
}

/* Muted text - Still readable */
.text-muted, .muted, small,
[class*="muted"],
[class*="subtitle"] {
    color: var(--lux-text-muted) !important;
}

/* Links */
a {
    color: var(--lux-text-primary) !important;
    transition: all var(--lux-duration) var(--lux-ease) !important;
    text-decoration: none !important;
}

a:hover {
    color: var(--lux-red-vivid) !important;
    text-shadow: 0 0 20px var(--lux-red-glow);
}

/* ═══ BUTTON LINK EXCEPTIONS - No red-on-red ═══ */
/* Login button - keep white text on red background */
a.tf-header__login-btn,
a.tf-header__login-btn:hover,
a.tf-header__login-btn:focus {
    color: #ffffff !important;
    text-shadow: none !important;
}

/* Login button icon - keep white (iconify-icon component) */
a.tf-header__login-btn iconify-icon,
a.tf-header__login-btn:hover iconify-icon,
.tf-header__login-btn iconify-icon,
.tf-header__login-btn:hover iconify-icon {
    color: #ffffff !important;
}

/* CTA button in legal pages - keep white text */
.installerViewContainer a,
.installerViewContainer a:hover,
.installerViewContainer .cta,
.installerViewContainer .cta:hover,
.installerViewContainer .cta span,
.installerViewContainer .cta:hover span {
    color: #ffffff !important;
    text-shadow: none !important;
}

/* Accent Text */
.text-accent, .accent, strong,
h2 strong, h3 strong,
.wp-badge {
    background: linear-gradient(135deg, var(--lux-red-vivid), var(--lux-red)) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
    font-weight: 700 !important;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   FIX INLINE COLOR STYLES - CONTRAST OVERRIDE
   ═══════════════════════════════════════════════════════════════════════════════ */

/* Override ALL dark colors to be light */
[style*="color: #000"],
[style*="color:#000"],
[style*="color: black"],
[style*="color:black"],
[style*="color: #333"],
[style*="color:#333"],
[style*="color: #444"],
[style*="color:#444"],
[style*="color: #555"],
[style*="color:#555"],
[style*="color: #666"],
[style*="color:#666"] {
    color: var(--lux-text-primary) !important;
}

/* Override gray text to be brighter */
[style*="color: #777"],
[style*="color:#777"],
[style*="color: #888"],
[style*="color:#888"],
[style*="color: #999"],
[style*="color:#999"],
[style*="color: #aaa"],
[style*="color:#aaa"],
[style*="color: #bbb"],
[style*="color:#bbb"] {
    color: var(--lux-text-secondary) !important;
}

/* Fix text-dark class */
.text-dark {
    color: var(--lux-text-primary) !important;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   ULTRA LUXURY CARDS - GLASSMORPHISM + RED GLOW
   ═══════════════════════════════════════════════════════════════════════════════ */
.card,
.wp-card,
.ts-card,
.box,
.panel,
[class*="card"]:not(.file-transfer-card):not([class*="credit-card"]):not(.wp-tuning-card):not(.wp-tuning-card-icon):not(.wp-tuning-card-content),
.wp-startblock-card,
.wp-step-card,
.brand-card,
.model-card,
.generation-card,
.engine-card {
    background: linear-gradient(
        165deg,
        rgba(28, 28, 36, 0.95) 0%,
        rgba(16, 16, 20, 0.98) 100%
    ) !important;
    backdrop-filter: blur(30px) saturate(150%) !important;
    -webkit-backdrop-filter: blur(30px) saturate(150%) !important;
    border: 1px solid var(--lux-border) !important;
    border-radius: 20px !important;
    box-shadow:
        var(--lux-shadow-medium),
        inset 0 1px 0 rgba(255, 255, 255, 0.06),
        inset 0 -1px 0 rgba(0, 0, 0, 0.3) !important;
    transition: all var(--lux-duration-slow) var(--lux-ease-out) !important;
    position: relative !important;
    overflow: hidden !important;
}

/* Card Hover - Dramatic Red Glow */
.card:hover,
.wp-card:hover,
.ts-card:hover,
.wp-startblock-card:hover,
.brand-card:hover,
.model-card:hover,
.generation-card:hover,
[class*="card"]:not(.file-transfer-card):not(.wp-tuning-card):not(.wp-tuning-card-icon):not(.wp-tuning-card-content):hover {
    border-color: var(--lux-red) !important;
    box-shadow:
        var(--lux-shadow-deep),
        0 0 80px rgba(196, 30, 58, 0.25),
        0 0 120px rgba(196, 30, 58, 0.1),
        inset 0 1px 0 rgba(255, 255, 255, 0.1) !important;
    transform: translateY(-12px) scale(1.02) !important;
}

/* Card Top Accent Line - Animated */
.card::before,
.wp-card::before,
.wp-startblock-card::before,
.brand-card::before,
.model-card::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 3px !important;
    background: linear-gradient(90deg,
        transparent 0%,
        var(--lux-red-deep) 15%,
        var(--lux-red) 35%,
        var(--lux-red-vivid) 50%,
        var(--lux-red) 65%,
        var(--lux-red-deep) 85%,
        transparent 100%
    ) !important;
    opacity: 0 !important;
    transition: opacity var(--lux-duration) var(--lux-ease) !important;
}

.card:hover::before,
.wp-card:hover::before,
.wp-startblock-card:hover::before,
.brand-card:hover::before,
.model-card:hover::before {
    opacity: 1 !important;
}

/* Card Inner Glow */
.card::after,
.wp-card::after,
.wp-startblock-card::after {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    border-radius: inherit !important;
    background: radial-gradient(
        ellipse at 50% 0%,
        rgba(196, 30, 58, 0.15) 0%,
        transparent 60%
    ) !important;
    opacity: 0 !important;
    transition: opacity var(--lux-duration) var(--lux-ease) !important;
    pointer-events: none !important;
}

.card:hover::after,
.wp-card:hover::after,
.wp-startblock-card:hover::after {
    opacity: 1 !important;
}

/* Card Content Text - High Contrast */
.card h3, .card h4, .card h5,
.wp-card h3, .wp-card h4,
.wp-startblock-card h3 {
    color: var(--lux-white) !important;
    font-weight: 700 !important;
}

.card p, .card span,
.wp-card p, .wp-card span,
.wp-startblock-card p {
    color: var(--lux-text-secondary) !important;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   ULTRA LUXURY BUTTONS - ANIMATED GLOW
   ═══════════════════════════════════════════════════════════════════════════════ */
.btn,
.button,
button[type="submit"],
input[type="submit"],
.wp-btn,
.wp-btn-primary,
.elementor-button,
[class*="btn-primary"],
[class*="button-primary"] {
    background: linear-gradient(
        135deg,
        var(--lux-red-vivid) 0%,
        var(--lux-red) 40%,
        var(--lux-red-deep) 100%
    ) !important;
    color: var(--lux-white) !important;
    border: none !important;
    text-transform: uppercase !important;
    letter-spacing: 0.18em !important;
    font-weight: 800 !important;
    font-size: 0.8rem !important;
    padding: 18px 42px !important;
    border-radius: 10px !important;
    box-shadow:
        0 6px 25px rgba(196, 30, 58, 0.45),
        0 12px 50px rgba(196, 30, 58, 0.2),
        inset 0 1px 0 rgba(255, 255, 255, 0.25),
        inset 0 -2px 0 rgba(0, 0, 0, 0.2) !important;
    transition: all var(--lux-duration) var(--lux-ease-out) !important;
    position: relative !important;
    overflow: hidden !important;
    cursor: pointer !important;
    z-index: 1 !important;
}

/* Button Shine Sweep */
.btn::before,
.button::before,
.wp-btn::before,
button[type="submit"]::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: -150% !important;
    width: 100% !important;
    height: 100% !important;
    background: linear-gradient(
        120deg,
        transparent 0%,
        rgba(255, 255, 255, 0.4) 50%,
        transparent 100%
    ) !important;
    transition: left 0.8s var(--lux-ease) !important;
    z-index: 2 !important;
}

.btn:hover::before,
.button:hover::before,
.wp-btn:hover::before,
button[type="submit"]:hover::before {
    left: 150% !important;
}

/* Button Hover */
.btn:hover,
.button:hover,
button[type="submit"]:hover,
.wp-btn:hover,
.wp-btn-primary:hover,
[class*="btn-primary"]:hover {
    transform: translateY(-5px) scale(1.03) !important;
    box-shadow:
        0 10px 35px rgba(196, 30, 58, 0.55),
        0 20px 70px rgba(196, 30, 58, 0.3),
        0 0 100px rgba(196, 30, 58, 0.4),
        inset 0 1px 0 rgba(255, 255, 255, 0.35) !important;
}

/* Secondary Buttons */
.btn-secondary,
.wp-btn-secondary,
[class*="btn-outline"],
[class*="btn-ghost"] {
    background: transparent !important;
    border: 2px solid var(--lux-border-hover) !important;
    color: var(--lux-text-primary) !important;
    box-shadow: none !important;
}

.btn-secondary:hover,
.wp-btn-secondary:hover,
[class*="btn-outline"]:hover {
    background: rgba(196, 30, 58, 0.1) !important;
    border-color: var(--lux-red) !important;
    color: var(--lux-white) !important;
    box-shadow: 0 0 40px rgba(196, 30, 58, 0.3) !important;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   LUXURY FORMS - PREMIUM DARK INPUTS
   ═══════════════════════════════════════════════════════════════════════════════ */
input[type="text"],
input[type="email"],
input[type="password"],
input[type="tel"],
input[type="number"],
input[type="search"],
input[type="url"],
textarea,
select,
.form-control,
.customselect {
    background: rgba(255, 255, 255, 0.04) !important;
    border: 1px solid var(--lux-border) !important;
    color: var(--lux-text-primary) !important;
    padding: 18px 22px !important;
    border-radius: 12px !important;
    font-size: 1rem !important;
    transition: all var(--lux-duration) var(--lux-ease) !important;
    backdrop-filter: blur(15px) !important;
}

input:focus,
textarea:focus,
select:focus,
.form-control:focus,
.customselect:focus {
    border-color: var(--lux-red) !important;
    box-shadow:
        0 0 0 4px rgba(196, 30, 58, 0.15),
        0 0 40px rgba(196, 30, 58, 0.2),
        inset 0 0 30px rgba(196, 30, 58, 0.05) !important;
    outline: none !important;
    background: rgba(255, 255, 255, 0.06) !important;
}

input::placeholder,
textarea::placeholder {
    color: var(--lux-text-muted) !important;
    font-style: italic !important;
    opacity: 1 !important;
}

/* Eccezione: dropdown bianchi nelle pagine database */
.databasesearMain_container select,
.databasesearMain_container .customselect,
.filtermenu select,
.filtermenu .customselect {
    background: #fff !important;
    color: #333 !important;
    border-color: #ddd !important;
}

label {
    color: var(--lux-text-secondary) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.1em !important;
    font-size: 0.75rem !important;
    font-weight: 700 !important;
    margin-bottom: 10px !important;
    display: block !important;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   LUXURY ICONS - RED GLOW
   ═══════════════════════════════════════════════════════════════════════════════ */
.icon,
iconify-icon,
.wp-card-icon,
[class*="icon"] svg,
.wp-tuning-card-icon,
.wp-step-number {
    color: var(--lux-red) !important;
    filter: drop-shadow(0 0 15px rgba(196, 30, 58, 0.5)) !important;
    transition: all var(--lux-duration) var(--lux-ease) !important;
}

.wp-card:hover iconify-icon,
.wp-card:hover .wp-card-icon,
.wp-tuning-card:hover .wp-tuning-card-icon {
    color: var(--lux-red-vivid) !important;
    filter: drop-shadow(0 0 25px rgba(196, 30, 58, 0.8)) !important;
    transform: scale(1.15) !important;
}

.wp-card-icon,
.icon-box,
.wp-tuning-card-icon,
[class*="icon-box"] {
    background: linear-gradient(
        145deg,
        rgba(196, 30, 58, 0.18) 0%,
        rgba(196, 30, 58, 0.06) 100%
    ) !important;
    border: 1px solid rgba(196, 30, 58, 0.25) !important;
    border-radius: 16px !important;
    box-shadow:
        0 0 40px rgba(196, 30, 58, 0.2),
        inset 0 0 25px rgba(196, 30, 58, 0.1) !important;
}

/* Step Numbers - Red Gradient */
.wp-step-number,
.step-number,
[class*="step-number"] {
    background: linear-gradient(135deg, var(--lux-red-vivid) 0%, var(--lux-red-deep) 100%) !important;
    color: var(--lux-white) !important;
    font-weight: 900 !important;
    box-shadow: 0 0 40px rgba(196, 30, 58, 0.5) !important;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   TUNING-SPECS WIDGET - ULTRA PREMIUM
   ═══════════════════════════════════════════════════════════════════════════════ */
body .TuningSpaces_quickSearch_Widget,
.TuningSpaces_quickSearch_Widget {
    background: linear-gradient(
        180deg,
        var(--lux-black) 0%,
        var(--lux-deep) 50%,
        var(--lux-black) 100%
    ) !important;
    /* padding rimosso - gestito da widgets-premium.css */
    position: relative !important;
}

/* Widget padding - lasciato gestire da widgets-premium.css */

/* Decorative elements */
body .TuningSpaces_quickSearch_Widget::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 300px !important;
    height: 3px !important;
    background: linear-gradient(90deg,
        transparent,
        var(--lux-red-deep),
        var(--lux-red),
        var(--lux-red-deep),
        transparent
    ) !important;
    box-shadow: 0 0 30px var(--lux-red-glow) !important;
}

body .TuningSpaces_quickSearch_Widget .tuningSpacesW_section_title,
.tuningSpacesW_section_title {
    display: inline-block !important;
    background: linear-gradient(135deg, var(--lux-red-vivid) 0%, var(--lux-red) 40%, var(--lux-red-deep) 100%) !important;
    color: var(--lux-white) !important;
    font-size: 0.75rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.15em !important;
    text-transform: uppercase !important;
    padding: 12px 24px !important;
    border-radius: 8px !important;
    margin-bottom: 20px !important;
    box-shadow: 0 4px 20px rgba(196, 30, 58, 0.4), inset 0 1px 0 rgba(255, 255, 255, 0.2) !important;
    text-shadow: none !important;
}

.centerheadingCommon h2 {
    color: var(--lux-white) !important;
    font-size: 3rem !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
    margin-bottom: 15px !important;
    text-shadow: 0 0 60px rgba(255, 255, 255, 0.15) !important;
}

body .TuningSpaces_quickSearch_Widget .tuningSpacesW_section_Subtitle,
.tuningSpacesW_section_Subtitle,
.centerheadingCommon p {
    color: var(--lux-text-muted) !important;
    font-size: 1.1rem !important;
    letter-spacing: 0.05em !important;
}

/* Search form - Glassmorphism Premium */
body .bannersearchContainer,
body .searchcarform,
.bannersearchContainer,
.searchcarform {
    background: linear-gradient(
        165deg,
        rgba(28, 28, 36, 0.9) 0%,
        rgba(16, 16, 20, 0.95) 100%
    ) !important;
    backdrop-filter: blur(30px) saturate(150%) !important;
    border: 1px solid var(--lux-border) !important;
    border-radius: 20px !important;
    padding: 40px !important;
    box-shadow: var(--lux-shadow-deep) !important;
}

/* Select dropdowns */
body .TuningSpaces_quickSearch_Widget select,
body .TuningSpaces_quickSearch_Widget .customselect,
body .bannersearchContainer select,
body .searchcarform select {
    background: rgba(255, 255, 255, 0.04) !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23dc2626' d='M6 9L1 4h10z'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 18px center !important;
    border: 1px solid var(--lux-border) !important;
    color: var(--lux-text-primary) !important;
    border-radius: 12px !important;
    padding: 18px 22px !important;
    transition: all var(--lux-duration) var(--lux-ease) !important;
}

body .TuningSpaces_quickSearch_Widget select:hover,
body .bannersearchContainer select:hover {
    border-color: rgba(196, 30, 58, 0.5) !important;
    background-color: rgba(255, 255, 255, 0.06) !important;
}

body .TuningSpaces_quickSearch_Widget select option,
body .bannersearchContainer select option {
    background: var(--lux-surface) !important;
    color: var(--lux-text-primary) !important;
    padding: 15px !important;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   DATABASE PAGES - ULTRA LUXURY SPECS
   ═══════════════════════════════════════════════════════════════════════════════ */

/* Main containers */
.ts-page,
.vehicleDatabase,
[class*="database"],
[class*="detail-page"],
.CmnSectionpadding,
section.CmnSectionpadding {
    background: var(--lux-black) !important;
}

/* Hero sections */
.ts-hero,
.ts-hero__content {
    background: linear-gradient(180deg, var(--lux-deep) 0%, var(--lux-black) 100%) !important;
}

.ts-hero__title {
    color: var(--lux-white) !important;
    font-size: 3.5rem !important;
    text-shadow: 0 0 60px rgba(255, 255, 255, 0.2) !important;
}

.ts-hero__subtitle {
    color: var(--lux-text-muted) !important;
    font-size: 1.2rem !important;
}

/* Stats boxes */
.ts-hero__stat,
.ts-stat,
[class*="stat-box"],
[class*="stat-card"] {
    background: var(--lux-surface) !important;
    border: 1px solid var(--lux-border) !important;
    border-radius: 16px !important;
    padding: 24px !important;
}

.ts-hero__stat-value,
.ts-stat__value,
[class*="stat-value"] {
    color: var(--lux-red-vivid) !important;
    font-weight: 900 !important;
    font-size: 2.5rem !important;
    text-shadow: 0 0 30px var(--lux-red-glow) !important;
}

.ts-hero__stat-label,
.ts-stat__label,
[class*="stat-label"] {
    color: var(--lux-text-muted) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.15em !important;
    font-size: 0.75rem !important;
    font-weight: 600 !important;
}

/* Specs tables */
.ts-specs,
.ts-specs-table,
[class*="specs-table"],
[class*="specs-list"] {
    background: var(--lux-surface) !important;
    border: 1px solid var(--lux-border) !important;
    border-radius: 16px !important;
    overflow: hidden !important;
}

.ts-specs__row,
.ts-specs-row {
    border-bottom: 1px solid var(--lux-border) !important;
    padding: 16px 20px !important;
    transition: all var(--lux-duration) var(--lux-ease) !important;
}

.ts-specs__row:hover,
.ts-specs-row:hover {
    background: rgba(196, 30, 58, 0.05) !important;
}

.ts-specs__label,
.ts-specs-label {
    color: var(--lux-text-muted) !important;
    font-size: 0.9rem !important;
}

.ts-specs__value,
.ts-specs-value {
    color: var(--lux-text-primary) !important;
    font-weight: 700 !important;
}

/* Power/Performance values - RED */
.ts-power,
.power-value,
[class*="power"],
[class*="torque"],
[class*="hp"],
[class*="kw"] {
    color: var(--lux-red-vivid) !important;
    font-weight: 900 !important;
    text-shadow: 0 0 20px var(--lux-red-glow) !important;
}

/* Progress bars */
.ts-progress,
.progress-bar,
[class*="progress"]:not([class*="in-progress"]) {
    background: var(--lux-elevated) !important;
    border-radius: 10px !important;
    overflow: hidden !important;
}

.ts-progress__fill,
.progress-bar-fill,
[class*="progress-fill"],
[class*="progress-bar"]:not([class*="bg"]) {
    background: linear-gradient(90deg, var(--lux-red-deep) 0%, var(--lux-red) 50%, var(--lux-red-vivid) 100%) !important;
    box-shadow: 0 0 25px var(--lux-red-glow) !important;
    border-radius: 10px !important;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   WIDGET SECTIONS - ALL LUXURY
   ═══════════════════════════════════════════════════════════════════════════════ */

/* All widget containers */
.steps_Widget,
.Text_Widget,
.TuningTypes_Widget,
.VideoWithText_Widget,
.rightVideoLastSec,
[class*="_Widget"],
.brandsSection,
.TuningSpacesLOGOS_Widget,
.TunningType,
.subSections {
    background: var(--lux-black) !important;
}

/* Tuning Database Title - Match Register Button Style */
.TunningType .ContentWrapper h6,
.TuningSpacesLOGOS_Widget .ContentWrapper h6 {
    background: linear-gradient(135deg, var(--lux-red-vivid) 0%, var(--lux-red) 40%, var(--lux-red-deep) 100%) !important;
    color: var(--lux-white) !important;
    border: none !important;
    text-transform: uppercase !important;
    letter-spacing: 0.15em !important;
    font-weight: 700 !important;
    font-size: 0.75rem !important;
    padding: 12px 24px !important;
    border-radius: 8px !important;
    box-shadow: 0 4px 20px rgba(196, 30, 58, 0.4), inset 0 1px 0 rgba(255, 255, 255, 0.2) !important;
    display: inline-block !important;
    margin-bottom: 16px !important;
}

.TunningType .ContentWrapper h3,
.TuningSpacesLOGOS_Widget .ContentWrapper h3 {
    color: var(--lux-white) !important;
}

/* Text Widget content */
.Text_Widget h1,
.Text_Widget h2,
.Text_Widget h3,
.Text_Widget h4,
.wp-text-content h1,
.wp-text-content h2,
.wp-text-content h3,
.wp-text-content h4 {
    color: var(--lux-white) !important;
}

.Text_Widget p,
.Text_Widget span,
.Text_Widget li,
.wp-text-content p,
.wp-text-content span,
.wp-text-content li {
    color: var(--lux-text-secondary) !important;
}

/* Video play button */
.play-button,
.video-play-btn,
[class*="play-btn"],
[class*="play-button"] {
    background: linear-gradient(135deg, var(--lux-red-vivid) 0%, var(--lux-red-deep) 100%) !important;
    border: 3px solid rgba(255, 255, 255, 0.2) !important;
    border-radius: 50% !important;
    box-shadow: 0 0 60px var(--lux-red-glow) !important;
    transition: all var(--lux-duration) var(--lux-ease-bounce) !important;
}

.play-button:hover,
.video-play-btn:hover {
    transform: scale(1.15) !important;
    box-shadow: 0 0 100px var(--lux-red-glow) !important;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   COUNTERS / STATS - LUXURY
   ═══════════════════════════════════════════════════════════════════════════════ */
.counter,
.wp-counter-number,
[class*="counter"] .number,
[class*="stat"] .number {
    background: linear-gradient(135deg,
        var(--lux-white) 0%,
        var(--lux-red-vivid) 50%,
        var(--lux-red) 100%
    ) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
    font-weight: 900 !important;
    font-size: 4rem !important;
    filter: drop-shadow(0 0 40px var(--lux-red-glow)) !important;
}

.wp-counter-label,
[class*="counter"] .label,
[class*="counter-label"] {
    color: var(--lux-text-muted) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.2em !important;
    font-size: 0.8rem !important;
    font-weight: 700 !important;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   TUNING-TYPES WIDGET - LUXURY SHOWCASE
   Design: Grid elegante con card glassmorphism e accenti carminio
   ═══════════════════════════════════════════════════════════════════════════════ */

/* Grid Container - 2 colonne su desktop */
.wp-tuning-types .wp-tuning-grid,
.wp-tuning-grid {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 20px !important;
    padding: 20px 0 !important;
}

@media (max-width: 768px) {
    .wp-tuning-types .wp-tuning-grid,
    .wp-tuning-grid {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
    }
}

/* Card - Glassmorphism elegante */
.wp-tuning-card {
    background: linear-gradient(
        135deg,
        rgba(20, 20, 28, 0.9) 0%,
        rgba(12, 12, 16, 0.95) 100%
    ) !important;
    backdrop-filter: blur(20px) !important;
    -webkit-backdrop-filter: blur(20px) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 16px !important;
    padding: 24px !important;
    display: flex !important;
    align-items: flex-start !important;
    gap: 18px !important;
    position: relative !important;
    overflow: hidden !important;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
    box-shadow:
        0 4px 24px rgba(0, 0, 0, 0.3),
        inset 0 1px 0 rgba(255, 255, 255, 0.05) !important;
    transform: none !important;
}

/* Linea accent top - sempre visibile, sottile */
.wp-tuning-card::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 24px !important;
    right: 24px !important;
    height: 1px !important;
    background: linear-gradient(90deg,
        transparent 0%,
        rgba(196, 30, 58, 0.5) 50%,
        transparent 100%
    ) !important;
    opacity: 1 !important;
    transition: all 0.4s ease !important;
}

/* Glow effect nascosto di default */
.wp-tuning-card::after {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    border-radius: inherit !important;
    background: radial-gradient(
        ellipse 80% 50% at 50% 0%,
        rgba(196, 30, 58, 0.15) 0%,
        transparent 70%
    ) !important;
    opacity: 0 !important;
    transition: opacity 0.4s ease !important;
    pointer-events: none !important;
}

/* Hover - Glow elegante */
.wp-tuning-card:hover {
    border-color: rgba(196, 30, 58, 0.4) !important;
    box-shadow:
        0 8px 40px rgba(0, 0, 0, 0.4),
        0 0 60px rgba(196, 30, 58, 0.1),
        inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;
    transform: translateY(-4px) !important;
    background: linear-gradient(
        135deg,
        rgba(28, 28, 36, 0.95) 0%,
        rgba(16, 16, 22, 0.98) 100%
    ) !important;
}

.wp-tuning-card:hover::before {
    left: 16px !important;
    right: 16px !important;
    height: 2px !important;
    background: linear-gradient(90deg,
        transparent 0%,
        var(--lux-red-vivid) 30%,
        var(--lux-red) 50%,
        var(--lux-red-vivid) 70%,
        transparent 100%
    ) !important;
}

.wp-tuning-card:hover::after {
    opacity: 1 !important;
}

/* Icona - Cerchio con glow */
.wp-tuning-card-icon {
    width: 52px !important;
    height: 52px !important;
    min-width: 52px !important;
    border-radius: 14px !important;
    background: linear-gradient(
        135deg,
        rgba(196, 30, 58, 0.2) 0%,
        rgba(196, 30, 58, 0.1) 100%
    ) !important;
    border: 1px solid rgba(196, 30, 58, 0.3) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow:
        0 0 20px rgba(196, 30, 58, 0.2),
        inset 0 1px 0 rgba(255, 255, 255, 0.1) !important;
    transition: all 0.4s ease !important;
}

.wp-tuning-card:hover .wp-tuning-card-icon {
    background: linear-gradient(
        135deg,
        rgba(196, 30, 58, 0.3) 0%,
        rgba(196, 30, 58, 0.15) 100%
    ) !important;
    border-color: rgba(196, 30, 58, 0.5) !important;
    box-shadow:
        0 0 30px rgba(196, 30, 58, 0.35),
        inset 0 1px 0 rgba(255, 255, 255, 0.15) !important;
}

.wp-tuning-card-icon svg {
    width: 26px !important;
    height: 26px !important;
    color: var(--lux-red-vivid) !important;
    filter: drop-shadow(0 0 8px rgba(196, 30, 58, 0.5)) !important;
    transition: all 0.4s ease !important;
}

.wp-tuning-card:hover .wp-tuning-card-icon svg {
    color: #fff !important;
    filter: drop-shadow(0 0 12px rgba(196, 30, 58, 0.8)) !important;
    transform: scale(1.1) !important;
}

/* Contenuto */
.wp-tuning-card-content {
    flex: 1 !important;
    min-width: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
}

/* Titolo servizio */
.wp-tuning-card h3 {
    color: #fff !important;
    font-size: 1rem !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    margin: 0 !important;
    transition: color 0.3s ease !important;
}

.wp-tuning-card:hover h3 {
    color: #fff !important;
    text-shadow: 0 0 20px rgba(255, 255, 255, 0.1) !important;
}

/* Prezzo - Stile premium */
.wp-tuning-card .wp-price {
    display: inline-flex !important;
    align-items: baseline !important;
    gap: 6px !important;
    margin-top: 4px !important;
    font-size: 0.875rem !important;
    color: rgba(255, 255, 255, 0.5) !important;
    letter-spacing: 0.02em !important;
}

.wp-tuning-card .wp-price span {
    font-size: 1.5rem !important;
    font-weight: 800 !important;
    color: var(--lux-red-vivid) !important;
    text-shadow: 0 0 25px rgba(196, 30, 58, 0.6) !important;
    -webkit-text-fill-color: var(--lux-red-vivid) !important;
    background: none !important;
    letter-spacing: -0.02em !important;
    line-height: 1 !important;
}

.wp-tuning-card:hover .wp-price span {
    text-shadow: 0 0 35px rgba(196, 30, 58, 0.8) !important;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   PRICELIST - LUXURY
   ═══════════════════════════════════════════════════════════════════════════════ */
.wp-pricelist,
.pricelist,
[class*="pricelist"] {
    background: var(--lux-black) !important;
}

.wp-pricelist-header h2 {
    color: var(--lux-white) !important;
}

.wp-pricelist-header p {
    color: var(--lux-text-muted) !important;
}

.wp-pricelist-item {
    background: var(--lux-surface) !important;
    border: 1px solid var(--lux-border) !important;
    border-radius: 16px !important;
    transition: all var(--lux-duration) var(--lux-ease) !important;
}

.wp-pricelist-item:hover {
    border-color: var(--lux-red) !important;
    background: var(--lux-elevated) !important;
    box-shadow: 0 0 30px rgba(196, 30, 58, 0.15) !important;
}

.wp-pricelist-item .service-name,
.wp-pricelist-item-header .service-name {
    color: var(--lux-white) !important;
    font-weight: 700 !important;
}

.wp-pricelist-item .pricing-credits,
.pricing-credits .label {
    color: var(--lux-text-muted) !important;
}

.wp-pricelist-item .pricing-credits .value,
.pricing-credits .credit-value,
.price,
.wp-price,
[class*="price"] {
    color: var(--lux-red-vivid) !important;
    font-weight: 900 !important;
    text-shadow: 0 0 25px var(--lux-red-glow) !important;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   TABLES - LUXURY
   ═══════════════════════════════════════════════════════════════════════════════ */
table,
.table {
    background: var(--lux-surface) !important;
    border: 1px solid var(--lux-border) !important;
    border-radius: 16px !important;
    overflow: hidden !important;
}

th {
    background: linear-gradient(180deg, var(--lux-elevated) 0%, var(--lux-surface) 100%) !important;
    color: var(--lux-text-primary) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.12em !important;
    font-size: 0.75rem !important;
    font-weight: 700 !important;
    padding: 18px 20px !important;
    border-bottom: 2px solid var(--lux-red) !important;
}

td {
    color: var(--lux-text-secondary) !important;
    border-color: var(--lux-border) !important;
    padding: 16px 20px !important;
    transition: all var(--lux-duration) var(--lux-ease) !important;
}

tr:hover td {
    background: rgba(196, 30, 58, 0.08) !important;
    color: var(--lux-text-primary) !important;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   NAVIGATION - LUXURY
   ═══════════════════════════════════════════════════════════════════════════════ */
nav a,
.nav a,
.menu a,
.navigation a {
    color: var(--lux-text-secondary) !important;
    position: relative !important;
    padding-bottom: 6px !important;
}

nav a::after,
.nav a::after,
.menu a::after {
    content: '' !important;
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    width: 0 !important;
    height: 2px !important;
    background: linear-gradient(90deg, var(--lux-red), var(--lux-red-vivid)) !important;
    transition: width var(--lux-duration) var(--lux-ease) !important;
    box-shadow: 0 0 15px var(--lux-red-glow) !important;
}

nav a:hover,
.nav a:hover,
.menu a:hover {
    color: var(--lux-white) !important;
}

nav a:hover::after,
.nav a:hover::after,
.menu a:hover::after {
    width: 100% !important;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   BADGES & TAGS - LUXURY
   ═══════════════════════════════════════════════════════════════════════════════ */
.badge,
.tag,
.label:not(label),
.wp-badge,
[class*="badge"],
[class*="tag"]:not(textarea) {
    background: linear-gradient(135deg, rgba(196, 30, 58, 0.25) 0%, rgba(196, 30, 58, 0.1) 100%) !important;
    color: var(--lux-red-vivid) !important;
    border: 1px solid rgba(196, 30, 58, 0.4) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.18em !important;
    font-size: 0.65rem !important;
    font-weight: 800 !important;
    padding: 10px 20px !important;
    border-radius: 8px !important;
    box-shadow: 0 0 25px rgba(196, 30, 58, 0.2) !important;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   COOKIE POPUP - LUXURY
   ═══════════════════════════════════════════════════════════════════════════════ */
#cookie-popup,
#gdpr-cookie-message {
    background: linear-gradient(180deg, var(--lux-surface) 0%, var(--lux-deep) 100%) !important;
    border-top: 2px solid var(--lux-red) !important;
    box-shadow: 0 -20px 60px rgba(0, 0, 0, 0.6) !important;
}

#cookie-popup p,
#gdpr-cookie-message p,
#gdpr-cookie-message h4 {
    color: var(--lux-text-secondary) !important;
}

#decline-cookies {
    background: rgba(255, 255, 255, 0.1) !important;
    color: var(--lux-text-primary) !important;
    border: 1px solid var(--lux-border) !important;
}

button#gdpr-cookie-advanced {
    background: transparent !important;
    border: 2px solid var(--lux-red) !important;
    color: var(--lux-red) !important;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   FOOTER - LUXURY
   ═══════════════════════════════════════════════════════════════════════════════ */
footer,
.footer,
.tf-footer,
[class*="footer"] {
    background: linear-gradient(180deg, var(--lux-deep) 0%, var(--lux-void) 100%) !important;
    border-top: none !important;
    position: relative !important;
}

footer::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 2px !important;
    background: linear-gradient(90deg,
        transparent 0%,
        var(--lux-red-deep) 20%,
        var(--lux-red) 50%,
        var(--lux-red-deep) 80%,
        transparent 100%
    ) !important;
    box-shadow: 0 0 30px var(--lux-red-glow) !important;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   SCROLLBAR - LUXURY
   ═══════════════════════════════════════════════════════════════════════════════ */
::-webkit-scrollbar {
    width: 12px;
    height: 12px;
}

::-webkit-scrollbar-track {
    background: var(--lux-deep);
}

::-webkit-scrollbar-thumb {
    background: linear-gradient(180deg, var(--lux-red) 0%, var(--lux-red-deep) 100%);
    border-radius: 6px;
    border: 3px solid var(--lux-deep);
}

::-webkit-scrollbar-thumb:hover {
    background: linear-gradient(180deg, var(--lux-red-vivid) 0%, var(--lux-red) 100%);
}

/* ═══════════════════════════════════════════════════════════════════════════════
   SELECTION - LUXURY
   ═══════════════════════════════════════════════════════════════════════════════ */
::selection {
    background: rgba(196, 30, 58, 0.4) !important;
    color: var(--lux-white) !important;
}

::-moz-selection {
    background: rgba(196, 30, 58, 0.4) !important;
    color: var(--lux-white) !important;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   ANIMATIONS - LUXURY
   ═══════════════════════════════════════════════════════════════════════════════ */
@keyframes luxury-pulse {
    0%, 100% {
        box-shadow: 0 0 20px rgba(196, 30, 58, 0.4), 0 0 60px rgba(196, 30, 58, 0.1);
    }
    50% {
        box-shadow: 0 0 40px rgba(196, 30, 58, 0.6), 0 0 100px rgba(196, 30, 58, 0.2);
    }
}

@keyframes luxury-shimmer {
    0% { background-position: -200% center; }
    100% { background-position: 200% center; }
}

.glow, .luxury-glow {
    animation: luxury-pulse 3s ease-in-out infinite !important;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   LIGHT THEME OVERRIDE
   ═══════════════════════════════════════════════════════════════════════════════ */
.widget-premium.light-theme,
.ts-section.light-theme,
[class*="light-theme"] {
    --wp-light-bg: var(--lux-black) !important;
    --wp-light-surface: var(--lux-surface) !important;
    --wp-light-border: var(--lux-border) !important;
    --wp-light-text: var(--lux-white) !important;
    --wp-light-text-muted: var(--lux-text-muted) !important;
    background: var(--lux-black) !important;
}

.widget-premium.light-theme h1,
.widget-premium.light-theme h2,
.widget-premium.light-theme h3,
.widget-premium.light-theme h4,
.widget-premium.light-theme .wp-header h2 {
    color: var(--lux-white) !important;
}

.widget-premium.light-theme p,
.widget-premium.light-theme span:not(.wp-badge),
.widget-premium.light-theme li,
.widget-premium.light-theme .wp-text-content p {
    color: var(--lux-text-secondary) !important;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   HEADER LARGE - LUXURY STYLE (SOLO senza immagine di sfondo)
   ═══════════════════════════════════════════════════════════════════════════════ */

/* bgSolid - Luxury dark gradient instead of old blue (SOLO per header senza immagine) */
.HeaderLarge.bgSolid:not(.bgImg),
.headerSmall.bgSolid:not(.bgImg),
section.HeaderLarge.bgSolid:not(.bgImg) {
    background: linear-gradient(135deg, var(--lux-black) 0%, var(--lux-deep) 50%, var(--lux-surface) 100%) !important;
    position: relative;
}

.HeaderLarge.bgSolid:not(.bgImg)::before,
.headerSmall.bgSolid:not(.bgImg)::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse 80% 50% at 50% 0%, rgba(196, 30, 58, 0.15) 0%, transparent 60%);
    pointer-events: none;
    z-index: 1;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   PRESERVE BACKGROUND IMAGES
   ═══════════════════════════════════════════════════════════════════════════════ */
.bgImg,
.headerSmall.bgImg,
.HeaderLarge.bgImg,
section.bgImg,
[class*="bgImg"],
[style*="background-image"],
.wp-text-bg,
.wp-header-large,
.wp-header-small {
    background-color: transparent !important;
}

/* Text on images */
.bgImg h1, .bgImg h2, .bgImg h3,
.bgImg p, .bgImg span,
.headerSmall h1, .headerSmall h2, .headerSmall p,
.HeaderLarge h1, .HeaderLarge h2, .HeaderLarge p,
[style*="background-image"] h1,
[style*="background-image"] h2,
[style*="background-image"] p {
    color: var(--lux-white) !important;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.9), 0 4px 30px rgba(0, 0, 0, 0.6) !important;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   MODAL / POPUP - LUXURY
   ═══════════════════════════════════════════════════════════════════════════════ */
.modal-content,
.popupWidgetModal .modal-content {
    background: linear-gradient(165deg, var(--lux-surface) 0%, var(--lux-deep) 100%) !important;
    border: 1px solid var(--lux-border) !important;
    border-radius: 24px !important;
    box-shadow: var(--lux-shadow-deep), 0 0 150px rgba(0, 0, 0, 0.9) !important;
}

.modal-header {
    border-bottom: 1px solid var(--lux-border) !important;
}

.btn-close {
    filter: invert(1) !important;
    opacity: 0.8 !important;
}

.btn-close:hover {
    opacity: 1 !important;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   DIVIDERS - LUXURY
   ═══════════════════════════════════════════════════════════════════════════════ */
hr,
.divider,
.separator,
[class*="divider"] {
    background: linear-gradient(90deg,
        transparent 0%,
        var(--lux-border) 20%,
        var(--lux-red) 50%,
        var(--lux-border) 80%,
        transparent 100%
    ) !important;
    border: none !important;
    height: 1px !important;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   SELECT2 DROPDOWNS - LUXURY
   ═══════════════════════════════════════════════════════════════════════════════ */
.select2-container--default .select2-selection--single {
    background: rgba(255, 255, 255, 0.04) !important;
    border: 1px solid var(--lux-border) !important;
    border-radius: 12px !important;
    height: auto !important;
    padding: 14px 18px !important;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
    color: var(--lux-text-primary) !important;
    padding: 0 !important;
}

.select2-dropdown {
    background: var(--lux-surface) !important;
    border: 1px solid var(--lux-border) !important;
    border-radius: 12px !important;
    box-shadow: var(--lux-shadow-deep) !important;
    overflow: hidden !important;
}

.select2-results__option {
    background: transparent !important;
    color: var(--lux-text-secondary) !important;
    padding: 14px 18px !important;
    transition: all var(--lux-duration) var(--lux-ease) !important;
}

.select2-results__option--highlighted,
.select2-results__option:hover {
    background: linear-gradient(90deg, rgba(196, 30, 58, 0.2) 0%, rgba(196, 30, 58, 0.1) 100%) !important;
    color: var(--lux-white) !important;
}

.select2-results__option--selected {
    background: rgba(196, 30, 58, 0.15) !important;
    color: var(--lux-red-vivid) !important;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   VEHICLE SUMMARY - LUXURY STYLE (Specifiche veicolo)
   ═══════════════════════════════════════════════════════════════════════════════ */
.ts-vehicle-summary {
    background: linear-gradient(165deg, var(--lux-card) 0%, var(--lux-elevated) 100%) !important;
    border: 1px solid var(--lux-border) !important;
    border-radius: 20px !important;
    box-shadow: var(--lux-shadow-deep) !important;
    padding: 28px !important;
    margin-bottom: 32px !important;
}

.ts-vehicle-summary__title {
    font-size: 26px !important;
    font-weight: 700 !important;
    color: var(--lux-white) !important;
    margin-bottom: 20px !important;
}

.ts-vehicle-summary__specs-title {
    font-size: 13px !important;
    font-weight: 700 !important;
    color: var(--lux-text-muted) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.15em !important;
    margin-bottom: 16px !important;
    padding-bottom: 12px !important;
    border-bottom: 1px solid var(--lux-border) !important;
}

/* Tabella specifiche - Layout pulito inline */
.ts-vehicle-summary__table {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 0 !important;
}

.ts-vehicle-summary__table tbody {
    display: flex !important;
    flex-wrap: wrap !important;
    width: 100% !important;
    gap: 0 !important;
}

.ts-vehicle-summary__table tr {
    display: flex !important;
    align-items: center !important;
    padding: 16px 20px !important;
    border-bottom: none !important;
    border-right: 1px solid var(--lux-border) !important;
    flex: 1 1 auto !important;
    min-width: 200px !important;
    gap: 12px !important;
}

.ts-vehicle-summary__table tr:last-child {
    border-right: none !important;
}

.ts-vehicle-summary__table td {
    font-size: 15px !important;
}

.ts-vehicle-summary__table td:first-child {
    color: var(--lux-text-muted) !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.08em !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}

.ts-vehicle-summary__table td:first-child iconify-icon {
    color: var(--lux-red-vivid) !important;
    font-size: 20px !important;
    filter: drop-shadow(0 0 6px rgba(196, 30, 58, 0.5)) !important;
}

.ts-vehicle-summary__table td:last-child {
    color: var(--lux-white) !important;
    font-size: 20px !important;
    font-weight: 700 !important;
}

/* Responsive */
@media (max-width: 768px) {
    .ts-vehicle-summary__table tr {
        flex-direction: column !important;
        align-items: flex-start !important;
        border-right: none !important;
        border-bottom: 1px solid var(--lux-border) !important;
        padding: 14px 16px !important;
        gap: 6px !important;
    }

    .ts-vehicle-summary__table tr:last-child {
        border-bottom: none !important;
    }

    .ts-vehicle-summary__table td:last-child {
        font-size: 18px !important;
    }
}

/* ═══════════════════════════════════════════════════════════════════════════════
   TUNING SPECS - COMPACT LUXURY TABLE (Ottimizzato per visibilità)
   ═══════════════════════════════════════════════════════════════════════════════ */
.ts-specs-compact {
    background: linear-gradient(165deg, var(--lux-card) 0%, var(--lux-elevated) 100%) !important;
    border: 1px solid var(--lux-border) !important;
    border-radius: 20px !important;
    box-shadow: var(--lux-shadow-deep) !important;
    overflow: hidden !important;
    margin-bottom: 32px !important;
}

.ts-specs-row {
    display: flex !important;
    align-items: center !important;
    gap: 20px !important;
    padding: 24px 32px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.ts-specs-row:last-child {
    border-bottom: none !important;
}

.ts-specs-row:hover {
    background: rgba(255, 255, 255, 0.02) !important;
}

.ts-specs-row iconify-icon {
    color: var(--lux-red-vivid) !important;
    font-size: 32px !important;
    filter: drop-shadow(0 0 12px rgba(196, 30, 58, 0.6)) !important;
    flex-shrink: 0 !important;
}

.ts-specs-label {
    color: var(--lux-text-primary) !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.12em !important;
    min-width: 80px !important;
}

.ts-specs-values {
    color: var(--lux-text-secondary) !important;
    font-size: 22px !important;
    flex: 1 !important;
    letter-spacing: 0.02em !important;
}

.ts-specs-values strong {
    color: var(--lux-white) !important;
    font-weight: 800 !important;
    font-size: 26px !important;
}

.ts-specs-gain {
    background: linear-gradient(135deg, rgba(196, 30, 58, 0.25) 0%, rgba(196, 30, 58, 0.15) 100%) !important;
    color: var(--lux-red-vivid) !important;
    font-size: 20px !important;
    font-weight: 800 !important;
    padding: 12px 24px !important;
    border-radius: 30px !important;
    border: 1px solid rgba(196, 30, 58, 0.4) !important;
    flex-shrink: 0 !important;
    text-shadow: 0 0 20px rgba(196, 30, 58, 0.5) !important;
}

/* Mobile */
@media (max-width: 768px) {
    .ts-specs-compact {
        border-radius: 16px !important;
    }

    .ts-specs-row {
        flex-wrap: wrap !important;
        gap: 16px !important;
        padding: 20px 24px !important;
    }

    .ts-specs-row iconify-icon {
        font-size: 28px !important;
    }

    .ts-specs-label {
        font-size: 14px !important;
        min-width: auto !important;
    }

    .ts-specs-values {
        font-size: 18px !important;
        width: 100% !important;
        order: 3 !important;
    }

    .ts-specs-values strong {
        font-size: 22px !important;
    }

    .ts-specs-gain {
        font-size: 18px !important;
        padding: 10px 20px !important;
    }
}

/* ═══════════════════════════════════════════════════════════════════════════════
   BACK TO TOP BUTTON - LUXURY STYLE (solo footer, globale su tutte le pagine)
   ═══════════════════════════════════════════════════════════════════════════════ */
/* Nascondi i pulsanti duplicati nelle pagine specifiche */
#back-to-top-btn {
    display: none !important;
}

/* Stile luxury per il pulsante del footer */
.tf-footer__back-to-top {
    position: fixed !important;
    bottom: 24px !important;
    right: 24px !important;
    z-index: 9998 !important;
    width: 50px !important;
    height: 50px !important;
    background: linear-gradient(135deg, var(--lux-card) 0%, var(--lux-elevated) 100%) !important;
    border: 1px solid var(--lux-border) !important;
    border-radius: 50% !important;
    box-shadow: var(--lux-shadow-medium), 0 0 20px rgba(0, 0, 0, 0.3) !important;
    backdrop-filter: blur(10px) !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    /* Override visibilità - sempre visibile quando ha classe .visible */
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateY(0) !important;
}

/* Nascosto di default (senza classe .visible) */
.tf-footer__back-to-top:not(.visible) {
    opacity: 0 !important;
    visibility: hidden !important;
    transform: translateY(20px) !important;
}

.tf-footer__back-to-top:hover {
    background: linear-gradient(135deg, var(--lux-hover) 0%, var(--lux-card) 100%) !important;
    border-color: rgba(196, 30, 58, 0.4) !important;
    box-shadow: var(--lux-shadow-deep), 0 0 30px rgba(196, 30, 58, 0.2) !important;
    transform: translateY(-4px) !important;
}

.tf-footer__back-to-top iconify-icon {
    color: var(--lux-red-vivid) !important;
    font-size: 24px !important;
    filter: drop-shadow(0 0 6px rgba(196, 30, 58, 0.5)) !important;
}

.tf-footer__back-to-top:hover iconify-icon {
    filter: drop-shadow(0 0 10px rgba(196, 30, 58, 0.7)) !important;
}

/* Mobile: sposta sopra la barra contatti */
@media (max-width: 991px) {
    .tf-footer__back-to-top {
        bottom: 80px !important;
        right: 16px !important;
        width: 46px !important;
        height: 46px !important;
    }
}

/* ═══════════════════════════════════════════════════════════════════════════════
   MOBILE CONTACT BAR - LUXURY STYLE
   ═══════════════════════════════════════════════════════════════════════════════ */
.mobile-contact-bar,
.mobile-contact-bar-global {
    background: linear-gradient(180deg, var(--lux-card) 0%, var(--lux-surface) 100%) !important;
    border-top: 1px solid var(--lux-border) !important;
    box-shadow: 0 -10px 40px rgba(0, 0, 0, 0.5) !important;
}

.mobile-contact-bar a,
.mobile-contact-bar-global a {
    color: var(--lux-text-primary) !important;
    font-weight: 600 !important;
    padding: 16px 12px !important;
    gap: 8px !important;
}

.mobile-contact-bar a:hover,
.mobile-contact-bar-global a:hover {
    background: rgba(196, 30, 58, 0.15) !important;
    color: var(--lux-red-vivid) !important;
}

.mobile-contact-bar a svg,
.mobile-contact-bar a iconify-icon,
.mobile-contact-bar-global a svg,
.mobile-contact-bar-global a iconify-icon {
    color: var(--lux-red-vivid) !important;
    font-size: 22px !important;
    filter: drop-shadow(0 0 6px rgba(196, 30, 58, 0.5)) !important;
}

.mobile-contact-bar a:not(:last-child),
.mobile-contact-bar-global a:not(:last-child) {
    border-right: 1px solid var(--lux-border) !important;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   AMBIENT EFFECTS - ULTRA LUXURY
   ═══════════════════════════════════════════════════════════════════════════════ */

/* Subtle ambient glow */
body::after {
    content: '' !important;
    position: fixed !important;
    top: -50% !important;
    left: -50% !important;
    width: 200% !important;
    height: 200% !important;
    background: radial-gradient(
        ellipse at 30% 20%,
        rgba(196, 30, 58, 0.04) 0%,
        transparent 35%
    ) !important;
    pointer-events: none !important;
    z-index: -1 !important;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   RESPONSIVE - LUXURY
   ═══════════════════════════════════════════════════════════════════════════════ */
@media (max-width: 768px) {
    .btn,
    .button,
    .wp-btn {
        padding: 16px 28px !important;
        font-size: 0.75rem !important;
    }

    /* padding TuningSpaces rimosso - gestito da widgets-premium.css */

    .card:hover,
    .wp-card:hover,
    [class*="card"]:hover {
        transform: translateY(-6px) !important;
    }

    h1, .ts-hero__title {
        font-size: 2rem !important;
    }

    .wp-counter-number,
    .counter {
        font-size: 2.5rem !important;
    }
}

/* ═══════════════════════════════════════════════════════════════════════════════
   FORCE ALL WHITE BACKGROUNDS TO DARK
   ═══════════════════════════════════════════════════════════════════════════════ */
body [class*="bg-white"],
body [class*="bg-light"],
body [class*="background-white"],
body [class*="scheme-light"] {
    background: var(--lux-black) !important;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   DATABASE PAGES - OVERRIDE EMBEDDED STYLES
   Questi selettori sovrascrivono gli stili CSS embedded nei file blade
   ═══════════════════════════════════════════════════════════════════════════════ */

/* Language Select - Luxury Dark Style */
select#languageSelect,
body select#languageSelect,
html body select#languageSelect {
    background: var(--lux-surface) !important;
    background-image: linear-gradient(135deg, var(--lux-surface) 0%, var(--lux-elevated) 100%) !important;
    color: var(--lux-text-primary) !important;
    border: 1px solid var(--lux-border) !important;
    border-radius: 8px !important;
    padding: 10px 24px !important;
    font-weight: 500 !important;
    transition: all 0.3s var(--lux-ease) !important;
}

select#languageSelect:hover,
select#languageSelect:focus {
    border-color: var(--lux-red) !important;
    box-shadow: 0 0 0 3px rgba(196, 30, 58, 0.15) !important;
    outline: none !important;
}

/* Custom Dropdown - Luxury Dark */
.custom-dropdown1,
body .custom-dropdown1,
html body .custom-dropdown1 {
    background: var(--lux-surface) !important;
    background-image: linear-gradient(135deg, var(--lux-surface) 0%, var(--lux-elevated) 100%) !important;
    color: var(--lux-text-primary) !important;
    border: 1px solid var(--lux-border) !important;
    border-radius: 8px !important;
    transition: all 0.3s var(--lux-ease) !important;
}

.custom-dropdown1:hover {
    border-color: var(--lux-red) !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3) !important;
}

/* Custom Select Wrapper - Luxury */
.custom-select-wrapper,
body .custom-select-wrapper {
    background: var(--lux-surface) !important;
    border: 1px solid var(--lux-border) !important;
    border-radius: 8px !important;
}

.custom-select-wrapper select {
    background: transparent !important;
    color: var(--lux-text-primary) !important;
}

/* Cookie Popup - Luxury Dark */
#cookie-popup,
body #cookie-popup,
html body #cookie-popup,
.cookie-popup,
#gdpr-cookie-message {
    background: var(--lux-deep) !important;
    background-image: linear-gradient(135deg, var(--lux-deep) 0%, var(--lux-black) 100%) !important;
    color: var(--lux-text-primary) !important;
    border-top: 1px solid var(--lux-border) !important;
    box-shadow: 0 -10px 40px rgba(0, 0, 0, 0.5) !important;
    backdrop-filter: blur(20px) !important;
}

/* Cookie Buttons - Luxury Style */
button#ihavecookiesBtn,
body button#ihavecookiesBtn {
    background: linear-gradient(135deg, var(--lux-red) 0%, var(--lux-red-deep) 100%) !important;
    color: var(--lux-white) !important;
    border: none !important;
    border-radius: 8px !important;
    padding: 12px 24px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    transition: all 0.3s var(--lux-ease) !important;
}

button#ihavecookiesBtn:hover {
    background: linear-gradient(135deg, var(--lux-red-vivid) 0%, var(--lux-red) 100%) !important;
    box-shadow: 0 8px 30px var(--lux-red-glow) !important;
    transform: translateY(-2px) !important;
}

button#gdpr-cookie-advanced,
body button#gdpr-cookie-advanced {
    background: transparent !important;
    color: var(--lux-text-secondary) !important;
    border: 1px solid var(--lux-border) !important;
    border-radius: 8px !important;
    padding: 12px 24px !important;
    font-weight: 500 !important;
    transition: all 0.3s var(--lux-ease) !important;
}

button#gdpr-cookie-advanced:hover {
    background: var(--lux-surface) !important;
    border-color: var(--lux-text-muted) !important;
    color: var(--lux-white) !important;
}

/* Search Form - Database Pages */
.search-form-wrapper,
.buttonfindcarsearch,
.commonconatctlinkSection {
    background: var(--lux-surface) !important;
    border-radius: 12px !important;
    padding: 20px !important;
}

.buttonfindcarsearch button {
    background: linear-gradient(135deg, var(--lux-red-vivid) 0%, var(--lux-red) 40%, var(--lux-red-deep) 100%) !important;
    color: var(--lux-white) !important;
    border: none !important;
    border-radius: 8px !important;
    font-weight: 700 !important;
    font-size: 0.85rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.15em !important;
    padding: 14px 28px !important;
    box-shadow: 0 4px 20px rgba(196, 30, 58, 0.4), inset 0 1px 0 rgba(255, 255, 255, 0.2) !important;
    transition: all 0.3s var(--lux-ease) !important;
}

.buttonfindcarsearch button:hover {
    box-shadow: 0 8px 30px rgba(196, 30, 58, 0.5), inset 0 1px 0 rgba(255, 255, 255, 0.25) !important;
    transform: translateY(-2px) !important;
}

/* Dropdown Options - Dark Theme */
select option,
.custom-dropdown1 option {
    background: var(--lux-surface) !important;
    color: var(--lux-text-primary) !important;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   VEHICLE DATA TABLES - PREMIUM STYLING
   ═══════════════════════════════════════════════════════════════════════════════ */
.vehicle-data-table,
.specs-table,
.tuning-table,
table.dataTable {
    background: var(--lux-surface) !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    border: 1px solid var(--lux-border) !important;
}

.vehicle-data-table th,
.specs-table th,
.tuning-table th,
table.dataTable th {
    background: var(--lux-elevated) !important;
    color: var(--lux-text-primary) !important;
    font-weight: 600 !important;
    padding: 16px 20px !important;
    border-bottom: 2px solid var(--lux-red) !important;
}

.vehicle-data-table td,
.specs-table td,
.tuning-table td,
table.dataTable td {
    background: var(--lux-surface) !important;
    color: var(--lux-text-secondary) !important;
    padding: 14px 20px !important;
    border-bottom: 1px solid var(--lux-border) !important;
}

.vehicle-data-table tr:hover td,
.specs-table tr:hover td,
.tuning-table tr:hover td,
table.dataTable tr:hover td {
    background: var(--lux-elevated) !important;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   MODEL/BRAND CARDS - PREMIUM HOVER EFFECTS
   ═══════════════════════════════════════════════════════════════════════════════ */
.model-card,
.brand-card,
.vehicle-card,
.generation-card {
    background: var(--lux-surface) !important;
    border: 1px solid var(--lux-border) !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    transition: all 0.4s var(--lux-ease) !important;
}

.model-card:hover,
.brand-card:hover,
.vehicle-card:hover,
.generation-card:hover {
    border-color: var(--lux-red) !important;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.4), 0 0 30px var(--lux-red-glow) !important;
    transform: translateY(-8px) !important;
}

.model-card img,
.brand-card img,
.vehicle-card img {
    transition: transform 0.5s var(--lux-ease) !important;
}

.model-card:hover img,
.brand-card:hover img,
.vehicle-card:hover img {
    transform: scale(1.05) !important;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   PERFORMANCE STATS - LUXURY DISPLAY
   ═══════════════════════════════════════════════════════════════════════════════ */
.performance-stat,
.stat-value,
.hp-value,
.torque-value {
    color: var(--lux-red) !important;
    font-weight: 700 !important;
    font-size: 1.5rem !important;
    text-shadow: 0 0 20px var(--lux-red-glow) !important;
}

.performance-label,
.stat-label {
    color: var(--lux-text-muted) !important;
    font-size: 0.75rem !important;
    text-transform: uppercase !important;
    letter-spacing: 1.5px !important;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   BREADCRUMBS - LUXURY DARK
   ═══════════════════════════════════════════════════════════════════════════════ */
.breadcrumb,
.breadcrumbs,
nav[aria-label="breadcrumb"] {
    background: transparent !important;
    padding: 15px 0 !important;
}

.breadcrumb a,
.breadcrumbs a {
    color: var(--lux-text-muted) !important;
    transition: color 0.3s var(--lux-ease) !important;
}

.breadcrumb a:hover,
.breadcrumbs a:hover {
    color: var(--lux-red) !important;
}

.breadcrumb-item.active,
.breadcrumbs .current {
    color: var(--lux-text-primary) !important;
}

.breadcrumb-item + .breadcrumb-item::before {
    color: var(--lux-text-subtle) !important;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   CONTACT PAGE - LUXURY HIGH CONTRAST
   ═══════════════════════════════════════════════════════════════════════════════ */

/* Contact Section Backgrounds */
.ContactFormcnt,
.ContactformCntmain,
section.ContactFormcnt,
section.ContactformCntmain {
    background: var(--lux-black) !important;
}

/* Address Cards - Luxury Style */
.adCarditem,
.addresscards .adCarditem {
    background: linear-gradient(135deg, var(--lux-surface) 0%, var(--lux-elevated) 100%) !important;
    border: 1px solid var(--lux-border) !important;
    border-radius: 16px !important;
    padding: 30px !important;
    transition: all 0.4s var(--lux-ease) !important;
}

.adCarditem:hover {
    border-color: var(--lux-red) !important;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.4), 0 0 30px rgba(196, 30, 58, 0.2) !important;
    transform: translateY(-5px) !important;
}

.adcardIcon,
.adCarditem .adcardIcon {
    color: var(--lux-red) !important;
    font-size: 2.5rem !important;
    margin-bottom: 15px !important;
}

.adcard_title,
.adCarditem .adcard_title {
    color: var(--lux-text-primary) !important;
    font-weight: 600 !important;
    font-size: 1.1rem !important;
    margin-bottom: 10px !important;
}

.adcardText,
.adCarditem .adcardText,
.adcardText a,
.adCarditem .adcardText a {
    color: var(--lux-text-secondary) !important;
    line-height: 1.6 !important;
}

.adcardText a:hover {
    color: var(--lux-red) !important;
}

/* Contact Form Container */
.containerFormHm,
.formstarthm,
.pt-contact-form-7 {
    background: transparent !important;
}

/* Form Labels */
.form-group label,
.containerFormHm label,
.pt-contact-form-7 label {
    color: var(--lux-text-secondary) !important;
    font-weight: 500 !important;
    margin-bottom: 8px !important;
    display: block !important;
}

/* Form Inputs & Textareas */
.form-group input,
.form-group textarea,
.containerFormHm input,
.containerFormHm textarea,
.pt-contact-form-7 input,
.pt-contact-form-7 textarea,
input[type="text"],
input[type="email"],
input[type="tel"],
textarea {
    background: var(--lux-surface) !important;
    border: 1px solid var(--lux-border) !important;
    border-radius: 8px !important;
    color: var(--lux-text-primary) !important;
    padding: 14px 18px !important;
    transition: all 0.3s var(--lux-ease) !important;
}

.form-group input:focus,
.form-group textarea:focus,
.containerFormHm input:focus,
.containerFormHm textarea:focus,
input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
textarea:focus {
    border-color: var(--lux-red) !important;
    box-shadow: 0 0 0 3px rgba(196, 30, 58, 0.15) !important;
    outline: none !important;
    background: var(--lux-elevated) !important;
}

.form-group input::placeholder,
.form-group textarea::placeholder,
input::placeholder,
textarea::placeholder {
    color: var(--lux-text-muted) !important;
}

/* Captcha Inputs */
.captch_box input,
.captchacontainer .captch_box input,
.captch_input input,
input.nocopy {
    background: var(--lux-surface) !important;
    color: var(--lux-text-primary) !important;
    border: 1px solid var(--lux-border) !important;
}

/* Submit Button - Luxury Red */
.containerFormHm button[type="submit"],
.formstarthm button,
.pt-contact-form-7 button,
button.btnsubmitform,
.button button,
form button[type="submit"] {
    background: linear-gradient(135deg, var(--lux-red) 0%, var(--lux-red-deep) 100%) !important;
    color: var(--lux-white) !important;
    border: none !important;
    border-radius: 8px !important;
    padding: 16px 32px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    transition: all 0.3s var(--lux-ease) !important;
    cursor: pointer !important;
}

.containerFormHm button[type="submit"]:hover,
.formstarthm button:hover,
form button[type="submit"]:hover {
    background: linear-gradient(135deg, var(--lux-red-vivid) 0%, var(--lux-red) 100%) !important;
    box-shadow: 0 8px 30px rgba(196, 30, 58, 0.4) !important;
    transform: translateY(-2px) !important;
}

/* Headings on Contact Page */
.ContactFormcnt .pt-heading-subtitle,
.ContactformCntmain .pt-heading-subtitle,
.headingcenter .pt-heading-subtitle {
    color: var(--lux-red) !important;
}

.ContactFormcnt .pt-heading-title,
.ContactformCntmain .pt-heading-title,
.headingcenter h2,
.formstarthm h2 {
    color: var(--lux-text-primary) !important;
}

/* Inner Banner Overlay */
.innerBanner {
    position: relative !important;
}

.innerBanner::before {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    background: linear-gradient(180deg, rgba(0,0,0,0.4) 0%, rgba(10,10,14,0.95) 100%) !important;
    pointer-events: none !important;
}

.innerbannerContent {
    position: relative !important;
    z-index: 1 !important;
}

.innerbannerContent h2,
.innerbannerContent p,
.innerbannerContent .pt-heading-subtitle {
    color: var(--lux-text-primary) !important;
}

/* Shape Dividers */
.shaperoundedTop,
.shaperounded {
    background: var(--lux-black) !important;
}

/* Error Messages */
.text-danger {
    color: #ef4444 !important;
}

/* reCAPTCHA Styling */
.g-recaptcha {
    margin-top: 20px !important;
}

/* Menu Toggle Mobile Fix */
@media (max-width: 767px) {
    .menu-toggle {
        color: var(--lux-text-primary) !important;
    }
}

/* Login Icon Fix */
.LoginContainer iconify-icon {
    color: var(--lux-text-primary) !important;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   WIDGET LIGHT-THEME OVERRIDE - Force Dark Luxury
   ═══════════════════════════════════════════════════════════════════════════════ */

/* Override light-theme variables for luxury */
.widget-premium.light-theme,
.widget-premium.light-theme.luxury-dark-override {
    --wp-light-text: rgba(255, 255, 255, 0.95) !important;
    --wp-light-text-muted: rgba(255, 255, 255, 0.75) !important;
    --wp-light-surface: #101014 !important;
    --wp-light-border: rgba(255, 255, 255, 0.08) !important;
    background: var(--lux-black) !important;
    color: var(--lux-text-primary) !important;
}

/* Light theme headings - force white */
.widget-premium.light-theme h1,
.widget-premium.light-theme h2,
.widget-premium.light-theme h3,
.widget-premium.light-theme h4,
.widget-premium.light-theme .wp-header h2,
.widget-premium.light-theme .wp-form-header h2 {
    color: var(--lux-text-primary) !important;
}

/* Light theme paragraphs and text */
.widget-premium.light-theme p,
.widget-premium.light-theme span,
.widget-premium.light-theme label,
.widget-premium.light-theme .wp-header p {
    color: var(--lux-text-secondary) !important;
}

/* Light theme cards - dark background */
.widget-premium.light-theme .wp-card {
    background: var(--lux-surface) !important;
    border-color: var(--lux-border) !important;
}

.widget-premium.light-theme .wp-card h3,
.widget-premium.light-theme .wp-card-title {
    color: var(--lux-text-primary) !important;
}

.widget-premium.light-theme .wp-card p,
.widget-premium.light-theme .wp-card-text {
    color: var(--lux-text-secondary) !important;
}

/* Light theme form inputs */
.widget-premium.light-theme input,
.widget-premium.light-theme textarea,
.widget-premium.light-theme select {
    background: var(--lux-surface) !important;
    border: 1px solid var(--lux-border) !important;
    color: var(--lux-text-primary) !important;
}

.widget-premium.light-theme input:focus,
.widget-premium.light-theme textarea:focus {
    border-color: var(--lux-red) !important;
    box-shadow: 0 0 0 3px rgba(196, 30, 58, 0.15) !important;
}

.widget-premium.light-theme input::placeholder,
.widget-premium.light-theme textarea::placeholder {
    color: var(--lux-text-muted) !important;
}

/* Light theme badge */
.widget-premium.light-theme .wp-badge {
    background: linear-gradient(135deg, var(--lux-red) 0%, var(--lux-red-deep) 100%) !important;
    color: var(--lux-white) !important;
}

/* Light theme buttons */
.widget-premium.light-theme .wp-btn,
.widget-premium.light-theme .wp-btn-primary,
.widget-premium.light-theme button[type="submit"] {
    background: linear-gradient(135deg, var(--lux-red) 0%, var(--lux-red-deep) 100%) !important;
    color: var(--lux-white) !important;
    border: none !important;
}

.widget-premium.light-theme .wp-btn:hover,
.widget-premium.light-theme .wp-btn-primary:hover,
.widget-premium.light-theme button[type="submit"]:hover {
    background: linear-gradient(135deg, var(--lux-red-vivid) 0%, var(--lux-red) 100%) !important;
    box-shadow: 0 8px 30px rgba(196, 30, 58, 0.4) !important;
}

/* Light theme secondary buttons */
.widget-premium.light-theme .wp-btn-secondary {
    background: transparent !important;
    border: 1px solid var(--lux-border) !important;
    color: var(--lux-text-primary) !important;
}

.widget-premium.light-theme .wp-btn-secondary:hover {
    border-color: var(--lux-red) !important;
    color: var(--lux-red) !important;
}

/* Light theme links */
.widget-premium.light-theme a,
.widget-premium.light-theme .wp-card-link {
    color: var(--lux-red) !important;
}

/* wp-contact specific overrides */
.wp-contact.light-theme,
.wp-contact.light-theme .wp-container {
    background: var(--lux-black) !important;
}

.wp-contact.light-theme .wp-form-header h2 {
    color: var(--lux-text-primary) !important;
}

.wp-contact.light-theme .wp-badge {
    color: var(--lux-red) !important;
    background: transparent !important;
    font-weight: 600 !important;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   CONTACT FORM - FORCE DARK (Override #fff hardcoded)
   ═══════════════════════════════════════════════════════════════════════════════ */

/* Force dark background on contact form - override #fff */
.widget-premium.light-theme .wp-contact-form,
.wp-contact.light-theme .wp-contact-form,
.wp-contact-form {
    background: var(--lux-surface) !important;
    border: 1px solid var(--lux-border) !important;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.4) !important;
}

/* Force white text on form header */
.widget-premium.light-theme .wp-contact-form .wp-form-header h2,
.wp-contact-form .wp-form-header h2,
.wp-contact-form h2 {
    color: var(--lux-text-primary) !important;
}

/* Force white labels */
.widget-premium.light-theme .wp-contact-form label,
.wp-contact-form label,
.wp-contact-form .form-group label {
    color: var(--lux-text-secondary) !important;
}

/* Force dark inputs with white text */
.widget-premium.light-theme .wp-contact-form input,
.widget-premium.light-theme .wp-contact-form textarea,
.wp-contact-form input,
.wp-contact-form textarea {
    background: var(--lux-elevated) !important;
    border: 1px solid var(--lux-border) !important;
    color: var(--lux-text-primary) !important;
}

.wp-contact-form input:focus,
.wp-contact-form textarea:focus {
    border-color: var(--lux-red) !important;
    box-shadow: 0 0 0 3px rgba(196, 30, 58, 0.2) !important;
    background: var(--lux-card) !important;
}

/* Placeholders */
.widget-premium.light-theme .wp-contact-form input::placeholder,
.widget-premium.light-theme .wp-contact-form textarea::placeholder,
.wp-contact-form input::placeholder,
.wp-contact-form textarea::placeholder {
    color: var(--lux-text-muted) !important;
}

/* Checkbox labels */
.widget-premium.light-theme .wp-contact-form .form-checkbox label,
.wp-contact-form .form-checkbox label {
    color: var(--lux-text-secondary) !important;
}

/* Badge styling - FORCE RED TEXT */
.wp-contact-form .wp-badge,
.wp-form-header .wp-badge,
.widget-premium.light-theme .wp-badge,
.widget-premium .wp-badge,
span.wp-badge,
.wp-badge {
    color: #dc2626 !important;
    background: transparent !important;
    background-image: none !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    font-size: 0.85rem !important;
}

/* Extra specific for contact form badge */
.widget-premium.light-theme .wp-contact-form .wp-form-header .wp-badge,
.wp-contact.light-theme .wp-contact-form .wp-form-header .wp-badge,
.wp-contact-form .wp-form-header span.wp-badge {
    color: #dc2626 !important;
    background: none !important;
    background-color: transparent !important;
    background-image: none !important;
    -webkit-text-fill-color: #dc2626 !important;
}

/* Submit button */
.wp-contact-form .wp-btn,
.wp-contact-form .wp-btn-primary,
.wp-contact-form button[type="submit"] {
    background: linear-gradient(135deg, var(--lux-red) 0%, var(--lux-red-deep) 100%) !important;
    color: var(--lux-white) !important;
    border: none !important;
    padding: 16px 32px !important;
    font-weight: 600 !important;
    border-radius: 8px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    transition: all 0.3s var(--lux-ease) !important;
}

.wp-contact-form .wp-btn:hover,
.wp-contact-form button[type="submit"]:hover {
    background: linear-gradient(135deg, var(--lux-red-vivid) 0%, var(--lux-red) 100%) !important;
    box-shadow: 0 8px 30px rgba(196, 30, 58, 0.4) !important;
    transform: translateY(-2px) !important;
}

/* Contact image section */
.wp-contact-image {
    border-radius: 16px !important;
    overflow: hidden !important;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   WIDGET BACKGROUND - Solo colori, NO spacing (gestito da widgets-premium.css)
   ═══════════════════════════════════════════════════════════════════════════════ */

/* Background scuro uniforme per mainContainerBox */
section.mainContainerBox {
    background: var(--lux-black) !important;
}

/* Spazio tra header e primo widget */
section.mainContainerBox > section:first-child {
    margin-top: 60px !important;
}

/* Spazio tra i widget (30px sopra e sotto) */
section.mainContainerBox > section {
    margin-top: 30px !important;
    margin-bottom: 30px !important;
}

/* Background scuro per tutti i widget */
section.mainContainerBox .subSections,
section.mainContainerBox .widget-premium,
section.mainContainerBox .CmnSectionpadding,
section.mainContainerBox [class*="Widget"],
section.mainContainerBox [class*="Section"] {
    background: var(--lux-black) !important;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   LUXURY GAUGE CARDS - Power & Torque Display
   ═══════════════════════════════════════════════════════════════════════════════ */

/* Gauge Cards Container */
.ts-gauges {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 24px !important;
}

@media (max-width: 768px) {
    .ts-gauges {
        grid-template-columns: 1fr !important;
    }
}

/* Gauge Card - Luxury Style */
.ts-gauge-card {
    background: linear-gradient(165deg, var(--lux-card) 0%, var(--lux-elevated) 100%) !important;
    border: 1px solid var(--lux-border) !important;
    border-radius: 20px !important;
    overflow: hidden !important;
    box-shadow: var(--lux-shadow-medium) !important;
    transition: all 0.4s var(--lux-ease) !important;
}

.ts-gauge-card:hover {
    border-color: var(--lux-red) !important;
    box-shadow: var(--lux-shadow-deep), 0 0 40px rgba(196, 30, 58, 0.15) !important;
    transform: translateY(-4px) !important;
}

/* Gauge Card Header */
.ts-gauge-card__header {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 12px !important;
    padding: 20px 24px !important;
    background: linear-gradient(135deg, var(--lux-surface) 0%, var(--lux-elevated) 100%) !important;
    border-bottom: 1px solid var(--lux-border) !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: var(--lux-white) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.15em !important;
}

.ts-gauge-card__header iconify-icon {
    font-size: 24px !important;
    color: var(--lux-red-vivid) !important;
    filter: drop-shadow(0 0 8px var(--lux-red-glow)) !important;
}

/* Gauge Card Body */
.ts-gauge-card__body {
    padding: 32px 24px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 24px !important;
    background: transparent !important;
}

/* Gauge Ring */
.ts-gauge__ring {
    position: relative !important;
    width: 180px !important;
    height: 180px !important;
}

.ts-gauge__ring svg {
    width: 100% !important;
    height: 100% !important;
    transform: rotate(-90deg) !important;
}

/* ========== POWER BARS - Epic Vertical Comparison ========== */
.ts-bars {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 24px !important;
    padding: 0 !important;
}

/* Main Value Display - BIG */
.ts-bars__value {
    text-align: center !important;
    margin-bottom: 8px !important;
}

.ts-bars__number {
    display: block !important;
    font-size: 64px !important;
    font-weight: 900 !important;
    color: var(--lux-white) !important;
    line-height: 1 !important;
    letter-spacing: -0.03em !important;
    text-shadow: 0 0 40px rgba(255, 255, 255, 0.3), 0 4px 20px rgba(0,0,0,0.5) !important;
    background: linear-gradient(180deg, #ffffff 0%, #cccccc 100%) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
}

.ts-bars__unit {
    display: block !important;
    font-size: 20px !important;
    font-weight: 800 !important;
    color: var(--lux-text-muted) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.3em !important;
    margin-top: 8px !important;
}

/* Gain Badge - Premium Pill */
.ts-bars__gain {
    display: inline-flex !important;
    align-items: center !important;
    gap: 10px !important;
    background: linear-gradient(135deg, var(--lux-red) 0%, var(--lux-red-deep) 100%) !important;
    color: var(--lux-white) !important;
    padding: 14px 28px !important;
    border-radius: 60px !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    box-shadow:
        0 10px 40px rgba(196, 30, 58, 0.5),
        0 0 60px rgba(196, 30, 58, 0.3),
        inset 0 1px 0 rgba(255, 255, 255, 0.2) !important;
    border: 2px solid rgba(255, 255, 255, 0.15) !important;
    text-shadow: 0 2px 4px rgba(0,0,0,0.3) !important;
}

.ts-bars__gain iconify-icon {
    font-size: 24px !important;
    color: #ffffff !important;
    filter: drop-shadow(0 0 8px rgba(255,255,255,0.5)) !important;
    animation: rocketUp 1.5s ease-in-out infinite !important;
}

@keyframes rocketUp {
    0%, 100% { transform: translateY(0) scale(1); }
    50% { transform: translateY(-5px) scale(1.1); }
}

.ts-bars__percent {
    opacity: 0.95 !important;
    font-weight: 700 !important;
    font-size: 16px !important;
}

/* Bars Container - Epic Side by Side */
.ts-bars__container {
    display: flex !important;
    justify-content: center !important;
    align-items: flex-end !important;
    gap: 20px !important;
    width: 100% !important;
    padding: 24px 0 0 !important;
    margin-top: 16px !important;
}

/* Single Bar Item */
.ts-bars__item {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 16px !important;
}

/* Bar Wrapper - TALL and THICK */
.ts-bars__bar-wrap {
    width: 70px !important;
    height: 200px !important;
    background: linear-gradient(180deg, rgba(255,255,255,0.05) 0%, rgba(0,0,0,0.2) 100%) !important;
    border-radius: 35px !important;
    position: relative !important;
    overflow: hidden !important;
    border: 2px solid rgba(255, 255, 255, 0.1) !important;
    box-shadow:
        inset 0 4px 20px rgba(0,0,0,0.4),
        0 4px 20px rgba(0,0,0,0.3) !important;
}

/* The filled bar - grows from bottom with animation */
.ts-bars__bar {
    position: absolute !important;
    bottom: 0 !important;
    left: 4px !important;
    right: 4px !important;
    height: calc(var(--pct, 0) * 1%) !important;
    border-radius: 30px !important;
    transition: height 1.2s cubic-bezier(0.34, 1.56, 0.64, 1) !important;
}

/* Original Bar - Steel Grey with Subtle Shine */
.ts-bars__item--original .ts-bars__bar {
    background: linear-gradient(180deg,
        rgba(180,180,180,0.9) 0%,
        rgba(120,120,120,0.8) 50%,
        rgba(80,80,80,0.7) 100%) !important;
    box-shadow:
        inset 0 2px 10px rgba(255,255,255,0.3),
        inset 0 -2px 10px rgba(0,0,0,0.2) !important;
}

/* Modified Bar - FIRE RED with Epic Glow */
.ts-bars__item--modified .ts-bars__bar {
    background: linear-gradient(180deg,
        #ff4444 0%,
        var(--lux-red-vivid) 30%,
        var(--lux-red) 60%,
        var(--lux-red-deep) 100%) !important;
    box-shadow:
        0 0 30px var(--lux-red-glow),
        0 0 60px rgba(196, 30, 58, 0.4),
        inset 0 2px 15px rgba(255,255,255,0.4),
        inset 0 -5px 20px rgba(0,0,0,0.3) !important;
    animation: barGlow 2s ease-in-out infinite !important;
}

@keyframes barGlow {
    0%, 100% {
        box-shadow:
            0 0 30px var(--lux-red-glow),
            0 0 60px rgba(196, 30, 58, 0.4),
            inset 0 2px 15px rgba(255,255,255,0.4),
            inset 0 -5px 20px rgba(0,0,0,0.3);
    }
    50% {
        box-shadow:
            0 0 40px var(--lux-red-glow),
            0 0 80px rgba(196, 30, 58, 0.5),
            inset 0 2px 15px rgba(255,255,255,0.5),
            inset 0 -5px 20px rgba(0,0,0,0.3);
    }
}

/* Value overlay on bar */
.ts-bars__bar-val {
    position: absolute !important;
    bottom: 12px !important;
    left: 0 !important;
    right: 0 !important;
    text-align: center !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    color: #fff !important;
    text-shadow: 0 2px 8px rgba(0,0,0,0.8) !important;
    z-index: 2 !important;
}

/* Labels under bars */
.ts-bars__label {
    font-size: 12px !important;
    font-weight: 700 !important;
    color: var(--lux-text-muted) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.15em !important;
}

.ts-bars__val {
    font-size: 20px !important;
    font-weight: 800 !important;
    color: var(--lux-white) !important;
}

/* Original item muted style */
.ts-bars__item--original .ts-bars__val {
    color: rgba(255, 255, 255, 0.6) !important;
}

.ts-bars__item--original .ts-bars__label {
    color: rgba(255, 255, 255, 0.4) !important;
}

/* Modified item - highlighted and proud */
.ts-bars__item--modified .ts-bars__label {
    color: var(--lux-red-vivid) !important;
    text-shadow: 0 0 10px rgba(196, 30, 58, 0.5) !important;
}

.ts-bars__item--modified .ts-bars__val {
    color: #fff !important;
    text-shadow: 0 0 20px rgba(255,255,255,0.3) !important;
}

/* Mobile Responsive */
@media (max-width: 480px) {
    .ts-gauge-card__header {
        padding: 16px 20px !important;
        font-size: 14px !important;
    }

    .ts-gauge-card__body {
        padding: 24px 16px !important;
    }

    .ts-bars__number {
        font-size: 48px !important;
    }

    .ts-bars__unit {
        font-size: 16px !important;
    }

    .ts-bars__gain {
        padding: 10px 20px !important;
        font-size: 14px !important;
    }

    .ts-bars__gain iconify-icon {
        font-size: 18px !important;
    }

    .ts-bars__container {
        gap: 16px !important;
    }

    .ts-bars__bar-wrap {
        width: 55px !important;
        height: 160px !important;
        border-radius: 28px !important;
    }

    .ts-bars__bar {
        border-radius: 24px !important;
    }

    .ts-bars__val {
        font-size: 16px !important;
    }

    .ts-bars__label {
        font-size: 10px !important;
    }
}

/* ═══════════════════════════════════════════════════════════════════════════════
   LEGAL PAGES - Privacy Policy, Disclaimer, Terms, Refund Policy
   ═══════════════════════════════════════════════════════════════════════════════ */

/* Main container for legal content */
.PrivacypolicyContainer {
    background: var(--lux-black) !important;
    padding: 60px 0 !important;
}

/* Content area styling */
.PrivacypolicyContainer .mappingleftsec {
    background: linear-gradient(
        165deg,
        rgba(28, 28, 36, 0.6) 0%,
        rgba(16, 16, 20, 0.8) 100%
    ) !important;
    backdrop-filter: blur(20px) !important;
    -webkit-backdrop-filter: blur(20px) !important;
    border: 1px solid var(--lux-border) !important;
    border-radius: 24px !important;
    padding: 50px !important;
    box-shadow: var(--lux-shadow-medium) !important;
}

/* Legal page titles - elegant carminio style */
.PrivacypolicyContainer .pt-heading-title,
.PriceslistContainer .PrivacypolicyContainer .pt-heading-title,
.PriceslistContainer .pt-heading h2,
.PrivacypolicyContainer .pt-heading h2 {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-size: 1.8rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.08em !important;
    margin-bottom: 40px !important;
    text-align: center !important;
    position: relative !important;
    padding: 15px 30px !important;
    background: linear-gradient(135deg, #c41e3a 0%, #8b0000 100%) !important;
    border-radius: 8px !important;
    box-shadow: 0 0 25px rgba(196, 30, 58, 0.35) !important;
    display: inline-block !important;
    width: auto !important;
}

.PrivacypolicyContainer .pt-heading-title::after,
.PriceslistContainer .pt-heading h2::after {
    display: none !important;
}

/* Legal content text */
.mappingCont {
    color: var(--lux-text-secondary) !important;
    line-height: 1.9 !important;
    font-size: 1rem !important;
}

/* Legal pages content titles - override PriceslistContainer red background (H2-H6 only) */
.PriceslistContainer .mappingCont h2,
.PriceslistContainer .mappingCont h3,
.PriceslistContainer .mappingCont h4,
.PriceslistContainer .mappingCont h5,
.PriceslistContainer .mappingCont h6,
.PrivacypolicyContainer .mappingCont h2,
.PrivacypolicyContainer .mappingCont h3,
.PrivacypolicyContainer .mappingCont h4,
.PrivacypolicyContainer .mappingCont h5,
.PrivacypolicyContainer .mappingCont h6,
/* ═══ LEGAL PAGES - Uniform heading hierarchy (H2-H6) ═══ */
.mappingCont h2,
.mappingCont h3,
.mappingCont h4,
.mappingCont h5,
.mappingCont h6 {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    background: none !important;
    background-color: transparent !important;
    background-image: none !important;
    padding: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    text-align: left !important;
    width: auto !important;
    font-weight: 700 !important;
    letter-spacing: 0.02em !important;
    line-height: 1.3 !important;
}

/* H1 - Main document title (elegant carminio style like login button) */
.mappingCont h1,
.PriceslistContainer .mappingCont h1,
.PrivacypolicyContainer .mappingCont h1,
section.PriceslistContainer .PrivacypolicyContainer .mappingCont h1 {
    font-size: 1.8rem !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    margin-top: 0 !important;
    margin-bottom: 30px !important;
    padding: 15px 25px 15px 25px !important;
    background: linear-gradient(135deg, #c41e3a 0%, #8b0000 100%) !important;
    border: none !important;
    border-radius: 6px !important;
    box-shadow: 0 0 25px rgba(196, 30, 58, 0.35) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.08em !important;
    text-align: center !important;
}

/* H2 - Main sections (1. INTRODUCTION, 2. DATA, etc.) */
.mappingCont h2 {
    font-size: 1.4rem !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    margin-top: 40px !important;
    margin-bottom: 20px !important;
    padding-left: 15px !important;
    border-left: 4px solid var(--lux-red) !important;
}

/* H3 - Subsections (2.1 Nature, 2.2 Scope, etc.) */
.mappingCont h3 {
    font-size: 1.15rem !important;
    color: rgba(255, 255, 255, 0.9) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, 0.9) !important;
    margin-top: 30px !important;
    margin-bottom: 15px !important;
    padding-left: 15px !important;
    border-left: 2px solid rgba(196, 30, 58, 0.5) !important;
}

/* H4/H5/H6 - Minor headings */
.mappingCont h4,
.mappingCont h5,
.mappingCont h6 {
    font-size: 1rem !important;
    color: rgba(255, 255, 255, 0.85) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, 0.85) !important;
    margin-top: 25px !important;
    margin-bottom: 12px !important;
}

/* Strong/Bold inside headings - inherit parent styles */
.mappingCont h1 strong,
.mappingCont h1 b,
.mappingCont h2 strong,
.mappingCont h2 b,
.mappingCont h3 strong,
.mappingCont h3 b,
.mappingCont h4 strong,
.mappingCont h4 b {
    color: inherit !important;
    -webkit-text-fill-color: inherit !important;
    font-weight: inherit !important;
    background: none !important;
    -webkit-background-clip: unset !important;
    background-clip: unset !important;
}

.mappingCont p {
    color: var(--lux-text-secondary) !important;
    margin-bottom: 18px !important;
}

.mappingCont ul,
.mappingCont ol {
    padding-left: 25px !important;
    margin-bottom: 20px !important;
}

.mappingCont li {
    color: var(--lux-text-secondary) !important;
    margin-bottom: 12px !important;
    position: relative !important;
}

.mappingCont ul li::marker {
    color: var(--lux-red) !important;
}

.mappingCont ol li::marker {
    color: var(--lux-red-vivid) !important;
    font-weight: 700 !important;
}

.mappingCont a {
    color: var(--lux-red-vivid) !important;
    text-decoration: underline !important;
    text-decoration-color: rgba(196, 30, 58, 0.4) !important;
    text-underline-offset: 3px !important;
    transition: all 0.3s ease !important;
}

.mappingCont a:hover {
    color: var(--lux-white) !important;
    text-shadow: 0 0 15px var(--lux-red-glow) !important;
}

.mappingCont strong,
.mappingCont b {
    color: var(--lux-text-primary) !important;
    font-weight: 700 !important;
}

.mappingCont em,
.mappingCont i {
    color: var(--lux-text-muted) !important;
    font-style: italic !important;
}

/* Override inline styles in WYSIWYG content - UNIVERSAL */
.mappingCont [style*="color"],
.mappingCont [style*="background"] {
    color: inherit !important;
    background: transparent !important;
    background-color: transparent !important;
    -webkit-text-fill-color: inherit !important;
}

/* Force white text on ALL headings inside legal content - ANY inline style */
.mappingCont h1[style],
.mappingCont h2[style],
.mappingCont h3[style],
.mappingCont h4[style],
.mappingCont h5[style],
.mappingCont h6[style] {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    padding: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

/* Force text colors for paragraphs with inline styles */
.mappingCont p[style],
.mappingCont li[style],
.mappingCont span[style],
.mappingCont div[style] {
    color: rgba(255, 255, 255, 0.85) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, 0.85) !important;
    background: transparent !important;
}

/* Inner banner for legal pages */
.innerBanner.privacyimg {
    min-height: 350px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: relative !important;
}

.innerBanner.privacyimg::before {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    background: linear-gradient(
        180deg,
        rgba(3, 3, 5, 0.5) 0%,
        rgba(10, 10, 14, 0.85) 70%,
        var(--lux-black) 100%
    ) !important;
    z-index: 1 !important;
}

.innerBanner.privacyimg .innerbannerContent {
    position: relative !important;
    z-index: 2 !important;
    text-align: center !important;
}

.innerBanner.privacyimg h2 {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-size: 2.5rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.1em !important;
    font-weight: 700 !important;
    text-shadow: none !important;
    background: linear-gradient(135deg, #c41e3a 0%, #8b0000 100%) !important;
    -webkit-background-clip: unset !important;
    background-clip: unset !important;
    padding: 18px 40px !important;
    border-radius: 8px !important;
    box-shadow: 0 0 30px rgba(196, 30, 58, 0.4) !important;
    display: inline-block !important;
}

/* Back to menu section */
.commonconatctlinkSection.paddingadon {
    background: var(--lux-black) !important;
    padding: 60px 0 80px !important;
    text-align: center !important;
}

.commonconatctlinkSection .backcentercont__ {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 25px !important;
}

.commonconatctlinkSection .pt-heading-title.h3 {
    color: var(--lux-text-muted) !important;
    font-size: 1.1rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.1em !important;
    margin-bottom: 0 !important;
}

/* CTA Button for legal pages */
.installerViewContainer .cta {
    background: linear-gradient(
        135deg,
        var(--lux-red-vivid) 0%,
        var(--lux-red) 50%,
        var(--lux-red-deep) 100%
    ) !important;
    color: var(--lux-white) !important;
    border: none !important;
    padding: 18px 45px !important;
    font-size: 0.85rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.15em !important;
    border-radius: 12px !important;
    cursor: pointer !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 12px !important;
    box-shadow:
        0 8px 30px rgba(196, 30, 58, 0.4),
        inset 0 1px 0 rgba(255, 255, 255, 0.2) !important;
    transition: all 0.4s var(--lux-ease-out) !important;
    position: relative !important;
    overflow: hidden !important;
}

.installerViewContainer .cta::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: -100% !important;
    width: 100% !important;
    height: 100% !important;
    background: linear-gradient(
        120deg,
        transparent 0%,
        rgba(255, 255, 255, 0.3) 50%,
        transparent 100%
    ) !important;
    transition: left 0.6s ease !important;
}

.installerViewContainer .cta:hover::before {
    left: 100% !important;
}

.installerViewContainer .cta:hover {
    transform: translateY(-5px) scale(1.03) !important;
    box-shadow:
        0 15px 45px rgba(196, 30, 58, 0.5),
        0 0 80px rgba(196, 30, 58, 0.3),
        inset 0 1px 0 rgba(255, 255, 255, 0.3) !important;
}

.installerViewContainer .cta span {
    color: var(--lux-white) !important;
    position: relative !important;
    z-index: 1 !important;
}

.installerViewContainer .cta svg {
    stroke: var(--lux-white) !important;
    stroke-width: 2 !important;
    fill: none !important;
    position: relative !important;
    z-index: 1 !important;
    transition: transform 0.3s ease !important;
}

.installerViewContainer .cta:hover svg {
    transform: translateX(5px) !important;
}

/* PriceslistContainer shape */
.PriceslistContainer {
    background: var(--lux-black) !important;
}

.PriceslistContainer .shaperoundedTop {
    background: var(--lux-black) !important;
    height: 0 !important;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   LEGAL PAGES - MOBILE RESPONSIVE
   ═══════════════════════════════════════════════════════════════════════════════ */

@media (max-width: 991px) {
    .innerBanner.privacyimg {
        min-height: 280px !important;
    }

    .innerBanner.privacyimg h2 {
        font-size: 2.5rem !important;
        letter-spacing: 0.1em !important;
    }

    .PrivacypolicyContainer {
        padding: 40px 0 !important;
    }

    .PrivacypolicyContainer .mappingleftsec {
        padding: 35px !important;
        border-radius: 18px !important;
    }

    .PrivacypolicyContainer .pt-heading-title {
        font-size: 2rem !important;
    }

    .mappingCont h2 {
        font-size: 1.4rem !important;
    }
}

@media (max-width: 767px) {
    .innerBanner.privacyimg {
        min-height: 220px !important;
        padding: 30px 15px !important;
    }

    .innerBanner.privacyimg h2 {
        font-size: 1.8rem !important;
        letter-spacing: 0.06em !important;
    }

    .PrivacypolicyContainer {
        padding: 30px 0 !important;
    }

    .PrivacypolicyContainer .mappingleftsec {
        padding: 25px 20px !important;
        border-radius: 14px !important;
        margin: 0 10px !important;
    }

    .PrivacypolicyContainer .pt-heading-title {
        font-size: 1.5rem !important;
        margin-bottom: 30px !important;
        padding-bottom: 20px !important;
    }

    .PrivacypolicyContainer .pt-heading-title::after {
        width: 80px !important;
    }

    .mappingCont {
        font-size: 0.95rem !important;
        line-height: 1.8 !important;
    }

    .mappingCont h2 {
        font-size: 1.2rem !important;
        margin-top: 25px !important;
        padding-left: 12px !important;
    }

    .mappingCont h3 {
        font-size: 1.1rem !important;
    }

    .mappingCont ul,
    .mappingCont ol {
        padding-left: 18px !important;
    }

    .commonconatctlinkSection.paddingadon {
        padding: 40px 0 60px !important;
    }

    .installerViewContainer .cta {
        padding: 15px 30px !important;
        font-size: 0.8rem !important;
    }
}

@media (max-width: 480px) {
    .innerBanner.privacyimg h2 {
        font-size: 1.4rem !important;
    }

    .PrivacypolicyContainer .mappingleftsec {
        padding: 20px 15px !important;
        margin: 0 5px !important;
    }

    .PrivacypolicyContainer .pt-heading-title {
        font-size: 1.3rem !important;
    }

    .mappingCont {
        font-size: 0.9rem !important;
    }

    .mappingCont h2 {
        font-size: 1.1rem !important;
    }

    .installerViewContainer .cta {
        padding: 14px 25px !important;
        font-size: 0.75rem !important;
        letter-spacing: 0.1em !important;
    }
}

/* ═══════════════════════════════════════════════════════════════════════════════
   FORCE WHITE TEXT FOR LEGAL PAGES - FINAL OVERRIDE (H2-H6 only, H1 has gradient)
   ═══════════════════════════════════════════════════════════════════════════════ */
section.PriceslistContainer .PrivacypolicyContainer .mappingCont h2,
section.PriceslistContainer .PrivacypolicyContainer .mappingCont h3,
section.PriceslistContainer .PrivacypolicyContainer .mappingCont h4,
section.PriceslistContainer .PrivacypolicyContainer .mappingCont h5,
section.PriceslistContainer .PrivacypolicyContainer .mappingCont h6,
.PriceslistContainer .PrivacypolicyContainer .mappingCont h2,
.PriceslistContainer .PrivacypolicyContainer .mappingCont h3,
.PrivacypolicyContainer .mappingCont h2,
.PrivacypolicyContainer .mappingCont h3,
.mappingCont h2,
.mappingCont h3,
.mappingCont h4,
.mappingCont h5,
.mappingCont h6 {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   FINAL OVERRIDE - H1 Legal Pages Elegant Carminio (highest specificity)
   ═══════════════════════════════════════════════════════════════════════════════ */
body .PriceslistContainer .mappingCont h1,
body .PrivacypolicyContainer .mappingCont h1,
html body .PriceslistContainer .mappingCont h1,
html body section.PriceslistContainer .PrivacypolicyContainer .mappingCont h1,
.PriceslistContainer .PrivacypolicyContainer .mappingCont h1,
.mappingCont > h1,
.mappingCont h1:first-of-type {
    font-size: 1.8rem !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    margin-top: 0 !important;
    margin-bottom: 30px !important;
    padding: 15px 25px !important;
    background: linear-gradient(135deg, #c41e3a 0%, #8b0000 100%) !important;
    border: none !important;
    border-radius: 6px !important;
    box-shadow: 0 0 25px rgba(196, 30, 58, 0.35) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.08em !important;
    text-align: center !important;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   FINAL OVERRIDE - FIND MY CAR BUTTON - Carminio Premium (Massima specificità)
   ═══════════════════════════════════════════════════════════════════════════════ */
html body .buttonfindcarsearch button,
html body .bannersearchContainer .buttonfindcarsearch button,
html body .searchcarform .buttonfindcarsearch button,
html body .TuningSpaces_quickSearch_Widget .buttonfindcarsearch button,
html body .col-auto.filtermenu .buttonfindcarsearch button,
html body div.buttonfindcarsearch button,
.buttonfindcarsearch button[type="submit"],
button.buttonfindcarsearch,
.buttonfindcarsearch > button {
    background: linear-gradient(135deg, #e63946 0%, #c41e3a 40%, #8b1538 100%) !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 8px !important;
    font-weight: 600 !important;
    font-size: 13px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    padding: 12px 20px !important;
    box-shadow: 0 4px 15px rgba(196, 30, 58, 0.35) !important;
    transition: all 0.3s ease !important;
    /* Centramento contenuto */
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    text-align: center !important;
    white-space: nowrap !important;
    width: 100% !important;
    max-width: 100% !important;
}

html body .buttonfindcarsearch button:hover,
html body .bannersearchContainer .buttonfindcarsearch button:hover,
html body .searchcarform .buttonfindcarsearch button:hover,
html body .TuningSpaces_quickSearch_Widget .buttonfindcarsearch button:hover,
html body .col-auto.filtermenu .buttonfindcarsearch button:hover,
html body div.buttonfindcarsearch button:hover,
.buttonfindcarsearch button[type="submit"]:hover,
button.buttonfindcarsearch:hover,
.buttonfindcarsearch > button:hover {
    background: linear-gradient(135deg, #ff4d5a 0%, #e63946 40%, #c41e3a 100%) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 6px 20px rgba(196, 30, 58, 0.45) !important;
}

/* FIND MY CAR - Stesse dimensioni dei select su tablet/mobile */
@media (max-width: 1024px) {
    html body .buttonfindcarsearch,
    html body .TuningSpaces_quickSearch_Widget .buttonfindcarsearch,
    html body .searchcarform .buttonfindcarsearch {
        width: 100% !important;
        max-width: 100% !important;
        flex: 1 1 100% !important;
    }

    html body .buttonfindcarsearch button,
    html body .TuningSpaces_quickSearch_Widget .buttonfindcarsearch button,
    html body .searchcarform .buttonfindcarsearch button {
        width: 100% !important;
        height: 46px !important;
        min-height: 46px !important;
        max-height: 46px !important;
        padding: 0 16px !important;
        font-size: 12px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 6px !important;
        box-sizing: border-box !important;
    }

    html body .buttonfindcarsearch button iconify-icon {
        font-size: 14px !important;
        color: #ffffff !important;
    }
}

/* Icona bottone Find My Car - sempre bianca */
html body .buttonfindcarsearch button iconify-icon,
html body .TuningSpaces_quickSearch_Widget .buttonfindcarsearch button iconify-icon,
html body .searchcarform .buttonfindcarsearch button iconify-icon,
.buttonfindcarsearch button iconify-icon {
    color: #ffffff !important;
    fill: #ffffff !important;
}

/* Desktop - Bottone allineato sotto Engine (5a colonna) */
@media (min-width: 1025px) {
    /* Grid a 5 colonne per desktop */
    html body .TuningSpaces_quickSearch_Widget .row.list-fileds,
    html body .searchcarform .row.list-fileds,
    html body .row.list-fileds {
        display: grid !important;
        grid-template-columns: repeat(5, 1fr) !important;
        gap: 15px !important;
    }

    /* Ogni filtermenu prende la sua colonna */
    html body .row.list-fileds > .col-auto.filtermenu {
        width: 100% !important;
        max-width: 100% !important;
    }

    /* Il bottone (5o elemento) è già nella 5a colonna */
    html body .row.list-fileds > .col-auto.filtermenu:nth-child(5) {
        grid-column: 5 !important;
    }

    html body .buttonfindcarsearch {
        width: 100% !important;
    }

    html body .buttonfindcarsearch button {
        width: 100% !important;
        height: 48px !important;
    }
}

@media (max-width: 767px) {
    html body .buttonfindcarsearch button,
    html body .TuningSpaces_quickSearch_Widget .buttonfindcarsearch button,
    html body .searchcarform .buttonfindcarsearch button {
        width: 100% !important;
        height: 46px !important;
        min-height: 46px !important;
        max-height: 46px !important;
        padding: 0 14px !important;
        font-size: 11px !important;
    }
}

/* ═══════════════════════════════════════════════════════════════════════════════
   CONTACT PAGE - BOTTONE SUBMIT CARMINIO
   ═══════════════════════════════════════════════════════════════════════════════ */
html body .buttonSubmitFormhome .button,
html body .buttonSubmitFormhome button,
html body .buttonSubmitFormhome button.button,
.buttonSubmitFormhome .button,
.buttonSubmitFormhome button {
    background: linear-gradient(135deg, #e63946 0%, #c41e3a 40%, #8b1538 100%) !important;
    background-color: transparent !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 8px !important;
    box-shadow: 0 4px 15px rgba(196, 30, 58, 0.35) !important;
}

html body .buttonSubmitFormhome .button:hover,
html body .buttonSubmitFormhome button:hover,
.buttonSubmitFormhome .button:hover,
.buttonSubmitFormhome button:hover {
    background: linear-gradient(135deg, #ff4d5a 0%, #e63946 40%, #c41e3a 100%) !important;
    box-shadow: 0 8px 30px rgba(196, 30, 58, 0.5) !important;
    transform: scale(1.05) !important;
}

/* Contact Page - Badge "Connect with us" Carminio */
html body .pt-heading-subtitle,
html body .formstarthm .pt-heading-subtitle,
.formstarthm .pt-heading-subtitle {
    display: inline-block !important;
    background: linear-gradient(135deg, #e63946 0%, #c41e3a 40%, #8b1538 100%) !important;
    color: #ffffff !important;
    padding: 10px 20px !important;
    border-radius: 6px !important;
    font-size: 0.8125rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.12em !important;
    box-shadow: 0 4px 15px rgba(196, 30, 58, 0.35) !important;
    margin-bottom: 15px !important;
}

/* ═══════════════════════════════════════════════════════════════════════════════
   HEADER SCROLLED - SEMPRE NERO/SCURO
   ═══════════════════════════════════════════════════════════════════════════════ */
html body .tf-header.tf-header--scrolled,
html body .site-header.scrolled,
html body header.scrolled,
.tf-header.tf-header--scrolled,
.site-header.scrolled {
    background: rgba(10, 10, 14, 0.95) !important;
    backdrop-filter: saturate(180%) blur(20px) !important;
    -webkit-backdrop-filter: saturate(180%) blur(20px) !important;
    border-bottom-color: rgba(255, 255, 255, 0.08) !important;
}

/* Testo header scrolled - sempre chiaro */
html body .tf-header.tf-header--scrolled .tf-header__menu > li > a,
html body .tf-header.tf-header--scrolled a,
html body .site-header.scrolled a,
html body .site-header.scrolled .site-menu > ul > li > a {
    color: rgba(255, 255, 255, 0.92) !important;
}

html body .tf-header.tf-header--scrolled .tf-header__menu > li > a:hover,
html body .site-header.scrolled a:hover {
    color: #ffffff !important;
}
