/* ============================================================
   LIBURNA RECRUITMENT v2 - Responsive (Mobile-First)
   ============================================================ */

/* --- Base (< 640px) - Mobile --- */
.nav-links, .nav-right { display: none; }
.nav-toggle { display: flex; }
.nav-mobile { display: flex; }
.lang-switcher--mobile { display: flex; }

.hero-inner { grid-template-columns: 1fr; text-align: center; gap: var(--sp-8); }
.hero-content { order: 1; }
.hero-visual { order: 0; }
.hero-desc { margin-inline: auto; }
.hero-actions { justify-content: center; }
.hero-globe { max-width: 280px; margin-inline: auto; }
/* Badges scale on mobile */
.hero-badge { scale: 0.6; }

.features-grid { grid-template-columns: 1fr; }
.plane-path { display: none; }

.about-grid { grid-template-columns: 1fr; gap: var(--sp-10); }
.about-exp-badge { right: var(--sp-4); bottom: -16px; }

.services-grid { grid-template-columns: 1fr; }
.service-card,
.service-card:nth-child(4),
.service-card:nth-child(5) { grid-column: auto; }

.process-grid { grid-template-columns: 1fr; gap: var(--sp-8); }
.process-grid::before {
  top: 26px; bottom: 26px; left: 25px; right: auto;
  width: 2px; height: auto;
}
.process-step { text-align: left; padding-left: calc(52px + var(--sp-5)); }
.process-number { position: absolute; left: 0; margin: 0; }
.process-step { position: relative; }

.countries-top { grid-template-columns: 1fr; text-align: center; }
.countries-grid { grid-template-columns: 1fr; }

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

.faq-grid { grid-template-columns: 1fr; gap: var(--sp-8); }
.faq-content { text-align: center; }

.contact-grid { grid-template-columns: 1fr; gap: var(--sp-10); }

.footer-contact-inner { flex-direction: column; text-align: center; }
.footer-grid { grid-template-columns: 1fr; gap: var(--sp-8); }
.footer-bottom { text-align: center; }

/* --- Small (>= 640px) --- */
@media (min-width: 640px) {
  .features-grid { grid-template-columns: repeat(2, 1fr); }
  .features-grid .feature-card:last-child { grid-column: 1 / -1; max-width: 50%; margin-inline: auto; }

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

  .countries-grid { grid-template-columns: repeat(2, 1fr); }
  .countries-grid .country-card:last-child { grid-column: 1 / -1; max-width: 50%; margin-inline: auto; }

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

  .hero-globe { max-width: 340px; }
  .hero-badge { scale: 0.8; }

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

/* --- Medium (>= 768px) --- */
@media (min-width: 768px) {
  .features-grid { grid-template-columns: repeat(3, 1fr); }
  .features-grid .feature-card:last-child { grid-column: auto; max-width: none; margin-inline: 0; }
  .plane-path { display: block; }

  .process-grid {
    grid-template-columns: repeat(5, 1fr); gap: var(--sp-6);
  }
  .process-grid::before {
    top: 26px; bottom: auto; left: calc(10% + 26px); right: calc(10% + 26px);
    width: auto; height: 2px;
  }
  .process-step { text-align: center; padding-left: 0; }
  .process-number { position: relative; left: auto; margin: 0 auto var(--sp-5); }

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

  .footer-contact-inner { flex-direction: row; text-align: left; }
  .footer-grid { grid-template-columns: 2fr 1fr 1fr 1.5fr; }
}

/* --- Large (>= 1024px) --- */
@media (min-width: 1024px) {
  .nav-links, .nav-right { display: flex; }
  .nav-toggle { display: none; }
  .nav-mobile { display: none !important; }
  .lang-switcher--mobile { display: none; }

  .hero-inner { grid-template-columns: 1fr 1fr; text-align: left; }
  .hero-content { order: 0; }
  .hero-visual { order: 1; }
  .hero-desc { margin-inline: 0; }
  .hero-actions { justify-content: flex-start; }
  .hero-globe { max-width: 480px; }
  .hero-badge { scale: 1; }

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

  .services-grid { grid-template-columns: repeat(6, 1fr); }
  .service-card { grid-column: span 2; }
  .service-card:nth-child(4) { grid-column: 2 / 4; }
  .service-card:nth-child(5) { grid-column: 4 / 6; }

  .countries-top { grid-template-columns: 1fr auto; text-align: left; }
  .countries-top--centered { grid-template-columns: 1fr; text-align: center; }
  .countries-grid { grid-template-columns: repeat(3, 1fr); }
  .countries-grid .country-card:last-child { grid-column: auto; max-width: none; margin-inline: 0; }

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

  .faq-grid { grid-template-columns: 1fr 1fr; }
  .faq-content { text-align: left; }
}

/* --- Extra Large (>= 1280px) --- */
@media (min-width: 1280px) {
  .container { padding-inline: var(--sp-8); }
}
