/* podstrony SEMFLEX w języku głównej: hero z kadrem, menu sekcji, bloki z własną wizją */
.p-hero{position:relative;min-height:78svh;display:flex;align-items:flex-end;margin-top:-72px;padding-top:72px;padding-bottom:var(--s-8);overflow:hidden}
.p-hero .kv{position:absolute;inset:0;z-index:0}
.p-hero .kv img{width:100%;height:100%;object-fit:cover}
.p-hero::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(to bottom,rgba(11,12,11,.7) 0,rgba(11,12,11,0) 140px),linear-gradient(to top,rgba(11,12,11,.95) 0,rgba(11,12,11,.55) 42%,rgba(11,12,11,0) 72%)}
.p-hero__tekst{position:relative;z-index:2;width:100%}
.p-h1{font-size:clamp(var(--t-36),5.4vw,var(--t-72));line-height:1;letter-spacing:-.02em;font-weight:800;font-variation-settings:'wdth' 104;max-width:16em}
.p-hero .lead{margin-top:var(--s-5)}

/* menu sekcji: przyklejone pod nagłówkiem, czerwony wskaźnik aktywnej */
.usl-menu{position:sticky;top:72px;z-index:15;background:var(--tusz);border-bottom:1px solid var(--linia);padding-top:0;padding-bottom:0}
.usl-menu ul{list-style:none;margin:0;padding:0;display:flex;gap:var(--s-5);overflow-x:auto;scrollbar-width:none}
.usl-menu ul::-webkit-scrollbar{display:none}
.usl-menu a{position:relative;display:inline-flex;align-items:center;min-height:48px;white-space:nowrap;text-decoration:none;font-size:var(--t-14);font-weight:600;color:var(--t2)}
.usl-menu a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--czerwien);transform:scaleX(0);transform-origin:left;transition:transform 500ms var(--ease)}
.usl-menu a.akt{color:var(--biel)}
.usl-menu a.akt::after{transform:none}

/* bloki usług */
.usl-blok{border-top:1px solid var(--linia);scroll-margin-top:128px}
.usl-blok__siatka{display:grid;gap:var(--s-7)}
.usl-nr{display:block;font-size:var(--t-48);line-height:1;font-weight:800;letter-spacing:-.02em;font-variation-settings:'wdth' 112;color:var(--czerwien);margin-bottom:var(--s-3)}
.usl-proza{margin-top:var(--s-5)}
.usl-proza p,.usl-proza li{color:var(--t2);max-width:34em}
.usl-proza p+p{margin-top:var(--s-4)}
.usl-proza h3{margin-top:var(--s-7);margin-bottom:var(--s-3);font-size:var(--h3);line-height:1.2;font-weight:700}
.usl-proza ul{list-style:none;padding:0;margin:var(--s-3) 0 0;display:grid;gap:0}
.usl-proza li{border-top:1px solid var(--linia);padding-top:var(--s-3);padding-bottom:var(--s-3)}
.usl-proza ul+p{margin-top:var(--s-5)}
.usl-proza strong{color:var(--biel);font-weight:700}
.usl-proza a{color:var(--biel);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.22em}
.usl-wizja{position:relative;overflow:hidden;aspect-ratio:4/5;background:var(--tusz)}
.usl-wizja picture{display:block;height:100%}
.usl-wizja img{width:100%;height:100%;object-fit:cover}
.usl-typo{list-style:none;margin:0;padding:0;display:grid;gap:var(--s-2);font-weight:800;letter-spacing:-.02em;line-height:1;font-size:clamp(var(--t-30),3.6vw,var(--t-48));font-variation-settings:'wdth' 100;color:#5E5F5B}
.usl-typo li:nth-child(odd){font-variation-settings:'wdth' 120}
.usl-typo .akcent{color:var(--czerwien)}
.usl-typo--duze{font-size:clamp(var(--t-72),12vw,180px);font-weight:800;line-height:.9;color:var(--czerwien);letter-spacing:-.03em}
.js .usl-typo li{clip-path:inset(0 100% 0 0);transition:clip-path 900ms var(--ease)}
.js .usl-typo.widoczny li{clip-path:inset(-10% -2% -10% 0)}
.js .usl-typo.widoczny li:nth-child(2){transition-delay:80ms}.js .usl-typo.widoczny li:nth-child(3){transition-delay:160ms}
.js .usl-typo.widoczny li:nth-child(4){transition-delay:240ms}.js .usl-typo.widoczny li:nth-child(5){transition-delay:320ms}
.js .usl-typo.widoczny li:nth-child(6){transition-delay:400ms}.js .usl-typo.widoczny li:nth-child(7){transition-delay:480ms}
@media (min-width:900px){
  .usl-blok__siatka{grid-template-columns:repeat(12,1fr);column-gap:var(--s-5);align-items:start}
  .usl-blok__wizja{grid-column:1/6;position:sticky;top:152px}
  .usl-blok__tresc{grid-column:7/13}
  .usl-wizja{aspect-ratio:auto;height:calc(100svh - 220px);max-height:720px}
}
.faq{margin-top:var(--s-6);max-width:52em}
.faq details{border-top:1px solid var(--linia)}
.faq summary{min-height:56px;display:flex;align-items:center;cursor:pointer;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary h3{margin:0;font-size:var(--t-18);line-height:1.35;font-weight:700}
.faq details[open] summary h3{color:var(--czerwien)}
.faq p{padding-bottom:var(--s-5);color:var(--t2);max-width:40em}
.usl-cta{border-top:1px solid var(--linia)}
@media (prefers-reduced-motion:reduce){.js .usl-typo li{clip-path:none}}

/* ═══ podstrony wspólne: hero bez kadru, akcja na końcu bloku ═══ */
.p-hero--tekst{min-height:auto;padding-top:calc(72px + var(--s-9));padding-bottom:var(--s-8);border-bottom:1px solid var(--linia)}
.p-hero--tekst::after{display:none}
.nav__menu a[aria-current="page"]{text-decoration:underline;text-underline-offset:.22em;text-decoration-thickness:2px;text-decoration-color:var(--czerwien)}
.usl-blok--bez-wizji{border-top:0;padding-top:var(--s-7)}
@media (min-width:900px){.usl-blok--bez-wizji .usl-blok__tresc{grid-column:7/13}}

/* ═══ O MNIE: portret na krawędzi ramy, cytat jako typografia, tabliczka faktów ═══ */
.o-hero{margin-top:-72px;padding-top:calc(72px + var(--s-7));padding-bottom:var(--s-8)}
.o-hero__siatka{display:grid;gap:var(--s-5)}
@media (max-width:899px){.o-hero{padding-top:calc(72px + var(--s-4))}.o-portret{order:-1;aspect-ratio:auto;height:min(28svh,360px)}.o-portret img{object-position:50% 12%}}
.o-hero .lead{margin-top:var(--s-5)}
.o-portret{margin:0;position:relative;aspect-ratio:4/5;overflow:hidden;background:var(--pow)}
.o-portret img{width:100%;height:100%;object-fit:cover;object-position:50% 0}
.o-portret::after{content:"";position:absolute;left:0;bottom:0;height:8px;width:38%;background:var(--czerwien);transform-origin:left;animation:pas 900ms var(--ease) 600ms both}
@media (min-width:900px){
  .o-hero__siatka{grid-template-columns:repeat(12,1fr);column-gap:var(--s-5);align-items:end}
  .o-hero__tekst{grid-column:1/8;padding-bottom:var(--s-5)}
  .o-portret{grid-column:9/13;max-width:520px;justify-self:end;width:100%}
}
.o-cytat{border-top:1px solid var(--linia)}
.o-cytat p{font-size:clamp(var(--t-30),3.6vw,var(--t-48));line-height:1.04;font-weight:800;letter-spacing:-.02em;font-variation-settings:'wdth' 104;max-width:18em;color:var(--biel)}
.o-para{border-top:1px solid var(--linia)}
.o-para__siatka{display:grid;gap:var(--s-8)}
.o-para .usl-proza{margin-top:var(--s-4)}
.o-akcja{margin-top:var(--s-6)}
@media (min-width:900px){.o-para__siatka{grid-template-columns:repeat(3,1fr);column-gap:var(--s-7)}}
.o-fakty{border-top:1px solid var(--linia)}
.o-fakty .lead{margin-top:var(--s-4)}
.tabliczka{margin-top:var(--s-7);display:grid;grid-template-columns:1fr;border-top:2px solid var(--biel)}
.tabliczka div{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);column-gap:var(--s-5);padding-top:var(--s-3);padding-bottom:var(--s-3);border-bottom:1px solid var(--linia)}
.tabliczka dt{color:var(--t3);font-size:var(--t-14);line-height:1.6}
.tabliczka dd{margin:0;font-size:var(--t-16);font-variant-numeric:tabular-nums}
.tabliczka a{color:var(--biel)}
@media (min-width:900px){.tabliczka{grid-template-columns:1fr 1fr;column-gap:var(--s-5)}}
@media (prefers-reduced-motion:reduce){.o-portret::after{animation:none}}
#zespol .usl-wizja img{object-position:66% 50%}

/* ═══ KONTAKT: adres i telefon jako duże pismo, dane w tabliczce ═══ */
.k-hero .p-h1 .l{display:block}
.k-siatka{display:grid;gap:var(--s-8)}
.k-lewa .lead{margin-top:var(--s-5)}
.k-kanaly{margin-top:var(--s-6);display:grid;gap:var(--s-2)}
.k-mail,.k-tel{display:inline-flex;align-items:center;min-height:48px;justify-self:start;font-weight:800;letter-spacing:-.02em;line-height:1.05;font-variation-settings:'wdth' 104;text-decoration:none;
  background:linear-gradient(var(--czerwien),var(--czerwien)) left 100%/100% 3px no-repeat;transition:background-size 400ms var(--ease)}
.k-mail{font-size:clamp(var(--t-30),4.4vw,var(--t-60));color:var(--biel)}
.k-tel{font-size:clamp(var(--t-24),3vw,var(--t-36));color:var(--t2);background-size:0 3px}
.k-mail:hover{background-size:0 3px}.k-tel:hover{background-size:100% 3px}
.k-h3{margin-top:var(--s-7);font-size:var(--h3);line-height:1.2;font-weight:700;letter-spacing:0}
.k-prawa>.k-h3:first-child{margin-top:0}
.k-lista{margin-top:var(--s-3)}
.k-lista li,.e-lista li{border-top:1px solid var(--linia);padding-top:var(--s-3);padding-bottom:var(--s-3);color:var(--t2);max-width:34em}
.k-prawa .usl-proza{margin-top:var(--s-3)}
.tabliczka--jedna{grid-template-columns:1fr!important;margin-top:var(--s-4)}
@media (min-width:900px){
  .k-siatka{grid-template-columns:repeat(12,1fr);column-gap:var(--s-5)}
  .k-lewa{grid-column:1/7}
  .k-prawa{grid-column:8/13}
}

/* ═══ PROCES: numer kroku i nagłówek przyklejone po lewej, opis po prawej ═══ */
@media (min-width:900px){
  .pr-krok__glowa{grid-column:1/6;position:sticky;top:152px}
}
.pr-zasady{border-top:1px solid var(--linia)}
.pr-zasady__lista{margin-top:var(--s-7);border-top:2px solid var(--biel)}
.pr-zasady__lista li{border-bottom:1px solid var(--linia);padding-top:var(--s-4);padding-bottom:var(--s-4);font-size:clamp(var(--t-20),2.2vw,var(--t-30));line-height:1.25;font-weight:700;letter-spacing:-.01em;max-width:28em}

/* ═══ CASE STUDIES: karta jako kadr na całą ramę ═══ */
.cs-karta__kadr{display:block}
.cs-wizja{aspect-ratio:4/5;width:100%;height:auto!important;max-height:none!important}
@media (min-width:768px){.cs-wizja{aspect-ratio:16/9}}
.cs-karta__siatka{margin-top:var(--s-6);display:grid;gap:var(--s-5)}
.cs-karta .h2 a{text-decoration:none}
.cs-karta .h2 a:hover{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:.12em}
.cs-karta .link{margin-top:var(--s-4)}
@media (min-width:900px){
  .cs-karta__siatka{grid-template-columns:repeat(12,1fr);column-gap:var(--s-5)}
  .cs-karta__siatka>.h2{grid-column:1/7}
  .cs-karta__opis{grid-column:8/13}
}

/* ═══ POLITYKA: jedna kolumna do czytania ═══ */
.pp-tresc{max-width:44em;margin-top:0}
.pp-tresc>:first-child{margin-top:0}
.pp-h2{margin-top:var(--s-8);font-size:var(--t-24);line-height:1.2;font-weight:800;letter-spacing:-.01em}
.pp-tresc>.pp-h2:first-child{margin-top:0}
.pp-tresc h2+p,.pp-tresc h2+h3{margin-top:var(--s-4)}
.pp-tresc h3{margin-top:var(--s-6);margin-bottom:var(--s-2);font-size:var(--t-18)}
.pp-tresc ul{margin-top:var(--s-3)}
.pp-tresc .tabliczka{margin-bottom:var(--s-4);max-width:34em}
.pp-tresc .tabliczka a{text-decoration:none}
.pp-data{margin-top:var(--s-7)!important;font-size:var(--t-14);color:var(--t3)!important}

/* ═══ 404 ═══ */
.e-kod{margin-bottom:var(--s-5)}
.e-dalej{border-top:0}
.e-lista{margin-top:var(--s-5)}
.e-lista a{color:var(--biel);font-weight:700}
.p-hero--tekst .p-h1{max-width:none}
.k-prawa>.h2+.tabliczka{margin-top:var(--s-5)}
.k-prawa>.h2+.usl-proza{margin-top:var(--s-5)}
