/*
Theme Name: Broker Business
Theme URI: https://brokerbusiness.eu/
Author: Broker Business sp. z o.o.
Description: Lekki motyw wlasny dla brokerbusiness.eu. Bez frameworkow, bez jQuery, bez zewnetrznych fontow.
Version: 1.0
Requires at least: 6.0
Requires PHP: 8.0
Text Domain: broker-business
*/

/* ============ ZMIENNE ============ */
:root{
  --granat-900:#0b1220;
  --granat-800:#12233d;
  --granat-700:#1b3355;
  --granat-600:#254672;
  --akcent:#e5175c;
  --akcent-jasny:#ff7aa2;
  --akcent-ciemny:#a30f3c;
  --tekst:#1a2332;
  --tekst-slaby:#4a5a70;
  --tekst-bardzo-slaby:#5b6a7e;
  --tlo:#ffffff;
  --tlo-alt:#f4f7fb;
  --tlo-karta:#ffffff;
  --linia:#dde5f0;
  --linia-mocna:#c3d0e0;
  --cien:0 1px 3px rgba(11,18,32,.06),0 6px 18px rgba(11,18,32,.06);
  --cien-mocny:0 4px 12px rgba(11,18,32,.10),0 16px 40px rgba(11,18,32,.10);
  --r:14px;
  --r-male:10px;
  --szer:1180px;
  --szer-tekst:760px;
  --font:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif;
}

/* ============ RESET ============ */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;font-family:var(--font);font-size:17px;line-height:1.7;color:var(--tekst);background:var(--tlo);-webkit-font-smoothing:antialiased}
img,svg,video{max-width:100%;height:auto;display:block}
a{color:var(--akcent-ciemny);text-decoration:underline;text-underline-offset:.15em}
a:hover{color:var(--akcent)}
h1,h2,h3,h4{line-height:1.22;margin:0 0 .6em;color:var(--granat-800);font-weight:750;letter-spacing:-.015em}
h1{font-size:clamp(2rem,1.4rem + 2.4vw,3rem)}
h2{font-size:clamp(1.5rem,1.2rem + 1.3vw,2.1rem);margin-top:2.2em}
h3{font-size:clamp(1.15rem,1.05rem + .5vw,1.35rem);margin-top:1.8em}
h4{font-size:1.05rem;margin-top:1.5em}
p,ul,ol{margin:0 0 1.15em}
ul,ol{padding-left:1.35em}
li{margin-bottom:.45em}
:focus-visible{outline:3px solid var(--akcent);outline-offset:2px;border-radius:3px}
.tylko-czytnik{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.pomin{position:absolute;left:-9999px;top:0;z-index:200;background:var(--granat-800);color:#fff;padding:12px 20px;border-radius:0 0 var(--r-male) 0}
.pomin:focus{left:0}

/* ============ UKLAD ============ */
.opakowanie{width:100%;max-width:var(--szer);margin-inline:auto;padding-inline:20px}
.waska{max-width:var(--szer-tekst)}
main{display:block;min-height:50vh}
.sekcja{padding-block:clamp(48px,7vw,88px)}
.sekcja--alt{background:var(--tlo-alt)}
.sekcja--ciemna{background:linear-gradient(135deg,var(--granat-900) 0%,var(--granat-800) 55%,var(--granat-700) 100%);color:#e9f0f9}
.sekcja--ciemna h1,.sekcja--ciemna h2,.sekcja--ciemna h3{color:#fff}
.sekcja--ciemna a{color:var(--akcent-jasny)}

/* ============ NAGLOWEK ============ */
.naglowek{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.94);backdrop-filter:saturate(160%) blur(10px);border-bottom:1px solid var(--linia)}
.naglowek__rzad{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:74px}
.marka{display:inline-flex;align-items:center;gap:12px;text-decoration:none;color:var(--granat-800);font-weight:800;font-size:1.05rem;letter-spacing:-.02em}
.marka img{max-height:44px;width:auto}
.nawigacja{display:flex;align-items:center;gap:6px}
.nawigacja ul{display:flex;list-style:none;margin:0;padding:0;gap:2px}
.nawigacja li{margin:0}
.nawigacja a{display:block;padding:9px 14px;border-radius:9px;color:var(--granat-800);text-decoration:none;font-weight:600;font-size:.93rem;letter-spacing:.01em}
.nawigacja a:hover{background:var(--tlo-alt);color:var(--akcent-ciemny)}
.nawigacja .current-menu-item>a,.nawigacja .current_page_item>a{color:var(--akcent-ciemny);background:var(--tlo-alt)}
.przycisk{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border-radius:999px;background:var(--akcent);color:#fff!important;text-decoration:none;font-weight:700;font-size:.95rem;border:0;cursor:pointer;transition:background .18s,transform .18s}
.przycisk:hover{background:var(--akcent-ciemny);color:#fff!important;transform:translateY(-1px)}
.przycisk--obrys{background:transparent;color:var(--granat-800)!important;border:2px solid var(--linia-mocna)}
.przycisk--obrys:hover{background:var(--granat-800);color:#fff!important;border-color:var(--granat-800)}
.przycisk--jasny{background:#fff;color:var(--granat-800)!important}
.przycisk--jasny:hover{background:var(--akcent);color:#fff!important}
.hamburger{display:none;width:46px;height:46px;border:1px solid var(--linia);background:#fff;border-radius:11px;cursor:pointer;align-items:center;justify-content:center;padding:0}
.hamburger span{display:block;width:20px;height:2px;background:var(--granat-800);position:relative}
.hamburger span::before,.hamburger span::after{content:"";position:absolute;left:0;width:20px;height:2px;background:var(--granat-800)}
.hamburger span::before{top:-6px}
.hamburger span::after{top:6px}

/* ============ STOPKA ============ */
.stopka{background:var(--granat-900);color:#a9bbd2;padding-block:56px 28px;margin-top:0;font-size:.94rem}
.stopka a{color:#cfdcec;text-decoration:none}
.stopka a:hover{color:#fff;text-decoration:underline}
.stopka h2{color:#fff;font-size:1rem;letter-spacing:.06em;text-transform:uppercase;margin:0 0 16px}
.stopka__siatka{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:44px}
.stopka ul{list-style:none;padding:0;margin:0}
.stopka li{margin-bottom:.55em}
.stopka__dol{margin-top:44px;padding-top:22px;border-top:1px solid rgba(255,255,255,.10);display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;font-size:.87rem;color:#7b8ea8}

/* ============ TRESC ============ */
.tresc{max-width:var(--szer-tekst)}
.tresc > *:first-child{margin-top:0}
.tresc img{border-radius:var(--r-male)}
.tresc figure{margin:32px 0}
.tresc figcaption{font-size:.88rem;color:#54637a;margin-top:8px}

/* ============ HERO WPISU I ARCHIWUM ============ */
.hero{background:linear-gradient(135deg,var(--granat-900) 0%,var(--granat-800) 55%,var(--granat-700) 100%);border-radius:var(--r);padding:clamp(28px,4vw,48px);color:#e9f0f9;margin-bottom:44px}
.hero__kat{margin:0 0 14px;font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700}
.hero__kat a{color:var(--akcent-jasny);text-decoration:none}
.hero__kat a:hover{color:#fff}
.hero h1{color:#fff;margin:0 0 14px}
.hero__meta{margin:0;font-size:.88rem;color:#93a7c4}
.naglowek-strony{padding-block:clamp(36px,5vw,64px) 0}
.naglowek-strony h1{margin-bottom:.35em}
.naglowek-strony__opis{font-size:1.12rem;color:var(--tekst-slaby);max-width:var(--szer-tekst);margin:0}

/* ============ BLOKI TRESCI ============ */
.bb-lead{font-size:1.2em;line-height:1.62;font-weight:500;border-left:4px solid var(--akcent);padding-left:20px;margin:0 0 32px}
.bb-box{background:var(--tlo-alt);border:1px solid var(--linia);border-left:5px solid var(--granat-700);border-radius:var(--r-male);padding:22px 26px;margin:34px 0}
.bb-box h3{margin-top:0;font-size:1.05rem}
.bb-box > *:last-child{margin-bottom:0}
.bb-box-alert{background:#fff5f7;border-color:#f7ccd7;border-left-color:var(--akcent)}
.bb-box-alert h3{color:var(--akcent-ciemny)}
.bb-cta{background:linear-gradient(135deg,var(--granat-800) 0%,var(--granat-700) 100%);color:#e9f0f9;border-radius:var(--r);padding:30px 32px;margin:44px 0 10px}
.bb-cta h2,.bb-cta h3{color:#fff;margin-top:0}
.bb-cta a{color:var(--akcent-jasny)}
.bb-cta a:hover{color:#fff}
blockquote{border-left:4px solid var(--akcent);background:var(--tlo-alt);padding:16px 24px;margin:28px 0;border-radius:0 var(--r-male) var(--r-male) 0}
blockquote > *:last-child{margin-bottom:0}

/* ============ TABELE ============ */
.bb-tabela,.tresc table{width:100%;border-collapse:collapse;margin:30px 0;font-size:.95rem}
.bb-tabela th,.tresc table th{background:var(--granat-800);color:#fff;text-align:left;padding:12px 14px;font-weight:650}
.bb-tabela td,.tresc table td{padding:11px 14px;border-bottom:1px solid var(--linia);vertical-align:top}
.bb-tabela tbody tr:nth-child(even) td,.tresc table tbody tr:nth-child(even) td{background:var(--tlo-alt)}
.przewijana{overflow-x:auto;-webkit-overflow-scrolling:touch}

/* ============ SIATKI I KARTY ============ */
.siatka{display:grid;gap:26px}
.siatka--2{grid-template-columns:repeat(2,1fr)}
.siatka--3{grid-template-columns:repeat(3,1fr)}
.siatka--4{grid-template-columns:repeat(4,1fr)}
.karta{background:var(--tlo-karta);border:1px solid var(--linia);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .2s,transform .2s}
.karta:hover{box-shadow:var(--cien-mocny);transform:translateY(-2px)}
.karta__obraz{aspect-ratio:16/9;background:var(--granat-900);overflow:hidden}
.karta__obraz img{width:100%;height:100%;object-fit:contain}
.karta__tresc{padding:22px 24px 26px;display:flex;flex-direction:column;flex:1}
.karta__kat{font-size:.74rem;letter-spacing:.13em;text-transform:uppercase;font-weight:700;color:var(--akcent-ciemny);margin:0 0 10px}
.karta__kat a{color:inherit;text-decoration:none}
.karta h3{margin:0 0 10px;font-size:1.12rem;line-height:1.3}
.karta h3 a{color:var(--granat-800);text-decoration:none}
.karta h3 a:hover{color:var(--akcent-ciemny)}
.karta__opis{color:var(--tekst-slaby);font-size:.94rem;margin:0 0 16px;flex:1}
.karta__meta{font-size:.83rem;color:var(--tekst-bardzo-slaby);margin:0}
.karta__link{font-weight:700;font-size:.92rem;text-decoration:none;color:var(--akcent-ciemny);margin-top:auto}
.karta__link:hover{text-decoration:underline}
.karta__link::after{content:" \2192"}

/* ============ PAGINACJA ============ */
.paginacja{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:48px;list-style:none;padding:0}
.paginacja a,.paginacja span{display:block;padding:10px 16px;border-radius:10px;border:1px solid var(--linia);text-decoration:none;color:var(--granat-800);font-weight:600}
.paginacja a:hover{background:var(--tlo-alt)}
.paginacja .current{background:var(--granat-800);color:#fff;border-color:var(--granat-800)}

/* ============ FORMULARZ ============ */
input[type=text],input[type=email],input[type=tel],input[type=url],input[type=search],textarea,select{width:100%;padding:13px 16px;border:1px solid var(--linia-mocna);border-radius:var(--r-male);font:inherit;font-size:1rem;color:var(--tekst);background:#fff}
input:focus,textarea:focus,select:focus{border-color:var(--granat-600);outline:2px solid rgba(37,70,114,.18);outline-offset:0}
label{display:block;font-weight:650;margin-bottom:6px;font-size:.94rem}
.wpcf7 form .wpcf7-response-output{border-radius:var(--r-male);border-width:1px;padding:14px 18px;margin:20px 0 0}
.wpcf7-not-valid-tip{color:var(--akcent-ciemny);font-size:.88rem}
input[type=submit],button[type=submit]{width:auto;background:var(--akcent);color:#fff;border:0;padding:14px 32px;border-radius:999px;font-weight:700;font-size:1rem;cursor:pointer}
input[type=submit]:hover,button[type=submit]:hover{background:var(--akcent-ciemny)}

/* ============ RESPONSYWNOSC ============ */
@media (max-width:960px){
  .siatka--4{grid-template-columns:repeat(2,1fr)}
  .siatka--3{grid-template-columns:repeat(2,1fr)}
  .stopka__siatka{grid-template-columns:1fr 1fr;gap:32px}
}
@media (max-width:782px){
  body{font-size:16px}
  .hamburger{display:inline-flex}
  .nawigacja{position:fixed;inset:74px 0 auto 0;background:#fff;border-bottom:1px solid var(--linia);flex-direction:column;align-items:stretch;padding:14px 20px 22px;gap:4px;display:none;box-shadow:var(--cien-mocny);max-height:calc(100vh - 74px);overflow-y:auto}
  .nawigacja.otwarte{display:flex}
  .nawigacja ul{flex-direction:column;gap:2px}
  .nawigacja a{padding:13px 14px;font-size:1rem}
  .nawigacja .przycisk{justify-content:center;margin-top:10px}
  .siatka--2,.siatka--3,.siatka--4{grid-template-columns:1fr}
  .stopka__siatka{grid-template-columns:1fr;gap:30px}
  .stopka__dol{flex-direction:column;gap:8px}
}
@media (prefers-reduced-motion:reduce){
  *{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}

/* ============ BB_DODATEK_1: bloki po konwersji z Fusion ============ */

/* Zakladki zamienione na sekcje jedna pod druga */
.taby{margin-block:28px}
.taby__tresc{display:grid;gap:22px}
.taby__panel{background:var(--tlo-alt);border:1px solid var(--linia);border-radius:var(--r);padding:22px 24px}
.taby__panel>*:last-child{margin-bottom:0}
.taby__tytul{margin:0 0 .45em;color:var(--granat-700);font-size:1.12rem;letter-spacing:-.01em}
.taby__tytul::before{content:"";display:inline-block;width:22px;height:3px;border-radius:2px;background:var(--akcent);margin-right:10px;vertical-align:middle}
@media(min-width:900px){.taby__tresc{grid-template-columns:repeat(3,1fr)}}

/* Opinie */
.opinie{margin-block:28px}
.opinie__lista{display:grid;gap:20px}
@media(min-width:900px){.opinie__lista{grid-template-columns:repeat(2,1fr)}}
.opinia{background:var(--tlo-karta);border:1px solid var(--linia);border-left:4px solid var(--akcent);border-radius:var(--r);padding:22px 24px;box-shadow:var(--cien)}
.opinia__cytat,.opinia__tresc{margin:0}
.opinia__tresc p:last-child{margin-bottom:0}
.opinia__autor{margin-top:14px;font-weight:650;color:var(--granat-700);font-size:.95rem}

/* Siatka w siatce nie moze sie zwezac do paskow */
.siatka .siatka{grid-template-columns:1fr}
.siatka>div>.siatka--3,.siatka>div>.siatka--4{grid-template-columns:1fr}

/* Osierocone szerokosci procentowe z Avady */
[class*="fusion-layout-column"],[class*="fusion-column-wrapper"]{width:auto!important;float:none!important;margin:0!important}

/* Kontrast metadanych karty */
.karta__meta{color:#54637a}



/* ============ BB_DODATEK_2: strona glowna ============ */

/* ---- Hero ---- */
.hero{
  background:
    radial-gradient(1100px 560px at 82% -8%,rgba(229,23,92,.28),transparent 60%),
    radial-gradient(820px 460px at 4% 112%,rgba(37,70,114,.6),transparent 62%),
    linear-gradient(135deg,#0b1220 0%,#12233d 54%,#1b3355 100%);
  color:#e9f0f9;
  padding-block:clamp(60px,8vw,104px);
  position:relative;
  overflow:hidden;
}
.hero::before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;
  background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
  background-size:56px 56px;
  mask-image:radial-gradient(760px 460px at 76% 34%,#000,transparent 72%);
}
.hero__uklad{
  position:relative;display:grid;gap:clamp(32px,4vw,56px);align-items:center;
  grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr);
}
.hero__nad{
  margin:0 0 16px;font-size:.78rem;font-weight:700;letter-spacing:.16em;
  text-transform:uppercase;color:var(--akcent-jasny);
}
.hero h1{
  color:#fff;font-size:clamp(2rem,4.4vw,3.25rem);line-height:1.08;
  margin:0 0 20px;letter-spacing:-.028em;
}
.hero__opis{font-size:clamp(1rem,1.6vw,1.16rem);color:#c3d3e6;margin:0 0 30px;max-width:56ch}
.hero__akcje{display:flex;flex-wrap:wrap;gap:14px;margin:0}
.przycisk--jasnyobrys{background:transparent;color:#fff!important;box-shadow:inset 0 0 0 2px rgba(255,255,255,.45);border:0}
.przycisk--jasnyobrys:hover{background:rgba(255,255,255,.14);color:#fff!important;box-shadow:inset 0 0 0 2px rgba(255,255,255,.75)}

/* ---- Dane rejestrowe w hero ---- */
.hero__dane{
  margin:34px 0 0;padding-top:24px;border-top:1px solid rgba(255,255,255,.18);
  display:grid;grid-template-columns:repeat(4,auto);gap:12px 32px;justify-content:start;
}
.hero__dane>div{display:flex;flex-direction:column;gap:2px}
.hero__dane dt{margin:0;color:#8fa6c2;font-size:.68rem;letter-spacing:.16em;text-transform:uppercase}
.hero__dane dd{margin:0;color:#fff;font-weight:700;font-size:.94rem;font-variant-numeric:tabular-nums}

/* ---- Zdjecie w hero ---- */
.hero__foto{
  position:relative;margin:0;border-radius:20px;overflow:hidden;
  box-shadow:0 24px 60px rgba(0,0,0,.45);border:1px solid rgba(255,255,255,.14);
}
.hero__foto img{width:100%;height:100%;object-fit:cover;display:block;aspect-ratio:4/3}
.hero__podpis{
  position:absolute;inset:auto 0 0 0;padding:26px 22px 18px;
  background:linear-gradient(to top,rgba(11,18,32,.92),rgba(11,18,32,.55) 55%,transparent);
  display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px;
}
.hero__podpis-tekst{color:#c3d3e6;font-size:.84rem}
.hero__podpis-tel{color:#fff;font-weight:750;font-size:1.15rem;text-decoration:none}
.hero__podpis-tel:hover{color:var(--akcent-jasny)}

/* ---- Pasek liczb ---- */
.pasek-liczby{background:var(--granat-900);color:#e9f0f9;padding-block:26px}
.pasek-liczby .siatka{gap:18px}
.liczba{display:flex;flex-direction:column;gap:2px;padding-left:16px;border-left:2px solid var(--akcent)}
.liczba__wartosc{font-size:1.55rem;font-weight:800;color:#fff;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.liczba__opis{font-size:.84rem;color:#9fb4cd}

/* ---- Naglowki sekcji ---- */
.nadtytul{
  margin:0 0 8px;font-size:.76rem;font-weight:700;letter-spacing:.16em;
  text-transform:uppercase;color:#c01050;
}
.sekcja--ciemna .nadtytul{color:var(--akcent-jasny)}
.sekcja__tytul{font-size:clamp(1.55rem,3.2vw,2.2rem);margin:0 0 14px;letter-spacing:-.022em}
.sekcja__wstep{max-width:68ch;color:var(--tekst-slaby);margin:0 0 8px}
.sekcja__tytul+.siatka,.sekcja__wstep+.siatka{margin-top:36px}

/* ---- Filary ---- */
.filar{
  background:var(--tlo-karta);border:1px solid var(--linia);border-radius:var(--r);
  padding:26px 24px;transition:border-color .18s,box-shadow .18s,transform .18s;
}
.filar:hover{border-color:var(--akcent);box-shadow:var(--cien);transform:translateY(-2px)}
.filar__ikona{
  display:inline-flex;align-items:center;justify-content:center;
  width:46px;height:46px;border-radius:12px;margin-bottom:16px;
  background:linear-gradient(135deg,var(--granat-800),var(--granat-600));color:#fff;
}
.filar__ikona svg{width:24px;height:24px}
.filar h3{font-size:1.04rem;margin:0 0 .45em;letter-spacing:-.01em}
.filar p{margin:0;color:var(--tekst-slaby);font-size:.94rem}

/* ---- Karty projektow ---- */
.projekt{
  position:relative;background:var(--tlo-karta);border:1px solid var(--linia);
  border-radius:var(--r);display:flex;flex-direction:column;
  overflow:hidden;transition:transform .18s ease,box-shadow .18s ease;
}
.projekt__obraz{aspect-ratio:16/9;overflow:hidden;background:var(--granat-900)}
.projekt__obraz img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}
.projekt:hover .projekt__obraz img{transform:scale(1.04)}
.projekt__tresc{padding:24px 26px 24px;display:flex;flex-direction:column;gap:12px;flex:1}
.projekt::before{
  content:"";position:absolute;inset:0 0 auto 0;height:3px;
  background:linear-gradient(90deg,var(--akcent),var(--granat-600));
  opacity:0;transition:opacity .18s;
}
.projekt:hover{transform:translateY(-3px);box-shadow:var(--cien-mocny)}
.projekt:hover::before{opacity:1}
.projekt h3{font-size:1.08rem;margin:0;letter-spacing:-.01em}
.projekt p{margin:0;color:var(--tekst-slaby);font-size:.94rem}
.projekt__haslo{
  font-style:italic;color:var(--granat-600)!important;font-size:.88rem!important;
  border-left:3px solid var(--akcent);padding-left:12px;
}
.link-strzalka{
  margin-top:auto;align-self:flex-start;display:inline-flex;align-items:center;gap:8px;
  font-weight:700;font-size:.94rem;color:var(--akcent-ciemny);text-decoration:none;
  border-bottom:2px solid transparent;padding-bottom:2px;transition:border-color .18s,gap .18s;
}
.link-strzalka::after{content:"\2192";font-size:1.05em;transition:transform .18s}
.link-strzalka:hover{border-color:var(--akcent);gap:12px}
.link-strzalka:hover::after{transform:translateX(2px)}

/* ---- Role ---- */
.rola{
  position:relative;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);
  border-radius:var(--r);padding:26px 24px;
}
.rola__nr{
  display:block;font-size:.74rem;font-weight:800;letter-spacing:.14em;
  color:var(--akcent-jasny);margin-bottom:10px;
}
.rola h3{color:#fff;font-size:1.06rem;margin:0 0 .5em}
.rola p{margin:0;color:#c3d3e6;font-size:.94rem}

.pasek-kontakt{
  margin-top:40px;padding-top:30px;border-top:1px solid rgba(255,255,255,.16);
  display:flex;flex-wrap:wrap;align-items:center;gap:14px 26px;
}
.pasek-kontakt__tekst{margin:0;color:#c3d3e6}
.pasek-kontakt__tel{margin:0;font-size:1.3rem;font-weight:750}
.pasek-kontakt__tel a{color:#fff;text-decoration:none}
.pasek-kontakt__tel a:hover{color:var(--akcent-jasny)}
.pasek-kontakt .przycisk{margin-left:auto}

/* ---- Dlaczego, gotowosc ---- */
.dlaczego__prawa{display:flex;flex-direction:column;gap:22px}
.foto-ramka{margin:0;border-radius:var(--r);overflow:hidden;box-shadow:var(--cien-mocny)}
.foto-ramka img{width:100%;height:auto;display:block;aspect-ratio:16/10;object-fit:cover}
.akapit-wiodacy{font-size:1.1rem;color:var(--granat-700);font-weight:500}
.lista-znaczniki{list-style:none;padding:0;margin:24px 0 0;display:grid;gap:10px}
.lista-znaczniki li{position:relative;padding-left:30px;font-weight:650;color:var(--granat-700)}
.lista-znaczniki li::before{
  content:"";position:absolute;left:0;top:.5em;width:13px;height:13px;border-radius:50%;
  background:var(--akcent);box-shadow:0 0 0 4px rgba(229,23,92,.15);
}
.ramka{background:var(--tlo-karta);border:1px solid var(--linia);border-radius:var(--r);padding:28px 30px;box-shadow:var(--cien)}
.ramka h3{margin:0 0 18px;font-size:1.08rem}
.lista-numery{list-style:none;counter-reset:n;padding:0;margin:0;display:grid;gap:14px}
.lista-numery li{counter-increment:n;position:relative;padding-left:42px;color:var(--tekst-slaby);font-size:.96rem}
.lista-numery li::before{
  content:counter(n,decimal-leading-zero);position:absolute;left:0;top:.05em;
  font-weight:800;font-size:.82rem;color:#a30f3c;letter-spacing:.06em;
}
.cytat{
  margin:0;background:linear-gradient(135deg,var(--granat-900),var(--granat-700));
  color:#e9f0f9;border-radius:var(--r);padding:32px 34px;box-shadow:var(--cien-mocny);
  position:relative;overflow:hidden;
}
.cytat::before{
  content:"\201E";position:absolute;top:-14px;right:18px;font-size:8rem;line-height:1;
  color:rgba(255,255,255,.08);font-family:Georgia,serif;
}
.cytat p{margin:0 0 18px;font-size:1.12rem;line-height:1.6;position:relative}
.cytat footer{color:var(--akcent-jasny);font-size:.88rem;font-weight:700;letter-spacing:.05em}

.srodek{text-align:center;margin-top:36px}

/* ---- Pas logotypow ---- */
.pas-logo{background:var(--tlo);padding-block:34px;border-bottom:1px solid var(--linia)}
.pas-logo__etykieta{
  margin:0 0 22px;text-align:center;font-size:.72rem;font-weight:700;
  letter-spacing:.2em;text-transform:uppercase;color:#54637a;
}
.pas-logo__siatka{
  display:grid;grid-template-columns:repeat(6,1fr);gap:14px 26px;align-items:center;
}
.pas-logo__siatka a{display:flex;align-items:center;justify-content:center;padding:6px}
.pas-logo__siatka img{
  max-height:52px;width:auto;object-fit:contain;
  filter:grayscale(1);opacity:.62;transition:filter .2s,opacity .2s,transform .2s;
}
.pas-logo__siatka a:hover img{filter:none;opacity:1;transform:translateY(-2px)}

/* ---- Etapy budowania ---- */
.etapy{list-style:none;padding:0;margin:38px 0 0;display:grid;gap:26px}
@media(min-width:900px){.etapy{grid-template-columns:repeat(3,1fr)}}
.etap{
  position:relative;padding:30px 28px 28px;border-radius:var(--r);
  background:var(--tlo-karta);border:1px solid var(--linia);
}
.etap::after{
  content:"";position:absolute;left:28px;right:28px;top:0;height:3px;border-radius:0 0 3px 3px;
  background:linear-gradient(90deg,var(--akcent),transparent);
}
.etap__nr{
  display:block;font-size:2rem;font-weight:800;line-height:1;
  color:var(--tekst-slaby);opacity:.85;margin-bottom:14px;letter-spacing:-.02em;
}
.etap h3{font-size:1.16rem;margin:0 0 .5em;letter-spacing:-.015em}
.etap p{margin:0;color:var(--tekst-slaby);font-size:.96rem}

/* ---- Kategoria projektu ---- */
.projekt__kat{
  margin:0!important;font-size:.7rem!important;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;color:#a30f3c!important;
}

/* ---- Licznik przy filarze ---- */
.filar__licznik{
  margin-top:14px!important;padding-top:12px;border-top:1px dashed var(--linia);
  font-size:.8rem!important;font-weight:700;color:var(--granat-600)!important;
}

/* ---- Osoba ---- */
.osoba{display:grid;gap:clamp(28px,4vw,52px);align-items:center;margin-top:26px}
@media(min-width:900px){.osoba{grid-template-columns:minmax(240px,.62fr) minmax(0,1fr)}}
.osoba__foto{margin:0;border-radius:18px;overflow:hidden;box-shadow:0 20px 50px rgba(0,0,0,.4)}
.osoba__foto img{width:100%;height:auto;display:block;aspect-ratio:4/5;object-fit:cover}
.osoba__rola{margin:0 0 22px;color:var(--akcent-jasny);font-weight:700;letter-spacing:.02em}
.osoba__cytat{
  margin:0 0 24px;padding:22px 26px;border-radius:var(--r);
  background:rgba(255,255,255,.06);border-left:4px solid var(--akcent);
}
.osoba__cytat p{margin:0;font-size:1.08rem;line-height:1.6;color:#e9f0f9}
.osoba__role{list-style:none;padding:0;margin:0 0 22px;display:flex;flex-wrap:wrap;gap:10px}
.osoba__role li{
  padding:7px 16px;border-radius:999px;font-size:.86rem;font-weight:650;
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);color:#e9f0f9;
}
.osoba__opis{margin:0;color:#c3d3e6}

/* ---- CTA koncowe ---- */
.cta-koncowe{
  background:linear-gradient(120deg,var(--granat-900) 0%,var(--granat-800) 55%,var(--akcent-ciemny) 100%);
  color:#fff;padding-block:clamp(48px,6vw,80px);
}
.cta-koncowe h2{color:#fff;margin:0 0 8px;font-size:clamp(1.5rem,3vw,2.1rem);letter-spacing:-.022em}
.cta-koncowe__wstep{margin:0 0 34px;color:rgba(255,255,255,.82);max-width:60ch}
.sciezka{
  display:flex;flex-direction:column;gap:10px;padding:28px 30px;border-radius:var(--r);
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.2);
  text-decoration:none;color:#fff;transition:background .18s,transform .18s,border-color .18s;
}
.sciezka:hover{background:rgba(255,255,255,.15);border-color:rgba(255,255,255,.45);transform:translateY(-3px);color:#fff}
.sciezka__etykieta{font-size:1.16rem;font-weight:750;letter-spacing:-.01em}
.sciezka__opis{color:rgba(255,255,255,.8);font-size:.95rem;flex:1}
.sciezka__link{
  display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:.94rem;
  color:#fff;margin-top:6px;
}
.sciezka__link::after{content:"\2192"}
.cta-koncowe__stopka{margin:30px 0 0;color:rgba(255,255,255,.75);font-size:.95rem}
.cta-koncowe__stopka a{color:#fff;text-decoration:none;font-weight:700}
.cta-koncowe__stopka a:hover{color:var(--akcent-jasny)}

/* ---- Wspolne poprawki ---- */
p:empty{display:none}

@media(max-width:1000px){
  .hero__uklad{grid-template-columns:1fr}
  .hero__foto{max-width:560px}
}
@media(max-width:620px){
  .hero__dane{grid-template-columns:repeat(2,1fr);gap:14px 20px}
}
@media(max-width:900px){
  .pas-logo__siatka{grid-template-columns:repeat(3,1fr);gap:18px}
  .cta-sciezki{grid-template-columns:1fr}
}
@media(max-width:860px){
  .pasek-kontakt .przycisk,.cta-koncowe .przycisk{margin-left:0}
  .pasek-liczby .siatka--4{grid-template-columns:repeat(2,1fr)}
}

/* ============ BB_DODATEK_3: RWD, porzadki po konwersji z Avady (2026-09-05) ============ */

/* Strony zbudowane z wlasnych sekcji nie miesza sie w kolumne tekstowa 760px. */
.tresc--pelna{max-width:none}
.tresc--pelna > section:first-child{padding-top:0}
.tresc--pelna > .sekcja:first-child{padding-top:clamp(8px,2vw,24px)}

/* Siatki zwijaja sie same, bez zgadywania urzadzenia. */
.siatka--2{grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr))}
.siatka--3{grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr))}
.siatka--4{grid-template-columns:repeat(auto-fit,minmax(min(250px,100%),1fr))}
.siatka .siatka,.siatka>div>.siatka--3,.siatka>div>.siatka--4{grid-template-columns:1fr}
@media (max-width:640px){
  .siatka--2,.siatka--3,.siatka--4{grid-template-columns:1fr}
}

/* Przyciski w kartach rowno przy dolnej krawedzi. */
.karta__tresc > .przycisk,.karta__tresc > p > .przycisk,.karta__link{margin-top:auto}
.karta__tresc > .przycisk,.karta__link{align-self:flex-start}

/* Cel dotykowy minimum 44px na kazdym ekranie. */
.przycisk{min-height:44px;display:inline-flex;align-items:center;justify-content:center;text-align:center}
.nawigacja a,.karta__link,.sciezka__link{min-height:44px;display:inline-flex;align-items:center}

/* Plynna typografia i czytelna dlugosc wiersza. */
body{font-size:clamp(16px,.95rem + .2vw,17px)}
.sekcja__wstep,.naglowek-strony__opis,.akapit-wiodacy{max-width:68ch}
.sekcja p,.taby__panel p,.opinia__tresc p{max-width:72ch}
.siatka p,.karta p,.filar p,.etap p{max-width:none}

/* Obrazy i osadzenia nigdy nie wypychaja ukladu. */
img,video,iframe,svg{max-width:100%;height:auto}

/* Nic nie przewija strony w poziomie. */
html,body{overflow-x:clip}
.opakowanie{overflow-wrap:break-word}

/* Resztki Avady w tresci. */
.testimonials-shortcode-blockquote{margin:0;padding:0;border:0}
.tresc--pelna .siatka > div > h2:first-child,.tresc--pelna .siatka > div > h3:first-child{margin-top:0}
.bb-wstep-sekcji{margin-bottom:clamp(24px,3vw,40px)}
.bb-wstep-sekcji > *:first-child{margin-top:0}
.bb-wstep-sekcji p{max-width:72ch}

/* ============ BB_DODATEK_4: poprawki po testach na zywo (2026-09-05) ============ */

/* Kolumna tekstu na srodku, nie przy lewej krawedzi. */
:root{--szer-tekst:820px}
.waska,.tresc{margin-inline:auto}
.tresc--pelna .waska{margin-inline:auto}

/* Ukryte pole reCAPTCHA nie moze rysowac ramki. */
input[name="cf7sr-recaptcha"],
.wpcf7-form-control-wrap.cf7sr-recaptcha > input[type="hidden"],
.wpcf7-form-control-wrap[data-name="cf7sr-recaptcha"]{
  display:none!important;border:0!important;padding:0!important;margin:0!important;height:0!important
}
.wpcf7-form p:has(> .cf7sr-recaptcha){margin:0}

/* Blok narracyjny wyjety z siatki. */
.bb-blok-tekstu{margin-top:clamp(24px,3vw,40px);max-width:72ch}
.bb-blok-tekstu > *:first-child{margin-top:0}
.bb-wstep-sekcji{margin-bottom:clamp(24px,3vw,40px)}
.bb-wstep-sekcji > *:first-child{margin-top:0}

/* Karty w siatce nie rozciagaja sie do wysokosci najdluzszej, gdy sa krotkie. */
.siatka{align-items:start}
.karta{height:100%}
.siatka--3 > .karta,.siatka--4 > .karta{align-self:stretch}

/* Formularz: pola pelnej szerokosci kolumny. */
.wpcf7-form input[type="text"],.wpcf7-form input[type="email"],.wpcf7-form input[type="tel"],
.wpcf7-form select,.wpcf7-form textarea{width:100%}
/* ============ BB_DODATEK_5: uklad redakcyjny sekcji tekstowych ============ */
@media (min-width:1080px){
  /* Sekcja z naglowkiem i samym tekstem: naglowek po lewej, tresc po prawej. */
  .tresc--pelna .sekcja > .opakowanie:has(> .sekcja__tytul):not(:has(.siatka)):not(:has(.etapy)):not(.waska){
    display:grid;
    grid-template-columns:minmax(240px,.85fr) minmax(0,1.5fr);
    column-gap:clamp(40px,4vw,72px);
    align-items:start;
  }
  .tresc--pelna .sekcja > .opakowanie:has(> .sekcja__tytul):not(:has(.siatka)):not(:has(.etapy)):not(.waska) > .nadtytul{grid-column:1;grid-row:1;margin-bottom:10px}
  .tresc--pelna .sekcja > .opakowanie:has(> .sekcja__tytul):not(:has(.siatka)):not(:has(.etapy)):not(.waska) > .sekcja__tytul{grid-column:1;grid-row:2;margin-top:0}
  .tresc--pelna .sekcja > .opakowanie:has(> .sekcja__tytul):not(:has(.siatka)):not(:has(.etapy)):not(.waska) > *:not(.nadtytul):not(.sekcja__tytul){grid-column:2}
  .tresc--pelna .sekcja > .opakowanie:has(> .sekcja__tytul):not(:has(.siatka)):not(:has(.etapy)):not(.waska) > .sekcja__wstep{grid-row:1;font-size:1.12rem}
  .tresc--pelna .sekcja > .opakowanie:has(> .sekcja__tytul):not(:has(.siatka)):not(:has(.etapy)):not(.waska) > p{max-width:none}

  /* Sekcja z naglowkiem nad siatka: naglowek i wstep obok siebie, siatka pod spodem. */
  .tresc--pelna .sekcja > .opakowanie:has(> .sekcja__tytul):has(> .siatka) > .sekcja__wstep{max-width:78ch}

  /* Naglowek strony razem z leadem. */
  .naglowek-strony{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1.2fr);column-gap:clamp(40px,4vw,72px);align-items:end}
  .naglowek-strony h1{margin:0}
  .naglowek-strony__opis{max-width:none;padding-bottom:.4em}
}

/* Sekcja ciemna i wezwanie do dzialania zostaja wysrodkowane, bez podzialu. */
.sekcja--ciemna > .opakowanie{display:block!important}
.sekcja--ciemna .sekcja__tytul,.sekcja--ciemna .sekcja__wstep{max-width:70ch}
/* ============ BB_DODATEK_6: reset pol technicznych formularza ============ */
/* CF7 wstawia fieldset z ukrytymi polami, przegladarka rysowala mu ramke. */
.wpcf7-form fieldset,.wpcf7 fieldset{border:0;margin:0;padding:0;min-inline-size:0}
.wpcf7-form fieldset.hidden-fields-container{display:none!important}
.wpcf7-form .screen-reader-response,.wpcf7-form .akismet-fields-container{display:none!important}
.wpcf7-form legend{display:none}
/* ==========================================================================
   BB_DODATEK_7 - pominiecie renderowania sekcji spoza pierwszego ekranu
   Autor: Marek Porycki, Broker Business sp. z o.o.
   Cel: skrocenie pierwszego przebiegu ukladu (Layout) na urzadzeniach mobilnych.
   ========================================================================== */
@supports (content-visibility: auto) {
	main > section:nth-of-type(n+2),
	main .tresc--pelna > section:nth-of-type(n+2),
	.stopka {
		content-visibility: auto;
		contain-intrinsic-size: auto 520px;
	}
}

/* ==========================================================================
   BB_DODATEK_8 - miejsce na widget reCAPTCHA ladowany po interakcji
   Autor: Marek Porycki, Broker Business sp. z o.o.
   Rezerwacja wysokosci, zeby pojawienie sie widgetu nie przesuwalo tresci.
   ========================================================================== */
.cf7sr-g-recaptcha{min-height:78px}
