/* ============================================
   PIXEL-95 — RESPONSIVE.CSS
   All breakpoints
   ============================================ */

/* ---- TABLET (< 1024px) ---- */
@media (max-width: 1024px) {
  .services-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }

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

  .process-timeline {
    flex-wrap: wrap;
    gap: 24px;
  }

  .process-step {
    flex: 1 1 45%;
  }

  .process-line { display: none; }

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

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

/* ---- MOBILE (< 768px) ---- */
@media (max-width: 768px) {
  :root {
    --section-pad: 80px 0;
  }

  /* Nav */
  .nav-links { display: none; }
  .nav-cta.desktop-only { display: none; }
  .nav-hamburger { display: block; }

  .nav-inner { height: 60px; }

  /* Hero */
  .hero { padding-top: 60px; }
  .hud-bar { top: 64px; font-size: 7px; gap: 8px; }
  .hero-headline { font-size: clamp(32px, 8vw, 60px); }
  .hero-sub { font-size: 16px; }

  .hero-buttons {
    flex-direction: column;
    width: 100%;
    padding: 0 16px;
  }

  .hero-buttons .btn { width: 100%; justify-content: center; }

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

  /* Process */
  .process-timeline {
    flex-direction: column;
    align-items: stretch;
  }

  .process-step {
    flex: none;
    display: flex;
    align-items: flex-start;
    gap: 16px;
    text-align: left;
  }

  .process-node {
    margin: 0;
    flex-shrink: 0;
    width: 48px;
    height: 48px;
    font-size: 12px;
  }

  .process-line { display: none; }

  /* High scores */
  .highscore-table { font-size: 9px; }
  .highscore-row { grid-template-columns: 40px 1fr 80px; padding: 12px 12px; }

  /* Featured work */
  .featured-grid {
    grid-template-columns: 1fr;
  }

  /* Testimonials */
  .testimonial-card {
    min-width: 300px;
  }

  /* CTA */
  .cta-box { padding: 40px 20px; }
  .cta-gameover { font-size: 20px; }
  .cta-buttons { flex-direction: column; }
  .cta-buttons .btn { width: 100%; justify-content: center; }

  /* Footer */
  .footer-nav { flex-direction: column; gap: 16px; }

  /* Services page */
  .pricing-grid {
    grid-template-columns: 1fr;
  }

  .pricing-card { padding: 24px; }

  /* Work page */
  .portfolio-grid {
    grid-template-columns: 1fr;
  }

  .filter-bar {
    flex-wrap: wrap;
    gap: 8px;
  }

  .filter-btn { font-size: 9px; padding: 8px 14px; }

  /* About page */
  .about-story {
    grid-template-columns: 1fr;
  }

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

  /* Contact page */
  .contact-layout {
    grid-template-columns: 1fr;
  }

  .form-radios {
    flex-direction: column;
    gap: 8px;
  }

  .form-submit-btn { width: 100%; }
}

/* ---- SMALL MOBILE (< 480px) ---- */
@media (max-width: 480px) {
  .hero-headline { font-size: clamp(28px, 7vw, 44px); }

  .section-title { font-size: clamp(16px, 4vw, 24px); }

  .turnaround-badge { font-size: 8px; padding: 8px 14px; }

  .testimonial-card { min-width: 260px; padding: 24px; }
  .testimonial-quote { font-size: 14px; }

  .highscore-table { font-size: 8px; }
  .highscore-row { grid-template-columns: 30px 1fr 70px; }

  .hud-bar { font-size: 6px; }

  .speed-ticker-inner { font-size: 9px; }

  .service-card .card-title { font-size: 12px; }
  .service-card .card-price { font-size: 16px; }

  .nav-logo { font-size: 11px; }
}
