/* Home composition only. The shared palette is defined in base.css. */
.home-hero { position: relative; background: white; border-bottom: 1px solid var(--c-border); }
.home-hero__inner { max-width: var(--wrap); margin: 0 auto; padding: 82px 28px 66px; }
.home-hero h1 { font: 400 clamp(3rem, 6vw, 5.25rem)/1.045 var(--f-head); letter-spacing: -.055em; color: var(--c-heading); max-width: 900px; margin: 0 0 28px; }
.home-hero__lead { font-size: 1.125rem; line-height: 1.85; color: var(--c-muted); max-width: 710px; margin: 0 0 30px; }
.home-hero__chips { margin: 0; }
.chip { display: inline-flex; align-items: center; gap: 10px; min-height: 42px; padding: 9px 16px; border: 1px solid var(--c-border); border-radius: 999px; background: white; color: var(--c-heading); text-decoration: none; font-size: .87rem; font-weight: 600; }
.chip:hover { color: var(--c-accent); border-color: var(--c-accent); text-decoration: none; }
.home-content { max-width: var(--wrap); padding: 0 28px; margin: 0 auto; }
.home-cat { padding: 54px 0 8px; }
.home-cat__head h2 { font: 400 2.15rem/1.2 var(--f-head); letter-spacing: -.025em; color: var(--c-heading); margin: 0 0 10px; }
.home-cat__head p { color: var(--c-muted); font-size: .94rem; margin: 0; }
.card-grid { display: grid; grid-template-columns: 1fr; gap: 24px; padding: 0; margin: 0; list-style: none; }
.card-grid > li { min-width: 0; }
.home-cat .article-card { background: white; border-top: 3px solid var(--c-accent); }
.home-cat .article-card__media { aspect-ratio: 16 / 10; min-height: 100%; }
.home-cat .article-card__body { justify-content: center; padding: 42px; gap: 19px; }
.home-cat .article-card__title { font-size: clamp(1.8rem, 3vw, 2.45rem); max-width: 520px; }
.home-cat .article-card__more { margin-top: 2px; }
.home-cat .article-card__text { font-size: 1rem; }
@media (max-width: 699px) {
  .home-hero__inner { padding: 52px 22px 40px; }
  .home-hero h1 { font-size: clamp(2.65rem, 9.2vw, 4rem); margin-bottom: 22px; }
  .home-hero__lead { font-size: 1rem; margin-bottom: 25px; }
  .home-content { padding: 0 18px; }
  .home-cat { padding-top: 36px; }
  .home-cat__head h2 { font-size: 1.85rem; }
  .home-cat .article-card__body { padding: 26px; gap: 16px; }
  .home-cat .article-card__title { font-size: 1.95rem; }
  .home-cat .article-card__media { aspect-ratio: 16 / 9; }
}
