/* ==========================================================================
   Responsive — matched to reference desktop + mobile stack
   Breakpoints: 320 · 375 · 480 · 576 · 768 · 992 · 1200 · 1400
   ========================================================================== */

@media (min-width: 375px) {
  :root {
    --container: min(1080px, calc(100% - 2 * 20px));
  }
}

@media (min-width: 480px) {
  .hero__form {
    flex-direction: row;
    align-items: flex-start;
  }

  .hero__form .btn {
    flex-shrink: 0;
  }

  .hero__avatar {
    width: 72px;
    height: 72px;
  }

  .press__list img {
    height: 26px;
  }
}

@media (min-width: 576px) {
  .features__grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .perks__grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .testimonials__grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 768px) {
  :root {
    --container: min(1080px, calc(100% - 2 * var(--space-3)));
    --header-h: 76px;
  }

  .site-header.is-scrolled {
    --header-h: 64px;
  }

  .header__cta {
    display: inline-flex;
  }

  .nav-toggle {
    display: none;
  }

  .nav {
    display: block;
  }

  .nav__list {
    gap: var(--space-2);
  }

  .nav__link {
    font-size: 0.8125rem;
    white-space: nowrap;
  }

  .hero__avatar--1 { top: 0; left: -4%; }
  .hero__avatar--2 { top: 2%; right: -4%; }
  .hero__avatar--3 { bottom: 10%; left: -8%; }
  .hero__avatar--4 { bottom: 6%; right: -6%; }

  .funding__grid {
    grid-template-columns: 1fr 1fr;
    gap: var(--space-6);
  }

  .funding__visual {
    min-height: 320px;
  }

  .contact-home__grid {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: var(--space-5);
    align-items: flex-start;
  }

  .contact-home__main {
    flex: 1 1 auto !important;
    min-width: 0 !important;
  }

  .contact-aside {
    position: sticky;
    top: calc(var(--header-h) + var(--space-3));
    flex: 0 0 320px !important;
    width: 320px !important;
    max-width: 320px !important;
  }
}

@media (min-width: 992px) {
  .features__grid {
    grid-template-columns: repeat(3, 1fr);
  }

  .perks__grid {
    grid-template-columns: repeat(4, 1fr);
  }

  .testimonials__grid {
    grid-template-columns: repeat(3, 1fr);
  }

  .press__list {
    justify-content: space-between;
    max-width: 900px;
    margin-inline: auto;
  }

  .hero__inner {
    padding-block: var(--space-5);
  }

  .hero__avatar {
    width: 80px;
    height: 80px;
  }
}

@media (min-width: 1200px) {
  :root {
    --container: min(1120px, calc(100% - 2 * var(--space-4)));
  }

  .features,
  .funding,
  .perks,
  .contact-home,
  .founder,
  .testimonials {
    padding-block: var(--space-7);
  }

  .hero__avatar--1 { left: -12%; }
  .hero__avatar--2 { right: -10%; }
  .hero__avatar--3 { left: -16%; }
  .hero__avatar--4 { right: -14%; }
}

@media (min-width: 1400px) {
  :root {
    --container: min(1180px, calc(100% - 2 * var(--space-5)));
  }
}

@media (max-width: 767px) {
  .founder__video-modal {
    padding: 12px;
    align-items: center;
  }

  .founder__video-dialog {
    width: min(100%, calc((100dvh - 24px) * 16 / 9));
    border-radius: var(--radius);
  }

  .founder__modal-close {
    top: 8px;
    right: 8px;
    width: 38px;
    height: 38px;
  }
}

@media (max-width: 374px) {
  .hero__title {
    font-size: clamp(1.75rem, 8vw, 2rem);
  }

  .hero__avatar {
    width: 48px;
    height: 48px;
  }

  .btn {
    padding: 12px 18px;
  }
}
