/* ============================================================
   TECH SILVA SOLUTIONS — Responsive
   ============================================================ */

@media (max-width: 1100px) {
  :root { --container-padding: 32px; }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: var(--space-xl); }
  .service-showcase-grid { grid-template-columns: 1fr; min-height: auto; }
  .service-showcase-media { min-height: 480px; }
  .service-showcase-media::before { background: linear-gradient(180deg, rgba(255,255,255,.86) 0%, transparent 34%); }
  .service-showcase-media img { min-height: 480px; object-position: center 56%; }
  .trust-grid { grid-template-columns: repeat(2, 1fr); }
  .benefits-grid { grid-template-columns: repeat(2, 1fr); }
  .req-grid { grid-template-columns: repeat(2, 1fr); }
  .steps-grid { grid-template-columns: repeat(2, 1fr); }
  .plans-grid { max-width: 100%; grid-template-columns: repeat(2, 1fr); }
  .footer-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 768px) {
  :root { --container-padding: 24px; }
  .section { padding-block: var(--space-3xl); }
  .section-title { font-size: var(--text-3xl); }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: var(--space-xl); }
  .hero { padding-top: 96px; }
  .service-showcase-grid { border-radius: 24px; }
  .service-showcase-content { padding: 2rem 1.4rem 2.2rem; }
  .hero-title { font-size: clamp(2.25rem, 11vw, 3.2rem); }
  .hero-desc { font-size: var(--text-base); }
  .hero-cta { flex-direction: column; }
  .service-showcase-media { min-height: 360px; order: -1; }
  .service-showcase-media img { min-height: 360px; object-position: 55% center; }
  .header-nav { display: none; }
  .menu-toggle { display: flex; }
  .header-nav.open {
    display: flex; flex-direction: column; position: absolute;
    top: 72px; left: 0; right: 0; background: white;
    padding: var(--space-lg); gap: var(--space-sm);
    border-bottom: 1px solid var(--color-border); box-shadow: var(--shadow-md);
  }
  .header-nav.open .cta-nav { width: 100%; justify-content: center; margin-top: var(--space-xs); }
  .trust-grid { grid-template-columns: 1fr; gap: 1.75rem; }
  .trust-item { display: grid; grid-template-columns: 140px 1fr; gap: 1rem; align-items: center; }
  .trust-item img { aspect-ratio: 1 / 1; }
  .trust-copy { padding: 0; }
  .benefits-grid, .req-grid, .steps-grid, .compare-grid, .plans-grid { grid-template-columns: 1fr; }
  .cta-buttons { flex-direction: column; align-items: center; }
  .footer-grid { grid-template-columns: 1fr; }
  .whatsapp-float { bottom: 16px; right: 16px; width: 52px; height: 52px; font-size: .8rem; }
}

@media (max-width: 430px) {
  :root { --container-padding: 16px; }
  .section-title { font-size: var(--text-2xl); }
  .btn { width: 100%; white-space: normal; text-align: center; }
  .service-showcase-media { min-height: 280px; }
  .service-showcase-media img { min-height: 280px; }
  .trust-item { grid-template-columns: 112px 1fr; }
  .trust-copy h2 { font-size: .94rem; }
  .trust-copy p { font-size: .78rem; }
  .requirement-content { padding: 1.15rem 1.1rem 1.3rem; }
}
