/* ============================================================
   RESPONSIVE — Responsive Behavior breakpoints
   1280 / 1024 / 768 / 640
   ============================================================ */
@media (max-width: 1280px) {
  .index { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 1024px) {
  .hero__title { font-size: clamp(40px, 9vw, 64px); }
  .manifesto__grid { grid-template-columns: 1fr; gap: var(--sp-lg); }
  .spec-grid { grid-template-columns: repeat(2, 1fr); }
  .spec-cell:nth-child(3) { border-left: 0; padding-left: 0; }
  .index { grid-template-columns: repeat(2, 1fr); }
  .index__item:nth-child(3n) { border-right: 1px solid var(--color-hairline); }
  .index__item:nth-child(2n) { border-right: 0; }
  .features__grid { grid-template-columns: repeat(2, 1fr); }
  .footer__top { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 768px) {
  .top-nav__menu, .top-nav__lang { display: none; }
  .top-nav__hamburger {
    display: flex; align-items: center; gap: var(--sp-xxs);
    color: var(--color-ink);
    font-family: var(--font-ferrari);
    font-size: 13px; font-weight: 600; letter-spacing: 0.65px; text-transform: uppercase;
    cursor: pointer;
  }
  .top-nav__hamburger .bars { display: flex; flex-direction: column; gap: 3px; }
  .top-nav__hamburger .bars span { width: 18px; height: 2px; background: var(--color-ink); display: block; }
  .hero__topbar .top-nav__menu { display: none; }
  .hero__meta { flex-wrap: wrap; gap: var(--sp-md); }
  .hero__scroll { display: none; }
}

@media (max-width: 640px) {
  .section { padding: var(--sp-xl) var(--sp-sm); }
  .hero__content { padding: 0 var(--sp-sm) var(--sp-xl); }
  .hero__title { font-size: clamp(32px, 11vw, 48px); letter-spacing: -0.8px; }
  .hero__sub { font-size: 16px; }
  .hero__ctas { flex-direction: column; align-items: stretch; }
  .hero__ctas .btn-primary, .hero__ctas .btn-outline { width: 100%; }
  .spec-grid { grid-template-columns: 1fr; }
  .spec-cell { border-left: 0; padding-left: 0; border-bottom: 1px solid var(--color-hairline); padding-bottom: var(--sp-sm); }
  .spec-cell:last-child { border-bottom: 0; }
  .index { grid-template-columns: 1fr; }
  .index__item { border-right: 0 !important; }
  .features__grid { grid-template-columns: 1fr; }
  .footer__top { grid-template-columns: 1fr; }
  .manifesto__slogan { font-size: 20px; }
  .breakthroughs__head { flex-direction: column; align-items: flex-start; }
}
