/* Print styles for cv.html — optimized to fit on one A4 page */
@page { size: A4; margin: 10mm; }

/* Base typography */
html, body { height: auto; }
body { font-size: 11px; line-height: 1.35; hyphens: auto; -webkit-hyphens: auto; }

/* Layout tightening */
.page { max-width: none; margin: 0; padding: 0 6mm; }
header h1 { font-size: 18px; line-height: 1.15; margin-bottom: 2mm; }
header .meta { font-size: 10px; }

/* Headings and sections */
h2 { margin: 10mm 0 3mm; font-size: 10px; letter-spacing: 0.05em; }
.section { margin-top: 6mm; }

/* Two-column layout for print to conserve space */
.two-col { display: grid !important; grid-template-columns: 2fr 1fr; gap: 6mm; }

/* Items and lists compact spacing */
.item { margin: 2.5mm 0 0; padding-top: 1.5mm; }
.item + .item { border-top: 1px solid #eee; }
.item h3 { font-size: 11px; line-height: 1.25; }
.item .sub { font-size: 10px; margin-top: 1mm; }
.item ul { margin: 1.5mm 0 0 3mm; }
.item li { margin: 1mm 0; }

/* Links */
a { color: inherit; text-decoration: none; }

/* Pagination and break control */
* { orphans: 2; widows: 2; }
section, .item { break-inside: avoid; page-break-inside: avoid; }
