/* ==========================================================================
   MiGoGraphy - Responsive Design & Mobile Adaptations
   ========================================================================== */

/* Large Tablets & Small Laptops (<= 1024px) */
@media (max-width: 1024px) {
  .hero-main-canvas {
    grid-template-columns: 1fr;
    gap: 3rem;
  }

  .hero-visual-frame {
    justify-content: center;
  }

  .manifesto-layout {
    grid-template-columns: 1fr;
    gap: 3rem;
  }

  .philosophy-intro-header {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }

  .contact-hero-statement {
    grid-template-columns: 1fr;
    gap: 2rem;
  }

  .modal-content-container {
    grid-template-columns: 1fr;
    height: 94vh;
    overflow-y: auto;
  }

  .modal-media-col {
    min-height: 380px;
  }

  .modal-info-col {
    border-left: none;
    border-top: 1px solid var(--border-on-dark);
  }
}

/* Mobile Devices (<= 768px) */
@media (max-width: 768px) {
  .site-header {
    padding: 0 1.25rem;
  }

  .header-nav-links {
    display: none; /* Accessible via fullscreen menu */
  }

  .scene-hero {
    padding-top: calc(var(--header-height) + 1.5rem);
    padding-inline: 1.25rem;
  }

  /* Mobile Gallery */
  .gallery-sticky-wrapper {
    position: relative;
    height: auto;
    overflow: visible;
  }

  .gallery-viewport {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory;
    padding-inline: 1.25rem;
  }

  .gallery-track {
    padding-left: 0;
    padding-right: 2rem;
    gap: 1.25rem;
    transform: none !important;
  }

  .gallery-card {
    scroll-snap-align: start;
  }

  .gallery-card.ratio-portrait,
  .gallery-card.ratio-landscape,
  .gallery-card.ratio-tall,
  .gallery-card.ratio-wide {
    width: 82vw;
    aspect-ratio: 4 / 5;
  }

  .gallery-progress-wrap {
    display: none;
  }

  /* Circular Lens Viewfinder on Mobile */
  .lens-barrel-container {
    width: min(340px, 90vw);
  }

  .viewfinder-live-specs {
    font-size: 0.65rem;
  }

  .moment-reveal-card {
    padding: 0.6rem 1.25rem;
    gap: 0.75rem;
    top: 50%;
    left: 50%;
    bottom: auto;
  }

  /* Floating WhatsApp Mobile Mode (Compact Editorial Pill) */
  .whatsapp-floating-action {
    padding: 0.7rem 1.2rem;
    gap: 0.6rem;
  }

  .whatsapp-action-label {
    font-size: 0.75rem;
  }

  /* Hide Desktop Custom Cursor on touch */
  .custom-cursor-follower {
    display: none !important;
  }
}

/* Small Phones (<= 430px) */
@media (max-width: 430px) {
  .hero-meta-bar {
    font-size: 0.65rem;
  }

  .contact-headline {
    font-size: 2.2rem;
  }

  .footer-giant-farewell {
    font-size: 2.2rem;
  }

  .manifesto-title {
    font-size: 1.95rem;
  }
}
