/*
 * 08-responsive.css — Breakpoints e ajustes mobile
 */

/* ── Tablet (≤ 1024px) ───────────────────────────────────── */
@media (max-width: 1024px) {
  .hero__inner           { grid-template-columns: 1fr 1fr; gap: 2.5rem; }
  .historia__inner       { grid-template-columns: 1fr; }
  .historia__media       { flex-direction: row; flex-wrap: wrap; justify-content: center; }
  .historia__icon-card   { width: 280px; height: 280px; }
  .diferenciais__grid    { grid-template-columns: repeat(2, 1fr); }
  .agendamento__inner    { grid-template-columns: 1fr; gap: 2.5rem; min-width: 0; }
  .agendamento__info     { text-align: center; max-width: 540px; margin-inline: auto; min-width: 0; overflow-wrap: break-word; }
  .agendamento__trust    { justify-content: center; }
  .agendamento__actions       { display: flex; justify-content: center; }
  .agendamento__actions .btn { width: auto; }
  .agendamento__slogan-float { padding: 1.35rem 1.5rem 2rem; }
  .agendamento__slogan-h1   { font-size: clamp(1.75rem, 5vw, 2.5rem); }
  /* Badges continuam fora do card no tablet/mobile */
  .agendamento__slogan-float .float-badge--1 { top: -10px; right: 8px; }
  .agendamento__slogan-float .float-badge--2 { bottom: -10px; left: 8px; }
  .footer__grid          { grid-template-columns: 1fr 1fr; gap: 2rem; }
  .stats-bar__inner      { grid-template-columns: repeat(2, 1fr); gap: 1.5rem; }
  .faq__inner            { grid-template-columns: 1fr; }
  .faq__header           { text-align: center; }
}

/* ── Mobile grande (≤ 860px) ─────────────────────────────── */
@media (max-width: 860px) {
  .header .nav    { display: none; }
  .hamburger      { display: flex; }
  .mobile-nav     { display: flex; }

  .header__inner         { gap: .5rem; align-items: center; }
  .logo                  { flex-shrink: 0; }
  .logo__image           { height: 56px; }
  .header__mobile-quick-actions {
    display: flex;
    flex: 1;
    justify-content: flex-end;
    gap: .5rem;
  }
  .header__mobile-quick-actions .header-quick {
    font-size: .72rem;
    padding: .38rem .7rem;
    flex: 1 1 auto;
    text-align: center;
  }

  .hero__inner    { grid-template-columns: 1fr; text-align: center; }
  .hero__desc     { margin-inline: auto; }
  .hero__actions  { justify-content: center; }
  .hero__trust    { justify-content: center; }
  .hero__visual   { display: none; }

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

  .dep-card { width: 280px; }
  .depoimentos__track { gap: 1rem; }

  .trust-sep { display: none; }
}

/* Header extra compacto em telas muito estreitas */
@media (max-width: 480px) {
  .header__inner { align-items: flex-start; }
  .header__mobile-quick-actions {
    flex-wrap: wrap;
    justify-content: flex-end;
  }
  .header__mobile-quick-actions .header-quick {
    flex: 1 1 40%;
  }
}

/* ── Mobile (≤ 600px) ────────────────────────────────────── */
@media (max-width: 600px) {
  .historia__icon-card { width: 260px; height: 260px; }
  .servicos__grid     { grid-template-columns: 1fr; }
  .diferenciais__grid { grid-template-columns: 1fr; }
  .form-row           { grid-template-columns: 1fr; }
  .form-card form     { padding: 1.15rem 1.1rem 1.25rem; }
  .form-route-section {
    margin-left: 0;
    margin-right: 0;
    padding-left: 0;
    padding-right: 0;
    width: 100%;
  }
  /* Inputs do card com leve respiro lateral para bordas ficarem visíveis */
  .form-card .form-input {
    width: 100%;
    box-sizing: border-box;
    margin-inline: .15rem;
  }
  /* Cotação: evita corte de texto e alinha ao container (como história) */
  .agendamento         { overflow: visible; }
  .form-card           { min-width: 0; }
  .phone-field         { min-width: 0; }
  .phone-input         { min-width: 0; }
  .agendamento__desc,
  .agendamento__checklist li { overflow-wrap: break-word; word-wrap: break-word; }
  /* Evita zoom no iOS ao focar origem/destino (font-size >= 16px) */
  .input-with-icon--route .form-input--route,
  .input-with-icon--route .form-input--route::placeholder {
    font-size: 16px !important;
  }
  .footer__grid       { grid-template-columns: 1fr; }
  .footer__bottom-inner { flex-direction: column; text-align: center; }
  .cta-final__card    { padding: 3.5rem 1.25rem; }
  .wa-float-wrap      { bottom: 1rem; right: 1rem; }
  .wa-float-wrap .wa-float { font-size: .8rem; }
  .stats-bar__inner   { grid-template-columns: repeat(2, 1fr); }
  .dep-card           { width: 250px; }
  .quote-result__meta { align-items: flex-start; }
  .logo__image { height: 50px; }
  .agendamento__contact {
    flex-wrap: nowrap;
  }
  .agendamento__contact .contact-pill {
    flex: 1 1 0;
    justify-content: center;
  }
}