/* ===================================
   MOBILE ONLY — até 767px
=================================== */
@media (max-width: 767px) {
  .about__img-frame {
    width: 28rem;
    height: 28rem;
    margin: 0 auto;
  }

  /* Projects — mobile: coluna única */
  .projetos__grid {
    grid-template-columns: 1fr;
    grid-template-rows: none;
    gap: 1.6rem;
  }

  .proj-card,
  .proj-card--featured {
    grid-row: auto;
    min-height: 30rem;
  }
}

/* ===================================
   TABLET — 768px
=================================== */
@media (min-width: 768px) {
  :root {
    --container-pad: 4.8rem;
  }

  /* Overline e botões voltam ao tamanho cheio (base é reduzida p/ mobile) */
  .overline {
    font-size: var(--text-sm);
  }

  .hero__eyebrow {
    gap: var(--space-sm);
    opacity: 1;
  }

  .hero__eyebrow::before {
    width: 2.8rem;
  }

  .btn {
    font-size: var(--text-btn);
    padding: 1.2rem 2.4rem;
  }

  .btn--lg {
    padding: 1.6rem 3.2rem;
    font-size: 1.6rem;
  }

  /* Numbers */
  .numbers__grid {
    grid-template-columns: repeat(4, 1fr);
    gap: 0;
  }

  .numbers__item + .numbers__item {
    border-left: 1px solid var(--color-earth);
  }

  /* Services — tablet e desktop: grid 3 colunas, sem carousel */
  .services__track {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    overflow-x: visible;
    scroll-snap-type: none;
    padding-bottom: 0;
  }

  .service-card {
    flex: unset;
    scroll-snap-align: none;
  }

  .services__nav {
    display: none;
  }

  /* About */
  .about__container {
    flex-direction: row;
    align-items: center;
    gap: var(--space-4xl);
  }

  .about__content {
    flex: 3;
  }

  .about__visual {
    flex: 2;
  }

  .about__img-frame {
    width: 44rem;
    height: 44rem;
  }

  .about__pillars {
    gap: var(--space-md);
  }

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

  /* Footer */
  .footer__nav {
    flex-direction: row;
    gap: var(--space-3xl);
  }

  .footer__bottom-container {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
  }
}

/* ===================================
   DESKTOP — 1024px
=================================== */
@media (min-width: 1024px) {
  :root {
    --container-pad: 8rem;
  }

  /* Navbar */
  .navbar__nav {
    display: flex;
  }

  .navbar__mobile-btn {
    display: none;
  }

  .navbar__cta {
    display: inline-flex;
  }

  /* Process — desktop: grid 3 colunas (3+2), 5º card ocupa coluna central */
  .process__steps {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: var(--space-xl);
    align-items: stretch;
  }

  .process__card:nth-child(1) { grid-column: 1 / 3; }
  .process__card:nth-child(2) { grid-column: 3 / 5; }
  .process__card:nth-child(3) { grid-column: 5 / 7; }
  .process__card:nth-child(4) { grid-column: 2 / 4; }
  .process__card:nth-child(5) { grid-column: 4 / 6; }

  .process__card {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--space-md);
    padding: var(--space-2xl);
    height: 100%;
    box-sizing: border-box;
  }

  .process__badge {
    margin-bottom: var(--space-xs);
  }

  .process__card-body {
    padding-top: 0;
  }

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

  /* Footer */
  .footer__container {
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
  }

  .footer__nav {
    gap: var(--space-4xl);
  }
}

/* ===================================
   ULTRA WIDE — 1440px
=================================== */
@media (min-width: 1440px) {
  :root {
    --container-pad: 10rem;
  }
}
