    /* Footer global */
    footer {
        position: relative;
        width: 100vw;
        margin: 0;
        padding: 0;
        box-sizing: border-box;
        background-color: #f9f9f9;
        font-family: 'Chivo Mono', monospace;
        color: black;
    }

    /* Espace rouge en haut du footer */
    .red_espace {
        position: relative;
        width: 100vw;
        height: 10rem;
        background-color: rgb(145, 16, 42);
        margin: 0;
        left: 0;
    }

    .carousel-container {
        position: relative;
        overflow: hidden;
        max-width: 100%;
        margin: 50px auto;
    }

    .slider-wrapper {
        display: flex;
        transition: transform 0.5s ease-in-out;
    }

    .partner-slider {
        display: flex;
    }

    .slide {
        min-width: 200px;
        margin: 0 10px;
        text-align: center;
    }

    .slide img {
        max-width: 150px;
        max-height: 120px;
        display: block;
        margin: 0 auto 5px;
    }

    .info {
        font-size: 12px;
        color: #333;
    }

    .prev,
    .next {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        background: rgba(0, 0, 0, 0.5);
        color: #fff;
        border: none;
        font-size: 2rem;
        cursor: pointer;
        padding: 5px 10px;
        z-index: 10;
    }

    .prev {
        left: 10px;
    }

    .next {
        right: 10px;
    }

    .slide a {
        text-decoration: none;
        color: inherit;
        display: block;
    }

    .slide a:hover {
        text-decoration: underline;
        cursor: pointer;
        transform: scale(1.05);
        transition: transform 0.3s ease;
    }


    /* Ligne de séparation */
    footer hr {
        border-top: 3px solid rgb(145, 16, 42);
        width: 100%;
        margin: 1rem 0 2rem 0;
    }

    /* Contenu principal du footer */
    .div_footer {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 4rem;
        flex-wrap: nowrap;
        padding: 2rem 1rem;
        text-align: center;
        max-width: 1200px;
        margin: 0 auto;
        box-sizing: border-box;
    }

    /* Blocs internes */
    .div_footer>* {
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    /* Logo footer */
    .img_footer {
        width: 10rem;
        height: 10rem;
        object-fit: contain;
        border-radius: 50%;
        border: solid 0.25rem rgb(145, 16, 42);
    }

    /* Liens dans le footer */
    footer a {
        color: rgb(145, 16, 42);
        font-weight: bold;
        font-size: 1.25rem;
        text-decoration: none;
        transition: color 0.3s ease;
    }

    footer a:hover {
        color: #d8d8d8;
    }

    /* Bloc contact */
    .contact-wrapper {
        max-width: 600px;
        padding: 15px;
        background-color: #f9f9f9;
        border-radius: 12px;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    }

    .contact-row {
        display: flex;
        padding: 8px 0;
        border-bottom: 1px solid #e0e0e0;
    }

    .contact-row:last-child {
        border-bottom: none;
    }

    .contact-label {
        width: 150px;
        font-weight: bold;
        color: #333;
    }

    .contact-value {
        flex: 1;
        color: #555;
    }

    .contact-value a {
        color: inherit;
        text-decoration: none;
    }

    .contact-value a:hover {
        text-decoration: underline;
    }

    .div_footer,
    .carousel-container,
    .contact-wrapper {
        max-width: 100%;
        overflow-x: hidden;    
    }

   /* Tablette (≤768px) */
@media (max-width: 768px) {
    footer {
        padding: 1.5rem 0;
        text-align: center;
    }

    .div_footer {
        flex-direction: column;
        align-items: center;
        gap: 2rem;
        padding: 1rem;
    }

    .img_footer {
        width: 8rem;
        height: 8rem;
    }

    .contact-wrapper {
        width: 90%;
        padding: 1rem;
    }

    /* Carrousel responsive */
    .carousel-container {
        overflow-x: auto;
        padding: 0 0.5rem;
    }

    .partner-slider {
        display: flex;
        gap: 10px;
    }

    .slide {
        flex: 0 0 auto;
        min-width: 100px;
        margin: 0 5px;
    }

    .slide img {
        width: 100%;
        height: auto;
        max-height: 80px;
    }

    footer a {
        font-size: 1rem;
    }
}

/* Mobile (≤480px) */
@media (max-width: 480px) {
    footer {
        padding: 1rem 0;
    }

    .div_footer {
        gap: 1.25rem;
        padding: 0.5rem;
    }

    .img_footer {
        width: 6rem;
        height: 6rem;
    }

    footer a {
        font-size: 0.95rem;
    }

    .contact-wrapper {
        width: 100%;
        padding: 0.5rem;
        box-shadow: none;
    }

    .contact-row {
        flex-direction: column;
        align-items: flex-start;
        padding: 6px 0;
    }

    .contact-label, .contact-value {
        width: 100%;
        font-size: 0.9rem;
    }

    /* Carrousel mobile */
    .carousel-container {
        overflow-x: auto;
        padding: 0 0.25rem;
    }

    .partner-slider {
        display: flex;
        gap: 5px;
    }

    .slide {
        flex: 0 0 auto;
        min-width: 80px;
        margin: 0 5px;
    }

    .slide img {
        width: 100%;
        height: auto;
        max-height: 60px;
    }
}
