/* =====================================================
   Responsive overrides — mobile-first base already in
   style.css; these adjust for larger breakpoints and
   fine-tune small-screen spacing.
   ===================================================== */

/* Base (mobile) tweaks */
.hero{ padding:3rem 0 3.5rem; text-align:center; }
.hero .col-lg-7{ text-align:left; }
.hero-title{ font-size:2rem; }
.hero-cta{ justify-content:flex-start; }
.hero-meta{ gap:1rem; }

.section{ padding:3.2rem 0; }
h2{ font-size:1.5rem; }

.ops-console{ margin-top:1rem; }

.col-lg-2-4{ width:100%; }

.timeline-card{ width:150px; padding:1.2rem 0.9rem; }

.float-btn{ width:46px; height:46px; font-size:1.1rem; right:16px; }
.float-whatsapp{ bottom:84px; }
.float-call{ bottom:26px; }
.float-top{ bottom:84px; left:16px; }

/* Small devices ≥ 576px */
@media (min-width: 576px){
  .col-lg-2-4{ width:50%; }
}

/* Tablets ≥ 768px */
@media (min-width: 768px){
  h2{ font-size:1.75rem; }
  .hero-title{ font-size:2.4rem; }
  .col-lg-2-4{ width:33.3333%; }
}

/* Laptops ≥ 992px */
@media (min-width: 992px){
  .hero{ padding:4.5rem 0 5rem; text-align:left; }
  h2{ font-size:2rem; }
  .hero-title{ font-size:2.85rem; }
  .section{ padding:5rem 0; }
  .col-lg-2-4{ width:20%; }
  .float-btn{ width:52px; height:52px; font-size:1.3rem; right:22px; }
  .float-whatsapp{ bottom:96px; }
  .float-call{ bottom:32px; }
  .float-top{ bottom:96px; left:22px; }
}

/* Desktops ≥ 1200px */
@media (min-width: 1200px){
  .hero-title{ font-size:3.1rem; }
}

/* Reduced motion respect */
@media (prefers-reduced-motion: reduce){
  html{ scroll-behavior:auto; }
  *{
    transition-duration:0.001ms !important;
  }
}
