/* ═══════════════════════════════════════════════════════════════
   ADSY — 4 · POPRAWKI
   Wszystko, co nadpisuje motyw. Wczytywany jako ostatni.

   Każda reguła ma komentarz z powodem — inaczej za pół roku
   nie będzie wiadomo, czy można ją usunąć.
   ═══════════════════════════════════════════════════════════════ */

/* ── NAGŁÓWKI KADENCE ──────────────────────────────────────────
   Motyw ustawia margin 1.5em góra / .5em dół oraz kolor z palety.
   Reguły ładują się później niż nasze, więc trzeba podbić wagę.

   NIE dopisuj tu p, ul, ol — przy tej wadze zaczną nadpisywać
   marginesy we własnych komponentach. */
.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6 {
  margin-top: 0;
}

/* ── KONTENER NIE MOŻE PRZYCINAĆ ───────────────────────────────
   Gdy jedna oś dostaje overflow:hidden, druga przestaje być
   visible i element STAJE SIĘ kontenerem przewijania. Wszystkie
   animacje sterowane pozycją mierzą się wtedy względem niego,
   a nie względem okna — i zamierają.

   clip odcina identycznie, ale kontenera nie tworzy. */
.wp-block-kadence-rowlayout,
.kt-row-column-wrap {
  overflow-x: initial;
}

/* ── ODSTĘP MIĘDZY SEKCJAMI ────────────────────────────────────
   Komponenty listowe kończą się własnym wypełnieniem ostatniego
   wiersza, przez co dolna przerwa robi się większa od górnej.
   Zerujemy margines ostatniego elementu w kontenerze. */
.kt-inside-inner-col > *:last-child {
  margin-bottom: 0;
}
.kt-inside-inner-col > *:first-child {
  margin-top: 0;
}

/* ── FORMULARZE FLUENT FORMS ───────────────────────────────────
   Domyślne pola nie pasują do reszty. Zaokrąglenie, obwódka
   i poświata przy zaznaczeniu jak w pozostałych komponentach. */
.fluentform input[type='text'],
.fluentform input[type='email'],
.fluentform input[type='tel'],
.fluentform input[type='url'],
.fluentform select,
.fluentform textarea {
  border-radius: 14px !important;
  border: 1.5px solid var(--stone) !important;
  padding: 15px 18px !important;
  font-size: 16px !important;
  transition:
    border-color 0.3s var(--out),
    box-shadow 0.3s var(--out) !important;
}
.fluentform input:focus,
.fluentform select:focus,
.fluentform textarea:focus {
  border-color: var(--moss) !important;
  box-shadow: 0 0 0 4px rgba(2, 96, 61, 0.09) !important;
  outline: none !important;
}

/* ── OBRAZY BEZ PRZESUWANIA UKŁADU ─────────────────────────────
   Obraz bez wymiarów przesuwa treść przy wczytywaniu.
   Zapas na wypadek, gdyby gdzieś zabrakło width/height. */
.wp-block-image img,
.kb-image img {
  height: auto;
}

/* ── OGRANICZONY RUCH ──────────────────────────────────────────
   Ustawienie systemowe, nie kaprys. Wyłączamy wszystko, co się
   rusza samo — zostawiamy przejścia reagujące na kursor. */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
  }
}
