/* Homepage density: preserve content, reduce vertical travel. */
.home-page .hero-overview { margin: 0; }
.home-page .hero-overview .hero-grid { padding-top: 22px; padding-bottom: 24px; gap: 28px; }
.home-page .knowledge-graph { height: 390px; margin-top: 5px; margin-bottom: 5px; }
.home-page .hero-overview h1 { font-size: clamp(38px,3.6vw,52px); }
.home-page .hero-overview .lead { margin-top: 18px; }
.home-page .actions { margin-top: 20px; }
.home-page .section { padding-top: 42px; padding-bottom: 42px; }
.home-page .section-title { margin-bottom: 22px; }
.home-page .section-title > p:last-child:not(.eyebrow) { margin-top: 10px; }
.home-page .eyebrow { margin-bottom: 12px; }
.home-page h2 { font-size: clamp(27px,2.6vw,34px); }
.home-page .role-card { padding: 22px; }
.home-page .card-top { margin-bottom: 18px; }
.home-page .role-card h3 { min-height: 0; margin-bottom: 10px; }
.home-page .tags { margin: 15px 0; }
.home-page .role-card .text-link { margin-top: 18px; padding-top: 14px; }
.home-page .product-feature { padding: 18px 0 28px; gap: 44px; }
.home-page .product-feature + .product-feature { padding-top: 28px; }
.home-page .product-visual { padding: 16px; }
.home-page .product-visual img { max-height: 240px; }
.home-page .product-copy h3 { font-size: 36px; }
.home-page .product-copy > p:not(.eyebrow) { margin-top: 14px; }
.home-page .skills-layout { padding: 22px 0; gap: 48px; }
.home-page .learning-card { padding: 26px; }
.home-page .learning-card h3 { margin-bottom: 12px; }
.home-page .about-block { gap: 44px; }
.home-page .founder-monogram { padding: 28px; }
.home-page .contact-band { padding-top: 36px; padding-bottom: 36px; }
@media(max-width:700px) {
  .home-page .section { padding-top: 30px; padding-bottom: 30px; }
  .home-page .hero-overview .hero-grid { padding: 24px 20px; gap: 22px; }
  .home-page .knowledge-graph { height: 400px; }
  .home-page .hero-overview h1 { font-size: 34px; }
  .home-page .product-feature { gap: 22px; }
  .home-page .skills-layout { gap: 22px; }
  .home-page .about-block { gap: 24px; }
}

/* One shared gap between skills and learning instead of stacked section padding. */
.home-page #skills { padding-bottom: 0; }
.home-page #skills .skills-layout { padding-bottom: 12px; }
.home-page #learning { padding-top: 28px; }
@media(max-width:700px) {
  .home-page #learning { padding-top: 24px; }
}
