@media print {
    /* Mise en page minimale pour impression : texte seul, fond blanc */
    body {
        background: #fff;
        color: #000;
        font-family: "Space Grotesk", system-ui, -apple-system, sans-serif;
        font-size: 10.5pt;
        line-height: 1.45;
    }
    /* Neutralise tous les décors de l'UI */
    * {
        color: #000 !important;
        background: transparent !important;
        box-shadow: none !important;
        border: none !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }
    h1, h2, h3, h4, h5, h6,
    p, li, a, span, strong, em {
        color: #000 !important;
    }
    /* Masquer la barre de navigation et le footer en impression */
    .site-header,
    .site-footer,
    .nav-toggle,
    .print-btn,
    .letter-btn,
    .pdf-overlay,
    .doc-actions,
    .letter-dropdown {
        display: none !important;
    }
    /* Conteneur page */
    .page {
        width: 100%;
        max-width: 780pt;
        margin: 0 auto;
        padding: 12pt 14pt;
        background: #fff !important;
    }
    .page::before {
        content: none !important;
    }
    .cv-page {
        display: block;
    }
    .cv-page .section {
        margin: 12pt 0;
        padding: 0;
    }
    /* Titres et texte */
    .cv-page h1.cv-name { font-size: 18pt; margin: 0 0 6pt; color: #000 !important; background: none !important; -webkit-text-fill-color: #000 !important; display: block !important; }
    .cv-page h2 { font-size: 13pt; margin: 0 0 5pt; color: #000 !important; background: none !important; -webkit-text-fill-color: #000 !important; }
    .cv-page h3 { font-size: 11pt; margin: 4pt 0 3pt; color: #000 !important; background: none !important; -webkit-text-fill-color: #000 !important; }
    .cv-page h4 { font-size: 10pt; margin: 3pt 0 2pt; color: #000 !important; background: none !important; -webkit-text-fill-color: #000 !important; }
    .print-only { display: block !important; color: #000 !important; }
    .cv-page p,
    .cv-page li { font-size: 9.5pt; line-height: 1.35; margin: 0 0 4pt; }
    /* En-tête + photo */
    .cv-header {
        display: flex !important;
        flex-direction: row;
        align-items: flex-start;
        justify-content: space-between;
        gap: 10pt;
        margin-bottom: 10pt;
        border: none;
        padding: 0;
    }
    .cv-actions { display: none !important; }
    /* Grille de contenu : 2 colonnes si l'espace le permet */
    .grid {
        display: grid;
        grid-template-columns: repeat(2, minmax(240pt, 1fr));
        gap: 8pt;
    }
    .grid .card { margin: 0; }
    /* Suppression des blocs visuels */
    .card,
    .contact-card,
    .section {
        display: block !important;
        padding: 0 !important;
        background: transparent !important;
        border: none !important;
        box-shadow: none !important;
        border-radius: 0 !important;
    }
    .card::before,
    .contact-card::before {
        display: none !important;
        content: none !important;
    }
    /* Titres des cartes visibles et en noir */
    .card h1,
    .card h2,
    .card h3,
    .card h4,
    .contact-card h1,
    .contact-card h2,
    .contact-card h3,
    .contact-card h4 {
        color: #000 !important;
        background: none !important;
        -webkit-text-fill-color: #000 !important;
        margin-bottom: 4pt;
    }
    .card .eyebrow,
    .contact-card .eyebrow {
        color: #000 !important;
        margin-bottom: 3pt;
    }
    /* Pills en texte simple */
    .pill-list {
        gap: 4pt;
        margin: 4pt 0 0;
    }
    .pill-list li {
        padding: 0;
        margin-right: 6pt;
        display: inline;
    }
    /* Liens comme texte */
    a {
        color: #000 !important;
        text-decoration: none;
    }
}
