/* ============================================
   Parreira Site — Responsive
   ============================================ */

@media (max-width: 1100px) {
  .hero__inner {
    grid-template-columns: 1fr;
    align-items: start;
  }

  .hero__visual {
    justify-self: start;
    width: min(100%, 300px);
    order: -1;
  }

  .hero__frame {
    inset: 0.75rem;
    top: calc(var(--header-h) + 0.35rem);
  }

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

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

@media (max-width: 900px) {
  .nav-toggle {
    display: flex;
  }

  .nav {
    position: fixed;
    inset: 0;
    flex-direction: column;
    justify-content: center;
    gap: var(--space-8);
    background: rgba(8, 33, 31, 0.985);
    backdrop-filter: blur(20px);
    opacity: 0;
    visibility: hidden;
    transition:
      opacity var(--duration) var(--ease-out),
      visibility var(--duration) var(--ease-out);
  }

  .nav.is-open {
    opacity: 1;
    visibility: visible;
  }

  .nav__list {
    flex-direction: column;
    gap: var(--space-6);
    text-align: center;
  }

  .nav__link {
    font-family: var(--font-display);
    font-size: var(--text-2xl);
    font-weight: 600;
    color: var(--cream);
  }

  .problem__grid,
  .faq__layout {
    grid-template-columns: 1fr;
  }

  .benefits__grid {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .benefit {
    padding: var(--space-6) 0;
  }

  .services__grid--pillars {
    grid-template-columns: 1fr;
  }

  .process__timeline {
    grid-template-columns: 1fr 1fr;
    gap: var(--space-7) var(--space-5);
  }

  .process__timeline::before {
    display: none;
  }

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

  .result:nth-child(2) {
    border-right: none;
  }

  .result:nth-child(1),
  .result:nth-child(2) {
    border-bottom: 1px solid var(--border);
  }

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

  .cursor-glow {
    display: none;
  }

  .hero__frame {
    display: none;
  }
}

@media (max-width: 640px) {
  :root {
    --header-h: 4rem;
    --container: min(100% - 1.75rem, 1120px);
    --container-wide: min(100% - 1.75rem, 1280px);
    --section-y: clamp(4.5rem, 14vw, 6.5rem);
  }

  .hero {
    align-items: center;
    padding-bottom: 4.5rem;
    min-height: auto;
    padding-top: calc(var(--header-h) + 1.5rem);
  }

  .hero__visual {
    width: min(100%, 220px);
    margin-inline: auto;
  }

  .hero__title {
    font-size: clamp(2.25rem, 9vw, 2.85rem);
  }

  .hero__meta {
    flex-direction: column;
    gap: var(--space-4);
  }

  .hero__scroll {
    display: none;
  }

  .btn-group {
    flex-direction: column;
    align-items: stretch;
  }

  .btn {
    width: 100%;
  }

  .services__grid,
  .services__grid--pillars {
    grid-template-columns: 1fr;
  }

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

  .portfolio-feature {
    grid-template-columns: 1fr;
  }

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

  .result {
    border-right: none !important;
    border-bottom: 1px solid var(--border);
  }

  .result:last-child {
    border-bottom: none;
  }

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

  .footer__bottom {
    flex-direction: column;
    text-align: center;
  }

  .whatsapp-float {
    right: 1rem;
    bottom: 1rem;
    width: 3rem;
    height: 3rem;
  }

  .cta .btn-group {
    align-items: stretch;
  }

  .chapter__line {
    max-width: 2.5rem;
  }
}

@media (min-width: 901px) {
  .nav {
    opacity: 1 !important;
    visibility: visible !important;
  }
}
