/* responsive.css — breakpoints */
@media (max-width: 900px) {
  .gallery-grid { columns: 2; }
  .contact-grid { grid-template-columns: 1fr; }
}

@media (max-width: 1024px) {
  /* phones (portrait + landscape) + tablets: never wrap the menu -> hamburger only */
  .nav-inner { display: flex; }
  .nav-logo { order: 1; }
  .lang-switcher { order: 2; margin-left: auto; justify-self: auto; }
  .nav-toggle { display: flex; order: 3; margin-left: 0.6rem; }

  .nav-links {
    position: absolute;
    top: 66px; left: 0; right: 0;
    background: rgba(45, 105, 95, 0.98);
    backdrop-filter: blur(14px);
    flex-direction: column;
    padding: 0.75rem 1rem 1.25rem;
    gap: 0;
    transform: translateY(-110%);
    opacity: 0;
    pointer-events: none;
    transition: transform 0.4s var(--ease), opacity 0.4s var(--ease);
    border-bottom: 1px solid rgba(255,255,255,0.08);
  }
  .nav-links.open { transform: translateY(0); opacity: 1; pointer-events: auto; }
  .nav-links a {
    padding: 0.9rem 0.5rem;
    font-size: 0.95rem;
    letter-spacing: 0.08em;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  }
  .nav-links a::after { display: none; }

  .lang-switcher { margin-left: auto; padding-left: 0; border-left: none; }

  .section-interlude { min-height: 52vh; }
}

@media (max-width: 560px) {
  .gallery-grid { columns: 1; }
  .contact-form input,
  .contact-form textarea { font-size: 16px; }
  .nav-inner { padding: 0 1.1rem; }

  .lightbox-prev { left: 0.7rem; }
  .lightbox-next { right: 0.7rem; }
  .lightbox-close { top: 0.9rem; right: 1rem; }
  .lightbox-img { max-width: 94vw; max-height: 80vh; }
  .lightbox-prev, .lightbox-next, .lightbox-close { width: 44px; height: 44px; }
}

@media (max-width: 380px) {
  .lang-switcher { gap: 2px; }
  .lang-btn { padding: 0.24rem 0.4rem; font-size: 0.64rem; }
}
