/* A compact, monochrome professional profile, independent of screen breakpoints. */
@page {
  margin: 14mm 16mm;
}
:root {
  --ink: #111;
  --muted: #333;
  --accent: #111;
  --accent-dark: #111;
  --paper: #fff;
  --line: #bbb;
}
*,
*::before,
*::after {
  animation: none !important;
  transition: none !important;
  box-shadow: none !important;
  text-shadow: none !important;
}
html,
body {
  margin: 0;
  padding: 0;
  background: #fff;
  color: #111;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 10pt;
  line-height: 1.45;
}
a {
  color: inherit;
  text-decoration: none;
  border: 0;
}
.role-summary,
.meta-separator,
.header,
.skip-link,
.hero-actions,
.hero-bottom,
.portrait,
.status-dot,
.hero-intro h2,
.work .section-heading,
.experience-number,
.experience-proof,
.work-statement,
.expand,
.text-link,
.approach,
.about-label,
.about-copy h2,
.about-copy > p,
.contact,
footer {
  display: none !important;
}
.hero,
.hero-copy,
.section,
.about,
.about-copy,
.experience-body,
.experience-body > div {
  display: block;
  min-height: 0;
  max-width: none;
  width: auto;
  margin: 0;
  padding: 0;
}
.hero {
  border-bottom: 1pt solid #111;
  padding-bottom: 7pt;
  margin-bottom: 9pt;
}
.hero h1 {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 28pt;
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: -0.04em;
  margin: 0 0 5pt;
}
.hero h1 br,
.hero h1 .period {
  display: none;
}
.hero-copy > .eyebrow {
  font-size: 9pt;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: 0.04em;
  margin: 0 0 5pt;
}
.print-contact {
  display: flex;
  flex-wrap: wrap;
  column-gap: 12pt;
  row-gap: 2pt;
  font-size: 8.5pt;
  line-height: 1.45;
  margin-bottom: 7pt;
}
.hero-intro {
  margin: 0;
  max-width: none;
}
.hero-intro > p,
.hero-intro > .hero-availability {
  display: block;
  max-width: none;
  color: #111;
  font-size: 10pt;
  line-height: 1.45;
  margin: 0;
}
.hero-intro > .hero-availability {
  font-size: 9pt;
  margin-top: 3pt;
}
.work::before,
.about::before {
  display: block;
  font-size: 10pt;
  line-height: 1.3;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  margin: 0 0 7pt;
  break-after: avoid;
}
.work::before {
  content: "Selected experience";
}
.about::before {
  content: "Languages & certification";
}
.experience-list {
  border: 0;
  margin: 0;
}
.experience {
  border: 0;
  padding: 0;
  margin: 0 0 16pt;
  break-inside: avoid;
}
summary {
  display: grid;
  grid-template-columns: 1fr 135pt;
  gap: 12pt;
  align-items: start;
  padding: 0;
  margin: 0 0 10pt;
  break-after: avoid;
}
.experience-title {
  display: flex;
  flex-direction: column;
  gap: 1pt;
  color: #111;
  font-size: 10pt;
  line-height: 1.3;
}
.company {
  font-size: 12pt;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.3;
}
.experience-meta {
  display: block;
  grid-column: 2;
  grid-row: 1;
  color: #333;
  font-size: 8.5pt;
  line-height: 1.45;
  text-align: right;
}
.experience-meta br {
  display: initial;
}
.experience-body > div p {
  color: #111;
  font-size: 10pt;
  line-height: 1.45;
  margin: 0 0 6pt;
  orphans: 2;
  widows: 2;
}
.work-note {
  color: #333;
  font-size: 8.5pt;
  line-height: 1.3;
  margin: 1pt 0 0;
}
strong {
  font-weight: 700;
}
.about {
  border-top: 0.5pt solid #bbb;
  padding-top: 12pt;
  margin-top: 12pt;
  break-inside: avoid;
}
.about-facts {
  display: grid;
  grid-template-columns: 1.6fr 1fr;
  gap: 15pt;
  border: 0;
  padding: 0;
  margin: 0;
}
.about-facts > div:first-child {
  display: none;
}
.about-facts .eyebrow {
  font-size: 8pt;
  line-height: 1.3;
  font-weight: 600;
  letter-spacing: 0.04em;
}
.about-facts p {
  font-size: 10pt;
  line-height: 1.45;
  margin: 2pt 0 0;
}
.js-motion .reveal,
.entrance {
  opacity: 1 !important;
  transform: none !important;
}

.role-entry {
  break-inside: avoid;
}
.role-entry h3 {
  font-size: 10pt;
  line-height: 1.3;
  margin: 0;
}
.experience-body .role-period {
  font-size: 8.5pt;
  line-height: 1.3;
  margin: 3pt 0 7pt;
}
.role-entry + .role-entry {
  margin-top: 13pt;
  padding-top: 0;
  border: 0;
}

/* Earlier experience starts together on the second print page. */
.experience-hopp {
  break-before: page;
}
.experience-hopp::before {
  content: "Selected experience — continued";
  display: block;
  font-size: 10pt;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  margin-bottom: 10pt;
}

.certification-badge { display: none !important; }
.certification-fact { grid-column: auto; }
.certification-link { display: block; margin: 2pt 0 0; }
.certification-name { text-decoration: none; }
.certification-link small { font-size: 8.5pt; margin-top: 3pt; }

.certificate-format { display: none !important; }
