/* ============================================
   RESPONSIVE — Media Queries
   ============================================ */

/* ═══ Tablet Landscape (≤1200px) ═══ */
@media (max-width: 1200px) {
  .about__grid {
    gap: var(--space-xl);
  }
  .contact__grid {
    gap: var(--space-xl);
  }
  .footer__inner {
    gap: var(--space-lg);
  }
}

/* ═══ Tablet (≤992px) ═══ */
@media (max-width: 992px) {
  .navbar__links { display: none; }
  .navbar__hamburger { display: flex; }
  .navbar__cta { display: none; }

  .hero__name {
    font-size: clamp(2.5rem, 7vw, 5rem);
  }

  .portfolio__grid {
    grid-template-columns: repeat(2, 1fr);
    gap: var(--space-md);
  }

  .about__grid {
    grid-template-columns: 1fr;
    gap: var(--space-xl);
  }

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

  .contact__grid {
    grid-template-columns: 1fr;
    gap: var(--space-xl);
  }

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

  /* Hide viewfinder HUD on tablet */
  .viewfinder { display: none; }

  /* Simplify timeline on tablet */
  .timeline-hud { height: 100px; }
  body { padding-bottom: 100px !important; }
}

/* ═══ Mobile Landscape / Large Phone (≤768px) ═══ */
@media (max-width: 768px) {
  :root {
    --nav-height: 64px;
  }

  .hero {
    min-height: 100svh;
  }

  .portfolio__grid {
    grid-template-columns: 1fr;
    gap: var(--space-lg);
  }

  .about__stats {
    grid-template-columns: repeat(3, 1fr);
    gap: var(--space-sm);
  }

  .services__grid {
    grid-template-columns: 1fr 1fr;
    gap: var(--space-sm);
  }

  .form-row {
    grid-template-columns: 1fr;
  }

  .contact__form-wrapper {
    padding: var(--space-lg);
  }

  .footer__inner {
    grid-template-columns: 1fr;
    gap: var(--space-lg);
  }

  .footer__bottom {
    flex-direction: column;
    gap: var(--space-sm);
    text-align: center;
  }

  .testimonial-card {
    flex: 0 0 320px;
  }

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

  /* Hide timeline on mobile */
  .timeline-hud { display: none; }
  body { padding-bottom: 0 !important; }
}

/* ═══ Small Phone (≤480px) ═══ */
@media (max-width: 480px) {
  .hero__name {
    font-size: clamp(2rem, 10vw, 3.5rem);
  }

  .hero__cta {
    flex-direction: column;
    align-items: center;
  }

  .hero__cta .btn {
    width: 100%;
    max-width: 280px;
    justify-content: center;
  }

  .hero__scroll { display: none; }

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

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

  .filter-tabs {
    gap: 6px;
  }

  .filter-tab {
    padding: 8px 16px;
    font-size: 0.65rem;
  }

  .testimonial-card {
    flex: 0 0 280px;
    padding: var(--space-md);
  }

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

  .section-title {
    font-size: clamp(1.5rem, 6vw, 2.5rem);
  }
}

/* ═══ Reduced Motion ═══ */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }

  .reveal {
    opacity: 1;
    transform: none;
  }

  .hero__name .char {
    opacity: 1;
    transform: none;
  }

  .testimonials__track {
    animation: none;
  }
}
