/* ===========================
   RESPONSIVE BREAKPOINTS
   =========================== */

/* ===========================
   1260px — container guard
   =========================== */
@media (max-width: 1280px) {
  .em-container { padding: 0 20px; }
  .em-why-grid  { gap: 60px; }
}

/* ===========================
   1024px — tablet landscape
   =========================== */
@media (max-width: 1024px) {

  /* Services grid → 2 col */
  .em-services-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  /* Stats → 2×2 */
  .em-stats-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .em-stat:nth-child(2)::after { display: none; }

  /* Why Choose Us → single col */
  .em-why-grid {
    grid-template-columns: 1fr;
    gap: 48px;
  }

  .em-why__right {
    padding-top: 0;
  }

  /* CTA banner → stack */
  .em-cta-banner {
    flex-direction: column;
    padding: 40px 36px;
    gap: 28px;
  }

  /* Footer grid → 2 col */
  .em-footer__grid {
    grid-template-columns: 1fr 1fr;
    gap: 36px;
  }

  /* Hero rings — smaller */
  .em-hero__rings {
    width: 260px;
    height: 260px;
    right: 2%;
    opacity: 0.6;
  }
  .em-hero__ring--1 { width: 260px; height: 260px; }
  .em-hero__ring--2 { width: 190px; height: 190px; }
  .em-hero__ring--3 { width: 130px; height: 130px; }
  .em-hero__ring--4 { width: 78px;  height: 78px;  }

  /* Two-col inner pages → 1 col */
  .em-two-col--1-1,
  .em-two-col--2-1,
  .em-two-col--1-1-2 {
    grid-template-columns: 1fr;
  }
}

/* ===========================
   768px — tablet portrait
   =========================== */
@media (max-width: 768px) {

  /* Section padding */
  .em-section { padding: 72px 0; }
  .em-page-content { padding: 60px 0 80px; }

  /* Hero */
  .em-hero__rings { display: none; }
  .em-hero__content { padding: 80px 0 60px; max-width: 100%; }
  .em-hero__buttons { flex-direction: column; align-items: flex-start; }
  .em-hero__badges { flex-wrap: wrap; gap: 14px; }

  /* Services → still 2 col */

  /* Footer → single col */
  .em-footer__grid { grid-template-columns: 1fr; gap: 28px; }
  .em-footer__bar-inner { flex-direction: column; gap: 6px; text-align: center; }

  /* Stats → 2 col ok */

  /* Team 3 → 2 */
  .em-team-grid { grid-template-columns: repeat(2, 1fr); }

  /* About stats */
  .em-about-stats { grid-template-columns: repeat(3, 1fr); }

  /* CTA banner buttons */
  .em-cta-banner__right { flex-direction: column; width: 100%; }
  .em-cta-banner__right .em-btn { width: 100%; justify-content: center; }

  /* Service single features */
  .em-service-single__features { grid-template-columns: 1fr; }

  /* Payment grid */
  .em-mobile-grid { grid-template-columns: 1fr 1fr; }

  /* Contact form row */
  .em-form__row { grid-template-columns: 1fr; }
}

/* ===========================
   640px — large mobile
   =========================== */
@media (max-width: 640px) {

  /* Section padding */
  .em-section { padding: 60px 0; }

  /* Hero title */
  .em-hero__title { font-size: clamp(2rem, 8vw, 3.2rem); }
  .em-hero__subtitle { font-size: 0.92rem; }

  /* Services → 1 col */
  .em-services-grid { grid-template-columns: 1fr; }

  /* Why grid → 1 col features */
  .em-why__right { grid-template-columns: 1fr; }

  /* Team → 1 col */
  .em-team-grid { grid-template-columns: 1fr; }

  /* About stats → 2 col */
  .em-about-stats { grid-template-columns: repeat(2, 1fr); }

  /* CTA padding */
  .em-cta-banner { padding: 32px 24px; }
  .em-cta-banner__title { font-size: 1.5rem; }

  /* Buttons full width on mobile */
  .em-hero__buttons .em-btn { width: 100%; justify-content: center; }

  /* Page hero padding */
  .em-page-hero { padding: 60px 0 50px; }
  .em-page-hero__title { font-size: clamp(1.7rem, 7vw, 2.5rem); }

  /* Section titles */
  .em-section-title { font-size: clamp(1.5rem, 5vw, 2.2rem); }

  /* Footer */
  .em-footer__inner { padding: 60px 0 40px; }
}

/* ===========================
   480px — small mobile
   =========================== */
@media (max-width: 480px) {

  /* Stats → 1×4 */
  .em-stats-grid { grid-template-columns: 1fr 1fr; }
  .em-stat::after { display: none; }

  /* Hero badges wrap */
  .em-hero__badges { padding: 14px 16px; gap: 10px; }
  .em-hero__badge-divider { display: none; }

  /* Mobile payments */
  .em-mobile-grid { grid-template-columns: 1fr 1fr; }

  /* Contact actions */
  .em-contact-actions { flex-direction: column; }
  .em-contact-actions .em-btn { width: 100%; justify-content: center; }

  /* Floating btns label hidden */
  .em-fab__label { display: none; }
}

/* ===========================
   PRINT
   =========================== */
@media print {
  .em-header,
  .em-floating-btns,
  .em-back-top,
  .em-hero__particles,
  .em-hero__rings,
  .em-hero__orb { display: none; }
}
