/* ==========================================================================
   RESPONSIVE.CSS
   Mobile-first: os estilos base (style.css) já são otimizados para celular.
   Aqui entram os incrementos para telas maiores.
   ========================================================================== */

/* ---------- Mobile pequeno (até ~374px) ---------- */
@media (max-width: 374px) {
  .btn-lg {
    padding: 0.8rem 1.1rem;
    font-size: 0.88rem;
  }

  .hero-title {
    font-size: 1.8rem;
  }
}

/* ---------- Tablet (600px+) ---------- */
@media (min-width: 600px) {
  :root {
    --container-width: 34rem;
  }

  .btn-whatsapp .btn-label {
    display: inline;
  }

  .brand-name {
    display: block;
  }

  .brand-logo {
    width: 2.75rem;
    height: 2.75rem;
  }

  .site-header.is-scrolled .brand-logo {
    width: 2.3rem;
    height: 2.3rem;
  }

  .combo-card {
    flex: 0 0 55%;
  }
}

/* ---------- Tablet grande (768px+) ---------- */
@media (min-width: 768px) {
  :root {
    --container-width: 42rem;
  }

  .hero {
    align-items: center;
    min-height: 78vh;
    min-height: 78svh;
    max-height: 44rem;
  }

  .hero-overlay {
    background: linear-gradient(
      100deg,
      rgba(0, 0, 0, 0.28) 0%,
      rgba(0, 0, 0, 0.12) 32%,
      rgba(0, 0, 0, 0) 60%
    );
  }

  .hero-banner-img {
    object-position: center 40%;
  }

  .hero-inner {
    padding-block: 2rem;
  }

  .hero-content {
    padding: 1.75rem 2rem 2rem;
  }

  .batatas-layout {
    flex-direction: row;
    align-items: stretch;
    gap: 2.5rem;
  }

  .batatas-image-wrap {
    flex: 1 1 52%;
    aspect-ratio: auto;
  }

  .batatas-list {
    flex: 1 1 48%;
    justify-content: center;
  }

  .footer-grid {
    flex-direction: row;
    align-items: flex-start;
    gap: 3rem;
  }

  .footer-info-col {
    flex: 1 1 44%;
  }

  .footer-map-col {
    flex: 1 1 56%;
  }

  .footer-map-card {
    aspect-ratio: 16 / 11;
  }

  .combo-card {
    flex: 0 0 42%;
  }

  /* WhatsApp flutuante no desktop: volta a ser circular (só ícone,
     sem cápsula/texto), um pouco maior que o tamanho mobile anterior. */
  .whatsapp-float {
    width: 4rem;
    height: 4rem;
    padding-inline: 0;
  }

  .whatsapp-float-label {
    display: none;
  }

  .whatsapp-float-ring {
    width: 4rem;
    height: 4rem;
  }
}

/* ---------- Notebook (1024px+) ---------- */
@media (min-width: 1024px) {
  :root {
    --container-width: 48rem;
  }

  .container {
    max-width: var(--container-width-lg);
  }

  .combos .container,
  .hero .container,
  .menu-section .container,
  .batatas .container,
  .bebidas .container,
  .footer-inner {
    max-width: var(--container-width);
  }

  .combos-track {
    max-width: var(--container-width-lg);
    margin-inline: auto;
    padding-inline: 1.25rem;
    scroll-snap-type: none;
    overflow-x: visible;
    flex-wrap: nowrap;
  }

  .combo-card {
    flex: 1 1 0;
    max-width: none;
  }

  .combo-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 14px 32px rgba(0, 0, 0, 0.1);
  }

  .menu-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 2.5rem;
  }

  /* Hambúrgueres: grid de cards com espaçamento igual nos dois eixos
     (a lista de Bebidas acima mantém só o column-gap, sem cards). */
  .menu-section .menu-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 1.25rem;
    row-gap: 0.9rem;
  }

  .menu-section .menu-item {
    padding: 1.1rem 1.3rem 1.2rem;
  }

  /* Bebidas: mesmo raciocínio do grid de Hambúrgueres — 2 colunas com
     espaçamento igual nos dois eixos. */
  .bebidas .menu-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 1.25rem;
    row-gap: 0.75rem;
  }

  .hero-title {
    font-size: clamp(2.5rem, 3.4vw, 3.25rem);
  }

  .hero-content {
    max-width: 30rem;
  }

  .batatas-list li:hover span:first-child {
    text-decoration: underline;
    text-underline-offset: 3px;
  }
}

/* ---------- Desktop (1280px+) ---------- */
@media (min-width: 1280px) {
  :root {
    --section-spacing: 6rem;
  }
}
