/* ==========================================================================
   Eurasia ECT — Responsive
   ========================================================================== */

/* --- Tablet (< 1024px) --- */

@media (max-width: 1023px) {

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

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

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

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

  .stats-grid .stat-card:nth-child(2) {
    border-right: none;
  }

  .stats-grid .stat-card:nth-child(1),
  .stats-grid .stat-card:nth-child(2) {
    border-bottom: 1px solid var(--gold-border);
  }

  .cta-blocks-grid { grid-template-columns: 1fr; }

  /* Masonry — tablet: 4 oszlop, egyszerűsített spanek */
  .gallery-grid {
    grid-template-columns: repeat(4, 1fr);
    grid-auto-rows: 180px;
    gap: 5px;
  }

  .gallery-item:nth-child(n)    { grid-column: unset; grid-row: unset; }
  .gallery-item:nth-child(5n+1) { grid-column: span 2; grid-row: span 2; }
  .gallery-item:nth-child(5n+4) { grid-column: span 2; }

  .newsletter-inner {
    grid-template-columns: 1fr;
    gap: var(--space-md);
  }

  .about-intro-grid {
    grid-template-columns: 1fr;
  }

  .about-side-deco {
    position: static;
    flex-direction: row;
    flex-wrap: wrap;
  }

  .about-quote { flex: 1; min-width: 240px; }

  .activities-grid   { grid-template-columns: 1fr; }
  .why-join-grid     { grid-template-columns: 1fr; }
  .case-studies-grid { grid-template-columns: 1fr; }
  .visitor-grid      { grid-template-columns: 1fr; }
  .contact-grid      { grid-template-columns: 1fr; }
  .expo-editions-grid { grid-template-columns: repeat(2, 1fr); }

  .gallery-grid {
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  }

  .social-org-platforms { flex-direction: column; }
  .social-platform-card { min-width: unset; }
}

/* --- Mobile (< 768px) --- */

@media (max-width: 767px) {

  :root {
    --space-xl:  4rem;
    --space-lg:  2.5rem;
  }

  .header-inner { height: 68px; }
  .mobile-nav   { top: 68px; }

  .hero__title {
    font-size: clamp(2.8rem, 12vw, 4rem);
  }

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

  .grid-2  { grid-template-columns: 1fr; }
  .grid-3  { grid-template-columns: 1fr; }
  .grid-4  { grid-template-columns: 1fr; }

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

  .footer-bottom {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.5rem;
  }

  /* Masonry — mobil: 2 oszlop, csak az 1. kép széles */
  .gallery-grid {
    grid-template-columns: repeat(2, 1fr);
    grid-auto-rows: 160px;
    gap: 4px;
  }

  .gallery-item:nth-child(n) { grid-column: unset; grid-row: unset; }
  .gallery-item:nth-child(5n+1) { grid-column: span 2; }

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

  .expo-editions-grid { grid-template-columns: 1fr; }

  .expo-current-header {
    flex-direction: column;
  }

  .form-row { grid-template-columns: 1fr; }

  .newsletter-fields {
    flex-direction: column;
  }

  .newsletter-fields input[type="text"] {
    border-right: 1px solid var(--gold-border);
    border-bottom: none;
    border-radius: var(--radius-sm) var(--radius-sm) 0 0;
  }

  .newsletter-fields input[type="email"] {
    border-right: 1px solid var(--gold-border);
    border-bottom: none;
    border-radius: 0;
  }

  .newsletter-fields button {
    border-radius: 0 0 var(--radius-sm) var(--radius-sm);
    text-align: center;
  }

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

  .partner-logo-grid {
    grid-template-columns: repeat(3, 1fr);
  }

  .partner-logo-item img {
    max-height: 135px;
  }

  .btn-group {
    flex-direction: column;
    align-items: flex-start;
  }

  .contact-grid { gap: var(--space-lg); }
}

/* --- Kis mobile (< 480px) --- */

@media (max-width: 479px) {

  /* Kis mobil: 1 oszlop, nincs span */
  .gallery-grid {
    grid-template-columns: 1fr;
    grid-auto-rows: 220px;
    gap: 4px;
  }

  .gallery-item:nth-child(n) { grid-column: unset; grid-row: unset; }

  .partner-logo-grid {
    grid-template-columns: repeat(3, 1fr);
  }

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

  .stats-grid .stat-card {
    border-right: none;
    border-bottom: 1px solid var(--gold-border);
  }

  .stats-grid .stat-card:last-child {
    border-bottom: none;
  }

  .about-offices { gap: 0.5rem; }

  .social-org-header {
    flex-direction: column;
    align-items: flex-start;
  }
}

/* --- Print --- */

@media print {
  .site-header,
  .site-footer,
  .hamburger,
  .mobile-nav { display: none; }

  body { background: white; color: black; }
  a    { color: black; text-decoration: underline; }
}

/* --- Reduced motion --- */

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    transition-duration: 0.01ms !important;
  }

  /* Redukált mozgás: galéria képek azonnal láthatóak, nincs slideIn */
  .gallery-item {
    opacity: 1;
    transform: none;
  }
}

/* --- Bálna venue bg: fixed attachment iOS-on nem működik --- */

@media (max-width: 767px) {
  .expo-about {
    background-attachment: scroll;
  }
}

/* --- Animációk (IntersectionObserver) --- */

.fade-in {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 0.6s ease, transform 0.6s ease;
}

.fade-in.is-visible {
  opacity: 1;
  transform: translateY(0);
}

.fade-in-delay-1 { transition-delay: 0.1s; }
.fade-in-delay-2 { transition-delay: 0.2s; }
.fade-in-delay-3 { transition-delay: 0.3s; }
.fade-in-delay-4 { transition-delay: 0.4s; }
