/* Resume-specific styles. Everything is scoped under .resume so the
   site-wide styles (body, nav, footer, links, fonts) are left alone.
   Sizes are in em so the resume follows the site's base font size;
   0.82em is the "small" size (9pt relative to an 11pt base). */

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

.resume {
  /* uncomment to use a Computer Modern look instead of the site font:
  font-family: "New Computer Modern", "Latin Modern Roman", "CMU Serif", serif; */
  line-height: 1.3;
}

.resume p {
  margin: 0;
}

/* ── header ─────────────────────────────────────────────── */
.resume .header {
  text-align: center;
}

.resume .header h1 {
  font-size: 1.64em;
  font-weight: bold;
  font-variant: small-caps;
  line-height: 1.2;
  margin: 0 0 0.1em;
  padding: 0;
  border-bottom: none; /* site css puts a rule under every h1 */
}

.resume .header p {
  margin-bottom: 0.1em;
}

.resume .header p:last-child {
  font-size: 0.82em;
}

/* ── section headings ───────────────────────────────────── */
.resume h2 {
  font-size: 1em;
  font-weight: bold;
  font-variant: small-caps;
  line-height: 1.2;
  margin: 0.7em 0 0.35em;
  padding-bottom: 0.1em;
  border-bottom: 1px solid currentColor;
}

/* ── skills / interests ─────────────────────────────────── */
.resume .skills {
  font-size: 0.82em;
  padding-left: 0.18in;
}

.resume .skills p {
  margin-bottom: 0.15em;
}

/* ── entries ────────────────────────────────────────────── */
.resume .entry {
  margin-top: 0.45em;
  break-inside: avoid;
}

.resume .entry-head {
  display: grid;
  grid-template-columns: 1fr auto;
  column-gap: 1em;
  row-gap: 0.1em;
}

.resume .entry-head .org {
  font-weight: bold;
}

.resume .entry-head .date,
.resume .entry-head .loc {
  text-align: right;
}

.resume .entry-head .role,
.resume .entry-head .loc {
  font-style: italic;
  font-size: 0.82em;
}

.resume .project .entry-head .org {
  font-weight: normal;
  font-size: 0.82em;
}

.resume .project .entry-head .date {
  font-size: 0.82em;
}

/* ── bullets ────────────────────────────────────────────── */
.resume .entry ul {
  list-style: none;
  margin: 0.3em 0 0;
  padding: 0 0 0 0.18in;
  font-size: 0.82em;
}

.resume .entry li {
  position: relative;
  padding-left: 1.1em;
  margin-bottom: 0.3em;
}

.resume .entry li:last-child {
  margin-bottom: 0;
}

.resume .entry li::before {
  content: "•";
  position: absolute;
  left: 0.3em;
}

/* ── print ──────────────────────────────────────────────── */
@media print {
  nav,
  footer {
    display: none;
  }

  body {
    max-width: none;
    margin: 0;
    padding: 0;
    background: #fff;
  }

  /* 20px on paper is too big to fit a one-page resume; use the
     original 11pt base (everything else scales from it) */
  .resume {
    font-size: 11pt;
  }

  .resume a {
    color: #000;
    text-decoration: underline;
  }
}
