/* The résumé page: the site's look on screen, plain black on white in print and in resume.pdf. */
.resume { max-width: 860px; padding-top: 48px; padding-bottom: 80px; }
.resume section { margin-top: 48px; }
.resume h2 { margin: 0 0 16px; font-size: 14px; font-weight: 500; color: var(--accent); text-transform: lowercase; }
.resume h2::before { content: "// "; }
.resume p, .resume li { color: var(--text-2); }
.resume strong { color: var(--text); }
.resume ul { margin: 0; padding-left: 20px; display: flex; flex-direction: column; gap: 8px; }

.cv-head h1 { font-size: clamp(44px, 6vw, 72px); }
.cv-role { margin: 12px 0 0; font-size: 22px; color: var(--text-2); }
.cv-contact { margin: 16px 0 0; font-size: 14px; color: var(--muted); }

.job { margin-top: 32px; padding-top: 24px; border-top: 1px solid var(--line); }
.job-head { display: flex; flex-wrap: wrap; gap: 4px 16px; justify-content: space-between; align-items: baseline; margin-bottom: 12px; }
.job-head h3 { margin: 0; font-size: 22px; }
.job-head h3 span { display: block; font-size: 16px; font-weight: 400; color: var(--muted); }
.dates { font-size: 14px; color: var(--muted); }

@page { size: letter; margin: 0.5in 0.55in; }

@media print {
  :root {
    --bg: #FFFFFF; --text: #111111; --text-2: #222222; --muted: #555555;
    --line: #CCCCCC; --accent: #111111;
  }
  body { font-size: 9.5pt; line-height: 1.33; }
  .no-print { display: none; }
  a { color: inherit; text-decoration: none; }
  .wrap { padding: 0; max-width: none; }
  .resume { padding: 0; }
  .resume section { margin-top: 11pt; }
  .resume h2 { margin-bottom: 6pt; font-size: 9pt; font-weight: 700; text-transform: uppercase; letter-spacing: 0.08em; }
  .resume h2::before { content: none; }
  .resume ul { gap: 2pt; }
  .cv-head h1 { font-size: 26pt; letter-spacing: -0.02em; }
  .cv-role { margin-top: 2pt; font-size: 12pt; }
  .cv-contact { margin-top: 4pt; font-size: 9pt; }
  .job { margin-top: 10pt; padding-top: 0; border-top: 0; }
  .job-head { margin-bottom: 4pt; break-after: avoid; }
  .resume li { break-inside: avoid; }
  .job-head h3 { font-size: 12pt; }
  .job-head h3 span { display: inline; font-size: 10pt; }
  .job-head h3 span::before { content: " · "; }
  .dates { font-size: 9pt; }
}
