/* Font roles shared by the portfolio and its dialogs. */
:root {
  --font-family-base: "Quattrocento", Georgia, serif;
  --font-family-heading: "Bungee Shade", sans-serif;
  --font-family-navigation: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --font-family-playful: "Happy Monkey", cursive;
}
body, p, input, textarea, select { font-family: var(--font-family-base); }
h1, h4, h5, h6, .hero-title[data-v-0f70623d] {
  font-family: var(--font-family-heading);
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.2;
}
h2, .about-copy h2[data-v-14b996e9], .modal-header h2[data-v-bbe97f6c] {
  font-family: var(--font-family-heading);
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.15;
}
h3, .about-copy h3[data-v-14b996e9], .tool-group h3[data-v-d7cc172d],
.project-title[data-v-c3f3d6a0], .project-section h3[data-v-f74be40c] {
  font-family: var(--font-family-heading);
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.3;
}
button, .btn, .site-nav .nav-link, .site-nav .contact-link,
.hero-button[data-v-0f70623d], .control-button[data-v-cd259d18],
.project-link[data-v-e14b2764], .back-link {
  font-family: var(--font-family-navigation);
  font-weight: 400;
  letter-spacing: .035em;
}
/* This button doubles as the contact section heading. */
.contact-heading[data-v-396cd879] {
  font-family: var(--font-family-heading);
  font-weight: 400;
}
.eyebrow[data-v-0f70623d], .about-kicker[data-v-14b996e9],
.about-interests li[data-v-14b996e9], .project-placeholder[data-v-c3f3d6a0],
.learning-note p[data-v-d7cc172d] {
  font-family: var(--font-family-playful);
  font-weight: 400;
}
/* Bungee Shade already includes its own outline and shadow. */
.hero-title .outline[data-v-0f70623d] {
  color: var(--color-heading);
  -webkit-text-stroke: 0;
}
.hero-title[data-v-0f70623d] { font-size: clamp(1.5rem, 4.2vw, 3.2rem); }
@media (max-width: 800px) {
  .hero-title[data-v-0f70623d] { font-size: clamp(1.2rem, 5.8vw, 2.8rem); }
}
