/* ==========================================================================
   Greenup Design — CSS responsivo compartilhado (mobile).
   Carregado em todas as páginas via <link rel="stylesheet" href="./responsive.css">.
   Usa classes utilitárias (gp-*) aplicadas nos elementos que precisam mudar
   de layout no celular, com !important pra sobrepor os estilos inline.
   ========================================================================== */

html, body { max-width: 100%; overflow-x: hidden; }

/* Evita zoom automático de iOS em inputs com font-size < 16px */
@media (max-width: 900px) {
  input, select, textarea { font-size: 16px !important; }
}

/* --------------------------------------------------------------------
   Header padrão das páginas de produto: breadcrumb some, logo fica
   sempre à esquerda (tamanho padronizado), ícones de login/carrinho
   vão para a direita.
   -------------------------------------------------------------------- */
@media (max-width: 900px) {
  .gp-header-nav { display: none !important; }
  .gp-header-logo {
    order: -1 !important;
    position: static !important;
    height: 56px !important;
    width: auto !important;
    left: auto !important;
    top: auto !important;
  }
}

/* --------------------------------------------------------------------
   Grid principal das páginas de produto (galeria | info do produto).
   No celular, o texto/info aparece primeiro e a galeria de fotos depois.
   -------------------------------------------------------------------- */
@media (max-width: 900px) {
  .gp-product-grid { grid-template-columns: 1fr !important; gap: 24px !important; }
  .gp-gallery-col { position: static !important; top: auto !important; order: 2 !important; }
  .gp-info-col { order: 1 !important; }
}
@media (max-width: 480px) {
  .gp-product-title { font-size: 26px !important; }
}

/* --------------------------------------------------------------------
   Header do Checkout (logo + indicador de passos).
   -------------------------------------------------------------------- */
@media (max-width: 900px) {
  .gp-header-logo-wrap { width: auto !important; }
}
@media (max-width: 640px) {
  .gp-checkout-steps { gap: 0 !important; }
  .gp-checkout-steps span { font-size: 11px !important; }
}

/* --------------------------------------------------------------------
   Linhas de formulário com dois campos lado a lado (endereço, cadastro).
   -------------------------------------------------------------------- */
@media (max-width: 640px) {
  .gp-form-row { flex-direction: column !important; gap: 12px !important; }
  .gp-form-row > * { width: 100% !important; max-width: 100% !important; flex: none !important; }
}

/* --------------------------------------------------------------------
   Footer padrão (grid de 4 colunas) usado na maioria das páginas.
   -------------------------------------------------------------------- */
@media (max-width: 900px) {
  .gp-footer-grid { grid-template-columns: repeat(2, 1fr) !important; gap: 32px !important; }
}
@media (max-width: 560px) {
  .gp-footer-grid { grid-template-columns: 1fr !important; gap: 28px !important; }
}

/* --------------------------------------------------------------------
   Utilitários genéricos de layout responsivo.
   -------------------------------------------------------------------- */
@media (max-width: 900px) {
  .gp-stack-mobile { flex-direction: column !important; }
  .gp-grid-1-mobile { grid-template-columns: 1fr !important; }
  .gp-grid-2-tablet { grid-template-columns: repeat(2, 1fr) !important; }
}
@media (max-width: 560px) {
  .gp-grid-2-tablet { grid-template-columns: 1fr !important; }
}
@media (max-width: 640px) {
  .gp-hide-mobile { display: none !important; }
}

/* --------------------------------------------------------------------
   Calculadora de parede: linhas "label + caixa de valor / toggle" que
   podem não caber lado a lado numa tela estreita — evita que a caixa da
   direita seja cortada, deixando quebrar pra uma segunda linha.
   -------------------------------------------------------------------- */
@media (max-width: 900px) {
  .gp-calc-row { flex-wrap: wrap !important; row-gap: 8px !important; }
  .gp-calc-panel { padding: 20px !important; }
}
/* .gp-preview-box: largura calculada dinamicamente via JS (medida real do
   contêiner), não por CSS — ver refPreviewBox/medirPreviewBox em
   calculadora-v2.html. Um max-width fixo aqui cortaria módulos em telas
   com proporção diferente da estimada. */

/* --------------------------------------------------------------------
   Primeira dobra (hero) grande demais em várias páginas — reduzida no
   celular pra mostrar o conteúdo principal mais cedo.
   -------------------------------------------------------------------- */
@media (max-width: 900px) {
  .gp-hero-compact { padding-top: 32px !important; padding-bottom: 32px !important; }
  .gp-hero-title-lg { font-size: 28px !important; }
  .gp-hero-min600 { min-height: 420px !important; }
  .gp-hero-img-tall { height: 220px !important; }
}

/* --------------------------------------------------------------------
   Diagrama "Como funciona um sistema de irrigação" (produto-pecas-kit-
   irrigacao.html): 8 ícones com flex:1 ficavam espremidos/sobrepostos
   numa tela estreita — vira uma faixa rolável horizontalmente.
   -------------------------------------------------------------------- */
@media (max-width: 900px) {
  .gp-diagram-line { display: none !important; }
  .gp-diagram-row {
    justify-content: flex-start !important;
    overflow-x: auto !important;
    gap: 20px !important;
    padding-bottom: 8px !important;
  }
  .gp-diagram-item { flex: 0 0 auto !important; width: 72px !important; }
}
