.cv-heading { display:flex; flex-direction:column; align-items:flex-start; gap:24px; margin:43.5px var(--content-left) 24px; }
.cv-heading h1 { margin:0; }
.cv-download { display:flex; align-items:center; gap:9px; font-size:15px; line-height:24px; }
.cv-download-link { display:inline-flex; align-items:center; gap:9px; font-weight:700; }
.cv-download-icon { display:block; flex:none; width:18px; height:auto; }
.cv-contact-links { display:grid; gap:8px; font-size:15px; line-height:24px; }
.cv-contact-links .contact-row { align-items:center; }
.cv-contact-links .contact-row > span:last-child { min-width:0; overflow-wrap:anywhere; }
.cv-document { margin:0 var(--content-left); font-size:15px; line-height:21.75px; }
.cv-document section + section { margin-top:36px; }
.cv-document h2 { margin:0 0 12px; }
.cv-contact h2 { font-size:30px; line-height:36px; }
.cv-document p { margin:0; }

.cv-content { padding-left:16px; }
.cv-row { display:flex; justify-content:space-between; gap:24px; }
.cv-row > :last-child { flex-shrink:0; text-align:right; }
.cv-content ul { margin:6px 0 0; padding-left:20px; }
.cv-experience + .cv-experience { margin-top:18px; }
.cv-experience p { margin-top:6px; }
.cv-paper + .cv-paper { margin-top:18px; }
.cv-paper h3 { font-size:15px; line-height:21.75px; font-weight:400; margin:0 0 3px; }
.cv-paper p { font-size:12px; line-height:18px; }
.cv-paper .cv-meta { font-size:12px; line-height:18px; margin-top:3px; }
.cv-meta a { margin-left:12px; overflow-wrap:anywhere; }
.cv-content dl { margin:0; }
.cv-skill-row + .cv-skill-row { margin-top:6px; }
.cv-content dt { display:inline; font-weight:600; }
.cv-content dd { display:inline; margin:0; }
@media (max-width:900px) {
  .cv-row { flex-wrap:wrap; gap:0 16px; }
  .cv-row > :last-child { text-align:left; }
}
@media (max-width:760px) {
  .cv-heading { margin:34px 0 24px; gap:16px; }
  .cv-heading h1 { margin:0; }
  .cv-document { margin:0; font-size:16px; line-height:24px; }
  .cv-content { padding-left:0; }
  .cv-document section + section { margin-top:32px; }
  .cv-row { flex-direction:column; gap:3px; }
  .cv-row + .cv-row { margin-top:6px; }
  .cv-row > :last-child { flex-shrink:1; }
  .cv-contact-links { font-size:16px; line-height:24px; }
  .cv-paper h3 { font-size:16px; line-height:24px; }
  .cv-paper p, .cv-paper .cv-meta { font-size:13px; line-height:20px; }
  .cv-meta a { display:block; margin-left:0; }
}

/* Keep the handwritten face only for the CV page title. */
.cv-document h2 {
  font-family:inherit;
}
