body {
  background-color: #ffffff;
  margin: 0;
  padding: 0;
  color: #000;
  font-family: "Lora", serif; /* User requested serif body */
  line-height: 1.6;
}

/* Hide Quarto header/footer if they sneak in */
#quarto-header, #quarto-footer, .quarto-secondary-nav {
  display: none !important;
}

.page-columns {
  display: block; /* Override grid */
}

main.content {
  max-width: 800px;
  margin: 0 auto;
  padding: 40px 20px;
  background-color: white;
  box-sizing: border-box;
}

/* Headings */
h1, h2, h3, h4, h5, h6 {
  font-family: "Space Mono", monospace; /* User requested monospace headings */
  color: #000;
  margin-top: 2em;
  margin-bottom: 0.8em;
  line-height: 1.2;
}

/* Specific styling for the Main Name */
h1 {
  text-align: center;
  margin-top: 10px;
  font-size: 2.2em;
  border-bottom: none;
  font-weight: 700;
}

/* Contact info line (assumed paragraph immediately after H1) */
h1 + p {
  text-align: center;
  margin-bottom: 3em;
  font-family: "Space Mono", monospace;
  font-size: 0.9em;
  color: #333;
}

/* Section headers */
h2 {
  border-bottom: 2px solid #000;
  padding-bottom: 8px;
  font-size: 1.4em;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  font-weight: 700;
}

/* Sub-headers (Job titles etc) */
h3 {
  font-size: 1.1em;
  font-weight: 700;
  margin-top: 1.5em;
  margin-bottom: 0.2em;
}

/* Work experience company line */
h3 + p {
  margin-top: 0;
  font-style: italic;
  color: #444;
}

/* Lists */
ul {
  padding-left: 20px;
  margin-top: 0.5em;
}

li {
  margin-bottom: 0.5em;
}

strong {
  font-weight: 700;
}

/* Links */
a {
  color: #000;
  text-decoration: underline;
  text-underline-offset: 3px;
}

a:hover {
  text-decoration-thickness: 2px;
}

/* Mobile Responsiveness */
@media (max-width: 600px) {
  main.content {
    padding: 20px 15px;
  }

  h1 {
    font-size: 1.8em;
  }

  h1 + p {
    font-size: 0.8em;
    line-height: 1.4;
  }
}

/* Print adjustments - keep it clean for actual printing */
@media print {
  body {
    background-color: white;
  }
  main.content {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0;
  }
  h1 + p {
    margin-bottom: 1em;
  }
}
