/* =====================================================================
   PRINT STYLESHEET — formatage propre quand on imprime le portfolio
   Cible : conversion en CV propre, économie d'encre, lisibilité papier.
   ===================================================================== */
@media print {
    /* Reset clean papier */
    html, body {
        background: white !important;
        color: #1a1a1a !important;
        font-size: 11pt;
        line-height: 1.5;
        font-family: 'Onest', Georgia, serif;
    }

    /* Cacher éléments non-imprimables */
    #header,
    .nav-links,
    .hamburger,
    .theme-toggle,
    .side-nav,
    .sticky-cta,
    .cookie-banner,
    .grain,
    .cursor-dot,
    .cursor-ring,
    .cursor-view,
    .page-transition,
    .intro-loader,
    .bento-preview,
    .sound-toggle,
    #progress-bar,
    .live-scroll-progress,
    .marquee-section,
    .text-marquee,
    .hero-actions,
    .hero-showcase,
    .scroll-indicator,
    .voice-intro-btn,
    .form-success-banner,
    .contact-form,
    .palette-toggle,
    canvas,
    video,
    .ed-marquee,
    .ed-transition,
    .hero-watermark,
    .ms-watermark,
    [data-section-num]::before,
    [data-section-num]::after,
    .av2-hero canvas,
    .footer-socials,
    .av2-colophon-actions,
    .showcase-quickcta,
    .live-status-pill,
    .lang-switch {
        display: none !important;
    }

    /* Layout fluide */
    main,
    .container {
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 1cm !important;
    }
    section {
        page-break-inside: avoid;
        padding: 0.5cm 0 !important;
        background: white !important;
        border: none !important;
    }

    /* Hierarchy typo papier */
    h1, .hero-title {
        font-family: 'Syne', sans-serif;
        font-size: 24pt !important;
        color: #1a1a1a !important;
        margin: 0 0 0.4cm !important;
        page-break-after: avoid;
    }
    h2, .section-title {
        font-family: 'Syne', sans-serif;
        font-size: 16pt !important;
        color: #1a1a1a !important;
        margin: 0.8cm 0 0.3cm !important;
        page-break-after: avoid;
    }
    h3, .service-card-title, .manifesto-title, .testimonial-name {
        font-size: 12pt !important;
        color: #1a1a1a !important;
        margin: 0.4cm 0 0.15cm !important;
    }
    p {
        font-size: 11pt !important;
        line-height: 1.55 !important;
        color: #333 !important;
        margin: 0 0 0.3cm !important;
    }
    .section-label, .hero-badge, .service-chip, .testimonial-role, .stat-meta {
        font-size: 9pt !important;
        color: #555 !important;
        letter-spacing: 0.05em;
        text-transform: uppercase;
    }

    /* Gradient text fallback noir */
    .hero-title em,
    .imagine-accent,
    .no-list-head em,
    [class*="-accent"] {
        background: none !important;
        -webkit-text-fill-color: #1a1a1a !important;
        color: #1a1a1a !important;
        font-family: serif;
        font-style: italic;
    }

    /* Liens visibles avec URL */
    a {
        color: #0066cc !important;
        text-decoration: underline;
    }
    .btn-primary, .btn-secondary, .btn-submit {
        background: none !important;
        color: #0066cc !important;
        border: 1px solid #0066cc !important;
        padding: 0.2cm 0.5cm !important;
        box-shadow: none !important;
    }

    /* Images noir/blanc économique */
    img {
        max-width: 60% !important;
        max-height: 6cm !important;
        filter: grayscale(100%);
        page-break-inside: avoid;
    }
    .about-img-wrap img,
    .testimonial-avatar {
        max-width: 4cm !important;
        max-height: 4cm !important;
        border-radius: 50% !important;
    }

    /* Cards papier — bordures fines */
    .service-card,
    .testimonial-card,
    .process-step,
    .no-item,
    .stat-card,
    .bento-card,
    .skill-bar,
    .manifesto-item,
    .faq-item {
        background: none !important;
        border: 1px solid #ddd !important;
        border-radius: 4pt !important;
        padding: 0.3cm 0.4cm !important;
        page-break-inside: avoid;
        box-shadow: none !important;
    }

    /* Footer page imprimée */
    footer {
        margin-top: 1cm !important;
        padding-top: 0.5cm !important;
        border-top: 1px solid #ccc !important;
        font-size: 9pt !important;
    }

    /* URL après les liens */
    a[href^="http"]::after {
        content: " (" attr(href) ")";
        font-size: 8pt;
        color: #888;
    }
    a[href^="mailto:"]::after,
    a[href^="tel:"]::after,
    a[href^="#"]::after {
        content: "";
    }

    /* Sauts de page logiques */
    #services,
    #about,
    #manifesto,
    #work,
    #testimonials,
    #process,
    #skills,
    #contact {
        page-break-before: auto;
    }
}
