/* === Dodatkowe poprawki responsywności dla smartfonów === */
/* Uzupełnienie istniejących breakpointów (max-width: 900px) o mniejsze ekrany. */

/* Ogólne ulepszenia dla tabletów / wąskich ekranów <= 900px */
@media (max-width: 900px) {
  /* Schowaj długi podpis "Consulting sp. z o.o." obok logo, żeby nav się nie łamał */
  header.nav .brand small { display: none !important; }
  /* Mniejsze logo na mobile */
  header.nav .brand .logo { height: 32px !important; }
  /* Mniejszy CTA w pasku */
  .nav-right .btn { padding: 9px 14px !important; font-size: .85rem !important; }
  /* Zmniejsz padding sekcji */
  section { padding: 60px 0 !important; }
  .hero { padding: 50px 0 70px !important; }
  /* Zaokrąglenia i menu mobilne */
  nav.open ul {
    padding: 12px !important;
  }
  nav.open ul li a.link { display:block; padding: 12px 14px; }
}

/* Smartfony — <= 600px */
@media (max-width: 600px) {
  .container { width: 92% !important; }

  /* HERO: zmniejsz radius i padding */
  .hero-visual,
  .subpage-hero .hero-visual {
    border-radius: 40px !important;
  }
  .hero { padding: 30px 0 50px !important; }
  .subpage-hero { padding: 40px 0 20px !important; }

  /* Sekcje */
  section { padding: 50px 0 !important; }
  .section-light, .content-section { border-radius: 32px 32px 0 0 !important; padding: 50px 0 !important; }
  .section-head { margin-bottom: 32px !important; }

  /* Karty / pojedyncze kolumny */
  .card { padding: 24px !important; }
  .areas-grid { grid-template-columns: 1fr !important; }
  .form-card { padding: 22px !important; }

  /* Typografia - mniejsze nagłówki */
  h1 { font-size: clamp(1.8rem, 8vw, 2.4rem) !important; }
  h2 { font-size: clamp(1.4rem, 6vw, 1.9rem) !important; }
  .hero p.lead, .subpage-hero p.lead { font-size: 1rem !important; }

  /* CTA buttons - pełna szerokość lepsza dotykowo */
  .hero-cta { flex-direction: column; align-items: stretch; }
  .hero-cta .btn { justify-content: center; width: 100%; }

  /* Pill list - mniejsze */
  .pill { padding: 6px 11px !important; font-size: .78rem !important; }
  .tag { padding: 8px 13px !important; font-size: .82rem !important; }

  /* CTA sekcja */
  .cta { padding: 50px 0 !important; }

  /* Footer */
  .foot { gap: 28px !important; }
  .foot-bottom { flex-direction: column; align-items: flex-start; }

  /* Statystyki - układ siatki nadal działa, ale upewniamy się */
  .stats { gap: 12px !important; }
  .stat { padding: 18px !important; }
  .stat .num { font-size: 1.7rem !important; }

  /* Nav: ukryj CTA "Umów rozmowę" w pasku — zostaje burger + język */
  .nav-right > a.btn { display: none !important; }
  .lang-toggle button { padding: 5px 10px !important; font-size: .75rem !important; }

  /* Form pola większe / czytelniejsze */
  .field input, .field textarea {
    font-size: 16px !important; /* iOS nie zoomuje */
  }

  /* Contact info */
  .contact-info li { font-size: .92rem; }
}

/* Bardzo małe smartfony — <= 380px */
@media (max-width: 380px) {
  h1 { font-size: 1.7rem !important; }
  .brand { font-size: 1.05rem !important; }
  header.nav .brand .logo { height: 28px !important; }
}

/* Zapobieganie poziomemu scrollowi wszędzie */
html, body { overflow-x: hidden; }
img, svg { max-width: 100%; }
