 /* --- Réinitialisation et Polices --- */
        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
            font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
        }

    

        /* --- Section Héro (Arrière-plan complet) --- */
  

        /* --- Barre de Navigation (Header) --- */
        header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 20px 50px;
            background: rgba(11, 21, 40, 0.85);
            backdrop-filter: blur(10px);
            border-bottom: 1px solid rgba(255, 255, 255, 0.1);
        }

        .logo-container {
            display: flex;
            align-items: center;
            gap: 10px;
            font-size: 22px;
            font-weight: bold;
        }

        .logo-icon {
            color: #f5b932;
            font-size: 30px;
        }

        nav a {
            color: #ffffff;
            text-decoration: none;
            margin: 0 15px;
            font-weight: 500;
            transition: color 0.3s;
        }

        nav a:hover, nav a.active {
            color: #f5b932;
        }

        .phone-btn {
            background: rgba(255, 255, 255, 0.1);
            border: 1px solid rgba(255, 255, 255, 0.2);
            color: white;
            padding: 10px 20px;
            border-radius: 8px;
            text-decoration: none;
            display: flex;
            align-items: center;
            gap: 8px;
            font-weight: bold;
            transition: background 0.3s;
        }

        .phone-btn:hover {
            background: #f5b932;
            color: #0b1528;
            border-color: #f5b932;
        }

        /* --- Contenu Central --- */
        .hero-content {
            max-width: 900px;
            margin: 40px auto;
            text-align: center;
            padding: 0 20px;
        }

        .hero-content h1 {
            font-size: 48px;
            font-weight: 700;
            margin-bottom: 10px;
            text-shadow: 2px 2px 8px rgba(0,0,0,0.7);
        }

        .hero-content p {
            font-size: 24px;
            color: #e0e0e0;
            margin-bottom: 30px;
            font-weight: 400;
            text-shadow: 1px 1px 4px rgba(0,0,0,0.7);
        }

        /* --- Formulaire de Réservation --- */
        .booking-container {
            background: rgba(11, 21, 40, 0.9);
            border: 1px solid rgba(255, 255, 255, 0.1);
            border-radius: 12px;
            padding: 25px;
            box-shadow: 0 10px 30px rgba(0,0,0,0.5);
        }

        .booking-container h2 {
            font-size: 20px;
            margin-bottom: 20px;
            font-weight: 500;
        }

        .inputs-grid {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 15px;
            margin-bottom: 20px;
        }

        .input-group {
            display: flex;
            flex-direction: column;
            text-align: left;
        }

        .input-group label {
            font-size: 13px;
            color: #a0aec0;
            margin-bottom: 8px;
            display: flex;
            align-items: center;
            gap: 5px;
        }

        .input-group label .material-symbols-outlined {
            font-size: 16px;
        }

        .input-field {
            background: #162235;
            border: 1px solid #2d3748;
            color: white;
            padding: 12px;
            border-radius: 6px;
            font-size: 14px;
            outline: none;
            width: 100%;
        }

        .input-field::placeholder {
            color: #718096;
        }

        .input-field:focus {
            border-color: #f5b932;
        }

        .submit-btn {
            background: #f5b932;
            color: #0b1528;
            border: none;
            width: 100%;
            padding: 15px;
            border-radius: 6px;
            font-size: 16px;
            font-weight: bold;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 8px;
            transition: background 0.2s;
        }

        .submit-btn:hover {
            background: #e0a51d;
        }

        /* --- Barre des Arguments / Bénéfices (Bas de page) --- */
        .features-bar {
            background: #ffffff;
            color: #1a202c;
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            padding: 25px 50px;
            border-top-left-radius: 16px;
            border-top-right-radius: 16px;
            max-width: 1200px;
            margin: 0 auto;
            width: 100%;
            box-shadow: 0 -5px 20px rgba(0,0,0,0.2);
        }

        .feature-item {
            display: flex;
            align-items: center;
            gap: 15px;
            padding: 0 15px;
            border-right: 1px solid #e2e8f0;
        }

        .feature-item:last-child {
            border-right: none;
        }

        .feature-icon {
            color: #0b1528;
            font-size: 32px;
        }

        .feature-text h3 {
            font-size: 15px;
            font-weight: 600;
            color: #0b1528;
        }

        .feature-text p {
            font-size: 13px;
            color: #4a5568;
            margin-top: 2px;
        }

        /* --- Adaptabilité Mobile (Responsive) --- */
        @media (max-width: 992px) {
            .inputs-grid {
                grid-template-columns: 1fr;
            }
            .features-bar {
                grid-template-columns: repeat(2, 1fr);
                gap: 20px;
                border-radius: 0;
            }
            .feature-item {
                border-right: none;
            }
            header {
                flex-direction: column;
                gap: 15px;
                padding: 15px;
            }
            .hero-content h1 {
                font-size: 32px;
            }
        }

        @media (max-width: 600px) {
            .features-bar {
                grid-template-columns: 1fr;
            }
            nav {
                display: flex;
                flex-wrap: wrap;
                justify-content: center;
                gap: 10px;
            }
            nav a {
                margin: 0 5px;
            }
        }









           /* ==========================================================================
           1. VARIABLES DE COULEURS & REINITIALISATION
           ========================================================================== */
        :root {
            --taxi-dark: #0B1528;   /* Bleu marine profond (identique à votre haut de page) */
            --taxi-gold: #F2B94A;   /* Jaune ocre (identique à votre bouton) */
            --taxi-bg: #FAF7F0;     /* Fond crème très clair pour la section 2 */
            --taxi-text: #1E293B;   /* Couleur du texte principal */
            --white: #FFFFFF;
        }

        *, *::before, *::after {
            box-sizing: border-box;
            margin: 0;
            padding: 0;
        }

        body {
           
            color: var(--taxi-text);
            font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
            -webkit-font-smoothing: antialiased;
        }

        /* ==========================================================================
           2. STRUCTURE DE LA SECTION
           ========================================================================== */
        .services-section {
            max-width: 1200px;
            margin: 0 auto;
            padding: 80px 20px;
        }

        /* En-tête (Titre et sous-titre) */
        .services-header {
            text-align: center;
            margin-bottom: 60px;
        }

        .services-header h2 {
            font-size: 2.5rem;
            color: var(--taxi-dark);
            margin-bottom: 12px;
            font-weight: 700;
            letter-spacing: -0.5px;
        }

        .services-header p {
            color: #64748B;
            font-size: 1.1rem;
        }

        /* structure de la Grille (Layout en Tableau pour compatibilité maximale) */
        .services-grid {
            display: table;
            width: 100%;
            table-layout: fixed;
            border-collapse: separate;
            border-spacing: 30px 0; /* Espace entre les colonnes */
            margin-bottom: 60px;
        }

        .services-column {
            display: table-cell;
            vertical-align: top;
        }

        /* ==========================================================================
           3. STYLES DES CARTES (SERVICES)
           ========================================================================== */
        .service-card {
            background-color: var(--white);
            border: 1px solid #E2E8F0;
            border-radius: 12px;
            padding: 45px 30px;
            text-align: center;
            box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.03);
            transition: transform 0.3s ease, box-shadow 0.3s ease;
            height: 100%;
        }

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

        /* Zone d'icônes */
        .card-icon {
            font-size: 3rem;
            color: var(--taxi-dark);
            height: 80px;
            margin-bottom: 25px;
            line-height: 80px; /* Aligne verticalement l'icône */
        }

        .card-icon .gold-icon {
            color: var(--taxi-gold);
            margin-right: 5px;
        }

        .service-card h3 {
            font-size: 1.35rem;
            color: var(--taxi-dark);
            margin-bottom: 16px;
            font-weight: 600;
        }

        .service-card p {
            font-size: 0.95rem;
            color: #475569;
            line-height: 1.6;
            margin-bottom: 30px;
            min-height: 72px; /* Assure que les boutons restent alignés */
        }

        /* Bouton d'action */
        .btn-gold {
            display: inline-block;
            background-color: var(--taxi-gold);
            color: var(--taxi-dark);
            font-weight: 600;
            padding: 12px 28px;
            border: none;
            border-radius: 8px;
            cursor: pointer;
            text-decoration: none;
            font-size: 0.95rem;
            transition: background-color 0.2s ease;
        }

        .btn-gold:hover {
            background-color: #E0A638;
        }

        /* ==========================================================================
           4. BANNIERE CHAUFFEUR (BAS DE PAGE)
           ========================================================================== */
        .chauffeur-banner {
            background-color: var(--white);
            border: 1px solid #E2E8F0;
            border-radius: 12px;
            padding: 24px;
            max-width: 850px;
            margin: 0 auto;
            box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.03);
            display: table;
            width: 100%;
        }

        .chauffeur-img-cell {
            display: table-cell;
            width: 160px;
            vertical-align: middle;
        }

        .chauffeur-img-wrapper {
            width: 160px;
            height: 100px;
            border-radius: 8px;
            overflow: hidden;
            background-color: #E2E8F0;
        }

        .chauffeur-img-wrapper img {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }

        .chauffeur-text-cell {
            display: table-cell;
            vertical-align: middle;
            padding-left: 24px;
        }

        .chauffeur-tag {
            font-size: 0.75rem;
            color: #94A3B8;
            text-transform: uppercase;
            font-weight: 700;
            letter-spacing: 0.05em;
            display: block;
            margin-bottom: 4px;
        }

        .chauffeur-text-cell h4 {
            font-size: 1.4rem;
            color: var(--taxi-dark);
            margin-bottom: 6px;
        }

        .chauffeur-text-cell p {
            font-size: 0.95rem;
            color: #475569;
            line-height: 1.5;
        }

        /* ==========================================================================
           5. RESPONSIVE DESIGN (MOBILE & TABLETTES)
           ========================================================================== */
        @media (max-width: 768px) {
            .services-grid, .services-column {
                display: block;
                width: 100%;
            }
            
            .services-grid {
                border-spacing: 0;
            }

            .services-column {
                margin-bottom: 30px;
            }

            .chauffeur-banner, .chauffeur-img-cell, .chauffeur-text-cell {
                display: block;
                width: 100%;
                text-align: center;
            }

            .chauffeur-img-wrapper {
                margin: 0 auto 20px auto;
                width: 100%;
                max-width: 200px;
                height: 120px;
            }

            .chauffeur-text-cell {
                padding-left: 0;
            }
        }
















          /* ==========================================================================
           1. VARIABLES ET CONFIGURATION DE BASE
           ========================================================================== */
        :root {
            --taxi-dark: #0B1528;   /* Bleu marine profond */
            --taxi-gold: #F2B94A;   /* Jaune ocre */
            --taxi-bg: #FAF7F0;     /* Fond crème clair */
            --taxi-text: #1E293B;   
            --white: #FFFFFF;
        }

        *, *::before, *::after {
            box-sizing: border-box;
            margin: 0;
            padding: 0;
        }

        body {
  
            color: var(--taxi-text);
            font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
            -webkit-font-smoothing: antialiased;
        }

        /* ==========================================================================
           2. STRUCTURE LAYOUT (SANS FRAMEWORK)
           ========================================================================== */
        .apropos-section {
            max-width: 1200px;
            margin: 0 auto;
            padding: 80px 20px;
        }

        .apropos-container {
            display: table;
            width: 100%;
            table-layout: fixed;
        }

        /* Colonne Gauche : Contenu textuel */
        .apropos-content {
            display: table-cell;
            vertical-align: middle;
            padding-right: 60px;
            width: 55%;
        }

        /* Colonne Droite : Image de la berline */
        .apropos-image-column {
            display: table-cell;
            vertical-align: middle;
            width: 45%;
        }

        /* ==========================================================================
           3. STYLES DES TEXTES ET ÉLÉMENTS
           ========================================================================== */
        .apropos-tag {
            color: var(--taxi-gold);
            font-size: 0.9rem;
            font-weight: 700;
            text-transform: uppercase;
            letter-spacing: 1.5px;
            display: block;
            margin-bottom: 12px;
        }

        .apropos-content h2 {
            font-size: 2.5rem;
            color: var(--taxi-dark);
            line-height: 1.2;
            margin-bottom: 20px;
            font-weight: 700;
        }

        .apropos-content p.main-text {
            font-size: 1.1rem;
            color: #475569;
            line-height: 1.7;
            margin-bottom: 30px;
        }

        /* Liste des points forts */
        .features-list {
            list-style: none;
        }

        .feature-item {
            display: flex;
            align-items: flex-start;
            margin-bottom: 20px;
        }

        .feature-icon {
            background-color: var(--white);
            color: var(--taxi-dark);
            border: 1px solid #E2E8F0;
            width: 44px;
            height: 44px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 1.1rem;
            margin-right: 16px;
            flex-shrink: 0;
            box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.02);
        }

        .feature-text h4 {
            font-size: 1.1rem;
            color: var(--taxi-dark);
            margin-bottom: 4px;
            font-weight: 600;
        }

        .feature-text p {
            font-size: 0.95rem;
            color: #64748B;
            line-height: 1.5;
        }

        /* Image de présentation */
        .image-wrapper {
            width: 100%;
            height: 450px;
            border-radius: 16px;
            overflow: hidden;
            box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.08);
        }

        .image-wrapper img {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }

        /* ==========================================================================
           4. RESPONSIVE DESIGN (MOBILE & TABLETTES)
           ========================================================================== */
        @media (max-width: 902px) {
            .apropos-container, .apropos-content, .apropos-image-column {
                display: block;
                width: 100%;
            }

            .apropos-content {
                padding-right: 0;
                margin-bottom: 40px;
            }

            .apropos-content h2 {
                font-size: 2rem;
            }

            .image-wrapper {
                height: 300px;
            }
        }








           /* Palette de couleurs calquée sur votre image */
:root {
    --blue-dark: #0f1c2c;
    --gold-accent: #ffc132;
    --text-main: #2d3748;
    --text-muted: #718096;
}

.steps-section {
    background-color: #ffffff;
    padding: 80px 20px;
    font-family: 'Arial', sans-serif;
}

.container {
    max-width: 1200px;
    margin: 0 auto;
}

.section-title {
    text-align: center;
    font-size: 2.2rem;
    color: var(--blue-dark);
    margin-bottom: 12px;
    font-weight: 700;
}

.section-subtitle {
    text-align: center;
    color: var(--text-muted);
    margin-bottom: 60px;
    font-size: 1.1rem;
}

/* Grille des étapes */
.steps-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
    justify-content: center;
}

/* Carte Étape */
.step-card {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 16px;
    padding: 40px 30px;
    width: 320px;
    text-align: center;
    position: relative;
    transition: all 0.3s ease;
}

.step-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 30px rgba(15, 28, 44, 0.06);
    border-color: var(--gold-accent);
}

/* Numéro d'étape flottant */
.step-number {
    position: absolute;
    top: -20px;
    left: 50px;
    background-color: var(--gold-accent);
    color: var(--blue-dark);
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    font-size: 1.2rem;
    box-shadow: 0 4px 10px rgba(255, 193, 50, 0.3);
}

/* Icônes de l'étape */
.step-icon {
    font-size: 2.5rem;
    color: var(--blue-dark);
    margin-bottom: 20px;
}

.step-card h3 {
    color: var(--blue-dark);
    font-size: 1.35rem;
    margin: 0 0 15px 0;
    font-weight: 600;
}

.step-card p {
    color: var(--text-muted);
    font-size: 0.95rem;
    line-height: 1.6;
    margin: 0;
}

/* Optionnel : Responsive pour tablettes et mobiles */
@media (max-width: 768px) {
    .steps-grid {
        flex-direction: column;
        align-items: center;
    }
    .step-card {
        width: 100%;
        max-width: 400px;
    }
}











   /* Palette alignée sur votre charte graphique */
:root {
    --bg-dark-blue: #0f1c2c;
    --card-blue: #172739;
    --gold-stars: #ffc132;
    --text-white: #ffffff;
    --text-gray: #a0aec0;
}

.reviews-section {
    background-color: var(--bg-dark-blue);
    padding: 80px 20px;
    font-family: 'Arial', sans-serif;
}

.container {
    max-width: 1200px;
    margin: 0 auto;
}

.reviews-section .section-title {
    text-align: center;
    font-size: 2.2rem;
    color: var(--text-white);
    margin-bottom: 12px;
    font-weight: 700;
}

.reviews-section .section-subtitle {
    text-align: center;
    color: var(--text-gray);
    margin-bottom: 50px;
    font-size: 1.1rem;
}

/* Grille des avis */
.reviews-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    justify-content: center;
}

/* Carte d'avis */
.review-card {
    background-color: var(--card-blue);
    border-radius: 12px;
    padding: 35px 25px;
    width: 350px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
    border: 1px solid rgba(255, 255, 255, 0.05);
}

/* Étoiles */
.stars {
    color: var(--gold-stars);
    font-size: 1.2rem;
    margin-bottom: 15px;
    letter-spacing: 2px;
}

/* Texte de l'avis */
.review-text {
    color: #e2e8f0;
    font-size: 0.95rem;
    line-height: 1.6;
    font-style: italic;
    margin: 0 0 25px 0;
}

/* Bloc profil client */
.client-info {
    display: flex;
    align-items: center;
    gap: 15px;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    padding-top: 15px;
}

/* Avatar avec initiales */
.client-avatar {
    background-color: var(--gold-stars);
    color: var(--bg-dark-blue);
    width: 45px;
    height: 45px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    font-size: 1rem;
}

.client-name {
    color: var(--text-white);
    font-size: 1rem;
    margin: 0 0 2px 0;
    font-weight: 600;
}

.client-tag {
    color: var(--text-gray);
    font-size: 0.8rem;
    display: block;
}

/* Version mobile */
@media (max-width: 768px) {
    .reviews-grid {
        flex-direction: column;
        align-items: center;
    }
    .review-card {
        width: 100%;
        max-width: 450px;
    }
}













    /* Palette de couleurs */
:root {
    --blue-dark: #0f1c2c;
    --gold-accent: #ffc132;
    --text-main: #2d3748;
    --text-muted: #718096;
}

.faq-section {
    background-color: #ffffff;
    padding: 80px 20px;
    font-family: 'Arial', sans-serif;
}



.faq-section .section-title {
    text-align: center;
    font-size: 2.2rem;
    color: var(--blue-dark);
    margin-bottom: 12px;
    font-weight: 700;
}

.faq-section .section-subtitle {
    text-align: center;
    color: var(--text-muted);
    margin-bottom: 60px;
    font-size: 1.1rem;
}

/* Grille de la FAQ (2 colonnes sur grand écran) */
.faq-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(450px, 1fr));
    gap: 40px;
    margin-bottom: 70px;
}

.faq-item h3 {
    color: var(--blue-dark);
    font-size: 1.2rem;
    margin: 0 0 12px 0;
    display: flex;
    align-items: flex-start;
    gap: 10px;
    line-height: 1.4;
}

.faq-icon {
    background-color: rgba(255, 193, 50, 0.2); /* Jaune transparent */
    color: var(--blue-dark);
    font-weight: bold;
    min-width: 24px;
    height: 24px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.9rem;
}

.faq-item p {
    color: var(--text-muted);
    font-size: 0.95rem;
    line-height: 1.6;
    margin: 0;
    padding-left: 34px; /* Aligne le texte sous le titre en sautant l'icône */
}

/* Bloc d'appel à l'action final (Design calqué sur votre bannière) */
.cta-block {
    background-color: var(--blue-dark);
    border-radius: 16px;
    padding: 40px;
    text-align: center;
    color: #ffffff;
    box-shadow: 0 10px 30px rgba(15, 28, 44, 0.15);
}

.cta-block h3 {
    font-size: 1.8rem;
    margin: 0 0 10px 0;
    font-weight: 600;
}

.cta-block p {
    color: #a0aec0;
    margin: 0 0 25px 0;
    font-size: 1.05rem;
}

/* Bouton Jaune identique à votre bouton "Estimer le tarif" */
.btn-cta {
    display: inline-block;
    background-color: var(--gold-accent);
    color: var(--blue-dark);
    text-decoration: none;
    padding: 14px 35px;
    border-radius: 8px;
    font-weight: bold;
    font-size: 1.1rem;
    transition: transform 0.2s ease, background-color 0.2s ease;
}

.btn-cta:hover {
    transform: scale(1.03);
    background-color: #f0b226; /* Un jaune un poil plus foncé au survol */
}

/* Version mobile */
@media (max-width: 768px) {
    .faq-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }
    .faq-item p {
        padding-left: 0; /* Enlève le décalage sur petit écran */
        margin-top: 5px;
    }
    .cta-block h3 {
        font-size: 1.5rem;
    }
}





    /* Palette de couleurs */
:root {
    --footer-bg: #0f1c2c;       /* Bleu nuit de votre charte */
    --footer-card: #172739;     /* Bleu légèrement plus clair */
    --gold-color: #ffc132;      /* Jaune de votre logo */
    --text-white: #ffffff;
    --text-gray: #a0aec0;
}

.main-footer {
    background-color: var(--footer-bg);
    color: var(--text-white);
    padding: 60px 20px 20px 20px;
    font-family: 'Arial', sans-serif;
    border-top: 1px solid rgba(255, 255, 255, 0.05);
}

.container {
    max-width: 1200px;
    margin: 0 auto;
}

/* Grille principale */
.footer-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
    justify-content: space-between;
    margin-bottom: 40px;
}

.footer-col {
    flex: 1;
    min-width: 250px; /* Évite que les colonnes deviennent trop écrasées */
}

/* Style du Logo dans le footer */
.footer-logo {
    font-size: 1.5rem;
    font-weight: bold;
    color: var(--text-white);
    margin-bottom: 15px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.taxi-icon {
    font-size: 1.6rem;
}

.footer-desc {
    color: var(--text-gray);
    font-size: 0.9rem;
    line-height: 1.6;
    margin-bottom: 20px;
}

/* Titres des colonnes */
.footer-col h3 {
    color: var(--gold-color);
    font-size: 1.2rem;
    margin: 0 0 20px 0;
    font-weight: 600;
}

/* Listes de liens */
.footer-links, .footer-contact {
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer-links li {
    margin-bottom: 12px;
}

.footer-links a {
    color: var(--text-gray);
    text-decoration: none;
    font-size: 0.95rem;
    transition: color 0.2s ease;
}

.footer-links a:hover {
    color: var(--gold-color);
}

.footer-contact li {
    color: var(--text-gray);
    font-size: 0.95rem;
    margin-bottom: 12px;
    line-height: 1.4;
}

.footer-contact strong {
    color: var(--text-white);
}

/* Liens réseaux sociaux */
.social-links {
    display: flex;
    gap: 15px;
}

.social-links a {
    color: var(--text-gray);
    text-decoration: none;
    font-size: 0.85rem;
    border: 1px solid rgba(255, 255, 255, 0.1);
    padding: 6px 12px;
    border-radius: 4px;
    transition: all 0.2s ease;
}

.social-links a:hover {
    color: var(--footer-bg);
    background-color: var(--gold-color);
    border-color: var(--gold-color);
}

/* Barre tout en bas (Copyright & Légals) */
.footer-bottom {
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    padding-top: 20px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    gap: 15px;
    font-size: 0.85rem;
    color: var(--text-gray);
}

.footer-bottom p {
    margin: 0;
}

.legal-links {
    display: flex;
    gap: 20px;
}

.legal-links a {
    color: var(--text-gray);
    text-decoration: none;
    transition: color 0.2s ease;
}

.legal-links a:hover {
    color: var(--text-white);
}

/* Version Mobile responsive */
@media (max-width: 768px) {
    .footer-grid {
        flex-direction: column;
        gap: 30px;
    }
    .footer-bottom {
        flex-direction: column;
        text-align: center;
    }
    .legal-links {
        justify-content: center;
        flex-wrap: wrap;
    }
}


.seo-section {
    padding: 80px 5%;
    background-color: #fcfcfc;
    border-bottom: 1px solid #eee;
}

.seo-section .section-title {
    font-size: 2.2rem;
    color: #2d3436;
    margin-bottom: 20px;
    position: relative;
    display: inline-block;
}

.section-desc {
    font-size: 1.1rem;
    line-height: 1.8;
    color: #636e72;
    margin-bottom: 40px;
}

.section-subtitle {
    font-size: 1.4rem;
    color: #ffc132;
    margin-bottom: 10px;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.cities-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 15px;
    margin-top: 25px;
}

.city-link {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 15px;
    background: #fff;
    border: 1px solid #eee;
    border-radius: 12px;
    color: #2d3436;
    text-decoration: none;
    font-weight: 600;
    transition: all 0.3s ease;
    box-shadow: 0 2px 5px rgba(0,0,0,0.02);
}

.city-link .material-symbols-outlined {
    font-size: 1.2rem;
    color: #ffc132;
}

.city-link:hover {
    background: #ffc132;
    color: #fff;
    border-color: #ffc132;
    transform: translateY(-5px);
    box-shadow: 0 10px 15px rgba(245, 185, 50, 0.2);
}

.city-link:hover .material-symbols-outlined {
    color: #fff;
}

@media (max-width: 600px) {
    .seo-section { padding: 40px 5%; }
    .seo-section .section-title { font-size: 1.7rem; }
}


.features-bar {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 20px;
    padding: 40px 5%;
    background: #f8f9fa; /* Fond clair très léger */
    border-top: 1px solid #eee;
    border-bottom: 1px solid #eee;
}

.feature-item {
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 15px;
}

.icon-box {
    background: #fff;
    padding: 12px;
    border-radius: 12px;
    box-shadow: 0 4px 6px rgba(0,0,0,0.05);
    color: #f5b932; /* Votre couleur jaune */
    display: flex;
    align-items: center;
}

.feature-text h4 {
    margin: 0;
    font-size: 1rem;
    color: #2d3436;
}

.feature-text p {
    margin: 0;
    font-size: 0.85rem;
    color: #636e72;
}

/* Effet au survol */
.feature-item:hover .icon-box {
    transform: translateY(-5px);
    transition: 0.3s;
    background: #f5b932;
    color: #fff;
}



.action-container {
    margin-top: 30px;
    text-align: center;
}

.hero-actions {
    display: flex;
    justify-content: center;
    gap: 20px;
    flex-wrap: wrap;
}

.hero-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 18px 35px;
    font-size: 1.1rem;
    font-weight: bold;
    text-decoration: none;
    border-radius: 50px;
    transition: all 0.3s ease;
    min-width: 250px;
}

/* Style Bouton Réserver */
.btn-reserve {
    background: #f5b932;
    color: #000;
}
.btn-reserve:hover { background: #e0a800; transform: translateY(-3px); }

/* Style Bouton Appeler */
.btn-call-now {
    background: transparent;
    color: #fff;
    border: 2px solid #fff;
}
.btn-call-now:hover { background: #fff; color: #000; transform: translateY(-3px); }

/* Responsive Mobile */
@media (max-width: 600px) {
    .hero-actions { 
        flex-direction: column; 
        align-items: center; 
    }
    .hero-btn { 
        width: 100%; 
        max-width: 300px;
        margin-bottom: 10px;
    }
}