@media (max-width: 1024px) {
  .home-hero__title {
    font-size: clamp(3rem, 12vw, 7rem);
  }
}

@media (max-width: 768px) {
  .site-header { gap: 1rem; padding-top: env(safe-area-inset-top, 0px); }
  .brand { min-width: 0; }
  .brand__name { font-size: clamp(.72rem, 3.2vw, .95rem); }
  .brand__role { font-size: .56rem; }
  .nav-toggle { min-width: 48px; min-height: 48px; flex-shrink: 0; }
  :root {
    --header-h: 4rem;
  }

  .home-hero {
    padding-top: calc(var(--header-h) + var(--space-md));
  }

  .home-hero__title {
    font-size: clamp(2.75rem, 16vw, 4.5rem);
  }

  .project-card__meta {
    grid-template-columns: auto 1fr;
  }

  .project-card__cat {
    grid-column: 1 / -1;
    text-align: left;
  }

  .next-project {
    flex-direction: column;
    align-items: flex-start;
  }

  .intro__counter {
    right: var(--gutter);
    bottom: 12vh;
  }

  .intro__thumb {
    width: min(34vw, 120px);
  }

  .cursor {
    display: none !important;
  }

  body.has-custom-cursor,
  body.has-custom-cursor a,
  body.has-custom-cursor button {
    cursor: auto;
  }
}

@media (max-width: 430px) {
  .catalog__grid {
    gap: var(--space-md);
  }

  .menu__link {
    font-size: clamp(2rem, 12vw, 3rem);
  }
}
