/* =========================================================
   PGS 3D - Responsive overrides
   ========================================================= */

/* Tablet */
@media (max-width: 1024px) {
  .pgs3d-section { padding: var(--pgs-space-3xl) 0; }
  .pgs3d-hero__grid { grid-template-columns: 1fr; gap: var(--pgs-space-2xl); }
  .pgs3d-hero__scene { max-width: 480px; margin: 0 auto; }
  .pgs3d-deliverables__grid { grid-template-columns: repeat(2, 1fr); }
  .pgs3d-pricing__grid { grid-template-columns: repeat(3, 1fr); }
  .pgs3d-addons__grid { grid-template-columns: 1fr; }
  .pgs3d-testimonials__grid { grid-template-columns: 1fr; }
  .pgs3d-process__grid { grid-template-columns: repeat(2, 1fr); gap: var(--pgs-space-xl); }
  .pgs3d-footer__grid { grid-template-columns: 1fr 1fr; gap: var(--pgs-space-xl); }
}

/* Mobile */
@media (max-width: 720px) {
  :root {
    --pgs-space-3xl: 3.5rem;
    --pgs-space-4xl: 4.5rem;
  }
  .pgs3d-container { padding: 0 1.25rem; }
  .pgs3d-section { padding: var(--pgs-space-3xl) 0; }

  /* Mobile nav: hamburger shows, links collapse into a slide-down panel */
  .pgs3d-nav-toggle { display: flex; }
  .pgs3d-header__nav {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    padding: 0.4rem 0 0.8rem;
    background: rgba(255, 255, 255, 0.98);
    backdrop-filter: blur(20px) saturate(160%);
    -webkit-backdrop-filter: blur(20px) saturate(160%);
    border-bottom: 1px solid var(--pgs-glass-border-dark);
    box-shadow: var(--pgs-shadow-2);
    display: none;
  }
  .pgs3d-header.nav-open .pgs3d-header__nav { display: flex; }
  .pgs3d-header__nav a {
    padding: 0.9rem 1.5rem;
    font-size: 1rem;
  }
  .pgs3d-header__nav a:not(.pgs3d-header__cta):not(:last-child) {
    border-bottom: 1px solid var(--pgs-border);
  }
  .pgs3d-header__cta {
    margin: 0.7rem 1.5rem 0.2rem;
    text-align: center;
  }
  .pgs3d-hero { min-height: auto; padding: 3rem 0; }
  .pgs3d-hero__title { font-size: clamp(2rem, 8vw, 2.75rem); }
  .pgs3d-hero__subtitle { font-size: 1rem; }
  .pgs3d-hero__scene { max-width: 320px; }
  .pgs3d-deliverables__grid { grid-template-columns: 1fr; }
  .pgs3d-personas__grid { grid-template-columns: 1fr; }
  .pgs3d-pricing__grid { grid-template-columns: 1fr; }
  .pgs3d-process__grid { grid-template-columns: 1fr; }
  .pgs3d-team__grid { grid-template-columns: 1fr; }
  .pgs3d-footer__grid { grid-template-columns: 1fr; gap: var(--pgs-space-xl); }
  .pgs3d-card { padding: var(--pgs-space-lg); }
  .pgs3d-final-cta__mic { width: 180px; right: -60px; bottom: -60px; }

  /* Mobile perf: drop backdrop blur on glass cards (perf cliff on low-end Android) */
  .pgs3d-card {
    background: var(--pgs-glass-bg-strong);
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }
}

/* Coarse pointer (touch) - disable tilt at the JS layer too, but kill any hover lifts here */
@media (pointer: coarse) {
  .pgs3d-card:hover { transform: none; }
}
