/**
 * Theme: Sport & Performance (Dark Carbon & Crimson Red)
 * High-performance racing look, sharp edges, carbon colors, bold fonts.
 */
body.theme-sporty {
    --primary-font: 'Montserrat', sans-serif;
    
    --color-navy-dark: #f9fafb;       /* Bright white/silver text */
    --color-navy-medium: #e5e7eb;
    --color-navy-light: #9ca3af;
    
    --color-blue-tech: #e11d48;       /* Crimson Red primary */
    --color-blue-hover: #be123c;      /* Deep racing red */
    --color-blue-light: rgba(225, 29, 72, 0.12);
    --color-accent-amber: #10b981;    /* Track Green for positive highlights */
    
    --color-bg-light: #0f131a;        /* Carbon fiber absolute dark */
    --color-bg-white: #1a1f29;        /* Slate sporty gray */
    --color-border: #2e3748;
    --color-border-hover: #e11d48;
    
    --color-text-dark: #f9fafb;
    --color-text-gray: #d1d5db;
    --color-text-light: #6b7280;
    
    --shadow-sm: 0 2px 4px rgba(0, 0, 0, 0.4);
    --shadow-md: 0 6px 12px rgba(0, 0, 0, 0.5);
    --shadow-lg: 0 12px 20px rgba(225, 29, 72, 0.1);
    --shadow-premium: 0 20px 30px rgba(0, 0, 0, 0.7), 0 0 25px rgba(225, 29, 72, 0.1);
    
    --border-radius-premium: 6px;     /* Sharp, aggressive corners */
    --border-radius-sm: 3px;
    
    background-color: #0f131a !important;
    color: #f9fafb !important;
}

/* Specific Style Overrides for Sporty Red Theme */
body.theme-sporty h1, 
body.theme-sporty h2, 
body.theme-sporty h3, 
body.theme-sporty h4, 
body.theme-sporty h5, 
body.theme-sporty h6 {
    font-family: 'Montserrat', sans-serif;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: -0.01em;
    font-style: italic;
    color: #ffffff !important;
}

body.theme-sporty p, 
body.theme-sporty span.text-muted, 
body.theme-sporty .text-secondary {
    color: #cbd5e1 !important;
}

body.theme-sporty .border,
body.theme-sporty img.border {
    border: none !important;
}

/* Header & Navbar */
body.theme-sporty .premium-navbar {
    background-color: #11151e !important;
    border-bottom: 3px solid #e11d48 !important;
}

body.theme-sporty .premium-navbar .navbar-brand {
    color: #ffffff !important;
    font-family: 'Montserrat', sans-serif;
    font-weight: 900;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    font-style: italic;
}

body.theme-sporty .premium-navbar .navbar-brand span {
    color: #e11d48 !important;
}

body.theme-sporty .premium-navbar .nav-link {
    color: #e5e7eb !important;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 0.85rem;
    letter-spacing: 0.5px;
}

body.theme-sporty .premium-navbar .nav-link:hover,
body.theme-sporty .premium-navbar .nav-item.active .nav-link {
    color: #e11d48 !important;
    background-color: rgba(225, 29, 72, 0.1) !important;
}

body.theme-sporty .premium-navbar .btn-contact-nav {
    background-color: #e11d48 !important;
    color: #ffffff !important;
    font-family: 'Montserrat', sans-serif;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1px;
}

body.theme-sporty .premium-navbar .btn-contact-nav:hover {
    background-color: #be123c !important;
    transform: skewX(-5deg) translateY(-1px);
    box-shadow: 0 4px 15px rgba(225, 29, 72, 0.4);
}

/* Cards & Layout */
body.theme-sporty .search-card,
body.theme-sporty .filter-card,
body.theme-sporty .vehicle-card,
body.theme-sporty .service-card,
body.theme-sporty .spec-grid-card,
body.theme-sporty .category-card,
body.theme-sporty .brand-logo-card {
    background-color: #1a1f29 !important;
    border: 1px solid #2e3748 !important;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.5) !important;
    border-radius: 6px !important;
}

body.theme-sporty .vehicle-card:hover,
body.theme-sporty .service-card:hover,
body.theme-sporty .category-card:hover,
body.theme-sporty .brand-logo-card:hover {
    border-color: #e11d48 !important;
    box-shadow: 0 10px 25px rgba(225, 29, 72, 0.15) !important;
    transform: translateY(-4px) skewX(-1deg);
}

body.theme-sporty .vehicle-card-img {
    background-color: #0f131a !important;
    border-radius: 6px 6px 0 0 !important;
}

body.theme-sporty .vehicle-card-badge {
    background-color: #e11d48 !important;
    color: #ffffff !important;
    font-weight: 800;
    font-family: 'Montserrat', sans-serif;
    border-radius: 3px;
    letter-spacing: 0.5px;
}

body.theme-sporty .vehicle-card-brand {
    color: #e11d48 !important;
    font-family: 'Montserrat', sans-serif;
    font-weight: 800;
}

body.theme-sporty .vehicle-card-title {
    color: #ffffff !important;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
}

body.theme-sporty .vehicle-card-spec-item {
    background-color: #11151e !important;
    color: #e5e7eb !important;
    border-radius: 3px;
}

body.theme-sporty .vehicle-card-footer {
    border-top-color: #2e3748 !important;
}

body.theme-sporty .vehicle-card-price {
    color: #ffffff !important;
    font-family: 'Montserrat', sans-serif;
    font-weight: 800;
}

body.theme-sporty .vehicle-card-link {
    color: #e11d48 !important;
}

body.theme-sporty .vehicle-card-link:hover {
    color: #be123c !important;
}

/* Category & Brand Highlights */
body.theme-sporty .category-icon-box {
    background-color: rgba(225, 29, 72, 0.1) !important;
    color: #e11d48 !important;
    border-radius: 4px;
}

body.theme-sporty .brand-logo-card span {
    color: #ffffff !important;
}

body.theme-sporty .brand-logo-card .badge {
    background-color: rgba(225, 29, 72, 0.2) !important;
    color: #e11d48 !important;
}

body.theme-sporty .brand-logo-square,
body.theme-sporty .brand-logo-square img {
    border-radius: 50% !important;
    overflow: hidden !important;
}

/* Buttons */
body.theme-sporty .btn-premium-primary {
    background-color: #e11d48 !important;
    color: #ffffff !important;
    font-family: 'Montserrat', sans-serif;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-radius: 4px !important;
}

body.theme-sporty .btn-premium-primary:hover {
    background-color: #be123c !important;
    box-shadow: 0 4px 15px rgba(225, 29, 72, 0.4) !important;
}

body.theme-sporty .btn-premium-secondary {
    background-color: transparent !important;
    color: #ffffff !important;
    border: 1px solid #2e3748 !important;
    border-radius: 4px !important;
}

body.theme-sporty .btn-premium-secondary:hover {
    border-color: #e11d48 !important;
    color: #e11d48 !important;
}

/* Sections & Separators */
body.theme-sporty .bg-light {
    background-color: #0f131a !important;
    border-color: #2e3748 !important;
}

body.theme-sporty .bg-white {
    background-color: #1a1f29 !important;
    border-color: #2e3748 !important;
}

body.theme-sporty section.bg-dark {
    background-color: #151a24 !important; /* Grigio scuro che stacca rispetto a sfondi #0f131a e #1a1f29 */
    border-color: rgba(255, 255, 255, 0.08) !important; /* Bordi molto più sfumati e meno evidenti */
}

body.theme-sporty .section-title::after,
body.theme-sporty .section-title-center::after {
    background-color: #e11d48 !important;
    height: 4px;
}

body.theme-sporty .spec-grid-item {
    border-bottom-color: #2e3748 !important;
}

body.theme-sporty .spec-grid-value {
    color: #e11d48 !important;
}

/* Forms & Selects */
body.theme-sporty .form-control,
body.theme-sporty .form-select {
    background-color: #11151e !important;
    border-color: #2e3748 !important;
    color: #ffffff !important;
    border-radius: 4px !important;
}

body.theme-sporty .form-control:focus,
body.theme-sporty .form-select:focus {
    border-color: #e11d48 !important;
    box-shadow: 0 0 0 4px rgba(225, 29, 72, 0.2) !important;
}

/* Footer Section */
body.theme-sporty .footer-section {
    background-color: #080a0e !important;
    border-top: 3px solid #e11d48 !important;
}

body.theme-sporty .footer-logo span {
    color: #e11d48 !important;
}

/* Scrollbar */
body.theme-sporty ::-webkit-scrollbar-track {
    background: #0f131a;
}

body.theme-sporty ::-webkit-scrollbar-thumb {
    background: #50111f;
}

body.theme-sporty ::-webkit-scrollbar-thumb:hover {
    background: #e11d48;
}
