/* Zambrano Pneus — site · regras responsivas
   Sobrepõem os grids inline (!important) em telas menores. */

html { scroll-behavior: smooth; }
body { margin: 0; }

/* ---- Hero: vídeo de fundo ---- */
@media (prefers-reduced-motion: reduce) {
  .zp-hero-video { display: none !important; }
  .zp-hero-fallback-img { display: block !important; }
}

/* ---- Busca de pneus (abaixo da hero) ---- */
.zp-busca-veic { }
@media (max-width: 900px) {
  .zp-busca-card { margin-top: 24px !important; padding: 24px !important; }
  .zp-busca-veic { grid-template-columns: 1fr 1fr !important; }
  .zp-busca-row .zp-busca-btn, .zp-busca-row > div:last-child { flex: 1 1 100% !important; }
  .zp-busca-row > div:last-child button { width: 100% !important; }
}
@media (max-width: 560px) {
  .zp-busca-veic { grid-template-columns: 1fr !important; }
}

/* ---- Tablet / mobile largo ---- */
@media (max-width: 900px) {
  .zp-pad { padding-left: 24px !important; padding-right: 24px !important; }
  .zp-pad-y { padding-top: 40px !important; padding-bottom: 40px !important; }

  .zp-hero { min-height: 0 !important; }
  .zp-hero-art { display: block !important; }
  .zp-hero-video, .zp-hero-fallback-img {
    width: 100% !important; left: 0 !important; object-position: center !important;
    clip-path: none !important;
  }
  .zp-hero-scrim {
    width: 100% !important; left: 0 !important; clip-path: none !important;
    background: linear-gradient(180deg, rgba(0,0,0,0.35) 0%, rgba(0,0,0,0.55) 55%, rgba(0,0,0,0.85) 100%) !important;
  }
  .zp-hero-inner { padding: 0 24px !important; }
  .zp-hero-left { padding: 44px 0 !important; max-width: 100% !important; min-height: 0 !important; }
  .zp-hero-h1 { font-size: 54px !important; }

  .zp-grid3 { grid-template-columns: 1fr 1fr !important; }
  .zp-grid4 { grid-template-columns: 1fr 1fr !important; }
  .zp-grid-medidas { grid-template-columns: 1fr 1fr 1fr !important; }
  .zp-grid2, .zp-grid-loc { grid-template-columns: 1fr !important; }
  .zp-foot-grid { grid-template-columns: 1fr 1fr !important; }
  .zp-foot-grid > div:last-child { grid-column: 1 / -1 !important; }

  /* ---- Quem Somos: seções foto + texto em 2 colunas viram empilhadas ---- */
  .zp-quemsomos-hero { grid-template-columns: 1fr !important; align-items: start !important; }
  .zp-quemsomos-hero > div:first-child { padding-bottom: 32px !important; }
  .zp-quemsomos-conforto { grid-template-columns: 1fr !important; }
  .zp-quemsomos-conforto > div:first-child { height: 220px !important; }
  .zp-quemsomos-marcas { grid-template-columns: 1fr !important; }
  .zp-quemsomos-marcas > div:last-child { margin-top: var(--space-4); }

  /* ---- Promoções: destaque do mês (card + foto) também empilha ---- */
  .zp-promo-hero { grid-template-columns: 1fr !important; }
  .zp-foot-grid > div:first-child { grid-column: 1 / -1 !important; }
  .zp-model-intro { flex-direction: column !important; }
  .zp-model-intro > div:first-child { flex: 0 0 auto !important; width: 100% !important; height: 200px !important; min-height: 0 !important; }

  .zp-navlinks { display: none !important; }
  .zp-burger { display: inline-flex !important; }
}

/* ---- Celular ---- */
@media (max-width: 560px) {
  .zp-grid3 { grid-template-columns: 1fr !important; }
  .zp-grid4 { grid-template-columns: 1fr !important; }
  .zp-grid-medidas { grid-template-columns: 1fr 1fr !important; }
  .zp-hero-h1 { font-size: 42px !important; }
  .zp-cta-h { font-size: 26px !important; }
  .zp-foot-bottom { flex-direction: column !important; align-items: flex-start !important; }
  .zp-wordmark-sub { display: none !important; }
}
