@media (max-width: 1024px) {
  .hero-grid, .two-column { grid-template-columns: 1fr; }
  .card-grid.four-up, .card-grid.three-up, .instagram-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .section-heading-inline { align-items: flex-start; flex-direction: column; }
  .nav { display: none; }
  .menu-toggle { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 0.7rem 1rem; border-radius: 999px; border: 1px solid var(--color-border); background: white; }
  .nav.is-open { display: flex; flex-direction: column; width: 100%; padding: 1rem 0 0; }
  .header-inner { flex-wrap: wrap; }
}
@media (max-width: 640px) {
  .site-header {
    position: fixed;
    background: rgba(255, 248, 241, 0.82);
    backdrop-filter: blur(18px);
  }
  .hero {
    padding-top: 76px;
  }
  .hero-media {
    width: 100%;
    min-height: 52svh;
    height: 52svh;
    margin: 0;
    border-radius: 0;
  }
  .hero-video {
    object-fit: contain;
    object-position: center center;
    background: #f6eadc;
  }
  .hero-content {
    min-height: 52svh;
    height: 52svh;
    align-items: flex-end;
    padding: 1rem 0 1.25rem;
  }
  .hero-buttons {
    width: 100%;
    justify-content: center;
  }
  .hero-buttons-mobile {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 0.75rem;
    margin: 1rem 0 0;
  }
  .hero-buttons-mobile .button {
    width: 100%;
  }
  .hero-mobile-actions {
    display: block;
    padding-bottom: 0.5rem;
  }
  .hero-buttons:not(.hero-buttons-mobile) {
    display: none;
  }
  .hero-overlay {
    background:
      linear-gradient(180deg, rgba(255, 248, 241, 0.08), rgba(63, 52, 45, 0.18)),
      radial-gradient(circle at top left, rgba(255, 255, 255, 0.1), transparent 45%);
  }
  .section { padding: 3.75rem 0; }
  .card-grid.four-up, .card-grid.three-up, .instagram-grid { grid-template-columns: 1fr; }
  .why-choose-list { grid-template-columns: 1fr; }
  .section-heading-inline { gap: 1rem; }
  .button-group, .cta-inner, .footer-inner { flex-direction: column; align-items: flex-start; }
  .page-hero { padding: 8rem 0 3.75rem; }
  .gallery-heading { padding: 6rem 0 1.5rem; }
  .page-hero h1 { font-size: clamp(2.25rem, 10vw, 3.4rem); }
  .portfolio-intro h1 { font-size: clamp(2.25rem, 10vw, 3.25rem); }
  .form-row, .stat-grid { grid-template-columns: 1fr; }
  .package-grid, .checkout-layout { grid-template-columns: 1fr; }
  .package-card.package-featured { transform: none; }
  .checkout-summary { position: static; }
  .gallery-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .gallery-grid .image-frame:nth-child(2), .gallery-grid .image-frame:nth-child(5) { transform: none; }
  .gallery-collage { width: 92%; grid-template-columns: repeat(6, minmax(0, 1fr)); grid-auto-rows: 4.4rem; gap: 0; }
  .gallery-tile { margin: -.2rem; }
  .gallery-tile--feature { grid-column: 1 / span 3; grid-row: 1 / span 7; transform: translate(.35rem, .4rem); }
  .gallery-tile--tall:nth-child(2) { grid-column: 3 / span 3; grid-row: 1 / span 6; transform: translateY(-.2rem); }
  .gallery-tile--tall:nth-child(3) { grid-column: 4 / span 3; grid-row: 1 / span 5; transform: translate(-.2rem, .35rem); }
  .gallery-tile--wide { grid-column: 2 / span 4; grid-row: 6 / span 4; transform: translateY(-.35rem); }
  .gallery-tile--square { grid-column: span 2; grid-row: span 3; }
  .gallery-tile:nth-child(5) { grid-column: 1 / span 2; grid-row: 8 / span 4; transform: translateY(-.55rem); }
  .gallery-tile:nth-child(6) { grid-column: 4 / span 2; grid-row: 10 / span 3; }
  .gallery-tile:nth-child(7) { grid-column: 5 / span 2; grid-row: 9 / span 3; transform: translateY(.4rem); }
  .gallery-tile:nth-child(8) { grid-column: 2 / span 2; grid-row: 10 / span 3; }
  .gallery-tile:nth-child(9) { grid-column: 3 / span 3; grid-row: 10 / span 6; }
  .gallery-tile:nth-child(10) { grid-column: 1 / span 2; grid-row: 12 / span 3; }
  .gallery-tile:nth-child(11) { grid-column: 4 / span 3; grid-row: 13 / span 4; }
  .gallery-tile:nth-child(12) { grid-column: 1 / span 3; grid-row: 15 / span 4; }
  .gallery-tile:nth-child(13) { grid-column: 3 / span 2; grid-row: 16 / span 3; }
  .gallery-tile:nth-child(14) { grid-column: 5 / span 2; grid-row: 17 / span 5; }
  .gallery-tile--extra { grid-column: span 2; grid-row: span 4; transform: translateY(-.2rem); }
  .gallery-tile:nth-child(15) { grid-column: 1 / span 2; grid-row: 22 / span 5; }
  .gallery-tile:nth-child(16) { grid-column: 3 / span 2; grid-row: 22 / span 4; }
  .gallery-tile:nth-child(17) { grid-column: 5 / span 2; grid-row: 22 / span 5; }
  .gallery-tile:nth-child(18) { grid-column: 1 / span 2; grid-row: 27 / span 4; }
  .gallery-tile:nth-child(19) { grid-column: 3 / span 2; grid-row: 27 / span 4; }
  .gallery-tile:nth-child(20) { grid-column: 5 / span 2; grid-row: 27 / span 4; }
  .gallery-tile:nth-child(21) { grid-column: 1 / span 3; grid-row: 31 / span 4; }
  .gallery-tile:nth-child(22) { grid-column: 4 / span 3; grid-row: 31 / span 4; }
  .gallery-tile:nth-child(23) { grid-column: 1 / span 2; grid-row: 35 / span 4; }
  .gallery-tile:nth-child(24) { grid-column: 3 / span 4; grid-row: 35 / span 5; }
  .gallery-tile:nth-child(25) { grid-column: 1 / span 3; grid-row: 40 / span 4; }
  .gallery-tile:nth-child(26) { grid-column: 4 / span 3; grid-row: 40 / span 4; }
  .gallery-collage { grid-auto-flow: dense; }
  .gallery-tile { grid-column: span 2; grid-row: span 4; }
  .gallery-tile:nth-child(1) { grid-column: span 3; grid-row: span 6; }
  .gallery-tile:nth-child(2) { grid-column: span 3; grid-row: span 5; }
  .gallery-tile:nth-child(3) { grid-column: span 3; grid-row: span 5; }
  .gallery-tile:nth-child(4), .gallery-tile:nth-child(12) { grid-column: span 4; grid-row: span 3; }
  .gallery-tile:nth-child(9), .gallery-tile:nth-child(14) { grid-column: span 3; grid-row: span 5; }
  .gallery-tile:nth-child(15), .gallery-tile:nth-child(17), .gallery-tile:nth-child(21), .gallery-tile:nth-child(24) { grid-column: span 3; grid-row: span 5; }
  .gallery-lightbox { padding: 2rem .75rem; }
  .gallery-lightbox__close { top: .75rem; right: .85rem; }
  .gallery-page .gallery-heading { padding: 7rem 0 2.5rem; }
  .gallery-page .gallery-collage { width: 100%; grid-template-columns: repeat(6, minmax(0, 1fr)); grid-auto-rows: 4.4rem; gap: .2rem; }
  .gallery-page .gallery-tile { grid-column: span 2; grid-row: span 4; }
  .gallery-page .gallery-tile:nth-child(1), .gallery-page .gallery-tile:nth-child(2), .gallery-page .gallery-tile:nth-child(3) { grid-column: span 3; grid-row: span 5; }
  .gallery-page .gallery-tile:nth-child(4), .gallery-page .gallery-tile:nth-child(5), .gallery-page .gallery-tile:nth-child(6), .gallery-page .gallery-tile:nth-child(7) { grid-column: span 3; grid-row: span 4; }
  .gallery-page .gallery-tile:nth-child(8), .gallery-page .gallery-tile:nth-child(9), .gallery-page .gallery-tile:nth-child(10) { grid-column: span 3; grid-row: span 4; }
  .gallery-page .gallery-tile:nth-child(12), .gallery-page .gallery-tile:nth-child(17), .gallery-page .gallery-tile:nth-child(21), .gallery-page .gallery-tile:nth-child(24) { grid-column: span 3; grid-row: span 5; }
  .gallery-page .gallery-tile:nth-child(15), .gallery-page .gallery-tile:nth-child(18), .gallery-page .gallery-tile:nth-child(22), .gallery-page .gallery-tile:nth-child(25) { grid-column: span 3; grid-row: span 5; }
  .gallery-page .nav a { color: var(--color-text); }
  .instagram-feed { width: 100%; padding: 0.5rem; }
  .portfolio-intro, .video-category { grid-template-columns: 1fr; }
  .portfolio-intro .image-frame { min-height: 0; aspect-ratio: 4 / 5; }
  .portfolio-intro .image-frame img { height: auto; }
  .brand-wall { gap: .85rem; }
  .brand-line { flex: 0 0 9.5rem; min-height: 3.75rem; font-size: .78rem; }
  .video-slots, .proof-grid { grid-template-columns: 1fr; }
  .video-slot { flex-basis: 72%; }
}
