/* ==========================================================================
   PRISMA DRYWALL — responsive.css
   Breakpoints: 1366 / 1024 / 768 / 430 / 390 / 360
   ========================================================================== */

/* ---------- Notebook grande ---------- */
@media (max-width: 1366px){
  :root{ --container: 1140px; }
}

/* ---------- Tablet paisagem / notebook pequeno ---------- */
@media (max-width: 1024px){
  .nav-desktop, .header-actions .btn-primary{ display:none; }
  .burger{ display:flex; }

  .diff-grid{ grid-template-columns: repeat(2,1fr); gap: 2rem 1.5rem; }
  .diff-item{ border-left:none; padding-left:0; border-top: var(--line); padding-top: 1.6rem; }
  .diff-item:first-child{ border-top:none; padding-top:0; }

  .about-grid{ grid-template-columns: 1fr; }
  .about-media{ order:-1; aspect-ratio: 16/9; }

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

  .split{ grid-template-columns: 1fr; }
  .split-media{ min-height: 320px; order:-1; }

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

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

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

  .footer-grid{ grid-template-columns: 1fr 1fr; gap: 2.4rem 1.6rem; }

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

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

  .project-cta-inner{ flex-direction:column; align-items:flex-start; }
  .project-cta-side{ text-align:left; }
  .project-cta-note{ margin-left:0; }
}

/* ---------- Tablet retrato ---------- */
@media (max-width: 768px){
  html{ scroll-padding-top: 76px; }
  .hero-content{ padding: 9.5rem 0 5rem; }
  .hero-controls{ flex-direction:column-reverse; align-items:flex-start; gap:1.2rem; }
  .scroll-cue{ display:none; }

  .partners-cta{ flex-direction:column; align-items:flex-start; }

  .timeline-item{ grid-template-columns: 1fr; gap:.4rem; }

  .page-hero{ padding: 8.5rem 0 3.2rem; }
}

/* ---------- Celulares grandes ---------- */
@media (max-width: 430px){
  :root{ --gutter: 1.1rem; }
  .brand img{ height: 40px; }

  .diff-grid{ grid-template-columns: 1fr; }
  .services-grid{ grid-template-columns: 1fr; }
  .partners-grid{ grid-template-columns: 1fr; }
  .gallery{ grid-template-columns: repeat(2,1fr); gap:.6rem; }
  .values-grid{ grid-template-columns: 1fr; }
  .stats-grid{ grid-template-columns: repeat(2,1fr); }
  .footer-grid{ grid-template-columns: 1fr; }

  .filters{ overflow-x:auto; flex-wrap:nowrap; padding-bottom:.4rem; }
  .filter-btn{ flex:none; }

  .field-row{ grid-template-columns: 1fr; }

  .wa-float{ width:56px; height:56px; }
  .wa-float .tooltip{ display:none; }

  .lightbox-prev, .lightbox-next{ width:42px; height:42px; }
  .lightbox-close{ width:40px; height:40px; top:1rem; right:1rem; }
}

/* ---------- Celulares pequenos ---------- */
@media (max-width: 390px){
  .hero-title{ font-size: clamp(2.2rem, 8vw, 3rem); }
  .btn{ padding: .9rem 1.4rem; font-size:.95rem; }
}

/* ---------- Telas grandes ---------- */
@media (min-width: 1920px){
  :root{ --container: 1440px; }
}
