/* ==== Desktop: min-width 1024px — unchanged layout, explicit for clarity ==== */
@media (min-width: 1024px) {
  header nav { display: flex; }
  header .kb-cta { display: inline-block; }
  #kb-hamburger { display: none; }
}

/* Short desktop viewports (small laptop window, 1300x600-ish): the hero's
   3-line title at full desktop size doesn't fit a short window height, so
   scale it and the surrounding spacing down regardless of how wide it is. */
@media (min-width: 1024px) and (max-height: 700px) {
  #topo { padding: 40px var(--space-section-x) 32px; }
  .kb-tag { margin-bottom: 20px; }
  #topo h1 { font-size: clamp(32px, 5.5vw, 64px); margin-bottom: 16px; }
  .kb-lede { font-size: 16px; margin-bottom: 20px; }
  .kb-hero-actions { margin-bottom: 28px; }
  .kb-stat { padding: 16px 18px; }
  .kb-stat-value { font-size: 32px; }
}
