/* ============================================================
   StreamVault IPTV — Responsive Styles
   ============================================================ */

/* ─── Large Desktop (1400px+) ────────────────────────────── */
@media (min-width: 1400px) {
  .container { max-width: 1360px; }
  .hero-title { font-size: 5rem; }
}

/* ─── Desktop (1024–1399px) ──────────────────────────────── */
@media (max-width: 1280px) {
  .features-grid { grid-template-columns: repeat(2, 1fr); }
  .devices-grid { grid-template-columns: repeat(3, 1fr); }
  .footer-grid { grid-template-columns: 1.5fr 1fr 1fr; }
  .footer-brand { grid-column: 1 / -1; }
}

/* ─── Tablet (768–1023px) ────────────────────────────────── */
@media (max-width: 1023px) {
  .section-pad { padding: 72px 0; }
  
  /* Nav */
  .nav-menu { display: none; }
  .hamburger { display: flex; }
  
  /* Hero */
  .hero-title { font-size: clamp(2rem, 5vw, 3.2rem); }
  .slider-controls, .slider-arrows { right: 20px; }
  
  /* Stats */
  .stats-bar { grid-template-columns: repeat(2, 1fr); padding: 24px; }
  .stat-divider { display: none; }
  
  /* Features */
  .features-grid { grid-template-columns: repeat(2, 1fr); }
  
  /* Pricing */
  .pricing-grid { grid-template-columns: 1fr; max-width: 460px; margin-left: auto; margin-right: auto; }
  
  /* Testimonials */
  .testimonials-track { grid-template-columns: repeat(2, 1fr); }
  
  /* FAQ */
  .faq-layout { grid-template-columns: 1fr; }
  .faq-categories { flex-direction: row; flex-wrap: wrap; position: static; }
  .faq-cat-btn { flex: 1; min-width: 140px; }
  
  /* Footer */
  .footer-grid { grid-template-columns: 1fr 1fr; }
  .footer-brand { grid-column: 1 / -1; }
  
  /* Devices */
  .devices-grid { grid-template-columns: repeat(3, 1fr); }
  
  /* CTA */
  .cta-card { padding: 48px 24px; }
  .cta-stats { gap: 24px; flex-wrap: wrap; }
}

/* ─── Mobile (max 767px) ─────────────────────────────────── */
@media (max-width: 767px) {
  .section-pad { padding: 56px 0; }
  .container { padding: 0 16px; }
  
  /* Hero */
  .hero-content { max-width: 100%; }
  .hero-btns { flex-direction: column; }
  .hero-btns .btn { width: 100%; justify-content: center; }
  .slider-controls { display: none; }
  .slider-arrows { bottom: 24px; right: 16px; }
  
  /* Stats */
  .stats-bar { grid-template-columns: repeat(2, 1fr); padding: 20px 16px; gap: 16px; }
  
  /* Features */
  .features-grid { grid-template-columns: 1fr; }
  
  /* Devices */
  .devices-grid { grid-template-columns: repeat(2, 1fr); }
  
  /* Testimonials */
  .testimonials-track { grid-template-columns: 1fr; }
  
  /* FAQ */
  .faq-cat-btn { flex: none; width: 100%; }
  
  /* Footer */
  .footer-grid { grid-template-columns: 1fr; gap: 32px; }
  .footer-brand { grid-column: auto; }
  .footer-bottom { flex-direction: column; text-align: center; }
  .footer-legal { flex-wrap: wrap; justify-content: center; }
  
  /* CTA */
  .cta-card { padding: 40px 20px; border-radius: var(--radius-lg); }
  .cta-btns { flex-direction: column; }
  .cta-btns .btn { width: 100%; justify-content: center; }
  .cta-stats { gap: 20px; }
  
  /* Pricing */
  .pricing-grid { grid-template-columns: 1fr; max-width: 100%; }
  
  /* Section Title */
  .section-title { font-size: 1.8rem; }
}

/* ─── Extra Small (max 479px) ────────────────────────────── */
@media (max-width: 479px) {
  .hero-title { font-size: 1.9rem; }
  .stats-bar { grid-template-columns: 1fr 1fr; }
  .devices-grid { grid-template-columns: 1fr 1fr; }
  .poster-item { width: 130px; }
  .poster-item img { height: 200px; }
}

/* ─── 4K+ (2560px+) ──────────────────────────────────────── */
@media (min-width: 2560px) {
  html { font-size: 18px; }
  .container { max-width: 1800px; }
}
