/* ═══════════════════════════════════════════════════════════════
   RESPONSIVE — All Breakpoints
   ═══════════════════════════════════════════════════════════════ */

/* ── Laptop (max 1199px) ── */
@media(max-width: 1199px) {
  .container { max-width: 960px; }
  .hero-h1 { font-size: clamp(40px, 6vw, 72px); }
  .hero-card { min-width: 180px; padding: 14px 18px; }
  .hc-text { font-size: 13px; }
}

/* ── Tablet (max 768px) ── */
@media(max-width: 768px) {
  .container { padding: 0 20px; }
  .section { padding: 80px 0; }
  .sec-title { font-size: clamp(28px, 6vw, 40px); }
  .sec-sub { margin-bottom: 40px; }

  /* Hero */
  .hero { padding-top: 80px; min-height: auto; padding-bottom: 60px; }
  .hero-h1 { font-size: clamp(36px, 8vw, 56px); }
  .hero-sub { font-size: 16px; }
  .hero-stats-row { margin-top: 48px; padding-top: 32px; }
  .stats-grid { grid-template-columns: repeat(2, 1fr); gap: 20px; }

  /* Steps */
  .steps-grid { grid-template-columns: 1fr; gap: 24px; }
  .step-arrow { display: none !important; }

  /* Bento */
  .bento-grid { grid-template-columns: 1fr; grid-auto-rows: auto; }
  .bc-a, .bc-b, .bc-c, .bc-d, .bc-e { grid-column: auto; grid-row: auto; }

  /* Testimonials */
  .test-card { min-width: 320px; padding: 32px; }
  .test-quote { font-size: 60px; }

  /* Roles */
  .roles-grid { grid-template-columns: 1fr; }

  /* App */
  .app-flex { flex-direction: column; gap: 48px; text-align: center; }
  .app-left { max-width: 100%; }
  .app-list { text-align: left; }
  .dl-btns { justify-content: center; }
  .mockup-frame { transform: none; width: 260px; height: 540px; }

  /* Footer */
  .footer-grid { grid-template-columns: 1fr; gap: 40px; }
  .footer-bottom { flex-direction: column; text-align: center; }
  .footer-legal { justify-content: center; }

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

/* ── Mobile (max 480px) ── */
@media(max-width: 480px) {
  html, body {
    overflow-x: hidden;
  }
  .container { padding: 0 16px; }
  .section { padding: 60px 0; }

  .hero { padding-bottom: 40px; }
  .hero-h1 { font-size: clamp(32px, 10vw, 42px); }
  .hero-pill { font-size: 10px; padding: 6px 16px; }
  .hero-cta-row { flex-direction: column; align-items: center; }
  .hero-btn-primary, .hero-btn-secondary { width: 100%; justify-content: center; text-align: center; }
  .hero-trust { gap: 12px; padding: 16px; flex-direction: column; }
  .stats-grid { grid-template-columns: repeat(2, 1fr); gap: 16px; }
  .stat-num { font-size: 28px; }

  /* Steps */
  .step-card { padding: 32px 24px; }

  /* Bento */
  .bento-grid { gap: 16px; }
  .bento-card { padding: 24px 20px; border-radius: var(--r-lg); }
  .bc-a { padding: 32px 20px; }
  .bc-pts { font-size: 42px; }
  .bc-title, .bc-a .bc-title { font-size: 24px; margin-bottom: 8px; }
  .bc-icon { font-size: 32px; margin-bottom: 12px; }
  .bc-body { font-size: 14px; }

  /* Posters */
  .poster-grid { column-count: 1; column-gap: 0; }
  .poster-card { margin-bottom: 16px; border-radius: 16px; }
  .poster-content { padding: 16px; }

  /* Stats */
  .stats-cards { grid-template-columns: 1fr; gap: 16px; }
  .stats-card { padding: 32px 24px; }
  .stats-card-num { font-size: 36px; }

  /* Testimonials */
  .test-card { min-width: 280px; padding: 24px; }

  /* Roles */
  .role-card { padding: 32px 24px; }
  .rc-icon { font-size: 40px; margin-bottom: 16px; }
  .rc-title { font-size: 24px; }

  /* App */
  .mockup-frame { width: 240px; height: 500px; border-width: 10px; border-radius: 36px; }
  .dl-btns { flex-direction: column; width: 100%; }
  .btn-dl { width: 100%; justify-content: center; }

  /* Footer */
  .footer { padding: 60px 0 24px; }
  .footer-newsletter { flex-direction: column; }
}

/* ── Very Small (max 360px) ── */
@media(max-width: 360px) {
  .hero-h1 { font-size: 28px; }
  .hero-sub { font-size: 15px; }
  .sec-title { font-size: 26px; }
  .poster-title { font-size: 16px; }
  .stat-num { font-size: 24px; }
}
