@media (max-width: 640px) {
  :root {
    --spacing-section: var(--spacing-section-mobile);
    --spacing-section-text: var(--spacing-section-text-mobile);
  }

  .header__nav {
    display: none;
    position: fixed;
    top: var(--header-height);
    left: 0;
    right: 0;
    background: rgba(255, 255, 255, 0.98);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    padding: 1rem var(--container-padding);
    border-bottom: 1px solid var(--color-border);
  }

  .header__nav.is-open {
    display: block;
  }

  .header__nav-list {
    flex-direction: column;
    align-items: stretch;
    gap: 0.5rem;
  }

  .header__nav-link,
  .header__nav-cta {
    display: block;
    text-align: center;
    padding: 0.75rem;
  }

  .header__hamburger {
    display: flex;
  }

  .hero__inner {
    grid-template-columns: 1fr;
    gap: 2rem;
    width: 88%;
    max-width: var(--container-max);
  }

  .hero__title {
    font-size: 2rem;
  }

  .hero__subtitle {
    font-size: 1.3rem;
  }

  .hero__form {
    order: 0;
  }

  .form-card {
    max-width: 100%;
  }

  .hero {
    padding-top: calc(var(--header-height) + 3rem);
  }

  .stats__grid {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }

  .stats {
    min-height: auto;
    padding: var(--spacing-section) 0;
  }

  .stats .container {
    width: 88%;
  }

  .stats__title {
    font-size: 1.85rem;
  }

  .stat-card__number {
    font-size: 2.4rem;
  }

  .besoin__title {
    font-size: 1.85rem;
  }

  .besoin__text {
    font-size: 1rem;
  }

  .projects__list {
    grid-template-columns: 1fr;
  }

  .projects__title {
    font-size: 1.85rem;
  }

  .project-card__title {
    font-size: 1.4rem;
  }

  .project-card__body {
    padding: 1.5rem;
  }

  .testimonials__grid {
    grid-template-columns: 1fr;
  }

  .testimonial-card {
    grid-template-columns: 1fr;
  }

  .testimonial-card__photo {
    min-height: 0;
    aspect-ratio: 4 / 3;
  }

  .testimonials__title {
    font-size: 1.85rem;
  }

  .tax__grid {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }

  .tax__title {
    font-size: 1.85rem;
  }

  .tax-card__rate {
    font-size: 2.4rem;
  }

  .why__title {
    font-size: 1.85rem;
  }

  .why__inner {
    padding: 0 var(--container-padding);
  }

  .footer__main {
    padding-bottom: var(--spacing-section-mobile);
  }

  .footer__bottom {
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 1.75rem;
  }

  .footer__legal {
    align-items: center;
  }

  .footer__social-list {
    justify-content: center;
  }
}

@media (min-width: 641px) and (max-width: 900px) {
  .hero__inner {
    grid-template-columns: 1fr;
    gap: 2rem;
  }

  .hero__title {
    font-size: 2.6rem;
  }

  .hero__form {
    order: 0;
  }

  .form-card {
    max-width: 100%;
  }

  .hero {
    padding-top: calc(var(--header-height) + 4rem);
  }

  .stats__grid {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }

  .stats__title {
    font-size: 2.2rem;
  }

  .projects__list {
    grid-template-columns: 1fr;
  }

  .projects__title {
    font-size: 2.2rem;
  }

  .besoin__title {
    font-size: 2.2rem;
  }

  .testimonials__title {
    font-size: 2.2rem;
  }

  .tax__title {
    font-size: 2.2rem;
  }

  .why__title {
    font-size: 2.2rem;
  }
}
