/* Tablettes et petits écrans */
@media (max-width: 768px) {
    .nav-desktop { display: none; }
    .burger { display: flex; }
    .nav-mobile.active { display: block; }
    .header-top { flex-wrap: wrap; justify-content: center; }
    .logo-link { width: 60px; height: 60px; }
    .header-right { width: 100%; justify-content: center; margin-top: 10px; }
    .hero h1 { font-size: 2rem; }
    .dashboard-grid { grid-template-columns: 1fr; }

    /* News - liste : passage en colonne avec image en haut centrée */
    .news-card {
        flex-direction: column;
        align-items: center;
        padding: 20px;
    }

    .news-card-image {
        flex: 0 0 auto;
        max-width: 100%;
        width: 180px;
        height: 180px;
        border-radius: 50%;
        overflow: hidden;
        margin-bottom: 15px;
        border: 3px solid #E74C3C;
    }

    .news-card-image img {
        width: 100%;
        height: 100%;
        min-height: auto;
        object-fit: cover;
    }

    .news-card-content {
        padding: 0;
        text-align: center;
        width: 100%;
    }

    .news-card-title {
        font-size: 1.2rem;
    }

    .news-card-footer {
        justify-content: center;
    }

    /* Article complet : image plus petite */
    .article-full-img {
        width: 200px;
        height: 200px;
    }

    .article-full-title {
        font-size: 1.6rem;
    }

    .article-full-content {
        font-size: 1rem;
    }

    /* Services */
    .services-title {
        font-size: 1.8rem;
    }

    .service-card {
        padding: 25px 20px;
    }

    .service-title {
        font-size: 1.6rem;
    }

    .service-description {
        font-size: 1rem;
    }

    .service-features li {
        font-size: 0.95rem;
    }
}

@media (max-width: 480px) {
    .btn { padding: 8px 15px; }
    .hero { padding: 30px 0; }

    /* News - liste : image encore plus petite */
    .news-card-image {
        width: 140px;
        height: 140px;
    }

    .news-card-title {
        font-size: 1rem;
    }

    .news-card-text {
        font-size: 0.9rem;
    }

    /* Article complet : image plus petite */
    .article-full-img {
        width: 160px;
        height: 160px;
    }

    .article-full-title {
        font-size: 1.3rem;
    }

    /* Services */
    .services-title {
        font-size: 1.5rem;
    }

    .service-card {
        padding: 20px 15px;
    }

    .service-title {
        font-size: 1.3rem;
    }

    .service-description {
        font-size: 0.95rem;
    }

    .service-features li {
        font-size: 0.9rem;
    }

    .service-actions .btn-primary {
        padding: 12px 25px;
        font-size: 0.95rem;
    }
}
/* ===== PAGES LÉGALES - RESPONSIVE ===== */
@media (max-width: 768px) {
    .legal-title {
        font-size: 1.8rem;
    }

    .legal-content h2 {
        font-size: 1.3rem;
        margin-top: 25px;
    }

    .legal-content p,
    .legal-content ul,
    .legal-content ol {
        font-size: 0.95rem;
    }

    .retractation-form {
        padding: 20px;
    }

    .legal-contact {
        font-size: 0.95rem;
    }
}

@media (max-width: 480px) {
    .legal-title {
        font-size: 1.5rem;
    }

    .legal-content h2 {
        font-size: 1.1rem;
        margin-top: 20px;
    }

    .legal-content p,
    .legal-content ul,
    .legal-content ol {
        font-size: 0.9rem;
    }

    .legal-content ul,
    .legal-content ol {
        padding-left: 20px;
    }

    .retractation-form {
        padding: 15px;
        font-size: 0.9rem;
    }

    .retractation-form .highlight {
        display: block; /* pour que les champs à remplir soient sur une nouvelle ligne sur mobile */
        margin-top: 3px;
    }

    .legal-update {
        font-size: 0.8rem;
    }
}