/* Responsive Breakpoints */

/* Tablet */
@media (max-width: 1024px) {
  .about-grid {
    grid-template-columns: 1fr;
    gap: var(--space-8);
  }

  .about-image { max-width: 500px; margin: 0 auto; }

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

  .gallery-masonry { columns: 2; }

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

  .education-content { grid-template-columns: 1fr; }

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

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

  .rprp-mockup { order: -1; }

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

/* Mobile */
@media (max-width: 768px) {
  :root {
    --nav-height: 60px;
  }

  /* Prevent reveal animations from causing off-screen overflow */
  .reveal-left,
  .reveal-right {
    transform: none;
  }

  .reveal-left.visible,
  .reveal-right.visible {
    transform: none;
  }

  .section-header {
    margin-bottom: var(--space-8);
  }

  .section {
    scroll-margin-top: calc(var(--nav-height) + var(--space-4));
    padding-top: var(--space-12);
    padding-bottom: var(--space-12);
  }

  .nav-links { display: none; }
  .nav-hamburger { display: flex; }

  .hero-content { padding: var(--space-6); }

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

  .hero-ctas .btn-outline { border-width: 2px; }

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

  .gallery-masonry { columns: 1; }

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

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

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

  .impact-stats {
    grid-template-columns: 1fr;
    gap: var(--space-4);
  }

  .stat { display: flex; align-items: center; gap: var(--space-3); }
  .stat-number { font-size: var(--text-2xl); }

  .testimonial-card { flex: 0 0 85vw; }

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

  .footer-bottom {
    flex-direction: column;
    gap: var(--space-3);
    text-align: center;
  }

  .phone-frame { width: 220px; }

  .section-title {
    font-size: clamp(var(--text-2xl), 6vw, var(--text-4xl));
  }

  .scroll-top {
    bottom: var(--space-4);
    right: var(--space-4);
    width: 40px;
    height: 40px;
  }

  .about-badges { gap: var(--space-2); }
  .badge { font-size: var(--text-xs); padding: var(--space-1) var(--space-3); }

  .footer-logo-img { height: 40px; }
}

/* Split screen mobile overrides */
@media (max-width: 768px) {
  .split-grid {
    grid-template-columns: 1fr;
    grid-template-rows: 1fr 1fr;
  }

  .split-bg-future {
    animation: none;
  }

  .collage-img {
    filter: grayscale(0.5) brightness(0.6);
  }

  .collage-img:nth-child(4),
  .collage-img:nth-child(5) {
    display: none;
  }

  .split-divider {
    top: 50%;
    bottom: auto;
    left: 0;
    right: 0;
    width: 100%;
    height: 2px;
    transform: translateY(-50%);
    background: linear-gradient(90deg, var(--rose-gold), white, var(--rose-gold));
    clip-path: inset(0 100% 0 0);
  }

  .split-divider.visible {
    animation: dividerRevealHoriz 1.2s var(--ease-out) forwards;
  }

  .split-turned {
    top: 50%;
    left: 50%;
    font-size: var(--text-lg);
  }

  .split-content {
    bottom: 10%;
  }

  .split-content-left,
  .split-content-right {
    text-align: center;
    left: 0;
    right: 0;
  }

  /* CTA button — tighter on mobile, sits above safe area */
  .split-cta {
    bottom: 6%;
    padding: var(--space-3) var(--space-6);
    font-size: 0.65rem;
    letter-spacing: 0.1em;
  }
}

/* Small mobile — 390px portrait */
@media (max-width: 480px) {
  .split-cta {
    bottom: 5%;
    padding: var(--space-2) var(--space-5);
    gap: 8px;
  }

  .split-cta-chevron {
    width: 8px;
    height: 13px;
  }

  .gallery-masonry { columns: 1; }

  .hero h1 { font-size: var(--text-2xl); }

  .about-badges { justify-content: center; }

  .wayback-counter { font-size: 3rem; }
}
