/* Final project-card title sizing and Cormorant H2 consistency — 2026-07-29 */
:root {
  --project-card-title-size: 1.125rem; /* 18px mobile */
  --project-card-title-panel-height: 68px;
}

/* Project-card titles are enlarged, left aligned, and vertically centered. */
.page-home .project-card__content {
  display: flex !important;
  min-height: var(--project-card-title-panel-height) !important;
  padding: 0 24px !important;
  align-items: center !important;
  justify-content: flex-start !important;
  text-align: left !important;
}

.page-home .project-card__title {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  color: #ffffff !important;
  font-family: "Raleway", Arial, sans-serif !important;
  font-size: var(--project-card-title-size) !important;
  font-style: normal !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1.2 !important;
  text-align: left !important;
}

/* Lora is reserved for H2-level headings, and every H2 uses
   exactly the same font, size, weight, color, spacing, and line height. */
html body h2,
html body .about-section__title,
html body .about-section__title--mindset,
html body .about-section__title--portfolio-motion,
html body .about-section__title--chosen-path,
html body .learn-more__title,
html body .resume-editorial__section > h2,
html body .source-media-section > h2 {
  font-family: "Lora", Georgia, serif !important;
  font-size: var(--h2-size) !important;
  font-style: normal !important;
  font-weight: 500 !important;
  letter-spacing: -0.024em !important;
  line-height: 1.15 !important;
  color: #023fa1 !important;
  text-transform: none !important;
}

/* Non-H2 interface and display text follows the Raleway/Inter system rather
   than using Cormorant as an isolated exception. */
html body .resume-title,
html body .contact-title,
html body .about-name,
html body .person-intro,
html body .contact-item__value,
html body .resume-editorial__role,
html body .about-role {
  font-family: "Raleway", Arial, sans-serif !important;
  font-style: normal !important;
}

@media (min-width: 768px) {
  :root {
    --project-card-title-size: 1.1875rem; /* 19px tablet */
    --project-card-title-panel-height: 72px;
  }

  .page-home .project-card__content {
    padding-inline: 28px !important;
  }
}

@media (min-width: 1024px) {
  :root {
    --project-card-title-size: 1.25rem; /* 20px desktop */
    --project-card-title-panel-height: 76px;
  }

  .page-home .project-card__content {
    padding-inline: 32px !important;
  }
}
