/* ============================================================
   PRINT — used mainly by /resume, but every page should print
   sensibly. Ink-efficient, no chrome, real page breaks.
   ============================================================ */

@page {
    size: A4;
    margin: 16mm 14mm;
}

body {
    background: #fff !important;
    color: #111 !important;
    font-size: 10.5pt;
    line-height: 1.45;
}

/* Chrome and decoration never print. */
.nav, .site-footer, .mobile-menu, .read-progress,
.hero-sequence, .hero-canvas, .hero-scroll-cue,
.no-print, .btn, .icon-btn, .social-row,
.cf-turnstile, form, .toc, .cmd-palette {
    display: none !important;
}

.print-only { display: block !important; }

.container, .container-wide, .container-prose {
    max-width: none !important;
    padding: 0 !important;
}

.section { padding-block: 0 !important; }
.section + .section { margin-top: 8mm; }

/* Colour → ink. Keep accents but darken them so they read on paper. */
a { color: #111 !important; text-decoration: none !important; }
.prose a::after { content: " (" attr(href) ")"; font-size: 8pt; color: #555; }

h1, h2, h3, h4 { color: #000 !important; break-after: avoid; }
h2 { font-size: 14pt; margin-top: 6mm; }
h3 { font-size: 11.5pt; margin-top: 4mm; }

p, li { orphans: 3; widows: 3; }

.card, .row-item {
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    break-inside: avoid;
}
.row-item { padding-block: 2mm !important; border-bottom: .3pt solid #ccc !important; }

.chip {
    border: .3pt solid #999 !important;
    background: none !important;
    color: #333 !important;
    padding: .5mm 2mm !important;
}

.eyebrow { color: #666 !important; }
.eyebrow::before { background: #999 !important; }

.grid { display: block !important; }
.grid > * + * { margin-top: 3mm; }
.split { display: block !important; }

/* Résumé-specific: keep each role together on one page. */
.resume-entry { break-inside: avoid; }
.resume-section { break-before: auto; }
