/* =====================================================================
   EMAACOBEL — Responsive rules
   Mobile 320-768 | Tablet 768-1024 | Desktop 1024+
   ===================================================================== */

/* Large desktops down */
@media (max-width: 1199.98px) {
  .section { padding: 80px 0; }
}

/* Tablet */
@media (max-width: 991.98px) {
  :root { --header-h: 72px; }
  .section { padding: 64px 0; }
  .navbar-collapse { background: #fff; border-radius: var(--radius); box-shadow: var(--shadow-md);
    padding: 1rem; margin-top: .8rem; }
  .navbar-nav .nav-link::after { display: none; }
  .navbar-nav .nav-link { padding: .7rem .6rem !important; }
  .hero .carousel-caption { padding: 0 6%; }
  .hero-stats { margin-top: 1.5rem; }
  .cta-band { padding: 2.4rem 1.6rem; text-align: center; }
  .stats-strip .stat .num { font-size: 2.4rem; }
}

/* About-intro visual — keep the floating badge on-screen on tablet/mobile */
@media (max-width: 991.98px) {
  .about-visual { margin-bottom: 2.5rem; }
  .about-visual .av-panel { aspect-ratio: 16 / 10; }
  .about-visual .av-badge { left: 12px; bottom: -22px; padding: .8rem 1rem; }
  .about-visual .av-badge .n { font-size: 1.7rem; }
  .about-visual .av-ring { width: 150px; height: 150px; right: -40px; bottom: -40px; }
}

/* Mobile */
@media (max-width: 767.98px) {
  .topbar .contact-mini { display: none; }
  .section { padding: 52px 0; }

  /* About-intro visual */
  .about-visual { margin-bottom: 1.5rem; }
  .about-visual .av-panel { aspect-ratio: auto; min-height: 300px; padding: 2rem 1.2rem; }
  .about-visual .av-badge { position: static; margin: 1rem auto 0; width: max-content; box-shadow: var(--shadow-md); }

  /* CTA band */
  .cta-band { padding: 2rem 1.4rem; text-align: center; }
  .cta-band .d-flex.align-items-start { flex-direction: column; align-items: center !important; text-align: center; }
  .cta-band .cta-icon { margin: 0 auto; }
  .cta-band .eyebrow { justify-content: center; }
  .cta-band .cta-note { flex-wrap: wrap; justify-content: center; }
  .cta-band .btn { width: 100%; }
  .hero .carousel-item { height: 74vh; min-height: 480px; }
  .hero h1 { font-size: 2rem; }
  .hero .hero-actions { flex-direction: column; }
  .hero .hero-actions .btn { width: 100%; }
  .form-card, .cta-band { padding: 1.5rem; }
  .page-banner { padding: 90px 0 54px; }
  .testi-card, .service-card { padding: 1.6rem; }
  .wa-panel { width: calc(100vw - 48px); }
  .to-top { left: 16px; bottom: 16px; }
  .wa-float { right: 16px; bottom: 16px; }
  .footer-bottom { text-align: center; }
  .footer-bottom .text-md-end { text-align: center !important; margin-top: .5rem; }
}

/* Stats panel dividers */
@media (max-width: 991.98px) {
  .stats-panel > [class*="col-"]:nth-child(2n) .stat-item::after { display: none; }
  .stats-panel > [class*="col-"]:nth-child(-n+2) .stat-item { border-bottom: 1px solid var(--neutral-200); }
  .stat-item { padding: 1.6rem 1rem; }
}
@media (min-width: 992px) {
  .stats-panel > [class*="col-"]:last-child .stat-item::after { display: none; }
}

/* Stats strip dividers */
@media (max-width: 991.98px) {
  .stats-strip .row > [class*="col-"]:nth-child(2n) .stat::after { display: none; }
}
@media (min-width: 992px) {
  .stats-strip .row > [class*="col-"]:last-child .stat::after { display: none; }
}

/* Small phones */
@media (max-width: 400px) {
  .navbar-brand .brand-text .full { font-size: 1rem; }
  .stats-strip .stat .num { font-size: 2rem; }
  .stat-item .num { font-size: 2.1rem; }
}
