/* print.css — clean, ink-friendly output. Loaded with media="print". */
@page { margin: 16mm 14mm; }
html, body { background: #fff !important; color: #000 !important; }
body { font-size: 11pt; line-height: 1.5; display: block; }
.site-header, .site-footer, .announce, .skip-link, .page-progress, .back-to-top, #scroll-top, #bg-chat, .toast-region,
.hero::before, .hero::after, .page-hero::before, .band, .newsletter, .filters, .pagination, .quotes__nav, .btn, .theme-toggle, .nav-toggle { display: none !important; }
.section, .hero, .page-hero { padding-block: 10mm !important; background: none !important; border: 0 !important; }
.container, .page-hero__inner { max-width: none !important; padding-inline: 0 !important; }
h1, h2, h3, h4 { color: #000 !important; break-after: avoid; }
a { color: #000 !important; text-decoration: underline; }
.prose a[href^="http"]::after, .contact-list a[href^="http"]::after { content: " (" attr(href) ")"; font-size: 9pt; color: #444; word-break: break-all; }
.card, .skill, .quote, .timeline__item { break-inside: avoid; box-shadow: none !important; border: 1px solid #bbb !important; background: #fff !important; }
.js-reveal .reveal { opacity: 1 !important; transform: none !important; }
img { max-width: 100% !important; break-inside: avoid; }
.meter > span { background: #000 !important; transform: none !important; }
