/* ==========================================================================
   Module: featured-projects — editorial grid of project case-study cards.
   Reproduces the "Selected work" section of the homepage.
   The .project-card / .project-grid blocks are shared with the project
   archive (mirrored in assets/css/projects.css for that template).
   ========================================================================== */

.m-featured-projects__cta {
  font-family: var(--font-mono);
  font-size: 12px;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--mono-muted);
  transition: color var(--t-base);
}
.m-featured-projects__cta:hover { color: var(--accent); }

.m-featured-projects__heading {
  max-width: 20ch;
  margin: 0 0 clamp(32px, 5vh, 56px);
}

/* ---------- Project card grid ---------- */
.project-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(290px, 1fr));
  gap: clamp(22px, 2.4vw, 36px);
}

/* ---------- Project card ---------- */
.project-card {
  display: flex;
  flex-direction: column;
  color: var(--ink);
  text-decoration: none;
}
.project-card__plate {
  min-height: 0;
  height: clamp(264px, 30vw, 380px);
  border: 1px solid var(--bd-light-2);
  transition: border-color var(--t-base), transform var(--t-base);
}
.project-card:hover .project-card__plate {
  border-color: var(--accent);
  transform: translateY(-4px);
}
.project-card__meta {
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--mono-muted);
  margin-top: 20px;
}
.project-card__title {
  font-weight: 500;
  font-size: clamp(1.4rem, 2vw, 1.85rem);
  line-height: 1.08;
  letter-spacing: -.01em;
  margin-top: 10px;
}
.project-card__blurb {
  font-family: var(--font-sans);
  font-size: 14.5px;
  line-height: 1.55;
  color: var(--body);
  max-width: 34ch;
  margin-top: 10px;
}
.project-card__link {
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--accent);
  margin-top: 16px;
}
