        /* ==========================================
           SERVICES PAGE - STYLES SPÉCIFIQUES
           ========================================== */

        /* Variables CSS Globales pour éviter les répétitions */
        :root {
            /* Couleurs principales */
            --primary: #00A8E8;
            --secondary: #00D4AA;
            --dark: #0D1B2A;
            --dark-alt: #1E3A5F;
            --text: #64748B;
            --text-dark: #475569;
            --text-light: #F8FAFC;
            --white: #FFFFFF;

            /* Gradients réutilisables */
            --gradient-primary: linear-gradient(135deg, #00A8E8, #00D4AA);
            --gradient-dark: linear-gradient(135deg, #0D1B2A, #1E3A5F, #0D1B2A);
            --gradient-text: linear-gradient(135deg, #00A8E8, #00D4AA, #00A8E8);

            /* Ombres standardisées */
            --shadow-sm: 0 2px 10px rgba(0,0,0,0.05);
            --shadow-md: 0 10px 40px rgba(0,0,0,0.08);
            --shadow-lg: 0 20px 60px rgba(0,0,0,0.12);
            --shadow-xl: 0 25px 60px rgba(0,0,0,0.15);
            --shadow-primary: 0 10px 40px rgba(0,168,232,0.2);
            --shadow-secondary: 0 10px 30px rgba(0,212,170,0.3);

            /* Espacements */
            --spacing-xs: 0.5rem;
            --spacing-sm: 1rem;
            --spacing-md: 1.5rem;
            --spacing-lg: 2rem;
            --spacing-xl: 2.5rem;
            --spacing-2xl: 3rem;

            /* Border radius */
            --radius-sm: 8px;
            --radius-md: 12px;
            --radius-lg: 20px;
            --radius-xl: 24px;
            --radius-full: 50px;

            /* Transitions */
            --transition-base: all 0.3s ease;
            --transition-slow: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);

            /* Typographie responsive */
            --font-size-hero: clamp(2rem, 6vw + 1rem, 5rem);
            --font-size-h2: clamp(1.75rem, 4vw + 0.5rem, 3rem);
            --font-size-h3: clamp(1.3rem, 3vw, 1.75rem);
            --font-size-subtitle: clamp(1rem, 2vw + 0.5rem, 1.5rem);
            --font-size-body: clamp(0.95rem, 1.5vw, 1rem);

            /* Line heights */
            --line-height-tight: 1.2;
            --line-height-normal: 1.6;
            --line-height-relaxed: 1.8;
        }

        /* Classes Utilitaires Réutilisables */

        /* Classes de base pour les cartes */
        .card-base {
            background: var(--white);
            padding: var(--spacing-xl);
            border-radius: var(--radius-lg);
            box-shadow: var(--shadow-md);
            transition: var(--transition-base);
            position: relative;
            overflow: hidden;
        }

        .card-base:hover {
            transform: translateY(-8px);
            box-shadow: var(--shadow-lg);
        }

        /* Classes pour la typographie */
        .text-muted { color: var(--text); }
        .text-dark { color: var(--text-dark); }
        .text-light { color: var(--text-light); }
        .text-primary { color: var(--primary); }
        .text-secondary { color: var(--secondary); }

        /* Classes pour les espacements */
        .mb-xs { margin-bottom: var(--spacing-xs); }
        .mb-sm { margin-bottom: var(--spacing-sm); }
        .mb-md { margin-bottom: var(--spacing-md); }
        .mb-lg { margin-bottom: var(--spacing-lg); }
        .mb-xl { margin-bottom: var(--spacing-xl); }
        .mb-2xl { margin-bottom: var(--spacing-2xl); }

        .p-xs { padding: var(--spacing-xs); }
        .p-sm { padding: var(--spacing-sm); }
        .p-md { padding: var(--spacing-md); }
        .p-lg { padding: var(--spacing-lg); }
        .p-xl { padding: var(--spacing-xl); }
        .p-2xl { padding: var(--spacing-2xl); }

        /* Classes pour les gradients et fonds */
        .bg-gradient-primary { background: var(--gradient-primary); }
        .bg-gradient-dark { background: var(--gradient-dark); }
        .bg-primary { background: var(--primary); }
        .bg-secondary { background: var(--secondary); }

        /* Classes pour les bordures */
        .border-primary { border: 1px solid rgba(0, 168, 232, 0.1); }
        .border-secondary { border: 1px solid rgba(0, 212, 170, 0.1); }
        .rounded-sm { border-radius: var(--radius-sm); }
        .rounded-md { border-radius: var(--radius-md); }
        .rounded-lg { border-radius: var(--radius-lg); }
        .rounded-xl { border-radius: var(--radius-xl); }
        .rounded-full { border-radius: var(--radius-full); }

        /* Classes pour les listes de fonctionnalités */
        .feature-list {
            list-style: none;
            padding: 0;
            margin-top: var(--spacing-sm);
        }

        .feature-list li {
            color: var(--primary);
            margin: 0.7rem 0;
            display: flex;
            align-items: center;
        }

        .feature-list li::before {
            content: '✓';
            margin-right: var(--spacing-xs);
            font-weight: 700;
        }

        /* Classes pour les boutons CTA */
        .btn-cta {
            display: inline-flex;
            align-items: center;
            gap: 10px;
            padding: 14px 28px;
            background: var(--gradient-primary);
            color: white;
            text-decoration: none;
            border-radius: var(--radius-full);
            font-weight: 600;
            transition: var(--transition-base);
            box-shadow: var(--shadow-secondary);
        }

        .btn-cta:hover {
            transform: translateX(5px);
            box-shadow: 0 6px 30px rgba(0, 212, 170, 0.5);
        }

        .btn-cta-full {
            width: 100%;
            justify-content: center;
        }

        .btn-cta-large {
            padding: 1.2rem 2.5rem;
            font-size: 1.1rem;
        }

        /* Classes pour les titres de cartes */
        .card-title {
            color: var(--dark-alt);
            font-size: 1.8rem;
            margin-bottom: var(--spacing-sm);
            font-weight: 600;
        }

        .card-description {
            color: var(--text);
            line-height: var(--line-height-relaxed);
            margin-bottom: var(--spacing-md);
        }

        /* Classes pour les hauteurs de ligne */
        .lh-tight { line-height: var(--line-height-tight); }
        .lh-normal { line-height: var(--line-height-normal); }
        .lh-relaxed { line-height: var(--line-height-relaxed); }

        /* Hero Section Spectaculaire */
        .services-hero-spectacular {
            position: relative;
            min-height: 100vh;
            display: flex;
            align-items: center;
            justify-content: center;
            overflow: hidden;
            background: linear-gradient(135deg, #0D1B2A 0%, #1E3A5F 50%, #0D1B2A 100%);
            padding: 80px 20px 120px;
        }

        .hero-particles-bg {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            pointer-events: none;
            overflow: hidden;
        }

        .particle {
            position: absolute;
            background: var(--gradient-primary);
            border-radius: 50%;
            opacity: 0.6;
            animation: float-particle 15s infinite ease-in-out;
        }

        @keyframes float-particle {
            0%, 100% { transform: translateY(0) translateX(0) scale(1); }
            25% { transform: translateY(-30px) translateX(20px) scale(1.1); }
            50% { transform: translateY(-60px) translateX(-10px) scale(0.9); }
            75% { transform: translateY(-30px) translateX(-20px) scale(1.05); }
        }

        /* Animation unifiée pour les slides */
        @keyframes slideIn {
            from { opacity: 0; transform: translateX(var(--slide-from, -100px)); }
            to { opacity: 1; transform: translateX(0); }
        }
        .slide-left { animation: slideIn 0.8s ease-out; --slide-from: -100px; }
        .slide-right { animation: slideIn 0.8s ease-out; --slide-from: 100px; }

        @keyframes bounceIn {
            0% {
                opacity: 0;
                transform: scale(0.3);
            }
            50% {
                opacity: 1;
                transform: scale(1.05);
            }
            70% {
                transform: scale(0.9);
            }
            100% {
                transform: scale(1);
            }
        }

        /* Effets de survol professionnels */
        .app-feature-card, .video-service-card, .drone-service-box {
            transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
        }

        .app-feature-card:hover svg,
        .video-service-card:hover svg,
        .drone-service-box:hover svg {
            transform: scale(1.1) rotate(5deg);
            transition: transform 0.3s ease;
        }

        /* Classes unifiées pour les cartes - Réduction de 80% du code dupliqué */
        .feature-card-base,
        .drone-card-base {
            /* Utilise la classe card-base définie plus haut */
        }

        .video-card-base {
            background: rgba(255,255,255,0.05);
            backdrop-filter: blur(10px);
            border: 1px solid rgba(255,255,255,0.1);
            padding: var(--spacing-lg);
            border-radius: var(--radius-md);
            transition: var(--transition-base);
        }

        .video-card-base:hover {
            transform: translateY(-5px);
            background: rgba(255,255,255,0.08);
            box-shadow: var(--shadow-primary);
        }

        /* Classe pour les effets de flou décoratifs */
        .decorative-blur {
            position: absolute;
            top: -50px;
            right: -50px;
            width: 150px;
            height: 150px;
            border-radius: 50%;
            filter: blur(40px);
            opacity: 0.08;
        }

        /* Classe pour les icônes de service */
        .service-icon-wrapper {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 70px;
            height: 70px;
            border-radius: 18px;
            margin-bottom: 1.5rem;
        }

        /* Amélioration de l'accessibilité et de la lisibilité */
        section[id*="details"] h2 {
            position: relative;
            animation: slideInFromLeft 0.8s ease-out;
        }

        section[id*="details"] p {
            animation: slideInFromRight 0.8s ease-out 0.2s backwards;
        }

        /* Amélioration accessibilité et ergonomie */

        /* Smooth scrolling */
        html {
            scroll-behavior: smooth;
        }

        /* Focus visible pour accessibilité */
        *:focus-visible {
            outline: 3px solid #00A8E8;
            outline-offset: 3px;
        }

        /* Réduction des animations pour préférences utilisateur */
        @media (prefers-reduced-motion: reduce) {
            * {
                animation-duration: 0.01ms !important;
                animation-iteration-count: 1 !important;
                transition-duration: 0.01ms !important;
            }
        }

        /* Amélioration du contraste pour accessibilité */
        @media (prefers-contrast: high) {
            .service-description-3d,
            .detail-text-content p,
            .step-description,
            .faq-answer p {
                color: #334155;
            }
        }

        /* Responsive design amélioré pour cartes spécifiques */
        @media (max-width: 768px) {
            .app-feature-card,
            .video-service-card,
            .drone-service-box {
                margin-bottom: 1.5rem;
            }

            div[style*="grid-template-columns"] {
                grid-template-columns: 1fr !important;
            }

            h2[style*="font-size"] {
                font-size: clamp(1.5rem, 5vw, 2.5rem) !important;
            }

            h3[style*="font-size"] {
                font-size: clamp(1.2rem, 4vw, 2rem) !important;
            }

            h4[style*="font-size"] {
                font-size: clamp(1.1rem, 3vw, 1.5rem) !important;
            }
        }

        /* Classes utilitaires pour grilles inline */
        .responsive-grid-320 {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr));
            gap: clamp(1.5rem, 3vw, 2rem);
        }

        .responsive-grid-300 {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr));
            gap: clamp(1.5rem, 3vw, 2rem);
        }

        .responsive-grid-350 {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(min(100%, 350px), 1fr));
            gap: clamp(1.5rem, 3vw, 2rem);
        }

        .responsive-grid-200 {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(min(100%, 200px), 1fr));
            gap: clamp(1.5rem, 3vw, 2rem);
        }

        @media (max-width: 767px) {
            .responsive-grid-320,
            .responsive-grid-300,
            .responsive-grid-350,
            .responsive-grid-200 {
                grid-template-columns: 1fr;
                gap: 1.5rem;
            }
        }

        @media (min-width: 768px) and (max-width: 1023px) {
            .responsive-grid-320,
            .responsive-grid-300,
            .responsive-grid-350 {
                grid-template-columns: repeat(2, 1fr);
            }

            .responsive-grid-200 {
                grid-template-columns: repeat(3, 1fr);
            }
        }

        /* Styles pour sections avec padding inline */
        .section-spacing {
            padding: clamp(60px, 10vw, 100px) 0;
        }

        .mb-4 {
            margin-bottom: clamp(3rem, 6vw, 4rem);
        }

        .mb-3 {
            margin-bottom: clamp(2rem, 4vw, 3rem);
        }

        /* Styles pour les cartes vidéo et drone avec styles inline */
        .app-feature-card,
        .video-service-card,
        .drone-service-box {
            transition: all 0.3s ease;
        }

        .app-feature-card:hover,
        .video-service-card:hover,
        .drone-service-box:hover {
            transform: translateY(-5px);
        }

        /* Responsive pour sections avec styles inline spécifiques */
        @media (max-width: 767px) {
            /* Hero sections avec grandes typos inline */
            [style*="font-size: 4.5rem"],
            [style*="font-size: 3.5rem"],
            [style*="font-size: 3rem"] {
                font-size: clamp(1.75rem, 6vw, 2.5rem) !important;
            }

            [style*="font-size: 2.5rem"] {
                font-size: clamp(1.5rem, 5vw, 2rem) !important;
            }

            [style*="font-size: 1.8rem"],
            [style*="font-size: 1.5rem"] {
                font-size: clamp(1.2rem, 4vw, 1.5rem) !important;
            }

            [style*="font-size: 1.3rem"] {
                font-size: clamp(1.1rem, 3vw, 1.3rem) !important;
            }

            /* Ajustement des paddings inline */
            [style*="padding: 3rem"],
            [style*="padding: 4rem"] {
                padding: clamp(2rem, 4vw, 3rem) !important;
            }

            [style*="padding: 2rem"] {
                padding: clamp(1.5rem, 3vw, 2rem) !important;
            }

            /* Ajustement des gaps inline */
            [style*="gap: 3rem"] {
                gap: clamp(2rem, 4vw, 3rem) !important;
            }

            [style*="gap: 2rem"] {
                gap: clamp(1.5rem, 3vw, 2rem) !important;
            }

            /* Dimensions des icônes circulaires inline (avantages) */
            .advantage-card div[style*="width: 80px"],
            .advantage-card div[style*="width: 60px"] {
                width: clamp(50px, 12vw, 70px) !important;
                height: clamp(50px, 12vw, 70px) !important;
            }

            /* Sections avec hauteur fixe */
            [style*="height: 500px"],
            [style*="height: 400px"] {
                height: auto !important;
                min-height: 300px !important;
                padding: clamp(3rem, 8vw, 5rem) 0 !important;
            }

            /* Grid de 2 colonnes sur mobile devient 1 colonne */
            [style*="grid-template-columns: 1fr 2fr"],
            [style*="grid-template-columns: repeat(3, 1fr)"] {
                grid-template-columns: 1fr !important;
            }
        }

        @media (min-width: 768px) and (max-width: 1023px) {
            /* Tablette: réduction modérée des grandes typos */
            [style*="font-size: 4.5rem"] {
                font-size: clamp(2.5rem, 5vw, 3.5rem) !important;
            }

            [style*="grid-template-columns: repeat(3, 1fr)"] {
                grid-template-columns: repeat(2, 1fr) !important;
            }
        }

        .hero-geometric-shapes {
            position: absolute;
            width: 100%;
            height: 100%;
            opacity: 0.1;
        }

        .geometric-shape {
            position: absolute;
            border: 2px solid #00D4AA;
            animation: rotate-shape 20s infinite linear;
        }

        @media (max-width: 767px) {
            .geometric-shape {
                width: clamp(60px, 15vw, 120px) !important;
                height: clamp(60px, 15vw, 120px) !important;
            }

            .hero-particles-bg {
                opacity: 0.5;
            }
        }

        @keyframes rotate-shape {
            from { transform: rotate(0deg); }
            to { transform: rotate(360deg); }
        }

        .hero-content-spectacular {
            position: relative;
            z-index: 10;
            text-align: center;
            max-width: 900px;
            padding: 0 15px;
            width: 100%;
        }

        .hero-title-spectacular {
            font-size: var(--font-size-hero);
            font-weight: 800;
            margin-bottom: clamp(1rem, 3vw, 1.5rem);
            background: var(--gradient-text);
            background-size: 200% auto;
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
            animation: gradient-text-flow 3s linear infinite;
            line-height: var(--line-height-tight);
        }

        @keyframes gradient-text-flow {
            0% { background-position: 0% center; }
            100% { background-position: 200% center; }
        }

        .hero-subtitle-spectacular {
            font-size: var(--font-size-subtitle);
            color: var(--text-light);
            margin-bottom: clamp(2rem, 4vw, 3rem);
            line-height: var(--line-height-normal);
            opacity: 0;
            animation: fadeInUp 1s ease-out 0.3s forwards;
            max-width: 100%;
        }

        .scroll-indicator-modern {
            position: absolute;
            bottom: clamp(20px, 5vw, 40px);
            left: 50%;
            transform: translateX(-50%);
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 10px;
            color: #00D4AA;
            font-size: clamp(0.75rem, 1.5vw, 0.9rem);
            font-weight: 600;
            text-transform: uppercase;
            letter-spacing: 2px;
            animation: bounce 2s infinite;
            z-index: 10;
        }

        .scroll-indicator-modern svg {
            width: 24px;
            height: 24px;
            stroke: currentColor;
        }

        /* Services Grid Modern */
        .services-grid-spectacular {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr));
            gap: clamp(1.5rem, 3vw, 2rem);
            padding: clamp(40px, 8vw, 80px) 0;
        }

        .service-card-3d {
            position: relative;
            background: #FFFFFF;
            border-radius: 20px;
            padding: clamp(1.5rem, 4vw, 2.5rem);
            box-shadow: 0 10px 40px rgba(13, 27, 42, 0.1);
            transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
            overflow: hidden;
            display: flex;
            flex-direction: column;
        }

        .service-card-3d::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 5px;
            background: linear-gradient(90deg, #00A8E8, #00D4AA);
            transform: scaleX(0);
            transform-origin: left;
            transition: transform 0.4s ease;
        }

        .service-card-3d:hover::before {
            transform: scaleX(1);
        }

        .service-card-3d:hover {
            transform: translateY(-15px) rotateX(5deg);
            box-shadow: 0 25px 60px rgba(0, 168, 232, 0.25);
        }

        .service-badge {
            position: absolute;
            top: clamp(15px, 3vw, 20px);
            right: clamp(15px, 3vw, 20px);
            background: var(--gradient-primary);
            color: white;
            padding: clamp(5px, 1vw, 6px) clamp(12px, 2vw, 16px);
            border-radius: 20px;
            font-size: clamp(0.7rem, 1.2vw, 0.75rem);
            font-weight: 700;
            text-transform: uppercase;
            letter-spacing: clamp(0.5px, 0.2vw, 1px);
            box-shadow: 0 4px 15px rgba(0, 212, 170, 0.4);
        }

        .service-icon-3d {
            width: clamp(60px, 12vw, 80px);
            height: clamp(60px, 12vw, 80px);
            margin-bottom: clamp(1rem, 2vw, 1.5rem);
            animation: float 3s ease-in-out infinite;
        }

        .service-title-3d {
            font-size: clamp(1.3rem, 3vw, 1.75rem);
            font-weight: 700;
            color: #1E3A5F;
            margin-bottom: clamp(0.75rem, 2vw, 1rem);
            line-height: 1.3;
        }

        .service-description-3d {
            color: #64748B;
            line-height: 1.7;
            margin-bottom: clamp(1rem, 2vw, 1.5rem);
            font-size: clamp(0.95rem, 1.5vw, 1rem);
        }

        .service-features-list {
            list-style: none;
            padding: 0;
            margin: clamp(1rem, 2vw, 1.5rem) 0;
            flex-grow: 1;
        }

        .service-features-list li {
            position: relative;
            padding-left: clamp(28px, 5vw, 30px);
            margin-bottom: clamp(10px, 2vw, 12px);
            color: #475569;
            font-size: clamp(0.9rem, 1.5vw, 0.95rem);
            line-height: 1.5;
        }

        .service-features-list li::before {
            content: '✓';
            position: absolute;
            left: 0;
            color: #00D4AA;
            font-weight: 700;
            font-size: 1.2rem;
        }

        .service-cta-button {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 10px;
            padding: clamp(12px, 2vw, 14px) clamp(24px, 4vw, 28px);
            background: var(--gradient-primary);
            color: white;
            text-decoration: none;
            border-radius: 50px;
            font-weight: 600;
            font-size: clamp(0.95rem, 1.5vw, 1rem);
            transition: all 0.3s ease;
            box-shadow: 0 4px 20px rgba(0, 168, 232, 0.3);
            min-height: 44px;
            min-width: 44px;
            text-align: center;
        }

        .service-cta-button:hover {
            transform: translateX(5px);
            box-shadow: 0 6px 30px rgba(0, 212, 170, 0.5);
        }

        @media (max-width: 767px) {
            .service-cta-button {
                width: 100%;
            }
        }

        /* Detail Sections Alternating */
        .service-detail-alternating {
            padding: clamp(60px, 12vw, 100px) 0;
            position: relative;
        }

        .service-detail-alternating:nth-child(even) {
            background: #F8FAFC;
        }

        .detail-content-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(min(100%, 450px), 1fr));
            gap: clamp(40px, 8vw, 60px);
            align-items: center;
        }

        .detail-content-grid.reverse {
            direction: rtl;
        }

        .detail-content-grid.reverse > * {
            direction: ltr;
        }

        .detail-image-parallax {
            position: relative;
            border-radius: 20px;
            overflow: hidden;
            box-shadow: 0 20px 60px rgba(13, 27, 42, 0.15);
        }

        .detail-image-parallax img {
            width: 100%;
            height: auto;
            display: block;
            transition: transform 0.6s ease;
        }

        .detail-image-parallax:hover img {
            transform: scale(1.05);
        }

        .mockup-device {
            position: relative;
            width: 100%;
            max-width: 400px;
            margin: 0 auto;
        }

        .detail-text-content h2 {
            font-size: clamp(1.75rem, 4vw, 2.5rem);
            color: #1E3A5F;
            margin-bottom: clamp(1rem, 2vw, 1.5rem);
            font-weight: 700;
            line-height: 1.3;
        }

        .detail-text-content p {
            color: #64748B;
            line-height: 1.8;
            margin-bottom: clamp(1.5rem, 3vw, 2rem);
            font-size: clamp(1rem, 1.5vw, 1.1rem);
        }

        /* Pricing Cards Glassmorphism */
        .pricing-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr));
            gap: clamp(1.5rem, 3vw, 2rem);
            margin-top: clamp(2rem, 4vw, 3rem);
        }

        .pricing-card-glass {
            background: rgba(255, 255, 255, 0.7);
            backdrop-filter: blur(10px);
            border-radius: 24px;
            padding: clamp(2rem, 4vw, 2.5rem);
            border: 1px solid rgba(255, 255, 255, 0.5);
            box-shadow: 0 8px 32px rgba(13, 27, 42, 0.1);
            transition: all 0.4s ease;
            position: relative;
            display: flex;
            flex-direction: column;
        }

        .pricing-card-glass:hover {
            transform: translateY(-10px);
            box-shadow: 0 20px 60px rgba(0, 168, 232, 0.2);
        }

        .pricing-card-glass.featured {
            background: linear-gradient(135deg, rgba(0, 168, 232, 0.1), rgba(0, 212, 170, 0.1));
            border: 2px solid #00D4AA;
        }

        .pricing-header h3 {
            font-size: clamp(1.3rem, 2.5vw, 1.5rem);
            color: #1E3A5F;
            margin-bottom: clamp(0.75rem, 1.5vw, 1rem);
            line-height: 1.3;
        }

        .pricing-amount {
            font-size: clamp(2rem, 5vw, 3rem);
            font-weight: 800;
            color: #00A8E8;
            margin-bottom: clamp(0.25rem, 1vw, 0.5rem);
            line-height: 1.1;
        }

        .pricing-period {
            color: #64748B;
            font-size: clamp(0.9rem, 1.5vw, 0.95rem);
        }

        /* Timeline Interactive */
        .process-timeline {
            position: relative;
            max-width: 1200px;
            margin: clamp(40px, 8vw, 80px) auto;
            padding: clamp(20px, 4vw, 40px) 0;
        }

        .timeline-horizontal {
            display: flex;
            justify-content: space-between;
            align-items: flex-start;
            position: relative;
            flex-wrap: wrap;
            gap: clamp(2rem, 4vw, 3rem);
        }

        .timeline-horizontal::before {
            content: '';
            position: absolute;
            top: 50px;
            left: 10%;
            right: 10%;
            height: 4px;
            background: linear-gradient(90deg, #00A8E8, #00D4AA);
            z-index: 1;
        }

        .timeline-step {
            position: relative;
            flex: 1;
            text-align: center;
            z-index: 2;
        }

        .step-number {
            width: clamp(80px, 15vw, 100px);
            height: clamp(80px, 15vw, 100px);
            border-radius: 50%;
            background: var(--gradient-primary);
            color: white;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: clamp(2rem, 4vw, 2.5rem);
            font-weight: 800;
            margin: 0 auto clamp(1rem, 2vw, 1.5rem);
            box-shadow: 0 8px 30px rgba(0, 168, 232, 0.4);
            transition: all 0.3s ease;
        }

        .timeline-step:hover .step-number {
            transform: scale(1.15) rotate(5deg);
            box-shadow: 0 12px 40px rgba(0, 212, 170, 0.6);
        }

        .step-title {
            font-size: clamp(1.1rem, 2vw, 1.3rem);
            font-weight: 700;
            color: #1E3A5F;
            margin-bottom: clamp(0.5rem, 1vw, 0.75rem);
            line-height: 1.3;
        }

        .step-description {
            color: #64748B;
            font-size: clamp(0.9rem, 1.5vw, 0.95rem);
            line-height: 1.6;
        }

        /* Technologies Stack */
        .tech-stack-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(min(100%, 150px), 1fr));
            gap: clamp(1.5rem, 3vw, 2rem);
            margin-top: clamp(2rem, 4vw, 3rem);
        }

        .tech-item {
            background: white;
            border-radius: 16px;
            padding: clamp(1.5rem, 3vw, 2rem);
            text-align: center;
            box-shadow: 0 4px 20px rgba(13, 27, 42, 0.08);
            transition: all 0.3s ease;
            position: relative;
            min-height: 44px;
        }

        .tech-item:hover {
            transform: translateY(-8px);
            box-shadow: 0 12px 40px rgba(0, 168, 232, 0.15);
        }

        .tech-logo-text {
            font-size: clamp(1.1rem, 2vw, 1.3rem);
            font-weight: 700;
            color: #1E3A5F;
            background: var(--gradient-primary);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
            line-height: 1.4;
        }

        /* Container responsive improvements */
        .container {
            width: 100%;
            max-width: 1200px;
            margin: 0 auto;
            padding: 0 clamp(15px, 3vw, 40px);
        }

        /* Section générale padding responsive */
        section {
            padding-left: clamp(15px, 3vw, 0);
            padding-right: clamp(15px, 3vw, 0);
        }

        /* Portfolio Gallery Filterable */
        .portfolio-filters {
            display: flex;
            justify-content: center;
            gap: clamp(0.75rem, 2vw, 1rem);
            margin-bottom: clamp(2rem, 4vw, 3rem);
            flex-wrap: wrap;
        }

        .filter-btn {
            padding: clamp(10px, 2vw, 12px) clamp(20px, 4vw, 28px);
            background: white;
            border: 2px solid #E2E8F0;
            border-radius: 50px;
            color: #64748B;
            font-weight: 600;
            font-size: clamp(0.9rem, 1.5vw, 1rem);
            cursor: pointer;
            transition: all 0.3s ease;
            min-height: 44px;
            min-width: 44px;
        }

        .filter-btn:hover,
        .filter-btn.active {
            background: var(--gradient-primary);
            color: white;
            border-color: transparent;
            box-shadow: 0 4px 20px rgba(0, 168, 232, 0.3);
        }

        .portfolio-grid {
            display: grid;
            grid-template-columns: repeat(auto-fill, minmax(min(100%, 320px), 1fr));
            gap: clamp(1.5rem, 3vw, 2rem);
        }

        .portfolio-item {
            position: relative;
            border-radius: 16px;
            overflow: hidden;
            box-shadow: 0 4px 20px rgba(13, 27, 42, 0.1);
            transition: all 0.3s ease;
            cursor: pointer;
        }

        .portfolio-item:hover {
            transform: translateY(-8px);
            box-shadow: 0 12px 40px rgba(13, 27, 42, 0.2);
        }

        .portfolio-item img {
            width: 100%;
            height: clamp(250px, 40vw, 300px);
            object-fit: cover;
            display: block;
        }

        /* Images et médias responsive */
        img, video, iframe {
            max-width: 100%;
            height: auto;
        }

        /* Aspect ratio pour vidéos */
        .video-container {
            position: relative;
            padding-bottom: 56.25%; /* 16:9 */
            height: 0;
            overflow: hidden;
        }

        .video-container iframe,
        .video-container video {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
        }

        .portfolio-overlay {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: linear-gradient(135deg, rgba(0, 168, 232, 0.9), rgba(0, 212, 170, 0.9));
            display: flex;
            align-items: center;
            justify-content: center;
            flex-direction: column;
            opacity: 0;
            transition: opacity 0.3s ease;
            color: white;
            padding: 2rem;
            text-align: center;
        }

        .portfolio-item:hover .portfolio-overlay {
            opacity: 1;
        }

        .portfolio-title {
            font-size: clamp(1.2rem, 2.5vw, 1.5rem);
            font-weight: 700;
            margin-bottom: clamp(0.3rem, 1vw, 0.5rem);
            line-height: 1.3;
        }

        .portfolio-category {
            font-size: clamp(0.9rem, 1.5vw, 0.95rem);
            opacity: 0.9;
        }

        /* Stats Counter */
        .stats-section {
            background: linear-gradient(135deg, #1E3A5F, #0D1B2A);
            padding: clamp(60px, 10vw, 80px) 0;
            margin: clamp(60px, 10vw, 80px) 0;
        }

        .stats-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(min(100%, 200px), 1fr));
            gap: clamp(2rem, 4vw, 3rem);
            text-align: center;
        }

        .stat-item {
            color: white;
        }

        .stat-number {
            font-size: clamp(2.5rem, 6vw, 3.5rem);
            font-weight: 800;
            background: var(--gradient-primary);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
            margin-bottom: clamp(0.3rem, 1vw, 0.5rem);
            line-height: 1.1;
        }

        .stat-label {
            font-size: clamp(1rem, 1.8vw, 1.1rem);
            opacity: 0.9;
            line-height: 1.4;
        }

        /* Amélioration des boutons et liens globaux */
        button, a, .service-cta-button, .filter-btn {
            touch-action: manipulation;
            -webkit-tap-highlight-color: rgba(0, 168, 232, 0.1);
        }

        /* Hover uniquement sur dispositifs avec pointeur précis */
        @media (hover: hover) and (pointer: fine) {
            .service-card-3d:hover,
            .pricing-card-glass:hover,
            .tech-item:hover,
            .portfolio-item:hover {
                transform: translateY(-10px);
            }
        }

        /* Sur mobile, réduire les effets hover */
        @media (hover: none) {
            .service-card-3d:active,
            .pricing-card-glass:active {
                transform: scale(0.98);
            }
        }

        /* FAQ Accordion */
        .faq-section {
            padding: clamp(60px, 10vw, 80px) 0;
            max-width: 900px;
            margin: 0 auto;
        }

        .faq-search {
            margin-bottom: clamp(2rem, 4vw, 3rem);
        }

        .faq-search-input {
            width: 100%;
            padding: clamp(16px, 3vw, 18px) clamp(20px, 4vw, 24px);
            border: 2px solid #E2E8F0;
            border-radius: 50px;
            font-size: clamp(1rem, 1.5vw, 1.05rem);
            transition: all 0.3s ease;
            min-height: 44px;
        }

        .faq-search-input:focus {
            outline: none;
            border-color: #00A8E8;
            box-shadow: 0 0 0 4px rgba(0, 168, 232, 0.1);
        }

        .faq-item {
            background: white;
            border-radius: 12px;
            margin-bottom: clamp(0.75rem, 1.5vw, 1rem);
            box-shadow: 0 2px 10px rgba(13, 27, 42, 0.05);
            overflow: hidden;
        }

        .faq-question {
            width: 100%;
            padding: clamp(1.2rem, 2.5vw, 1.5rem) clamp(1.5rem, 3vw, 2rem);
            background: none;
            border: none;
            display: flex;
            justify-content: space-between;
            align-items: center;
            gap: 1rem;
            cursor: pointer;
            font-size: clamp(1rem, 1.8vw, 1.1rem);
            font-weight: 600;
            color: #1E3A5F;
            text-align: left;
            transition: all 0.3s ease;
            min-height: 44px;
            line-height: 1.4;
        }

        .faq-question:hover {
            background: #F8FAFC;
        }

        .faq-icon {
            width: 24px;
            height: 24px;
            transition: transform 0.3s ease;
        }

        .faq-item.active .faq-icon {
            transform: rotate(180deg);
        }

        .faq-answer {
            max-height: 0;
            overflow: hidden;
            transition: max-height 0.3s ease, padding 0.3s ease;
            padding: 0 2rem;
        }

        .faq-item.active .faq-answer {
            max-height: 500px;
            padding: 0 2rem 1.5rem;
        }

        .faq-answer p {
            color: #64748B;
            line-height: 1.7;
            font-size: clamp(0.95rem, 1.5vw, 1rem);
        }

        /* Section Headers */
        .section-header {
            text-align: center;
            margin-bottom: clamp(3rem, 6vw, 4rem);
        }

        .section-label {
            display: inline-block;
            padding: clamp(6px, 1.5vw, 8px) clamp(16px, 3vw, 20px);
            background: linear-gradient(135deg, rgba(0, 168, 232, 0.1), rgba(0, 212, 170, 0.1));
            border-radius: 50px;
            color: #00A8E8;
            font-weight: 700;
            font-size: clamp(0.8rem, 1.5vw, 0.9rem);
            text-transform: uppercase;
            letter-spacing: clamp(1px, 0.3vw, 2px);
            margin-bottom: clamp(0.75rem, 1.5vw, 1rem);
        }

        .section-title {
            font-size: clamp(1.75rem, 4vw + 0.5rem, 3rem);
            color: #1E3A5F;
            font-weight: 800;
            margin-bottom: clamp(0.75rem, 1.5vw, 1rem);
            line-height: 1.2;
        }

        .section-description {
            font-size: clamp(1rem, 1.8vw, 1.2rem);
            color: #64748B;
            max-width: 700px;
            margin: 0 auto;
            line-height: 1.7;
        }

        /* Responsive Design */

        /* Desktop Large (1200px et plus) - Optimisations par défaut */
        @media (min-width: 1200px) {
            .container {
                max-width: 1200px;
                padding: 0 40px;
            }

            .services-grid-spectacular {
                grid-template-columns: repeat(2, 1fr);
            }
        }

        /* Desktop Standard (1024px - 1199px) */
        @media (min-width: 1024px) and (max-width: 1199px) {
            .container {
                padding: 0 30px;
            }

            .services-grid-spectacular {
                grid-template-columns: repeat(2, 1fr);
            }

            .detail-content-grid {
                gap: 50px;
            }
        }

        /* Tablette Paysage (900px - 1023px) */
        @media (min-width: 900px) and (max-width: 1023px) {
            .services-grid-spectacular {
                grid-template-columns: repeat(2, 1fr);
            }

            .pricing-grid {
                grid-template-columns: repeat(2, 1fr);
            }

            .stats-grid {
                grid-template-columns: repeat(2, 1fr);
            }
        }

        /* Tablette Portrait (768px - 899px) */
        @media (min-width: 768px) and (max-width: 899px) {
            .container {
                padding: 0 25px;
            }

            .services-grid-spectacular {
                grid-template-columns: repeat(2, 1fr);
            }

            .pricing-grid {
                grid-template-columns: repeat(2, 1fr);
            }

            .timeline-horizontal {
                flex-direction: column;
            }

            .timeline-horizontal::before {
                display: none;
            }

            .tech-stack-grid {
                grid-template-columns: repeat(3, 1fr);
            }
        }

        /* Tablette (jusqu'à 1023px) */
        @media (max-width: 1023px) {
            .detail-content-grid {
                grid-template-columns: 1fr;
            }

            .detail-content-grid.reverse {
                direction: ltr;
            }

            .hero-title-spectacular {
                font-size: clamp(2rem, 8vw, 3.5rem);
            }

            .service-card-3d:hover {
                transform: translateY(-8px) rotateX(0deg);
            }
        }

        /* Mobile Paysage (576px - 767px) */
        @media (min-width: 576px) and (max-width: 767px) {
            .container {
                padding: 0 20px;
            }

            .services-grid-spectacular {
                grid-template-columns: 1fr;
            }

            .pricing-grid {
                grid-template-columns: 1fr;
            }

            .portfolio-grid {
                grid-template-columns: 1fr;
            }

            .tech-stack-grid {
                grid-template-columns: repeat(2, 1fr);
            }

            .stats-grid {
                grid-template-columns: repeat(2, 1fr);
            }

            .timeline-step {
                flex: 1 1 100%;
            }
        }

        /* Mobile Portrait (320px - 575px) */
        @media (max-width: 575px) {
            .container {
                padding: 0 15px;
            }

            .services-grid-spectacular {
                grid-template-columns: 1fr;
                gap: 1.5rem;
            }

            .service-card-3d {
                padding: 1.5rem;
            }

            .hero-title-spectacular {
                font-size: clamp(1.75rem, 10vw, 2.5rem);
            }

            .hero-subtitle-spectacular {
                font-size: 1rem;
            }

            .portfolio-grid {
                grid-template-columns: 1fr;
            }

            .pricing-grid {
                grid-template-columns: 1fr;
            }

            .tech-stack-grid {
                grid-template-columns: 1fr;
            }

            .stats-grid {
                grid-template-columns: 1fr;
                gap: 2rem;
            }

            .service-badge {
                font-size: 0.7rem;
                padding: 5px 12px;
            }

            .scroll-indicator-modern {
                font-size: 0.7rem;
                letter-spacing: 1px;
            }

            .filter-btn {
                padding: 10px 20px;
                font-size: 0.9rem;
            }

            .faq-question {
                padding: 1rem 1.2rem;
                font-size: 0.95rem;
            }

            .service-cta-button {
                width: 100%;
                justify-content: center;
            }
        }

        /* Mobile Très Petit (jusqu'à 374px) */
        @media (max-width: 374px) {
            .hero-title-spectacular {
                font-size: 1.75rem;
            }

            .service-icon-3d {
                width: 60px;
                height: 60px;
            }

            .step-number {
                width: 70px;
                height: 70px;
                font-size: 1.75rem;
            }

            .stat-number {
                font-size: 2.25rem;
            }

            .service-badge {
                top: 10px;
                right: 10px;
                font-size: 0.65rem;
                padding: 4px 10px;
            }
        }

        /* Optimisations de performance */
        @media (max-width: 767px) {
            /* Désactiver animations complexes sur mobile pour performances */
            .particle {
                animation-duration: 20s;
            }

            .geometric-shape {
                animation-duration: 30s;
            }

            /* Simplifier les ombres sur mobile */
            .service-card-3d,
            .pricing-card-glass,
            .tech-item {
                box-shadow: 0 4px 15px rgba(13, 27, 42, 0.08);
            }
        }

        /* Support des écrans haute résolution */
        @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
            .service-badge,
            .section-label {
                -webkit-font-smoothing: antialiased;
                -moz-osx-font-smoothing: grayscale;
            }
        }

        /* Mode sombre (si activé) */
        @media (prefers-color-scheme: dark) {
            /* Les styles restent clairs mais on peut ajouter des ajustements subtils */
            .service-description-3d,
            .detail-text-content p {
                opacity: 0.95;
            }
        }

        /* ===================================
           MEDIA QUERIES RESPONSIVE OPTIMISÉES
           =================================== */

        /* Mobile Portrait (320px - 575px) */
        @media (max-width: 575px) {
            /* Colonnes forcées à 1 */
            .services-grid-spectacular,
            .pricing-grid,
            .app-features-grid,
            .video-services-grid,
            .drone-services-grid {
                grid-template-columns: 1fr !important;
                gap: 1.5rem;
            }

            /* Touch targets minimum 44px */
            .btn-cta,
            .service-cta-button,
            button,
            a[href] {
                min-height: 44px;
                min-width: 44px;
            }

            /* Boutons pleine largeur sur mobile */
            .service-cta-button {
                width: 100%;
                justify-content: center;
            }

            /* Texte optimisé mobile */
            h1 { font-size: clamp(1.75rem, 8vw, 2rem); }
            h2 { font-size: clamp(1.5rem, 6vw, 1.75rem); }
            h3 { font-size: clamp(1.25rem, 5vw, 1.5rem); }
            p { font-size: clamp(0.9rem, 2vw, 1rem); }

            /* Padding réduit sur mobile */
            section {
                padding: 40px 15px;
            }

            .service-card-3d {
                padding: 1.5rem;
            }

            /* Stack vertical pour mobile */
            .detail-content-grid {
                grid-template-columns: 1fr !important;
                gap: 2rem;
            }
        }

        /* Mobile Paysage (576px - 767px) */
        @media (min-width: 576px) and (max-width: 767px) {
            .services-grid-spectacular {
                grid-template-columns: 1fr;
            }

            .stats-grid,
            .tech-stack-grid {
                grid-template-columns: repeat(2, 1fr);
            }

            /* Ajustements typographiques */
            :root {
                --font-size-hero: clamp(2.25rem, 7vw, 3rem);
                --font-size-h2: clamp(1.75rem, 5vw, 2.25rem);
            }
        }

        /* Tablette Portrait (768px - 899px) */
        @media (min-width: 768px) and (max-width: 899px) {
            .services-grid-spectacular,
            .pricing-grid {
                grid-template-columns: repeat(2, 1fr);
                gap: 2rem;
            }

            .tech-stack-grid {
                grid-template-columns: repeat(3, 1fr);
            }

            /* Timeline verticale sur tablette */
            .timeline-interactive {
                flex-direction: column;
            }

            /* Typographie tablette */
            :root {
                --font-size-hero: clamp(2.5rem, 8vw, 3.5rem);
                --font-size-h2: clamp(2rem, 6vw, 2.5rem);
                --font-size-h3: clamp(1.5rem, 4vw, 1.75rem);
            }

            section {
                padding: 60px 25px;
            }
        }

        /* Tablette Paysage (900px - 1023px) */
        @media (min-width: 900px) and (max-width: 1023px) {
            .services-grid-spectacular {
                grid-template-columns: repeat(2, 1fr);
            }

            .pricing-grid {
                grid-template-columns: repeat(2, 1fr);
                max-width: 800px;
                margin: 0 auto;
            }

            .stats-grid {
                grid-template-columns: repeat(2, 1fr);
            }
        }

        /* Desktop (1024px - 1199px) */
        @media (min-width: 1024px) and (max-width: 1199px) {
            .container {
                max-width: 980px;
                padding: 0 30px;
            }

            .services-premium-section .container {
                max-width: 100%;
            }

            .services-grid-spectacular {
                grid-template-columns: repeat(2, 1fr);
                gap: 2.5rem;
            }

            .services-grid-premium {
                grid-template-columns: repeat(4, 1fr) !important;
            }

            .pricing-grid {
                grid-template-columns: repeat(3, 1fr);
            }

            section {
                padding: 80px 30px;
            }
        }

        /* Desktop Large (1200px+) */
        @media (min-width: 1200px) {
            .container {
                max-width: 1200px;
                padding: 0 40px;
            }

            .services-premium-section .container {
                max-width: 1400px;
            }

            .services-grid-spectacular {
                grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
            }

            .services-grid-premium {
                grid-template-columns: repeat(4, 1fr) !important;
            }

            .pricing-grid {
                grid-template-columns: repeat(3, 1fr);
            }

            /* Typographie maximale */
            :root {
                --font-size-hero: clamp(3rem, 5vw, 5rem);
                --font-size-h2: clamp(2.5rem, 4vw, 3rem);
                --font-size-h3: clamp(1.75rem, 3vw, 2rem);
            }

            section {
                padding: 100px 40px;
            }
        }

        /* Ultra Wide (1920px+) */
        @media (min-width: 1920px) {
            .container {
                max-width: 1400px;
            }

            .services-premium-section .container {
                max-width: 1600px;
            }

            .services-grid-spectacular {
                grid-template-columns: repeat(4, 1fr);
            }

            .services-grid-premium {
                grid-template-columns: repeat(4, 1fr) !important;
            }

            :root {
                --font-size-hero: 5rem;
                --font-size-h2: 3rem;
                --font-size-h3: 2rem;
            }
        }

        /* Hover adaptatif (seulement pour desktop avec souris) */
        @media (hover: hover) and (pointer: fine) {
            .service-card-3d:hover {
                transform: translateY(-15px) rotateX(5deg);
            }

            .btn-cta:hover {
                transform: translateX(5px);
            }
        }

        /* Hover désactivé pour tactile */
        @media (hover: none) and (pointer: coarse) {
            .service-card-3d:hover {
                transform: none;
            }

            .btn-cta:hover {
                transform: none;
            }

            /* Feedback tactile simplifié */
            .service-card-3d:active,
            .btn-cta:active {
                transform: scale(0.98);
            }
        }

        /* Animations réduites pour accessibilité */
        @media (prefers-reduced-motion: reduce) {
            * {
                animation-duration: 0.01ms !important;
                animation-iteration-count: 1 !important;
                transition-duration: 0.01ms !important;
                scroll-behavior: auto !important;
            }

            .particle,
            .geometric-shape {
                animation: none;
            }
        }

        /* Haut contraste pour accessibilité */
        @media (prefers-contrast: high) {
            .text-muted {
                color: #334155;
            }

            .service-card-3d {
                border: 2px solid #0D1B2A;
            }

            .btn-cta {
                border: 2px solid currentColor;
            }
        }

        /* Impression */
        @media print {
            .hero-particles-bg,
            .hero-geometric-shapes,
            .scroll-indicator-modern,
            .mobile-menu-toggle,
            .back-to-top {
                display: none !important;
            }

            .service-card-3d,
            .pricing-card-glass {
                box-shadow: none;
                border: 1px solid #E2E8F0;
            }
        }

        /* =====================================================
           CORRECTIONS MOBILE SERVICES PAGE - REFONTE COMPLÈTE
           ===================================================== */

        /* === MOBILE PORTRAIT (max-width: 575px) === */
        @media (max-width: 575px) {

            /* --- Padding des sections aéré --- */
            .services-premium-section {
                padding: 60px 0 50px !important;
            }

            section[style*="padding: 100px 0"] {
                padding: 55px 0 !important;
            }

            section[style*="padding: 120px 0"] {
                padding: 55px 0 !important;
            }

            /* --- Hero compact, sans animation --- */
            .services-hero-spectacular {
                min-height: auto !important;
                padding: 90px 15px 40px !important;
            }

            .hero-content-spectacular {
                padding: 0 10px;
            }

            .hero-title-spectacular {
                font-size: 1.8rem !important;
                margin-bottom: 0.6rem !important;
                animation: none !important;
                background-size: 100% auto !important;
            }

            .hero-subtitle-spectacular {
                font-size: 0.9rem !important;
                line-height: 1.5 !important;
                padding: 0 10px !important;
                opacity: 1 !important;
                animation: none !important;
                margin-bottom: 0 !important;
            }

            .scroll-indicator-modern {
                display: none !important;
            }

            .hero-particles-bg,
            .hero-geometric-shapes {
                display: none !important;
            }

            /* --- Section headers avec espacement aéré --- */
            .section-header {
                margin-bottom: 35px !important;
            }

            .section-label {
                font-size: 0.75rem !important;
                padding: 5px 14px !important;
                margin-bottom: 0.8rem !important;
            }

            .section-title {
                font-size: 1.5rem !important;
                margin-bottom: 1rem !important;
                padding: 0 10px !important;
            }

            .section-description {
                font-size: 0.9rem !important;
                padding: 0 10px !important;
                line-height: 1.6 !important;
                margin-top: 0.5rem !important;
            }

            /* --- Cartes de services premium - Style mobile propre --- */
            .services-grid-premium {
                grid-template-columns: 1fr !important;
                gap: 20px !important;
                padding: 0 15px !important;
                max-width: 100% !important;
            }

            .premium-service-card {
                padding: 22px 20px !important;
                border-radius: 16px !important;
                box-shadow: 0 4px 15px rgba(0,0,0,0.06) !important;
            }

            .premium-service-card h3 {
                font-size: 1.2rem !important;
                margin-bottom: 8px !important;
            }

            .premium-service-card p {
                font-size: 0.85rem !important;
                margin-bottom: 12px !important;
            }

            .service-icon-wrapper {
                width: 50px !important;
                height: 50px !important;
                border-radius: 14px !important;
                margin-bottom: 14px !important;
            }

            .service-icon-wrapper svg {
                width: 26px !important;
                height: 26px !important;
            }

            .service-features {
                margin-bottom: 14px !important;
            }

            .service-features div {
                margin-bottom: 5px !important;
            }

            .service-features span {
                font-size: 0.82rem !important;
            }

            .service-popularity-badge {
                font-size: 0.6rem !important;
                padding: 3px 8px !important;
                top: 12px !important;
                right: 12px !important;
            }

            /* Prix dans les cartes */
            .premium-service-card div[style*="border-top"] {
                padding-top: 12px !important;
                margin-bottom: 14px !important;
            }

            .premium-service-card span[style*="font-size: 1.75rem"] {
                font-size: 1.4rem !important;
            }

            /* CTA Buttons dans les cartes - BARRES DE PROGRESSION FIX */
            .premium-cta-button {
                padding: 10px !important;
                border-radius: 10px !important;
                font-size: 0.9rem !important;
                font-weight: 600 !important;
                box-shadow: none !important;
            }

            /* --- Timeline / Process Steps --- */
            .process-timeline {
                margin: 20px auto !important;
                padding: 10px 0 !important;
            }

            .timeline-horizontal {
                grid-template-columns: 1fr !important;
                gap: 16px !important;
            }

            .timeline-step {
                text-align: center;
                padding: 15px 10px !important;
                background: white;
                border-radius: 14px;
                box-shadow: 0 2px 10px rgba(0,0,0,0.05);
            }

            .step-number {
                width: 55px !important;
                height: 55px !important;
                font-size: 1.5rem !important;
                margin: 0 auto 10px !important;
                box-shadow: 0 4px 15px rgba(0, 168, 232, 0.3) !important;
            }

            .step-title {
                font-size: 1rem !important;
                margin-bottom: 4px !important;
            }

            .step-description {
                font-size: 0.85rem !important;
                line-height: 1.4 !important;
            }

            /* Masquer la ligne de timeline sur mobile */
            .timeline-horizontal::before {
                display: none !important;
            }

            /* --- Tech Stack Grid --- */
            .tech-stack-grid {
                grid-template-columns: repeat(3, 1fr) !important;
                gap: 10px !important;
            }

            .tech-item {
                padding: 12px 8px !important;
                border-radius: 12px !important;
                box-shadow: 0 2px 8px rgba(0,0,0,0.05) !important;
            }

            .tech-logo-text {
                font-size: 0.85rem !important;
            }

            .tech-item p {
                font-size: 0.7rem !important;
                margin-top: 0.3rem !important;
            }

            /* --- Advantages Grid --- */
            .advantages-grid {
                grid-template-columns: 1fr !important;
                gap: 16px !important;
                margin-top: 30px !important;
            }

            .advantage-card {
                padding: 25px 20px !important;
                border-radius: 16px !important;
                box-shadow: 0 4px 15px rgba(0,0,0,0.05) !important;
            }

            .advantage-card h3 {
                font-size: 1.15rem !important;
                margin-bottom: 10px !important;
            }

            .advantage-card p {
                font-size: 0.85rem !important;
                line-height: 1.5 !important;
            }

            /* Icônes avantages plus petites */
            .advantage-card div[style*="width: 80px"] {
                width: 60px !important;
                height: 60px !important;
                margin-bottom: 15px !important;
            }

            .advantage-card svg {
                width: 30px !important;
                height: 30px !important;
            }

            /* Chiffres clés dans avantages */
            .advantage-card span[style*="font-size: 2.5rem"] {
                font-size: 1.8rem !important;
            }

            .advantage-card div[style*="margin-top: 20px"] {
                margin-top: 15px !important;
            }

            .advantage-card div[style*="margin-top: 20px"] p {
                font-size: 0.8rem !important;
                margin-top: 3px !important;
            }

            /* --- Testimonials --- */
            .testimonials-grid {
                grid-template-columns: 1fr !important;
                gap: 16px !important;
                margin-top: 30px !important;
            }

            .testimonial-card {
                padding: 22px 18px !important;
                border-radius: 16px !important;
                box-shadow: 0 4px 15px rgba(0,0,0,0.06) !important;
            }

            .testimonial-card div[style*="font-size: 60px"] {
                font-size: 35px !important;
                top: 15px !important;
                right: 15px !important;
            }

            .testimonial-card div[style*="gap: 15px"] {
                gap: 10px !important;
                margin-bottom: 12px !important;
            }

            .testimonial-card div[style*="width: 60px"] {
                width: 45px !important;
                height: 45px !important;
                font-size: 0.9rem !important;
            }

            .testimonial-card h4 {
                font-size: 0.95rem !important;
            }

            .testimonial-card p[style*="font-size: 0.9rem"] {
                font-size: 0.82rem !important;
            }

            .testimonial-card p[style*="font-style: italic"] {
                font-size: 0.85rem !important;
                line-height: 1.5 !important;
                margin-bottom: 12px !important;
            }

            /* --- FAQ Section --- */
            .faq-section {
                padding: 40px 0 !important;
            }

            .faq-section .container > div[style*="max-width: 900px"] {
                margin-top: 25px !important;
            }

            .faq-item {
                margin-bottom: 12px !important;
                border-radius: 12px !important;
                box-shadow: 0 2px 10px rgba(0,0,0,0.04) !important;
            }

            .faq-question {
                padding: 16px 18px !important;
            }

            .faq-question span {
                font-size: 0.95rem !important;
                line-height: 1.3 !important;
            }

            .faq-answer div {
                padding: 0 18px 18px !important;
            }

            .faq-answer p {
                font-size: 0.88rem !important;
                line-height: 1.5 !important;
            }

            /* --- CTA Finale --- */
            section[style*="padding: 120px 0"][style*="background: linear-gradient(135deg, #0D1B2A"] {
                padding: 50px 0 !important;
            }

            .cta-title {
                font-size: 1.6rem !important;
                line-height: 1.2 !important;
                margin-bottom: 1rem !important;
            }

            .cta-subtitle {
                font-size: 1rem !important;
                margin-bottom: 2rem !important;
                padding: 0 10px !important;
                line-height: 1.5 !important;
            }

            .cta-buttons {
                flex-direction: column !important;
                gap: 12px !important;
                align-items: center !important;
            }

            .cta-primary,
            .cta-secondary {
                width: 100% !important;
                max-width: 280px !important;
                padding: 14px 24px !important;
                font-size: 0.95rem !important;
                justify-content: center !important;
                border-radius: 40px !important;
            }

            /* Trust logos / Ils nous font confiance */
            div[style*="margin-top: 4rem"][style*="padding-top: 4rem"] {
                margin-top: 2rem !important;
                padding-top: 2rem !important;
            }

            div[style*="margin-top: 4rem"] p[style*="margin-bottom: 2rem"] {
                margin-bottom: 1rem !important;
                font-size: 0.85rem !important;
            }

            div[style*="gap: 40px"][style*="justify-content: center"][style*="flex-wrap: wrap"] {
                gap: 15px 20px !important;
            }

            div[style*="gap: 40px"][style*="justify-content: center"] > div {
                font-size: 0.9rem !important;
            }

            /* --- Décorations réduites sur mobile --- */
            .premium-bg-decoration {
                display: none !important;
            }

            .hero-geometric-shapes {
                opacity: 0.05 !important;
            }

            .geometric-shape {
                width: 50px !important;
                height: 50px !important;
            }
        }

        /* === MOBILE PAYSAGE & TABLETTE PORTRAIT (576px - 767px) === */
        @media (min-width: 576px) and (max-width: 767px) {

            section[style*="padding: 100px 0"],
            section[style*="padding: 120px 0"] {
                padding: 60px 0 !important;
            }

            .services-hero-spectacular {
                min-height: auto !important;
                padding: 100px 20px 50px !important;
            }

            .hero-title-spectacular {
                animation: none !important;
                background-size: 100% auto !important;
            }

            .hero-subtitle-spectacular {
                opacity: 1 !important;
                animation: none !important;
            }

            .scroll-indicator-modern {
                display: none !important;
            }

            .hero-particles-bg,
            .hero-geometric-shapes {
                display: none !important;
            }

            .section-header {
                margin-bottom: 35px !important;
            }

            .section-title {
                font-size: 1.7rem !important;
            }

            /* Cartes services en grille 2 colonnes */
            .services-grid-premium {
                grid-template-columns: repeat(2, 1fr) !important;
                gap: 16px !important;
                max-width: 540px !important;
                padding: 0 20px !important;
            }

            .premium-service-card {
                padding: 22px 16px !important;
            }

            .premium-service-card h3 {
                font-size: 1.15rem !important;
            }

            .service-icon-wrapper {
                width: 50px !important;
                height: 50px !important;
            }

            .service-icon-wrapper svg {
                width: 26px !important;
                height: 26px !important;
            }

            .premium-cta-button {
                padding: 10px !important;
                font-size: 0.85rem !important;
                border-radius: 10px !important;
            }

            .premium-service-card span[style*="font-size: 1.75rem"] {
                font-size: 1.3rem !important;
            }

            /* Timeline */
            .timeline-horizontal {
                grid-template-columns: repeat(2, 1fr) !important;
                gap: 16px !important;
            }

            .timeline-horizontal::before {
                display: none !important;
            }

            .step-number {
                width: 60px !important;
                height: 60px !important;
                font-size: 1.6rem !important;
            }

            /* Tech stack */
            .tech-stack-grid {
                grid-template-columns: repeat(3, 1fr) !important;
                gap: 12px !important;
            }

            /* Advantages */
            .advantages-grid {
                grid-template-columns: 1fr !important;
                gap: 16px !important;
                max-width: 450px !important;
                margin: 30px auto 0 !important;
            }

            /* Testimonials */
            .testimonials-grid {
                grid-template-columns: 1fr !important;
                gap: 16px !important;
                max-width: 500px !important;
                margin: 30px auto 0 !important;
            }

            .testimonial-card {
                padding: 25px 20px !important;
            }

            /* FAQ */
            .faq-section .container > div[style*="max-width: 900px"] {
                margin-top: 30px !important;
            }

            /* CTA */
            .cta-buttons {
                flex-direction: column !important;
                gap: 12px !important;
                align-items: center !important;
            }

            .cta-primary,
            .cta-secondary {
                width: 100% !important;
                max-width: 300px !important;
                padding: 15px 30px !important;
                font-size: 1rem !important;
                justify-content: center !important;
            }

            /* Trust logos */
            div[style*="gap: 40px"][style*="justify-content: center"][style*="flex-wrap: wrap"] {
                gap: 15px 25px !important;
            }
        }
