/* PROPOZYCJA PP — arkusz nowych sekcji */

/* — nawigacja propozycji PP —
   Od 25.08 header jest w CAŁOŚCI opisany tutaj (żadnych `style=` w markupie): jedno miejsce
   na zmiany, mniejszy HTML na każdej z ~80 stron i hovery na czystym CSS (bez style-hover). */
.pp-hd{position:sticky;top:0;z-index:90;background:#FFFFFF;box-shadow:0 1px 0 rgba(23,52,96,.08)}
/* Dolny pasek: `hidden` do czasu, aż silnik pokaże go po drugiej sekcji; `--pp-vv` to korekta
   pod iOS (pasek narzędzi Safari chowa się przy przewijaniu i `bottom:0` przestaje być dołem
   EKRANU — silnik przelicza to z Visual Viewport API). `env(safe-area-inset-bottom)` trzyma
   treść nad paskiem gestów. */
.pp-pasek-dol{--pp-vv:0px;position:fixed;left:0;right:0;bottom:0;z-index:95;display:none;background:#FFFFFF;box-shadow:0 -6px 24px rgba(8,34,74,.14);padding:10px 14px calc(10px + env(safe-area-inset-bottom,0px));gap:10px;transform:translateY(calc(var(--pp-vv) + 130%));transition:transform .28s cubic-bezier(.2,.7,.2,1);will-change:transform}
.pp-pasek-dol.pp-widoczny{transform:translateY(var(--pp-vv))}
.pp-pasek-dol[hidden]{display:none}
.pp-pasek-tel{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1.5px solid rgba(23,52,96,.25);border-radius:999px;padding:11px 10px;font-weight:600;font-size:.92rem;color:#173460;text-decoration:none}
.pp-pasek-cta{flex:1.4;display:inline-block;text-align:center;background:#D40A32;color:#FFFFFF;font-weight:600;font-size:.92rem;padding:11px 10px;border-radius:999px;text-decoration:none}
.pp-pasek-cta:hover{background:#B90D2F;color:#FFFFFF}
.pp-topbar{background:#08224A;color:#c7d6ec;font-size:.82rem}
/* SZEROKOŚĆ NAGŁÓWKA — jedna na całym serwisie (uwaga właściciela 25.08: „header na
   podstronach jest węższy niż na home; na home ta szerokość jest lepsza").
   Przyczyna była w pudełku, nie w wartości: home to eksport prototypu BEZ resetu
   `*{box-sizing:border-box}`, więc `max-width:1376px` liczyło się tam do TREŚCI i pas
   miał 1376 + 2×48 px paddingu = 1472 px. Podstrony reset mają, więc te same 1376 px
   obejmowały już padding i treść nagłówka była o 96 px węższa (zmierzone: logo na
   home 112 px od krawędzi, na podstronie 160 px).
   Dlatego: `box-sizing` USTAWIONY JAWNIE (nie dziedziczymy różnicy) + max-width 1472 px,
   czyli dokładnie geometria z home. Na wąskich ekranach element i tak zwęża się sam
   (width:auto), więc nic nie wystaje. */
.pp-topbar-in{box-sizing:border-box;max-width:1472px;margin:0 auto;padding:7px clamp(20px,4vw,48px);display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap}
.pp-topbar-grp{display:flex;gap:20px;flex-wrap:wrap}
.pp-topbar-link{display:inline-flex;align-items:center;gap:7px;color:inherit;text-decoration:none}
.pp-topbar-link:hover{color:#FFFFFF}
.pp-hd-row{box-sizing:border-box;max-width:1472px;margin:0 auto;padding:0 clamp(20px,4vw,48px);display:flex;align-items:center;justify-content:space-between;gap:clamp(14px,2vw,30px);min-height:74px}
.pp-logo{flex:none;display:inline-flex;align-items:center}
.pp-logo img{height:44px;width:auto;display:block}
.pp-nav-strefy{display:flex;align-items:center;gap:clamp(12px,1.5vw,20px);flex-wrap:wrap;justify-content:center}
.pp-strefa{display:flex;align-items:center;gap:10px}
/* pigułka: inline-flex + line-height:1 — jako element inline miała nierówny padding góra/dół
   (zgłoszenie właściciela 25.08; na home wyglądała inaczej niż na podstronach) */
.pp-strefa-tag{display:inline-flex;align-items:center;line-height:1;font-size:.6rem;font-weight:700;letter-spacing:.1em;color:rgba(23,52,96,.45);text-transform:uppercase;border:1px solid rgba(23,52,96,.14);border-radius:999px;padding:.42em .7em;flex:none;white-space:nowrap}
.pp-strefa-nav{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.pp-link{display:inline-flex;font-size:.93rem;font-weight:500;color:#173460;text-decoration:none;padding:6px 2px}
.pp-link:hover{color:#D40A32}
.pp-link.is-akt{font-weight:700;box-shadow:inset 0 -2px 0 #D40A32}
.pp-link-jasny{color:#F3F8FF}
.pp-hd-sep{width:1px;height:26px;background:rgba(23,52,96,.14);flex:none}
.pp-hd-akcje{display:flex;align-items:center;gap:12px;flex:none}
.pp-cta-header{display:inline-block;background:#D40A32;color:#FFFFFF;font-weight:600;border-radius:999px;text-decoration:none;transition:background .25s,transform .25s;padding:.65em 1.4em;font-size:.9rem}
.pp-cta-header:hover{background:#B90D2F;transform:translateY(-2px);color:#FFFFFF}
/* Arkusz bety stylizuje GOŁY selektor `details` (akordeon FAQ: białe tło, ramka, promień,
   padding 16/20 i margines 12 px) — a nasz burger też jest `<details>`, więc na podstronach
   siadał w białym kafelku i rozpychał wiersz nagłówka (zgłoszenie właściciela 25.08).
   Komponent ma własny wygląd, więc zerujemy tu wszystko, co dokłada tamta reguła. */
.pp-burger{position:relative;background:none;border:0;border-radius:0;margin:0;padding:0}
.pp-burger-btn{list-style:none;cursor:pointer;width:44px;height:44px;border-radius:12px;border:1.5px solid rgba(23,52,96,.2);display:grid;place-items:center}
.pp-burger-panel{position:absolute;right:0;top:calc(100% + 10px);width:min(92vw,340px);background:#FFFFFF;border:1px solid rgba(23,52,96,.1);border-radius:18px;box-shadow:0 24px 60px rgba(8,34,74,.18);padding:8px 22px 18px;z-index:99;max-height:calc(100vh - 104px);max-height:calc(100dvh - 104px);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.pp-burger-grp{margin:14px 0 6px;font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(23,52,96,.45)}
.pp-burger-link{display:block;padding:10px 0;font-weight:600;color:#173460;text-decoration:none;border-bottom:1px solid rgba(23,52,96,.07)}
.pp-burger-link:hover{color:#D40A32}
.pp-burger-cta{display:block;text-align:center;margin-top:16px;background:#D40A32;color:#FFFFFF;font-weight:600;font-size:.95rem;padding:14px 30px;border-radius:999px;text-decoration:none}
.pp-burger-cta:hover{background:#B90D2F;color:#FFFFFF}
/* Nagłówek jest sticky (107 px desktop / 90 px mobile), więc skok do kotwicy chował
   początek sekcji pod paskiem — dotyczyło KAŻDEGO CTA typu „przejdź do wyszukiwarki".
   scroll-padding-top na <html> obsługuje wszystkie skoki fragmentem naraz. */
html{scroll-padding-top:124px}
@media (max-width:900px){html{scroll-padding-top:104px}}
.pp-burger summary::-webkit-details-marker{display:none}
@media (min-width:1101px){.pp-burger{display:none}}
/* TABLET W POZIOMIE (≥1101 px) Z DOTYKIEM: pasek jest widoczny, ale panele otwiera
   najechanie — którego na dotyku nie ma, a dotknięcie pozycji po prostu przechodzi na
   stronę. Żeby nikt nie stracił dostępu do głębszych linków, na takich ekranach obok
   paska wraca burger (ma te same grupy jako rozwijane sekcje). Pasek zostaje — służy
   do szybkiego skoku do siedmiu głównych stron. */
@media (min-width:1101px) and (hover:none){.pp-burger{display:block}.pp-nav-strefy{}}
/* Na dotyku burger zajmuje w nagłówku dodatkowe 44 px i przy 1101–1149 px pasek łamał
   się na dwa wiersze (zmierzone: 77 px zamiast 33). W tym wąskim zakresie zostaje samo
   menu rozwijane — ma komplet linków, więc nic nie ginie. */
@media (min-width:1101px) and (max-width:1149px) and (hover:none){.pp-nav-strefy{display:none}.pp-burger-panel{max-height:calc(100vh - 120px);max-height:calc(100dvh - 120px)}}
/* — MEGA MENU (26.08) — panele pod pozycjami paska. Otwierane hoverem i focusem, bez skryptu.
   Widoczne tylko od 1101 px, bo niżej pasek i tak zwija się do burgera (tam te same grupy
   dostają rozwijane sekcje — na dotyku nie ma najechania). */
.pp-poz{position:relative;display:flex;align-items:center}
.pp-link-panel{gap:5px;align-items:center}
.pp-poz-strzalka{flex:none}
.pp-poz-strzalka{transition:transform .18s;opacity:.55;align-self:center}
@media (min-width:1101px){
.pp-poz:hover .pp-poz-strzalka,.pp-poz:focus-within .pp-poz-strzalka{transform:rotate(180deg);opacity:1}
.pp-panel{position:absolute;top:calc(100% + 14px);left:-16px;width:min(700px,calc(100vw - 64px));background:#FFFFFF;border:1px solid rgba(23,52,96,.10);border-radius:22px;box-shadow:0 26px 64px rgba(8,34,74,.18);padding:22px 24px;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .16s ease,transform .16s ease,visibility .16s;z-index:95}
.pp-panel-prawo{left:auto;right:-16px}
/* mostek: między linkiem a panelem jest odstęp — bez tego kursor „gubi" panel po drodze */
.pp-panel::before{content:'';position:absolute;top:-16px;left:0;right:0;height:16px}
.pp-poz:hover .pp-panel,.pp-poz:focus-within .pp-panel{opacity:1;visibility:visible;transform:none}
}
.pp-panel-opis{margin:0 0 16px;font-size:.86rem;line-height:1.5;color:rgba(23,52,96,.6)}
.pp-panel-siatka{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px 24px;align-items:start}
.pp-panel-tyt{margin:0 0 8px;font-size:.68rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:#C8102E}
.pp-panel-link{display:block;margin:0 -10px;padding:7px 10px;border-radius:12px;font-size:.94rem;font-weight:500;line-height:1.35;color:#173460;text-decoration:none;transition:background .16s,color .16s}
.pp-panel-link:hover{background:#F3F8FF;color:#C8102E}
.pp-panel-op{display:block;margin-top:2px;font-size:.78rem;font-weight:400;line-height:1.45;color:rgba(23,52,96,.58)}
.pp-panel-link:hover .pp-panel-op{color:rgba(23,52,96,.7)}
.pp-panel-promo{display:flex;flex-direction:column;gap:6px;padding:18px;border-radius:18px;background:linear-gradient(155deg,#0f2b57 0%,#1d3f73 100%);text-decoration:none}
.pp-panel-promo-tyt{font-family:'Prometo','Poppins',sans-serif;font-size:1rem;font-weight:500;line-height:1.3;color:#FFFFFF}
.pp-panel-promo-op{font-size:.82rem;line-height:1.5;color:rgba(243,248,255,.78)}
.pp-panel-promo-cta{margin-top:4px;font-size:.85rem;font-weight:600;color:#FFB3C0}
.pp-panel-promo:hover .pp-panel-promo-cta{color:#FFFFFF}
/* menu mobilne: rozwijane sekcje z tą samą zawartością co panele */
/* W arkuszu żyje ogólna reguła `details{background;border;border-radius;margin}` (od akordeonów
   FAQ) — sekcje menu łapały ją i wyglądały jak karty z ramką, która nachodziła na linie
   sąsiednich pozycji (zgłoszenie właściciela 26.08). Zerujemy ją dokładnie tak, jak dla
   samego burgera, i zostawiamy jedną cienką linię pod sekcją. */
.pp-burger-sek{border-bottom:1px solid rgba(23,52,96,.07)}
.pp-burger-panel details.pp-burger-sek{background:none;border:0;border-radius:0;margin:0;padding:0;border-bottom:1px solid rgba(23,52,96,.07)}
/* nagłówek sekcji jest jednocześnie `.pp-burger-link`, więc bez tego rysowały się
   DWIE linie jedna pod drugą (zgłoszenie właściciela: „bordery na siebie nachodzą") */
.pp-burger-sek>summary.pp-burger-link{border-bottom:0}
.pp-burger-sek[open]>summary.pp-burger-link{color:#173460}
.pp-burger-panel>.pp-burger-link:last-of-type{border-bottom:0}
.pp-burger-sek summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between}
.pp-burger-sek summary::-webkit-details-marker{display:none}
.pp-burger-sek summary::after{content:'+';color:#C8102E;font-weight:600;font-size:1.05rem;line-height:1}
.pp-burger-sek[open] summary::after{content:'−'}
.pp-burger-pody{margin:0 0 10px 6px;padding-left:12px;border-left:2px solid rgba(23,52,96,.10)}
.pp-burger-pod{display:block;padding:7px 0;font-size:.9rem;color:rgba(23,52,96,.78);text-decoration:none}
.pp-burger-pod:hover{color:#C8102E}
.pp-burger-pod-glowna{font-weight:600;color:#173460}
/* stopka: dane kontaktowe pod marką (26.08) */
.pp-stopka-kontakt{margin-top:22px;padding-top:18px;border-top:1px solid rgba(243,248,255,.14)}
.pp-stopka-kontakt .c-2df8224{margin-bottom:10px}


/* Etykiety stref („DLA GABINETU"/„DLA PACJENTA") mieszczą się tylko przy pełnej
   szerokości kontenera (1376 px). Próg liczony jest wobec OKNA, a ogranicza
   KONTENER — dlatego przy 1600 px etykiety wchodziły, ale nawigacja nie miała już
   miejsca i łamała się na dwa wiersze z separatorem w środku. Odstępy zwężone,
   żeby komplet mieścił się w jednym wierszu; `nowrap` pilnuje, żeby nie stanął
   pionowo, gdyby coś jeszcze doszło. */
@media (max-width:1560px){.pp-strefa-tag{display:none}}
@media (min-width:1101px){.pp-nav-strefy{flex-wrap:nowrap}}
/* wąski desktop (1101–1300 px): linki o krok mniejsze, żeby 7 pozycji + CTA nie łamało
   się na 2 wiersze (inline font-size na linkach → potrzebne !important w arkuszu) */
@media (min-width:1101px) and (max-width:1300px){.pp-nav-strefy a{font-size:.86rem!important}}
@media (max-width:1100px){
  .pp-nav-strefy{display:none!important}
  .pp-cta-header{display:none!important}
}
@media (max-width:900px){
  .pp-pasek-dol:not([hidden]){display:flex!important}
  body{padding-bottom:calc(74px + env(safe-area-inset-bottom,0px))}
  .pp-topbar{display:none}
}

@keyframes ppDrgnij{0%,100%{transform:none}25%{transform:translateX(-6px)}75%{transform:translateX(6px)}}
.pp-drabina-szczebel{min-width:170px}
/* Interakcja drabiny na /szkolenia (klasy nadaje propozycja.js): stan wybranego
   przycisku i podświetlenie pasujących szczebli. Obie reguły mieszkały wcześniej TYLKO
   w wygenerowanym arkuszu i przepadły przy jego przegenerowaniu — teraz są w źródle. */
.pp-drabina-wybor[aria-pressed="true"]{background:#173460!important;color:#FFFFFF!important;border-color:#173460!important}
.pp-drabina-szczebel.pp-tutaj>div:first-child{border:1.5px solid #D40A32;box-shadow:0 12px 34px rgba(212,10,50,.14)}
@media (max-width:760px){.pp-drabina{flex-direction:column}.pp-drabina-szczebel>div[aria-hidden]{display:none}}
/* ── S5 home-v2 (#sciezki żyje tylko tam): kafle ścieżek w stylu hero BINARNEJ
   (uwaga właściciela 24.08: „stylistycznie ładniejsze i lepsze — nanieś podobny styl"),
   ale sekcja zostaje JASNA — dopisek właściciela z tej samej rundy: „nie może mieć
   ciemnego tła, bo wcześniejsze mają i źle to wygląda". Z binarnej zostaje charakter
   kart: biała karta specjalisty z czerwonym pasem (cień skalibrowany pod białe tło,
   nie hero), granatowa karta pacjenta z różowym kickerem (granat #08224A z glowna.css).
   Selektory STRUKTURALNE (id + pozycja), nie hashe klas ekstraktora — przeżyją
   re-ekstrakcję prototypu; id w selektorze wygrywa też z regułami glowna.css
   niezależnie od kolejności arkuszy. Inline styli nie ruszamy (lekcja React 24.08). */
#sciezki h2+div>div:first-child{background:#FFFFFF;border:1px solid rgba(23,52,96,.08);border-top:5px solid #D40A32;box-shadow:0 18px 44px rgba(8,34,74,.12)}
#sciezki h2+div>div>p:first-child{font-weight:700;letter-spacing:.12em}
#sciezki h2+div>div:last-child>p:first-child{color:#ff8fa3}
#sciezki h2+div>div:last-child>p:not(:first-child){color:#dbe6f6}
#sciezki h3{font-size:clamp(1.35rem,2.4vw,1.8rem);line-height:1.22}
/* ── Home-v2/v3, runda 4 (24.08): sekcje PRZENIESIONE — „Kim jesteśmy" (S12) staje nad S5
   (biel przy bieli), „Urządzenia" (S8) nad Strefą wiedzy (szarość #F5F6F8 tuż po szarości
   opinii). Rytm teł prostujemy tłem sekcji przeniesionych, nie sąsiadów. Zasięg = korzeń
   eksportu prototypu (.c-af76d46 żyje TYLKO na home; zbuduj-v3 asseruje tę klasę), bo
   #zespol istnieje też na /o-nas. */
.c-af76d46 #zespol{background:#F3F8FF}
/* (runda 5: override tła #urzadzenia zdjęty — po przeniesieniu opinii nad filary
   urządzenia stoją między błękitem szkoleń a bielą Strefy wiedzy; szarość pasuje) */
/* ── Mapa gabinetów na home (runda 5): pinezki z rejestru w SVG prototypu + dymek.
   Kolory i puls (ppPulse z arkusza eksportu) jak kropki prototypu. */
.pp-mapa .pp-pin{cursor:pointer;outline:none}
/* kropki jak w prototypie (uwaga właściciela 24.08: „bez obramowania bardziej mi się podobały”):
   pełna czerwień #F00632, zero obwódki; rozmiar oryginału r 4.2 */
.pp-mapa .pp-kropka{fill:#F00632;stroke:none;transform-box:fill-box;transform-origin:center;transition:transform .2s}
.pp-mapa .pp-pin:hover .pp-kropka,.pp-mapa .pp-pin:focus .pp-kropka,.pp-mapa .pp-pin.pp-aktywny .pp-kropka{transform:scale(1.35)}
.pp-mapa .pp-pin:focus-visible .pp-hit{stroke:#FFFFFF;stroke-width:1.5;stroke-dasharray:3 3}
.pp-mapa .pp-ile{fill:#FFFFFF;font:700 13px 'Poppins',sans-serif;pointer-events:none}
/* ── WEJŚCIE KROPEK (życzenie właściciela 25.08). Pinezki wjeżdżają falą z północy na
   południe dopiero, gdy mapa wchodzi w kadr: bramką jest klasa `.on`, którą silnik nadaje
   kontenerowi mapy (`[data-reveal]`). Kolejność niesie klasa fali `pp-w0..11` nadana
   w `mapa_pp.py` (zero stylów inline), arkusz trzyma 12 opóźnień po 55 ms.
   PULS też startuje dopiero po wejściu — inaczej pierścienie pulsowałyby nad niewidocznymi
   kropkami u kogoś, kto doscrolluje do mapy później. Bez `data-anim` (albo przy
   `prefers-reduced-motion`) wszystko jest po prostu widoczne i statyczne. */
.pp-mapa .pp-puls{fill:none;stroke:#F00632;stroke-width:1.8;transform-box:fill-box;transform-origin:center;opacity:.5}
.pp-mapa .pp-puls-multi{stroke-width:2.4}
/* PULS pinezek: na home ta klatkówka przychodzi z inline'owego arkusza eksportu
   prototypu, ale ŻADEN z arkuszy podstron jej nie ma — mapa na /gabinety wchodziła
   falą, a potem stała martwa (zgłoszenie właściciela 25.08). Definicja 1:1 z home. */
@keyframes ppPulse{0%{transform:scale(.5);opacity:.9}75%{transform:scale(2.4);opacity:0}100%{transform:scale(2.4);opacity:0}}
@keyframes ppPinWjazd{0%{opacity:0;transform:scale(.15)}62%{opacity:1;transform:scale(1.22)}100%{opacity:1;transform:scale(1)}}
html[data-anim] .pp-mapa .pp-pin{opacity:0;transform-box:fill-box;transform-origin:center}
html[data-anim] .pp-mapa .pp-puls{opacity:0}
html[data-anim] .pp-mapa-anim.on .pp-pin{animation:ppPinWjazd .44s cubic-bezier(.2,.75,.3,1.15) both}
html[data-anim] .pp-mapa-anim.on .pp-puls{animation:ppPulse 2.8s ease-out infinite}
html[data-anim] .pp-mapa-anim.on .pp-puls-multi{animation-duration:2.4s}
html[data-anim] .pp-mapa-anim.on .pp-w0{animation-delay:0ms}
html[data-anim] .pp-mapa-anim.on .pp-w0 .pp-puls{animation-delay:440ms}
html[data-anim] .pp-mapa-anim.on .pp-w1{animation-delay:55ms}
html[data-anim] .pp-mapa-anim.on .pp-w1 .pp-puls{animation-delay:495ms}
html[data-anim] .pp-mapa-anim.on .pp-w2{animation-delay:110ms}
html[data-anim] .pp-mapa-anim.on .pp-w2 .pp-puls{animation-delay:550ms}
html[data-anim] .pp-mapa-anim.on .pp-w3{animation-delay:165ms}
html[data-anim] .pp-mapa-anim.on .pp-w3 .pp-puls{animation-delay:605ms}
html[data-anim] .pp-mapa-anim.on .pp-w4{animation-delay:220ms}
html[data-anim] .pp-mapa-anim.on .pp-w4 .pp-puls{animation-delay:660ms}
html[data-anim] .pp-mapa-anim.on .pp-w5{animation-delay:275ms}
html[data-anim] .pp-mapa-anim.on .pp-w5 .pp-puls{animation-delay:715ms}
html[data-anim] .pp-mapa-anim.on .pp-w6{animation-delay:330ms}
html[data-anim] .pp-mapa-anim.on .pp-w6 .pp-puls{animation-delay:770ms}
html[data-anim] .pp-mapa-anim.on .pp-w7{animation-delay:385ms}
html[data-anim] .pp-mapa-anim.on .pp-w7 .pp-puls{animation-delay:825ms}
html[data-anim] .pp-mapa-anim.on .pp-w8{animation-delay:440ms}
html[data-anim] .pp-mapa-anim.on .pp-w8 .pp-puls{animation-delay:880ms}
html[data-anim] .pp-mapa-anim.on .pp-w9{animation-delay:495ms}
html[data-anim] .pp-mapa-anim.on .pp-w9 .pp-puls{animation-delay:935ms}
html[data-anim] .pp-mapa-anim.on .pp-w10{animation-delay:550ms}
html[data-anim] .pp-mapa-anim.on .pp-w10 .pp-puls{animation-delay:990ms}
html[data-anim] .pp-mapa-anim.on .pp-w11{animation-delay:605ms}
html[data-anim] .pp-mapa-anim.on .pp-w11 .pp-puls{animation-delay:1045ms}
/* Telefon: mapa ma ~350 px szerokości przy viewBoxie 632, więc jednostki SVG kurczą się
   prawie o połowę — kropki i liczby dostają własny, większy rozmiar (uwaga właściciela). */
@media (max-width:760px){
  .pp-mapa .pp-kropka{r:10}
  .pp-mapa .pp-pin[data-multi] .pp-kropka{r:15.5}
  .pp-mapa .pp-puls{r:10}
  .pp-mapa .pp-puls-multi{r:15.5}
  .pp-mapa .pp-ile{font-size:19px}
  .pp-mapa .pp-hit{r:26}
}
/* KARUZELA OPINII NA TELEFONIE (uwaga właściciela 25.08: „kafel jest po prawej ucięty
   nieładnie"): karta prototypu ma stałe `min(100% − 8px, 340px)`, więc przy 390 px kadr
   (350 px treści) był o 10 px szerszy od karty i tyle następnej zostawało przy krawędzi.
   Na telefonie karta bierze pełną szerokość kadru — sąsiadka kończy się dokładnie na krawędzi.
   ⚠ Konieczny `box-sizing:border-box`: karta prototypu liczy się `content-box`, więc do
   szerokości dochodziło 2×28 px paddingu i 2 px ramki (zmierzone: 408 px karty w kadrze 390).
   Bez zasięgu `.c-af76d46`: ta sama karuzela stoi też na podstronach (np. /wspolpraca). */
@media (max-width:600px){.pp-karuzela .c-6da0db9{box-sizing:border-box;flex-basis:100%}}
/* ── PAS LOGOTYPÓW W SEKCJI MAPY (decyzja właściciela 25.08): ciemne tło, więc logotypy
   idą na BIAŁO. `brightness(0) invert(1)` zamienia dowolny kolor w czystą biel, zachowując
   kanał alfa (czyli antyaliasing krawędzi) — dlatego 8 logotypów z pełnym tłem dostało
   wcześniej wycięte tło w `logotypy_pp.py`; inaczej wyszłyby białe prostokąty. */
.c-af76d46 #gabinety .c-a218701{margin:clamp(40px,5vw,62px) 0 clamp(48px,6vw,76px)}
.c-af76d46 #gabinety .c-f53f514{filter:brightness(0) invert(1);opacity:.72;transition:opacity .2s}
.c-af76d46 #gabinety .c-f53f514:hover{opacity:1}
/* ⚠ Reguły dymka MUSZĄ kotwiczyć na ID: arkusz bety ma `#pp-dymek{display:none}`,
   a selektor ID bije każdą klasę — wersja klasowa chowała dymek na wszystkich
   podstronach (zgłoszenie właściciela: „po najechaniu na kropkę nie ma dymku"). */
/* podpis pod mapą + przycisk wyszukiwarki przeniesiony pod mapę na telefonie */
.pp-mapa .pp-mapa-info{margin:12px 0 0;font-size:.8rem;line-height:1.5;color:rgba(243,248,255,.62);text-align:center}
.pp-mapa .pp-mapa-cta{display:none}
@media (max-width:900px){
  .c-af76d46 #gabinety .c-942a27f .c-f3f5387{display:none}
  .pp-mapa .pp-mapa-cta{display:inline-flex;margin-top:18px}
  .pp-mapa .pp-mapa-cta-wrap{display:flex;justify-content:center}
}
.pp-mapa #pp-dymek{position:absolute;z-index:5;width:max-content;min-width:190px;max-width:min(300px,88%);background:#FFFFFF;color:#173460;border-radius:14px;box-shadow:0 18px 44px rgba(8,34,74,.38);padding:12px 14px;font-size:.82rem;line-height:1.45;text-align:left}
.pp-mapa #pp-dymek{display:none}
.pp-mapa #pp-dymek.pp-widoczny{display:block}
.pp-mapa #pp-dymek strong{display:block;font-size:.95rem;margin:0 0 4px;color:#08224A}
.pp-mapa #pp-dymek .pp-dg{padding:7px 0;border-top:1px solid rgba(23,52,96,.1)}
.pp-mapa #pp-dymek .pp-dg span{display:block;font-weight:600}
.pp-mapa #pp-dymek .pp-dg em{display:block;font-style:normal;color:rgba(23,52,96,.7);font-size:.78rem}
.pp-mapa #pp-dymek .pp-dg a,.pp-mapa #pp-dymek .pp-wiecej{color:#D40A32;font-weight:600;text-decoration:none;font-size:.8rem}
.pp-mapa #pp-dymek .pp-wiecej{display:block;margin-top:8px;padding-top:8px;border-top:1px solid rgba(23,52,96,.1)}
.pp-mapa .pp-etykieta{fill:rgba(243,248,255,.72);font:500 13px 'Poppins',sans-serif;pointer-events:none}
.pp-mapa .pp-pin-zagr:hover .pp-etykieta,.pp-mapa .pp-pin-zagr.pp-aktywny .pp-etykieta{fill:#FFFFFF}
@media (prefers-reduced-motion:reduce){.pp-mapa .pp-puls{animation:none;opacity:.5}}
/* ── Karuzela szkoleń na home (runda 9): siatka 4 kart → przewijany pas 13 produktów
   ze sklepu. Karty zachowują klasy prototypu; dokładamy tylko mechanikę pasa, zdanie
   „po co / dla kogo" i przekreśloną starą cenę przy promocjach. */
/* Karta ZOSTAJE dokładnie taka jak w siatce prototypu (kwadratowe zdjęcie, ten sam tytuł,
   ta sama stopka z ceną) — pas dokłada tylko przewijanie. Uwagi właściciela 25.08:
   „zdjęcia przycięte od góry" (winne było wymuszone 4:3 na kwadratowej okładce),
   „cień ucięty od dołu" (overflow pasa — stąd zapas paddingu z kompensacją marginesem),
   „tytuł gorzej wygląda" (własny mniejszy font — zdjęty),
   „nie robić efektu uciętego piątego kafla" (szerokość liczona z liczby kolumn, nie na oko). */
/* Zasięg BEZ `.c-af76d46`: karuzela jest też na podstronach, gdzie nie ma korzenia eksportu.
   PEŁNA SZEROKOŚĆ (decyzja właściciela 25.08: „damy karuzelę szkoleń full width, tak jak
   opinie — wtedy nie ma problemu z przycinaniem i więcej pokażemy na dużych ekranach").
   Ten sam mechanizm, którego prototyp używa dla `.pp-karuzela` (opinie), tylko liczony
   z szerokości RODZICA, a nie ze sztywnych 1280 px — dzięki temu działa i na home
   (kontener 1280), i na podstronach (1376): `margin-inline: 50% − 50vw` rozciąga pas do
   krawędzi okna, a `padding-inline` cofa PIERWSZĄ kartę dokładnie na oś tekstu sekcji
   i zostawia 20 px na cień. ⚠ BEZ PROCENTÓW: w `margin`/`padding` procent liczy się od
   RODZICA, ale w `scroll-padding` — od samego pasa, więc wersja z `50%` snapowała kartę
   o 320 px za daleko (zmierzone). Dlatego wcięcie liczymy jawnie: margines strony
   `max(0, (100vw − 1376px)/2)` + padding kontenera `clamp(20px,4vw,48px)`; 1376 px to
   szerokość kontenera sekcji na home i na podstronach. Karta ma stałą szerokość (clamp 258–320 px), więc
   na 1920 px widać ich pięć-sześć, a na telefonie jedną z „zajawką" następnej.
   Dół 46 px — miejsce na cień pod kartą. */
.pp-kar{--pp-luka:20px;display:flex;gap:var(--pp-luka);overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;--pp-wciecie:calc(max(0px,(100vw - 1376px)/2) + clamp(20px,4vw,48px));margin:clamp(28px,4vw,44px) calc(-1*var(--pp-wciecie)) 0;padding:14px calc(var(--pp-wciecie) + var(--pp-luka)) 46px;scroll-padding-inline:calc(var(--pp-wciecie) + var(--pp-luka))}
/* pas wychodzi poza kontener — sekcja przycina poziomo, żeby strona nie dostała paska przewijania */
section:has(.pp-kar){overflow-x:clip}
.pp-kar::-webkit-scrollbar{display:none}
.pp-kar-el{flex:0 0 clamp(258px,23vw,320px);scroll-snap-align:start}
.pp-kar:focus-visible{outline:3px solid #D40A32;outline-offset:-6px;border-radius:24px}
.pp-kar-nawigacja{display:flex;gap:10px;justify-content:flex-end;margin-top:-14px}
.pp-zdanie{margin:0;font-size:.88rem;line-height:1.6;color:rgba(23,52,96,.72);flex:1}
.pp-cena-stara{margin-left:8px;font-size:.84rem;font-weight:500;color:rgba(23,52,96,.45);text-decoration:line-through;white-space:nowrap}
#szkolenia .c-1b06299{gap:8px}
/* Ikony social w stopce — BEZ zasięgu `.c-af76d46`, bo stopka podstron stoi poza korzeniem
   aplikacji (na home jest w środku). Kolory pod ciemne tło stopki. */
/* Stan początkowy animacji wejścia NA HOME: podstrony mają to w podstrony.css pod
   `main [data-reveal]`, a home trzyma sekcje w korzeniu eksportu (bez <main>). Te dwie reguły
   sprawiają, że jeden silnik (silnik.js) obsługuje oba układy identycznie. */
html[data-anim] .c-af76d46 [data-reveal]:not(.on){opacity:0;transform:translateY(22px)}
.c-af76d46 [data-reveal]{transition:opacity .7s cubic-bezier(.2,.6,.2,1),transform .7s cubic-bezier(.2,.6,.2,1)}
.pp-social{display:flex;gap:10px;margin-top:18px}
.pp-social a{width:38px;height:38px;border-radius:999px;border:1px solid rgba(243,248,255,.24);display:grid;place-items:center;color:#F3F8FF;text-decoration:none;transition:background .2s,border-color .2s,color .2s}
.pp-social a:hover,.pp-social a:focus-visible{background:#D40A32;border-color:#D40A32;color:#FFFFFF}
/* nagłówek Strefy wiedzy: tytuł po lewej, „Wszystkie artykuły" po prawej (jak w sekcji szkoleń) */
.pp-naglowek-rzad{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
/* tytuł kafla: 2 linie + wielokropek (uwaga właściciela: jeden długi tytuł podnosił wszystkie karty) */
.pp-kar-el .c-4c09e79{flex:none}
/* UWAGA: samo `-webkit-*`. Dopisanie standardowego `line-clamp` sprawia, że Chrome liczy
   display jako `flow-root` i ścieżka webkitowa przestaje działać — tekst był przycinany
   BEZ wielokropka (sprawdzone na żywo 25.08). */
.pp-tyt{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}

/* Pas partnerów: logotypy mają różne proporcje — wspólna wysokość i lekki grayscale
   (klasa c-f53f514 z prototypu daje 28 px; przy 49 logotypach podnosimy do 34 px).
   BEZ zasięgu `.c-af76d46` (25.08): pas stoi już nie tylko na home, ale i na podstronach
   (/szkolenia — sekcja „Głosy absolwentów"), a tam korzenia eksportu nie ma. */
.c-f53f514{height:34px;max-width:132px;object-fit:contain;filter:grayscale(1);opacity:.62}
/* KOREKTA JASNOŚCI POJEDYNCZYCH LOGOTYPÓW na jasnym tle (uwaga właściciela: „tego nie widać
   na jasnym tle: feniks-clinic.webp"). Klasę dobiera `pas_partnerow()` z pomiaru zapisanego
   w manifeście — cel: każdy znak ląduje w okolicach 120/255, czyli tam, gdzie mediana
   zestawu. Globalna sylwetka (`brightness(0)`) odpadła: logotypy z jasnym elementem
   w ciemnym kształcie (PodoMed, Fizjo-Vita) zlewały się w plamę — sprawdzone na arkuszu
   kontrolnym. W sekcji mapy nadal wygrywa reguła zabielająca (wyższa specyficzność). */
.c-f53f514.pp-logo-c0{filter:grayscale(1) brightness(.85)}
.c-f53f514.pp-logo-c1{filter:grayscale(1) brightness(.72)}
.c-f53f514.pp-logo-c2{filter:grayscale(1) brightness(.62)}
.c-f53f514.pp-logo-c3{filter:grayscale(1) brightness(.55)}
.c-f53f514.pp-logo-c4{filter:grayscale(1) brightness(.48)}
/* Czerwone kropki „na żywo" (pigułki typu „1530+ absolwentów", „Zostało 10 miejsc") są
   dziećmi flexa i bez tego kurczyły się w owal, gdy tekst obok łamał się na dwie linie
   (zgłoszenie właściciela 25.08). Trzy klasy z arkuszy prototypu/bety — jedna reguła. */
.c-8ce7d0a,.c-d7678c3,.c-148ae1f{flex:none}
/* PAS PARTNERÓW (uwagi właściciela 25.08: „kręci się jak szalona" + „widać moment przeskoczenia").
   1) prędkość: przy 49 logotypach pas ma ~8 000 px na kopię — 30 s dawało ~270 px/s; 190 s to ok. 45 px/s.
   2) skok: prototypowe `ppMarquee` przesuwa o -50% szerokości, ale między dwiema kopiami jest jeszcze
      flexowa przerwa `gap`, więc pętla rozjeżdżała się o pół przerwy — własne keyframes przesuwają
      o -50% MINUS połowa przerwy, czyli dokładnie o jedną kopię. */
@keyframes ppMarqueePP{from{transform:translateX(0)}to{transform:translateX(calc(-50% - var(--pp-luka-logo)/2))}}
.c-309c543{--pp-luka-logo:clamp(48px,6vw,88px);gap:var(--pp-luka-logo);animation:ppMarqueePP 190s linear infinite}
.c-4ea7fb4{gap:var(--pp-luka-logo)}
@media (prefers-reduced-motion:reduce){.c-309c543{animation:none}}
/* podpis nad pasem (podstrony — na home pas stoi w sekcji mapy i podpisu nie potrzebuje) */
.pp-pas-podpis{margin:52px 0 -14px;text-align:center;font-size:.74rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:rgba(23,52,96,.45)}
/* PAS NA PEŁNĄ SZEROKOŚĆ (uwaga właściciela 25.08, tak jak karuzela opinii nad nim).
   Wcięcie liczone JAWNIE, bez procentów: margines strony `max(0,(100vw − 1376px)/2)`
   + padding kontenera `clamp(20px,4vw,48px)`; 1376 px to szerokość kontenera sekcji
   i na home, i na podstronach. Efekt: pas ma dokładnie szerokość okna, więc mgiełka
   z maski gaśnie na jego krawędziach, a nie w połowie ekranu.
   Wariant klasowy, nie globalny: pas na home stoi w sekcji mapy i ma tam zostać w kontenerze. */
.pp-pas-full{--pp-wciecie:calc(max(0px,(100vw - 1376px)/2) + clamp(20px,4vw,48px));margin-inline:calc(-1*var(--pp-wciecie))}
/* 100vw liczy się ze szerokością paska przewijania — sekcja przycina nadmiar, żeby strona
   nie dostała przewijania poziomego (ta sama ostrożność co przy `.pp-kar`) */
section:has(.pp-pas-full){overflow-x:clip}
/* cena w karcie karuzeli: stara cena obok nowej musi zmieścić się w jednym wierszu z „Szczegóły" */
/* cena: tylko o włos mniejsza niż w siatce (1,22 rem), żeby „497,00 zł 1 497,00 zł" + „Szczegóły"
   mieściły się w jednym wierszu przy czterech kolumnach */
.pp-kar-el .c-fdcf8e2{font-size:1.12rem}

/* ══ PRZEGLĄD PODSTRON (25.08) ══════════════════════════════════════════════ */

/* TŁA SEKCJI — po przestawieniu kolejności sekcje z różnych źródeł (beta / propozycja)
   potrafią sąsiadować tym samym kolorem. Zamiast podmieniać klasy prototypu ustawiamy
   tło atrybutem; specyficzność (0,2,1) wygrywa z jednoklasową regułą arkuszy bety. */
.pp-szybka{margin:22px auto 0;max-width:620px;text-align:center;font-size:.95rem;color:#4A5A72;line-height:1.6}
.pp-szybka a{color:#C8102E;font-weight:600;text-decoration:none;border-bottom:1px solid rgba(200,16,46,.35)}
.pp-szybka a:hover{border-bottom-color:#C8102E}
/* Wymiary w atrybutach <img> (dodawane przy budowie, żeby układ nie skakał) są dla
   przeglądarki także UŻYTĄ wysokością, gdy CSS ustawia samą szerokość — na karuzeli
   szkoleń dało to karty 312×720 zamiast 312×312 (zgłoszenie właściciela 26.08).
   Reguła MUSI mieć zerową specyficzność (`:where`), inaczej sama staje się problemem:
   w pierwszym podejściu `img[width][height]` (0,2,1) pobiło `.pp-logo img{height:44px}`
   i logo w nagłówku urosło do 223×115 (zgłoszenie właściciela 26.08). W `:where` przegrywa
   z KAŻDĄ regułą autora, a wygrywa tylko z wysokością z atrybutu — dokładnie tyle, ile trzeba. */
:where(img[width][height]){height:auto}
/* BLOG — lista wpisów (26.08, uwaga właściciela „coś się rozjeżdża"): karty miały różne
   wysokości (tytuły i zajawki różnej długości), jedna była bez miniatury, a pasek kategorii
   był ozdobnym <span>. Teraz: równe karty (przycięcie do 2 i 3 linii), data na dole karty
   i DZIAŁAJĄCY filtr kategorii. */
.pp-blog-kolaz{display:grid;grid-template-columns:1.35fr 1fr;grid-template-rows:1fr 1fr;gap:12px;aspect-ratio:16/10}
.pp-blog-kolaz img{width:100%;height:100%;object-fit:cover;border-radius:18px;box-shadow:0 18px 46px rgba(4,16,38,.34)}
.pp-blog-kolaz .pp-bk-duzy{grid-row:span 2;border-radius:22px}
.pp-kat-pas{padding-top:clamp(30px,3.4vw,44px);padding-bottom:0}
.pp-kat-filtry{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.pp-kat-chip{appearance:none;cursor:pointer;font:inherit;font-size:.9rem;font-weight:500;color:#173460;background:#FFFFFF;border:1px solid rgba(23,52,96,.14);border-radius:999px;padding:.55em 1.15em;display:inline-flex;align-items:center;gap:.5em;transition:background .2s,color .2s,border-color .2s}
.pp-kat-chip span{font-size:.78rem;color:rgba(23,52,96,.5)}
.pp-kat-chip:hover{border-color:#C8102E;color:#C8102E}
.pp-kat-chip:hover span{color:#C8102E}
.pp-kat-chip[aria-pressed="true"]{background:#08224A;border-color:#08224A;color:#FFFFFF}
.pp-kat-chip[aria-pressed="true"] span{color:rgba(255,255,255,.65)}
.pp-kat-pusto{margin:26px auto 0;text-align:center;color:rgba(23,52,96,.7)}
.pp-wpis .c-5d6b03b{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;min-height:2.56em}
.pp-wpis .c-c629ab1{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;min-height:4.95em}
.pp-wpis-data{margin:auto 0 0;font-size:.8rem;color:rgba(23,52,96,.5)}
.pp-wpis-plakat{margin:-20px -20px 4px;border-radius:22px 22px 0 0;aspect-ratio:16/10;display:grid;place-items:center;background:linear-gradient(135deg,#08224A 0%,#173460 58%,#1E4380 100%)}
.pp-wpis-plakat img{width:min(50%,146px);height:auto;opacity:.92}
.pp-wpis[hidden]{display:none}   /* karta jest flexem — samo [hidden] by nie zadziałało */
@media(min-width:1040px){.pp-wpis-wyroz{grid-column:span 2}.pp-wpis-wyroz .c-8a2722e{aspect-ratio:16/7}}
/* /kontakt — rozdzielnik spraw (26.08): karty „z czym przychodzisz" z odsyłaczem
   przyklejonym do dołu, żeby cztery karty kończyły się w jednej linii. */
#sprawy .c-4e97e24{display:flex;flex-direction:column}
.pp-kk-cta{margin:14px 0 0}
.pp-kk-cta a{display:inline-flex;align-items:center;gap:7px;color:#C8102E;font-weight:600;font-size:.92rem;text-decoration:none;border-bottom:1px solid rgba(200,16,46,.32);padding-bottom:2px}
.pp-kk-cta a:hover{border-bottom-color:#C8102E}
#sprawy .pp-kk-cta{margin-top:auto;padding-top:14px}
.pp-kk-mail{color:#C8102E;font-weight:600;text-decoration:none;border-bottom:1px solid rgba(200,16,46,.32)}
.pp-kk-mail:hover{border-bottom-color:#C8102E}
.pp-kk-kroki{margin:0 0 22px}
/* HOME: prototypowy arkusz (inline w <head> eksportu) ma globalne `a:hover{color:#D40A32}`,
   a reguły przycisków ustawiają SAMO tło — więc na hoverze tekst robił się czerwony na
   czerwonym tle i przycisk znikał (zgłoszenie właściciela 26.08). Dopisujemy jawny kolor
   tekstu w stanie hover wszystkim linkom, które mają jasny tekst: dwóm przyciskom CTA,
   linkowi „Przejdź do treści" i jasnemu linkowi na ciemnej sekcji. Specyficzność klasy
   (0,2,0) wygrywa z `a:hover` (0,1,1) niezależnie od kolejności arkuszy. */
.c-9433fc0:hover,.c-256ca22:hover,.c-e9f3958:hover{color:#FFFFFF}
.c-22a41aa:hover{color:#FFFFFF;text-decoration-color:#FFFFFF}
/* Slajder w sekcji „Pięć warstw" (/wkladki): ten sam mechanizm przenikania co w hero,
   ale kadr pod zdjęcia produktowe — jasna płyta i `contain`, żeby nie ucinać wkładki. */
.pp-slajder{position:relative;aspect-ratio:16/9;border-radius:22px;overflow:hidden;background:linear-gradient(160deg,#F3F8FF 0%,#E7EFFB 100%);border:1px solid rgba(23,52,96,.08);box-shadow:0 14px 36px rgba(8,34,74,.10);isolation:isolate}
.pp-slajder .pp-hero-slajd{object-fit:contain;padding:clamp(14px,3vw,30px);box-sizing:border-box}
/* /kontakt — „z kim będziesz rozmawiać": zdjęcie i stanowisko osoby, która odbiera
   zgłoszenia (26.08). Karta stoi nad krokami „co się dzieje po wysłaniu". */
.pp-kk-osoba{display:flex;gap:16px;align-items:flex-start;margin:0 0 26px;padding:18px;border:1px solid rgba(23,52,96,.10);border-radius:20px;background:#F3F8FF}
.pp-kk-osoba img{width:84px;height:84px;flex:none;border-radius:50%;object-fit:cover;box-shadow:0 6px 18px rgba(8,34,74,.16)}
.pp-kk-osoba-kick{margin:0 0 4px;font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#C8102E}
.pp-kk-osoba-imie{margin:0;font-family:'Prometo','Poppins',sans-serif;font-size:1.08rem;font-weight:500;color:#173460}
.pp-kk-osoba-rola{margin:2px 0 0;font-size:.88rem;color:rgba(23,52,96,.66)}
.pp-kk-osoba-cytat{margin:10px 0 0;font-size:.92rem;line-height:1.6;color:#173460}
.pp-kk-osoba-nota{margin:8px 0 0;font-size:.84rem;line-height:1.55;color:rgba(23,52,96,.62)}
@media(max-width:420px){.pp-kk-osoba{flex-direction:column}.pp-kk-osoba img{width:72px;height:72px}}
/* BLOG — szablon wpisu (26.08): okruszki, spis treści, pasek postępu czytania,
   domknięcie dwiema drogami i przejście do sąsiednich wpisów. */
.pp-okruszki{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 14px;font-size:.82rem;color:rgba(243,248,255,.62)}
.pp-okruszki a{color:rgba(243,248,255,.78);text-decoration:none;border-bottom:1px solid rgba(243,248,255,.26)}
.pp-okruszki a:hover{color:#FFFFFF;border-bottom-color:#FFFFFF}
.pp-postep{position:fixed;top:0;left:0;right:0;height:3px;z-index:120;pointer-events:none}
.pp-postep span{display:block;height:100%;background:#D40A32;transform:scaleX(0);transform-origin:0 50%;transition:transform .08s linear}
.pp-spis{margin:0 0 28px;padding:16px 20px;border:1px solid rgba(23,52,96,.12);border-left:4px solid #D40A32;border-radius:0 16px 16px 0;background:#F3F8FF}
.pp-spis summary{cursor:pointer;font-family:'Prometo','Poppins',sans-serif;font-size:1rem;font-weight:500;color:#173460;list-style:none;display:flex;align-items:center;gap:8px}
.pp-spis summary::-webkit-details-marker{display:none}
.pp-spis summary::after{content:'▾';margin-left:auto;color:#D40A32;transition:transform .2s}
.pp-spis[open] summary::after{transform:rotate(180deg)}
.pp-spis summary span{font-size:.74rem;font-weight:600;color:#FFFFFF;background:#D40A32;border-radius:999px;padding:.1em .6em}
.pp-spis ol{margin:14px 0 0;padding-left:1.2em;font-size:.95rem;line-height:1.6}
.pp-spis li{margin:0 0 .4em}
.pp-spis a{color:#173460;text-decoration:none;border-bottom:1px solid rgba(23,52,96,.18)}
.pp-spis a:hover{color:#D40A32;border-bottom-color:#D40A32}
.pp-artykul h2,.pp-artykul h3{scroll-margin-top:96px}
.pp-dwie-drogi{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:18px;margin-top:34px}
.pp-droga{display:flex;flex-direction:column;gap:8px;padding:24px;border:1px solid rgba(23,52,96,.10);border-radius:22px;background:#FFFFFF;box-shadow:0 10px 30px rgba(8,34,74,.07);text-decoration:none;transition:transform .2s,box-shadow .2s,border-color .2s}
.pp-droga:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(8,34,74,.12);border-color:rgba(212,10,50,.3)}
.pp-droga-kick{font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#D40A32}
.pp-droga-tyt{font-family:'Prometo','Poppins',sans-serif;font-size:1.14rem;font-weight:500;line-height:1.3;color:#173460}
.pp-droga-op{font-size:.93rem;line-height:1.6;color:rgba(23,52,96,.72)}
.pp-droga-l{margin-top:auto;padding-top:10px;display:inline-flex;align-items:center;gap:7px;font-size:.92rem;font-weight:600;color:#C8102E}
.pp-sasiedzi{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:14px;margin:38px 0 0;padding-top:26px;border-top:1px solid rgba(23,52,96,.10)}
.pp-sasiad{display:flex;flex-direction:column;gap:5px;padding:16px 18px;border:1px solid rgba(23,52,96,.10);border-radius:16px;text-decoration:none;background:#FFFFFF;transition:border-color .2s,transform .2s}
.pp-sasiad:hover{border-color:rgba(212,10,50,.35);transform:translateY(-2px)}
.pp-sasiad-kick{font-size:.74rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#D40A32}
.pp-sasiad-tyt{font-size:.98rem;line-height:1.4;color:#173460;font-weight:500;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.pp-sasiad-pusty{display:none}
@media(min-width:700px){.pp-sasiad-pusty{display:block;border:0}}
/* TABELA W ARTYKULE NA TELEFONIE (przelot mobilny 26.08): wpis o stopie cukrzycowej ma tabelę
   szerszą niż ekran — przy 390 px sięgała 556 px i wychodziła poza kadr. Tabela dostaje własne
   przewijanie w poziomie zamiast rozpychać stronę; na szerszych ekranach nic się nie zmienia. */
@media (max-width:640px){
.pp-artykul table{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.pp-artykul table td,.pp-artykul table th{min-width:9ch}
}
/* dwa cytaty obok siebie (opinie o kursie hipermobilności) — ten sam kadr karty,
   co w karuzeli opinii, tylko bez przewijania */
/* Siatka cytatów: 380 px na kolumnę, żeby przy sześciu opiniach (kurs hipermobilności)
   wyszły 3+3, a nie 4+2 z dziurą — i żeby podpis „rekomendacja z Facebooka · data" mieścił
   się w dwóch wierszach. Przy dwóch cytatach auto-fit zwija pusty tor, więc układ 1:1 zostaje. */
.pp-cytat-para{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));gap:18px;margin:0 0 26px}
.pp-cytat-para .c-6da0db9{height:100%}
/* SZEROKOŚĆ WIERSZA W DŁUGICH TEKSTACH (przelot desktopowy 26.08). Odpowiedzi w FAQ nie miały
   żadnego ograniczenia: przy 1440 px rozciągały się do 1278 px, czyli **153 znaki w wierszu**
   (dobrze czyta się 45–75, znośnie do ~90; artykuły bloga mają 90 i to jest w porządku).
   Ograniczamy WYŁĄCZNIE tekst czytany akapitami — nagłówki, listy i karty zostają bez zmian. */
.c-c07926b,.c-cdf1927{max-width:74ch}
section[data-tlo="bialy"]{background:#FFFFFF}
section[data-tlo="blekit"]{background:#F3F8FF}

/* ── SZKOLENIA STACJONARNE (uwaga właściciela 25.08: „bardzo ważna sekcja, a wizualnie
   drętwa i niezachęcająca"). Były dwie płaskie fotokarty z jednym zdaniem. Teraz karta
   niesie komplet informacji zakupowej: zdjęcie z plakietką TERMINU i tytułem na zdjęciu,
   pigułki faktów (miejsce/godziny/wielkość grupy), trzy konkrety „co robisz", stopka
   z ceną i przyciskiem. Sekcja wchłonęła „Terminy stacjonarne — tylko prawdziwe"
   (dublowała temat), więc terminy są tu, gdzie ich szuka czytelnik. */
.pp-stac{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,430px),1fr));gap:26px;margin-top:44px}
.pp-stac-k{display:flex;flex-direction:column;background:#FFFFFF;border:1px solid rgba(23,52,96,.09);border-radius:26px;box-shadow:0 12px 38px rgba(8,34,74,.08);overflow:hidden;transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s}
.pp-stac-k:hover{transform:translateY(-4px);box-shadow:0 26px 60px rgba(8,34,74,.15)}
.pp-stac-foto{position:relative;aspect-ratio:16/9;overflow:hidden}
.pp-stac-foto img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.pp-stac-k:hover .pp-stac-foto img{transform:scale(1.05)}
.pp-stac-foto::after{content:"";position:absolute;inset:auto 0 0;height:62%;background:linear-gradient(to top,rgba(8,34,74,.82),rgba(8,34,74,.28) 46%,transparent)}
.pp-stac-plakietka{position:absolute;z-index:2;left:18px;top:18px;display:inline-flex;align-items:center;gap:8px;background:#D40A32;color:#FFFFFF;font-size:.78rem;font-weight:600;padding:8px 14px;border-radius:999px;box-shadow:0 10px 24px rgba(212,10,50,.3)}
.pp-stac-plakietka-cicha{background:rgba(255,255,255,.94);color:#173460;box-shadow:0 10px 24px rgba(8,34,74,.22)}
.pp-stac-tyt{position:absolute;z-index:2;left:24px;right:24px;bottom:18px;margin:0;font-family:'Prometo','Poppins',sans-serif;font-size:clamp(1.26rem,1.75vw,1.52rem);font-weight:500;letter-spacing:-0.01em;line-height:1.22;color:#FFFFFF;text-wrap:balance}
.pp-stac-tresc{flex:1;display:flex;flex-direction:column;gap:14px;padding:22px clamp(20px,2.4vw,28px) clamp(22px,2.6vw,28px)}
.pp-stac-meta{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.pp-stac-meta li{display:inline-flex;align-items:center;gap:7px;background:#F3F8FF;border:1px solid rgba(23,52,96,.08);border-radius:999px;padding:6px 12px;font-size:.79rem;font-weight:500;color:#173460}
.pp-stac-op{margin:0;font-size:.94rem;line-height:1.65;color:rgba(23,52,96,.78)}
.pp-stac-lista{margin:0;padding:0;list-style:none;display:grid;gap:10px}
.pp-stac-lista li{position:relative;padding-left:30px;font-size:.9rem;line-height:1.55;color:#173460}
.pp-stac-lista li::before{content:"✓";position:absolute;left:0;top:.05em;width:20px;height:20px;border-radius:999px;background:rgba(212,10,50,.09);color:#D40A32;font-size:.7rem;font-weight:700;display:grid;place-items:center}
.pp-stac-stopka{margin-top:auto;padding-top:18px;border-top:1px solid rgba(23,52,96,.08);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px}
.pp-stac-cena{margin:0;font-family:'Prometo','Poppins',sans-serif;font-size:1.22rem;font-weight:500;line-height:1.2;color:#173460}
.pp-stac-cena span{display:block;margin-top:4px;font-family:'Poppins','Segoe UI',sans-serif;font-size:.76rem;font-weight:400;color:rgba(23,52,96,.6)}
.pp-stac-cta{display:inline-flex;align-items:center;gap:9px;background:#D40A32;color:#FFFFFF;font-weight:600;font-size:.92rem;padding:12px 22px;border-radius:999px;text-decoration:none;transition:background .25s,transform .25s}
.pp-stac-cta:hover{background:#B90D2F;color:#FFFFFF;transform:translateY(-2px)}
.pp-stac-nota{display:flex;align-items:flex-start;gap:14px;margin:26px 0 0;padding:16px 20px;background:#F3F8FF;border:1px solid rgba(23,52,96,.08);border-radius:16px;font-size:.9rem;line-height:1.6;color:rgba(23,52,96,.78)}
.pp-stac-nota strong{color:#173460;font-weight:600}
.pp-stac-nota svg{flex:none;margin-top:2px}
@media (max-width:560px){.pp-stac-tyt{font-size:1.2rem}.pp-stac-stopka{flex-direction:column;align-items:flex-start}.pp-stac-cta{width:100%;justify-content:center}}

/* ── ATUTY („Co konkretnie zyskasz…") — uwaga właściciela 25.08: „wizualnie ta sekcja
   może być, ale więcej tych punktów trzeba dodać, z wypracowanych już treści jak na home".
   Kafle zostają te same (klasy bety), dokładamy siatkę o jawnej liczbie kolumn (flex
   z bety przy 10 kaflach robił rzędy 6+4) i podział na dwie grupy: co daje samo
   szkolenie, a co dokłada Program Rozwoju. */
.pp-atuty{display:grid;gap:clamp(26px,3vw,38px) 22px;justify-items:center;margin-top:30px}
.pp-atuty[data-kol="4"]{grid-template-columns:repeat(4,1fr)}
.pp-atuty[data-kol="3"]{grid-template-columns:repeat(3,1fr)}
@media (max-width:1000px){.pp-atuty[data-kol="4"],.pp-atuty[data-kol="3"]{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.pp-atuty[data-kol="4"],.pp-atuty[data-kol="3"]{grid-template-columns:1fr}}
.pp-atuty-grupa{display:flex;align-items:center;justify-content:center;gap:16px;margin:44px 0 0;font-size:.74rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:rgba(23,52,96,.5)}
.pp-atuty-grupa::before,.pp-atuty-grupa::after{content:"";flex:1;max-width:110px;height:1px;background:rgba(23,52,96,.14)}
.pp-atuty-cta{margin:38px 0 0;text-align:center}

/* ── POLE „TWOJE PYTANIE" w formularzach, które o pytanie proszą (uwaga właściciela
   25.08: „sekcja «Masz pytanie o szkolenia?» bez pola na pytanie — jak ktoś ma je
   zadać?"). Wygląd 1:1 z polami bety; focus regułą CSS, nie skryptem w atrybucie. */
.pp-pole-lab{display:block;font-weight:600;font-size:.86rem;color:#173460;margin:16px 0 7px}
.pp-pole-txt{width:100%;box-sizing:border-box;padding:.85em 1em;border:1.5px solid #dbe4f2;border-radius:12px;font:inherit;font-size:.95rem;background:#FBFCFE;resize:vertical;min-height:104px;transition:border-color .2s,box-shadow .2s}
.pp-pole-txt:focus{outline:none;border-color:#D40A32;box-shadow:0 0 0 4px rgba(212,10,50,.08)}

/* ══ /gabinety — LOKATOR (przegląd właściciela 25.08: „to ma być wisienka na torcie") ══ */

/* Wysokość NAGŁÓWKA w jednym miejscu. Wszystko, co ma się przyklejać „pod headerem",
   liczy offset stąd — poprzednia wersja miała wpisane `top:96px` przy nagłówku 107 px
   i dlatego mapa wjeżdżała pod pasek (zgłoszenie właściciela). Poniżej 900 px topbar
   znika (reguła w CSS_NAWIGACJI), więc wysokość spada do samego wiersza z logo. */
:root{--pp-hd:108px}
@media (max-width:900px){:root{--pp-hd:74px}}

/* ── hero: pytanie pacjenta + wyszukiwarka od razu, kontur Polski w tle ── */
.pp-gab-hero{position:relative;overflow:hidden;background:linear-gradient(155deg,#08224A,#173460 58%,#2A4D81)}
.pp-gab-hero-tlo{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none}
.pp-gab-hero-tlo svg{height:112%;width:auto;opacity:.2}
.pp-gab-hero-tlo path{fill:none;stroke:#7FA3DC;stroke-width:2.5;stroke-linejoin:round;stroke-dasharray:.5 12;stroke-linecap:round}
.pp-gab-hero-in{position:relative;max-width:1376px;margin:0 auto;padding:clamp(46px,6vw,84px) clamp(20px,4vw,48px);text-align:center}
.pp-gab-kick{margin:0 0 16px;display:flex;justify-content:center;align-items:center;gap:12px;font-size:.75rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#ff8fa3}
.pp-gab-kick span{width:18px;height:3px;border-radius:2px;background:#F00632}
.pp-gab-h1{margin:0 auto;max-width:17em;font-family:'Prometo','Poppins',sans-serif;font-size:clamp(1.8rem,4vw,3.1rem);font-weight:500;letter-spacing:-0.015em;line-height:1.1;color:#FFFFFF;text-wrap:balance}
.pp-gab-lead{margin:18px auto 0;max-width:46em;font-size:1.02rem;line-height:1.7;color:#dbe6f6}
.pp-gab-szuk{display:flex;gap:10px;align-items:center;max-width:640px;margin:32px auto 0;background:#FFFFFF;border-radius:999px;padding:7px 7px 7px 20px;box-shadow:0 24px 60px rgba(4,16,38,.4)}
.pp-gab-szuk-ik{display:grid;place-items:center;color:#8fa3c2;flex:none}
.pp-gab-szuk input{flex:1;min-width:0;border:0;background:none;font:inherit;font-size:1rem;color:#173460;padding:14px 4px}
.pp-gab-szuk input:focus{outline:none}
.pp-gab-szuk input::-webkit-search-cancel-button{display:none}
.pp-gab-szuk button{flex:none;background:#D40A32;color:#FFFFFF;font:inherit;font-weight:600;font-size:.95rem;border:0;border-radius:999px;padding:14px 28px;cursor:pointer;transition:background .2s}
.pp-gab-szuk button:hover{background:#B90D2F}
.pp-gab-chipy{display:flex;flex-wrap:wrap;gap:9px;justify-content:center;align-items:center;margin:20px 0 0}
.pp-gab-chipy-et{font-size:.82rem;color:rgba(219,230,246,.75)}
.pp-chip{display:inline-flex;align-items:center;gap:7px;background:rgba(255,255,255,.08);border:1px solid rgba(243,248,255,.28);color:#F3F8FF;font:inherit;font-size:.85rem;font-weight:500;padding:7px 14px;border-radius:999px;cursor:pointer;transition:background .2s,border-color .2s}
.pp-chip:hover{background:rgba(255,255,255,.16);border-color:rgba(243,248,255,.6)}
.pp-chip.is-akt{background:#D40A32;border-color:#D40A32;color:#FFFFFF}
.pp-chip-ile{display:inline-grid;place-items:center;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:rgba(8,34,74,.35);font-size:.72rem;font-weight:700}
.pp-chip.is-akt .pp-chip-ile{background:rgba(8,34,74,.4)}
.pp-gab-liczby{display:flex;flex-wrap:wrap;gap:clamp(20px,4vw,54px);justify-content:center;margin:34px 0 0;padding-top:26px;border-top:1px solid rgba(243,248,255,.14)}
.pp-gab-liczby div{display:flex;flex-direction:column;gap:3px}
.pp-gab-liczby strong{font-family:'Prometo','Poppins',sans-serif;font-size:clamp(1.5rem,2.6vw,2rem);font-weight:500;color:#FFFFFF;line-height:1}
.pp-gab-liczby span{font-size:.82rem;color:rgba(219,230,246,.75)}

/* ── pasek sterowania: przykleja się DOKŁADNIE pod nagłówkiem ── */
.pp-lok-pasek{position:sticky;top:var(--pp-hd);z-index:30;display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:30px 0 0;padding:12px;border-radius:18px;background:rgba(255,255,255,.86);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(23,52,96,.08);box-shadow:0 10px 30px rgba(8,34,74,.08)}
.pp-lok-pole{position:relative;display:flex;align-items:center;gap:10px;flex:1 1 320px;min-width:min(100%,260px);background:#FFFFFF;border:1.5px solid #d6e0ef;border-radius:999px;padding:0 14px 0 16px}
.pp-lok-pole:focus-within{border-color:#D40A32;box-shadow:0 0 0 4px rgba(212,10,50,.08)}
.pp-lok-pole input{flex:1;min-width:0;border:0;background:none;font:inherit;font-size:.96rem;color:#173460;padding:12px 0}
.pp-lok-pole input:focus{outline:none}
.pp-lok-pole input::-webkit-search-cancel-button{display:none}
#pp-czysc{visibility:hidden;flex:none;width:28px;height:28px;border-radius:50%;border:0;background:rgba(23,52,96,.08);color:#173460;font-weight:700;cursor:pointer;line-height:1}
.pp-lok-blisko{display:inline-flex;align-items:center;gap:9px;flex:none;background:#FFFFFF;border:1.5px solid rgba(23,52,96,.18);color:#173460;font:inherit;font-weight:600;font-size:.92rem;padding:11px 20px;border-radius:999px;cursor:pointer;transition:border-color .2s,color .2s}
.pp-lok-blisko:hover{border-color:#D40A32;color:#D40A32}
.pp-lok-blisko.is-akt{background:#173460;border-color:#173460;color:#FFFFFF}
.pp-lok-blisko[disabled]{opacity:.6;cursor:default}
.pp-lok-licznik{margin-left:auto;font-weight:600;color:#173460;font-size:.95rem;padding-right:6px}
.pp-lok-info{flex:1 1 100%;font-size:.85rem;color:#D40A32}

/* ── siatka: mapa (przypięta) + lista ── */
/* ⚠ NIE zagnieżdżać minmax() w minmax() — to nieprawidłowa wartość i cała deklaracja
   jest odrzucana: siatka wracała do jednej kolumny, mapa lądowała NAD listą (złapane
   pomiarem w DOM: gridTemplateColumns = „1280px" zamiast dwóch ścieżek). */
.pp-lok{display:grid;grid-template-columns:minmax(340px,42%) minmax(0,1fr);gap:26px;align-items:start;margin-top:22px}
@media (max-width:1040px){.pp-lok{grid-template-columns:1fr}}
.pp-lok-mapa{position:sticky;top:calc(var(--pp-hd) + 84px)}
@media (max-width:1040px){.pp-lok-mapa{position:static}}
.pp-mapa-karta{background:linear-gradient(150deg,#08224A,#173460 62%,#2A4D81);border-radius:26px;padding:clamp(14px,2vw,22px);box-shadow:0 22px 54px rgba(8,34,74,.22)}
.pp-mapa-obrys{fill:rgba(42,77,129,.3);stroke:#7FA3DC;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:.5 12}
.pp-mapa-karta .pp-mapa{position:relative}
.pp-mapa-karta #pp-mapa-svg{width:100%;height:auto;display:block}
/* MAPA NA MOBILE (uwaga właściciela 26.08: „na /wspolpraca mapa jest mniejsza niż na home
   — lepiej, żeby była szersza jak na home"). Arkusz podstron ma `@media (max-width:900px)
   {#pp-mapa-svg{max-height:64vw}}` — home tego arkusza nie ładuje, więc tam mapa rosła
   swobodnie (350×328), a na podstronach była ścinana do 64vw (350×250). Zdejmujemy sufit
   wszędzie, gdzie sami tę mapę wstawiliśmy: w sekcji sieci i na karcie /gabinety. */
@media (max-width:900px){.pp-siec #pp-mapa-svg,.pp-mapa-karta #pp-mapa-svg{max-height:none}}
.pp-mapa-karta .pp-mapa-info{margin:10px 0 0;font-size:.78rem;line-height:1.5;color:rgba(243,248,255,.6);text-align:center}
.pp-pin-blady{opacity:.16}
.pp-lok-lista{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));gap:16px;align-content:start}
.pp-gab{transition:transform .25s cubic-bezier(.2,.7,.2,1),box-shadow .25s,border-color .25s}
.pp-gab[data-klik]{cursor:pointer}
.pp-gab:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(8,34,74,.12)!important;border-color:rgba(212,10,50,.35)!important}
.pp-gab-km{margin:10px 0 0;font-size:.8rem;font-weight:600;color:#D40A32}
/* ══ KALKULATOR NA SUWAKACH (/wspolpraca) ═══════════════════════════════════
   Uwaga właściciela 25.08: „dodałbym suwaki, jakieś wstępne ustawienie standardowe
   i w ogóle bym to podrasował, bo ludzie lubią widzieć wyniki". Suwak stylujemy sami,
   bo natywny wygląda inaczej w każdej przeglądarce, a to jest element pokazowy. */
.pp-kalk{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:stretch;margin-top:40px}
@media (max-width:900px){.pp-kalk{grid-template-columns:1fr}}
.pp-kalk-panel{background:#FFFFFF;border:1px solid rgba(23,52,96,.08);border-radius:22px;box-shadow:0 8px 30px rgba(8,34,74,.06);padding:clamp(22px,3vw,34px);display:flex;flex-direction:column;gap:22px}
.pp-kalk-start{margin:0;font-size:.84rem;line-height:1.55;color:rgba(23,52,96,.72)}
.pp-kalk-start strong{color:#173460}
.pp-kalk-lab{display:flex;justify-content:space-between;align-items:baseline;gap:14px;margin:0 0 10px}
.pp-kalk-lab label{font-weight:600;font-size:.88rem;color:#173460;line-height:1.4}
.pp-kalk-val{flex:none;font-family:'Prometo','Poppins',sans-serif;font-size:1.2rem;font-weight:500;color:#D40A32;font-variant-numeric:tabular-nums;white-space:nowrap}
.pp-kalk-suwak{-webkit-appearance:none;appearance:none;width:100%;height:6px;border-radius:999px;background:linear-gradient(90deg,#D40A32 var(--pp-wyp,50%),rgba(23,52,96,.12) var(--pp-wyp,50%));outline:none;cursor:pointer;margin:0}
.pp-kalk-suwak::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:26px;height:26px;border-radius:50%;background:#FFFFFF;border:2px solid #D40A32;box-shadow:0 4px 12px rgba(212,10,50,.3);cursor:grab;transition:transform .15s}
.pp-kalk-suwak::-webkit-slider-thumb:active{transform:scale(1.12);cursor:grabbing}
.pp-kalk-suwak::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:#FFFFFF;border:2px solid #D40A32;box-shadow:0 4px 12px rgba(212,10,50,.3);cursor:grab}
.pp-kalk-suwak::-moz-range-track{height:6px;border-radius:999px;background:transparent}
.pp-kalk-suwak:focus-visible{box-shadow:0 0 0 4px rgba(212,10,50,.16)}
.pp-kalk-skala{display:flex;justify-content:space-between;margin-top:7px;font-size:.72rem;color:rgba(23,52,96,.45);font-variant-numeric:tabular-nums}
.pp-kalk-pod{margin:8px 0 0;font-size:.78rem;line-height:1.5;color:rgba(23,52,96,.7)}
.pp-kalk-reset{align-self:flex-start;margin-top:auto;background:none;border:0;padding:0;font:inherit;font-size:.82rem;font-weight:600;color:#D40A32;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.pp-kalk-wynik{background:linear-gradient(150deg,#08224A,#173460 62%,#2A4D81);border-radius:22px;padding:clamp(24px,3.4vw,38px);display:flex;flex-direction:column;justify-content:center;gap:6px}
.pp-kalk-wynik-kick{margin:0;font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#ff8fa3}
.pp-kalk-wynik-grid{display:grid;gap:18px;margin-top:12px}
.pp-kalk-duza{font-family:'Prometo','Poppins',sans-serif;font-size:clamp(1.9rem,3vw,2.6rem);font-weight:500;color:#FFFFFF;line-height:1.05;font-variant-numeric:tabular-nums}
.pp-kalk-opis{margin-top:5px;font-size:.85rem;line-height:1.5;color:#c9d7ec}
.pp-kalk-nota{margin:20px 0 0;font-size:.8rem;line-height:1.6;color:#9fb4d4}
.pp-kalk-cta{margin:16px 0 0}
/* Sekcja znaku „Certyfikowany Partner": siatka 2-kolumnowa pochodzi ze stylu inline
   (ekstraktor robi z niej klasę `c-…` dopisaną NA KOŃCU arkusza, więc wygrywa
   z regułą o tej samej specyficzności) — dlatego łamanie na telefonie kotwiczymy
   na id sekcji. Bez tego prawa kolumna kurczyła się do 26 px (zmierzone na 390 px). */
@media (max-width:900px){#certyfikat .pp-cert-grid{grid-template-columns:1fr}}

/* „Pokaż na liście" w dymku jest przyciskiem (filtruje), a nie odnośnikiem — reset guzika */
.pp-mapa #pp-dymek .pp-wiecej{background:none;border:0;border-top:1px solid rgba(23,52,96,.1);font:inherit;font-weight:600;font-size:.8rem;color:#D40A32;cursor:pointer;width:100%;text-align:left;padding:8px 0 0}
/* ══ /WSPÓŁPRACA — PEŁNA MOC (25.08 wieczór, polecenie właściciela) ══════════════
   Nowe elementy strony partnerskiej: znak certyfikatu na zdjęciu hero, sekcja „Sieć, do
   której dołączasz" (mapa z home + pas logotypów na granacie), CTA pod osią kroków,
   formularz z redukcją ryzyka, pigułkami zawodu i furtką dla niezdecydowanych. */
.pp-hero-media{position:relative}
.pp-hero-znak{position:absolute;left:clamp(12px,2vw,22px);bottom:clamp(12px,2vw,22px);max-width:min(80%,340px);background:#FFFFFF;border-radius:16px;box-shadow:0 18px 44px rgba(4,16,38,.35);padding:12px 14px;display:flex;flex-direction:column;gap:6px}
.pp-hero-znak-pill{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;background:#e8f7ee;color:#15803d;font-weight:700;font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;padding:.38em .8em;border-radius:999px}
.pp-hero-znak-txt{font-size:.8rem;line-height:1.45;color:rgba(23,52,96,.82)}
@media (max-width:600px){.pp-hero-znak{position:static;max-width:none;margin-top:12px;box-shadow:0 8px 24px rgba(4,16,38,.25)}}
.pp-mini-pelna{grid-column:1/-1}
/* sieć: ten sam granat i ta sama mapa co na home (S9), własne klasy układu */
.pp-siec{background:radial-gradient(820px 480px at 85% 20%,rgba(72,111,171,.28),rgba(72,111,171,0) 60%),#08224A;overflow:hidden}
.pp-siec-in{max-width:1376px;margin:0 auto;padding:clamp(46px,6.1vw,76px) clamp(20px,4vw,48px) 0;display:flex;flex-wrap:wrap;align-items:center;gap:clamp(32px,5vw,72px)}
.pp-siec-txt{flex:1 1 440px;min-width:min(100%,300px)}
.pp-siec-mapa{flex:1 1 400px;min-width:min(100%,290px);display:flex;justify-content:center}
.pp-siec .pp-mapa{position:relative;width:100%;max-width:540px}
.pp-siec .pp-mapa svg{width:100%;height:auto;display:block}
.pp-siec-liczby{display:flex;flex-wrap:wrap;gap:12px 30px;margin-top:26px}
.pp-siec-liczby div{display:flex;flex-direction:column}
.pp-siec-liczby strong{font-size:clamp(1.5rem,2.4vw,1.9rem);font-weight:700;letter-spacing:-0.02em;color:#FFFFFF;line-height:1;font-variant-numeric:tabular-nums}
.pp-siec-liczby span{margin-top:6px;font-size:.84rem;color:#c7d6ec}
.pp-siec-hook{margin:24px 0 0;padding:14px 18px;border-left:3px solid #F00632;background:rgba(255,255,255,.06);border-radius:0 14px 14px 0;font-size:.95rem;line-height:1.6;color:#dbe6f6}
.pp-siec-hook strong{color:#FFFFFF}
.pp-siec-cta{display:flex;flex-wrap:wrap;align-items:center;gap:0 26px}
.pp-siec-link{margin-top:26px;display:inline-flex;align-items:center;gap:8px;color:#F3F8FF;font-weight:600;text-decoration:none;border-bottom:1px solid rgba(243,248,255,.35);padding-bottom:2px;transition:border-color .2s}
.pp-siec-link:hover{border-color:#F3F8FF}
.pp-siec-pas-tyt{margin:clamp(36px,5vw,56px) auto 0;max-width:1376px;padding:0 clamp(20px,4vw,48px);font-size:.75rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#9FBCEC}
.pp-siec .pp-siec-pas{margin:16px 0 clamp(48px,6vw,76px)}
.pp-siec .c-f53f514{height:34px;filter:brightness(0) invert(1);opacity:.72;transition:opacity .2s}
.pp-siec .c-f53f514:hover{opacity:1}
/* kroki: CTA pod osią czasu */
.pp-kroki-cta{margin:36px 0 0;display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px}
.pp-kroki-cta span{font-size:.9rem;color:rgba(23,52,96,.7)}
/* formularz: co się stanie po wysłaniu, pigułki zawodu, nota */
.pp-form-kroki{list-style:none;counter-reset:k;margin:22px 0 0;padding:0;display:grid;gap:12px}
.pp-form-kroki li{counter-increment:k;display:flex;gap:12px;align-items:flex-start;font-size:.95rem;line-height:1.55;color:rgba(23,52,96,.8)}
.pp-form-kroki li::before{content:counter(k,decimal-leading-zero);flex:none;width:32px;height:32px;border-radius:999px;border:1.5px solid #486FAB;display:grid;place-items:center;font-weight:600;font-size:.78rem;color:#173460;background:#FFFFFF}
.pp-form-kroki strong{color:#173460}
.pp-wsp-form .c-899146f{margin-top:22px}
.pp-form-miekki{margin:22px 0 0;font-size:.9rem;line-height:1.6;color:rgba(23,52,96,.7)}
.pp-form-miekki a{display:inline-flex;align-items:center;gap:6px;color:#D40A32;font-weight:600;text-decoration:none}
.pp-form-miekki a:hover{text-decoration:underline}
.pp-form-zawod{border:0;padding:0;margin:0 0 4px;min-width:0}
.pp-form-zawod legend{padding:0;margin-top:0}
.pp-form-zawod legend span{font-weight:400;color:rgba(23,52,96,.55)}
.pp-form-pigi{display:flex;flex-wrap:wrap;gap:8px}
.pp-pig{position:relative}
.pp-pig input{position:absolute;opacity:0;pointer-events:none}
.pp-pig span{display:inline-block;padding:.5em 1em;border:1.5px solid #d6e0ef;border-radius:999px;font-size:.86rem;font-weight:500;color:#173460;cursor:pointer;transition:background .2s,border-color .2s,color .2s}
.pp-pig span:hover{border-color:#173460}
.pp-pig input:checked+span{background:#173460;border-color:#173460;color:#FFFFFF}
.pp-pig input:focus-visible+span{outline:2px solid #D40A32;outline-offset:2px}
.pp-form-btn{width:100%;text-align:center;font-size:1rem;padding:15px 30px;border:0;cursor:pointer;font-family:inherit}
.pp-form-nota{margin:12px 0 0;font-size:.8rem;line-height:1.5;color:rgba(23,52,96,.6);text-align:center}

/* ── /wspolpraca runda 2 (25.08 wieczór): HERO v2 — slider 4 kadrów w czystym CSS, mapa w tle,
   podkreślenie w H1, pigułka sieci; FILAR 1 — proces w kaflach; HOME — drugi przycisk mapy. */
/* OZDOBY HERO GLOBALNIE (polecenie właściciela 25.08 wieczór: „zajebiste są te efekty w hero —
   pp-hero-mapa i ::before — dać globalnie na każdej stronie, która nie ma w hero tego typu
   dodatków"). Klasę `pp-hero-ozdoby` + SVG obrysu dokłada assembler v3 (`ozdoby_hero`) każdemu
   granatowemu hero bez własnych dodatków (home = model 3D, /wkladki = canvas, /gabinety = własny obrys). */
.pp-hero-ozdoby{position:relative;overflow:hidden}
.pp-hero-ozdoby>div{position:relative;z-index:1}
.pp-hero-mapa{position:absolute;right:-110px;top:-90px;width:min(64vw,680px);height:auto;fill:none;stroke:rgba(159,188,236,.26);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:.5 12;pointer-events:none}
.pp-hero-ozdoby::before{content:"";position:absolute;left:-140px;bottom:-200px;width:460px;height:460px;border-radius:50%;background:radial-gradient(circle,rgba(240,6,50,.16),transparent 62%);pointer-events:none}
.pp-hero-kadr{position:relative;aspect-ratio:4/3;border-radius:22px;overflow:hidden;box-shadow:0 18px 44px rgba(4,16,38,.35);background:#0f2b57;isolation:isolate}
.pp-hero-slajd{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.02)}
.pp-hero-slajd.pp-s1{opacity:1}
html[data-anim] .pp-hero-slajd{animation:ppHeroSlajd 20s ease-in-out infinite}
html[data-anim] .pp-hero-slajd.pp-s1{animation-name:ppHeroSlajd1}
html[data-anim] .pp-hero-slajd.pp-s2{animation-delay:5s}
html[data-anim] .pp-hero-slajd.pp-s3{animation-delay:10s}
html[data-anim] .pp-hero-slajd.pp-s4{animation-name:ppHeroSlajd4;animation-delay:15s}
/* kolejny kadr wjeżdża NA poprzedni (crossfade 1,2 s), poprzedni znika dopiero pod nim;
   ostatni gaśnie powoli nad pierwszym, który już czeka pod spodem — pętla bez mrugnięcia */
@keyframes ppHeroSlajd{0%{opacity:0;transform:scale(1.06)}6%{opacity:1}31%{opacity:1;transform:scale(1)}33%{opacity:0;transform:scale(1)}100%{opacity:0;transform:scale(1.06)}}
@keyframes ppHeroSlajd1{0%{opacity:1;transform:scale(1.04)}25%{opacity:1;transform:scale(1)}31%{opacity:1}33%{opacity:0;transform:scale(1)}94%{opacity:0;transform:scale(1.06)}100%{opacity:1;transform:scale(1.04)}}
@keyframes ppHeroSlajd4{0%{opacity:0;transform:scale(1.06)}6%{opacity:1}25%{opacity:1;transform:scale(1)}31%{opacity:0;transform:scale(1)}100%{opacity:0;transform:scale(1.06)}}
.pp-hero-kropki{position:absolute;right:14px;bottom:12px;z-index:2;display:flex;gap:6px}
.pp-hero-kropki i{display:block;width:6px;height:6px;border-radius:999px;background:rgba(255,255,255,.45)}
.pp-hero-kropki i:first-child{width:18px;background:#FFFFFF}
html[data-anim] .pp-hero-kropki i{animation:ppKropka 20s linear infinite;width:6px;background:rgba(255,255,255,.45)}
html[data-anim] .pp-hero-kropki i:nth-child(2){animation-delay:5s}
html[data-anim] .pp-hero-kropki i:nth-child(3){animation-delay:10s}
html[data-anim] .pp-hero-kropki i:nth-child(4){animation-delay:15s}
@keyframes ppKropka{0%,25%{width:18px;background:#FFFFFF}27%,100%{width:6px;background:rgba(255,255,255,.45)}}
.pp-hero-pin{position:absolute;top:12px;right:12px;z-index:2;display:inline-flex;align-items:center;gap:6px;background:rgba(8,34,74,.72);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#FFFFFF;font-size:.74rem;font-weight:600;letter-spacing:.04em;padding:.45em .85em;border-radius:999px;border:1px solid rgba(255,255,255,.18)}
.pp-hero-znak{z-index:3}
.pp-podkr{background:linear-gradient(transparent 66%,rgba(240,6,50,.6) 66%) no-repeat 0 0/0% 100%;-webkit-box-decoration-break:clone;box-decoration-break:clone}
html:not([data-anim]) .pp-podkr,.on .pp-podkr{background-size:100% 100%}
html[data-anim] .on .pp-podkr{transition:background-size .9s cubic-bezier(.2,.7,.2,1) .55s}
@media (prefers-reduced-motion:reduce){.pp-hero-slajd,.pp-hero-kropki i{animation:none!important}}
/* filar 1: proces w 4 kaflach + puenta */
.pp-proces{list-style:none;counter-reset:pr;margin:22px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
@media (max-width:600px){.pp-proces{grid-template-columns:1fr}}
.pp-proces li{counter-increment:pr;background:#FFFFFF;border:1px solid rgba(23,52,96,.08);border-radius:16px;padding:14px 16px 14px 54px;position:relative;box-shadow:0 8px 24px rgba(8,34,74,.05)}
.pp-proces li::before{content:"0" counter(pr);position:absolute;left:14px;top:14px;width:28px;height:28px;border-radius:999px;background:rgba(212,10,50,.08);color:#D40A32;font-weight:700;font-size:.74rem;display:grid;place-items:center}
.pp-proces strong{display:block;color:#173460;font-size:.95rem;margin-bottom:3px;line-height:1.3}
.pp-proces span{display:block;font-size:.86rem;line-height:1.55;color:rgba(23,52,96,.75)}
.pp-filar-puenta{margin:18px 0 0;padding:12px 16px;border-left:3px solid #D40A32;background:#FFFFFF;border-radius:0 12px 12px 0;font-size:.93rem;line-height:1.6;color:rgba(23,52,96,.85)}
.pp-filar-puenta strong{color:#173460}
/* MAŁE LINKI SEKCJI („Przeczytaj całą historię", „Zobacz wszystkie…", „Zobacz artykuły →") — uwaga
   właściciela 25.08: „wizualnie się gubią" → czerwień jako stan normalny (dotąd tylko na hoverze),
   hover ciemniejszy + podkreślenie. Klasy prototypu: c-bd0da09 (home, /szkolenia), c-2787ef7 (/o-nas). */
/* ⚠ specyficzność a.klasa (0,1,1): za prefiksem arkusza siedzi WYEKSTRAHOWANA kopia `.c-bd0da09{color:#173460}`
   (ekstraktor klas prototypu dopisuje reguły na końcu pliku), więc goła klasa przegrywała kolejnością. */
a.c-bd0da09,a.c-2787ef7{color:#D40A32}
a.c-bd0da09:hover,a.c-2787ef7:hover{color:#B90D2F;text-decoration:underline;text-underline-offset:4px}
/* /o-nas: kadr hero z duetem założycielek + DUŻE logo na białej plakietce (uwaga właściciela: „logo większe") */
.pp-onas-kadr .pp-onas-foto{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pp-onas-logo{position:absolute;top:14px;left:14px;z-index:2;background:#FFFFFF;border-radius:14px;padding:12px 18px;box-shadow:0 10px 26px rgba(4,16,38,.28)}
.pp-onas-logo img{height:48px;width:auto;display:block}
@media (max-width:600px){.pp-onas-logo{padding:9px 13px}.pp-onas-logo img{height:36px}}
/* home: drugi przycisk w sekcji mapy — kontur, żeby nie konkurował z czerwonym przyciskiem pacjenta */
.pp-mapa-btns{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.pp-btn-kontur.c-f3f5387{background:transparent;border:1.5px solid rgba(243,248,255,.45);color:#F3F8FF}
.pp-btn-kontur.c-f3f5387:hover{background:rgba(243,248,255,.1);border-color:#F3F8FF;color:#FFFFFF;box-shadow:none}
.pp-mapa .pp-mapa-cta-wrap{flex-wrap:wrap;gap:10px}
/* ── /urzadzenia: KATALOG SPRZĘTU ze sklepu (karta produktowa na bazie `pp-stac-*` z /szkolenia).
   Różnice wobec karty szkoleniowej: zdjęcie produktu wpisane w kadr (contain na bieli, bez
   kadrowania urządzenia), bez ciemnego gradientu i bez tytułu NA zdjęciu — na fotografii
   produktowej gradient przykrywał połowę sprzętu; tytuł wchodzi do treści karty. */
.pp-kat-opis{margin:8px auto 0;max-width:64em;text-align:center;font-size:.95rem;line-height:1.65;color:rgba(23,52,96,.72)}
/* ── strony sekcji F (26.08): lista najbliższych gabinetów (strona miasta) i kafle „czytaj dalej" (blog) */
.pp-blisko{list-style:none;margin:38px 0 0;padding:0;display:grid;gap:10px;max-width:900px}
.pp-blisko li{display:flex;flex-wrap:wrap;align-items:center;gap:14px;background:#FFFFFF;border:1px solid rgba(23,52,96,.09);border-radius:14px;padding:14px 18px}
.pp-blisko-km{flex:none;min-width:74px;font-family:'Prometo','Poppins',sans-serif;font-weight:600;color:#D40A32}
.pp-blisko-txt{flex:1 1 260px;font-size:.92rem;line-height:1.5;color:rgba(23,52,96,.8)}
.pp-blisko-txt strong{color:#173460}
.pp-blisko-link{display:inline-flex;align-items:center;gap:5px;color:#D40A32;font-weight:600;font-size:.86rem;text-decoration:none}
.pp-blisko-link:hover{text-decoration:underline}
.pp-dalej{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:18px;margin-top:40px}
.pp-dalej-k{display:flex;flex-direction:column;gap:8px;background:#FFFFFF;border:1px solid rgba(23,52,96,.09);border-radius:18px;padding:22px 24px;text-decoration:none;box-shadow:0 10px 30px rgba(8,34,74,.05);transition:transform .3s,box-shadow .3s}
.pp-dalej-k:hover{transform:translateY(-3px);box-shadow:0 20px 44px rgba(8,34,74,.12)}
.pp-dalej-k h3{margin:0;font-family:'Prometo','Poppins',sans-serif;font-size:1.06rem;font-weight:500;line-height:1.32;color:#173460}
.pp-dalej-k p{margin:0;font-size:.88rem;line-height:1.6;color:rgba(23,52,96,.72)}
.pp-dalej-kat{font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#D40A32}
.pp-dalej-l{margin-top:auto;display:inline-flex;align-items:center;gap:6px;color:#D40A32;font-weight:600;font-size:.86rem}
/* pojedyncza opinia pacjentki na stronach rodzin wkładek (karta z prototypu bez karuzeli) */
.pp-cytat-jeden{max-width:820px;margin:34px auto 0}
.pp-cytat-jeden .c-6da0db9{width:100%}
/* ── /wkladki: PORÓWNANIE CZTERECH DRÓG DO WKŁADKI (polecenie 26.08: „ten LP ma pokazywać
   potęgę systemu"). Trzy alternatywy opisane mechanizmem + wyróżniona kolumna własna. */
.pp-porown{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:18px;margin-top:44px;align-items:stretch}
.pp-porown-k{display:flex;flex-direction:column;gap:10px;background:#FFFFFF;border:1px solid rgba(23,52,96,.1);border-radius:20px;padding:24px 22px}
.pp-porown-nasza{border:2px solid #D40A32;box-shadow:0 18px 44px rgba(212,10,50,.12)}
.pp-porown-tag{align-self:flex-start;background:#D40A32;color:#FFFFFF;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.34em .8em;border-radius:999px}
.pp-porown-tag-cicha{background:#F3F8FF;color:rgba(23,52,96,.6);border:1px solid rgba(23,52,96,.12)}
.pp-porown-tyt{margin:0;font-family:'Prometo','Poppins',sans-serif;font-size:1.14rem;font-weight:500;line-height:1.3;color:#173460}
.pp-porown-pod{margin:0;font-size:.82rem;color:rgba(23,52,96,.55)}
.pp-porown-lista{margin:6px 0 0;padding:0;list-style:none;display:grid;gap:9px}
.pp-porown-lista li{position:relative;padding-left:20px;font-size:.88rem;line-height:1.55;color:rgba(23,52,96,.78)}
.pp-porown-lista li::before{content:"";position:absolute;left:0;top:.55em;width:7px;height:7px;border-radius:50%;background:rgba(23,52,96,.25)}
.pp-porown-nasza .pp-porown-lista li::before{background:#D40A32}
.pp-porown-nota{margin:24px 0 0;font-size:.82rem;line-height:1.6;color:rgba(23,52,96,.55);text-align:center}
/* ── sześć mniejszych stron (przegląd 25.08) ─────────────────────────────────
   `pp-opcjo` — oznaczenie pola nieobowiązkowego (na lead magnecie telefon nie jest wymagany,
   ale nieoznaczony wygląda na obowiązkowy); `pp-media-foto` — dowód w „My w mediach". */
.pp-opcjo{font-weight:400;color:rgba(23,52,96,.55)}
.pp-cwicz-czas{margin:10px 0 0;font-size:.9rem;color:rgba(23,52,96,.62)}
.pp-cwicz-czas span{display:inline-block;background:#F3F8FF;border:1px solid rgba(23,52,96,.1);border-radius:999px;padding:.28em .8em;font-weight:600;color:#173460;margin-right:6px}
.pp-media-foto{margin:30px auto 0;max-width:760px;display:grid;gap:10px;justify-items:center}
.pp-media-foto img{width:100%;height:auto;border-radius:20px;box-shadow:0 16px 40px rgba(8,34,74,.14);display:block}
.pp-media-foto span{font-size:.86rem;color:rgba(23,52,96,.6);text-align:center}
/* ── /certyfikacja (uwagi właściciela 25.08) ─────────────────────────────────
   1) HERO Z WYCINANKĄ: w hero stoi PNG z przezroczystym tłem, więc `c-902a294`
      (border-radius + cień) rysowała cień NIEWIDOCZNEGO prostokąta, a postać wisiała
      nad dolną krawędzią sekcji. Wycinanka ma stać NA krawędzi: ujemny margines zjada
      dolny padding hero (ta sama wartość, co w `.c-3c7107b`), zero zaokrągleń i cienia. */
.pp-hero-wycinanka{align-self:flex-end;display:flex;justify-content:center;margin-bottom:calc(-1 * clamp(46px,6.1vw,76px))}
.pp-hero-wycinanka img{display:block;width:auto;max-width:100%;height:auto;max-height:clamp(300px,40vw,520px);border-radius:0;box-shadow:none;object-fit:contain}
@media (max-width:900px){.pp-hero-wycinanka img{max-height:340px}}
/* 2) KAFLE 9 NAGRAŃ z okładkami ze sklepu (dotąd sama numeracja i tekst) */
.pp-kurs9{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,330px),1fr));gap:22px;margin-top:40px}
.pp-kurs9-k{display:flex;flex-direction:column;background:#FFFFFF;border:1px solid rgba(23,52,96,.09);border-radius:20px;box-shadow:0 10px 30px rgba(8,34,74,.06);overflow:hidden;transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s}
.pp-kurs9-k:hover{transform:translateY(-4px);box-shadow:0 22px 50px rgba(8,34,74,.13)}
.pp-kurs9-foto{position:relative;aspect-ratio:1/1;background:#F3F8FF}
.pp-kurs9-foto img{width:100%;height:100%;object-fit:cover;display:block}
.pp-kurs9-nr{position:absolute;left:12px;top:12px;z-index:2;min-width:34px;height:34px;padding:0 9px;border-radius:999px;background:rgba(8,34,74,.82);color:#FFFFFF;display:grid;place-items:center;font-weight:600;font-size:.8rem}
.pp-kurs9-tresc{flex:1;display:flex;flex-direction:column;gap:9px;padding:18px 20px 20px}
.pp-kurs9-tyt{margin:0;font-family:'Prometo','Poppins',sans-serif;font-size:1.14rem;font-weight:500;line-height:1.3;color:#173460}
.pp-kurs9-op{margin:0;font-size:.87rem;line-height:1.6;color:rgba(23,52,96,.72)}
.pp-kurs9-cena{margin:auto 0 0;padding-top:12px;border-top:1px solid rgba(23,52,96,.08);display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between;font-size:.84rem;color:rgba(23,52,96,.6)}
.pp-kurs9-cena a{display:inline-flex;align-items:center;gap:5px;color:#D40A32;font-weight:600;text-decoration:none}
.pp-kurs9-cena a:hover{text-decoration:underline}
.pp-kurs9-nota{margin:26px 0 0;text-align:center;font-size:.95rem;line-height:1.6;color:rgba(23,52,96,.75)}
.pp-kurs9-nota strong{color:#173460}
/* 3) CENNIK Z JEDNĄ KARTĄ: siatka `auto-fit` rozciągała samotną kartę na całą szerokość */
.pp-cennik-solo{grid-template-columns:minmax(0,420px);justify-content:center}
.pp-cennik-solo .c-8f5b7dd{padding-top:40px}
.pp-cennik-solo .c-9b2876f{right:auto;white-space:nowrap}
/* Ta sama plakietka na karcie cennika z KILKOMA wariantami (/szkolenia-kurs-ortopodologia)
   łamała się na dwie linie i nachodziła na tytuł pakietu (zgłoszenie właściciela 26.08) —
   poprzednia poprawka była zawężona do cennika jednokartowego. Plakietka ma zawsze jedną
   linię i nie może wyjść poza kartę. */
.c-8f5b7dd .c-9b2876f{white-space:nowrap;max-width:calc(100% - 28px);overflow:hidden;text-overflow:ellipsis}
/* 4) REJESTR: kolumna ze znakiem gabinetu (logotyp albo monogram) */
.pp-rej-logo{padding:8px 6px 8px 16px;width:104px}
.pp-rej-logo img{width:80px;height:36px;object-fit:contain;display:block}
.pp-rej-hd{display:block;width:80px}
.pp-rej-mono{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:#F3F8FF;border:1px solid rgba(23,52,96,.1);font-size:.72rem;font-weight:700;color:#486FAB}
#rejestr table{min-width:660px}
/* PIGUŁKA NA GRANACIE (znaleziona przy przeglądzie /urzadzenia 25.08): komponent `s_cta_final`
   wstawia pigułkę `c-899146f` (czerwony tekst na 8% czerwieni) DO ŚRODKA ciemnej karty CTA
   `c-6ad2a7b` — czerwień na granacie to kontrast ok. 1,9:1, czyli tekst praktycznie nieczytelny.
   Dotyczy 25 stron PP. Poprawiamy wyłącznie wariant „na granacie" (specyficzność 0,2,0). */
.c-6ad2a7b .c-899146f{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.3);color:#FFFFFF}
.c-6ad2a7b .c-899146f .c-8ce7d0a{background:#FF748C}
#katalog .pp-stac{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:22px;margin-top:18px}
.pp-kat-k .pp-stac-foto{aspect-ratio:16/9;background:#FFFFFF;border-bottom:1px solid rgba(23,52,96,.07)}
.pp-kat-k .pp-stac-foto img{object-fit:contain}
.pp-kat-k .pp-stac-foto::after{content:none}
.pp-kat-k .pp-stac-plakietka{left:auto;right:16px;top:16px}
.pp-kat-tyt{margin:0;font-family:'Prometo','Poppins',sans-serif;font-size:1.1rem;font-weight:500;line-height:1.3;color:#173460}
.pp-kat-stopka{margin-top:30px;display:flex;flex-wrap:wrap;gap:18px;align-items:center;justify-content:space-between;background:#F3F8FF;border:1px solid #E4EDFA;border-radius:18px;padding:22px 28px}
.pp-kat-stopka p{margin:0;flex:1 1 420px;font-size:.97rem;line-height:1.65;color:rgba(23,52,96,.78)}
.pp-kat-stopka strong{color:#173460}
.pp-kat-stopka-b{margin-top:14px}


/* ── WEBINAR / LANDING (pp_sekcje_landing.py) — stany, których nie da się zapisać inline ── */
.ppw-od{margin:18px 0 4px;padding:14px 0 0;border-top:1px solid #E4EDFA}
.ppw-od-ciemna{border-top-color:rgba(159,180,212,.22)}
.ppw-od-etyk{margin:0 0 10px;font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#5b6b7c}
.ppw-od-ciemna .ppw-od-etyk{color:#9fb4d4}
.ppw-timer{display:flex;gap:8px;flex-wrap:wrap}
.ppw-kafel{flex:1 1 0;min-width:56px;background:#F3F8FF;border:1px solid #E4EDFA;border-radius:13px;padding:10px 4px 8px;text-align:center}
.ppw-od-ciemna .ppw-kafel{background:rgba(255,255,255,.08);border-color:rgba(243,248,255,.18)}
.ppw-kafel b{display:block;font-family:'Prometo','Poppins',sans-serif;font-size:1.45rem;font-weight:500;letter-spacing:-0.02em;color:#173460;line-height:1.1;font-variant-numeric:tabular-nums}
.ppw-od-ciemna .ppw-kafel b{color:#FFFFFF}
.ppw-kafel span{display:block;margin-top:3px;font-size:.68rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#5b6b7c}
.ppw-od-ciemna .ppw-kafel span{color:#9fb4d4}
.ppw-timer-oto .ppw-kafel{background:rgba(255,255,255,.1);border-color:rgba(243,248,255,.22)}
.ppw-timer-oto .ppw-kafel b{color:#FFFFFF;font-size:2.1rem}
.ppw-timer-oto .ppw-kafel span{color:#c7d6ec}
.ppw-od-po{display:none;margin:0;font-size:.9rem;line-height:1.6;color:#5b6b7c}
.ppw-od-ciemna .ppw-od-po{color:#dbe6f6}
.ppw-od[data-stan="po"] .ppw-timer,.ppw-od[data-stan="po"] .ppw-od-etyk{display:none}
.ppw-od[data-stan="po"] .ppw-od-po{display:block}
/* pas pilności */
.ppw-pil{display:flex;align-items:center;gap:14px;flex-wrap:wrap;color:#FFFFFF}
.ppw-pil-dot{width:9px;height:9px;border-radius:50%;background:#ff8fa3;flex:none;animation:ppwPuls 1.9s ease-in-out infinite}
@keyframes ppwPuls{0%,100%{box-shadow:0 0 0 0 rgba(255,143,163,.55)}55%{box-shadow:0 0 0 8px rgba(255,143,163,0)}}
@media (prefers-reduced-motion:reduce){.ppw-pil-dot{animation:none}}
.ppw-pil-t{font-size:.93rem;line-height:1.5;color:#dbe6f6}
.ppw-pil-t b{color:#FFFFFF;font-weight:600}
.ppw-pil-zd{font-size:.85rem;font-weight:700;color:#ff8fa3;white-space:nowrap;font-variant-numeric:tabular-nums}
.ppw-pil[data-stan="po"] .ppw-pil-zd{display:none}
.ppw-pil-b{margin-left:auto;flex:none;display:inline-flex;align-items:center;padding:8px 20px;border-radius:999px;background:#D40A32;color:#FFFFFF;font-size:.86rem;font-weight:600;text-decoration:none;transition:background .2s,transform .2s}
.ppw-pil-b:hover{background:#B90D2F;transform:translateY(-1px)}
@media (max-width:720px){.ppw-pil-b{margin-left:0}}
/* oferta jednorazowa: jedno przełączenie na <html> gasi wszystkie bloki ceny na stronie */
.ppw-oto-po{display:none}
html[data-oto="po"] .ppw-oto-live{display:none}
html[data-oto="po"] .ppw-oto-po{display:block}
.ppw-oto-karta-po{flex:1 1 100%;padding:clamp(24px,3vw,36px);border-top:1px solid #E4EDFA;text-align:center}
.ppw-oto-zegar{font-family:'Prometo','Poppins',sans-serif;font-size:2rem;font-weight:500;color:#FFFFFF;font-variant-numeric:tabular-nums;letter-spacing:-0.01em}
.ppw-kopiuj{border:1.5px solid #E4EDFA;background:#FFFFFF;color:#173460;font:inherit;font-size:.82rem;font-weight:600;padding:.45em 1em;border-radius:999px;cursor:pointer;transition:border-color .2s,color .2s}
.ppw-kopiuj:hover{border-color:#D40A32;color:#D40A32}
/* ── EskALACJA PILNOŚCI (03.09, runda „mocniej") ── */
/* wspólna żywa kropka — jedyny element, który „oddycha"; przy reduced-motion po prostu stoi */
.ppw-kropka{width:8px;height:8px;flex:none;border-radius:50%;background:#F00632;display:inline-block;animation:ppwTetno 1.6s ease-out infinite}
@keyframes ppwTetno{0%,100%{box-shadow:0 0 0 0 rgba(240,6,50,.55)}60%{box-shadow:0 0 0 7px rgba(240,6,50,0)}}
@media (prefers-reduced-motion:reduce){.ppw-kropka{animation:none}}
/* zegar w nagłówku — jedzie z użytkownikiem przez całą stronę */
.ppw-hd-zegar{gap:10px;background:rgba(212,10,50,.07);border-color:rgba(212,10,50,.25);color:#D40A32}
.ppw-hd-zegar::before{display:none}
.ppw-hd-etyk{font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.ppw-hd-czas{font-weight:800;font-variant-numeric:tabular-nums;color:#173460;letter-spacing:.01em}
.ppw-hd-czas b{font-weight:800}
.ppw-hd-po{display:none;font-weight:700;color:#173460}
.ppw-hd-zegar[data-stan="po"] .ppw-hd-czas,.ppw-hd-zegar[data-stan="po"] .ppw-hd-etyk{display:none}
.ppw-hd-zegar[data-stan="po"] .ppw-hd-po{display:inline}
/* kafle mocniejsze: większe cyfry, wyróżniona sekunda */
.ppw-od-mocna .ppw-kafel{padding:12px 4px 10px;border-color:#D6E4F7}
.ppw-od-mocna .ppw-kafel b{font-size:clamp(1.55rem,4vw,1.95rem);font-weight:700}
.ppw-od-etyk{display:flex;align-items:center;gap:8px}
.ppw-od-mocna .ppw-od-etyk{color:#D40A32}
.ppw-od-ciemna.ppw-od-mocna .ppw-od-etyk{color:#ff8fa3}
.ppw-kafel-sek{background:rgba(212,10,50,.06);border-color:rgba(212,10,50,.22)}
.ppw-kafel-sek b{color:#D40A32!important}
.ppw-od-ciemna .ppw-kafel-sek{background:rgba(240,6,50,.18);border-color:rgba(255,143,163,.35)}
.ppw-od-ciemna .ppw-kafel-sek b{color:#FFFFFF!important}
/* pasek pilności: „zostało N dni" jako pigułka, nie szept */
.ppw-pil-t{font-size:.97rem}
.ppw-pil-zd{display:inline-flex;align-items:center;gap:8px;background:rgba(240,6,50,.16);border:1px solid rgba(255,143,163,.45);border-radius:999px;padding:5px 14px;color:#ffd7de;font-size:.85rem;white-space:nowrap}
.ppw-pil-zd b{color:#FFFFFF;font-weight:800;font-variant-numeric:tabular-nums}
/* mikro-odliczanie pod środkowym CTA */
.ppw-mikro{margin:16px 0 0;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;font-size:.88rem;color:rgba(23,52,96,.78)}
.ppw-mikro-zd{display:inline-flex;align-items:center;gap:8px;background:rgba(212,10,50,.07);border:1px solid rgba(212,10,50,.22);border-radius:999px;padding:4px 13px;color:#D40A32;font-size:.83rem}
.ppw-mikro-zd b{font-weight:800;font-variant-numeric:tabular-nums}
/* plakietka STOP na stronie oferty */
.ppw-stop{margin:0 0 16px;display:inline-flex;align-items:center;gap:10px;background:#D40A32;color:#FFFFFF;font-size:.78rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;padding:.6em 1.3em;border-radius:999px;box-shadow:0 12px 30px rgba(212,10,50,.4)}
/* WIELKI ZEGAR OFERTY + pasek opadania */
.ppw-zegar{margin:clamp(24px,3.4vw,36px) auto 0;max-width:520px}
.ppw-zegar-etyk{margin:0 0 6px;display:flex;align-items:center;justify-content:center;gap:9px;font-size:.78rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#ff8fa3}
.ppw-zegar-cyfry{margin:0;font-family:'Prometo','Poppins',sans-serif;font-size:clamp(3.4rem,10vw,5.6rem);font-weight:500;line-height:1;letter-spacing:-0.03em;color:#FFFFFF;font-variant-numeric:tabular-nums;text-shadow:0 0 42px rgba(255,143,163,.45)}
.ppw-zegar-cyfry i{font-style:normal;opacity:.5;margin:0 .04em}
.ppw-postep{margin:18px 0 0;height:9px;border-radius:999px;background:rgba(255,255,255,.14);overflow:hidden}
.ppw-postep>span{display:block;height:100%;width:calc(var(--ppw-oto-p,1) * 100%);border-radius:999px;background:linear-gradient(90deg,#F00632,#ff8fa3);transition:width 1s linear}
.ppw-zegar-dop{margin:14px 0 0;font-size:.83rem;line-height:1.6;color:#c7d6ec}
.ppw-oto-cta{margin:clamp(24px,3vw,32px) 0 0}
.ppw-oto-stopka{margin:14px 0 0;font-size:.85rem;color:#c7d6ec}
.ppw-oto-stopka b{color:#FFFFFF}
/* eskalacja stanu — kolor i tempo idą za realnie zostającym czasem, nie za sztuczką */
html[data-oto="konczy"] .ppw-zegar-cyfry{color:#FFD98A;text-shadow:0 0 46px rgba(240,180,41,.5)}
html[data-oto="konczy"] .ppw-postep>span{background:linear-gradient(90deg,#F0B429,#FFD98A)}
html[data-oto="konczy"] .ppw-kropka{background:#F0B429;animation-duration:1.1s}
html[data-oto="ostatnia"] .ppw-zegar-cyfry{color:#FFB3C0;text-shadow:0 0 52px rgba(240,6,50,.6);animation:ppwPuk 1s ease-in-out infinite}
html[data-oto="ostatnia"] .ppw-postep>span{background:linear-gradient(90deg,#F00632,#ff5c78)}
html[data-oto="ostatnia"] .ppw-kropka{animation-duration:.7s}
@keyframes ppwPuk{0%,100%{transform:scale(1)}50%{transform:scale(1.035)}}
@media (prefers-reduced-motion:reduce){html[data-oto="ostatnia"] .ppw-zegar-cyfry{animation:none}}
/* blok ceny — mocniejszy kontrast starej i nowej */
.ppw-cena{margin:26px 0 0;display:flex;align-items:flex-end;flex-wrap:wrap;gap:16px}
.ppw-cena-stara{display:inline-flex;flex-direction:column;line-height:1.15}
.ppw-cena-stara s{font-size:1.35rem;font-weight:600;color:#8494a8;text-decoration-thickness:2.5px;text-decoration-color:#D40A32}
.ppw-cena-stara i{font-style:normal;font-size:.72rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#8494a8}
.ppw-cena-nowa{font-family:'Prometo','Poppins',sans-serif;font-size:clamp(2.8rem,6vw,4rem);font-weight:500;letter-spacing:-0.03em;color:#D40A32;line-height:.92}
.ppw-cena-zysk{display:inline-flex;align-items:center;background:#173460;color:#FFFFFF;font-weight:700;font-size:.88rem;padding:.55em 1.15em;border-radius:999px;margin-bottom:6px}
.ppw-cena-zegar{margin:14px 0 0;display:inline-flex;align-items:center;gap:9px;font-size:.9rem;color:rgba(23,52,96,.78)}
.ppw-cena-zegar b{color:#D40A32;font-weight:800;font-variant-numeric:tabular-nums;font-size:1rem}
/* plakietka rabatu i pieczęć na grafice produktu */
.ppw-rabat{position:absolute;top:clamp(14px,2.4vw,24px);left:clamp(14px,2.4vw,24px);z-index:2;display:inline-flex;align-items:center;justify-content:center;width:74px;height:74px;border-radius:50%;background:#D40A32;color:#FFFFFF;font-family:'Prometo','Poppins',sans-serif;font-size:1.32rem;font-weight:500;letter-spacing:-0.02em;box-shadow:0 14px 34px rgba(212,10,50,.42);transform:rotate(-9deg)}
.ppw-pieczec{position:absolute;bottom:clamp(12px,2vw,20px);left:50%;transform:translateX(-50%);white-space:nowrap;background:#FFFFFF;border:1.5px dashed rgba(212,10,50,.45);border-radius:999px;padding:.5em 1.1em;font-size:.76rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#D40A32;box-shadow:0 8px 22px rgba(8,34,74,.12)}
/* przyklejony pas oferty (desktop) — na telefonie rolę pełni dolny pasek CTA */
.ppw-sticky{position:fixed;left:0;right:0;bottom:0;z-index:90;display:flex;align-items:center;justify-content:center;gap:clamp(12px,2vw,26px);flex-wrap:wrap;padding:12px clamp(16px,4vw,40px);background:linear-gradient(120deg,#08224A,#173460 70%,#2A4D81);box-shadow:0 -10px 34px rgba(4,16,38,.34);color:#FFFFFF}
.ppw-sticky-etyk{font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#9fb4d4}
.ppw-sticky-zegar{display:inline-flex;align-items:center;gap:9px;font-size:.92rem;color:#dbe6f6}
.ppw-sticky-zegar b{color:#FFFFFF;font-weight:800;font-variant-numeric:tabular-nums;font-size:1.06rem}
.ppw-sticky-cena{display:inline-flex;align-items:baseline;gap:10px}
.ppw-sticky-cena s{color:#9fb4d4;font-size:.92rem;text-decoration-thickness:2px}
.ppw-sticky-cena b{font-family:'Prometo','Poppins',sans-serif;font-size:1.5rem;font-weight:500;letter-spacing:-0.02em;color:#FFFFFF;line-height:1}
.ppw-sticky-b{display:inline-flex;align-items:center;background:#D40A32;color:#FFFFFF;font-weight:700;font-size:.95rem;padding:12px 26px;border-radius:999px;text-decoration:none;transition:background .2s,transform .2s}
.ppw-sticky-b:hover{background:#B90D2F;transform:translateY(-1px)}
html:not([data-oto="po"]) body:has(.ppw-sticky){padding-bottom:78px}
html[data-oto="ostatnia"] .ppw-sticky{background:linear-gradient(120deg,#7a0a20,#B90D2F 70%,#D40A32)}
@media (max-width:760px){.ppw-sticky{display:none}html:not([data-oto="po"]) body:has(.ppw-sticky){padding-bottom:0}}
/* chudy nagłówek landinga */
.ppw-hd-chip{display:inline-flex;align-items:center;gap:9px;background:#F3F8FF;border:1px solid #E4EDFA;border-radius:999px;padding:.45em 1.05em;font-size:.84rem;font-weight:600;color:#173460;white-space:nowrap}
.ppw-hd-chip::before{content:"";width:8px;height:8px;border-radius:50%;background:#F00632;flex:none}
@media (max-width:720px){.ppw-hd-chip{display:none}}
/* PAS OTO NA GÓRZE (04.09): „nie zamykaj tej strony" + zegar + przycisk; znika razem z ofertą */
.ppw-oto-gora-zegar{margin:0;display:inline-flex;align-items:baseline;gap:2px;font-family:'Prometo','Poppins',sans-serif;font-size:clamp(1.15rem,3vw,1.5rem);font-weight:700;color:#FFFFFF;font-variant-numeric:tabular-nums}
.ppw-oto-gora-zegar i{font-style:normal;opacity:.7;padding:0 2px}
.ppw-oto-gora-cta{display:inline-flex;align-items:center;gap:8px;background:#FFFFFF;color:#D40A32;border-radius:999px;padding:11px 24px;font-weight:700;font-size:.95rem;text-decoration:none;box-shadow:0 10px 26px rgba(4,16,38,.28);transition:transform .2s,box-shadow .2s}
.ppw-oto-gora-cta:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(4,16,38,.34)}
html[data-oto="po"] .ppw-oto-gora{display:none}
@media (max-width:620px){.ppw-oto-gora .ppw-oto-live{gap:10px 16px}.ppw-oto-gora-cta{width:100%;justify-content:center}}
/* 04.09: na telefonie karta oferty idzie PRZED potwierdzeniem zapisu — inaczej trzeba przewinąć
   ponad ekran, żeby w ogóle zobaczyć, że jest promocja („OTO zdecydowanie do podbicia") */
@media (max-width:900px){
  .ppw-pot-oferta{order:-1;flex-basis:100%;max-width:100%}
  .ppw-pot-tresc{flex-basis:100%}
}
/* mniejszy zegar w karcie oferty przy potwierdzeniu zapisu; karta jest BIAŁA, więc cyfry
   muszą być granatowe — domyślny zegar jest projektowany na ciemne tło i na białym znikał */
/* 04.09 (uwaga właściciela: „»Oferta wygasa za« ma się nijak do odmierzającego czasu"): komponent
   zegara jest projektowany na sekcję WYŚRODKOWANĄ — w karcie oferty etykieta lądowała na środku,
   a cyfry przy lewej krawędzi i wisiały obok siebie bez związku. W karcie ustawiamy je w JEDNYM
   wierszu, do lewej, z paskiem opadania pod spodem. */
.ppw-zegar-mala{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 12px;max-width:none;margin-top:18px}
.ppw-zegar-mala .ppw-zegar-etyk{margin:0;justify-content:flex-start;order:1}
.ppw-zegar-mala .ppw-zegar-cyfry{order:2;font-size:clamp(1.8rem,4.4vw,2.4rem);color:#0D2A5C;text-shadow:none}
.ppw-zegar-mala .ppw-postep{order:3;flex-basis:100%;margin-top:8px;height:7px}
.ppw-zegar-mala .ppw-zegar-etyk{color:#D40A32}
.ppw-zegar-mala .ppw-postep{background:#E4EDFA}
.ppw-zegar-mala .ppw-zegar-etyk{font-size:.78rem}
/* 04.09 (uwaga klientek): „formularz zapisu w wersji mobilnej przenieść wyżej" — na telefonie
   karta zapisu wchodzi PRZED treść hero, żeby pierwszą rzeczą po wejściu był formularz. */
/* 04.09: formularz zapisu siedzi w LEWEJ kolumnie pod nagłówkiem i opisem, zdjęcie założycielek
   w prawej. Na telefonie kolumny układają się jedna pod drugą w tej samej kolejności: tekst,
   formularz, zdjęcie — czyli formularz nadal wchodzi przed zdjęciem. */
@media (max-width:900px){
  .ppw-hero-tresc,.ppw-hero-foto{flex-basis:100%}
  .ppw-hero-foto{max-width:460px;margin:0 auto}
}

/* — propozycja: badanie-ortopodologiczne — */
.c-bd7b84d{position:sticky;top:0;z-index:90;background:#FFFFFF;box-shadow:0 1px 0 rgba(23,52,96,.08)}
.c-84954ce{background:#08224A;color:#c7d6ec;font-size:.82rem}
.c-b207882{max-width:1376px;margin:0 auto;padding:7px clamp(20px,4vw,48px);display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap}
.c-0509d0b{display:flex;gap:20px;flex-wrap:wrap}
.c-d917272{display:inline-flex;align-items:center;gap:7px;color:inherit;text-decoration:none}
.c-d917272:hover{color:#FFFFFF}
.c-40bf2fe{color:inherit;text-decoration:none}
.c-40bf2fe:hover{color:#FFFFFF}
.c-9358c01{max-width:1376px;margin:0 auto;padding:0 clamp(20px,4vw,48px);display:flex;align-items:center;justify-content:space-between;gap:clamp(14px,2vw,30px);min-height:74px}
.c-24a5842{flex:none;display:inline-flex;align-items:center}
.c-89816b6{height:44px;width:auto;display:block}
.c-2e5373e{display:flex;align-items:center;gap:clamp(16px,2vw,26px);flex-wrap:wrap;justify-content:center}
.c-c289b8f{display:flex;align-items:center;gap:13px}
.c-2c471dc{font-size:.66rem;font-weight:700;letter-spacing:.12em;color:rgba(23,52,96,.45);text-transform:uppercase;border:1px solid rgba(23,52,96,.14);border-radius:999px;padding:.3em .7em;flex:none}
.c-1e2b073{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.c-a42dc7c{display:inline-flex}
.c-225fc09{font-size:.93rem;font-weight:500;color:#173460;text-decoration:none;padding:6px 2px}
.c-225fc09:hover{color:#D40A32}
.c-d28f32f{width:1px;height:26px;background:rgba(23,52,96,.14);flex:none}
.c-8c65161{font-size:.93rem;font-weight:700;color:#173460;text-decoration:none;padding:6px 2px;box-shadow:inset 0 -2px 0 #D40A32}
.c-8c65161:hover{color:#D40A32}
.c-ab8da40{display:flex;align-items:center;gap:12px;flex:none}
.c-4d092d3{display:inline-block;background:#D40A32;color:#FFFFFF;font-weight:600;font-size:.95rem;padding:14px 30px;border-radius:999px;text-decoration:none;transition:background .2s,transform .2s;padding:.65em 1.4em;font-size:.9rem}
.c-4d092d3:hover{background:#B90D2F;transform:translateY(-2px)}
.c-d4511ae{list-style:none;cursor:pointer;width:44px;height:44px;border-radius:12px;border:1.5px solid rgba(23,52,96,.2);display:grid;place-items:center}
.c-a40f73a{position:absolute;right:0;top:calc(100% + 10px);width:min(88vw,320px);background:#FFFFFF;border:1px solid rgba(23,52,96,.1);border-radius:18px;box-shadow:0 24px 60px rgba(8,34,74,.18);padding:8px 22px 18px;z-index:99}
.c-19e0e8c{margin:14px 0 6px;font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(23,52,96,.45)}
.c-178524a{display:block;padding:10px 0;font-weight:600;color:#173460;text-decoration:none;border-bottom:1px solid rgba(23,52,96,.07)}
.c-95e54d5{display:inline-block;background:#D40A32;color:#FFFFFF;font-weight:600;font-size:.95rem;padding:14px 30px;border-radius:999px;text-decoration:none;transition:background .2s,transform .2s;display:block;text-align:center;margin-top:16px}
.c-95e54d5:hover{background:#B90D2F;transform:translateY(-2px)}
.c-22aafc6{background:#FFFFFF;border:1px solid rgba(23,52,96,.08);border-radius:22px;box-shadow:0 8px 30px rgba(8,34,74,.06);padding:24px;display:flex;flex-direction:column;gap:8px;text-decoration:none;color:inherit}
.c-22aafc6:hover{transform:translateY(-4px);box-shadow:0 20px 46px rgba(8,34,74,.13)}
.c-32c0b67{margin:0;font-family:'Prometo','Poppins',sans-serif;font-size:1.12rem;font-weight:500;color:#173460;line-height:1.3}
.c-09e9e66{margin:0;font-size:.92rem;line-height:1.6;color:rgba(23,52,96,.78);flex:1}
.c-70bb622{display:inline-flex;align-items:center;gap:9px;font-size:.9rem;font-weight:600;color:#D40A32}
.c-3b16208{max-width:1376px;margin:0 auto;padding:clamp(24px,3.4vw,44px) clamp(20px,4vw,48px)}
.c-5c6a2c8{background:linear-gradient(160deg,#08224A,#173460 55%,#2A4D81);border-radius:24px;padding:clamp(26px,4.4vw,48px);display:flex;flex-wrap:wrap;gap:clamp(24px,4vw,48px)}
.c-e2c1ab6{flex:1 1 380px;min-width:min(100%,300px)}
.c-94b2aa5{margin:0 0 10px;font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#ff8fa3}
.c-951f9f6{margin:0;font-family:'Prometo','Poppins',sans-serif;font-size:clamp(1.3rem,2.4vw,1.8rem);font-weight:500;line-height:1.25;color:#FFFFFF}
.c-242a0ee{list-style:none;margin:16px 0 0;padding:0}
.c-4fac68e{display:flex;gap:10px;margin:0 0 9px;color:#dbe6f6;line-height:1.6;font-size:.94rem}
.c-ef76e47{width:7px;height:7px;flex:none;border-radius:50%;background:#F00632;margin-top:8px}
.c-d2a16bb{flex:1 1 340px;min-width:min(100%,280px);display:flex;flex-direction:column;justify-content:center;gap:16px;border-left:2px solid rgba(159,180,212,.25);padding-left:clamp(20px,3vw,40px)}
.c-ec383bd{margin:0;color:#dbe6f6;font-size:.98rem;line-height:1.7}
.c-4803d86{margin:0}
.c-604ba2d{position:fixed;left:0;right:0;bottom:0;z-index:95;display:none;background:#FFFFFF;box-shadow:0 -6px 24px rgba(8,34,74,.14);padding:10px 14px;gap:10px}
.c-602ffe4{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1.5px solid rgba(23,52,96,.25);border-radius:999px;padding:11px 10px;font-weight:600;font-size:.92rem;color:#173460;text-decoration:none}
.c-e0d4f3a{flex:1.4;display:inline-block;background:#D40A32;color:#FFFFFF;font-weight:600;font-size:.95rem;padding:14px 30px;border-radius:999px;text-decoration:none;transition:background .2s,transform .2s;text-align:center;padding:11px 10px;font-size:.92rem}
.c-e0d4f3a:hover{background:#B90D2F;transform:translateY(-2px)}

/* — propozycja: blog-jak-zostac-podologiem — */
.c-fa52ece{display:flex;flex-wrap:wrap;gap:18px;align-items:stretch;margin-top:48px}
.c-181b6b0{flex:1 1 180px;min-width:min(100%,170px);position:relative;display:flex;flex-direction:column}
.c-669746f{background:#FFFFFF;border:1px solid rgba(23,52,96,.08);border-radius:22px;box-shadow:0 8px 30px rgba(8,34,74,.06);padding:22px 20px;flex:1;display:flex;flex-direction:column;gap:8px;position:relative}
.c-88a3262{width:40px;height:40px;border-radius:999px;border:1.5px solid #486FAB;display:grid;place-items:center;font-weight:700;color:#173460;font-size:.95rem}
.c-131b3d5{margin:2px 0 0;font-family:'Prometo','Poppins',sans-serif;font-size:clamp(1.14rem,1.4vw,1.26rem);font-weight:500;letter-spacing:-0.01em;line-height:1.3;font-size:1.08rem;color:#173460}
.c-f59ebfa{margin:0;font-size:.87rem;line-height:1.55;color:rgba(23,52,96,.78)}
.c-0248e34{height:10px;margin-top:10px;border-radius:8px 8px 4px 4px;background:linear-gradient(120deg,#08224A,#173460 60%,#2A4D81)}
.c-99b7c73{background:#FFFFFF;border:1px solid rgba(23,52,96,.08);border-radius:22px;box-shadow:0 8px 30px rgba(8,34,74,.06);border:1.5px solid rgba(212,10,50,.35);padding:22px 20px;flex:1;display:flex;flex-direction:column;gap:8px;position:relative}
.c-a3791b5{position:absolute;top:-12px;left:50%;transform:translateX(-50%);white-space:nowrap;background:#D40A32;color:#FFFFFF;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:.35em .9em;border-radius:999px}
.c-f36b3d9{height:19px;margin-top:10px;border-radius:8px 8px 4px 4px;background:linear-gradient(120deg,#08224A,#173460 68%,#2A4D81)}
.c-cef311a{height:28px;margin-top:10px;border-radius:8px 8px 4px 4px;background:linear-gradient(120deg,#08224A,#173460 76%,#2A4D81)}
.c-8fee78e{height:37px;margin-top:10px;border-radius:8px 8px 4px 4px;background:linear-gradient(120deg,#08224A,#173460 84%,#2A4D81)}
.c-cbc64ac{height:46px;margin-top:10px;border-radius:8px 8px 4px 4px;background:linear-gradient(120deg,#08224A,#173460 92%,#B90D2F)}
.c-959dd8b{max-width:1116px;margin:0 auto;padding:0 clamp(20px,4vw,48px) clamp(30px,4vw,46px)}
.c-2c414d6{border:1.5px dashed rgba(23,52,96,.3);border-radius:14px;padding:16px 20px;display:flex;gap:12px;align-items:flex-start;background:#F3F8FF}
.c-69501b0{margin:0;font-size:.85rem;line-height:1.6;color:rgba(23,52,96,.78)}

/* — propozycja: dla-fizjoterapeuty — */
.c-6dc4207{margin-top:40px;background:#FFFFFF;border:1px solid rgba(23,52,96,.08);border-radius:22px;box-shadow:0 8px 30px rgba(8,34,74,.06);padding:clamp(26px,4vw,44px);position:relative}
.c-1649a19{margin-bottom:26px}
.c-dbb373a{display:flex;justify-content:space-between;font-size:.8rem;font-weight:600;color:rgba(23,52,96,.78);margin-bottom:8px}
.c-3edb592{height:8px;border-radius:999px;background:#E4EDFA;overflow:hidden}
.c-1b1ac3f{height:100%;width:20%;border-radius:999px;background:linear-gradient(90deg,#173460,#D40A32);transition:width .35s}
.c-063df0e{border:0;padding:0;margin:0 0 26px}
.c-17d88d2{font-weight:600;color:#173460;font-size:1.05rem;margin-bottom:14px;padding:0}
.c-af78787{color:#D40A32;font-weight:700}
.c-c51555f{display:grid;gap:10px}
.c-f3d66cd{display:flex;gap:12px;align-items:flex-start;background:#FFFFFF;border:1.5px solid #E4EDFA;border-radius:14px;padding:14px 16px;cursor:pointer;transition:border-color .2s,box-shadow .2s}
.c-f890f6b{margin-top:4px;accent-color:#D40A32}
.c-93dac01{display:block;color:#173460;font-size:.95rem;font-weight:600}
.c-a3d0860{font-size:.85rem;color:rgba(23,52,96,.78);line-height:1.5}
.c-17e60ea{width:100%;padding:.9em 1em;border:1.5px solid #dbe4f2;border-radius:12px;font:inherit;font-size:.96rem;background:#FFFFFF}
.c-eed304b{background:#F3F8FF;border:1px solid #E4EDFA;border-radius:16px;padding:22px 24px;margin:0 0 24px}
.c-b082dee{margin:0 0 6px;font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#D40A32}
.c-6cba042{margin:0;color:#173460;font-size:1rem;line-height:1.65;font-weight:500}
.c-9417227{margin:0 0 4px;font-weight:600;color:#173460;font-size:1.05rem}
.c-fc841c8{margin:14px 0 0;text-align:center;font-size:.82rem;color:rgba(23,52,96,.78)}
.c-48a0473{display:flex;justify-content:space-between;gap:12px;margin-top:6px}
.c-5b638a1{background:none;border:1.5px solid rgba(23,52,96,.25);border-radius:999px;padding:11px 26px;font:inherit;font-weight:600;color:#173460;cursor:pointer}
.c-a4ff0f7{display:inline-block;background:#D40A32;color:#FFFFFF;font-weight:600;font-size:.95rem;padding:14px 30px;border-radius:999px;text-decoration:none;transition:background .2s,transform .2s;border:0;cursor:pointer;font-family:inherit;padding:11px 30px}
.c-a4ff0f7:hover{background:#B90D2F;transform:translateY(-2px)}

/* — propozycja: pakiet-na-start — */
.c-907a44f{width:56px;height:56px;object-fit:cover;border-radius:50%;box-shadow:0 6px 16px rgba(8,34,74,.16)}
.c-6ba8c26{margin:18px 0 0;text-align:center;font-size:.8rem;color:rgba(23,52,96,.78)}

/* — propozycja: kontakt — */
.c-34e595b{margin:26px 0 0;text-align:center;font-size:.95rem;color:rgba(23,52,96,.78)}
.c-7b5e6cf{color:#D40A32;font-weight:600;text-decoration:none}
.c-1eda31c{width:100%;padding:.9em 1em;border:1.5px solid #dbe4f2;border-radius:12px;font:inherit;font-size:.96rem;background:#FBFCFE;resize:vertical}

/* — propozycja: kacik-medialny — */
.c-32a80b1{display:flex;flex-wrap:wrap;gap:10px;margin-top:36px}
.c-1cba622{display:inline-block;padding:.55em 1.15em;border-radius:999px;font-size:.92rem;font-weight:600;background:#FFFFFF;border:1px solid #E4EDFA;color:#173460}

/* — propozycja: gabinety — */
.c-1e4beed{max-width:1376px;margin:0 auto;padding:clamp(46px,6.1vw,76px) clamp(20px,4vw,48px);padding-top:clamp(30px,4vw,46px)}
.c-23439fe{display:flex;justify-content:space-between;gap:8px;align-items:center;flex-wrap:wrap}
.c-01e1ba5{display:inline-flex;align-items:center;gap:6px;background:#e8f7ee;color:#15803d;font-weight:700;font-size:.68rem;letter-spacing:.05em;text-transform:uppercase;padding:.35em .8em;border-radius:999px}
.c-8350d24{grid-column:1/-1;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:16px}
.c-5ca0b4f{background:#FFFFFF;border:1px solid rgba(23,52,96,.08);border-radius:22px;box-shadow:0 8px 30px rgba(8,34,74,.06);padding:26px}
.c-47ad6b4{margin:0 0 4px;font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#D40A32}
.c-5c2353d{margin:0 0 8px;font-family:'Prometo','Poppins',sans-serif;font-size:1.15rem;font-weight:500;color:#173460;line-height:1.3}
.c-c4bf430{margin:0 0 14px;font-size:.92rem;line-height:1.6;color:rgba(23,52,96,.78)}
.c-c10b379{width:100%;padding:.8em 1em;border:1.5px solid #dbe4f2;border-radius:12px;font:inherit;font-size:.94rem;background:#FBFCFE}
.c-f2c658c{display:flex;gap:9px;align-items:flex-start;font-size:.76rem;line-height:1.5;color:rgba(23,52,96,.78)}
.c-ebec445{margin-top:3px;accent-color:#D40A32}
.c-2a8fff9{display:inline-block;background:#D40A32;color:#FFFFFF;font-weight:600;font-size:.95rem;padding:14px 30px;border-radius:999px;text-decoration:none;transition:background .2s,transform .2s;border:0;cursor:pointer;font-family:inherit;font-size:.92rem;padding:12px 24px}
.c-2a8fff9:hover{background:#B90D2F;transform:translateY(-2px)}
.c-3b30924{background:linear-gradient(150deg,#08224A,#173460 62%,#2A4D81);border-radius:22px;padding:26px;display:flex;flex-direction:column;justify-content:center}
.c-571b9df{margin:0 0 4px;font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#ff8fa3}
.c-1c7f4b2{margin:0 0 8px;font-family:'Prometo','Poppins',sans-serif;font-size:1.15rem;font-weight:500;color:#FFFFFF;line-height:1.3}
.c-0cc449f{margin:0 0 16px;font-size:.92rem;line-height:1.6;color:#dbe6f6}
.c-2393c7e{display:inline-block;background:#D40A32;color:#FFFFFF;font-weight:600;font-size:.95rem;padding:14px 30px;border-radius:999px;text-decoration:none;transition:background .2s,transform .2s;font-size:.92rem}
.c-2393c7e:hover{background:#B90D2F;transform:translateY(-2px)}

/* — propozycja: home — */
.c-f152ef0{max-width:1376px;margin:0 auto;padding:clamp(40px,5.4vw,70px) clamp(20px,4vw,48px)}
.c-90fd8a5{max-width:860px;margin-bottom:clamp(28px,4vw,44px)}
.c-67c7d32{margin:0;font-family:'Prometo','Poppins',sans-serif;font-size:clamp(1.9rem,4vw,3rem);font-weight:500;letter-spacing:-0.01em;line-height:1.12;color:#FFFFFF;text-wrap:pretty}
.c-9b3e00e{margin:14px 0 0;font-size:1.06rem;line-height:1.7;color:#dbe6f6;max-width:38em}
.c-9e31232{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:20px;align-items:stretch}
.c-76f34c2{background:#FFFFFF;border-radius:24px;padding:clamp(26px,3.6vw,40px);display:flex;flex-direction:column;gap:12px;text-decoration:none;color:inherit;box-shadow:0 24px 60px rgba(4,16,38,.35);border-top:5px solid #D40A32}
.c-76f34c2:hover{transform:translateY(-4px)}
.c-2fec06d{margin:0;font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#D40A32}
.c-6aaceea{margin:0;font-family:'Prometo','Poppins',sans-serif;font-size:clamp(1.35rem,2.4vw,1.8rem);font-weight:500;color:#173460;line-height:1.22}
.c-3f693b2{margin:0;font-size:.97rem;line-height:1.65;color:rgba(23,52,96,.78);flex:1}
.c-df110b5{display:inline-block;background:#D40A32;color:#FFFFFF;font-weight:600;font-size:.95rem;padding:14px 30px;border-radius:999px;text-decoration:none;transition:background .2s,transform .2s;align-self:flex-start}
.c-df110b5:hover{background:#B90D2F;transform:translateY(-2px)}
.c-dc19331{background:rgba(255,255,255,.07);border:1.5px solid rgba(243,248,255,.28);border-radius:24px;padding:clamp(26px,3.6vw,40px);display:flex;flex-direction:column;gap:12px;text-decoration:none;color:inherit}
.c-dc19331:hover{background:rgba(255,255,255,.12)}
.c-0198a97{margin:0;font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#ff8fa3}
.c-40e6453{margin:0;font-family:'Prometo','Poppins',sans-serif;font-size:clamp(1.35rem,2.4vw,1.8rem);font-weight:500;color:#FFFFFF;line-height:1.22}
.c-a87875f{margin:0;font-size:.97rem;line-height:1.65;color:#dbe6f6;flex:1}
.c-46fa35a{display:inline-flex;align-items:center;gap:10px;background:transparent;color:#F3F8FF;border:1.5px solid rgba(243,248,255,.4);font-weight:600;font-size:.95rem;padding:12px 26px;border-radius:999px;text-decoration:none;transition:background .25s,border-color .25s;align-self:flex-start}
.c-46fa35a:hover{background:rgba(243,248,255,.1);border-color:rgba(243,248,255,.7)}
.c-8b57ee5{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:20px;margin-top:44px}
.c-5af112d{background:#FFFFFF;border:1px solid rgba(23,52,96,.08);border-radius:22px;box-shadow:0 8px 30px rgba(8,34,74,.06);padding:26px;display:flex;flex-direction:column;gap:10px;text-decoration:none;color:inherit}
.c-5af112d:hover{transform:translateY(-4px);box-shadow:0 20px 46px rgba(8,34,74,.13)}
.c-d4d8616{margin:0;font-family:'Prometo','Poppins',sans-serif;font-size:1.18rem;font-weight:500;color:#173460;line-height:1.3}
.c-80d4267{margin:0;font-size:.93rem;line-height:1.65;color:rgba(23,52,96,.78);flex:1}
.c-dccfef8{display:inline-flex;align-items:center;gap:9px;font-size:.92rem;font-weight:600;color:#D40A32}
.c-cf52963{margin-top:26px;display:flex;flex-wrap:wrap;gap:18px;align-items:center;justify-content:space-between;background:#FFFFFF;border:1px solid #E4EDFA;border-radius:18px;padding:22px 28px}
.c-c937f09{margin:0;flex:1 1 420px;font-size:.97rem;line-height:1.65;color:rgba(23,52,96,.78)}
.c-b6c6445{max-width:760px;margin:36px auto 0}
.c-023194a{position:absolute;left:-9999px}
.c-bcf8f87{width:100%;padding:.9em 1.1em;border:1.5px solid #dbe4f2;border-radius:12px;font:inherit;font-size:.96rem;background:#FFFFFF;flex:1 1 300px}
.c-ecef47f{margin:14px 0 0;font-size:.88rem;color:rgba(23,52,96,.78)}
.c-c1dcc48{display:grid;gap:12px;margin-top:16px}
.c-d6b1656{background:#FFFFFF;border:1px solid rgba(23,52,96,.08);border-radius:22px;box-shadow:0 8px 30px rgba(8,34,74,.06);padding:24px;margin-top:16px}
.c-8c83bb8{margin:0 0 16px;font-size:.93rem;line-height:1.65;color:rgba(23,52,96,.78)}
.c-fa0e74d{display:grid;gap:12px}
.c-4168ac0{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:12px}
.c-83c9c67{display:block;font-size:.85rem;font-weight:600;color:#173460;margin-bottom:6px}
.c-6ef7259{width:100%;padding:.9em 1.1em;border:1.5px solid #dbe4f2;border-radius:12px;font:inherit;font-size:.96rem;background:#FFFFFF}
.c-a2d5677{display:inline-block;background:#D40A32;color:#FFFFFF;font-weight:600;font-size:.95rem;padding:14px 30px;border-radius:999px;text-decoration:none;transition:background .2s,transform .2s;justify-self:start}
.c-a2d5677:hover{background:#B90D2F;transform:translateY(-2px)}
.c-5f49470{margin:18px 0 0;font-size:.9rem;color:rgba(23,52,96,.78)}
.c-0f0459d{color:#D40A32;font-weight:600}
.c-d7cc362{display:flex;flex-wrap:wrap;gap:clamp(20px,3vw,40px);align-items:center;background:#FFFFFF;border:1px solid #E4EDFA;border-radius:22px;padding:clamp(24px,3.4vw,40px)}
.c-6639bf5{height:44px;width:auto;flex:none}
.c-f93ad92{margin:0;flex:1 1 380px;font-size:.98rem;line-height:1.7;color:rgba(23,52,96,.78)}
.c-eb369ea{display:inline-flex;align-items:center;gap:9px;font-size:.95rem;font-weight:600;color:#173460;text-decoration:none;flex:none}
.c-eb369ea:hover{color:#D40A32}

/* — propozycja: o-nas — */
.c-f068acc{display:inline-flex;align-items:center;gap:9px;font-size:.95rem;font-weight:600;color:#173460;text-decoration:none}
.c-f068acc:hover{color:#D40A32}

/* — propozycja: certyfikacja — */
.c-e9a9227{margin-top:36px;overflow-x:auto;-webkit-overflow-scrolling:touch}
.c-6b1f3c7{width:100%;min-width:560px;border-collapse:collapse;background:#FFFFFF;border:1px solid #E4EDFA;border-radius:18px;overflow:hidden}
.c-2e2df8e{padding:13px 16px;text-align:left;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:rgba(23,52,96,.78)}
.c-c56325f{padding:13px 16px}
.c-a0100c0{padding:11px 16px;font-weight:600;color:#173460;font-size:.9rem;border-top:1px solid #E4EDFA;white-space:nowrap}
.c-18c4979{padding:11px 16px;color:rgba(23,52,96,.78);font-size:.9rem;border-top:1px solid #E4EDFA}
.c-df856d0{padding:11px 16px;border-top:1px solid #E4EDFA}
.c-67d4c6f{color:#D40A32;font-weight:600;font-size:.86rem;text-decoration:none}

/* — propozycja: wkladki-na-plaskostopie — */
.c-cc36045{margin-top:40px;overflow-x:auto;-webkit-overflow-scrolling:touch}
.c-fa93c40{width:100%;min-width:760px;border-collapse:collapse;background:#FFFFFF;border:1px solid #E4EDFA;border-radius:20px;overflow:hidden}
.c-eb03992{padding:16px 18px;text-align:left;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:rgba(23,52,96,.78)}
.c-f979044{padding:16px 18px;text-align:left;font-size:.92rem;color:#173460}
.c-bbc4670{padding:16px 18px;text-align:left;font-size:.92rem;color:#FFFFFF;background:#173460;border-radius:14px 14px 0 0}
.c-70fd3bf{padding:14px 18px;font-weight:600;color:#173460;font-size:.92rem;border-top:1px solid #E4EDFA}
.c-84af175{padding:14px 18px;color:rgba(23,52,96,.78);font-size:.92rem;border-top:1px solid #E4EDFA}
.c-6a013f5{padding:14px 18px;color:#173460;font-weight:600;font-size:.92rem;background:rgba(23,52,96,.045);border-top:1px solid #E4EDFA}
.c-a3aa7d5{display:flex;gap:9px;align-items:flex-start}
.c-bd2c0cb{padding:14px 18px;color:#173460;font-weight:600;font-size:.92rem;background:rgba(23,52,96,.045);border-top:1px solid #E4EDFA;border-radius:0 0 14px 14px}
.c-33fbd2f{margin:16px 0 0;font-size:.82rem;color:rgba(23,52,96,.78)}

/* — propozycja: gabinety-koszalin — */
.c-fcdf791{display:grid;gap:16px;margin-top:36px}
.c-c3ae988{background:#FFFFFF;border:1px solid rgba(23,52,96,.08);border-radius:22px;box-shadow:0 8px 30px rgba(8,34,74,.06);padding:clamp(24px,3.4vw,36px);display:flex;flex-wrap:wrap;gap:18px;align-items:center;justify-content:space-between}
.c-f8a70e2{margin:10px 0 4px;font-family:'Prometo','Poppins',sans-serif;font-size:1.3rem;font-weight:500;color:#173460}
.c-30a3b30{margin:0;color:rgba(23,52,96,.78);font-size:.95rem}
.c-37e7cee{display:inline-block;background:#D40A32;color:#FFFFFF;font-weight:600;font-size:.95rem;padding:14px 30px;border-radius:999px;text-decoration:none;transition:background .2s,transform .2s;font-size:.9rem}
.c-37e7cee:hover{background:#B90D2F;transform:translateY(-2px)}

/* — propozycja: stopa-cukrzycowa — */
.c-f149a69{margin:26px 0 0;max-width:56em;font-size:.98rem;line-height:1.7;color:rgba(23,52,96,.78)}

/* — propozycja: szkolenia — */
.c-603d35a{display:flex;flex-wrap:wrap;gap:12px;margin:34px 0 8px;align-items:center}
.c-9ed4e4d{font-weight:600;color:#173460;font-size:.95rem;flex:none}
.c-ea78567{background:#FFFFFF;border:1.5px solid rgba(23,52,96,.25);border-radius:999px;padding:10px 22px;font:inherit;font-weight:600;font-size:.9rem;color:#173460;cursor:pointer;transition:all .2s}
.c-a6ae199{background:#F3F8FF;border:1px solid #E4EDFA;border-radius:14px;padding:16px 20px;margin-bottom:8px}
.c-65bb6db{margin:0;font-size:.94rem;line-height:1.6;color:rgba(23,52,96,.78)}
.c-eb44c72{margin-top:30px;text-align:center}

/* — propozycja: urzadzenia — */
.c-c61d75f{margin-top:30px;display:flex;flex-wrap:wrap;gap:18px;align-items:center;justify-content:space-between;background:#F3F8FF;border:1px solid #E4EDFA;border-radius:18px;padding:22px 28px}

/* — propozycja: wkladki — */
.c-d4b5fe8{margin:0;font-family:'Prometo','Poppins',sans-serif;font-size:1.16rem;font-weight:500;color:#173460;line-height:1.3}
.c-3b2b2dd{background:#FFFFFF;border:1px solid rgba(23,52,96,.08);border-radius:22px;box-shadow:0 8px 30px rgba(8,34,74,.06);padding:24px;display:flex;flex-direction:column;gap:8px;background:#F3F8FF}
.c-9a22768{display:inline-flex;align-items:center;gap:9px;font-size:.92rem;font-weight:600;color:#173460;text-decoration:none}
.c-9a22768:hover{color:#D40A32}
.c-a15bcb6{display:inline-block;padding:.5em 1.05em;border-radius:999px;font-size:.88rem;font-weight:500;line-height:1.3;margin:0 8px 10px 0;background:#FFFFFF;border:1px solid #E4EDFA;color:rgba(23,52,96,.78)}
.c-58e36e5{display:inline-block;padding:.5em 1.05em;border-radius:999px;font-size:.88rem;font-weight:500;line-height:1.3;margin:0 8px 10px 0;background:rgba(212,10,50,.07);color:#D40A32;border:1.5px solid rgba(212,10,50,.25);text-decoration:none;font-weight:600}
.c-58e36e5:hover{background:rgba(212,10,50,.14)}
.c-91ed0e1{margin:14px 0 0;font-size:.85rem;color:rgba(23,52,96,.78)}

/* — propozycja: wspolpraca — */
.c-80a3a23{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:20px;margin-top:44px}
.c-969d81a{background:#FFFFFF;border:1px solid rgba(23,52,96,.08);border-radius:22px;box-shadow:0 8px 30px rgba(8,34,74,.06);padding:26px;position:relative;display:flex;flex-direction:column;gap:10px}
.c-8790066{margin:4px 0 0;font-family:'Prometo','Poppins',sans-serif;font-size:clamp(1.14rem,1.4vw,1.26rem);font-weight:500;letter-spacing:-0.01em;line-height:1.3;color:#173460}
.c-88fa73d{background:#FFFFFF;border:1px solid rgba(23,52,96,.08);border-radius:22px;box-shadow:0 8px 30px rgba(8,34,74,.06);border:1.5px solid rgba(212,10,50,.35);padding:26px;position:relative;display:flex;flex-direction:column;gap:10px}
.c-0d13ed0{position:absolute;top:-12px;right:18px;background:#D40A32;color:#FFFFFF;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:.35em .9em;border-radius:999px}
.c-10534f4{margin-top:40px;display:flex;flex-wrap:wrap;gap:24px;align-items:stretch}
.c-d4e09cc{background:#FFFFFF;border:1px solid rgba(23,52,96,.08);border-radius:22px;box-shadow:0 8px 30px rgba(8,34,74,.06);flex:1 1 380px;min-width:min(100%,300px);padding:clamp(24px,3.4vw,38px)}
.c-59db5b6{display:grid;gap:20px}
.c-363247e{display:block;font-weight:600;font-size:.88rem;color:#173460;margin:0 0 7px}
.c-a151206{width:100%;padding:.85em 1em;border:1.5px solid #dbe4f2;border-radius:12px;font:inherit;font-size:1.02rem;background:#FBFCFE;font-variant-numeric:tabular-nums}
.c-b48cf45{margin:6px 0 0;font-size:.78rem;color:rgba(23,52,96,.78);line-height:1.5}
.c-1e380c5{flex:1 1 380px;min-width:min(100%,300px);background:linear-gradient(160deg,#08224A,#173460 55%,#2A4D81);border-radius:22px;padding:clamp(24px,3.4vw,38px);display:flex;flex-direction:column;justify-content:center;gap:6px}
.c-6737a0a{margin:0;font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#ff8fa3}
.c-b858f4d{display:grid;gap:16px;margin-top:10px}
.c-8052ef7{font-size:clamp(1.9rem,3vw,2.5rem);font-weight:700;color:#FFFFFF;font-variant-numeric:tabular-nums}
.c-104ba32{font-size:.85rem;color:#c9d7ec}
.c-f91aa00{margin:18px 0 0;font-size:.8rem;line-height:1.6;color:#9fb4d4}
.c-0be609f{margin:14px 0 0}
.c-1b0f796{max-width:1376px;margin:0 auto;padding:clamp(46px,6.1vw,76px) clamp(20px,4vw,48px);max-width:1000px}
.c-7abb85b{margin-top:32px;border:1px solid #E4EDFA;border-radius:18px;overflow:hidden;background:#FFFFFF}
.c-86cfc9b{width:100%;height:min(80vh,760px);border:0;display:block}
.c-dccd5b7{margin:16px 0 0;font-size:.9rem;line-height:1.6;color:rgba(23,52,96,.78)}

/* — style wyekstrahowane z home — */
.c-3b30c7a{margin-top:34px}
.c-67d14d9{display:inline-flex;flex:none;margin-right:4px}
.c-b5bb580{width:46px;height:46px;border-radius:999px;object-fit:cover;display:block;border:2px solid #F3F8FF;box-shadow:0 8px 20px rgba(8,34,74,.45)}
.c-d78d426{width:46px;height:46px;border-radius:999px;object-fit:cover;display:block;border:2px solid #F3F8FF;box-shadow:0 8px 20px rgba(8,34,74,.45);margin-left:-12px}
.c-c64337b{line-height:1.4}
.c-22a41aa{color:#F3F8FF;font-weight:600;text-decoration:underline;text-decoration-color:rgba(243,248,255,.35);text-underline-offset:3px}
.c-c308ea2{text-decoration:none;color:inherit}
.c-84302fc{background:#F5F6F8}
.c-af12d33{max-width:1376px;margin:0 auto;padding:clamp(46px,6.1vw,76px) clamp(20px,4vw,48px)}
.c-f2af03b{max-width:820px}
.c-072ea32{margin:0 0 14px;display:flex;align-items:center;gap:12px;font-size:.75rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#D40A32}
.c-87b7621{width:18px;height:3px;border-radius:2px;background:#F00632;flex:none}
.c-6505847{margin:0;font-family:'Prometo','Poppins',sans-serif;font-size:clamp(1.6rem,3vw,2.4rem);font-weight:500;line-height:1.15;letter-spacing:-0.01em;color:#173460;text-wrap:pretty}
.c-7306d78{margin:14px 0 0;font-size:1.02rem;line-height:1.7;color:rgba(23,52,96,.78);max-width:56em}
.c-1f7f6f6{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));gap:20px;margin-top:44px}
.c-4e97e24{background:#FFFFFF;border:1px solid rgba(23,52,96,.08);border-radius:22px;box-shadow:0 8px 30px rgba(8,34,74,.06);padding:26px;display:flex;flex-direction:column;gap:12px}
.c-c399810{width:52px;height:52px;border-radius:14px;background:rgba(212,10,50,.07);display:grid;place-items:center}
.c-32ceabd{margin:4px 0 0;font-family:'Prometo','Poppins',sans-serif;font-size:clamp(1.14rem,1.4vw,1.26rem);font-weight:500;letter-spacing:-0.01em;line-height:1.3;color:#173460;line-height:1.3}
.c-c629ab1{margin:0;font-size:.93rem;line-height:1.65;color:rgba(23,52,96,.78)}
.c-5e100fd{background:#F3F8FF}
.c-7c7fc9f{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:20px;margin-top:44px}
.c-54816b9{margin-top:30px}
.c-9433fc0{display:inline-block;background:#D40A32;color:#FFFFFF;font-weight:600;font-size:.95rem;padding:14px 30px;border-radius:999px;text-decoration:none;transition:background .2s,transform .2s}
.c-9433fc0:hover{background:#B90D2F;transform:translateY(-2px)}
.c-8d6ae7d{background:#FFFFFF}
.c-2527444{margin:22px 0 0;font-size:.95rem;color:rgba(23,52,96,.78);max-width:56em}
.c-8b48492{margin-top:26px}
.c-19ffa6d{position:relative;width:100%;max-width:540px}
.c-630dd60{display:flex;flex-wrap:wrap;gap:clamp(28px,4vw,56px);align-items:center}
.c-67fb2aa{flex:1 1 420px;min-width:min(100%,300px)}
.c-b420772{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr));gap:14px;margin-top:26px}
.c-1bf903b{background:#FFFFFF;border:1px solid rgba(23,52,96,.08);border-radius:22px;box-shadow:0 8px 30px rgba(8,34,74,.06);padding:18px 20px}
.c-2ecdcac{font-family:'Prometo','Poppins',sans-serif;font-size:1.3rem;color:#173460;line-height:1.2}
.c-3c20b5b{margin:6px 0 0;font-size:.86rem;line-height:1.5;color:rgba(23,52,96,.78)}
.c-2018c2f{margin:22px 0 0;font-size:.88rem;color:rgba(23,52,96,.78)}
.c-b7ee44d{margin-top:18px}
.c-bd0da09{display:inline-flex;align-items:center;gap:9px;font-size:.95rem;font-weight:600;color:#173460;text-decoration:none;padding-bottom:4px;transition:color .2s}
.c-bd0da09:hover{color:#D40A32}
.c-7de7b71{flex:1 1 320px;min-width:min(100%,280px)}
.c-864aff1{width:100%;max-width:380px;border-radius:24px;display:block;margin:0 auto;box-shadow:0 18px 44px rgba(8,34,74,.18)}
.c-9c383ed{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* — propozycja: gabinety — */
.c-98b8810{max-width:1376px;margin:0 auto;padding:clamp(46px,6.1vw,76px) clamp(20px,4vw,48px);padding-top:clamp(34px,4.4vw,52px)}

/* — propozycja: wspolpraca — */
.c-447a7c1{display:grid;grid-template-columns:minmax(300px,42%) minmax(0,1fr);gap:clamp(24px,4vw,52px);align-items:center;margin-top:44px}
.c-1f75dd8{background:#FFFFFF;border:1px solid rgba(23,52,96,.08);border-radius:22px;box-shadow:0 8px 30px rgba(8,34,74,.06);padding:22px;max-width:400px;margin:0 auto}
.c-660a60f{color:#D40A32;font-weight:600;font-size:.88rem}
.c-bfb8942{margin:16px auto 0;max-width:400px;text-align:center;font-size:.8rem;line-height:1.55;color:rgba(23,52,96,.78)}
.c-c4d3ae5{display:grid;gap:24px}
.c-774a40f{display:flex;gap:16px;align-items:flex-start}
.c-167d239{flex:none;width:44px;height:44px;border-radius:13px;background:rgba(212,10,50,.07);display:grid;place-items:center}
.c-e3a3e59{margin:0;font-family:'Prometo','Poppins',sans-serif;font-size:clamp(1.14rem,1.4vw,1.26rem);font-weight:500;letter-spacing:-0.01em;line-height:1.3;color:#173460;font-size:1.02rem}
.c-9e919a1{margin:5px 0 0;font-size:.93rem;line-height:1.6;color:rgba(23,52,96,.78)}
.c-11bac95{margin:4px 0 0}

/* — propozycja: wspolpraca — */
.c-66f8e86{margin-top:32px;border:1px solid #E4EDFA;border-radius:18px;overflow:hidden;background:#FFFFFF;min-height:560px}

/* — landing: webinar — */
.c-4d9ba13{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.97);border-bottom:1px solid #E4EDFA;backdrop-filter:saturate(140%) blur(8px)}
.c-1f2b784{max-width:1376px;margin:0 auto;padding:11px clamp(16px,4vw,48px);display:flex;align-items:center;justify-content:space-between;gap:16px}
.c-fcd0d9c{display:flex;align-items:center;flex:none}
.c-3c7e40b{height:38px;width:auto;display:block}
.c-da685ef{display:flex;align-items:center;gap:clamp(10px,2vw,20px)}
.c-0d64642{display:inline-block;background:#D40A32;color:#FFFFFF;font-weight:600;font-size:.95rem;padding:14px 30px;border-radius:999px;text-decoration:none;transition:background .2s,transform .2s;font-size:.9rem;padding:11px 24px}
.c-0d64642:hover{background:#B90D2F;transform:translateY(-2px)}
.c-b9f5ef1{background:linear-gradient(160deg,#08224A,#173460 55%,#2A4D81);position:relative;overflow:hidden}
.c-ef1da3a{position:absolute;inset:-160px auto auto -140px;width:460px;height:460px;border-radius:50%;background:radial-gradient(circle,rgba(240,6,50,.22),transparent 62%)}
.c-aa9f5eb{max-width:1376px;margin:0 auto;padding:clamp(30px,4.4vw,58px) clamp(20px,4vw,48px);display:flex;flex-wrap:wrap;align-items:center;gap:clamp(30px,4.6vw,60px);position:relative}
.c-7370480{flex:1 1 520px;min-width:min(100%,320px)}
.c-6a1cd6d{margin:0;font-family:'Prometo','Poppins',sans-serif;font-size:clamp(1.85rem,3.9vw,2.9rem);font-weight:500;letter-spacing:-0.01em;line-height:1.12;color:#FFFFFF;text-wrap:pretty}
.c-265a74f{margin:14px 0 0;font-size:1.02rem;line-height:1.7;color:#dbe6f6;max-width:56em;font-size:1.08rem;max-width:32em}
.c-13ff764{list-style:none;margin:26px 0 0;padding:0;max-width:34em}
.c-74ad9f7{display:flex;gap:12px;margin:0 0 11px;color:#dbe6f6;line-height:1.6;font-size:1rem}
.c-14d8901{display:flex;align-items:center;gap:14px;margin-top:28px;flex-wrap:wrap}
.c-056ce98{display:flex;align-items:center}
.c-95db181{width:52px;height:52px;border-radius:50%;object-fit:cover;border:2px solid rgba(243,248,255,.55);margin-left:0px;box-shadow:0 8px 20px rgba(0,0,0,.3)}
.c-ced49c8{width:52px;height:52px;border-radius:50%;object-fit:cover;border:2px solid rgba(243,248,255,.55);margin-left:-14px;box-shadow:0 8px 20px rgba(0,0,0,.3)}
.c-064c91c{font-size:.92rem;line-height:1.5;color:#c7d6ec}
.c-09a1db8{color:#FFFFFF;font-weight:600}
.c-a5c8de9{flex:0 1 452px;min-width:min(100%,300px)}
.c-105ce8f{background:#FFFFFF;border-radius:26px;box-shadow:0 34px 80px rgba(4,16,38,.42);padding:clamp(24px,3.1vw,34px)}
.c-ea68655{margin:0 0 4px;font-family:'Prometo','Poppins',sans-serif;font-size:clamp(1.3rem,2.2vw,1.6rem);font-weight:500;line-height:1.2;color:#173460}
.c-c71637b{display:block;font-weight:600;font-size:.86rem;color:#173460;margin:14px 0 7px}
.c-7513993{width:100%;padding:.92em 1em .92em 2.9em;border:1.5px solid #dbe4f2;border-radius:12px;font:inherit;font-size:1rem;background:#FBFCFE;transition:border-color .2s,box-shadow .2s}
.c-f63f740{display:inline-block;background:#D40A32;color:#FFFFFF;font-weight:600;font-size:.95rem;padding:14px 30px;border-radius:999px;text-decoration:none;transition:background .2s,transform .2s;border:0;cursor:pointer;font-family:inherit;width:100%;text-align:center;font-size:1.02rem;font-weight:700;padding:16px 30px;background:linear-gradient(120deg,#E00E36,#B90D2F)}
.c-f63f740:hover{background:#B90D2F;transform:translateY(-2px)}
.c-8fef160{margin:14px 0 0;font-size:.8rem;line-height:1.55;color:#5b6b7c;text-align:center}
.c-39ad4f1{max-width:1376px;margin:0 auto;padding:13px clamp(20px,4vw,48px)}
.c-a3be8ca{max-width:1376px;margin:0 auto;padding:0 clamp(20px,4vw,48px) clamp(34px,4.4vw,56px);text-align:center}
.c-8624322{margin:0 auto;max-width:44em;font-size:1.06rem;line-height:1.7;color:rgba(23,52,96,.78)}
.c-75cc903{margin:24px 0 0}
.c-3db2b16{margin:16px 0 0;font-size:.88rem;color:rgba(23,52,96,.78)}
.c-7d32f02{max-width:820px;margin:0 auto clamp(30px,3.8vw,44px);text-align:center}
.c-a3ef01f{margin:0;font-family:'Prometo','Poppins',sans-serif;font-size:clamp(1.6rem,3vw,2.4rem);font-weight:500;line-height:1.15;letter-spacing:-0.01em;color:#173460;text-wrap:pretty;font-size:clamp(1.7rem,3.3vw,2.5rem)}
.c-6dd70c8{display:flex;flex-wrap:wrap;gap:clamp(20px,2.6vw,32px);align-items:stretch;justify-content:center}
.c-ff6449d{flex:1 1 420px;min-width:min(100%,300px);max-width:560px;background:#FFFFFF;border:1px solid rgba(23,52,96,.08);border-radius:22px;box-shadow:0 8px 30px rgba(8,34,74,.06);border-radius:26px;padding:clamp(24px,3.1vw,36px)}
.c-61ffc84{flex:1 1 380px;min-width:min(100%,300px);max-width:480px;background:linear-gradient(160deg,#08224A,#173460 55%,#2A4D81);border-radius:26px;padding:clamp(24px,3.1vw,36px);display:flex;flex-direction:column}
.c-bb80f19{display:flex;gap:14px;align-items:flex-start;padding:16px 0;border-top:1px solid rgba(159,180,212,.22)}
.c-30df610{width:42px;height:42px;flex:none;border-radius:13px;background:rgba(255,255,255,.09);display:grid;place-items:center}
.c-dc4d63f{margin:0;font-size:.78rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#9fb4d4}
.c-9179927{margin:3px 0 0;font-size:1.02rem;font-weight:600;color:#FFFFFF;line-height:1.4}

/* — landing: webinar-dziekujemy — */
.c-d1b7e28{background:linear-gradient(160deg,#08224A,#173460 58%,#2A4D81);position:relative;overflow:hidden}
.c-468186b{position:absolute;inset:auto -120px -180px auto;width:460px;height:460px;border-radius:50%;background:radial-gradient(circle,rgba(240,6,50,.2),transparent 65%)}
.c-8fd0604{max-width:1376px;margin:0 auto;padding:clamp(34px,4.6vw,60px) clamp(20px,4vw,48px);display:flex;flex-wrap:wrap;gap:clamp(28px,4vw,56px);align-items:center;position:relative}
.c-307573c{flex:1 1 480px;min-width:min(100%,300px)}
.c-2ae79eb{margin:0 0 16px;display:inline-flex;align-items:center;gap:11px;background:rgba(21,128,61,.18);border:1.5px solid rgba(74,222,128,.45);border-radius:999px;padding:.5em 1.15em;color:#bbf7d0;font-weight:600;font-size:.88rem}
.c-3992c81{width:20px;height:20px;border-radius:50%;background:#22c55e;color:#052e16;display:grid;place-items:center;font-weight:800;font-size:.68rem}
.c-ef099df{margin:0;font-family:'Prometo','Poppins',sans-serif;font-size:clamp(1.8rem,3.6vw,2.7rem);font-weight:500;letter-spacing:-0.01em;line-height:1.14;color:#FFFFFF;text-wrap:pretty}
.c-bcc9cf9{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.c-d5dbab6{flex:1 1 380px;min-width:min(100%,290px);max-width:520px;background:rgba(255,255,255,.07);border:1px solid rgba(243,248,255,.16);border-radius:24px;padding:clamp(24px,3vw,34px)}
.c-0f20ae7{margin:0 0 6px;font-size:.78rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#ff8fa3}
.c-bde7ccf{margin:0 0 20px;font-family:'Prometo','Poppins',sans-serif;font-size:1.28rem;font-weight:500;color:#FFFFFF;line-height:1.3}
.c-07c772a{list-style:none;margin:0;padding:0}
.c-23fd6e5{display:flex;gap:14px;align-items:flex-start;margin:0 0 14px}
.c-081bd84{width:28px;height:28px;flex:none;border-radius:50%;background:rgba(255,255,255,.12);color:#FFFFFF;display:grid;place-items:center;font-weight:700;font-size:.82rem}
.c-dacd661{color:#dbe6f6;font-size:1rem;line-height:1.65}
.c-20e3ade{background:linear-gradient(120deg,#08224A,#173460 70%,#2A4D81)}
.c-7488ad0{max-width:1376px;margin:0 auto;padding:clamp(26px,3.4vw,42px) clamp(20px,4vw,48px)}
.c-db3d186{display:flex;flex-wrap:wrap;gap:clamp(20px,3vw,40px);align-items:center;justify-content:center;text-align:center}
.c-d6a64be{flex:1 1 460px;min-width:min(100%,280px);max-width:640px}
.c-ecf8b3b{margin:0;font-family:'Prometo','Poppins',sans-serif;font-size:clamp(1.6rem,3vw,2.4rem);font-weight:500;line-height:1.15;letter-spacing:-0.01em;color:#FFFFFF;text-wrap:pretty;font-size:clamp(1.4rem,2.6vw,2rem)}
.c-5dd3643{margin:14px 0 0;font-size:1.02rem;line-height:1.7;color:#dbe6f6;max-width:56em;font-size:.99rem;margin-left:auto;margin-right:auto;max-width:40em}
.c-81a9c8d{flex:0 1 300px;min-width:min(100%,260px)}
.c-5f12f6c{color:#ff8fa3}
.c-9ec0567{max-width:1376px;margin:0 auto;padding:clamp(38px,5vw,66px) clamp(20px,4vw,48px)}
.c-30f94d0{background:#FFFFFF;border:1px solid rgba(23,52,96,.08);border-radius:22px;box-shadow:0 8px 30px rgba(8,34,74,.06);border:1.5px solid rgba(212,10,50,.22);border-radius:28px;box-shadow:0 28px 70px rgba(8,34,74,.14);overflow:hidden;display:flex;flex-wrap:wrap}
.c-c5cdb2a{flex:1 1 360px;min-width:min(100%,280px);background:#F3F8FF;display:grid;place-items:center;padding:clamp(22px,3vw,36px)}
.c-32ecd0b{width:100%;max-width:420px;height:auto;border-radius:18px;display:block;box-shadow:0 18px 44px rgba(8,34,74,.16)}
.c-14186eb{flex:1 1 460px;min-width:min(100%,300px);padding:clamp(26px,3.4vw,44px)}
.c-538f2bd{margin:0;font-family:'Prometo','Poppins',sans-serif;font-size:clamp(1.6rem,3vw,2.4rem);font-weight:500;line-height:1.15;letter-spacing:-0.01em;color:#173460;text-wrap:pretty;font-size:clamp(1.4rem,2.5vw,1.95rem)}
.c-4ea7b26{margin:14px 0 0;font-size:1.02rem;line-height:1.7;color:rgba(23,52,96,.78);max-width:56em;font-size:.99rem}
.c-f8d5627{display:flex;align-items:baseline;flex-wrap:wrap;gap:14px;margin:26px 0 0}
.c-7234dff{font-size:1.2rem;color:#5b6b7c;text-decoration-thickness:2px}
.c-502951a{font-family:'Prometo','Poppins',sans-serif;font-size:clamp(2.2rem,4.6vw,3.1rem);font-weight:500;letter-spacing:-0.02em;color:#173460;line-height:1}
.c-6f77363{display:inline-flex;align-items:center;background:rgba(212,10,50,.08);border:1.5px solid rgba(212,10,50,.25);color:#D40A32;font-weight:700;font-size:.86rem;padding:.45em 1em;border-radius:999px}
.c-13cd7c4{margin:10px 0 0;font-size:.78rem;color:#5b6b7c}
.c-241a3c0{font-weight:600}
.c-fba3307{list-style:none;margin:24px 0 0;padding:0}
.c-9585ac0{display:flex;gap:12px;margin:0 0 13px;color:rgba(23,52,96,.78);line-height:1.6;font-size:.98rem}
.c-de88c6f{margin:26px 0 0}
.c-d37d2b3{display:inline-block;background:#D40A32;color:#FFFFFF;font-weight:600;font-size:.95rem;padding:14px 30px;border-radius:999px;text-decoration:none;transition:background .2s,transform .2s;font-size:1.05rem;font-weight:700;padding:17px 38px;width:100%;text-align:center;box-sizing:border-box}
.c-d37d2b3:hover{background:#B90D2F;transform:translateY(-2px)}
.c-533efae{margin:18px 0 0;display:flex;flex-wrap:wrap;align-items:center;gap:10px;background:#F3F8FF;border:1px dashed rgba(212,10,50,.4);border-radius:14px;padding:12px 16px}
.c-7bda6e2{font-size:.85rem;color:rgba(23,52,96,.78)}
.c-7328f3e{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1.02rem;font-weight:700;letter-spacing:.06em;color:#173460}
.c-b4bc5f6{flex:1 1 100%;font-size:.8rem;color:#5b6b7c}
.c-602f0e8{margin:16px 0 0;font-size:.82rem;line-height:1.6;color:#5b6b7c}
.c-0d37c5a{margin:0 0 12px;font-weight:600;color:#173460;font-size:1.02rem}
.c-7edbc0d{margin:0;font-family:'Prometo','Poppins',sans-serif;font-size:clamp(1.6rem,3vw,2.4rem);font-weight:500;line-height:1.15;letter-spacing:-0.01em;color:#FFFFFF;text-wrap:pretty;font-size:clamp(1.6rem,3.2vw,2.4rem);max-width:22em;margin:0 auto}
.c-670778b{margin:26px 0 0;display:flex;justify-content:center;gap:10px;align-items:baseline;flex-wrap:wrap}
.c-e409357{font-size:.9rem;color:#c7d6ec}
.c-b0fcecd{margin:22px 0 0}
.c-fe28062{display:inline-block;background:#D40A32;color:#FFFFFF;font-weight:600;font-size:.95rem;padding:14px 30px;border-radius:999px;text-decoration:none;transition:background .2s,transform .2s;font-size:1.05rem;font-weight:700;padding:17px 40px}
.c-fe28062:hover{background:#B90D2F;transform:translateY(-2px)}
.c-460731c{margin:18px 0 0;font-size:.84rem;color:#c7d6ec}
.c-28e44fb{margin:0 0 14px;font-size:1.02rem;color:#dbe6f6}

/* — landing: webinar-dziekujemy — */
.c-e752a59{text-align:center;max-width:44em;margin:0 auto}
.c-4d81586{margin:0;font-family:'Prometo','Poppins',sans-serif;font-size:clamp(1.6rem,3vw,2.4rem);font-weight:500;line-height:1.15;letter-spacing:-0.01em;color:#FFFFFF;text-wrap:pretty;font-size:clamp(1.3rem,2.4vw,1.8rem)}
.c-23c481e{margin:14px 0 0;font-size:1.02rem;line-height:1.7;color:#dbe6f6;max-width:56em;font-size:.99rem;margin-left:auto;margin-right:auto}

/* — landing: webinar — */
.c-44f2d5e{margin:20px 0 0;font-size:.85rem;line-height:1.6;color:rgba(23,52,96,.78)}

/* — landing: webinar — */
.c-93a9a12{display:inline-block;background:#D40A32;color:#FFFFFF;font-weight:600;font-size:.95rem;padding:14px 30px;border-radius:999px;text-decoration:none;transition:background .2s,transform .2s;font-size:1.06rem;font-weight:700;padding:18px 42px}
.c-93a9a12:hover{background:#B90D2F;transform:translateY(-2px)}

/* — landing: webinar-dziekujemy — */
.c-02097b9{background:linear-gradient(125deg,#08224A,#173460 62%,#2A4D81)}
.c-054e72e{max-width:1376px;margin:0 auto;padding:clamp(30px,4vw,52px) clamp(20px,4vw,48px)}
.c-6807256{max-width:900px;margin:0 auto;text-align:center}
.c-9bb8be6{margin:0;font-family:'Prometo','Poppins',sans-serif;font-size:clamp(1.6rem,3vw,2.4rem);font-weight:500;line-height:1.15;letter-spacing:-0.01em;color:#FFFFFF;text-wrap:pretty;font-size:clamp(1.6rem,3.4vw,2.5rem);margin-left:auto;margin-right:auto;max-width:20em}
.c-45a2b15{margin:14px 0 0;font-size:1.02rem;line-height:1.7;color:#dbe6f6;max-width:56em;font-size:1.02rem;margin-left:auto;margin-right:auto;max-width:44em}
.c-47985bd{display:inline-block;background:#D40A32;color:#FFFFFF;font-weight:600;font-size:.95rem;padding:14px 30px;border-radius:999px;text-decoration:none;transition:background .2s,transform .2s;font-size:1.05rem;font-weight:700;padding:16px 38px}
.c-47985bd:hover{background:#B90D2F;transform:translateY(-2px)}
.c-cd0f13d{flex:1 1 360px;min-width:min(100%,280px);background:#F3F8FF;display:grid;place-items:center;padding:clamp(22px,3vw,36px);position:relative}

/* — landing: webinar — */
.c-ab4de10{display:inline-block;background:#D40A32;color:#FFFFFF;font-weight:600;font-size:.95rem;padding:14px 30px;border-radius:999px;text-decoration:none;transition:background .2s,transform .2s;border:0;cursor:pointer;font-family:inherit;width:100%;text-align:center;font-size:1.02rem;font-weight:700;padding:16px 30px;background-color:#D40A32;background-image:linear-gradient(120deg,#E00E36,#B90D2F);transition:background-color .2s,transform .2s}
.c-ab4de10:hover{background-color:#B90D2F;background-image:linear-gradient(120deg,#C40E31,#9E0B29);transform:translateY(-2px)}

/* — landing: webinar — */
.c-fc45253{margin:30px 0 0;border-radius:22px;overflow:hidden;max-width:min(100%,460px);box-shadow:0 26px 60px rgba(4,16,38,.4)}
.c-f69469c{position:relative;width:clamp(140px,17vw,190px);margin:0 auto 24px}
.c-b4b71b2{margin:0 0 4px;text-align:center;font-family:'Prometo','Poppins',sans-serif;font-size:clamp(1.2rem,2.2vw,1.55rem);font-weight:500;line-height:1.2;color:#FFFFFF}
.c-29d0489{margin:0 0 14px;text-align:center;color:#F00632;font-weight:600;font-size:.92rem}
.c-1de1f95{margin:36px 0 0;text-align:center}

/* — landing: webinar-dziekujemy — */
.c-2fa9734{background:linear-gradient(100deg,#D40A32,#8f0620)}
.c-768f30e{max-width:1376px;margin:0 auto;padding:14px clamp(20px,4vw,48px);display:flex;flex-wrap:wrap;gap:14px 26px;align-items:center;justify-content:center;text-align:center}
.c-5bd681f{margin:0;color:#FFFFFF;font-size:clamp(.98rem,2.4vw,1.12rem);font-weight:700;line-height:1.35}
.c-5c341d1{flex:1 1 400px;min-width:min(100%,290px);max-width:540px;background:#FFFFFF;border-radius:26px;padding:clamp(24px,3vw,34px);box-shadow:0 30px 70px rgba(4,16,38,.4)}
.c-58df0f1{margin:0 0 12px}
.c-8499c56{margin:0 0 10px;font-family:'Prometo','Poppins',sans-serif;font-size:clamp(1.2rem,2.2vw,1.5rem);font-weight:500;line-height:1.25;color:#173460}
.c-d08838d{margin:0 0 18px;color:rgba(23,52,96,.78);font-size:.98rem;line-height:1.65}
.c-698dca1{margin:0;display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.c-e48417d{font-family:'Prometo','Poppins',sans-serif;font-size:clamp(2rem,4vw,2.6rem);font-weight:600;color:#173460}
.c-0dabff4{color:rgba(23,52,96,.78);font-size:1.05rem}
.c-4c69702{background:#FDE7EC;color:#D40A32;border-radius:999px;padding:.32em .9em;font-weight:700;font-size:.85rem}
.c-07ca9dd{display:inline-block;background:#D40A32;color:#FFFFFF;font-weight:600;font-size:.95rem;padding:14px 30px;border-radius:999px;text-decoration:none;transition:background .2s,transform .2s;width:100%;justify-content:center;font-size:1.02rem;font-weight:700}
.c-07ca9dd:hover{background:#B90D2F;transform:translateY(-2px)}

/* — landing: webinar — */
.c-c05fddc{display:none}

/* — landing: webinar — */
.c-2467216{flex:1 1 560px;min-width:min(100%,320px)}
.c-d434696{margin-top:clamp(26px,3vw,34px);max-width:520px}
.c-cc39d70{margin:0;border-radius:26px;overflow:hidden;box-shadow:0 30px 70px rgba(4,16,38,.42)}

/* — landing: webinar — */
.c-99b7a61{border-radius:26px;overflow:hidden;box-shadow:0 30px 70px rgba(4,16,38,.42)}
.c-5d2f644{margin:18px auto 0;max-width:26em;text-align:center;font-size:.95rem;line-height:1.5;color:#c7d6ec}
.c-1862d34{display:block;margin-top:4px;font-size:1.12rem;line-height:1.4;color:#FFFFFF;font-weight:600}

/* — landing: webinar — */
.c-f7006b3{background:#0D2A5C;color:#c7d6ec}
.c-c2d53d7{max-width:1376px;margin:0 auto;padding:clamp(30px,4vw,48px) clamp(20px,4vw,48px);display:flex;flex-wrap:wrap;gap:22px 40px;align-items:center;justify-content:space-between}
.c-7939491{height:34px;width:auto;display:block;margin-bottom:14px}
.c-6982ce7{margin:0;font-size:.86rem;line-height:1.65}
.c-47e8c84{color:#FFFFFF;text-decoration:underline;text-underline-offset:3px}
.c-d021147{flex:0 1 auto;display:flex;flex-wrap:wrap;gap:10px 26px;align-items:center;font-size:.86rem}

/* — landing: webinar — */
.c-582573d{margin:18px auto 0;max-width:26em;text-align:center;font-size:.95rem;line-height:1.5;color:#c7d6ec;text-wrap:balance}
