/* ==========================================================================
   Landingi dotacyjne: pojedynczy program i przegląd programów.

   Zieleń jest tu kolorem wiodącym, bo w palecie motywu odpowiada za programy
   dotacyjne — ten sam kolor niesie plakietka „Kompas Jutra" na kaflach.
   ========================================================================== */

.avm-prog{padding-top:4px}

/* ——— nagłówek programu ——— */
.avm-prog__hero{
  display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:34px;
  background:#fff;border-radius:var(--avm-radius);padding:38px;align-items:center;
}
.avm-prog__stan{
  display:inline-flex;align-items:center;gap:8px;
  border-radius:999px;padding:7px 15px;font-size:12.5px;font-weight:800;
  letter-spacing:.01em;
}
.avm-prog__stan--open{background:#dcfce7;color:#14532d}
.avm-prog__stan--soon{background:var(--avm-bg);color:var(--avm-mut)}

.avm-prog__hero h1{
  font-size:clamp(30px,4vw,46px);font-weight:800;line-height:1.12;
  margin:16px 0 0;letter-spacing:-.03em;
}
.avm-prog__org{margin:10px 0 0;font-size:14px;color:var(--avm-mut)}
.avm-prog__org b{color:var(--avm-tx);font-weight:600}
.avm-prog__lead{margin:16px 0 0;font-size:16.5px;line-height:1.65;color:#374151;max-width:62ch}
.avm-prog__akcje{display:flex;gap:11px;flex-wrap:wrap;margin-top:24px}

/* Trzy liczby, które przesądzają o tym, czy w ogóle warto składać wniosek. */
.avm-prog__liczby{margin:0;display:grid;gap:12px}
.avm-prog__liczby > div{
  background:linear-gradient(135deg,#16a34a,#15803d);color:#fff;
  border-radius:12px;padding:20px 22px;
}
.avm-prog__liczby > div:nth-child(2){background:var(--avm-tx)}
.avm-prog__liczby > div:nth-child(3){background:#fff;color:var(--avm-tx);border:1px solid var(--avm-lin)}
.avm-prog__liczby dt{
  font-size:11.5px;font-weight:800;text-transform:uppercase;letter-spacing:.09em;opacity:.9;
}
.avm-prog__liczby dd{margin:7px 0 0;font-size:23px;font-weight:800;line-height:1.2;letter-spacing:-.02em}
.avm-prog__wklad{font-size:15px !important;font-weight:600 !important;line-height:1.45 !important;color:var(--avm-mut)}

/* ——— karty treści ——— */
/* `align-items:start` — bez tego krótsza karta w wierszu rozciągała się
   do wysokości dłuższej i kończyła pustym polem. */
.avm-prog__siatka{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px;
  align-items:start;
}
.avm-prog__karta{background:#fff;border-radius:var(--avm-radius);padding:28px;margin-top:16px}
.avm-prog__siatka .avm-prog__karta{margin-top:0}
.avm-prog__karta h2{font-size:20px;font-weight:800;margin:0 0 16px;letter-spacing:-.015em}
.avm-prog__h2-drugi{margin-top:26px !important;padding-top:22px;border-top:1px solid var(--avm-lin)}
.avm-prog__akapit{margin:0;font-size:15.5px;line-height:1.7;color:#374151}

/* ——— na co przeznaczyć ——— */
.avm-prog__lista{list-style:none;margin:0;padding:0}
.avm-prog__lista li{
  display:flex;align-items:flex-start;gap:12px;
  padding:11px 0;border-bottom:1px solid var(--avm-lin);font-size:15px;line-height:1.5;
}
.avm-prog__lista li:last-child{border-bottom:0}
.avm-prog__lista i{margin-top:3px;width:16px;text-align:center;color:var(--avm-lin);flex:0 0 auto}
.avm-prog__lista li.jest i{color:var(--avm-zi)}
.avm-prog__lista li.jest{font-weight:600}
.avm-prog__lista li span{flex:1 1 auto;min-width:0}
.avm-prog__lista li b{
  flex:0 0 auto;background:#dcfce7;color:#14532d;border-radius:999px;
  padding:4px 11px;font-size:11px;font-weight:800;white-space:nowrap;
}

.avm-prog__uwaga{
  display:flex;gap:12px;align-items:flex-start;margin:20px 0 0;
  background:#fffbeb;border:1px solid #fde68a;border-radius:10px;
  padding:15px 17px;font-size:14.5px;line-height:1.6;color:#78350f;
}
.avm-prog__uwaga i{color:#d97706;margin-top:2px}
.avm-prog__uwaga strong{color:#78350f}

/* ——— harmonogram jako oś ——— */
.avm-prog__os{list-style:none;margin:0;padding:0}
.avm-prog__os li{position:relative;padding:0 0 22px 26px;border-left:2px solid var(--avm-lin)}
.avm-prog__os li:last-child{padding-bottom:0;border-left-color:transparent}
.avm-prog__os li::before{
  content:"";position:absolute;left:-7px;top:3px;
  width:12px;height:12px;border-radius:50%;background:var(--avm-zi);
  box-shadow:0 0 0 3px #dcfce7;
}
.avm-prog__termin{display:block;font-size:14.5px;font-weight:800}
.avm-prog__opis{display:block;margin-top:3px;font-size:14px;color:var(--avm-mut);line-height:1.55}

/* ——— kroki wniosku ——— */
.avm-prog__kroki{list-style:none;counter-reset:krok;margin:0;padding:0}
.avm-prog__kroki li{
  counter-increment:krok;position:relative;
  padding:0 0 16px 42px;font-size:15px;line-height:1.6;color:#374151;
}
.avm-prog__kroki li:last-child{padding-bottom:0}
.avm-prog__kroki li::before{
  content:counter(krok);position:absolute;left:0;top:-2px;
  width:27px;height:27px;border-radius:50%;
  background:var(--avm-tx);color:#fff;
  display:flex;align-items:center;justify-content:center;
  font-size:12.5px;font-weight:800;
}

/* ——— pytania ——— */
.avm-prog__faq details{border-bottom:1px solid var(--avm-lin);padding:14px 0}
.avm-prog__faq details:last-of-type{border-bottom:0;padding-bottom:0}
.avm-prog__faq summary{
  cursor:pointer;font-size:15.5px;font-weight:700;list-style:none;
  display:flex;align-items:flex-start;gap:11px;
}
.avm-prog__faq summary::-webkit-details-marker{display:none}
.avm-prog__faq summary::before{
  content:"+";flex:0 0 auto;width:21px;height:21px;border-radius:50%;
  background:var(--avm-bg);color:var(--avm-tx);
  display:flex;align-items:center;justify-content:center;
  font-size:15px;font-weight:800;line-height:1;margin-top:1px;
}
.avm-prog__faq details[open] summary::before{content:"–";background:var(--avm-zi);color:#fff}
.avm-prog__faq details p{margin:11px 0 0 32px;font-size:15px;line-height:1.65;color:#374151}

/* ——— wezwanie do kontaktu ——— */
.avm-prog__cta{
  display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:30px;align-items:center;
  background:linear-gradient(135deg,#16a34a,#14532d);color:#fff;
  border-radius:var(--avm-radius);padding:34px;margin-top:16px;
}
.avm-prog__cta h2{font-size:25px;font-weight:800;margin:0 0 10px;letter-spacing:-.02em}
.avm-prog__cta p{margin:0;font-size:15.5px;line-height:1.65;color:#dcfce7}
.avm-prog__cta-akcje{display:flex;gap:11px;flex-wrap:wrap;justify-content:flex-end}
/* Jedyny nowy wariant przycisku: obrys na ciemnym tle. Żółty i kobaltowy
   są już w base.css — nie dublujemy ich pod inną nazwą. */
.avm-btn--bialy{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.55)}
.avm-btn--bialy:hover{background:#fff;color:#14532d}

.avm-prog__zrodlo{
  margin:16px 0 0;font-size:12.5px;line-height:1.6;color:var(--avm-mut);
}
/* `overflow-wrap:anywhere` zamiast `word-break:break-all` — adres przechodzi najpierw
   w całości do nowej linii, a łamie się w środku dopiero, gdy się nie mieści. */
.avm-prog__zrodlo a{color:var(--avm-ko);text-decoration:underline;overflow-wrap:anywhere}

/* ==========================================================================
   Przegląd programów
   ========================================================================== */

.avm-progy__naglowek{background:#fff;border-radius:var(--avm-radius);padding:38px;margin-bottom:16px}
.avm-progy__naglowek h1{font-size:clamp(28px,3.6vw,42px);font-weight:800;margin:0;letter-spacing:-.03em}
.avm-progy__naglowek p{margin:14px 0 0;font-size:16.5px;line-height:1.65;color:#374151;max-width:78ch}

.avm-progy__siatka{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}
/* Sekcja programów zakończonych pod aktywnymi — wyraźnie oddzielona, bez udawania otwartej szansy. */
.avm-progy__sekcja{margin:34px 0 4px;font-size:22px;font-weight:800;letter-spacing:-.02em;color:var(--avm-mut)}
.avm-progy__sekcja-opis{margin:0 0 14px;font-size:14.5px;color:var(--avm-mut);max-width:78ch}
/* `align-items:flex-start` — inaczej plakietka statusu, jako element kolumny
   flex, rozciąga się na całą szerokość karty zamiast objąć swój tekst. */
.avm-progy__karta{
  display:flex;flex-direction:column;align-items:flex-start;
  background:#fff;border-radius:var(--avm-radius);padding:28px;
  border:1px solid transparent;transition:border-color .2s ease, box-shadow .2s ease;
}
.avm-progy__karta:hover{border-color:var(--avm-zi);box-shadow:var(--avm-cien)}
.avm-progy__karta h2{font-size:22px;font-weight:800;margin:14px 0 0;letter-spacing:-.02em}
.avm-progy__karta h2 a{color:inherit}
.avm-progy__org{margin:7px 0 0;font-size:13px;color:var(--avm-mut)}
.avm-progy__lead{margin:14px 0 0;font-size:15px;line-height:1.65;color:#374151}
/* Siatka zamiast `flex-wrap`: przy zawijaniu pary kwot raz stały obok siebie,
   raz jedna pod drugą. `align-self:stretch`, bo karta ma `align-items:flex-start`
   i bez tego blok (a z nim kreska nad kwotami) kończył się na szerokości tekstu. */
.avm-progy__kwoty{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 22px;align-self:stretch;
  margin:18px 0 0;padding-top:18px;border-top:1px solid var(--avm-lin);
}
.avm-progy__kwoty span{font-size:12px;color:var(--avm-mut);display:block}
.avm-progy__kwoty b{display:block;font-size:16px;font-weight:800;margin-top:3px;letter-spacing:-.015em}
.avm-progy__link{
  margin-top:18px;display:inline-flex;align-items:center;gap:8px;
  font-size:14.5px;font-weight:700;color:var(--avm-zi);
}
.avm-progy__karta:hover .avm-progy__link{gap:12px}

@media (max-width:1000px){
  .avm-prog__hero,.avm-prog__siatka,.avm-prog__cta,.avm-progy__siatka{grid-template-columns:1fr}
  .avm-prog__hero{padding:26px;gap:24px}
  .avm-prog__cta{padding:26px}
  .avm-prog__cta-akcje{justify-content:flex-start}
  .avm-progy__naglowek{padding:26px}
}

/* ==========================================================================
   Strony rozwiązań produktowych (strzelnice, drukarki legitymacji).
   Ten sam język wizualny co landingi programów, ale bez kart kwot —
   tutaj liczy się podstawa prawna i konkretne modele sprzętu.
   ========================================================================== */
.avm-rozw__hero{
  display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:40px;align-items:center;
  background:#fff;border-radius:var(--avm-radius);padding:38px;
}
.avm-rozw__hero h1{
  font-size:clamp(28px,3.8vw,42px);font-weight:800;line-height:1.14;
  margin:0 0 14px;letter-spacing:-.03em;
}
.avm-rozw__lead{font-size:16.5px;line-height:1.65;color:#374151;margin:0;max-width:60ch}
.avm-rozw__foto{margin:0}
.avm-rozw__foto img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:14px;display:block}

.avm-rozw__atuty{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:16px;
}
.avm-rozw__atut{
  display:flex;flex-direction:column;
  background:#fff;border-radius:var(--avm-radius);padding:22px;
}
.avm-rozw__atut-ikona{
  display:flex;align-items:center;justify-content:center;
  width:42px;height:42px;border-radius:11px;margin-bottom:14px;
  background:#eff6ff;color:var(--avm-ko);font-size:17px;
}
.avm-rozw__atut b{font-size:15.5px;font-weight:700;line-height:1.3}
.avm-rozw__atut span{margin-top:7px;font-size:14px;line-height:1.6;color:var(--avm-mut)}

.avm-rozw__siatka{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;
  margin-top:16px;align-items:start;
}
.avm-rozw__grupa{
  font-size:15px;font-weight:700;margin:20px 0 10px;
  padding-top:16px;border-top:1px solid var(--avm-lin);
}
.avm-rozw__grupa:first-of-type{margin-top:0;padding-top:0;border-top:0}
.avm-rozw__zrodlo{margin:16px 0 0;font-size:12.5px;color:var(--avm-mut)}

.avm-rozw__modele{display:flex;flex-direction:column;gap:12px}
.avm-rozw__model{
  border:1px solid var(--avm-lin);border-radius:11px;padding:16px 18px;
  transition:border-color .2s ease;
}
.avm-rozw__model:hover{border-color:var(--avm-ko)}
.avm-rozw__model b{display:block;font-size:15.5px;font-weight:700}
.avm-rozw__model span{display:block;margin-top:6px;font-size:14px;line-height:1.6;color:var(--avm-mut)}

@media (max-width:1100px){
  .avm-rozw__atuty{grid-template-columns:repeat(2,minmax(0,1fr))}
  .avm-rozw__siatka{grid-template-columns:1fr}
}
@media (max-width:800px){
  .avm-rozw__hero{grid-template-columns:1fr;padding:24px;gap:24px}
  .avm-rozw__atuty{grid-template-columns:1fr}
}

/* ——— telefon ———
   Przyciski w jednej kolumnie na pełną szerokość (wcześniej różnej długości
   jeden pod drugim), ciaśniejsze karty i zwarte kafle cech. */
@media (max-width:640px){
  .avm-prog__hero,.avm-rozw__hero{padding:22px 18px;gap:20px}
  .avm-prog__hero h1{font-size:30px}
  .avm-prog__akcje,.avm-prog__cta-akcje{flex-direction:column;align-items:stretch;gap:10px}
  .avm-prog__akcje .avm-btn,.avm-prog__cta-akcje .avm-btn{
    display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:48px;
  }
  .avm-prog__liczby > div{padding:16px 18px}
  .avm-prog__liczby dd{font-size:21px}
  .avm-prog__karta{padding:22px 18px}
  .avm-prog__karta h2{font-size:19px;margin-bottom:12px}

  /* Plakietka „mamy w ofercie" pod tekstem pozycji, nie obok — obok ściskała
     tekst do ~180 px i trzech linii. 28 px = ikona (16) + odstęp (12). */
  .avm-prog__lista li{flex-wrap:wrap;row-gap:6px}
  .avm-prog__lista li span{flex:1 1 calc(100% - 28px)}
  .avm-prog__lista li b{margin-left:28px}

  .avm-prog__cta{padding:24px 18px}
  .avm-prog__cta h2{font-size:22px}
  .avm-prog__zrodlo{padding:0 4px}

  .avm-progy__naglowek{padding:22px 18px}
  .avm-progy__karta{padding:22px 18px}
  .avm-progy__karta h2{font-size:20px}

  /* Kafle cech: ikona w linii z tytułem, opis pod tytułem — karta ~100 px zamiast ~170. */
  .avm-rozw__atuty{gap:10px}
  .avm-rozw__atut{
    display:grid;grid-template-columns:42px minmax(0,1fr);column-gap:14px;align-items:start;padding:16px;
  }
  .avm-rozw__atut .avm-rozw__atut-ikona{grid-row:1 / span 2;margin:0;font-size:17px;line-height:1}
  .avm-rozw__atut > b{align-self:end;padding-top:2px}
  .avm-rozw__atut > span:last-child{margin-top:3px}
}

/* ==========================================================================
   Sekcje rozszerzone landingu programu (Kompas Jutra, Cyfrowy Uczeń).

   Wszystko pod nowymi klasami i na końcu pliku — programy bez tych pól
   w danych nie dostają żadnej z tych reguł, więc ich wygląd się nie zmienia.
   Gradienty wpisane dosłownie: Critical CSS LiteSpeeda gubi var() w gradientach.
   ========================================================================== */

/* ——— dodatki w nagłówku ——— */
.avm-prog__partner{
  display:flex;align-items:center;gap:8px;margin:8px 0 0;
  font-size:13.5px;font-weight:600;color:#14532d;
}
.avm-prog__partner i{color:var(--avm-zi)}
/* Pobranie kalkulatora to akcja trzeciego rzędu — jasna zieleń, żeby nie
   konkurowała z konsultacją, a jednak odróżniała się od obrysu z telefonem. */
.avm-btn--pobierz{background:#f0fdf4;color:#14532d;border:2px solid #bbf7d0}
.avm-btn--pobierz:hover{background:#dcfce7;color:#14532d}
.avm-prog__akcje .avm-btn i{margin-right:4px}

.avm-prog__wcenie{
  list-style:none;margin:22px 0 0;padding:18px 0 0;border-top:1px solid var(--avm-lin);
  display:flex;flex-wrap:wrap;gap:10px 22px;
}
.avm-prog__wcenie li{display:flex;align-items:center;gap:7px;font-size:14px;color:#374151}
.avm-prog__wcenie i{color:var(--avm-zi)}
.avm-prog__wcenie b{color:#15803d;font-weight:800}

/* ——— paski: kalkulator i produkty ——— */
.avm-prog__paski{display:grid;gap:16px;margin-top:16px}
.avm-prog__paski--dwa{grid-template-columns:repeat(2,minmax(0,1fr))}
.avm-prog__pasek{
  display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:14px 22px;align-items:center;
  border-radius:var(--avm-radius);padding:26px 30px;
}
/* Obok siebie paski są za wąskie na przycisk z boku — przycisk schodzi pod tekst. */
.avm-prog__paski--dwa .avm-prog__pasek{grid-template-columns:58px minmax(0,1fr);align-items:start;align-content:start}
.avm-prog__paski--dwa .avm-prog__pasek-akcja{grid-column:2}
.avm-prog__pasek-ikona{
  width:58px;height:58px;border-radius:14px;
  display:flex;align-items:center;justify-content:center;font-size:25px;
}
.avm-prog__pasek-eyebrow{display:block;font-size:11.5px;font-weight:800;text-transform:uppercase;letter-spacing:.09em}
.avm-prog__pasek h2{font-size:21px;font-weight:800;margin:6px 0 0;letter-spacing:-.02em;line-height:1.25}
.avm-prog__pasek p{margin:8px 0 0;font-size:14.5px;line-height:1.6;max-width:72ch}
.avm-prog__pasek-akcja .avm-btn{display:inline-flex;align-items:center;gap:9px;white-space:nowrap}

.avm-prog__pasek--kalk{background:#f0fdf4;border:1px solid #bbf7d0}
.avm-prog__pasek--kalk .avm-prog__pasek-ikona{background:linear-gradient(135deg,#16a34a,#15803d);color:#fff}
.avm-prog__pasek--kalk .avm-prog__pasek-eyebrow{color:#15803d}
.avm-prog__pasek--kalk p{color:#374151}

.avm-prog__pasek--sklep{background:var(--avm-tx);color:#fff}
.avm-prog__pasek--sklep .avm-prog__pasek-ikona{background:rgba(255,255,255,.1);color:var(--avm-zo)}
.avm-prog__pasek--sklep .avm-prog__pasek-eyebrow{color:var(--avm-zo)}
.avm-prog__pasek--sklep p{color:#cbd5e1}

/* ——— sekcja pełnej szerokości ——— */
.avm-prog__sekcja{background:#fff;border-radius:var(--avm-radius);padding:32px;margin-top:16px}
.avm-prog__sekcja-glowa{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.85fr);gap:18px 40px;
  align-items:end;margin-bottom:24px;
}
.avm-prog__sekcja-glowa--sama{grid-template-columns:minmax(0,1fr)}
.avm-prog__eyebrow{
  display:block;margin-bottom:7px;
  font-size:11.5px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:#15803d;
}
.avm-prog__sekcja h2{font-size:25px;font-weight:800;margin:0;letter-spacing:-.02em;line-height:1.2}
.avm-prog__sekcja-opis{margin:9px 0 0;font-size:15.5px;line-height:1.65;color:#374151;max-width:72ch}
.avm-prog__cel{
  margin:0;background:#f0fdf4;border-left:3px solid var(--avm-zi);border-radius:10px;
  padding:15px 18px;font-size:14.5px;line-height:1.6;color:#14532d;
}
.avm-prog__cel b{
  display:block;margin-bottom:4px;
  font-size:11.5px;font-weight:800;text-transform:uppercase;letter-spacing:.09em;color:#15803d;
}

/* ——— kafle: jednostki i „jak pomagamy” ——— */
.avm-prog__kafle{
  list-style:none;margin:0;padding:0;
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;
}
.avm-prog__kafle--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.avm-prog__kafel{
  display:grid;grid-template-columns:46px minmax(0,1fr);gap:4px 15px;align-content:start;
  background:var(--avm-bg);border-radius:12px;padding:18px 20px;
}
.avm-prog__kafel-ikona{
  grid-row:1 / span 2;width:46px;height:46px;border-radius:12px;
  background:#fff;color:var(--avm-zi);
  display:flex;align-items:center;justify-content:center;font-size:19px;
}
.avm-prog__kafel b{align-self:center;font-size:16px;font-weight:800;line-height:1.3;letter-spacing:-.01em}
.avm-prog__kafel > span:last-child{font-size:14px;line-height:1.6;color:#4b5563}

/* „Jak pomagamy” to argumenty, nie lista — ikona nad tytułem, biały kafel z obrysem. */
.avm-prog__kafle--pomoc .avm-prog__kafel{
  display:flex;flex-direction:column;background:#fff;border:1px solid var(--avm-lin);padding:22px;
}
.avm-prog__kafle--pomoc .avm-prog__kafel-ikona{background:#dcfce7;color:#15803d;margin-bottom:14px}
/* W kolumnie flex `align-self:center` z kafla bazowego centrowałby tytuł w poziomie. */
.avm-prog__kafle--pomoc .avm-prog__kafel b{align-self:flex-start}
.avm-prog__kafle--pomoc .avm-prog__kafel > span:last-child{margin-top:6px}

/* ——— etapy jako pozioma oś ——— */
.avm-prog__etapy{
  list-style:none;margin:0;padding:0;counter-reset:etap;
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;
}
.avm-prog__etap{position:relative;counter-increment:etap;padding-top:54px}
.avm-prog__etap::before{
  content:counter(etap);position:absolute;left:0;top:0;z-index:1;
  width:38px;height:38px;border-radius:50%;background:var(--avm-zi);color:#fff;
  display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:800;
  box-shadow:0 0 0 5px #dcfce7;
}
.avm-prog__etap::after{content:"";position:absolute;top:18px;left:52px;right:-12px;height:2px;background:#bbf7d0}
.avm-prog__etap:last-child::after{display:none}
.avm-prog__etap-nazwa{display:block;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#15803d}
.avm-prog__etap b{display:block;margin-top:7px;font-size:16.5px;font-weight:800;line-height:1.3;letter-spacing:-.01em}
.avm-prog__etap p{margin:7px 0 0;font-size:14.5px;line-height:1.6;color:#4b5563}

/* ——— typy pracowni ——— */
.avm-prog__pakiety{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.avm-prog__pakiet{display:flex;flex-direction:column;border:1px solid var(--avm-lin);border-radius:14px;overflow:hidden}
.avm-prog__pakiet-glowa{
  display:flex;align-items:center;gap:15px;padding:20px 22px;
  background:linear-gradient(135deg,#16a34a,#15803d);color:#fff;
}
/* Drugi typ ciemny — ta sama para kolorów co karty kwot w nagłówku. */
.avm-prog__pakiet:nth-child(2) .avm-prog__pakiet-glowa{background:var(--avm-tx)}
.avm-prog__pakiet-ikona{
  flex:0 0 auto;width:48px;height:48px;border-radius:12px;background:rgba(255,255,255,.16);
  display:flex;align-items:center;justify-content:center;font-size:21px;
}
.avm-prog__pakiet-glowa h3{margin:0;font-size:19px;font-weight:800;line-height:1.25;letter-spacing:-.015em}
.avm-prog__pakiet-budzet{
  display:inline-block;margin-top:6px;border-radius:999px;padding:3px 11px;
  background:rgba(255,255,255,.16);font-size:12.5px;font-weight:700;
}
.avm-prog__pakiet:nth-child(2) .avm-prog__pakiet-budzet{background:var(--avm-zo);color:#3a2a00}
.avm-prog__pakiet ul{list-style:none;margin:0;padding:8px 22px 0;flex:1 1 auto}
.avm-prog__pakiet li{
  display:flex;align-items:flex-start;gap:11px;padding:11px 0;
  border-bottom:1px solid var(--avm-lin);font-size:15px;line-height:1.5;
}
.avm-prog__pakiet li:last-child{border-bottom:0}
.avm-prog__pakiet li i{flex:0 0 auto;margin-top:4px;color:var(--avm-zi)}
.avm-prog__pakiet > .avm-btn{
  display:flex;align-items:center;justify-content:center;gap:9px;margin:10px 22px 22px;
}
.avm-prog__pakiet > .avm-btn:hover{background:var(--avm-tx);color:#fff}

/* ——— wnioski A/B/C ——— */
.avm-prog__wnioski{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.avm-prog__wniosek{border:1px solid var(--avm-lin);border-radius:12px;padding:20px}
.avm-prog__wniosek-glowa{display:flex;align-items:center;gap:13px;margin-bottom:6px}
.avm-prog__litera{
  flex:0 0 auto;width:46px;height:46px;border-radius:12px;background:var(--avm-ko);color:#fff;
  display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:800;
}
.avm-prog__wniosek-glowa small{
  display:block;font-size:11.5px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--avm-mut);
}
.avm-prog__wniosek-glowa b{display:block;margin-top:2px;font-size:16.5px;font-weight:800;line-height:1.25}
.avm-prog__wniosek ol{list-style:none;margin:0;padding:0}
.avm-prog__wniosek li{
  margin-top:12px;padding-top:12px;border-top:1px solid var(--avm-lin);
  font-size:14px;line-height:1.55;color:#374151;
}
.avm-prog__wniosek li span{display:flex;align-items:baseline;gap:8px;margin-top:5px;font-weight:700;color:var(--avm-tx)}
.avm-prog__wniosek li span i{flex:0 0 auto;color:var(--avm-ko);font-size:12px}

@media (max-width:1100px){
  .avm-prog__etapy{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:30px}
  .avm-prog__etap:nth-child(2n)::after{display:none}
  .avm-prog__wnioski{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:1000px){
  .avm-prog__paski--dwa,.avm-prog__sekcja-glowa,.avm-prog__pakiety{grid-template-columns:minmax(0,1fr)}
  .avm-prog__kafle,.avm-prog__kafle--2{grid-template-columns:minmax(0,1fr)}
  .avm-prog__sekcja{padding:26px}
}

@media (max-width:640px){
  .avm-prog__wcenie{flex-direction:column;gap:8px}

  .avm-prog__pasek,
  .avm-prog__paski--dwa .avm-prog__pasek{grid-template-columns:48px minmax(0,1fr);padding:22px 18px;gap:12px 14px;align-items:start}
  .avm-prog__pasek-ikona{width:48px;height:48px;font-size:21px;border-radius:12px}
  .avm-prog__pasek h2{font-size:19px}
  .avm-prog__pasek-akcja,
  .avm-prog__paski--dwa .avm-prog__pasek-akcja{grid-column:1 / -1}
  .avm-prog__pasek-akcja .avm-btn{display:flex;justify-content:center;width:100%;min-height:48px;white-space:normal}

  .avm-prog__sekcja{padding:22px 18px}
  .avm-prog__sekcja h2{font-size:21px}
  .avm-prog__sekcja-glowa{margin-bottom:18px}
  .avm-prog__kafel{padding:16px}
  .avm-prog__kafle--pomoc .avm-prog__kafel{
    display:grid;grid-template-columns:46px minmax(0,1fr);padding:16px;
  }
  .avm-prog__kafle--pomoc .avm-prog__kafel-ikona{margin-bottom:0}
  .avm-prog__kafle--pomoc .avm-prog__kafel > span:last-child{margin-top:0}

  /* Oś pionowa: numer po lewej, linia łączy numery w dół. */
  .avm-prog__etapy{grid-template-columns:minmax(0,1fr);row-gap:0}
  .avm-prog__etap{padding:0 0 22px 54px}
  .avm-prog__etap:last-child{padding-bottom:0}
  .avm-prog__etap::after,
  .avm-prog__etap:nth-child(2n)::after{display:block;top:44px;bottom:4px;left:18px;right:auto;width:2px;height:auto}
  .avm-prog__etap:last-child::after{display:none}

  .avm-prog__pakiet-glowa{padding:18px}
  .avm-prog__pakiet ul{padding:6px 18px 0}
  /* Węższe boki przycisku — przy 24 px „Wyceń pracownię przyrodniczą” łamało się
     na dwie linie, a strzałka zostawała sama z boku. */
  .avm-prog__pakiet > .avm-btn{margin:10px 18px 18px;min-height:48px;padding-inline:12px;white-space:normal}
  .avm-prog__wniosek{padding:18px 16px}
}
