/* ==========================================================================
   EVOLVE - Custom CSS
   Site: www.rideevolve.eu
   Fichier: custom_evolve.css
   ========================================================================== */

:root {
    --evolve-orange: #FB613B;
    --evolve-orange-hover: #e5552f;
    --evolve-dark: #0a0a0a;
    --evolve-dark-card: #1a1a1a;
    --evolve-dark-secondary: #111111;
    --evolve-text-muted: #a0a0a0;
    --radius-sm: 6px;
    --radius-lg: 12px;
    --transition-base: all 0.3s ease;
}

/* ==========================================================================
   SECTION 1: NEWSLETTER
   ========================================================================== */

.block_newsletter .btn-primary,
.block_newsletter button[type="submit"] {
    background-color: #333333 !important;
    border-color: #333333 !important;
    color: #ffffff !important;
}

.block_newsletter .btn-primary:hover,
.block_newsletter button[type="submit"]:hover {
    background-color: #1a1a1a !important;
    border-color: #1a1a1a !important;
}

/* ==========================================================================
   SECTION 2: EVOLVE LABS - Éditions Limitées
   ========================================================================== */

/* --------------------------------------------------------------------------
   VARIABLES
   -------------------------------------------------------------------------- */
:root {
    --evolve-orange: #FB613B;
    --evolve-orange-hover: #C34B2E;
    --evolve-dark: #0a0a0a;
    --evolve-dark-secondary: #141414;
    --evolve-dark-card: #1a1a1a;
    --evolve-text: #ffffff;
    --evolve-text-muted: #a0a0a0;
    --evolve-border: #2a2a2a;
    --evolve-gold: #d4af37;
    --evolve-purple: #8b5cf6;
    --evolve-blue: #3b82f6;
    --font-display: "Protest strike", "Manrope", sans-serif;
    --font-body: "Manrope", "Lexend", sans-serif;
    --radius-sm: 4px;
    --radius-md: 8px;
    --radius-lg: 12px;
    --container-max: 1600px;
    --transition-base: all 0.3s ease;
}

/* --------------------------------------------------------------------------
   HEADER (Badge + Titre + Accroche)
   -------------------------------------------------------------------------- */
.labs-header {
    text-align: center;
    padding: 40px 20px 20px !important;
    background: #0a0a0a !important;
}

.labs-header h1 {
    font-family: "Protest strike", "Manrope", sans-serif !important;
    font-size: clamp(32px, 6vw, 56px) !important;
    font-weight: 500 !important;
    color: #ffffff !important;
    margin: 15px 0 10px !important;
    line-height: 1.1 !important;
}

.labs-header .accroche {
    font-size: 14px !important;
    letter-spacing: 2px !important;
    color: #a0a0a0 !important;
    text-transform: uppercase !important;
    margin: 0 !important;
}

.labs-badge {
    display: inline-block !important;
    padding: 8px 20px !important;
    background: linear-gradient(135deg, #FB613B 0%, #C34B2E 100%) !important;
    color: #ffffff !important;
    font-family: "Manrope", sans-serif !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 3px !important;
    text-transform: uppercase !important;
    border-radius: 30px !important;
    margin-bottom: 10px !important;
}

/* --------------------------------------------------------------------------
   HERO IMAGE (Fiche produit - image inline)
   -------------------------------------------------------------------------- */
.labs-hero {
    position: relative !important;
    width: 100% !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding: 20px !important;
    background: #0a0a0a !important;
}

.labs-hero img {
    width: 100% !important;
    height: auto !important;
    display: block !important;
    border-radius: 12px !important;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5) !important;
}

/* --------------------------------------------------------------------------
   INTRO
   -------------------------------------------------------------------------- */
.labs-intro {
    max-width: 900px !important;
    margin: 0 auto !important;
    padding: 40px 20px !important;
    text-align: center !important;
    background: #0a0a0a !important;
}

.labs-intro p {
    font-size: 16px !important;
    line-height: 1.8 !important;
    color: #a0a0a0 !important;
    margin: 0 0 20px !important;
}

.labs-intro p:last-child {
    margin-bottom: 0 !important;
}

.labs-intro strong {
    color: #ffffff !important;
}

/* --------------------------------------------------------------------------
   SPECS BOX
   -------------------------------------------------------------------------- */
.labs-specs-box {
    background: #141414 !important;
    border: 1px solid #2a2a2a !important;
    border-radius: 12px !important;
    padding: 40px !important;
    margin: 40px auto !important;
    max-width: 800px !important;
}

.labs-specs-box h2 {
    font-family: "Protest strike", "Manrope", sans-serif !important;
    font-size: 24px !important;
    color: #ffffff !important;
    margin: 0 0 25px !important;
    text-align: center !important;
}

.labs-specs-list {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 12px !important;
}

.labs-specs-list li {
    font-size: 14px !important;
    color: #a0a0a0 !important;
    padding-left: 24px !important;
    position: relative !important;
}

.labs-specs-list li::before {
    content: "✓" !important;
    position: absolute !important;
    left: 0 !important;
    color: #FB613B !important;
    font-weight: bold !important;
}

/* --------------------------------------------------------------------------
   COMPONENT (Image + Texte alternés)
   -------------------------------------------------------------------------- */
.labs-component {
    display: grid !important;
    grid-template-columns: 40% 60% !important;
    gap: 40px !important;
    align-items: center !important;
    padding: 15px 20px !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
    background: #0a0a0a !important;
}

.labs-component:nth-child(even) {
    direction: rtl !important;
}

.labs-component:nth-child(even) > * {
    direction: ltr !important;
}

.labs-component-img img {
    width: 100% !important;
    border-radius: 12px !important;
    /* box-shadow removed */
}

.labs-component-text h2 {
    font-family: "Protest strike", "Manrope", sans-serif !important;
    font-size: clamp(24px, 4vw, 32px) !important;
    color: #ffffff !important;
    margin: 0 0 10px !important;
}

.labs-component-text .subtitle {
    font-size: 12px !important;
    letter-spacing: 2px !important;
    color: #FB613B !important;
    text-transform: uppercase !important;
    margin: 0 0 20px !important;
}

.labs-component-text p {
    font-size: 16px !important;
    line-height: 1.8 !important;
    color: #a0a0a0 !important;
    margin: 0 !important;
}

/* --------------------------------------------------------------------------
   TECH SPECS TABLE
   -------------------------------------------------------------------------- */
.labs-tech-specs {
    background: #141414 !important;
    padding: 60px 20px !important;
    margin: 40px 0 !important;
}

.labs-tech-specs h2 {
    font-family: "Protest strike", "Manrope", sans-serif !important;
    font-size: 28px !important;
    color: #ffffff !important;
    text-align: center !important;
    margin: 0 0 40px !important;
}

.labs-tech-table {
    max-width: 600px !important;
    margin: 0 auto !important;
    width: 100% !important;
    border-collapse: collapse !important;
}

.labs-tech-table tr {
    border-bottom: 1px solid #2a2a2a !important;
}

.labs-tech-table td {
    padding: 15px 10px !important;
    font-size: 14px !important;
}

.labs-tech-table td:first-child {
    color: #a0a0a0 !important;
    width: 40% !important;
}

.labs-tech-table td:last-child {
    color: #ffffff !important;
    font-weight: 600 !important;
}

/* --------------------------------------------------------------------------
   STORY
   -------------------------------------------------------------------------- */
.labs-story {
    text-align: center !important;
    padding: 60px 20px !important;
    max-width: 800px !important;
    margin: 0 auto !important;
    background: #0a0a0a !important;
}

.labs-story h2 {
    font-family: "Protest strike", "Manrope", sans-serif !important;
    font-size: 24px !important;
    color: #ffffff !important;
    margin: 0 0 20px !important;
}

.labs-story p {
    font-size: 16px !important;
    line-height: 1.8 !important;
    color: #a0a0a0 !important;
    margin: 0 !important;
}

/* ==========================================================================
   SECTION 3: PAGE COLLECTION EVOLVE LABS
   ========================================================================== */

/* --------------------------------------------------------------------------
   RESET & BASE - Section Evolve Labs
   -------------------------------------------------------------------------- */
.evolve-labs-section {
    background-color: #0a0a0a !important;
    color: #ffffff !important;
    font-family: "Manrope", sans-serif !important;
    line-height: 1.7 !important;
    padding: 0 !important;
    /* Full-width breakout */
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
    margin-right: calc(-50vw + 50%) !important;
}

.evolve-labs-section * {
    box-sizing: border-box !important;
}

.evolve-labs-section img {
    max-width: 100% !important;
    height: auto !important;
    border-radius: 4px !important;
}

/* --------------------------------------------------------------------------
   HERO SECTION (Page collection - background image)
   -------------------------------------------------------------------------- */
.evolve-labs-section .labs-hero {
    position: relative !important;
    min-height: 0 !important;
    height: auto !important;
    aspect-ratio: 1900/633 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: #1a1a1a url('/img/cms/evolve-labs-hero.jpg') no-repeat center center !important;
    background-size: 100% auto !important;
    background-position: center !important;
    max-width: none !important;
}

.labs-hero-content {
    display: none !important;
}

.labs-hero h1 span {
    background: linear-gradient(135deg, #ffffff 0%, #a0a0a0 100%) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
}

.labs-hero-tagline {
    font-size: clamp(16px, 2.5vw, 22px) !important;
    color: #a0a0a0 !important;
    font-weight: 400 !important;
    margin: 0 auto !important;
    max-width: 600px !important;
}

/* --------------------------------------------------------------------------
   ABOUT SECTION
   -------------------------------------------------------------------------- */
.labs-about {
    padding: 100px 20px !important;
    background: #141414 !important;
    position: relative !important;
}

.labs-about::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 1px !important;
    background: linear-gradient(90deg, transparent 0%, #2a2a2a 50%, transparent 100%) !important;
}

.labs-container {
    width: 100% !important;
    max-width: 1600px !important;
    margin: 0 auto !important;
    padding: 0 40px !important;
}

.labs-about-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 80px !important;
    align-items: center !important;
}

.labs-about-content h2 {
    font-family: "Protest strike", "Manrope", sans-serif !important;
    font-size: clamp(28px, 4vw, 40px) !important;
    font-weight: 500 !important;
    line-height: 1.1 !important;
    margin: 0 0 30px 0 !important;
    color: #ffffff !important;
}

.labs-about-content h2 .highlight {
    color: #FB613B !important;
}

.labs-about-content p {
    font-size: 17px !important;
    line-height: 1.8 !important;
    color: #a0a0a0 !important;
    margin: 0 0 25px 0 !important;
    text-align: left !important;
}

.labs-features {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 25px !important;
    margin-top: 40px !important;
}

.labs-feature {
    display: flex !important;
    align-items: flex-start !important;
    gap: 15px !important;
}

.labs-feature-icon {
    width: 64px !important;
    height: 64px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
}

.labs-feature-icon img {
    width: 56px !important;
    height: 56px !important;
}

.labs-feature-text h4 {
    font-family: "Manrope", sans-serif !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    margin: 0 0 5px 0 !important;
    color: #ffffff !important;
}

.labs-feature-text p {
    font-size: 13px !important;
    margin: 0 !important;
    color: #a0a0a0 !important;
}

.labs-about-visual {
    position: relative !important;
}

.labs-about-image {
    position: relative !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    box-shadow: 0 30px 60px rgba(0, 0, 0, 0.4) !important;
}

.labs-about-image::before {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    border-radius: 12px !important;
    pointer-events: none !important;
    z-index: 1 !important;
}

.labs-about-image img {
    width: 100% !important;
    display: block !important;
    border-radius: 12px !important;
}

/* --------------------------------------------------------------------------
   PRODUCTS SECTION
   -------------------------------------------------------------------------- */
.labs-products {
    padding: 100px 20px !important;
    background: #0a0a0a !important;
    position: relative !important;
}

.labs-products::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 1px !important;
    background: linear-gradient(90deg, transparent 0%, #2a2a2a 50%, transparent 100%) !important;
}

.labs-section-header {
    text-align: center !important;
    margin-bottom: 60px !important;
}

.labs-section-header h2 {
    font-family: "Protest strike", "Manrope", sans-serif !important;
    font-size: clamp(32px, 5vw, 48px) !important;
    font-weight: 500 !important;
    margin: 0 0 15px 0 !important;
    color: #ffffff !important;
}

.labs-section-header p {
    font-size: 17px !important;
    color: #a0a0a0 !important;
    margin: 0 auto !important;
    max-width: 600px !important;
}

.labs-products-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 30px !important;
    max-width: 1400px !important;
    margin: 0 auto !important;
}

/* --------------------------------------------------------------------------
   PRODUCT CARD
   -------------------------------------------------------------------------- */
.labs-product-card {
    background: #1a1a1a !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    border: 1px solid #2a2a2a !important;
    transition: all 0.3s ease !important;
    position: relative !important;
}

.labs-product-card:hover {
    transform: translateY(-8px) !important;
    border-color: rgba(251, 97, 59, 0.3) !important;
    box-shadow: 0 25px 50px rgba(0, 0, 0, 0.4), 0 0 0 1px rgba(251, 97, 59, 0.1) !important;
}

.labs-product-card--blue:hover {
    border-color: rgba(59, 130, 246, 0.4) !important;
    box-shadow: 0 25px 50px rgba(0, 0, 0, 0.4), 0 0 40px rgba(59, 130, 246, 0.1) !important;
}

.labs-product-card--purple:hover {
    border-color: rgba(139, 92, 246, 0.4) !important;
    box-shadow: 0 25px 50px rgba(0, 0, 0, 0.4), 0 0 40px rgba(139, 92, 246, 0.1) !important;
}

.labs-product-card--red:hover {
    border-color: rgba(155, 27, 48, 0.4) !important;
    box-shadow: 0 25px 50px rgba(0, 0, 0, 0.4), 0 0 40px rgba(155, 27, 48, 0.1) !important;
}

.labs-product-card--gold:hover {
    border-color: rgba(212, 175, 55, 0.4) !important;
    box-shadow: 0 25px 50px rgba(0, 0, 0, 0.4), 0 0 40px rgba(212, 175, 55, 0.1) !important;
}

.labs-product-image {
    position: relative !important;
    aspect-ratio: 1/1 !important;
    overflow: hidden !important;
    background: transparent !important;
}

.labs-product-image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    transition: transform 0.5s ease !important;
    border-radius: 0 !important;
}

.labs-product-card:hover .labs-product-image img {
    transform: scale(1.05) !important;
}

.labs-product-badge {
    position: absolute !important;
    top: 15px !important;
    left: 15px !important;
    padding: 6px 14px !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
    border-radius: 4px !important;
    z-index: 2 !important;
}

.labs-product-badge--limited {
    background: linear-gradient(135deg, #FB613B 0%, #C34B2E 100%) !important;
    color: #ffffff !important;
}

.labs-product-badge--blue {
    background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%) !important;
    color: #000 !important;
}

.labs-product-badge--purple {
    background: linear-gradient(135deg, #8b5cf6 0%, #7c3aed 100%) !important;
    color: #000 !important;
}

.labs-product-badge--red {
    background: #C41E3A !important;
    color: #000000 !important;
    font-weight: 700 !important;
}

.labs-product-badge--gold {
    background: linear-gradient(135deg, #d4af37 0%, #b8960c 100%) !important;
    color: #1a1a1a !important;
}

.labs-product-content {
    padding: 25px !important;
}

.labs-product-title {
    font-family: "Manrope", sans-serif !important;
    font-size: 20px !important;
    font-weight: 700 !important;
    margin: 0 0 10px 0 !important;
    color: #ffffff !important;
    line-height: 1.3 !important;
}

.labs-product-subtitle {
    font-size: 13px !important;
    color: #a0a0a0 !important;
    margin: 0 0 20px 0 !important;
    line-height: 1.6 !important;
}

.labs-product-price {
    display: flex !important;
    align-items: baseline !important;
    gap: 8px !important;
    margin-bottom: 20px !important;
}

.labs-product-price-current {
    font-size: 26px !important;
    font-weight: 700 !important;
    color: #FB613B !important;
    font-family: "Manrope", sans-serif !important;
}

.labs-product-card--blue .labs-product-price-current {
    color: #3b82f6 !important;
}

.labs-product-card--purple .labs-product-price-current {
    color: #8b5cf6 !important;
}

.labs-product-card--red .labs-product-price-current {
    color: #C41E3A !important;
}

.labs-product-card--gold .labs-product-price-current {
    color: #d4af37 !important;
}

/* Titres colorés par édition */
.labs-product-card--blue .labs-product-title a { color: #3b82f6 !important; }
.labs-product-card--purple .labs-product-title a { color: #8b5cf6 !important; }
.labs-product-card--gold .labs-product-title a { color: #d4af37 !important; }
.labs-product-card--red .labs-product-title a { color: #C41E3A !important; }

.labs-product-price-from {
    font-size: 12px !important;
    color: #a0a0a0 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

.labs-product-cta {
    display: block !important;
    width: 100% !important;
    padding: 14px 24px !important;
    background: transparent !important;
    color: #ffffff !important;
    font-family: "Manrope", sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-align: center !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    border: 2px solid #2a2a2a !important;
    border-radius: 4px !important;
    transition: all 0.3s ease !important;
    cursor: pointer !important;
}

.labs-product-cta:hover {
    background: #FB613B !important;
    border-color: #FB613B !important;
    color: #ffffff !important;
    text-decoration: none !important;
}

.labs-product-card--blue .labs-product-cta:hover {
    background: #3b82f6 !important;
    border-color: #3b82f6 !important;
}

.labs-product-card--purple .labs-product-cta:hover {
    background: #8b5cf6 !important;
    border-color: #8b5cf6 !important;
}

.labs-product-card--gold .labs-product-cta:hover {
    background: #d4af37 !important;
    border-color: #d4af37 !important;
    color: #1a1a1a !important;
}
.labs-product-card--red .labs-product-cta:hover {
    background: #C41E3A !important;
    border-color: #C41E3A !important;
}

/* --------------------------------------------------------------------------
   ANIMATIONS
   -------------------------------------------------------------------------- */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeInDown {
    from {
        opacity: 0;
        transform: translateY(-20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* --------------------------------------------------------------------------
   RESPONSIVE
   -------------------------------------------------------------------------- */
@media (max-width: 1024px) {
    .ev-services__layout {
        flex-direction: column;
    }
    
    .ev-services__image {
        flex: none;
        width: 100%;
    }

    .labs-about-grid {
        grid-template-columns: 1fr !important;
        gap: 50px !important;
    }
    
    .labs-about-visual {
        /* order: -1 !important; */
    }
    
    .labs-products-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 25px !important;
    }
    
    .labs-component {
        grid-template-columns: 1fr !important;
        gap: 30px !important;
    }
    
    .labs-component:nth-child(even) {
        direction: ltr !important;
    }
    
    .labs-specs-list {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 768px) {
    .evolve-labs-section .labs-hero {
        min-height: auto !important;
        height: 400px !important;
        padding: 60px 15px !important;
    }
    
    .labs-about {
        padding: 60px 15px !important;
    }
    
    .labs-products {
        padding: 60px 15px !important;
    }
    
    .labs-features {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
    }
    
    .labs-products-grid {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
    }
    
    .labs-product-content {
        padding: 20px !important;
    }
    
    .labs-product-title {
        font-size: 20px !important;
    }
    
    .labs-product-price-current {
        font-size: 22px !important;
    }
    
    .evolve-labs-section {
        margin: 0 -5px !important;
        width: calc(100% + 10px) !important;
    }
    
    .labs-specs-box {
        padding: 25px !important;
    }
    
    .labs-component {
        padding: 40px 15px !important;
    }
    
    .labs-header {
        padding: 30px 15px 15px !important;
    }
    
    .labs-hero {
        padding: 0 15px !important;
    }
}

@media (max-width: 480px) {
    .labs-badge {
        font-size: 10px !important;
        padding: 6px 16px !important;
        letter-spacing: 2px !important;
    }
    
    .labs-section-header {
        margin-bottom: 40px !important;
    }
    
    .labs-about-grid {
        gap: 30px !important;
    }
}

/* --------------------------------------------------------------------------
   FAQ CARDS - EVOLVE LABS
   -------------------------------------------------------------------------- */
.labs-faq {
    padding: 40px 20px !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
    background: #0a0a0a !important;
}

.labs-faq h2 {
    font-family: "Protest strike", "Manrope", sans-serif !important;
    font-size: 28px !important;
    color: #ffffff !important;
    text-align: center !important;
    margin-bottom: 30px !important;
}

.labs-faq-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 20px !important;
}

.labs-faq-card {
    background: #141414 !important;
    border-radius: 12px !important;
    padding: 25px !important;
    border-left: 3px solid #FB613B !important;
}

.labs-faq-card h3 {
    font-family: "Manrope", sans-serif !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    margin: 0 0 12px !important;
}

.labs-faq-card p {
    font-size: 14px !important;
    line-height: 1.7 !important;
    color: #a0a0a0 !important;
    margin: 0 !important;
}

/* Blue Edition override */
.blue-edition .labs-faq-card {
    border-left-color: #2E86DE !important;
}

/* Gold Edition override */
.gold-edition .labs-faq-card {
    border-left-color: #D4AF37 !important;
}

/* Purple Edition override */
.purple-edition .labs-faq-card {
    border-left-color: #9B59B6 !important;
}

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

/* ==========================================================================
   SECTION 4: PAGE D'ACCUEIL EVOLVE - Sans Creative Elements
   ========================================================================== */

/* --------------------------------------------------------------------------
   RESET CONTENEUR PAGE HOME
   -------------------------------------------------------------------------- */
.evolve-home {
    overflow-x: hidden;
    background: #000000;
    color: #ffffff !important;
    padding: 0;
    margin-top: -20px;
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
    width: 100vw;
}

.evolve-home * {
    box-sizing: border-box;
}

/* --------------------------------------------------------------------------
   HERO SECTION (Vidéo de fond)
   -------------------------------------------------------------------------- */
.ev-hero {
    position: relative;
    width: 100%;
    min-height: 75vh;
    display: flex;
    align-items: center;
    overflow: hidden;
}

.ev-hero__video {
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 100%;
    transform: translate(-50%, -50%);
    object-fit: cover;
    z-index: 0;
}

.ev-hero__overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.3);
    z-index: 1;
}

.ev-hero__tear {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 150px;
    background: url('/img/cms/gamme%202024/fusion/effet-de%CC%81chirer.webp') repeat-x bottom center;
    background-size: cover;
    z-index: 2;
}
.ev-hero__content {
        width: 100%;
    position: relative;
    z-index: 3;
    padding: 0 5em;
}

.ev-hero__title {
    font-family: "Protest strike", "Manrope", sans-serif;
    font-size: 5em;
    font-weight: 400;
    color: #ffffff !important;
    line-height: 1.1;
    margin: 0 0 30px 0;
    text-shadow: 0 4px 20px rgba(0, 0, 0, 0.5);
}

.ev-btn {
    display: inline-block;
    padding: 12px 28px;
    font-family: "Manrope", sans-serif;
    font-size: 16px;
    font-weight: 700;
    text-transform: uppercase;
    text-decoration: none;
    border-radius: 4px;
    transition: var(--transition-base);
}

.ev-btn--primary {
    background: var(--evolve-orange);
    color: #ffffff !important;
    border: 2px solid var(--evolve-orange);
}

.ev-btn--primary:hover {
    transform: translateY(-3px) scale(1.02);
    box-shadow: 0 8px 25px rgba(251, 97, 59, 0.4);
    background: var(--evolve-orange-hover);
    border-color: var(--evolve-orange-hover);
    color: #ffffff !important;
    text-decoration: none;
}

/* --------------------------------------------------------------------------
   INTRO SECTION
   -------------------------------------------------------------------------- */
.ev-intro {
    background: #000000;
    text-align: center;
    padding: 80px 20px 40px;
}

h1.ev-intro__title, .evolve-home h1 {
    font-family: "Protest strike", "Manrope", sans-serif;
    font-size: 4em;
    font-weight: 400;
    color: #ffffff !important;
    text-transform: uppercase;
    letter-spacing: 2.4px;
    margin: 0 0 20px 0;
    text-shadow: none;
}

.ev-intro__subtitle {
    font-family: "Manrope", sans-serif;
    font-size: 2.3em;
    font-weight: 400;
    color: var(--evolve-orange);
    text-transform: uppercase;
    margin: 0 0 20px 0;
}

.ev-intro__text {
    font-size: 16px;
    line-height: 1.8;
    color: #ffffff !important;
    max-width: 900px;
    margin: 0 auto;
    padding: 0 4%;
}

.ev-intro__text strong {
    color: #ffffff !important;
}

.ev-intro__text em {
    font-style: italic;
}

/* --------------------------------------------------------------------------
   GRILLE PRODUITS
   -------------------------------------------------------------------------- */
.ev-products {
    background: #000000;
    padding: 40px 20px 60px;
    max-width: 1400px;
    margin: 0 auto;
}

.ev-products__grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}

.ev-card {
    position: relative;
    display: block;
    border-radius: var(--radius-lg);
    overflow: hidden;
    background: var(--evolve-dark-card);
    text-decoration: none;
    transition: var(--transition-base);
}

.ev-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.4);
    text-decoration: none;
}

.ev-card img {
    width: 100%;
    height: auto;
    aspect-ratio: 4/3;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.ev-card:hover img {
    transform: scale(1.05);
}

.ev-card__content {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 30px;
    background: linear-gradient(to top, rgba(0,0,0,0.9) 0%, rgba(0,0,0,0.6) 60%, transparent 100%);
}

.ev-card__title {
    text-shadow: 0 2px 8px rgba(0,0,0,0.5), 0 4px 20px rgba(0,0,0,0.3);
    font-family: "Protest strike", "Manrope", sans-serif;
    font-size: 32px;
    font-weight: 400;
    color: #ffffff !important;
    margin: 0 0 10px 0;
}

.ev-card__desc {
    max-width: 80%;
    text-shadow: 0 2px 6px rgba(0,0,0,0.4);
    font-size: 16px;
    line-height: 1.5;
    color: #ffffff;
    margin: 0;
}

.ev-card__desc strong {
    color: var(--evolve-orange);
    display: block;
    margin-bottom: 5px;
}

.ev-card__btn {
    position: absolute;
    bottom: 30px;
    right: 30px;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--evolve-orange);
    color: #ffffff !important;
    font-size: 24px;
    font-weight: 300;
    border-radius: 50%;
    transition: var(--transition-base);
}

.ev-card:hover .ev-card__btn {
    background: #FF8C6B;
    color: #ffffff !important;
}

/* Card large (Fusion - première) */
.ev-card--large {
    /* taille standard */
    
}

.ev-card--large img {
    aspect-ratio: 4/3;
    
}

/* Card wide (BMX - dernière) */
.ev-card--wide {
    grid-column: span 2;
}

.ev-card--wide img {
    aspect-ratio: 21/9;
}

/* --------------------------------------------------------------------------
   SERVICES SECTION
   -------------------------------------------------------------------------- */
.ev-services {
    background: #ffffff;
    padding: 60px 20px;
    width: 100%;
}

.ev-services__header {
    text-align: center;
    margin-bottom: 40px;
    max-width: 1400px;
    margin-left: auto;
    margin-right: auto;
}

.ev-services__title {
    font-family: "Protest strike", "Manrope", sans-serif;
    font-size: 2.5em;
    font-weight: 400;
    color: var(--evolve-orange) !important;
    margin: 0 0 10px 0;
}

.ev-services__subtitle {
    font-family: "Manrope", sans-serif;
    font-size: 1.3em;
    font-weight: 400;
    color: #333333;
    margin: 0 0 20px 0;
}

.ev-services__text {
    font-size: 15px;
    line-height: 1.8;
    color: #555555;
    max-width: 900px;
    margin: 0 auto;
}

.ev-services__layout {
    display: flex;
    gap: 40px;
    max-width: 1400px;
    margin: 0 auto;
    align-items: stretch;
}

.ev-services__image {
    flex: 0 0 45%;
}

.ev-services__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: var(--radius-lg);
}

.ev-services__grid {
    flex: 1;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}

.ev-service {
    background: #f5f5f5;
    border-radius: var(--radius-lg);
    padding: 25px;
    text-align: center;
    transition: var(--transition-base);
    box-shadow: none;
}

.ev-service:hover {
    transform: translateY(-3px);
    box-shadow: 0 5px 20px rgba(0,0,0,0.1);
}

.ev-service img {
    width: 50px;
    height: 50px;
    margin-bottom: 15px;
}

.ev-service h4 {
    font-size: 20px !important;
    font-family: "Manrope", sans-serif;
    font-size: 16px;
    font-weight: 700;
    color: #000000 !important;
    text-transform: uppercase;
    margin: 0 0 10px 0;
}

.ev-service p {
    font-size: 13px;
    line-height: 1.6;
    color: #555555;
    margin: 0 0 10px 0;
}
.ev-link {
    display: inline-block;
    font-size: 12px;
    color: var(--evolve-orange);
    text-decoration: underline;
    transition: var(--transition-base);
}

.ev-services__cta {
        margin-top: 15px;
    text-align: center;
    margin-top: 40px;
}

.ev-link:hover {
    color: var(--evolve-orange-hover) !important;
}

/* --------------------------------------------------------------------------
   RECOMMANDATIONS SECTION
   -------------------------------------------------------------------------- */
.ev-recommend {
    background: #ffffff;
    padding: 60px 20px;
}

.ev-recommend__title {
    font-family: "Protest strike", "Manrope", sans-serif;
    font-size: 2em;
    font-weight: 400;
    color: var(--evolve-orange) !important;
    text-align: center;
    margin: 0 0 40px 0;
}

.ev-recommend__widget {
    max-width: 100%;
    margin: 0 0 40px 0;
}

.ev-recommend__widget iframe {
    border: none;
    width: 100%;
}

.ev-recommend__grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
    max-width: 1200px;
    margin: 0 auto;
}

.ev-recommend__item {
    background: #f5f5f5;
    border-radius: var(--radius-lg);
    padding: 25px;
    text-align: center;
    transition: var(--transition-base);
    box-shadow: none;
}

.ev-recommend__item:hover {
    transform: translateY(-3px);
    box-shadow: 0 5px 20px rgba(0,0,0,0.1);
}

.ev-recommend__item img {
    width: 50px;
    height: 50px;
    margin-bottom: 15px;
}

.ev-recommend__item h4 {
    font-size: 20px !important;
    font-family: "Manrope", sans-serif;
    font-size: 15px;
    font-weight: 700;
    color: #000000 !important;
    margin: 0 0 10px 0;
}

.ev-recommend__item p {
    font-size: 13px;
    line-height: 1.6;
    color: #555555;
    margin: 0;
}

/* --------------------------------------------------------------------------
   COMMUNAUTÉ / INSTAGRAM
   -------------------------------------------------------------------------- */
.ev-community {
    background: #000000;
    padding: 60px 0;
    text-align: center;
    overflow: visible;
    position: relative;
}
}

.ev-community__title {
    font-family: "Protest strike", "Manrope", sans-serif;
    font-size: 2.5em;
    font-weight: 400;
    color: var(--evolve-orange) !important;
    margin: 0 0 10px 0;
}

.ev-community__subtitle {
    font-size: 15px;
    color: #ffffff;
    margin: 0 0 30px 0;
}

.ev-community__gallery {
    display: flex;
    gap: 10px;
    padding-left: 80px;
    padding-right: 80px;
    margin-bottom: 0;
    flex: 1;
    min-width: 0;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 0;
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.ev-community__gallery::-webkit-scrollbar {
    display: none;
}

.ev-community__gallery::-webkit-scrollbar-track {
    background: rgba(255,255,255,0.1);
    border-radius: 3px;
}

.ev-community__gallery::-webkit-scrollbar-thumb {
    background: var(--evolve-orange);
    border-radius: 3px;
}

.ev-community__gallery a {
    flex: 0 0 350px;
    display: block;
    overflow: hidden;
    border-radius: var(--radius-lg);
    scroll-snap-align: center;
    scroll-margin: 0 100px;
    transition: transform 0.3s ease, opacity 0.3s ease;
}

.ev-community__gallery img {
    width: 100%;
    aspect-ratio: 1/1;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.ev-community__gallery a:hover img {
    transform: none;
}

.ev-community__social {
    display: flex;
    justify-content: center;
    gap: 20px;
}

.ev-community__social a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    background: var(--evolve-dark-card);
    border-radius: 50%;
    color: #ffffff !important;
    transition: var(--transition-base);
}

.ev-community__social a:hover {
    background: var(--evolve-orange);
    transform: translateY(-3px);
}

/* --------------------------------------------------------------------------
   FAQ CARDS
   -------------------------------------------------------------------------- */
.ev-faq {
    background: #000000;
    padding: 60px 20px 60px 20px;
    margin: 0;
}

.ev-faq__title {
    font-family: "Protest strike", "Manrope", sans-serif;
    font-size: 1.8em;
    font-weight: 400;
    color: var(--evolve-orange) !important;
    text-align: center;
    margin: 0 0 40px 0;
}

.ev-faq__grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}

.ev-faq__card {
    background: var(--evolve-dark-secondary);
    border-radius: var(--radius-lg);
    padding: 25px;
    border-left: 3px solid var(--evolve-orange);
}

.ev-faq__card h3 {
    font-family: "Manrope", sans-serif;
    font-size: 16px;
    font-weight: 600;
    color: #ffffff !important;
    margin: 0 0 12px 0;
}

.ev-faq__card p {
    font-size: 16px;
    line-height: 1.7;
    color: #ffffff;
    margin: 0;
}

.ev-faq__card strong {
    color: #ffffff !important;
}

/* --------------------------------------------------------------------------
   NEWSLETTER
   -------------------------------------------------------------------------- */
.ev-newsletter {
    background: var(--evolve-dark-secondary);
    padding: 40px 20px;
    text-align: center;
}

.ev-newsletter h3 {
    font-family: "Manrope", sans-serif;
    font-size: 18px;
    font-weight: 600;
    color: var(--evolve-orange) !important;
    margin: 0 0 20px 0;
}

/* --------------------------------------------------------------------------
   RESPONSIVE
   -------------------------------------------------------------------------- */
@media (max-width: 1024px) {
    .ev-services__layout {
        flex-direction: column;
    }
    
    .ev-services__image {
        flex: none;
        width: 100%;
    }

    .ev-services__grid {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .ev-recommend__grid {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .ev-community__gallery a {
        flex: 0 0 350px;
    }
}

@media (max-width: 768px) {
    .ev-hero {
        min-height: 70vh;
    }
    
    .ev-hero__content {
        width: 100%;
        padding: 0 20px;
        text-align: center;
    }
    
    .ev-hero__title {
        font-size: 3.4em;
    }
    
    h1.ev-intro__title, .evolve-home h1 {
        font-size: 1.7em;
    }
    
    .ev-intro__subtitle {
        font-size: 1.4em;
    }
    
    .ev-products__grid {
        grid-template-columns: 1fr;
    }
    
    .ev-card--large {
    /* taille standard */
        grid-row: span 1;
    }
    
    .ev-card--large img {
        aspect-ratio: 4/3;
    }
    
    .ev-card--wide {
        grid-column: span 1;
    }
    
    .ev-card--wide img {
        aspect-ratio: 16/9;
    }
    
    .ev-services__grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    
    .ev-recommend__grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    
    .ev-community__gallery a {
        flex: 0 0 350px;
    }
    
    .ev-faq__grid {
        grid-template-columns: 1fr;
    }
    
    .evolve-home {
        margin-top: -20px;
        margin-left: calc(-50vw + 50%);
        margin-right: calc(-50vw + 50%);
        width: 100vw;
    }
}

@media (max-width: 480px) {
    .ev-hero__title {
        font-size: 2.5em;
    }
    
    .ev-card__title {
    text-shadow: 0 2px 8px rgba(0,0,0,0.5), 0 4px 20px rgba(0,0,0,0.3);
        font-size: 22px;
    }
    
    .ev-card__content {
        padding: 20px;
    }
    
    .ev-card__btn {
        bottom: 20px;
        right: 20px;
        width: 35px;
        height: 35px;
        font-size: 20px;
    }
    
    .ev-community__gallery a {
        flex: 0 0 200px;
    }
}

/* Effet déchirure réutilisable */
.ev-tear {
    position: relative;
    width: 100%;
    height: 80px;
    background-image: url('/img/cms/gamme%202024/fusion/effet-de%CC%81chirer.webp');
    background-repeat: repeat-x;
    background-position: top center;
    background-size: auto 100%;
    z-index: 10;
    position: relative;
}

.ev-tear--white {
    
    filter: invert(1);
    margin-top: -1px;
    margin-bottom: -1px;
}

.ev-tear--black {
    filter: invert(1);
    transform: scaleY(-1);
    margin-top: -1px;
    margin-bottom: -1px;
}

/* Carousel wrapper */
.ev-carousel {
    position: relative;
    display: block;
    width: 100%;
    overflow: visible;
    margin-bottom: 30px;
}

.ev-carousel__btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: var(--evolve-orange);
    border: none;
    color: #ffffff;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.3s ease;
    z-index: 100;
}

.ev-carousel__btn--prev {
    left: 20px;
}

.ev-carousel__btn--next {
    right: 20px;
}

.ev-carousel__btn:hover {
    background: var(--evolve-orange-hover);
    transform: translateY(-50%) scale(1.1);
}

.ev-carousel__btn svg {
    width: 24px;
    height: 24px;
}

/* Supprimer le gap avant le footer */
.page-home #wrapper {
    padding-bottom: 0;
    margin-bottom: 0;
}

.page-home #content-wrapper {
    padding-bottom: 0;
    margin-bottom: 0;
}

.page-home #main {
    padding-bottom: 0;
    margin-bottom: 0;
}

.page-home #footer {
    margin-top: 15px;
}

.evolve-home {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

.section.evolve-home {
    margin-bottom: 0 !important;
}

/* Forcer la suppression du gap blanc */
.page-home #content {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}

.page-home .page-content {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}

.page-home .row {
    margin-bottom: 0 !important;
}

.page-home .col-xs-12 {
    padding-bottom: 0 !important;
}

.evolve-home + * {}

body.page-home #footer {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* === FIX COMMUNITY TITLE === */
.evolve-home .ev-community__title,
section.ev-community .ev-community__title,
.ev-community h2.ev-community__title {
    font-family: "Protest strike", "Manrope", sans-serif !important;
    font-size: 2.5em !important;
    font-weight: 400 !important;
    color: #FB613B !important;
    margin: 0 0 10px 0 !important;
}

/* === FIX GAP BLANC AVANT FOOTER === */
#content-wrapper,
#wrapper,
#main,
#content,
.page-content,
.row,
.col-xs-12 {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}

#footer {
    margin-top: 0 !important;
}

/* Supprimer le padding du wrapper pour la page home */
body.page-home #wrapper {
    padding-bottom: 0 !important;
}

body.page-home .evolve-home {
    margin-bottom: 0 !important;
}

/* Forcer la FAQ a toucher le footer */
.ev-faq {
    margin-bottom: 0 !important;
}

/* === IMPOSER FOND NOIR PAGE HOME === */
body.page-home #wrapper {
    background: #000000 !important;
}

body.page-home #content-wrapper {
    background: #000000 !important;
}

body.page-home #main {
    background: #000000 !important;
}

body.page-home #content {
    background: #000000 !important;
}

/* === MASQUER DE PAGE-FOOTER SUP PARFAUIL === */
body.page-home .page-footer {
    display: none !important;
}

body.page-home footer.page-footer {
    display: none !important;
    height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* === FIX CONTENEURS PAGE HOME === */
body.page-home #main {
    padding: 0 !important;
    margin: 0 !important;
}

body.page-home #content-wrapper {
    padding: 0 !important;
    margin: 0 !important;
}

body.page-home .container {
    padding: 0 !important;
    margin: 0 auto !important;
}

body.page-home .row {
    margin: 0 !important;
}

body.page-home #content.page-home {
    padding: 0 !important;
    margin: 0 !important;
}

body.page-home section#main {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}

/* === FIX WRAPPER PADDING TOP === */
body.page-home #wrapper {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* === FIX FOOTER PADDING === */
body.page-home #footer {
    padding-top: 0 !important;
    margin-top: 0 !important;
}

body.page-home #footer.js-footer {
    padding-top: 0 !important;
    margin-top: 0 !important;
}

body.page-home footer#footer {
    padding-top: 0 !important;
    margin-top: 0 !important;
}

body.page-home .footer-container {
    padding-top: 0 !important;
    margin-top: 0 !important;
}
/* === FIX FOOTER ELEMENTOR SHAPE DIVIDER === */
body.page-home #footer .elementor-shape-top {
    display: none !important;
}

body.page-home #footer .elementor-shape {
    display: none !important;
}

body.page-home #footer .elementor-top-section:first-child {
    padding-top: 0 !important;
    margin-top: 0 !important;
}
/* === FIX ESPACE BLANC - FORCE === */
body.page-home {
    background: #000000 !important;
}

body.page-home section#content.evolve-home {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

body.page-home section#wrapper {
    background: #000000 !important;
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}

body.page-home .breadcrumb {
    display: none !important;
}

body.page-home .notifications-container {
    background: #000000 !important;
}

body.page-home div.container {
    background: #000000 !important;
}

body.page-home div.row {
    background: #000000 !important;
}

body.page-home div.col-xs-12 {
    background: #000000 !important;
}

body.page-home #notifications {
    background: #000000 !important;
}
/* === FIX FOOTER ELEMENTOR - SUPPRIMER ESPACE === */
body.page-home #footer .elementor-element-31f498c3 {
    padding-top: 0 !important;
    margin-top: 0 !important;
}

body.page-home #footer .elementor-section-wrap {
    padding-top: 0 !important;
    margin-top: 0 !important;
}

body.page-home #footer .elementor-9170101 {
    padding-top: 0 !important;
    margin-top: 0 !important;
}

/* Masquer le shape divider (courbe blanche) */
body.page-home #footer .elementor-shape-fill {
    fill: #000000 !important;
}

body.page-home #footer svg path.elementor-shape-fill {
    fill: #000000 !important;
}
/* === MASQUER COMPLETEMENT LE SHAPE DIVIDER === */
body.page-home #footer .elementor-shape-top {
    display: none !important;
    height: 0 !important;
    overflow: hidden !important;
}

body.page-home #footer .elementor-shape {
    display: none !important;
    height: 0 !important;
}

/* Supprimer le padding-top de la section footer */
body.page-home #footer .elementor-top-section {
    padding-top: 0 !important;
    margin-top: 0 !important;
}

body.page-home #footer .elementor-section {
    padding-top: 0 !important;
    margin-top: 0 !important;
}
/* === FIX ESPACE BLANC - CIBLER TOUS LES ELEMENTS === */
body.page-home section#wrapper {
    background: #000000 !important;
    padding: 0 !important;
    margin: 0 !important;
}

body.page-home section#wrapper > * {
    background: #000000 !important;
}

body.page-home section#wrapper > .container {
    background: #000000 !important;
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}

/* Forcer le footer principal */
body.page-home footer#footer {
    background: #1a1a1a !important;
    padding-top: 0 !important;
    margin-top: 0 !important;
    border-top: none !important;
}

/* Supprimer le fond blanc du footer */
body.page-home #footer {
    background: #1a1a1a !important;
}

/* === CAROUSEL MOBILE === */
@media (max-width: 768px) {
    /* Cacher les fleches de navigation */
    .ev-carousel__btn {
        display: none !important;
    }
    
    /* Ajuster la galerie pour mobile */
    .ev-community__gallery {
        padding-left: 20px;
        padding-right: 20px;
        gap: 5px;
    }
    
    .ev-community__gallery a {
        flex: 0 0 280px;
    }
}

@media (max-width: 480px) {
    .ev-community__gallery a {
        flex: 0 0 240px;
    }
}

/* === ESPACEMENT SECTIONS MOBILE === */
@media (max-width: 768px) {
    .ev-intro {
        padding: 50px 15px 25px;
    }
    
    .ev-products {
        padding: 25px 15px 35px;
    }
    
    .ev-services {
        padding: 35px 15px;
    }
    
    .ev-recommend {
        padding: 35px 15px;
    }
    
    .ev-community {
        padding: 35px 0;
    }
    
    .ev-faq {
        padding: 35px 15px;
    }
}

/* === GAPS ET MARGES MOBILE === */
@media (max-width: 768px) {
    .ev-intro__title {
        margin-bottom: 15px !important;
    }
    
    .ev-products__grid {
        gap: 15px;
    }
    
    .ev-services__header {
        margin-bottom: 25px;
    }
    
    .ev-services__grid {
        gap: 15px;
    }
    
    .ev-recommend__grid {
        gap: 15px;
    }
    
    .ev-community__title,
    .ev-community__subtitle {
        margin-bottom: 15px;
    }
    
    .ev-faq__grid {
        gap: 15px;
    }
}

/* === CORRECTIONS ESPACEMENTS SPECIFIQUES MOBILE === */
@media (max-width: 768px) {
    /* Sous le projet BMX */
    .ev-products {
        padding-bottom: 0;
    }
    
    /* Sous le bouton Demande SAV */
    .ev-services__cta {
        margin-top: 15px;
    }
    
    /* Sous le widget Avis Garantis */
    .ev-recommend__widget {
        margin-bottom: 0;
    }
    
    /* Au dessus du titre Communauté */
    .ev-community {
        padding-top: 10px;
    }
    
    
    /* Effet dechirure plus petit sur mobile */
    .ev-tear {
        height: 40px;
    }
    /* Titre recommend */
    .ev-recommend__title {
        margin-bottom: 0;
    }
}

/* === AMELIORATION LISIBILITE (cible 40 ans) === */

/* Cards produits - descriptions */
.ev-card__desc {
    font-size: 15px;
    line-height: 1.6;
}

/* Intro texte */
.ev-intro__text {
    font-size: 17px !important;
    line-height: 1.7 !important;
}

/* Services section */
.ev-services__text {
    font-size: 16px !important;
    line-height: 1.7 !important;
}

.ev-service p {
    font-size: 16px !important;
    line-height: 1.6 !important;
}

.ev-service h4 {
    font-size: 18px !important;
}

/* Recommend items */
.ev-recommend__item p {
    font-size: 16px !important;
    line-height: 1.6 !important;
}

.ev-recommend__item h4 {
    font-size: 18px !important;
}

/* FAQ */
.ev-faq__card p {
    font-size: 16px !important;
    line-height: 1.7 !important;
}

.ev-faq__card h3 {
    font-size: 20px !important;
}

/* Community subtitle */
.ev-community__subtitle {
    font-size: 16px !important;
}

/* Links */
.ev-link {
    font-size: 16px !important;
}

/* Mobile - encore plus lisible */
@media (max-width: 768px) {
    .ev-card__desc {
        font-size: 16px;
        line-height: 1.5;
    }
    
    .ev-intro__text {
        font-size: 16px !important;
    }
    
    .ev-service p,
    .ev-recommend__item p,
    .ev-faq__card p {
        font-size: 16px !important;
    }
}

/* ==========================================================================
   FIX BREADCRUMB PAGE EVOLVE LABS
   ========================================================================== */
body.page-cms-20 #wrapper {
    background: #0a0a0a !important;
}

body.page-cms-20 .breadcrumb {
    background: #0a0a0a !important;
    padding: 15px 20px !important;
}

body.page-cms-20 .breadcrumb li,
body.page-cms-20 .breadcrumb a,
body.page-cms-20 .breadcrumb span {
    color: #a0a0a0 !important;
}

body.page-cms-20 .breadcrumb a:hover {
    color: #FB613B !important;
}

body.page-cms-20 #content-wrapper {
    background: #0a0a0a !important;
}

body.page-cms-20 .page-content {
    background: #0a0a0a !important;
}

/* ==========================================================================
   FIX ESPACE BLANC AVANT FOOTER - PAGE EVOLVE LABS
   ========================================================================== */
body.page-cms-20 #wrapper {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}

body.page-cms-20 #content-wrapper {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}

body.page-cms-20 #main {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}

body.page-cms-20 #content {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}

body.page-cms-20 .page-content {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}

body.page-cms-20 .page-cms {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}

body.page-cms-20 #footer {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

body.page-cms-20 .page-footer {
    display: none !important;
}

/* ==========================================================================
   FIX ESPACE BLANC AVANT FOOTER - PAGE EVOLVE LABS (V2)
   ========================================================================== */

/* Section main */
body.page-cms-20 section#main {
    padding: 0 !important;
    margin: 0 !important;
    background: #0a0a0a !important;
}

/* Page footer interne (pas le vrai footer) */
body.page-cms-20 footer.page-footer,
body.page-cms-20 .page-footer {
    display: none !important;
    height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    visibility: hidden !important;
}

/* Container row col */
body.page-cms-20 .container,
body.page-cms-20 .row,
body.page-cms-20 [class*="col-"] {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
    background: #0a0a0a !important;
}

/* Tout le wrapper */
body.page-cms-20 #wrapper {
    background: #0a0a0a !important;
    padding: 0 !important;
}

/* La section evolve-labs elle-même */
.evolve-labs-section {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

.labs-products {
    margin-bottom: 0 !important;
    padding-bottom: 80px !important;
}

/* Footer Elementor */
body.page-cms-20 #footer {
    margin-top: 0 !important;
}

body.page-cms-20 #footer .elementor-shape-top,
body.page-cms-20 #footer .elementor-shape {
    display: none !important;
}

/* ==========================================================================
   FIX #content-wrapper - PAGE EVOLVE LABS
   ========================================================================== */
body.page-cms-20 #content-wrapper {
    background: #0a0a0a !important;
    padding: 0 !important;
    margin: 0 !important;
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}

body.page-cms-20 #content-wrapper::after {
    display: none !important;
}

/* ==========================================================================
   FIX ALIGNEMENT TEXTE CARDS - PAGE EVOLVE LABS
   ========================================================================== */
.labs-product-content {
    text-align: left !important;
}

.labs-product-title {
    text-align: left !important;
}

.labs-product-subtitle {
    text-align: left !important;
}

.labs-product-price {
    text-align: left !important;
}

/* ==========================================================================
   SECTION 5: PAGES PRODUIT SANS CREATIVE ELEMENTS
   Styles pour fiches produit en HTML/CSS natif
   ========================================================================== */

/* --------------------------------------------------------------------------
   CONTAINER PRINCIPAL - FULL WIDTH
   -------------------------------------------------------------------------- */
.ev-product-page {
    background: #0a0a0a !important;
    color: #ffffff !important;
    font-family: "Manrope", sans-serif !important;
    line-height: 1.7 !important;
    padding: 0 !important;
    /* Full-width breakout */
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
    margin-right: calc(-50vw + 50%) !important;
}

.ev-product-page * {
    box-sizing: border-box !important;
}

.ev-product-page img {
    max-width: 100% !important;
    height: auto !important;
}

.ev-product-page a {
    color: var(--evolve-orange) !important;
    text-decoration: none !important;
}

.ev-product-page a:hover {
    text-decoration: underline !important;
}

/* --------------------------------------------------------------------------
   HERO HEADER PRODUIT
   -------------------------------------------------------------------------- */
.ev-product-header {
    text-align: center !important;
    padding: 60px 20px 40px !important;
    background: #0a0a0a !important;
}

.ev-product-header h1 {
    font-family: "Protest strike", "Manrope", sans-serif !important;
    font-size: clamp(42px, 8vw, 72px) !important;
    font-weight: 500 !important;
    color: #ffffff !important;
    margin: 0 0 15px 0 !important;
    line-height: 1.1 !important;
    text-transform: uppercase !important;
}

.ev-product-header h2 {
    font-family: "Manrope", sans-serif !important;
    font-size: clamp(18px, 3vw, 24px) !important;
    font-weight: 400 !important;
    color: #a0a0a0 !important;
    margin: 0 !important;
}

/* --------------------------------------------------------------------------
   VIDEO YOUTUBE EMBED
   -------------------------------------------------------------------------- */
.ev-video-section {
    padding: 0 20px 60px !important;
    max-width: 1140px !important;
    margin: 0 auto !important;
}

.ev-video-wrapper {
    position: relative !important;
    width: 100% !important;
    padding-bottom: 56.25% !important;
    height: 0 !important;
    overflow: hidden !important;
    border-radius: 12px !important;
    background: #1a1a1a !important;
}

.ev-video-wrapper iframe {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    border: none !important;
}

/* --------------------------------------------------------------------------
   CALLOUT - TEXTE D'ACCROCHE
   -------------------------------------------------------------------------- */
.ev-callout {
    text-align: center !important;
    padding: 40px 20px !important;
    background: #0a0a0a !important;
}

.ev-callout p {
    font-size: 16px !important;
    color: #a0a0a0 !important;
    margin: 0 0 10px 0 !important;
    text-transform: uppercase !important;
    letter-spacing: 2px !important;
}

.ev-callout h2 {
    font-family: "Protest strike", "Manrope", sans-serif !important;
    font-size: clamp(28px, 5vw, 42px) !important;
    font-weight: 500 !important;
    color: var(--evolve-orange) !important;
    margin: 0 !important;
    text-transform: uppercase !important;
}

/* --------------------------------------------------------------------------
   GRILLE STATS (Vitesse, Puissance, Autonomie)
   -------------------------------------------------------------------------- */
.ev-stats-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 30px !important;
    padding: 40px 20px !important;
    max-width: 1140px !important;
    margin: 0 auto !important;
}

.ev-stat-card {
    background: #141414 !important;
    border-radius: 12px !important;
    padding: 30px 20px !important;
    text-align: center !important;
    border: 1px solid #2a2a2a !important;
    transition: all 0.3s ease !important;
}

.ev-stat-card:hover {
    border-color: var(--evolve-orange) !important;
    transform: translateY(-5px) !important;
}

.ev-stat-card img {
    width: 100px !important;
    height: 100px !important;
    margin: 0 auto 20px !important;
    display: block !important;
}

.ev-stat-card .stat-label {
    font-size: 14px !important;
    color: #a0a0a0 !important;
    margin: 0 0 5px 0 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
}

.ev-stat-card .stat-title {
    font-family: "Protest strike", "Manrope", sans-serif !important;
    font-size: 28px !important;
    font-weight: 500 !important;
    color: var(--evolve-orange) !important;
    margin: 0 0 10px 0 !important;
    text-transform: uppercase !important;
}

.ev-stat-card .stat-value {
    font-size: 18px !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    margin: 0 !important;
}

/* --------------------------------------------------------------------------
   SECTION FEATURE (Image + Texte)
   -------------------------------------------------------------------------- */
.ev-feature {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 40px !important;
    align-items: center !important;
    padding: 40px 20px !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
}

.ev-feature--reverse {
    direction: rtl !important;
}

.ev-feature--reverse > * {
    direction: ltr !important;
}

.ev-feature-img img {
    width: 100% !important;
    border-radius: 12px !important;
    /* box-shadow removed */
}

.ev-feature-content h2 {
    font-family: "Protest strike", "Manrope", sans-serif !important;
    font-size: clamp(24px, 4vw, 32px) !important;
    font-weight: 500 !important;
    color: var(--evolve-orange) !important;
    margin: 0 0 15px 0 !important;
    text-transform: uppercase !important;
}

.ev-feature-content p {
    font-size: 16px !important;
    line-height: 1.8 !important;
    color: #a0a0a0 !important;
    margin: 0 0 15px 0 !important;
}

.ev-feature-content p:last-child {
    margin-bottom: 0 !important;
}

.ev-feature-content strong {
    color: #ffffff !important;
}

.ev-feature-content ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 15px 0 0 0 !important;
}

.ev-feature-content ul li {
    font-size: 16px !important;
    color: #a0a0a0 !important;
    padding: 5px 0 5px 25px !important;
    position: relative !important;
}

.ev-feature-content ul li::before {
    content: "✓" !important;
    position: absolute !important;
    left: 0 !important;
    color: var(--evolve-orange) !important;
    font-weight: bold !important;
}

/* --------------------------------------------------------------------------
   SECTION FULLWIDTH IMAGE
   -------------------------------------------------------------------------- */
.ev-fullwidth {
    padding: 60px 0 !important;
    background: #0a0a0a !important;
}

.ev-fullwidth-header {
    text-align: center !important;
    padding: 0 20px 30px !important;
    max-width: 1140px !important;
    margin: 0 auto !important;
}

.ev-fullwidth-header h2 {
    font-family: "Protest strike", "Manrope", sans-serif !important;
    font-size: clamp(28px, 4vw, 36px) !important;
    font-weight: 500 !important;
    color: var(--evolve-orange) !important;
    margin: 0 0 15px 0 !important;
    text-transform: uppercase !important;
}

.ev-fullwidth-header h3 {
    font-size: 18px !important;
    font-weight: 400 !important;
    color: #ffffff !important;
    margin: 0 !important;
}

.ev-fullwidth img {
    width: 100% !important;
    display: block !important;
}

/* --------------------------------------------------------------------------
   SECTION GARANTIE
   -------------------------------------------------------------------------- */
.ev-garantie {
    text-align: center !important;
    padding: 60px 20px !important;
    background: #0a0a0a !important;
}

.ev-garantie h2 {
    font-family: "Protest strike", "Manrope", sans-serif !important;
    font-size: clamp(28px, 5vw, 42px) !important;
    font-weight: 500 !important;
    color: var(--evolve-orange) !important;
    margin: 0 0 10px 0 !important;
}

.ev-garantie h3 {
    font-size: 18px !important;
    font-weight: 400 !important;
    color: #ffffff !important;
    margin: 0 !important;
}

/* --------------------------------------------------------------------------
   SECTION VERSION ROUTE (CTA)
   -------------------------------------------------------------------------- */
.ev-route-section {
    text-align: center !important;
    padding: 60px 20px !important;
    max-width: 900px !important;
    margin: 0 auto !important;
    background: #141414 !important;
    border-radius: 12px !important;
    margin-bottom: 40px !important;
}

.ev-route-section h2 {
    font-family: "Protest strike", "Manrope", sans-serif !important;
    font-size: clamp(24px, 4vw, 32px) !important;
    font-weight: 500 !important;
    color: var(--evolve-orange) !important;
    margin: 0 0 20px 0 !important;
    text-transform: uppercase !important;
}

.ev-route-section p {
    font-size: 16px !important;
    color: #a0a0a0 !important;
    line-height: 1.8 !important;
    margin: 0 0 25px 0 !important;
}

.ev-route-section strong {
    color: #ffffff !important;
}

/* --------------------------------------------------------------------------
   SECTION TESTS RIDERS
   -------------------------------------------------------------------------- */
.ev-tests-section {
    padding: 60px 20px !important;
    background: #0a0a0a !important;
}

.ev-tests-header {
    text-align: center !important;
    margin-bottom: 40px !important;
}

.ev-tests-header p {
    font-size: 14px !important;
    color: #a0a0a0 !important;
    text-transform: uppercase !important;
    letter-spacing: 2px !important;
    margin: 0 0 10px 0 !important;
}

.ev-tests-header h2 {
    font-family: "Protest strike", "Manrope", sans-serif !important;
    font-size: clamp(28px, 4vw, 36px) !important;
    font-weight: 500 !important;
    color: var(--evolve-orange) !important;
    margin: 0 !important;
}

.ev-tests-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 25px !important;
    max-width: 1140px !important;
    margin: 0 auto 40px !important;
}

.ev-test-card {
    background: #141414 !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    border: 1px solid #2a2a2a !important;
    transition: all 0.3s ease !important;
}

.ev-test-card:hover {
    border-color: var(--evolve-orange) !important;
    transform: translateY(-5px) !important;
}

.ev-test-card img {
    width: 100% !important;
    aspect-ratio: 1/1 !important;
    object-fit: cover !important;
}

.ev-test-card-content {
    padding: 20px !important;
}

.ev-test-card h3 {
    font-family: "Manrope", sans-serif !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    margin: 0 0 10px 0 !important;
}

.ev-test-card p {
    font-size: 14px !important;
    line-height: 1.6 !important;
    color: #a0a0a0 !important;
    margin: 0 0 15px 0 !important;
}

.ev-tests-cta {
    text-align: center !important;
}

/* --------------------------------------------------------------------------
   SECTION AVIS GARANTIS
   -------------------------------------------------------------------------- */
.ev-avis-section {
    padding: 60px 20px !important;
    background: #141414 !important;
    text-align: center !important;
}

.ev-avis-section h2 {
    font-family: "Protest strike", "Manrope", sans-serif !important;
    font-size: clamp(24px, 4vw, 32px) !important;
    font-weight: 500 !important;
    margin: 0 0 30px 0 !important;
}

.ev-avis-section h2 .white {
    color: #ffffff !important;
}

.ev-avis-section h2 .orange {
    color: var(--evolve-orange) !important;
}

.ev-avis-iframe {
    max-width: 100% !important;
    margin: 0 auto 20px !important;
}

.ev-avis-iframe iframe {
    border: none !important;
    width: 100% !important;
    max-width: 100% !important;
}

/* --------------------------------------------------------------------------
   TABLEAU SPECIFICATIONS
   -------------------------------------------------------------------------- */
.ev-specs-section {
    padding: 60px 20px !important;
    max-width: 900px !important;
    margin: 0 auto !important;
}

.ev-specs-section h2 {
    font-family: "Protest strike", "Manrope", sans-serif !important;
    font-size: 28px !important;
    font-weight: 500 !important;
    color: #ffffff !important;
    text-align: center !important;
    margin: 0 0 30px 0 !important;
}

.ev-specs-table {
    width: 100% !important;
    border-collapse: collapse !important;
    background: #0a0a0a !important;
}

.ev-specs-table thead tr {
    background: var(--evolve-orange) !important;
}

.ev-specs-table th {
    padding: 15px !important;
    text-align: center !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    border: 1px solid #ffffff !important;
    font-size: 16px !important;
}

.ev-specs-table td {
    padding: 12px 15px !important;
    text-align: center !important;
    color: #ffffff !important;
    border: 1px solid #2a2a2a !important;
    font-size: 15px !important;
}

.ev-specs-table tbody tr:nth-child(odd) {
    background: #0a0a0a !important;
}

.ev-specs-table tbody tr:nth-child(even) {
    background: #141414 !important;
}

/* --------------------------------------------------------------------------
   SECTION CONDITIONS
   -------------------------------------------------------------------------- */
.ev-conditions {
    text-align: center !important;
    padding: 40px 20px !important;
    max-width: 900px !important;
    margin: 0 auto !important;
}

.ev-conditions h2 {
    font-size: 18px !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    margin: 0 0 15px 0 !important;
}

.ev-conditions p {
    font-size: 14px !important;
    color: #a0a0a0 !important;
    line-height: 1.7 !important;
    margin: 0 0 20px 0 !important;
}

.ev-conditions strong {
    color: #ffffff !important;
}

/* --------------------------------------------------------------------------
   BOUTON STYLE PRODUIT
   -------------------------------------------------------------------------- */
.ev-btn--outline {
    display: inline-block !important;
    padding: 12px 28px !important;
    font-family: "Manrope", sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    border-radius: 4px !important;
    transition: all 0.3s ease !important;
    background: transparent !important;
    color: var(--evolve-orange) !important;
    border: 2px solid var(--evolve-orange) !important;
}

.ev-btn--outline:hover {
    background: var(--evolve-orange) !important;
    color: #ffffff !important;
    text-decoration: none !important;
}

/* --------------------------------------------------------------------------
   RESPONSIVE PAGES PRODUIT
   -------------------------------------------------------------------------- */
@media (max-width: 991px) {
    .ev-stats-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }
    
    .ev-feature {
        grid-template-columns: 1fr !important;
        gap: 30px !important;
    }
    
    .ev-feature--reverse {
        direction: ltr !important;
    }
    
    .ev-tests-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

@media (max-width: 768px) {
    .ev-product-page {
        margin-left: -15px !important;
        margin-right: -15px !important;
        width: calc(100% + 30px) !important;
    }
    
    .ev-product-header {
        padding: 40px 15px 30px !important;
    }
    
    .ev-stats-grid {
        grid-template-columns: 1fr !important;
        gap: 15px !important;
        padding: 30px 15px !important;
    }
    
    .ev-stat-card {
        padding: 25px 15px !important;
    }
    
    .ev-feature {
        padding: 30px 15px !important;
    }
    
    .ev-tests-grid {
        grid-template-columns: 1fr !important;
        gap: 15px !important;
    }
    
    .ev-video-section {
        padding: 0 15px 40px !important;
    }
    
    .ev-callout {
        padding: 30px 15px !important;
    }
    
    .ev-garantie {
        padding: 40px 15px !important;
    }
    
    .ev-route-section {
        padding: 40px 15px !important;
        margin: 0 15px 30px !important;
        border-radius: 8px !important;
    }
    
    .ev-tests-section {
        padding: 40px 15px !important;
    }
    
    .ev-avis-section {
        padding: 40px 15px !important;
    }
    
    .ev-specs-section {
        padding: 40px 15px !important;
    }
    
    .ev-conditions {
        padding: 30px 15px !important;
    }
    
    .labs-faq {
        padding: 40px 15px !important;
    }
}

@media (max-width: 480px) {
    .ev-stat-card img {
        width: 80px !important;
        height: 80px !important;
    }
    
    .ev-stat-card .stat-title {
        font-size: 24px !important;
    }
    
    .ev-stat-card .stat-value {
        font-size: 16px !important;
    }
}

/* ==========================================================================
   SECTION 6: AMÉLIORATIONS UX - PAGES PRODUIT
   Animations, effets hover, micro-interactions
   ========================================================================== */

/* --------------------------------------------------------------------------
   ANIMATIONS AU SCROLL (fade-in)
   -------------------------------------------------------------------------- */
@keyframes ev-fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.ev-product-page .ev-feature,
.ev-product-page .ev-stat-card,
.ev-product-page .ev-test-card,
.ev-product-page .labs-faq-card {
    animation: ev-fadeInUp 0.6s ease-out both;
}

/* Stagger les animations */
.ev-stats-grid .ev-stat-card:nth-child(1) { animation-delay: 0.1s; }
.ev-stats-grid .ev-stat-card:nth-child(2) { animation-delay: 0.2s; }
.ev-stats-grid .ev-stat-card:nth-child(3) { animation-delay: 0.3s; }

.ev-tests-grid .ev-test-card:nth-child(1) { animation-delay: 0.1s; }
.ev-tests-grid .ev-test-card:nth-child(2) { animation-delay: 0.2s; }
.ev-tests-grid .ev-test-card:nth-child(3) { animation-delay: 0.3s; }

/* --------------------------------------------------------------------------
   STAT CARDS - EFFETS HOVER AMÉLIORÉS
   -------------------------------------------------------------------------- */
.ev-stat-card {
    position: relative !important;
    overflow: hidden !important;
}

.ev-stat-card::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    background: radial-gradient(circle at center, rgba(251, 97, 59, 0.1) 0%, transparent 70%) !important;
    opacity: 0 !important;
    transition: opacity 0.4s ease !important;
    pointer-events: none !important;
}

.ev-stat-card:hover::before {
    opacity: 1 !important;
}

.ev-stat-card:hover {
    box-shadow: 0 0 30px rgba(251, 97, 59, 0.2), 0 10px 40px rgba(0, 0, 0, 0.3) !important;
}

.ev-stat-card img {
    transition: transform 0.4s ease !important;
}

.ev-stat-card:hover img {
    transform: scale(1.1) !important;
}

/* Chiffres plus impactants */
.ev-stat-card .stat-value {
    font-size: 20px !important;
    font-weight: 700 !important;
    background: linear-gradient(135deg, #ffffff 0%, #a0a0a0 100%) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
}

/* --------------------------------------------------------------------------
   FEATURES - IMAGES AVEC EFFET PARALLAX LÉGER
   -------------------------------------------------------------------------- */
.ev-feature-img {
    overflow: hidden !important;
    border-radius: 12px !important;
}

.ev-feature-img img {
    transition: transform 0.6s ease !important;
}

.ev-feature:hover .ev-feature-img img {
    transform: scale(1.05) !important;
}

/* --------------------------------------------------------------------------
   TEST CARDS - AMÉLIORATION VISUELLE
   -------------------------------------------------------------------------- */
.ev-test-card {
    position: relative !important;
    overflow: hidden !important;
}

.ev-test-card::after {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 4px !important;
    background: linear-gradient(90deg, var(--evolve-orange) 0%, #ff8c66 100%) !important;
    transform: scaleX(0) !important;
    transform-origin: left !important;
    transition: transform 0.4s ease !important;
}

.ev-test-card:hover::after {
    transform: scaleX(1) !important;
}

.ev-test-card img {
    transition: transform 0.5s ease, filter 0.3s ease !important;
}

.ev-test-card:hover img {
    transform: scale(1.08) !important;
}

/* --------------------------------------------------------------------------
   FAQ CARDS - ICÔNE QUESTION
   -------------------------------------------------------------------------- */
.labs-faq-card h3 {
    position: relative !important;
    padding-left: 30px !important;
}

.labs-faq-card h3::before {
    content: '?' !important;
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    width: 22px !important;
    height: 22px !important;
    background: var(--evolve-orange) !important;
    color: #ffffff !important;
    border-radius: 50% !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.labs-faq-card {
    transition: transform 0.3s ease, box-shadow 0.3s ease !important;
}

.labs-faq-card:hover {
    transform: translateY(-5px) !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3) !important;
}

/* --------------------------------------------------------------------------
   BOUTONS - EFFETS AMÉLIORÉS
   -------------------------------------------------------------------------- */
.ev-btn--primary {
    position: relative !important;
    overflow: hidden !important;
    z-index: 1 !important;
}

.ev-btn--primary::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: -100% !important;
    width: 100% !important;
    height: 100% !important;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent) !important;
    transition: left 0.5s ease !important;
    z-index: -1 !important;
}

.ev-btn--primary:hover::before {
    left: 100% !important;
}

.ev-btn--outline {
    position: relative !important;
    overflow: hidden !important;
}

.ev-btn--outline::before {
    content: '' !important;
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 2px !important;
    background: var(--evolve-orange) !important;
    transform: scaleX(0) !important;
    transform-origin: right !important;
    transition: transform 0.3s ease !important;
}

.ev-btn--outline:hover::before {
    transform: scaleX(1) !important;
    transform-origin: left !important;
}

/* --------------------------------------------------------------------------
   GARANTIE - EFFET GLOW
   -------------------------------------------------------------------------- */
.ev-garantie h2 {
    text-shadow: 0 0 40px rgba(251, 97, 59, 0.5) !important;
}

/* --------------------------------------------------------------------------
   SEPARATEURS VISUELS
   -------------------------------------------------------------------------- */
.ev-separator {
    width: 100% !important;
    height: 1px !important;
    background: linear-gradient(90deg, transparent 0%, #2a2a2a 20%, #2a2a2a 80%, transparent 100%) !important;
    margin: 40px 0 !important;
}

/* --------------------------------------------------------------------------
   LAZY LOADING IMAGES
   -------------------------------------------------------------------------- */
/* Images lazy - visibles par défaut */
.ev-product-page img {
    opacity: 1 !important;
}

/* Script pour ajouter classe loaded quand image chargée */
/* document.querySelectorAll('img[loading="lazy"]').forEach(img => {
    img.addEventListener('load', () => img.classList.add('loaded'));
    if (img.complete) img.classList.add('loaded');
}); */

/* --------------------------------------------------------------------------
   TABLEAU SPECS - AMÉLIORATION
   -------------------------------------------------------------------------- */
.ev-specs-table tbody tr {
    transition: background-color 0.2s ease !important;
}

.ev-specs-table tbody tr:hover {
    background-color: #1f1f1f !important;
}

.ev-specs-table tbody tr:hover td:first-child {
    color: var(--evolve-orange) !important;
}

/* --------------------------------------------------------------------------
   VIDEO SECTION - EFFET AU HOVER
   -------------------------------------------------------------------------- */
.ev-video-wrapper {
    transition: box-shadow 0.4s ease !important;
}

.ev-video-wrapper:hover {
    box-shadow: 0 0 50px rgba(251, 97, 59, 0.3) !important;
}

/* --------------------------------------------------------------------------
   SECTION ROUTE - MISE EN AVANT
   -------------------------------------------------------------------------- */
.ev-route-section {
    position: relative !important;
    overflow: hidden !important;
}

.ev-route-section::before {
    content: '' !important;
    position: absolute !important;
    top: -50% !important;
    left: -50% !important;
    width: 200% !important;
    height: 200% !important;
    background: radial-gradient(circle, rgba(251, 97, 59, 0.05) 0%, transparent 50%) !important;
    animation: ev-pulse 4s ease-in-out infinite !important;
}

@keyframes ev-pulse {
    0%, 100% { transform: scale(1); opacity: 0.5; }
    50% { transform: scale(1.1); opacity: 1; }
}

/* --------------------------------------------------------------------------
   RESPONSIVE MOBILE - AJUSTEMENTS UX
   -------------------------------------------------------------------------- */
@media (max-width: 768px) {
    .ev-stat-card .stat-value {
        font-size: 16px !important;
    }
    
    .labs-faq-card h3 {
        padding-left: 28px !important;
        font-size: 15px !important;
    }
    
    .labs-faq-card h3::before {
        width: 20px !important;
        height: 20px !important;
        font-size: 12px !important;
    }
    
    /* Désactiver certaines animations sur mobile pour performance */
    .ev-stat-card::before,
    .ev-route-section::before {
        display: none !important;
    }
}

/* ==========================================================================
   SECTION 7: STYLE AUSTRALIEN - PAGES PRODUIT
   Inspiré de rideevolve.com.au
   ========================================================================== */

/* --------------------------------------------------------------------------
   HERO HEADER - STYLE AUSTRALIEN
   -------------------------------------------------------------------------- */
.ev-product-header--hero {
    padding: 80px 20px 60px !important;
    background: linear-gradient(180deg, #0a0a0a 0%, #141414 100%) !important;
}

.ev-product-badge {
    display: inline-block !important;
    padding: 8px 20px !important;
    background: var(--evolve-orange) !important;
    color: #ffffff !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    border-radius: 30px !important;
    margin-bottom: 20px !important;
}

.ev-product-header--hero h1 {
    font-size: clamp(48px, 10vw, 80px) !important;
    letter-spacing: 4px !important;
    margin-bottom: 20px !important;
}

.ev-product-header--hero h2 {
    font-size: clamp(16px, 3vw, 22px) !important;
    font-weight: 400 !important;
    color: #a0a0a0 !important;
    max-width: 600px !important;
    margin: 0 auto !important;
}

/* --------------------------------------------------------------------------
   STATS SECTION - STYLE COMPACT AUSTRALIEN
   -------------------------------------------------------------------------- */
.ev-stats-section {
    padding: 40px 20px !important;
    background: #0a0a0a !important;
}

.ev-stats-grid--compact {
    display: flex !important;
    justify-content: center !important;
    gap: 40px !important;
    flex-wrap: wrap !important;
    max-width: 900px !important;
    margin: 0 auto !important;
}

.ev-stat-card--highlight {
    display: flex !important;
    align-items: center !important;
    gap: 15px !important;
    background: transparent !important;
    border: none !important;
    padding: 15px 25px !important;
    border-left: 3px solid var(--evolve-orange) !important;
    border-radius: 0 !important;
}

.ev-stat-card--highlight:hover {
    transform: none !important;
    border-color: var(--evolve-orange) !important;
    box-shadow: none !important;
    background: rgba(251, 97, 59, 0.05) !important;
}

.ev-stat-icon {
    width: 60px !important;
    height: 60px !important;
    flex-shrink: 0 !important;
}

.ev-stat-icon img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
}

.ev-stat-info {
    display: flex !important;
    flex-direction: column !important;
    text-align: left !important;
}

.ev-stat-card--highlight .ev-stat-value {
    font-family: "Protest strike", "Manrope", sans-serif !important;
    font-size: 28px !important;
    font-weight: 500 !important;
    color: #ffffff !important;
    background: none !important;
    -webkit-text-fill-color: #ffffff !important;
    margin: 0 !important;
}

.ev-stat-card--highlight .ev-stat-label {
    font-size: 13px !important;
    color: #a0a0a0 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    margin: 0 !important;
}

/* --------------------------------------------------------------------------
   FEATURES GRID - STYLE AUSTRALIEN
   -------------------------------------------------------------------------- */
.ev-features-section {
    padding: 60px 20px !important;
    background: #0a0a0a !important;
}

.ev-features-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 25px !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
}

.ev-feature-card {
    background: #141414 !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    border: 1px solid #2a2a2a !important;
    transition: all 0.3s ease !important;
}

.ev-feature-card:hover {
    border-color: var(--evolve-orange) !important;
    transform: translateY(-5px) !important;
    /* box-shadow removed */
}

.ev-feature-card-img {
    aspect-ratio: 4/3 !important;
    overflow: hidden !important;
}

.ev-feature-card-img img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    transition: transform 0.5s ease !important;
}

.ev-feature-card:hover .ev-feature-card-img img {
    transform: scale(1.05) !important;
}

.ev-feature-card-content {
    padding: 25px !important;
}

.ev-feature-card-content h3 {
    font-family: "Manrope", sans-serif !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: var(--evolve-orange) !important;
    letter-spacing: 1px !important;
    margin: 0 0 12px 0 !important;
}

.ev-feature-card-content p {
    font-size: 14px !important;
    line-height: 1.7 !important;
    color: #a0a0a0 !important;
    margin: 0 !important;
}

/* --------------------------------------------------------------------------
   QUOTE SECTION - STYLE AUSTRALIEN
   -------------------------------------------------------------------------- */
.ev-quote-section {
    padding: 80px 20px !important;
    background: #141414 !important;
    text-align: center !important;
}

.ev-quote-section blockquote {
    max-width: 800px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    border: none !important;
}

.ev-quote-section blockquote p {
    font-family: "Protest strike", "Manrope", sans-serif !important;
    font-size: clamp(20px, 3vw, 28px) !important;
    font-weight: 400 !important;
    font-style: italic !important;
    color: #ffffff !important;
    line-height: 1.5 !important;
    margin: 0 0 25px 0 !important;
}

.ev-quote-section blockquote cite {
    font-family: "Manrope", sans-serif !important;
    font-size: 14px !important;
    font-style: normal !important;
    color: var(--evolve-orange) !important;
    font-weight: 600 !important;
}

/* --------------------------------------------------------------------------
   FULLWIDTH - VARIANTE DARK
   -------------------------------------------------------------------------- */
.ev-fullwidth--dark {
    background: #141414 !important;
    padding: 80px 0 !important;
}

.ev-fullwidth--dark .ev-fullwidth-header {
    padding: 0 20px 40px !important;
}

.ev-fullwidth--dark .ev-fullwidth-header h2 {
    font-size: clamp(28px, 5vw, 42px) !important;
    color: #ffffff !important;
    margin-bottom: 15px !important;
}

.ev-fullwidth--dark .ev-fullwidth-header p {
    font-size: 16px !important;
    color: #a0a0a0 !important;
    max-width: 600px !important;
    margin: 0 auto !important;
}

/* --------------------------------------------------------------------------
   BATTERY SECTION - SPÉCIALE
   -------------------------------------------------------------------------- */
.ev-battery-section {
    padding: 80px 20px !important;
    background: linear-gradient(135deg, #0a0a0a 0%, #1a1a1a 100%) !important;
}

.ev-battery-content {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 60px !important;
    align-items: center !important;
    max-width: 1100px !important;
    margin: 0 auto !important;
}

.ev-battery-text h2 {
    font-family: "Protest strike", "Manrope", sans-serif !important;
    font-size: clamp(28px, 4vw, 36px) !important;
    font-weight: 500 !important;
    color: var(--evolve-orange) !important;
    margin: 0 0 10px 0 !important;
}

.ev-battery-specs {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    margin: 0 0 20px 0 !important;
    letter-spacing: 1px !important;
}

.ev-battery-text p {
    font-size: 16px !important;
    line-height: 1.8 !important;
    color: #a0a0a0 !important;
    margin: 0 0 25px 0 !important;
}

.ev-battery-warranty {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 15px 20px !important;
    background: rgba(251, 97, 59, 0.1) !important;
    border-radius: 8px !important;
    border-left: 3px solid var(--evolve-orange) !important;
}

.ev-battery-warranty img {
    width: 32px !important;
    height: 32px !important;
}

.ev-battery-warranty span {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
}

.ev-battery-img img {
    width: 100% !important;
    border-radius: 12px !important;
    box-shadow: 0 30px 60px rgba(0, 0, 0, 0.4) !important;
}

/* --------------------------------------------------------------------------
   TESTS SECTION - STYLE AUSTRALIEN
   -------------------------------------------------------------------------- */
.ev-tests-section {
    padding: 80px 20px !important;
    background: #0a0a0a !important;
}

.ev-tests-header h2 {
    font-family: "Protest strike", "Manrope", sans-serif !important;
    font-size: clamp(28px, 4vw, 36px) !important;
    font-weight: 500 !important;
    color: #ffffff !important;
    margin: 0 0 10px 0 !important;
}

.ev-tests-header p {
    font-size: 16px !important;
    color: #a0a0a0 !important;
    margin: 0 !important;
}

/* --------------------------------------------------------------------------
   RESPONSIVE - STYLE AUSTRALIEN
   -------------------------------------------------------------------------- */
@media (max-width: 991px) {
    .ev-features-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }
    
    .ev-battery-content {
        grid-template-columns: 1fr !important;
        gap: 40px !important;
    }
    
    .ev-battery-img {
        /* order: -1 !important; */
    }
    
    .ev-stats-grid--compact {
        gap: 20px !important;
    }
}

@media (max-width: 768px) {
    .ev-product-header--hero {
        padding: 60px 15px 40px !important;
    }
    
    .ev-features-grid {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
    }
    
    .ev-features-section {
        padding: 40px 15px !important;
    }
    
    .ev-quote-section {
        padding: 50px 15px !important;
    }
    
    .ev-battery-section {
        padding: 50px 15px !important;
    }
    
    .ev-stats-grid--compact {
        flex-direction: column !important;
        align-items: center !important;
    }
    
    .ev-stat-card--highlight {
        width: 100% !important;
        max-width: 300px !important;
        justify-content: flex-start !important;
    }
    
    .ev-fullwidth--dark {
        padding: 50px 0 !important;
    }
}

/* ==========================================================================
   SECTION 8: VIDEO HERO FULLWIDTH
   Vidéo immersive en début de page produit
   ========================================================================== */

/* --------------------------------------------------------------------------
   VIDEO HERO CONTAINER
   -------------------------------------------------------------------------- */
.ev-video-hero {
    position: relative !important;
    width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
    height: 85vh !important;
    min-height: 500px !important;
    max-height: 800px !important;
    overflow: hidden !important;
    background: #0a0a0a !important;
}

.ev-video-hero-wrapper {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    pointer-events: none !important;
}

.ev-video-hero-wrapper iframe {
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    width: 177.78vh !important; /* 16:9 ratio */
    height: 100vh !important;
    min-width: 100% !important;
    min-height: 100% !important;
    border: none !important;
}

/* --------------------------------------------------------------------------
   VIDEO HERO OVERLAY
   -------------------------------------------------------------------------- */
.ev-video-hero-overlay {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    padding: 20px !important;
    background: linear-gradient(
        180deg,
        rgba(0, 0, 0, 0.3) 0%,
        rgba(0, 0, 0, 0.1) 40%,
        rgba(0, 0, 0, 0.1) 60%,
        rgba(0, 0, 0, 0.7) 100%
    ) !important;
    z-index: 2 !important;
}

.ev-video-hero-overlay .ev-product-badge {
    display: inline-block !important;
    padding: 10px 25px !important;
    background: var(--evolve-orange) !important;
    color: #ffffff !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: 3px !important;
    text-transform: uppercase !important;
    border-radius: 30px !important;
    margin-bottom: 25px !important;
    animation: ev-fadeInDown 0.8s ease-out 0.2s both !important;
}

.ev-video-hero-overlay h1 {
    font-family: "Protest strike", "Manrope", sans-serif !important;
    font-size: clamp(48px, 12vw, 100px) !important;
    font-weight: 500 !important;
    color: #ffffff !important;
    letter-spacing: 6px !important;
    margin: 0 0 20px 0 !important;
    text-shadow: 0 4px 30px rgba(0, 0, 0, 0.5) !important;
    animation: ev-fadeInUp 0.8s ease-out 0.4s both !important;
}

.ev-video-hero-overlay h2 {
    font-family: "Manrope", sans-serif !important;
    font-size: clamp(16px, 3vw, 24px) !important;
    font-weight: 400 !important;
    color: rgba(255, 255, 255, 0.9) !important;
    max-width: 600px !important;
    margin: 0 0 40px 0 !important;
    text-shadow: 0 2px 20px rgba(0, 0, 0, 0.5) !important;
    animation: ev-fadeInUp 0.8s ease-out 0.6s both !important;
}

.ev-video-hero-overlay .ev-btn--primary {
    padding: 16px 40px !important;
    font-size: 14px !important;
    letter-spacing: 2px !important;
    animation: ev-fadeInUp 0.8s ease-out 0.8s both !important;
}

/* Scroll indicator */
.ev-video-hero::after {
    content: '' !important;
    position: absolute !important;
    bottom: 30px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 30px !important;
    height: 50px !important;
    border: 2px solid rgba(255, 255, 255, 0.5) !important;
    border-radius: 20px !important;
    z-index: 3 !important;
}

.ev-video-hero::before {
    content: '' !important;
    position: absolute !important;
    bottom: 42px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 6px !important;
    height: 10px !important;
    background: rgba(255, 255, 255, 0.7) !important;
    border-radius: 3px !important;
    z-index: 4 !important;
    animation: ev-scroll-indicator 1.5s ease-in-out infinite !important;
}

@keyframes ev-scroll-indicator {
    0%, 100% { 
        opacity: 1;
        transform: translateX(-50%) translateY(0);
    }
    50% { 
        opacity: 0.3;
        transform: translateX(-50%) translateY(12px);
    }
}

/* --------------------------------------------------------------------------
   RESPONSIVE VIDEO HERO
   -------------------------------------------------------------------------- */
@media (max-width: 991px) {
    .ev-video-hero {
        height: 70vh !important;
        min-height: 400px !important;
    }
}

@media (max-width: 768px) {
    .ev-video-hero {
        height: 60vh !important;
        min-height: 350px !important;
    }
    
    .ev-video-hero-overlay h1 {
        letter-spacing: 3px !important;
    }
    
    .ev-video-hero-overlay .ev-product-badge {
        padding: 8px 18px !important;
        font-size: 10px !important;
    }
    
    .ev-video-hero::after,
    .ev-video-hero::before {
        display: none !important;
    }
}

@media (max-width: 480px) {
    .ev-video-hero {
        height: 50vh !important;
        min-height: 300px !important;
    }
    
    .ev-video-hero-overlay h2 {
        font-size: 14px !important;
        margin-bottom: 25px !important;
    }
    
    .ev-video-hero-overlay .ev-btn--primary {
        padding: 12px 30px !important;
        font-size: 12px !important;
    }
}

/* ==========================================================================
   SECTION 9: HERO IMAGE + VIDEO MODAL
   Image de fond avec bouton play et modal vidéo
   ========================================================================== */

/* --------------------------------------------------------------------------
   HERO COVER IMAGE
   -------------------------------------------------------------------------- */
.ev-hero-cover {
    position: relative !important;
    width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
    height: 85vh !important;
    min-height: 500px !important;
    max-height: 850px !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    overflow: hidden !important;
}

.ev-hero-overlay {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    padding: 20px !important;
    background: linear-gradient(
        180deg,
        rgba(0, 0, 0, 0.4) 0%,
        rgba(0, 0, 0, 0.2) 40%,
        rgba(0, 0, 0, 0.2) 60%,
        rgba(0, 0, 0, 0.6) 100%
    ) !important;
}

.ev-hero-overlay h1 {
    font-family: "Protest strike", "Manrope", sans-serif !important;
    font-size: clamp(52px, 12vw, 110px) !important;
    font-weight: 500 !important;
    color: #ffffff !important;
    letter-spacing: 8px !important;
    margin: 0 0 15px 0 !important;
    text-shadow: 0 4px 40px rgba(0, 0, 0, 0.6) !important;
    animation: ev-fadeInUp 0.8s ease-out 0.2s both !important;
}

.ev-hero-overlay h2 {
    font-family: "Manrope", sans-serif !important;
    font-size: clamp(16px, 3vw, 22px) !important;
    font-weight: 400 !important;
    color: rgba(255, 255, 255, 0.9) !important;
    max-width: 500px !important;
    margin: 0 0 40px 0 !important;
    text-shadow: 0 2px 20px rgba(0, 0, 0, 0.5) !important;
    animation: ev-fadeInUp 0.8s ease-out 0.4s both !important;
}

/* --------------------------------------------------------------------------
   PLAY BUTTON
   -------------------------------------------------------------------------- */
.ev-play-btn {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 16px 32px !important;
    background: rgba(255, 255, 255, 0.15) !important;
    backdrop-filter: blur(10px) !important;
    -webkit-backdrop-filter: blur(10px) !important;
    border: 2px solid rgba(255, 255, 255, 0.4) !important;
    border-radius: 50px !important;
    color: #ffffff !important;
    font-family: "Manrope", sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    animation: ev-fadeInUp 0.8s ease-out 0.6s both !important;
}

.ev-play-btn:hover {
    background: var(--evolve-orange) !important;
    border-color: var(--evolve-orange) !important;
    transform: scale(1.05) !important;
}

.ev-play-btn svg {
    width: 24px !important;
    height: 24px !important;
}

/* --------------------------------------------------------------------------
   VIDEO MODAL
   -------------------------------------------------------------------------- */
.ev-video-modal {
    /* MODAL VIDEO */
    display: none !important;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background: rgba(0, 0, 0, 0.95) !important;
    z-index: 99999 !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 20px !important;
}

.ev-video-modal-content {
    position: relative !important;
    width: 100% !important;
    max-width: 1000px !important;
    aspect-ratio: 16/9 !important;
    background: #000 !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    box-shadow: 0 30px 80px rgba(0, 0, 0, 0.5) !important;
}

.ev-video-modal-content iframe {
    width: 100% !important;
    height: 100% !important;
    border: none !important;
}

.ev-video-modal-close {
    position: absolute !important;
    top: -50px !important;
    right: 0 !important;
    width: 40px !important;
    height: 40px !important;
    background: transparent !important;
    border: 2px solid rgba(255, 255, 255, 0.5) !important;
    border-radius: 50% !important;
    color: #ffffff !important;
    font-size: 20px !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.ev-video-modal-close:hover {
    background: var(--evolve-orange) !important;
    border-color: var(--evolve-orange) !important;
}

/* --------------------------------------------------------------------------
   BADGE CENTERED VARIANT
   -------------------------------------------------------------------------- */
.ev-product-badge--centered {
    display: block !important;
    text-align: center !important;
    margin: 0 auto 30px auto !important;
    width: fit-content !important;
}

/* --------------------------------------------------------------------------
   RESPONSIVE
   -------------------------------------------------------------------------- */
@media (max-width: 991px) {
    .ev-hero-cover {
        height: 70vh !important;
        min-height: 400px !important;
    }
}

@media (max-width: 768px) {
    .ev-hero-cover {
        height: 60vh !important;
        min-height: 350px !important;
    }
    
    .ev-hero-overlay h1 {
        letter-spacing: 4px !important;
    }
    
    .ev-play-btn {
        padding: 14px 28px !important;
        font-size: 12px !important;
    }
    
    .ev-video-modal-close {
        top: -45px !important;
        width: 36px !important;
        height: 36px !important;
    }
}

@media (max-width: 480px) {
    .ev-hero-cover {
        height: 55vh !important;
        min-height: 300px !important;
    }
    
    .ev-hero-overlay h2 {
        font-size: 14px !important;
        margin-bottom: 30px !important;
    }
    
    .ev-play-btn {
        padding: 12px 24px !important;
    }
    
    .ev-play-btn svg {
        width: 20px !important;
        height: 20px !important;
    }
}

/* Override hauteur hero - plus compact */
.ev-hero-cover {
    height: 70vh !important;
    min-height: 450px !important;
    max-height: 700px !important;
}

@media (max-width: 991px) {
    .ev-hero-cover {
        height: 60vh !important;
        min-height: 380px !important;
    }
}

@media (max-width: 768px) {
    .ev-hero-cover {
        height: 55vh !important;
        min-height: 320px !important;
    }
}

@media (max-width: 480px) {
    .ev-hero-cover {
        height: 50vh !important;
        min-height: 280px !important;
    }
}

/* Sous-titre hero - plus gros avec ombre portée */
.ev-hero-subtitle {
    font-size: clamp(20px, 4vw, 28px) !important;
    font-weight: 500 !important;
    color: #ffffff !important;
    text-shadow: 
        0 2px 4px rgba(0, 0, 0, 0.8),
        0 4px 8px rgba(0, 0, 0, 0.6),
        0 8px 16px rgba(0, 0, 0, 0.4) !important;
    max-width: 600px !important;
    letter-spacing: 1px !important;
}

/* Fix modal video - override display none */
.ev-video-modal[style*="flex"] {
    display: flex !important;
}

/* Sous-titre encore plus gras */
.ev-hero-subtitle {
    font-weight: 700 !important;
}

/* === MODAL VIDEO FIX === */
#ev-video-modal {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.95);
    z-index: 999999;
    align-items: center;
    justify-content: center;
    padding: 20px;
}

#ev-video-modal.active {
    display: flex !important;
}

#ev-video-modal .ev-video-modal-content {
    position: relative;
    width: 100%;
    max-width: 1000px;
    aspect-ratio: 16/9;
    background: #000;
    border-radius: 12px;
    overflow: hidden;
}

#ev-video-modal .ev-video-modal-content iframe {
    width: 100%;
    height: 100%;
    border: none;
}

#ev-video-modal .ev-video-modal-close {
    position: absolute;
    top: -50px;
    right: 0;
    width: 40px;
    height: 40px;
    background: transparent;
    border: 2px solid rgba(255, 255, 255, 0.5);
    border-radius: 50%;
    color: #ffffff;
    font-size: 20px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
}

#ev-video-modal .ev-video-modal-close:hover {
    background: var(--evolve-orange);
    border-color: var(--evolve-orange);
}

/* === SOUS-TITRE HERO - PLUS GROS ET GRAS === */
.ev-hero-subtitle {
    font-size: clamp(24px, 5vw, 36px) !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    text-shadow: 
        0 2px 4px rgba(0, 0, 0, 0.9),
        0 4px 8px rgba(0, 0, 0, 0.7),
        0 8px 20px rgba(0, 0, 0, 0.5),
        0 0 40px rgba(0, 0, 0, 0.8) !important;
    max-width: 700px !important;
    letter-spacing: 0.5px !important;
    line-height: 1.3 !important;
}

/* === BOUTON FERMETURE MODAL VISIBLE === */
#ev-video-modal .ev-video-modal-close {
    position: absolute;
    top: 15px;
    right: 15px;
    width: 50px;
    height: 50px;
    background: rgba(0, 0, 0, 0.7);
    border: 2px solid #ffffff;
    border-radius: 50%;
    color: #ffffff;
    font-size: 28px;
    font-weight: bold;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10;
    transition: all 0.2s ease;
}

#ev-video-modal .ev-video-modal-close:hover {
    background: var(--evolve-orange);
    border-color: var(--evolve-orange);
    transform: scale(1.1);
}

/* === FORCE SOUS-TITRE ET BOUTON CLOSE === */
.ev-hero-cover .ev-hero-overlay h2.ev-hero-subtitle {
    font-size: 32px !important;
    font-size: clamp(26px, 5vw, 38px) !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    text-shadow: 
        2px 2px 4px rgba(0, 0, 0, 1),
        0 0 10px rgba(0, 0, 0, 0.9),
        0 0 20px rgba(0, 0, 0, 0.8),
        0 0 40px rgba(0, 0, 0, 0.6) !important;
    max-width: 700px !important;
    letter-spacing: 1px !important;
    line-height: 1.4 !important;
    margin: 0 0 40px 0 !important;
}

#ev-video-modal.active .ev-video-modal-content .ev-video-modal-close {
    position: absolute !important;
    top: 15px !important;
    right: 15px !important;
    width: 50px !important;
    height: 50px !important;
    background: rgba(0, 0, 0, 0.8) !important;
    border: 3px solid #ffffff !important;
    border-radius: 50% !important;
    color: #ffffff !important;
    font-size: 30px !important;
    font-weight: bold !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    z-index: 100 !important;
}

/* === SOUS-TITRE FINAL - RÉDUIT === */
.ev-hero-cover .ev-hero-overlay h2.ev-hero-subtitle {
    font-size: clamp(18px, 3.5vw, 24px) !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    text-shadow: 
        1px 1px 3px rgba(0, 0, 0, 0.9),
        0 0 8px rgba(0, 0, 0, 0.7) !important;
    max-width: 600px !important;
    letter-spacing: 0.5px !important;
    line-height: 1.3 !important;
    margin: 0 0 30px 0 !important;
}

/* === SOUS-TITRE HERO FINAL === */
.ev-hero-cover .ev-hero-overlay h2.ev-hero-subtitle {
    font-size: clamp(18px, 3.5vw, 24px) !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    text-shadow: 
        1px 1px 2px rgba(0, 0, 0, 0.8),
        0 0 6px rgba(0, 0, 0, 0.5) !important;
    max-width: 600px !important;
    letter-spacing: 0.5px !important;
    line-height: 1.3 !important;
    margin: 0 0 30px 0 !important;
}

/* === STATS STYLE EVOLVE AUSTRALIE === */
.ev-stats-section--dark {
    background: #000000 !important;
    padding: 60px 20px !important;
}

.ev-stats-grid-au {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 40px !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
}

.ev-stat-au {
    text-align: center !important;
    padding: 20px !important;
}

.ev-stat-au-icon {
    margin-bottom: 25px !important;
}

.ev-stat-au-icon img {
    width: 80px !important;
    height: 80px !important;
    object-fit: contain !important;
}

.ev-stat-au-title {
    font-family: "Bebas Neue", "Impact", sans-serif !important;
    font-size: clamp(24px, 4vw, 36px) !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    margin: 0 0 15px 0 !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
}

.ev-stat-au-desc {
    font-size: 16px !important;
    color: rgba(255, 255, 255, 0.8) !important;
    line-height: 1.5 !important;
    margin: 0 !important;
}

@media (max-width: 768px) {
    .ev-stats-grid-au {
        grid-template-columns: 1fr !important;
        gap: 30px !important;
    }
    
    .ev-stat-au-icon img {
        width: 60px !important;
        height: 60px !important;
    }
    
    .ev-stats-section--dark {
        padding: 40px 15px !important;
    }
}

/* === SEPARATEURS VERTICAUX STATS === */
.ev-stat-au {
    position: relative !important;
}

.ev-stat-au:not(:last-child)::after {
    content: "" !important;
    position: absolute !important;
    right: 0 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    height: 80% !important;
    width: 1px !important;
    background: rgba(255, 255, 255, 0.2) !important;
}

@media (max-width: 768px) {
    .ev-stat-au:not(:last-child)::after {
        display: none !important;
    }
}

/* === UNIFORMISATION DES FONDS === */
/* Noir partout */
.ev-features-section,
.ev-fullwidth,
.ev-fullwidth--dark,
.ev-route-section,
.ev-tests-section,
.ev-avis-section {
    background: #0A0A0A !important;
}

/* Gris foncé pour la section batterie uniquement */
.ev-battery-section {
    background: #141414 !important;
}

/* === DECK SECTION PREMIUM === */
.ev-deck-section {
    background: #0A0A0A !important;
    padding: 80px 20px !important;
}

.ev-deck-content {
    display: grid !important;
    grid-template-columns: 1fr 1.2fr !important;
    gap: 60px !important;
    max-width: 1300px !important;
    margin: 0 auto !important;
    align-items: center !important;
}

.ev-deck-text {
    padding: 20px 0 !important;
}

.ev-deck-label {
    display: inline-block !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    letter-spacing: 3px !important;
    color: var(--evolve-orange, #FB613B) !important;
    text-transform: uppercase !important;
    margin-bottom: 15px !important;
    padding: 8px 16px !important;
    border: 1px solid var(--evolve-orange, #FB613B) !important;
    border-radius: 4px !important;
}

.ev-deck-section h2 {
    font-family: "Bebas Neue", "Impact", sans-serif !important;
    font-size: clamp(32px, 5vw, 48px) !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    margin: 0 0 20px 0 !important;
    letter-spacing: 2px !important;
    line-height: 1.1 !important;
}

.ev-deck-section p {
    font-size: 18px !important;
    color: rgba(255, 255, 255, 0.8) !important;
    line-height: 1.6 !important;
    margin: 0 0 35px 0 !important;
}

.ev-deck-specs {
    display: flex !important;
    gap: 30px !important;
}

.ev-deck-spec {
    text-align: center !important;
    padding: 20px 25px !important;
    background: rgba(255, 255, 255, 0.05) !important;
    border-radius: 8px !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
}

.ev-deck-spec-value {
    display: block !important;
    font-size: 24px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    margin-bottom: 5px !important;
}

.ev-deck-spec-label {
    display: block !important;
    font-size: 12px !important;
    color: rgba(255, 255, 255, 0.6) !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
}

.ev-deck-image {
    position: relative !important;
}

.ev-deck-image img {
    width: 100% !important;
    height: auto !important;
    border-radius: 12px !important;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5) !important;
}

@media (max-width: 991px) {
    .ev-deck-content {
        grid-template-columns: 1fr !important;
        gap: 40px !important;
    }
    
    .ev-deck-text {
        text-align: center !important;
    }
    
    .ev-deck-specs {
        justify-content: center !important;
    }
    
    .ev-deck-section {
        padding: 60px 20px !important;
    }
}

@media (max-width: 480px) {
    .ev-deck-specs {
        flex-direction: column !important;
        gap: 15px !important;
    }
    
    .ev-deck-spec {
        padding: 15px 20px !important;
    }
}

/* === FIX BOUTON VERSION ROUTE === */
.ev-route-section .ev-btn--primary {
    color: #ffffff !important;
    background: var(--evolve-orange, #FB613B) !important;
    border: 2px solid var(--evolve-orange, #FB613B) !important;
    padding: 14px 32px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    display: inline-block !important;
}

.ev-route-section .ev-btn--primary:hover {
    background: transparent !important;
    color: var(--evolve-orange, #FB613B) !important;
}

/* === FIX BOUTON SECTION TESTS === */
.ev-tests-section .ev-btn--primary,
.ev-tests-cta .ev-btn--primary {
    color: #ffffff !important;
    background: var(--evolve-orange, #FB613B) !important;
    border: 2px solid var(--evolve-orange, #FB613B) !important;
    padding: 14px 32px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    display: inline-block !important;
}

.ev-tests-section .ev-btn--primary:hover,
.ev-tests-cta .ev-btn--primary:hover {
    background: transparent !important;
    color: var(--evolve-orange, #FB613B) !important;
}

/* === FIX CARDS AVIS RIDERS === */

/* === SECTION AVIS GARANTIS - FOND CLAIR === */
.ev-avis-section {
    background: #0A0A0A !important;
    padding: 60px 20px !important;
}

.ev-avis-iframe {
    background: #ffffff !important;
    padding: 20px !important;
    border-radius: 12px !important;
    margin: 30px auto !important;
    max-width: 1000px !important;
}

.ev-avis-iframe iframe {
    display: block !important;
    margin: 0 auto !important;
}

/* === SECTION AVIS GARANTIS - PLUS LARGE === */
.ev-avis-iframe {
    background: #ffffff !important;
    padding: 20px !important;
    border-radius: 12px !important;
    margin: 30px auto !important;
    max-width: 1200px !important;
    width: 100% !important;
}

/* === DECK SECTION INVERSEE (image à gauche) === */
.ev-deck-section--reverse .ev-deck-content {
    grid-template-columns: 1.2fr 1fr !important;
}

.ev-deck-section--reverse .ev-deck-image {
    order: -1 !important;
}

.ev-deck-section--reverse .ev-deck-text p {
    margin-bottom: 15px !important;
}

@media (max-width: 991px) {
    .ev-deck-section--reverse .ev-deck-content {
        grid-template-columns: 1fr !important;
    }
    
    .ev-deck-section--reverse .ev-deck-image {
        order: 1 !important;
    }
}

/* === SPECIFICATIONS MODERNES - GRILLE === */
.ev-specs-modern {
    background: #141414 !important;
    padding: 80px 20px !important;
}

.ev-specs-modern h2 {
    text-align: center !important;
    font-family: "Bebas Neue", "Impact", sans-serif !important;
    font-size: clamp(28px, 4vw, 42px) !important;
    color: #ffffff !important;
    margin: 0 0 50px 0 !important;
    letter-spacing: 2px !important;
}

.ev-specs-grid {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 20px !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
}

.ev-spec-item {
    background: rgba(255, 255, 255, 0.03) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 12px !important;
    padding: 25px 20px !important;
    text-align: center !important;
    transition: all 0.3s ease !important;
}

.ev-spec-item:hover {
    background: rgba(255, 255, 255, 0.06) !important;
    border-color: rgba(251, 97, 59, 0.3) !important;
    transform: translateY(-3px) !important;
}

.ev-spec-icon {
    display: block !important;
    font-size: 28px !important;
    margin-bottom: 12px !important;
}

.ev-spec-label {
    display: block !important;
    font-size: 12px !important;
    color: rgba(255, 255, 255, 0.5) !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    margin-bottom: 8px !important;
}

.ev-spec-value {
    display: block !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    color: #ffffff !important;
}

@media (max-width: 991px) {
    .ev-specs-grid {
        grid-template-columns: repeat(3, 1fr) !important;
    }
}

@media (max-width: 768px) {
    .ev-specs-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 15px !important;
    }
    
    .ev-spec-item {
        padding: 20px 15px !important;
    }
    
    .ev-specs-modern {
        padding: 60px 15px !important;
    }
}

@media (max-width: 480px) {
    .ev-specs-grid {
        grid-template-columns: 1fr 1fr !important;
        gap: 10px !important;
    }
    
    .ev-spec-item {
        padding: 15px 10px !important;
    }
    
    .ev-spec-icon {
        font-size: 24px !important;
    }
    
    .ev-spec-value {
        font-size: 14px !important;
    }
}

/* === SPECIFICATIONS MINIMALISTES 2 COLONNES === */
.ev-specs-minimal {
    background: #0A0A0A !important;
    padding: 80px 20px !important;
}

.ev-specs-minimal h2 {
    text-align: center !important;
    font-family: "Bebas Neue", "Impact", sans-serif !important;
    font-size: clamp(28px, 4vw, 42px) !important;
    color: #ffffff !important;
    margin: 0 0 50px 0 !important;
    letter-spacing: 2px !important;
}

.ev-specs-columns {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 40px !important;
    max-width: 1000px !important;
    margin: 0 auto !important;
}

.ev-specs-col {
    display: flex !important;
    flex-direction: column !important;
}

.ev-spec-row {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 16px 0 !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
}

.ev-spec-row:last-child {
    border-bottom: none !important;
}

.ev-spec-name {
    font-size: 15px !important;
    color: rgba(255, 255, 255, 0.6) !important;
}

.ev-spec-val {
    font-size: 15px !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    text-align: right !important;
}

@media (max-width: 768px) {
    .ev-specs-columns {
        grid-template-columns: 1fr !important;
        gap: 0 !important;
    }
    
    .ev-specs-col:first-child .ev-spec-row:last-child {
        border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
    }
    
    .ev-specs-minimal {
        padding: 60px 20px !important;
    }
    
    .ev-spec-row {
        padding: 14px 0 !important;
    }
    
    .ev-spec-name,
    .ev-spec-val {
        font-size: 14px !important;
    }
}

/* === NAVIGATION ANCRES STICKY === */
.ev-section-nav {
    background: #0A0A0A !important;
    border-bottom: 1px solid rgba(255,255,255,0.08) !important;
    position: sticky !important;
    top: 0 !important;
    z-index: 100 !important;
    padding: 0 20px !important;
}

.ev-section-nav-inner {
    max-width: 1200px !important;
    margin: 0 auto !important;
    display: flex !important;
    gap: 8px !important;
    overflow-x: auto !important;
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
    padding: 12px 0 !important;
}

.ev-section-nav-inner::-webkit-scrollbar {
    display: none !important;
}

.ev-nav-link {
    flex-shrink: 0 !important;
    padding: 8px 16px !important;
    color: #888 !important;
    text-decoration: none !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    border-radius: 20px !important;
    background: transparent !important;
    transition: all 0.2s ease !important;
    white-space: nowrap !important;
}

.ev-nav-link:hover {
    color: #fff !important;
    background: rgba(255,255,255,0.05) !important;
}

.ev-nav-link.active {
    color: #fff !important;
    background: #FB613B !important;
}

@media (max-width: 768px) {
    .ev-section-nav {
        padding: 0 12px !important;
    }
    .ev-nav-link {
        padding: 6px 12px !important;
        font-size: 13px !important;
    }
}

/* === NAVIGATION ANCRES STICKY - DIABLO === */
.ev-sticky-nav {
    background: #0A0A0A !important;
    border-bottom: 1px solid rgba(255,255,255,0.08) !important;
    position: sticky !important;
    top: 0 !important;
    z-index: 100 !important;
    padding: 0 20px !important;
}

.ev-sticky-nav-inner {
    max-width: 1200px !important;
    margin: 0 auto !important;
    display: flex !important;
    gap: 8px !important;
    overflow-x: auto !important;
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
    padding: 12px 0 !important;
}

.ev-sticky-nav-inner::-webkit-scrollbar {
    display: none !important;
}

.ev-nav-link {
    flex-shrink: 0 !important;
    padding: 8px 16px !important;
    color: #888 !important;
    text-decoration: none !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    border-radius: 20px !important;
    background: transparent !important;
    transition: all 0.2s ease !important;
    white-space: nowrap !important;
}

.ev-nav-link:hover {
    color: #fff !important;
    background: rgba(255,255,255,0.05) !important;
}

.ev-nav-link.active {
    color: #fff !important;
    background: #FB613B !important;
}

@media (max-width: 768px) {
    .ev-sticky-nav {
        padding: 0 12px !important;
    }
    .ev-nav-link {
        padding: 6px 12px !important;
        font-size: 13px !important;
    }
}

/* === FIX NAVIGATION STICKY DIABLO === */
/* Override pour forcer sticky même avec parents overflow */
#product .ev-section-nav,
.ev-product-page .ev-section-nav,
body .ev-section-nav {
    position: -webkit-sticky !important;
    position: sticky !important;
    top: 0 !important;
    z-index: 9999 !important;
    background: #0A0A0A !important;
    border-bottom: 1px solid rgba(255,255,255,0.08) !important;
    width: 100% !important;
    left: 0 !important;
    right: 0 !important;
}

/* Centrer les liens */
.ev-section-nav-inner {
    max-width: 1200px !important;
    margin: 0 auto !important;
    display: flex !important;
    justify-content: center !important;
    gap: 8px !important;
    overflow-x: auto !important;
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
    padding: 12px 20px !important;
}

/* Mobile : aligner à gauche pour scroll horizontal */
@media (max-width: 768px) {
    .ev-section-nav-inner {
        justify-content: flex-start !important;
        padding: 10px 12px !important;
    }
}

/* === FIX OVERFLOW POUR STICKY NAV DIABLO === */
/* Neutraliser overflow sur les containers parents de la nav */
#product #description,
#product .tab-pane,
#product .tab-content,
#product .product-description,
.product-container,
.js-product-container,
#main,
#content,
.page-content,
#product,
.ev-product-page {
    overflow: visible !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
}

/* Si sticky ne fonctionne toujours pas, fallback JS avec fixed */
.ev-section-nav.is-fixed {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
}

/* === FIX POSITIONNEMENT STICKY NAV SOUS HEADER === */
/* Le header Evolve fait environ 70px desktop, 50px mobile */
#product .ev-section-nav,
.ev-product-page .ev-section-nav,
body .ev-section-nav {
    top: 70px !important;
}

@media (max-width: 991px) {
    #product .ev-section-nav,
    .ev-product-page .ev-section-nav,
    body .ev-section-nav {
        top: 50px !important;
    }
}

/* Si header a une classe spécifique, ajuster dynamiquement */
.header-top ~ #wrapper .ev-section-nav,
#header ~ #wrapper .ev-section-nav {
    top: 70px !important;
}

@media (max-width: 991px) {
    .header-top ~ #wrapper .ev-section-nav,
    #header ~ #wrapper .ev-section-nav {
        top: 50px !important;
    }
}

/* === FIX GRILLE 3 COLONNES FEATURES === */
.ev-features-section .ev-features-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 25px !important;
}

.ev-features-section .ev-feature-card {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
}

@media (max-width: 991px) {
    .ev-features-section .ev-features-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

@media (max-width: 576px) {
    .ev-features-section .ev-features-grid {
        grid-template-columns: 1fr !important;
    }
}

/* === SECTION PRÉSENTATION GALERIE + TEXTE === */
.ev-presentation-section {
    background: #0A0A0A !important;
}

.ev-presentation-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 40px !important;
    align-items: center !important;
}

.ev-gallery {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
}

.ev-gallery img {
    width: 100% !important;
    height: auto !important;
    border-radius: 8px !important;
    transition: transform 0.3s ease !important;
}

.ev-gallery img:hover {
    transform: scale(1.02) !important;
}

@media (max-width: 991px) {
    .ev-presentation-grid {
        grid-template-columns: 1fr !important;
        gap: 30px !important;
    }
    
    .ev-gallery {
        /* order: -1 !important; */
    }
}

@media (max-width: 576px) {
    .ev-gallery {
        grid-template-columns: 1fr !important;
    }
}

/* === TITRES H2 SECTIONS - STYLE UNIFORME ORANGE === */
.ev-product-page h2,
.ev-product-page .ev-section-title {
    text-align: center !important;
    color: #FB613B !important;
    font-size: 28px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 2px !important;
    padding: 40px 20px 30px !important;
    margin: 0 !important;
    background: transparent !important;
}

/* === HERO SUBTITLE - FINAL FIX === */
.ev-product-page .ev-hero-cover .ev-hero-overlay .ev-hero-subtitle {
    font-size: 18px !important;
    font-weight: 500 !important;
    color: #ffffff !important;
    text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.6) !important;
    max-width: 500px !important;
    letter-spacing: 0.5px !important;
    line-height: 1.4 !important;
    margin: 10px auto 25px !important;
    text-transform: none !important;
}

@media (min-width: 768px) {
    .ev-product-page .ev-hero-cover .ev-hero-overlay .ev-hero-subtitle {
        font-size: 20px !important;
    }
}

/* === CONTAINER GLOBAL === */
.ev-product-page .ev-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

/* === SECTION PRÉSENTATION === */
.ev-presentation-section {
    background: #0A0A0A;
    padding: 60px 20px;
}

.ev-presentation-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    align-items: center;
}

.ev-presentation-text {
    color: #B0B0B0;
    font-size: 16px;
    line-height: 1.8;
}

.ev-presentation-text p {
    margin-bottom: 20px;
}

.ev-presentation-text strong {
}

/* === CHECK LIST === */
.ev-check-list {
    list-style: none;
    padding: 0;
    margin: 20px 0;
}

.ev-check-list li {
    margin-bottom: 10px;
    padding-left: 25px;
    position: relative;
    color: #B0B0B0;
}

.ev-check {
    position: absolute;
    left: 0;
    color: #FB613B;
}

/* === RESPONSIVE === */
@media (max-width: 991px) {
    .ev-presentation-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }
}

/* === HERO SUBTITLE - FINAL FIX v2 === */
.ev-product-page .ev-hero-cover .ev-hero-overlay .ev-hero-subtitle {
    font-size: 20px !important;
    font-weight: 500 !important;
    color: #ffffff !important;
    text-shadow: 1px 1px 4px rgba(0, 0, 0, 0.7) !important;
    max-width: 550px !important;
    letter-spacing: 0.5px !important;
    line-height: 1.4 !important;
    margin: 10px auto 25px !important;
    text-transform: none !important;
}

@media (min-width: 768px) {
    .ev-product-page .ev-hero-cover .ev-hero-overlay .ev-hero-subtitle {
        font-size: 24px !important;
    }
}

/* === LIGHTBOX GALERIE === */
.ev-lightbox {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.95);
    z-index: 99999;
    justify-content: center;
    align-items: center;
}

.ev-lightbox.active {
    display: flex;
}

.ev-lightbox img {
    max-width: 90%;
    max-height: 90%;
    object-fit: contain;
    border-radius: 8px;
}

.ev-lightbox-close,
.ev-lightbox-prev,
.ev-lightbox-next {
    position: absolute;
    background: rgba(255, 255, 255, 0.1);
    border: none;
    font-size: 30px;
    cursor: pointer;
    padding: 15px 20px;
    border-radius: 50%;
    transition: background 0.3s;
}

.ev-lightbox-close:hover,
.ev-lightbox-prev:hover,
.ev-lightbox-next:hover {
    background: rgba(255, 255, 255, 0.2);
}

.ev-lightbox-close {
    top: 20px;
    right: 20px;
}

.ev-lightbox-prev {
    left: 20px;
    top: 50%;
    transform: translateY(-50%);
}

.ev-lightbox-next {
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
}

.ev-gallery img {
    cursor: pointer;
    transition: transform 0.3s, opacity 0.3s;
}

.ev-gallery img:hover {
    transform: scale(1.03);
    opacity: 0.9;
}

/* === FIX H2 PRÉSENTATION === */
.ev-presentation-section h2,
.ev-product-page .ev-presentation-section h2,
#presentation h2 {
    text-align: center !important;
    color: #FB613B !important;
    font-size: 28px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 2px !important;
    padding: 0 20px 30px !important;
    margin: 0 0 20px 0 !important;
    background: transparent !important;
}

/* === HERO MAX-WIDTH 1600px === */
.ev-hero-cover {
    max-width: 1600px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    width: 100% !important;
    border-radius: 0 !important;
}

/* === SLIDER GALERIE === */
.ev-slider-section {
    background: #0A0A0A;
    padding: 60px 20px;
    overflow: hidden;
}

.ev-slider-container {
    position: relative;
    max-width: 1200px;
    margin: 0 auto;
    overflow: hidden;
}

.ev-slider-track {
    display: flex;
    transition: transform 0.5s ease;
}

.ev-slider-slide {
    min-width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.ev-slider-slide img {
    max-width: 100%;
    max-height: 600px;
    object-fit: contain;
    border-radius: 8px;
}

.ev-slider-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(255,255,255,0.1);
    border: none;
    font-size: 30px;
    padding: 15px 20px;
    cursor: pointer;
    border-radius: 50%;
    z-index: 10;
    transition: background 0.3s;
}

.ev-slider-btn:hover {
    background: rgba(255,255,255,0.2);
}

.ev-slider-prev { left: 20px; }
.ev-slider-next { right: 20px; }

.ev-slider-dots {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-top: 20px;
}

.ev-slider-dot {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: rgba(255,255,255,0.3);
    cursor: pointer;
    transition: background 0.3s;
}

.ev-slider-dot.active,
.ev-slider-dot:hover {
    background: #FB613B;
}

@media (max-width: 768px) {
    .ev-slider-btn {
        padding: 10px 15px;
        font-size: 20px;
    }
    
    .ev-slider-slide img {
        max-height: 400px;
    }
}

/* === GALERIE PRODUIT CAROUSEL (style homepage) === */
.ev-gallery-section {
    background: #0A0A0A;
    padding: 60px 0;
}

.ev-product-gallery {
    display: flex;
    gap: 10px;
    padding-left: 80px;
    padding-right: 80px;
    flex: 1;
    min-width: 0;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.ev-product-gallery::-webkit-scrollbar {
    display: none;
}

.ev-product-gallery img {
    flex: 0 0 350px;
    width: 350px;
    aspect-ratio: 1/1;
    object-fit: cover;
    border-radius: 12px;
    scroll-snap-align: center;
    transition: transform 0.3s ease;
    cursor: pointer;
}

.ev-product-gallery img:hover {
    transform: scale(1.02);
}

@media (max-width: 768px) {
    .ev-product-gallery {
        padding-left: 60px;
        padding-right: 60px;
    }
    
    .ev-product-gallery img {
        flex: 0 0 280px;
        width: 280px;
    }
    
    .ev-carousel__btn--prev { left: 10px; }
    .ev-carousel__btn--next { right: 10px; }
}

/* === FIX FOND CAROUSEL DIABLO === */
.ev-product-page .ev-community {
    background: #0A0A0A !important;
}

/* === FIX ESPACEMENT ROUTE / TESTS === */
.ev-product-page .ev-route-section {
    margin-bottom: 0 !important;
}

.ev-product-page .ev-tests-section {
    padding-top: 40px !important;
}

/* === CARD VERSION ROUTE ENRICHIE === */
.ev-route-card {
    max-width: 1000px;
    margin: 0 auto 20px;
    padding: 0 20px;
}

.ev-route-card-content {
    display: flex;
    align-items: center;
    gap: 40px;
    background: linear-gradient(135deg, #141414 0%, #1a1a1a 100%);
    border: 1px solid #2a2a2a;
    border-radius: 16px;
    padding: 40px;
    position: relative;
    overflow: hidden;
}

.ev-route-card-content::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, #FB613B, #ff8c66);
}

.ev-route-card-text {
    flex: 1;
}

.ev-route-badge {
    display: inline-block;
    background: rgba(251, 97, 59, 0.15);
    color: #FB613B;
    padding: 6px 14px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1px;
    margin-bottom: 15px;
}

.ev-route-card h2 {
    font-size: 24px !important;
    margin: 0 0 15px !important;
    text-align: left !important;
    padding: 0 !important;
}

.ev-route-card p {
    color: #b0b0b0;
    line-height: 1.7;
    margin: 0 0 20px;
    font-size: 15px;
}

.ev-route-features {
    list-style: none;
    padding: 0;
    margin: 0 0 25px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
}

.ev-route-features li {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #d0d0d0;
    font-size: 14px;
}

.ev-route-features .ev-check {
    color: #FB613B;
    font-weight: bold;
}

.ev-route-card-icon {
    flex: 0 0 120px;
    width: 120px;
    height: 120px;
    background: rgba(251, 97, 59, 0.1);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.ev-route-card-icon svg {
    width: 60px;
    height: 60px;
    color: #FB613B;
}

@media (max-width: 768px) {
    .ev-route-card-content {
        flex-direction: column;
        text-align: center;
        padding: 30px 20px;
    }
    
    .ev-route-card h2 {
        text-align: center !important;
    }
    
    .ev-route-features {
        grid-template-columns: 1fr;
        text-align: left;
    }
    
    .ev-route-card-icon {
        order: -1;
        width: 80px;
        height: 80px;
    }
    
    .ev-route-card-icon svg {
        width: 40px;
        height: 40px;
    }
}

/* === FIX CARD VERSION ROUTE === */
.ev-route-card {
    margin-top: 40px !important;
}

.ev-route-features {
    padding-left: 20px !important;
}

.ev-route-card .ev-btn--primary {
    color: #ffffff !important;
    background: #FB613B !important;
}

.ev-route-card .ev-btn--primary:hover {
    background: transparent !important;
    color: #FB613B !important;
    border: 2px solid #FB613B !important;
}

/* === FIX LISTE FEATURES ROUTE === */
.ev-route-card .ev-route-features {
    margin-left: 0 !important;
    padding-left: 0 !important;
}

.ev-route-card .ev-route-features li {
    padding-left: 0 !important;
    margin-left: 0 !important;
}

.ev-route-card-text {
    padding-left: 10px !important;
}

/* === FIX AGRESSIF LISTE FEATURES === */
.ev-route-card-content .ev-route-card-text ul.ev-route-features {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 0 25px 0 !important;
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 12px !important;
}

.ev-route-card-content .ev-route-card-text ul.ev-route-features li {
    display: flex !important;
    align-items: flex-start !important;
    gap: 10px !important;
    color: #d0d0d0 !important;
    font-size: 14px !important;
    padding: 0 !important;
    margin: 0 !important;
    text-indent: 0 !important;
}

.ev-route-card-content .ev-route-card-text ul.ev-route-features li::before {
    display: none !important;
}

/* === UNIFORMISATION LARGEURS SECTIONS === */
.ev-product-page .ev-section-nav,
.ev-product-page .ev-stats-section,
.ev-product-page .ev-presentation-section,
.ev-product-page .ev-features-section,
.ev-product-page .ev-deck-section,
.ev-product-page .ev-battery-section,
.ev-product-page .ev-route-card,
.ev-product-page .ev-tests-section,
.ev-product-page .ev-video-section,
.ev-product-page .ev-specs-section,
.ev-product-page .ev-faq-section,
.ev-product-page .ev-community {
    width: 80% !important;
    max-width: 1600px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* Hero plus large */
.ev-product-page .ev-hero,
.ev-product-page .ev-product-header--hero {
    width: 100% !important;
    max-width: 1800px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* H2 plus gros (+50%) */
.ev-product-page h2 {
    font-size: 42px !important;
}

@media (max-width: 768px) {
    .ev-product-page h2 {
        font-size: 28px !important;
    }
    
    .ev-product-page .ev-section-nav,
    .ev-product-page .ev-stats-section,
    .ev-product-page .ev-presentation-section,
    .ev-product-page .ev-features-section,
    .ev-product-page .ev-deck-section,
    .ev-product-page .ev-battery-section,
    .ev-product-page .ev-route-card,
    .ev-product-page .ev-tests-section,
    .ev-product-page .ev-video-section,
    .ev-product-page .ev-specs-section,
    .ev-product-page .ev-faq-section,
    .ev-product-page .ev-community {
        width: 95% !important;
    }
}

/* Hero image positionnée plus haut */
.ev-product-page .ev-hero img,
.ev-product-page .ev-product-header--hero img {
    object-position: center top !important;
}

/* === FIX HERO 2000px + IMAGE REMONTEE === */
.ev-product-page .ev-hero,
.ev-product-page .ev-product-header--hero {
    max-width: 2000px !important;
}

.ev-product-page .ev-hero img,
.ev-product-page .ev-product-header--hero img {
    object-position: center calc(50% - 100px) !important;
}

/* === FIX HERO BACKGROUND POSITION === */
.ev-product-page .ev-hero-cover {
    background-position: center calc(50% - 100px) !important;
}

/* === FIX HERO COVER 1800px === */
.ev-product-page .ev-hero-cover {
    max-width: 1800px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* === FORCE TOUS H2 42px === */
.ev-product-page h2,
.ev-product-page .ev-presentation-section h2,
.ev-product-page .ev-container h2,
.ev-product-page .ev-deck-text h2,
.ev-product-page .ev-stats-section h2,
.ev-product-page .ev-features-section h2,
.ev-product-page .ev-battery-section h2,
.ev-product-page .ev-route-card h2,
.ev-product-page .ev-tests-section h2,
.ev-product-page .ev-specs-section h2,
.ev-product-page .ev-faq-section h2,
.ev-product-page .ev-community h2 {
    font-size: 42px !important;
    font-weight: 700 !important;
}

@media (max-width: 768px) {
    .ev-product-page h2,
    .ev-product-page .ev-presentation-section h2,
    .ev-product-page .ev-container h2,
    .ev-product-page .ev-deck-text h2 {
        font-size: 28px !important;
    }
}

/* === FIX CAROUSEL DIABLO - IDENTIQUE HOMEPAGE === */
.ev-product-page .ev-community {
    width: 100% !important;
    max-width: 100% !important;
    padding: 60px 0 !important;
    overflow: visible !important;
}

.ev-product-page .ev-community__gallery,
.ev-product-page .ev-diablo-gallery {
    display: flex !important;
    gap: 10px !important;
    padding-left: 80px !important;
    padding-right: 80px !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
}

.ev-product-page .ev-community__gallery a,
.ev-product-page .ev-diablo-gallery a {
    flex: 0 0 350px !important;
    display: block !important;
    overflow: hidden !important;
    border-radius: 12px !important;
    scroll-snap-align: center !important;
    transition: transform 0.3s ease, opacity 0.3s ease !important;
}

.ev-product-page .ev-community__gallery img,
.ev-product-page .ev-diablo-gallery img {
    width: 100% !important;
    aspect-ratio: 1/1 !important;
    object-fit: cover !important;
    border-radius: 12px !important;
}

/* === FIX SECTIONS - PAS DE 80%, JUSTE MAX-WIDTH === */
.ev-product-page .ev-section-nav,
.ev-product-page .ev-stats-section,
.ev-product-page .ev-presentation-section,
.ev-product-page .ev-features-section,
.ev-product-page .ev-deck-section,
.ev-product-page .ev-battery-section,
.ev-product-page .ev-route-card,
.ev-product-page .ev-tests-section,
.ev-product-page .ev-video-section,
.ev-product-page .ev-specs-section,
.ev-product-page .ev-faq-section {
    width: 100% !important;
    max-width: 1600px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Carousel full width */
.ev-product-page .ev-community {
    width: 100% !important;
    max-width: 100% !important;
}

/* Fix coins arrondis images carousel */
.ev-product-page .ev-diablo-gallery a,
.ev-product-page .ev-community__gallery a {
    border-radius: 16px !important;
    overflow: hidden !important;
}

.ev-product-page .ev-diablo-gallery img,
.ev-product-page .ev-community__gallery img {
    border-radius: 16px !important;
}

/* === FORCE COINS ARRONDIS CAROUSEL DIABLO === */
.ev-diablo-gallery img,
.ev-community__gallery.ev-diablo-gallery img,
section.ev-community .ev-diablo-gallery img {
    border-radius: 12px !important;
    overflow: hidden !important;
}

.ev-diablo-gallery a,
.ev-community__gallery.ev-diablo-gallery a,
section.ev-community .ev-diablo-gallery a {
    border-radius: 12px !important;
    overflow: hidden !important;
    display: block !important;
}

/* === FIX COINS ARRONDIS AVEC TRANSFORM === */
.ev-diablo-gallery a,
.ev-community__gallery.ev-diablo-gallery a,
section.ev-community .ev-diablo-gallery a {
    border-radius: 12px !important;
    -webkit-clip-path: inset(0 round 12px) !important;
    clip-path: inset(0 round 12px) !important;
}

.ev-diablo-gallery img,
.ev-community__gallery.ev-diablo-gallery img,
section.ev-community .ev-diablo-gallery img {
    border-radius: 12px !important;
}

/* ========================================
 * FICHE PRODUIT EVOLVE - Style V1
 * Préfixe : evolve-style-*
 * Janvier 2026
 * ======================================== */

/* === FORCE DESCRIPTION PLEINE LARGEUR === */
.elementor-widget-product-description:has(#evolve-style-fiche-produit) {
    position: relative;
    width: 100vw !important;
    left: 50% !important;
    right: 50% !important;
    margin-left: -50vw !important;
    margin-right: -50vw !important;
    max-width: none !important;
}

.elementor-widget-product-description .elementor-widget-container:has(#evolve-style-fiche-produit) {
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 20px;
}

/* === CONTAINER PRINCIPAL === */
#evolve-style-fiche-produit {
    font-family: "Manrope", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    color: var(--evolve-text, #fff);
    background: var(--evolve-dark, #0a0a0a);
    line-height: 1.6;
    padding: 40px 0;
}

.evolve-style-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.evolve-style-section { margin: 50px 0; }

/* === TYPOGRAPHIE === */
.evolve-style-h2 {
    font-size: 28px;
    font-weight: 700;
    text-align: center;
    margin: 0 0 15px 0;
    color: #fff !important;
    text-transform: uppercase;
    letter-spacing: 2px;
}

.evolve-style-subtitle {
    text-align: center;
    color: var(--evolve-orange, #FB613B);
    font-size: 16px;
    font-weight: 700;
    margin: 0 0 40px 0;
    text-transform: uppercase;
}

/* === INTRO === */
.evolve-style-intro {
    max-width: 900px;
    margin: 0 auto 40px;
    padding: 25px 30px;
    background: var(--evolve-dark-card, #1a1a1a);
    border-radius: var(--radius-lg, 12px);
    border-left: 4px solid var(--evolve-orange, #FB613B);
}

.evolve-style-intro p { margin: 0; font-size: 17px; line-height: 1.7; }
.evolve-style-intro strong { color: var(--evolve-orange, #FB613B); }

/* === GRILLE INFOS === */
.evolve-style-info-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
}

.evolve-style-info-card {
    background: var(--evolve-dark-card, #1a1a1a);
    border-radius: var(--radius-lg, 12px);
    padding: 15px 18px;
    border: 1px solid var(--evolve-border, #2a2a2a);
    transition: var(--transition-base, all 0.3s ease);
}

.evolve-style-info-card.evolve-style-full-width { grid-column: 1 / -1; }

.evolve-style-info-card:hover {
    transform: translateY(-4px);
    border-color: var(--evolve-orange, #FB613B);
    box-shadow: 0 8px 25px rgba(251, 97, 59, 0.15);
}

.evolve-style-card-header {
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 2px solid var(--evolve-orange, #FB613B);
}

.evolve-style-card-title {
    font-size: 15px;
    font-weight: 700;
    color: var(--evolve-orange, #FB613B);
    margin: 0;
    text-transform: uppercase;
}

.evolve-style-card-content { font-size: 14px; }
.evolve-style-card-content ul { margin: 8px 0; padding-left: 18px; }
.evolve-style-card-content li { margin: 5px 0; }
.evolve-style-card-content strong { color: var(--evolve-orange, #FB613B); }

.evolve-style-chip {
    display: inline-block;
    padding: 4px 12px;
    margin: 3px 5px 3px 0;
    background: var(--evolve-dark-secondary, #111);
    border: 1px solid var(--evolve-border, #2a2a2a);
    border-radius: 20px;
    font-size: 13px;
}

/* === STATS === */
.evolve-style-stats-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin: 30px 0;
}

.evolve-style-stat-card {
    background: var(--evolve-dark-card, #1a1a1a);
    border-radius: var(--radius-lg, 12px);
    padding: 25px 20px;
    text-align: center;
    border: 1px solid var(--evolve-border, #2a2a2a);
    transition: var(--transition-base, all 0.3s ease);
}

.evolve-style-stat-card:hover {
    transform: translateY(-4px);
    border-color: var(--evolve-orange, #FB613B);
}

.evolve-style-stat-value {
    font-size: 36px;
    font-weight: 700;
    color: var(--evolve-orange, #FB613B);
    margin: 0 0 5px 0;
}

.evolve-style-stat-label {
    font-size: 14px;
    font-weight: 600;
    text-transform: uppercase;
    margin: 0 0 8px 0;
}

.evolve-style-stat-desc {
    font-size: 13px;
    color: var(--evolve-text-muted, #a0a0a0);
    margin: 0;
}

/* === DESCRIPTION COLONNES === */
.evolve-style-all-desc {
    display: flex;
    flex-wrap: wrap;
    gap: 24px 40px;
    margin: 30px 0;
}

.evolve-style-all-desc > .evolve-style-desc-col { flex: 0 0 calc(50% - 20px); }

.evolve-style-desc-col h3 {
    font-size: 20px;
    font-weight: 700;
    color: var(--evolve-orange, #FB613B);
    margin: 0 0 12px 0;
}

.evolve-style-desc-col p {
    margin: 0;
    font-size: 15px;
    line-height: 1.7;
}

/* === TABLEAU === */
.evolve-style-table-wrapper { width: 100%; overflow-x: auto; }

.evolve-style-tech-table {
    width: 100%;
    border-collapse: collapse;
    background: var(--evolve-dark-card, #1a1a1a);
    border-radius: var(--radius-lg, 12px);
    overflow: hidden;
}

.evolve-style-tech-table thead {
    background: linear-gradient(135deg, var(--evolve-orange, #FB613B), var(--evolve-orange-hover, #e5552f));
}

.evolve-style-tech-table th {
    padding: 14px 12px;
    text-align: center;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 14px;
}

.evolve-style-tech-table tbody tr { border-bottom: 1px solid var(--evolve-border, #2a2a2a); }
.evolve-style-tech-table tbody tr:nth-child(even) { background: var(--evolve-dark-secondary, #111); }
.evolve-style-tech-table tbody tr:hover { background: rgba(251, 97, 59, 0.1); }
.evolve-style-tech-table td { padding: 12px 10px; text-align: center; }
.evolve-style-tech-table td strong { color: var(--evolve-orange, #FB613B); }

/* === VIDEO === */
.evolve-style-video-section { margin: 50px 0; }

.evolve-style-video-container {
    position: relative;
    width: 100%;
    max-width: 900px;
    margin: 0 auto;
    padding-bottom: 56.25%;
    height: 0;
    border-radius: var(--radius-lg, 12px);
    overflow: hidden;
}

.evolve-style-video-container iframe {
    position: absolute;
    top: 0; left: 0;
    width: 100%; height: 100%;
    border: none;
}

/* === FAQ === */
.evolve-style-faq-container {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}

.evolve-style-faq-item {
    background: var(--evolve-dark-card, #1a1a1a);
    border-radius: var(--radius-lg, 12px);
    padding: 20px;
    border: 1px solid var(--evolve-border, #2a2a2a);
    transition: var(--transition-base, all 0.3s ease);
}

.evolve-style-faq-item:hover {
    transform: translateY(-4px);
    border-color: var(--evolve-orange, #FB613B);
}

.evolve-style-faq-question {
    font-size: 15px;
    font-weight: 700;
    color: var(--evolve-orange, #FB613B);
    margin: 0 0 12px 0;
    padding-bottom: 12px;
    border-bottom: 2px solid var(--evolve-orange, #FB613B);
}

.evolve-style-faq-answer { font-size: 14px; line-height: 1.6; }
.evolve-style-faq-answer p { margin: 0; }
.evolve-style-faq-answer strong { color: var(--evolve-orange, #FB613B); }

/* === RESPONSIVE === */
@media (max-width: 991px) {
    .evolve-style-info-grid { grid-template-columns: 1fr; }
    .evolve-style-stats-grid { grid-template-columns: repeat(2, 1fr); }
    .evolve-style-all-desc > .evolve-style-desc-col { flex: 0 0 100%; }
}

@media (max-width: 768px) {
    .evolve-style-h2 { font-size: 22px; }
    .evolve-style-subtitle { font-size: 14px; margin-bottom: 25px; }
    .evolve-style-section { margin: 30px 0; }
    .evolve-style-intro { padding: 18px 20px; }
    .evolve-style-faq-container { grid-template-columns: 1fr; }
    .evolve-style-stats-grid { grid-template-columns: 1fr; }
    .evolve-style-stat-value { font-size: 28px; }
}

/* === FALLBACK CLASSE JS === */
.elementor-widget-product-description.has-evolve-template {
    position: relative;
    width: 100vw !important;
    left: 50% !important;
    right: 50% !important;
    margin-left: -50vw !important;
    margin-right: -50vw !important;
    max-width: none !important;
}

.elementor-widget-product-description.has-evolve-template .elementor-widget-container {
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 20px;
}

/* === SECTION DESCRIPTION PLEINE LARGEUR === */
.elementor-element-desc_section {
    background: #000000 !important;
    padding: 0 !important;
    margin: 0 !important;
}

.elementor-element-desc_section .elementor-container {
    max-width: 100% !important;
}

.elementor-element-desc_col {
    padding: 0 !important;
}

.elementor-element-desc_col .elementor-widget-container {
    max-width: 1400px;
    margin: 0 auto;
    padding: 40px 20px;
}

/* === DIABLO RESPONSIVE IMPROVEMENTS - 19 Jan 2026 === */

/* --- HERO : Image alignée à gauche --- */
.ev-product-page .ev-hero-cover { background-position: left center !important; background-size: cover !important; }
@media (max-width: 768px) { .ev-product-page .ev-hero-cover { background-position: left top !important; height: 70vh !important; min-height: 400px !important; max-height: 600px !important; } }

/* --- STICKY NAV : Masquer sur mobile --- */
@media (max-width: 768px) { .ev-product-page .ev-section-nav { display: none !important; } }

/* --- CARDS : Largeur max en % pour mobile --- */
@media (max-width: 768px) { .ev-product-page .ev-card, .ev-product-page .ev-feature-card, .ev-product-page .ev-stat-au, .ev-product-page .ev-equipment-card, .ev-product-page .ev-accessory-card, .ev-product-page .ev-presentation-text, .ev-product-page .ev-battery-card, .ev-product-page .ev-test-card { max-width: 92% !important; margin-left: auto !important; margin-right: auto !important; } .ev-product-page .ev-stats-grid-au { max-width: 95% !important; margin: 0 auto !important; } }
@media (max-width: 480px) { .ev-product-page .ev-card, .ev-product-page .ev-feature-card, .ev-product-page .ev-stat-au, .ev-product-page .ev-equipment-card, .ev-product-page .ev-accessory-card, .ev-product-page .ev-presentation-text, .ev-product-page .ev-battery-card, .ev-product-page .ev-test-card { max-width: 90% !important; } }

/* --- GALERIE DÉCOUVREZ : Seulement 2ème image sur mobile --- */
@media (max-width: 768px) { .ev-product-page .ev-gallery { grid-template-columns: 1fr !important; gap: 0 !important; } .ev-product-page .ev-gallery img:nth-child(1), .ev-product-page .ev-gallery img:nth-child(3), .ev-product-page .ev-gallery img:nth-child(4) { display: none !important; } .ev-product-page .ev-gallery img:nth-child(2) { display: block !important; width: 100% !important; max-width: 92% !important; margin: 0 auto !important; border-radius: 12px !important; } }

/* --- PRÉSENTATION GRID et SPECS : Espacement mobile --- */
@media (max-width: 768px) { .ev-product-page .ev-presentation-grid { gap: 20px !important; padding: 0 15px !important; } .ev-product-page .ev-presentation-text { padding: 20px !important; text-align: left !important; } .ev-product-page .ev-specs-table { max-width: 95% !important; margin: 0 auto !important; } }

/* === CORRECTIONS UNIFORMITÉ MOBILE - 19 Jan 2026 v2 === */

/* Fix overflow horizontal (barre de scroll) */
.ev-product-page { /* overflow-x: hidden - DÉSACTIVÉ car casse sticky nav */ }

/* Uniformité largeur containers mobile */
@media (max-width: 768px) { .ev-product-page .ev-container { max-width: 100% !important; padding: 0 4% !important; } }

/* Correction galerie - image pleine largeur dans son container */
@media (max-width: 768px) { .ev-product-page .ev-gallery img:nth-child(2) { max-width: 100% !important; width: 100% !important; margin: 0 !important; } }

/* Sections avec padding uniforme mobile */
@media (max-width: 768px) { .ev-product-page .ev-deck-section, .ev-product-page .ev-features-section, .ev-product-page .ev-battery-section, .ev-product-page .ev-tests-section, .ev-product-page .ev-avis-section, .ev-product-page .ev-stats-section { padding-left: 4% !important; padding-right: 4% !important; } }

/* Contenus internes largeur 100% mobile */
@media (max-width: 768px) { .ev-product-page .ev-deck-content, .ev-product-page .ev-route-card, .ev-product-page .ev-features-grid, .ev-product-page .ev-battery-content, .ev-product-page .ev-tests-grid, .ev-product-page .ev-specs-columns, .ev-product-page .ev-community { max-width: 100% !important; width: 100% !important; } }

/* Override cards - pleine largeur (padding géré par parent) */
@media (max-width: 768px) { .ev-product-page .ev-card, .ev-product-page .ev-feature-card, .ev-product-page .ev-stat-au, .ev-product-page .ev-equipment-card, .ev-product-page .ev-accessory-card, .ev-product-page .ev-battery-card, .ev-product-page .ev-test-card, .ev-product-page .ev-presentation-text, .ev-product-page .ev-presentation-grid, .ev-product-page .ev-gallery, .ev-product-page .ev-specs-table { max-width: 100% !important; width: 100% !important; margin-left: 0 !important; margin-right: 0 !important; } }

/* Section présentation - padding uniforme */
@media (max-width: 768px) { .ev-product-page .ev-presentation-section { padding-left: 4% !important; padding-right: 4% !important; } .ev-product-page .ev-presentation-section .ev-container { padding: 0 !important; } }

/* Texte présentation - pas de padding interne supplémentaire */
@media (max-width: 768px) { .ev-product-page .ev-presentation-text { padding: 15px 0 !important; } .ev-product-page .ev-presentation-grid { padding: 0 !important; gap: 15px !important; } }

/* Stats grid - pleine largeur */
@media (max-width: 768px) { .ev-product-page .ev-stats-grid-au { max-width: 100% !important; width: 100% !important; margin: 0 !important; } }

/* Route card - même padding que les autres sections */
@media (max-width: 768px) { .ev-product-page .ev-route-card { max-width: 100% !important; width: 100% !important; margin-left: 0 !important; margin-right: 0 !important; padding-left: 4% !important; padding-right: 4% !important; box-sizing: border-box !important; } .ev-product-page .ev-route-card-content { max-width: 100% !important; width: 100% !important; } }



/* SUPPRIMÉ: #presentation .ev-presentation-grid flex - causait problème ordre */




/* === STICKY NAV - CORRECTION Z-INDEX === */
/* z-index réduit pour ne pas passer par dessus le header */
.ev-product-page .ev-section-nav,
.ev-sticky-nav {
    z-index: 99 !important;
}

/* Header doit être au dessus */
#header, .header, header {
    z-index: 1000 !important;
    position: relative !important;
}

/* ================================================================== */
/* === CORRECTIONS FINALES 20 JANVIER 2026 === */
/* ================================================================== */

/* === 1. SECTION DÉCOUVREZ - ORDRE CORRECT === */
/* Le h2 doit rester AU-DESSUS de la grille sur mobile */
/* La grille doit être en grid 2 colonnes sur desktop, 1 colonne sur mobile */

/* Desktop: grille 2 colonnes */
#presentation .ev-presentation-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 40px !important;
    align-items: center !important;
}

/* Mobile: 1 colonne, ordre DOM naturel (h2 puis gallery puis text) */
@media (max-width: 991px) {
    #presentation .ev-presentation-grid {
        display: block !important;
    }
    
    #presentation .ev-presentation-grid .ev-gallery {
        margin-bottom: 20px !important;
    }
}

/* === 2. ESPACEMENTS UNIFORMES ENTRE SECTIONS MOBILE === */
/* Même espacement que entre ev-avis-section et ev-deck-section--reverse */
@media (max-width: 991px) {
    .ev-product-page .ev-stats-section,
    .ev-product-page .ev-presentation-section,
    .ev-product-page .ev-features-section,
    .ev-product-page .ev-deck-section,
    .ev-product-page .ev-battery-section,
    .ev-product-page .ev-tests-section,
    .ev-product-page .ev-avis-section,
    .ev-product-page .ev-specs-minimal,
    .ev-product-page .labs-faq,
    .ev-product-page .ev-community {
        padding-top: 30px !important;
        padding-bottom: 30px !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }
    
    /* Route card - espacement compact */
    .ev-product-page .ev-route-card {
        margin-top: 20px !important;
        margin-bottom: 20px !important;
    }
}

/* === 3. RÉDUCTION GAPS INTERNES MOBILE === */
@media (max-width: 991px) {
    .ev-product-page .ev-features-grid,
    .ev-product-page .ev-tests-grid,
    .ev-product-page .ev-stats-grid-au {
        gap: 15px !important;
    }
    
    .ev-product-page .ev-deck-content {
        gap: 20px !important;
    }
}


/* ============================================
   EVENT BANNER - Week-end E-Skate (Style Evolve)
   ============================================ */
.ev-event-banner {
    padding: 60px 40px;
    background: #000000;
}

.ev-event-card {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    background: var(--evolve-dark-card, #1a1a1a);
    border-radius: 20px;
    overflow: hidden;
    text-decoration: none;
    color: #ffffff;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.4);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    border: 2px solid var(--evolve-orange, #FB613B);
}

.ev-event-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 60px rgba(251, 97, 59, 0.25);
}

.ev-event-image {
    position: relative;
    flex: 0 0 320px;
    min-height: 220px;
}

.ev-event-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.ev-event-date {
    position: absolute;
    top: 20px;
    left: 20px;
    background: var(--evolve-orange, #FB613B);
    padding: 12px 16px;
    border-radius: 12px;
    text-align: center;
    box-shadow: 0 4px 15px rgba(0,0,0,0.3);
}

.ev-event-day {
    display: block;
    font-family: "Protest strike", "Manrope", sans-serif;
    font-size: 28px;
    font-weight: 800;
    line-height: 1;
}

.ev-event-month {
    display: block;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.ev-event-content {
    flex: 1;
    padding: 30px 35px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 12px;
}

.ev-event-badge {
    display: inline-block;
    background: var(--evolve-orange, #FB613B);
    padding: 6px 14px;
    border-radius: 20px;
    font-size: 13px;
    font-weight: 600;
    width: fit-content;
}

.ev-event-title {
    font-family: "Protest strike", "Manrope", sans-serif;
    font-size: 26px;
    font-weight: 400;
    margin: 0;
    line-height: 1.2;
    color: var(--evolve-orange, #FB613B) !important;
}

.ev-event-content p {
    font-size: 15px;
    line-height: 1.6;
    margin: 0;
    color: var(--evolve-text-muted, #a0a0a0);
}

.ev-btn-event {
    display: inline-block;
    background: var(--evolve-orange, #FB613B);
    padding: 12px 24px;
    border-radius: 30px;
    font-weight: 700;
    font-size: 14px;
    width: fit-content;
    margin-top: 8px;
    transition: background 0.2s ease, transform 0.2s ease;
}

.ev-event-card:hover .ev-btn-event {
    background: var(--evolve-orange-hover, #C34B2E);
    transform: translateX(5px);
}

@media (max-width: 768px) {
    .ev-event-banner {
        padding: 30px 15px;
    }
    
    .ev-event-card {
        flex-direction: column;
        border-radius: 16px;
    }
    
    .ev-event-image {
        flex: none;
        height: 180px;
    }
    
    .ev-event-date {
        top: 15px;
        left: 15px;
        padding: 10px 14px;
    }
    
    .ev-event-day {
        font-size: 24px;
    }
    
    .ev-event-month {
        font-size: 11px;
    }
    
    .ev-event-content {
        padding: 20px;
        gap: 10px;
    }
    
    .ev-event-title {
        font-size: 20px;
    }
    
    .ev-event-content p {
        font-size: 14px;
    }
    
    .ev-btn-event {
        padding: 10px 20px;
        font-size: 13px;
    }
}


/* ============================================================
   FIX: Badge produit doublon inline (positionnement absolute cassé)
   Le widget 65e4dce est un doublon du b5e6b47, avec left:588px qui déborde.
   On masque le inline, on garde le stacked centré.
   ============================================================ */
.elementor-11170101 .elementor-element.elementor-element-65e4dce {
    display: none !important;
}





/* ========================================
 * FIX V2: Neutraliser TOUTES les règles globales
 * qui interfèrent avec le template accessoire
 * ======================================== */

/* Reset .ev-gallery globale (homepage = grid 2col, ici = thumbs 3col) */
#evolve-style-fiche-produit .ev-gallery-thumbs {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 10px !important;
}

/* Empêcher le masquage des images nth-child (règle page skate) */
#evolve-style-fiche-produit .ev-gallery-thumbs img,
#evolve-style-fiche-produit .ev-gallery-thumbs img:nth-child(1),
#evolve-style-fiche-produit .ev-gallery-thumbs img:nth-child(2),
#evolve-style-fiche-produit .ev-gallery-thumbs img:nth-child(3),
#evolve-style-fiche-produit .ev-gallery-thumbs img:nth-child(4) {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    aspect-ratio: 1 !important;
    object-fit: cover !important;
    object-position: center center !important;
    border-radius: 8px !important;
}

/* Reset image principale - pas de object-position décalé */
#evolve-style-fiche-produit .ev-gallery-main img,
.ev-product-page #evolve-style-fiche-produit .ev-gallery-main img,
.ev-product-page #evolve-style-fiche-produit .ev-hero img {
    width: 100% !important;
    height: auto !important;
    display: block !important;
    object-fit: contain !important;
    object-position: center center !important;
    max-width: 100% !important;
    margin: 0 !important;
    border-radius: 0 !important;
    aspect-ratio: auto !important;
}

/* Le conteneur .ev-gallery-main : pas de hauteur forcée */
#evolve-style-fiche-produit .ev-gallery-main {
    width: 100% !important;
    height: auto !important;
    overflow: hidden !important;
    border-radius: 8px !important;
    line-height: 0 !important;
    font-size: 0 !important;
    margin-bottom: 12px !important;
    background: none !important;
    min-height: auto !important;
    max-height: none !important;
}

/* .ev-hero-gallery : taille adaptée */
#evolve-style-fiche-produit .ev-hero-gallery {
    flex: 0 0 45% !important;
    max-width: 450px !important;
    min-height: auto !important;
}

/* Reset hero pour le template accessoire */
.ev-product-page #evolve-style-fiche-produit .ev-hero {
    min-height: auto !important;
    display: block !important;
    align-items: initial !important;
    overflow: visible !important;
    max-width: 100% !important;
    width: 100% !important;
}

@media (max-width: 768px) {
    #evolve-style-fiche-produit .ev-hero-gallery {
        flex: none !important;
        max-width: 100% !important;
        width: 100% !important;
    }
    #evolve-style-fiche-produit .ev-gallery-thumbs img:nth-child(1),
    #evolve-style-fiche-produit .ev-gallery-thumbs img:nth-child(2),
    #evolve-style-fiche-produit .ev-gallery-thumbs img:nth-child(3),
    #evolve-style-fiche-produit .ev-gallery-thumbs img:nth-child(4) {
        display: block !important;
    }
}


/* ========================================
 * TEMPLATE ACCESSOIRE V2 (v2_fevrier_2026)
 * Classes préfixées ev-hero, ev-gallery, ev-specs, ev-faq
 * Utilisé par ~93 produits accessoires Evolve
 * ======================================== */
.elementor-widget-container #evolve-style-fiche-produit,
.elementor-widget-container .evolve-style-container {
    display: block !important;
    width: 100% !important;
    float: none !important;
    clear: both !important;
}
#evolve-style-fiche-produit .ev-hero {
    padding: 40px 0 50px;
    border-bottom: 1px solid #333;
    margin-bottom: 40px;
}
#evolve-style-fiche-produit .ev-hero-header {
    display: block;
    width: 100%;
    text-align: center;
    margin-bottom: 35px;
}
#evolve-style-fiche-produit .ev-hero-header h1 {
    display: block !important;
    width: 100% !important;
    font-size: 42px !important;
    font-weight: 800 !important;
    letter-spacing: 2px !important;
    color: #fb613b !important;
    text-align: center !important;
    margin: 0 0 10px !important;
    float: none !important;
}
#evolve-style-fiche-produit .ev-hero-header p {
    display: block !important;
    width: 100% !important;
    font-size: 17px !important;
    color: #999 !important;
    margin: 0 !important;
    font-weight: 300 !important;
    text-align: center !important;
    float: none !important;
}
#evolve-style-fiche-produit .ev-hero-content {
    display: flex;
    gap: 40px;
    align-items: flex-start;
}
#evolve-style-fiche-produit .ev-hero-gallery {
    flex: 0 0 50%;
    max-width: 500px;
}
#evolve-style-fiche-produit .ev-gallery-main {
    width: 100%;
    border-radius: 8px;
    overflow: hidden;
    margin-bottom: 12px;
    cursor: pointer;
    line-height: 0;
    font-size: 0;
}
#evolve-style-fiche-produit .ev-gallery-main img {
    width: 100%;
    height: auto;
    display: block;
    transition: transform 0.3s ease;
}
#evolve-style-fiche-produit .ev-gallery-main:hover img {
    transform: scale(1.02);
}
#evolve-style-fiche-produit .ev-gallery-thumbs {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
}
#evolve-style-fiche-produit .ev-gallery-thumbs img {
    width: 100%;
    aspect-ratio: 1;
    object-fit: cover;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.3s ease;
    border: 2px solid transparent;
    display: block;
}
#evolve-style-fiche-produit .ev-gallery-thumbs img:hover {
    border-color: #fb613b;
    transform: translateY(-2px);
}
#evolve-style-fiche-produit .ev-hero-text {
    flex: 1;
}
#evolve-style-fiche-produit .ev-hero-text > p {
    font-size: 16px;
    line-height: 1.7;
    color: #ccc;
    margin: 0 0 25px;
    text-align: left !important;
}
#evolve-style-fiche-produit .ev-hero-features {
    list-style: none;
    padding: 0;
    margin: 0;
}
#evolve-style-fiche-produit .ev-hero-features li {
    padding: 12px 0;
    border-bottom: 1px solid #333;
    font-size: 15px;
}
#evolve-style-fiche-produit .ev-hero-features li:last-child {
    border-bottom: none;
}
#evolve-style-fiche-produit .ev-hero-features strong {
    color: #fb613b;
}
#evolve-style-fiche-produit .ev-lightbox {
    display: none;
    position: fixed;
    z-index: 9999;
    left: 0; top: 0;
    width: 100%; height: 100%;
    background: rgba(0,0,0,0.92);
    justify-content: center;
    align-items: center;
    cursor: pointer;
}
#evolve-style-fiche-produit .ev-lightbox.active { display: flex; }
#evolve-style-fiche-produit .ev-lightbox img {
    max-width: 90%;
    max-height: 85vh;
    object-fit: contain;
    border-radius: 8px;
}
#evolve-style-fiche-produit .ev-lightbox-close {
    position: fixed;
    top: 20px; right: 30px;
    font-size: 35px;
    cursor: pointer;
    z-index: 10000;
    line-height: 1;
}
#evolve-style-fiche-produit .ev-specs {
    padding: 50px 0;
    border-bottom: 1px solid #333;
    margin-bottom: 40px;
}
#evolve-style-fiche-produit .ev-specs h2 {
    font-size: 28px;
    font-weight: 700;
    color: #fb613b;
    text-align: center;
    margin: 0 0 35px;
    letter-spacing: 1px;
}
#evolve-style-fiche-produit .ev-specs-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    max-width: 800px;
    margin: 0 auto;
}
#evolve-style-fiche-produit .ev-specs-card {
    background: #1a1a1a;
    border-radius: 10px;
    padding: 25px;
    text-align: center;
    border: 1px solid #2a2a2a;
    transition: border-color 0.3s ease;
}
#evolve-style-fiche-produit .ev-specs-card:hover { border-color: #fb613b; }
#evolve-style-fiche-produit .ev-specs-card strong {
    display: block;
    font-size: 22px;
    color: #fb613b;
    margin-bottom: 8px;
}
#evolve-style-fiche-produit .ev-specs-card span { font-size: 14px; color: #999; }
#evolve-style-fiche-produit .ev-faq {
    padding: 50px 0;
    border-bottom: 1px solid #333;
    margin-bottom: 40px;
}
#evolve-style-fiche-produit .ev-faq__title {
    font-size: 28px;
    font-weight: 700;
    color: #fb613b;
    text-align: center;
    margin: 0 0 35px;
    letter-spacing: 1px;
}
#evolve-style-fiche-produit .ev-faq__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}
#evolve-style-fiche-produit .ev-faq__card {
    background: #1a1a1a;
    border-radius: 10px;
    padding: 25px;
    border: 1px solid #2a2a2a;
    transition: border-color 0.3s ease;
}
#evolve-style-fiche-produit .ev-faq__card:hover { border-color: #fb613b; }
#evolve-style-fiche-produit .ev-faq__card h3 {
    font-size: 15px;
    font-weight: 600;
    margin: 0 0 12px;
}
#evolve-style-fiche-produit .ev-faq__card p {
    font-size: 14px;
    line-height: 1.6;
    color: #999;
    margin: 0;
}
@media (max-width: 768px) {
    #evolve-style-fiche-produit .ev-hero { padding: 25px 0 30px; }
    #evolve-style-fiche-produit .ev-hero-header h1 { font-size: 28px !important; }
    #evolve-style-fiche-produit .ev-hero-content { flex-direction: column; gap: 25px; }
    #evolve-style-fiche-produit .ev-hero-gallery { max-width: 100%; }
    #evolve-style-fiche-produit .ev-specs-grid { grid-template-columns: 1fr; }
    #evolve-style-fiche-produit .ev-faq__grid { grid-template-columns: 1fr; }
}

/* ========================================
 * FIX GALERIE: Ajuster la taille à l'image
 * ======================================== */
#evolve-style-fiche-produit .ev-hero-gallery {
    flex: 0 0 auto !important;
    width: fit-content !important;
    max-width: 450px !important;
}
#evolve-style-fiche-produit .ev-gallery-main {
    width: 100% !important;
    max-width: 450px !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    margin-bottom: 12px !important;
    cursor: pointer !important;
    line-height: 0 !important;
    font-size: 0 !important;
    background: transparent !important;
    padding: 0 !important;
}
#evolve-style-fiche-produit .ev-gallery-main img {
    width: 100% !important;
    height: auto !important;
    display: block !important;
    border-radius: 8px !important;
    background: transparent !important;
    object-fit: cover !important;
}
@media (max-width: 768px) {
    #evolve-style-fiche-produit .ev-hero-gallery {
        width: 100% !important;
        max-width: 100% !important;
    }
    #evolve-style-fiche-produit .ev-gallery-main {
        max-width: 100% !important;
    }
}

/* ========================================
 * TEMPLATE ACCESSOIRE - CLASSES SPECIFIQUES
 * Préfixe ev-acc- pour éviter les conflits
 * ======================================== */

/* Container principal */
#evolve-style-fiche-produit .ev-acc-wrapper {
    display: block !important;
    width: 100% !important;
    max-width: 900px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    background: transparent !important;
    clear: both !important;
    float: none !important;
}

/* Section hero */
.ev-acc-hero {
    display: block !important;
    width: 100% !important;
    padding: 40px 0 50px !important;
    border-bottom: 1px solid #333 !important;
    margin-bottom: 40px !important;
    background: transparent !important;
    min-height: auto !important;
    position: relative !important;
    overflow: visible !important;
    align-items: initial !important;
    flex-direction: initial !important;
}

/* Header (titre + sous-titre) */
.ev-acc-header {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    margin-bottom: 35px !important;
    background: transparent !important;
    float: none !important;
    clear: both !important;
}

.ev-acc-title {
    display: block !important;
    width: 100% !important;
    font-size: 42px !important;
    font-weight: 800 !important;
    letter-spacing: 2px !important;
    color: #fb613b !important;
    text-align: center !important;
    margin: 0 0 10px !important;
    padding: 0 !important;
    background: transparent !important;
    float: none !important;
    line-height: 1.2 !important;
}

.ev-acc-subtitle {
    display: block !important;
    width: 100% !important;
    font-size: 17px !important;
    color: #999 !important;
    margin: 0 !important;
    padding: 0 !important;
    font-weight: 300 !important;
    text-align: center !important;
    background: transparent !important;
    float: none !important;
    line-height: 1.4 !important;
}

/* Contenu principal (galerie + texte) */
.ev-acc-content {
    display: flex !important;
    gap: 40px !important;
    align-items: flex-start !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    flex-wrap: nowrap !important;
}

/* Galerie d'images */
.ev-acc-gallery {
    flex: 0 0 400px !important;
    width: 400px !important;
    max-width: 400px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
}

/* Image principale */
.ev-acc-main-image {
    display: block !important;
    width: 100% !important;
    max-width: 400px !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    margin: 0 0 12px 0 !important;
    padding: 0 !important;
    cursor: pointer !important;
    line-height: 0 !important;
    font-size: 0 !important;
    background: transparent !important;
    position: relative !important;
}

.ev-acc-main-image img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    border-radius: 8px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    object-fit: cover !important;
    transition: transform 0.3s ease !important;
    vertical-align: top !important;
    border: none !important;
}

.ev-acc-main-image:hover img {
    transform: scale(1.02) !important;
}

/* Miniatures */
.ev-acc-thumbs {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 10px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
}

.ev-acc-thumbs img {
    display: block !important;
    width: 100% !important;
    aspect-ratio: 1 !important;
    object-fit: cover !important;
    border-radius: 8px !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    border: 2px solid transparent !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    vertical-align: top !important;
}

.ev-acc-thumbs img:hover {
    border-color: #fb613b !important;
    transform: translateY(-2px) !important;
}

/* Zone de texte */
.ev-acc-text {
    flex: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
}

.ev-acc-description {
    font-size: 16px !important;
    line-height: 1.7 !important;
    color: #ccc !important;
    margin: 0 0 25px !important;
    padding: 0 !important;
    text-align: left !important;
    background: transparent !important;
}

/* Liste des caractéristiques */
.ev-acc-features {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
}

.ev-acc-features li {
    display: block !important;
    padding: 12px 0 !important;
    border-bottom: 1px solid #333 !important;
    font-size: 15px !important;
    color: #fff !important;
    margin: 0 !important;
    background: transparent !important;
    line-height: 1.4 !important;
}

.ev-acc-features li:last-child {
    border-bottom: none !important;
}

.ev-acc-features strong {
    color: #fb613b !important;
}

/* Mobile */
@media (max-width: 768px) {
    .ev-acc-hero {
        padding: 25px 0 30px !important;
    }
    
    .ev-acc-title {
        font-size: 28px !important;
    }
    
    .ev-acc-content {
        flex-direction: column !important;
        gap: 25px !important;
    }
    
    .ev-acc-gallery {
        flex: none !important;
        width: 100% !important;
        max-width: 100% !important;
    }
    
    .ev-acc-main-image {
        max-width: 100% !important;
    }
}

/* ========================================
 * FIX: Supprimer espaces verticaux images
 * ======================================== */

/* Conteneur galerie : hauteur ajustée au contenu */
.ev-acc-gallery {
    flex: 0 0 400px !important;
    width: 400px !important;
    max-width: 400px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    height: fit-content !important;
    min-height: auto !important;
    align-self: flex-start !important;
}

/* Image principale : supprimer tous les espaces */
.ev-acc-main-image {
    display: block !important;
    width: 100% !important;
    max-width: 400px !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
    cursor: pointer !important;
    line-height: 0 !important;
    font-size: 0 !important;
    background: transparent !important;
    position: relative !important;
    height: auto !important;
    min-height: auto !important;
}

/* Image elle-même : collée aux bords */
.ev-acc-main-image img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    border-radius: 8px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    object-fit: cover !important;
    transition: transform 0.3s ease !important;
    vertical-align: top !important;
    border: none !important;
    line-height: 0 !important;
    font-size: 0 !important;
}

/* Conteneur miniatures : espacement réduit */
.ev-acc-thumbs {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 8px !important;
    margin: 8px 0 0 0 !important;
    padding: 0 !important;
    background: transparent !important;
    height: auto !important;
    min-height: auto !important;
}

/* Miniatures : suppression des espaces */
.ev-acc-thumbs img {
    display: block !important;
    width: 100% !important;
    aspect-ratio: 1 !important;
    object-fit: cover !important;
    border-radius: 6px !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    border: 2px solid transparent !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    vertical-align: top !important;
    line-height: 0 !important;
    font-size: 0 !important;
}

/* Zone de texte : alignement haut */
.ev-acc-text {
    flex: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    align-self: flex-start !important;
    height: auto !important;
    min-height: auto !important;
}

/* Mobile : même principe */
@media (max-width: 768px) {
    .ev-acc-gallery {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: auto !important;
    }
    
    .ev-acc-main-image {
        max-width: 100% !important;
        margin: 0 !important;
    }
    
    .ev-acc-thumbs {
        margin: 8px 0 0 0 !important;
    }
}


/* ========================================
 * LARGEUR PAGES ACCESSOIRES - Alignement homepage
 * Basé sur les standards Evolve (1200px)
 * ======================================== */

/* Conteneur principal accessoire - même largeur que homepage */
#evolve-style-fiche-produit .ev-acc-wrapper {
    display: block !important;
    width: 100% !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding: 0 20px !important;
    background: transparent !important;
    clear: both !important;
    float: none !important;
}

/* Section hero - largeur étendue */
.ev-acc-hero {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 40px 0 50px !important;
    border-bottom: 1px solid #333 !important;
    margin-bottom: 40px !important;
    background: transparent !important;
    min-height: auto !important;
    position: relative !important;
    overflow: visible !important;
    align-items: initial !important;
    flex-direction: initial !important;
}

/* Contenu principal - largeur optimisée */
.ev-acc-content {
    display: flex !important;
    gap: 60px !important;
    align-items: flex-start !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    flex-wrap: nowrap !important;
}

/* Galerie - largeur augmentée pour être plus proportionnelle */
.ev-acc-gallery {
    flex: 0 0 500px !important;
    width: 500px !important;
    max-width: 500px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    height: fit-content !important;
    min-height: auto !important;
    align-self: flex-start !important;
}

/* Image principale - largeur augmentée */
.ev-acc-main-image {
    display: block !important;
    width: 100% !important;
    max-width: 500px !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
    cursor: pointer !important;
    line-height: 0 !important;
    font-size: 0 !important;
    background: transparent !important;
    position: relative !important;
    height: auto !important;
    min-height: auto !important;
}

/* Zone de texte - flex augmenté */
.ev-acc-text {
    flex: 1 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    align-self: flex-start !important;
    height: auto !important;
    min-height: auto !important;
}

/* Responsive - mobile */
@media (max-width: 768px) {
    #evolve-style-fiche-produit .ev-acc-wrapper {
        padding: 0 15px !important;
    }
    
    .ev-acc-content {
        flex-direction: column !important;
        gap: 25px !important;
    }
    
    .ev-acc-gallery {
        flex: none !important;
        width: 100% !important;
        max-width: 100% !important;
    }
    
    .ev-acc-main-image {
        max-width: 100% !important;
    }
}

/* Responsive - tablette */
@media (max-width: 1024px) and (min-width: 769px) {
    .ev-acc-content {
        gap: 40px !important;
    }
    
    .ev-acc-gallery {
        flex: 0 0 400px !important;
        width: 400px !important;
        max-width: 400px !important;
    }
    
    .ev-acc-main-image {
        max-width: 400px !important;
    }
}

/* ========================================
   SECTION COMPATIBILITE - GRILLE 2 COLONNES
   (avec specificite augmentee)
   ======================================== */

#evolve-style-fiche-produit .ev-compat-section {
    padding: 50px 0;
    border-bottom: 1px solid #333;
}

#evolve-style-fiche-produit .ev-compat-section h2 {
    font-size: 28px;
    font-weight: 700;
    text-align: center;
    margin: 0 0 10px;
    text-transform: uppercase;
    letter-spacing: 1px;
}

#evolve-style-fiche-produit .ev-compat-intro {
    font-size: 16px;
    color: #999;
    text-align: center;
    margin: 0 0 35px;
    font-weight: 300;
}

#evolve-style-fiche-produit .ev-compat-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 25px;
}

#evolve-style-fiche-produit .ev-compat-card {
    background: linear-gradient(145deg, #1a1a1a 0%, #0d0d0d 100%);
    border-radius: 16px;
    padding: 30px;
    border: 1px solid #333;
    transition: all 0.3s ease;
}

#evolve-style-fiche-produit .ev-compat-card:hover {
    border-color: #fb613b;
    transform: translateY(-3px);
}

#evolve-style-fiche-produit .ev-compat-card h3 {
    font-size: 20px;
    font-weight: 700;
    color: #fb613b;
    margin: 0 0 8px;
}

#evolve-style-fiche-produit .ev-compat-card .compat-desc {
    font-size: 14px;
    color: #999;
    margin: 0 0 20px;
}

#evolve-style-fiche-produit .ev-compat-card ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

#evolve-style-fiche-produit .ev-compat-card li {
    padding: 10px 0;
    color: #ccc;
    font-size: 14px;
    border-bottom: 1px solid #2a2a2a;
}

#evolve-style-fiche-produit .ev-compat-card li:last-child {
    border-bottom: none;
}

#evolve-style-fiche-produit .ev-compat-card li strong {
    color: #fb613b;
}

@media (max-width: 768px) {
    #evolve-style-fiche-produit .ev-compat-grid {
        grid-template-columns: 1fr;
    }
    
    #evolve-style-fiche-produit .ev-compat-card {
        padding: 20px;
    }
}

/* === TITRE SECTION VIDEO === */
.ev-video-section h2 {
    color: #fb613b !important;
    font-size: 28px;
    font-weight: 700;
    text-align: center;
    margin: 0 0 30px;
    text-transform: uppercase;
    letter-spacing: 1px;
}

/* === BLACK EDITION === */
.labs-product-card--black:hover {
    border-color: rgba(148, 163, 184, 0.4) !important;
    box-shadow: 0 25px 50px rgba(0, 0, 0, 0.4), 0 0 40px rgba(148, 163, 184, 0.1) !important;
}
.labs-product-card--black .labs-product-price-current {
    color: #94a3b8 !important;
}
.labs-product-card--black .labs-product-title a { color: #94a3b8 !important; }
.labs-product-card--black .labs-product-cta:hover {
    background: #94a3b8 !important;
    border-color: #94a3b8 !important;
    color: #1a1a1a !important;
}
.labs-product-badge--black {
    background: linear-gradient(135deg, #94a3b8 0%, #64748b 100%) !important;
    color: #1a1a1a !important;
}


/* Titre COMPATIBILITE orange - Fiches accessoires */
#evolve-style-fiche-produit .ev-compat-section h2 { color: #FB613B !important; }
