.footer-underline {
    width: 40px;
    height: 3px;
    background-color: #dc3545;
    /* rouge Bootstrap danger */
    margin-top: 5px;
    margin-bottom: 15px;
}

.contact-item {
    text-align: left;
}

.contact-label {
    display: block;
    font-weight: bold;
    margin-bottom: 6px;
}

.contact-mail {
    display: flex;
    align-items: center;
    gap: 6px;
    /* espace entre flèche et email */
}

.arrow-circle, .arrow-circle-new {
    display: inline-flex;
    width: 30px;
    /* augmente la taille du cercle */
    height: 30px;
    border: 2px solid #dc3545;
    /* cercle rouge autour de la flèche */
    border-radius: 50%;
    /* rend le cercle parfaitement rond */
    align-items: center;
    justify-content: center;
}

.arrow-circle svg {
    width: 60%;
    /* réduit légèrement la flèche pour qu’elle tienne dans le cercle */
    height: 60%;
    fill: #dc3545;
}

.arrow-circle-new svg {
    width: 60%;
    height: 60%;
    fill: #dc3545;
    transform: rotate(180deg);
    /* retourne la flèche horizontalement */
}

.contact-link {
    color: #dc3545;
    font-weight: bold;
    text-decoration: none;
    font-size: 1.4rem;
    /* augmente la taille du mail */
}




/*Hero*/

 .hero-slider {
            height: 55vh;
            position: relative;
            overflow: hidden;
        }

        .slide {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            opacity: 0;
            transition: opacity 1s ease-in-out;
            background-size: cover;
            background-position: center;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .slide.active {
            opacity: 1;
        }

        .slide-overlay {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: rgba(0, 0, 0, 0.6);
            z-index: 1;
        }

        .slide-content {
            position: relative;
            z-index: 2;
            text-align: center;
            color: white;
            max-width: 800px;
            padding: 0 20px;
            opacity: 0;
            transform: translateY(50px);
            transition: none;
        }

        .slide.active .slide-content {
            opacity: 1;
            transform: translateY(0);
        }

        .slide-content h1 {
            font-size: 3.5rem;
            font-weight: 700;
            margin-bottom: 20px;
            color: #dc3545;
        }

        .slide-content p {
            font-size: 1.3rem;
            margin-bottom: 30px;
            text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
        }

        .slide-buttons {
            display: flex;
            justify-content: center;
            gap: 20px;
            flex-wrap: wrap;
        }
        
        /* Bouton gauche en vert */
        .slide-buttons .btn-left {
            background-color: #28a745;
            border: none;
            color: white;
            padding: 12px 30px;
            font-weight: 600;
            text-transform: uppercase;
            letter-spacing: 1px;
            border-radius: 50px;
            transition: all 0.3s ease;
        }
        
        /* Bouton droit en rouge */
        .slide-buttons .btn-right {
            background-color: #dc3545;
            border: none;
            color: white;
            padding: 12px 30px;
            font-weight: 600;
            text-transform: uppercase;
            letter-spacing: 1px;
            border-radius: 50px;
            transition: all 0.3s ease;
        }

        .slide-buttons .btn-left:hover,
        .slide-buttons .btn-right:hover {
            transform: translateY(-3px);
            box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
        }
        
        .slide-buttons .btn-left:hover {
            background-color: #218838;
        }
        
        .slide-buttons .btn-right:hover {
            background-color: #c82333;
        }

        .slider-nav {
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            background: rgba(255,255,255,0.2);
            border: 2px solid rgba(255,255,255,0.3);
            color: white;
            width: 50px;
            height: 50px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            transition: all 0.3s ease;
            z-index: 3;
        }

        .slider-nav:hover {
            background: rgba(255,255,255,0.3);
            transform: translateY(-50%) scale(1.1);
        }

        .slider-nav.prev {
            left: 30px;
        }

        .slider-nav.next {
            right: 30px;
        }
        
        .slider-progress {
            position: absolute;
            bottom: 20px;
            left: 50%;
            transform: translateX(-50%);
            width: 100px;
            height: 4px;
            background: rgba(255, 255, 255, 0.3);
            z-index: 3;
            border-radius: 2px;
            overflow: hidden;
        }
        
        .progress-bar {
            height: 100%;
            width: 0%;
            background: white;
            transition: width 0.3s ease;
        }

        /* Animations */
        .animate-fadeIn {
            animation: fadeIn 1s ease forwards;
        }

        .animate-slideInRight {
            animation: slideInRight 1s ease forwards;
        }

        .animate-slideInLeft {
            animation: slideInLeft 1s ease forwards;
        }

        .animate-slideInTop {
            animation: slideInTop 1s ease forwards;
        }

        .animate-slideInBottom {
            animation: slideInBottom 1s ease forwards;
        }

        .animate-zoomIn {
            animation: zoomIn 1s ease forwards;
        }

        @keyframes fadeIn {
            from { opacity: 0; }
            to { opacity: 1; }
        }

        @keyframes slideInRight {
            from { opacity: 0; transform: translateX(100px); }
            to { opacity: 1; transform: translateX(0); }
        }

        @keyframes slideInLeft {
            from { opacity: 0; transform: translateX(-100px); }
            to { opacity: 1; transform: translateX(0); }
        }

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

        @keyframes slideInBottom {
            from { opacity: 0; transform: translateY(100px); }
            to { opacity: 1; transform: translateY(0); }
        }

        @keyframes zoomIn {
            from { opacity: 0; transform: scale(0.8); }
            to { opacity: 1; transform: scale(1); }
        }

        @media (max-width: 768px) {
            .slide-content h1 {
                font-size: 2.5rem;
            }

            .slide-content p {
                font-size: 1.1rem;
            }

            .slide-buttons {
                flex-direction: column;
                align-items: center;
            }
            
            .slide-buttons .btn-left,
            .slide-buttons .btn-right {
                width: 200px;
                margin: 5px 0;
            }
            
            .slider-nav {
                width: 50px;
                height: 50px;
                font-size: 20px;
            }
            
            .slider-nav.prev {
                left: 15px;
            }

            .slider-nav.next {
                right: 15px;
            }
        }


/* Partners */

        .partners-section {
            overflow: hidden;
            padding: 80px 0;
            background-color: #f8f9fa;
        }
        
        .section-title {
            text-align: center;
            margin-bottom: 50px;
            color: #000000;
            position: relative;
        }
        
        .section-title:after {
            content: '';
            display: block;
            width: 80px;
            height: 4px;
            background: #dc3545;
            margin: 15px auto;
            border-radius: 2px;
        }
        
        .partners-slider {
            overflow: hidden;
            position: relative;
            padding: 20px 0;
        }
        
        .partners-track {
            display: flex;
            flex-wrap: nowrap;
            animation: scroll 30s linear infinite;
            width: calc(200px * 10); /* Double the width for seamless loop */
        }
        
        .partner-item {
            height: 120px;
            width: 200px;
            flex-shrink: 0;
            display: flex;
            align-items: center;
            justify-content: center;
            margin: 0 15px;
            background: white;
            border-radius: 10px;
            box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
            transition: all 0.3s ease;
        }
        
        .partner-item:hover {
            transform: translateY(-5px);
            box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
        }
        
        .partner-logo {
            max-width: 80%;
            max-height: 70px;
            object-fit: contain;
            filter: grayscale(100%);
            opacity: 0.7;
            transition: all 0.3s ease;
        }
        
        .partner-item:hover .partner-logo {
            filter: grayscale(0%);
            opacity: 1;
        }
        
        @keyframes scroll {
            0% {
                transform: translateX(0);
            }
            100% {
                transform: translateX(calc(-200px * 5)); /* Move by half the width */
            }
        }
        
        /* Pause animation on hover */
        .partners-slider:hover .partners-track {
            animation-play-state: paused;
        }
        
        /* Responsive adjustments */
        @media (max-width: 768px) {
            .partner-item {
                width: 150px;
                height: 100px;
            }
            
            .partners-track {
                animation: scroll-mobile 30s linear infinite;
                width: calc(150px * 10);
            }
            
            @keyframes scroll {
                0% {
                    transform: translateX(0);
                }
                100% {
                    transform: translateX(calc(-150px * 5));
                }
            }
        }




