@charset "UTF-8"; /** * print.css — Feuille de styles d'impression * Générée à partir de main.css * * À charger via : <link rel="stylesheet" media="print" href="print.css"> * Ou en complément d'un @media print dans main.css. */ @media print { /* ============================================================ 1. RESET GLOBAL IMPRESSION ============================================================ */ *, *::before, *::after { background: transparent !important; background-image: none !important; box-shadow: none !important; text-shadow: none !important; filter: none !important; -webkit-filter: none !important; color: #000 !important; border-color: #ccc !important; transition: none !important; animation: none !important; transform: none !important; will-change: auto !important; } html, body { width: 100%; margin: 0; padding: 0; font-size: 12pt; line-height: 1.5; overflow-x: visible; background: #fff !important; color: #000 !important; } /* ============================================================ 2. TYPOGRAPHIE (héritée de main.css) ============================================================ */ body { font-family: Georgia, "Times New Roman", Times, serif; font-size: 12pt; line-height: 1.6; } h1, h2, h3, h4, h5, h6 { font-family: Arial, Helvetica, sans-serif; font-weight: 700; line-height: 1.2; color: #000 !important; page-break-after: avoid; break-after: avoid; orphans: 3; widows: 3; } h1 { font-size: 24pt; margin-bottom: 12pt; } h2 { font-size: 18pt; margin-bottom: 10pt; } h3 { font-size: 14pt; margin-bottom: 8pt; } h4 { font-size: 12pt; margin-bottom: 6pt; } h5, h6 { font-size: 11pt; margin-bottom: 6pt; } p, li, dd, dt { font-size: 11pt; orphans: 3; widows: 3; margin-bottom: 6pt; } strong, b { font-weight: 700; } em, i { font-style: italic; } small { font-size: 9pt; } figcaption, .wp-caption-text, .gallery-caption { font-size: 9pt; font-style: italic; text-align: center; } /* ============================================================ 3. LIENS ============================================================ */ a { color: #000 !important; text-decoration: underline; word-break: break-all; } /* Afficher l'URL après les liens */ a[href]::after { content: " (" attr(href) ")"; font-size: 9pt; font-style: italic; color: #555 !important; word-break: break-all; } /* Ne pas afficher l'URL pour les ancres et les liens JS */ a[href^="#"]::after, a[href^="javascript:"]::after { content: ""; } /* Ne pas afficher les URL pour les boutons et liens nav */ .elementor-button::after, .wp-block-button__link::after, .wp-element-button::after, .btn::after, .btn-mag::after, .card-link::after, .nav-menu a::after, .social-link::after, header a::after, footer a::after { content: "" !important; } abbr[title]::after { content: " (" attr(title) ")"; } /* ============================================================ 4. IMAGES ============================================================ */ img, figure, .elementor-widget-image { max-width: 100% !important; height: auto !important; page-break-inside: avoid; break-inside: avoid; display: block; margin: 0 auto 10pt; } /* Éviter les images cassées à l'impression */ img[src$=".svg"] { max-width: 80px; } /* ============================================================ 5. TABLEAUX ============================================================ */ table { width: 100% !important; border-collapse: collapse; border-spacing: 0; page-break-inside: auto; } thead { display: table-header-group; } tr { page-break-inside: avoid; break-inside: avoid; } th, td { border: 1px solid #999 !important; padding: 4pt 6pt; text-align: left; font-size: 10pt; } th { font-weight: 700; background: #f0f0f0 !important; color: #000 !important; } /* ============================================================ 6. BLOCS ET SÉPARATEURS ============================================================ */ blockquote { border-left: 3pt solid #999 !important; margin: 10pt 0 10pt 16pt; padding-left: 10pt; font-style: italic; page-break-inside: avoid; break-inside: avoid; } pre, code, kbd, samp { font-family: "Courier New", Courier, monospace; font-size: 10pt; border: 1px solid #ccc; page-break-inside: avoid; break-inside: avoid; white-space: pre-wrap; } hr, .wp-block-separator, .is-divider { border: none !important; border-top: 1pt solid #999 !important; margin: 12pt 0; background: transparent !important; } /* ============================================================ 7. ÉLÉMENTS À MASQUER À L'IMPRESSION ============================================================ */ /* Navigation et header interactif */ header #barre-menu, header .bandeau.is-sticky-header, .nav-toggle-open, .nav-toggle-close, #site-navigation, .nav-menu, .sub-menu, .header-elements-wrapper, .header-cta, .header-social-wrap, .skip-links, /* Bannière / hero (généralement décoratif) */ .image-switcher, .image-switcher__nav, .image-switcher__dots, .cta-switcher, .has-parallax .elementor-widget-image, /* Boutons et CTA */ .elementor-button, .wp-block-button__link, .wp-element-button, .btn, .btn-mag, .wpcf7-submit, .wpcf7-response-output, .social-link, .social-links-wrap, .footer-social-wrap, .header-social-wrap, /* Footer interactif */ footer .footer-bar .footer-nav, footer .eco-badge-container-light, footer .eco-badge-container-dark, /* Éléments UI interactifs */ .tm-accordion-item summary::after, details > summary::after, [hidden], .screen-reader-text, /* Animations / parallaxe */ [data-parallax], .parallax, /* Éléments WordPress admin */ #wpadminbar { display: none !important; } /* ============================================================ 8. MISE EN PAGE DU CONTENU PRINCIPAL ============================================================ */ main, .entry-content, .wp-block-post-content { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; display: block !important; min-height: 0 !important; } /* Conteneurs Elementor / WordPress */ .e-con, .e-con-inner, .e-con-full, .e-con-boxed, .wp-block-group, .wp-block-columns, .wp-block-column { display: block !important; width: 100% !important; max-width: 100% !important; padding: 0 !important; margin: 0 !important; gap: 0 !important; flex: none !important; } /* Grilles → bloc */ .elementor .e-con.e-grid { display: block !important; } /* Cartes */ .tm-card-item { display: block !important; width: 100% !important; page-break-inside: avoid; break-inside: avoid; margin-bottom: 12pt; border: 1px solid #ccc !important; padding: 8pt !important; border-radius: 0 !important; box-shadow: none !important; } .tm-card-item .card-title { font-size: 13pt; font-weight: 700; color: #000 !important; } /* Accordéons — afficher le contenu */ .tm-accordion-item { display: block !important; page-break-inside: avoid; break-inside: avoid; } .tm-accordion-item .content-wrapper { display: block !important; grid-template-rows: unset !important; overflow: visible !important; } .tm-accordion-item .content-wrapper > div { min-height: unset !important; display: block !important; } /* ============================================================ 9. HEADER À L'IMPRESSION (version simplifiée) ============================================================ */ body header#site-header { position: static !important; width: 100% !important; } .site-logo-wrapper, .mag-logo-wrap { display: block !important; margin-bottom: 12pt; } /* Logo : ne conserver que le logo par défaut */ .mag-logo-wrap__scroll { display: none !important; } .mag-logo-wrap__default { display: block !important; opacity: 1 !important; visibility: visible !important; position: static !important; } /* ============================================================ 10. FOOTER À L'IMPRESSION (version simplifiée) ============================================================ */ .site-footer { margin-top: 24pt; padding-top: 8pt; border-top: 1pt solid #ccc !important; page-break-before: auto; } .site-footer .footer-address, .site-footer .footer-email, .site-footer .footer-brand { display: block !important; } .site-footer .footer-bar .footer-signature { font-size: 9pt; color: #555 !important; } /* ============================================================ 11. SAUTS DE PAGE ============================================================ */ h2, h3 { page-break-after: avoid; break-after: avoid; } p, h2, h3 { orphans: 3; widows: 3; } section, article, .e-con.e-parent { page-break-inside: avoid; break-inside: avoid; } /* ============================================================ 12. LISTES ============================================================ */ ul, ol { padding-left: 18pt; list-style: disc; } li { list-style: inherit; margin-bottom: 3pt; } /* Icônes de liste Elementor */ .elementor-icon-list-item { display: list-item !important; list-style: disc; } .elementor-icon-list-icon { display: none !important; } .elementor-icon-list-text { padding-left: 0 !important; } } /* fin @media print */