/* ===========================
   DPA SmartCloud — Responsive Styles
   Mobile-first breakpoints: 480, 768, 1024, 1440
   =========================== */

/* --- 480px+ (Large phones) --- */
@media (min-width: 480px) {
  .products-grid {
    grid-template-columns: repeat(2, 1fr);
  }

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

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

/* --- 768px+ (Tablets) --- */
@media (min-width: 768px) {
  :root {
    --spacing-section: 100px;
  }

  h1 {
    font-size: 48px;
    line-height: 1.167;
  }

  h2 {
    font-size: 36px;
    line-height: 1.222;
  }

  h3 {
    font-size: 26px;
    line-height: 1.308;
  }

  .hero__title {
    font-size: 48px;
    line-height: 1.167;
  }

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

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

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

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

  .stat-item__number {
    font-size: 56px;
  }

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

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

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

  .diff-grid {
    grid-template-columns: repeat(3, 1fr);
  }

  .about-auth {
    grid-template-columns: 1fr 2fr;
  }

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

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

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

  .client-benefit-grid {
    grid-template-columns: repeat(3, 1fr);
  }

  .contact-grid {
    grid-template-columns: 3fr 2fr;
  }

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

  .footer-bottom {
    justify-content: space-between;
  }
}

/* --- 1024px+ (Desktop) --- */
@media (min-width: 1024px) {
  :root {
    --spacing-section: 120px;
  }

  h1 {
    font-size: 56px;
    line-height: 1.143;
  }

  h2 {
    font-size: 40px;
    line-height: 1.2;
  }

  h3 {
    font-size: 28px;
    line-height: 1.286;
  }

  .hero__title {
    font-size: 56px;
    line-height: 1.143;
  }

  .hero__subtitle {
    font-size: 20px;
  }

  /* Show desktop nav, hide hamburger */
  .main-nav {
    display: flex;
  }

  .hamburger {
    display: none;
  }

  .header-cta {
    display: inline-flex;
  }

  .grid--3 { grid-template-columns: repeat(3, 1fr); }
  .grid--4 { grid-template-columns: repeat(4, 1fr); }

  .products-grid {
    grid-template-columns: repeat(3, 1fr);
  }

  /* 5th card centered in second row */
  .products-grid .card:nth-child(4),
  .products-grid .card:nth-child(5) {
    /* handled by centering wrapper if needed */
  }

  .gift-grid {
    grid-template-columns: repeat(4, 1fr);
  }

  .footer-grid {
    grid-template-columns: 2fr 1fr 1fr 1.5fr;
  }

  .feature-grid {
    grid-template-columns: repeat(3, 1fr);
  }

  .usecase-grid {
    grid-template-columns: repeat(3, 1fr);
  }

  .process-steps {
    grid-template-columns: repeat(4, 1fr);
  }

  .trust-bar__inner {
    flex-wrap: nowrap;
  }
}

/* --- 1440px+ (Large screens) --- */
@media (min-width: 1440px) {
  .container {
    padding: 0 40px;
  }

  .stat-item__number {
    font-size: 64px;
  }
}
