/* ==========================================================
   Portal miejski: strona główna, nagłówek, stopka (klasy wb-*)
   ========================================================== */
:root {
	--wb-navy: #0b1d4a;
	--wb-blue: #1559e6;
	--wb-blue-d: #0d47c2;
	--wb-text: #4a5873;
	--wb-muted: #7a879c;
	--wb-soft: #f1f6ff;
	--wb-line: #e3eaf5;
	--wb-radius: 12px;
	--wb-shadow: 0 6px 24px rgba(11, 29, 74, .07);
	--wb-font: "Plus Jakarta Sans", Montserrat, system-ui, sans-serif;
}

body,
.ct-header, .ct-footer,
.wb-home, .wb-home * { font-family: var(--wb-font); }

/* ---------- Układ strony głównej ---------- */
.home .site-main .ct-container-full,
.home .site-main > div { padding-top: 0 !important; padding-bottom: 0 !important; }
.home .entry-content > * { margin-block: 0; }
.wb-home { width: var(--theme-container-width, calc(100% - 40px)); max-width: var(--theme-normal-container-max-width, 1290px); margin: 0 auto !important; padding: 24px 0 56px; box-sizing: border-box; }
.wb-home > * + * { margin-top: 24px !important; }
.wb-home h1, .wb-home h2, .wb-home h3 { color: var(--wb-navy); margin: 0; letter-spacing: -.01em; }
.wb-home p { margin: 0; color: var(--wb-text); }
.wb-home a { text-decoration: none; }

/* Ścieżka */
.wb-crumbs { padding: 14px 0 0; font-size: 12px; color: var(--wb-muted); }
.wb-crumbs p { color: var(--wb-muted); display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.wb-crumbs a { color: var(--wb-muted); }
.wb-crumbs a:hover { color: var(--wb-blue); }
.wb-crumbs strong { color: var(--wb-navy); }
.wb-crumbs p::before {
	content: ""; width: 15px; height: 15px; background: var(--wb-navy);
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M3 10.5 12 3l9 7.5V21h-6v-6H9v6H3z'/%3E%3C/svg%3E") center/contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M3 10.5 12 3l9 7.5V21h-6v-6H9v6H3z'/%3E%3C/svg%3E") center/contain no-repeat;
}

/* Przyciski */
.wb-btns { gap: 14px; }
.wb-btn .wp-block-button__link {
	display: inline-flex; align-items: center; justify-content: center; gap: 10px;
	background: var(--wb-blue); color: #fff; border: 2px solid var(--wb-blue);
	border-radius: 8px; padding: 12px 22px; font-size: 14px; font-weight: 700; line-height: 1.2;
	transition: background .2s, color .2s, border-color .2s, transform .2s;
}
.wb-btn .wp-block-button__link::after {
	content: ""; width: 16px; height: 16px; flex: none; background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center/contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center/contain no-repeat;
}
.wb-btn .wp-block-button__link:hover { background: var(--wb-blue-d); border-color: var(--wb-blue-d); color: #fff; transform: translateY(-1px); }
.wb-btn--light .wp-block-button__link,
.wb-btn.is-style-outline .wp-block-button__link { background: #fff; color: var(--wb-blue); border-color: #fff; }
.wb-btn.is-style-outline .wp-block-button__link { border-color: var(--wb-blue); }
.wb-btn--light .wp-block-button__link::after { display: none; }
.wb-btn--light .wp-block-button__link:hover,
.wb-btn.is-style-outline .wp-block-button__link:hover { background: var(--wb-blue); border-color: var(--wb-blue); color: #fff; }
.wb-btn--full { width: 100%; }
.wb-btn--full .wp-block-button__link { width: 100%; }

/* Baner reklamowy u góry (własny) */
.wb-promo.wp-block-cover { min-height: 0 !important; padding: 22px 28px 22px 120px; border-radius: var(--wb-radius); overflow: hidden; border: 1px solid var(--wb-line); }
.wb-promo .wp-block-cover__image-background:not([data-object-position]) { object-position: 85% 60% !important; }
.wb-promo .wp-block-cover__inner-container { display: flex; align-items: center; gap: 24px; width: 100%; max-width: none; }
.wb-promo .wb-promo__text { flex: 1; }
.wb-promo h2 { font-size: clamp(20px, 2.2vw, 26px) !important; font-weight: 800 !important; color: var(--wb-navy) !important; }
.wb-promo p { color: var(--wb-text) !important; font-size: 15px; margin-top: 4px !important; }
.wb-ad-label, .wb-ad__label {
	position: absolute; top: 6px; right: 10px; font-size: 10px !important; letter-spacing: .04em;
	color: var(--wb-muted) !important; margin: 0 !important; z-index: 3;
}

/* Miejsca na kod reklamy */
.wb-ad { position: relative; text-align: center; padding: 22px 0 6px; border-radius: var(--wb-radius); background: #fafcff; border: 1px dashed var(--wb-line); overflow: hidden; }
.wb-ad--bok { padding-inline: 8px; }
.wb-slot--ukryj { display: none; }

/* Hero */
.wb-hero.wp-block-cover { border-radius: 16px; overflow: hidden; padding: 48px 32px 32px; align-items: flex-start; }
.wb-hero .wp-block-cover__inner-container { max-width: 560px; margin: 0 !important; color: #fff; }
.wb-hero .wb-hero__city {
	display: inline-flex; align-items: center; gap: 8px; color: #fff !important; font-size: 13px; font-weight: 600;
	padding-bottom: 8px; border-bottom: 2px solid var(--wb-blue); margin-bottom: 26px !important;
}
.wb-hero .wb-hero__city::before {
	content: ""; width: 14px; height: 16px; background: #5b8dff;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a7 7 0 0 0-7 7c0 5.3 7 13 7 13s7-7.7 7-13a7 7 0 0 0-7-7zm0 9.5A2.5 2.5 0 1 1 12 6.5a2.5 2.5 0 0 1 0 5z'/%3E%3C/svg%3E") center/contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a7 7 0 0 0-7 7c0 5.3 7 13 7 13s7-7.7 7-13a7 7 0 0 0-7-7zm0 9.5A2.5 2.5 0 1 1 12 6.5a2.5 2.5 0 0 1 0 5z'/%3E%3C/svg%3E") center/contain no-repeat;
}
.wb-hero h1 { color: #fff !important; font-size: clamp(30px, 3.6vw, 44px) !important; line-height: 1.12 !important; font-weight: 800 !important; }
.wb-hero p { color: rgba(255, 255, 255, .9) !important; font-size: 16px; line-height: 1.6; }
.wb-hero h1 + p { margin-top: 18px !important; }
.wb-hero .wb-btns { margin-top: 26px !important; }
.wb-hero .wb-btns .wb-btn:not(.wb-btn--light) .wp-block-button__link { border-color: var(--wb-blue); }
.wb-hero .wb-hero__caption {
	position: absolute; right: 18px; bottom: 16px; margin: 0 !important; font-size: 12px !important;
	background: rgba(11, 29, 74, .72); color: #fff !important; padding: 6px 12px; border-radius: 6px;
}

/* Główna siatka */
.wb-main { gap: 24px !important; margin-top: 28px !important; }
.wb-main > .wp-block-column { min-width: 0; }
.wb-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 16px !important; }
.wb-head h2 { font-size: 20px !important; font-weight: 800 !important; display: flex; align-items: center; gap: 18px; }
.wb-head h2::before { content: ""; width: 26px; height: 3px; background: var(--wb-blue); border-radius: 2px; flex: none; }
.wb-more a { color: var(--wb-blue) !important; font-size: 13px; font-weight: 600; display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; }
.wb-more a::after { content: "\2192"; }
.wb-sec + .wb-sec, .wb-main .wb-slot-srodek + .wb-sec, .wb-main .wb-ad + .wb-sec { margin-top: 32px !important; }
.wb-main .wb-ad--srodek { margin-top: 28px; }

/* Wiadomości */
.wb-news { gap: 16px !important; margin: 0 !important; }
.wb-news .wp-block-post-template { margin: 0; padding: 0; list-style: none; }
.wb-news-small .wp-block-post-template { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.wb-post { background: #fff; border: 1px solid var(--wb-line); border-radius: var(--wb-radius); overflow: hidden; height: 100%; display: flex; flex-direction: column; box-shadow: var(--wb-shadow); transition: transform .2s, box-shadow .2s; }
.wb-post:hover { transform: translateY(-2px); box-shadow: 0 12px 30px rgba(11, 29, 74, .11); }
.wb-post .wp-block-post-featured-image { margin: 0 !important; }
.wb-post .wp-block-post-featured-image img { width: 100%; height: 100%; object-fit: cover; display: block; }
.wb-post__body { padding: 0 16px 16px; display: flex; flex-direction: column; gap: 8px; flex: 1; position: relative; }
.wb-post .wb-badge { margin-top: -12px !important; position: relative; z-index: 2; }
.wb-badge a {
	display: inline-block; background: #fff; color: var(--wb-blue) !important; font-size: 10px; font-weight: 800;
	letter-spacing: .06em; text-transform: uppercase; padding: 5px 10px; border-radius: 6px; box-shadow: 0 2px 8px rgba(11, 29, 74, .12);
}
.wb-badge .wp-block-post-terms__separator { display: none; }
.wb-badge a:not(:first-child) { display: none; }
.wb-post .wp-block-post-title { font-size: 14px !important; line-height: 1.35 !important; font-weight: 700 !important; margin: 0 !important; }
.wb-post .wp-block-post-title a { color: var(--wb-navy); }
.wb-post .wp-block-post-title a:hover { color: var(--wb-blue); }
.wb-post .wp-block-post-excerpt { font-size: 14px; color: var(--wb-text); margin: 0 !important; }
.wb-post .wp-block-post-excerpt__more-text { display: none; }
.wb-post .wp-block-post-date { font-size: 12px; color: var(--wb-muted); margin-top: auto !important; display: flex; align-items: center; gap: 6px; }
.wb-post .wp-block-post-date::before {
	content: ""; width: 13px; height: 13px; background: var(--wb-muted);
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M3 10h18M8 3v4M16 3v4'/%3E%3C/svg%3E") center/contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M3 10h18M8 3v4M16 3v4'/%3E%3C/svg%3E") center/contain no-repeat;
}
.wb-news-big .wb-post .wp-block-post-title { font-size: 20px !important; line-height: 1.3 !important; font-weight: 800 !important; }
.wb-news-big .wb-post__body { padding: 0 20px 20px; gap: 12px; }
.wb-news-big .wp-block-post-date { margin-top: 6px !important; }
.wb-nopost { background: var(--wb-soft); border: 1px dashed #c9d7f2; border-radius: var(--wb-radius); padding: 28px; text-align: center; }
.wb-nopost p { color: var(--wb-text); }

/* Katalog firm */
.wb-firmy { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.wb-firma { background: #fff; border: 1px solid var(--wb-line); border-radius: var(--wb-radius); overflow: hidden; box-shadow: var(--wb-shadow); display: flex; flex-direction: column; transition: transform .2s, box-shadow .2s; }
.wb-firma:hover { transform: translateY(-2px); box-shadow: 0 12px 30px rgba(11, 29, 74, .11); }
.wb-firma__logo { display: flex; align-items: center; justify-content: center; height: 120px; background: linear-gradient(135deg, #f4f8ff, #e8f0ff); padding: 18px; }
.wb-firma__logo img { max-width: 100%; max-height: 84px; width: auto; height: auto; object-fit: contain; }
.wb-firma__inicjal { width: 64px; height: 64px; border-radius: 50%; background: var(--wb-blue); color: #fff; font-size: 28px; font-weight: 800; display: grid; place-items: center; }
.wb-firma__body { padding: 14px 16px 16px; display: flex; flex-direction: column; gap: 8px; position: relative; flex: 1; }
.wb-firma__badge { position: absolute; top: -11px; right: 12px; background: #ffb400; color: #1d1600; font-size: 10px; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; padding: 4px 8px; border-radius: 5px; }
.wb-firma__nazwa { font-size: 15px !important; line-height: 1.3 !important; font-weight: 800 !important; margin: 0 !important; }
.wb-firma__nazwa a { color: var(--wb-navy); }
.wb-firma__nazwa a:hover { color: var(--wb-blue); }
.wb-firma__kat { align-self: flex-start; background: #e9f0ff; color: var(--wb-blue); font-size: 11px; font-weight: 700; padding: 4px 10px; border-radius: 999px; }
.wb-firma__info { font-size: 12.5px !important; line-height: 1.4; color: var(--wb-text) !important; display: flex; gap: 8px; margin: 0 !important; }
.wb-firma__info a { color: var(--wb-text); }
.wb-firma__info::before { content: ""; width: 14px; height: 14px; flex: none; margin-top: 1px; background: var(--wb-muted); -webkit-mask: var(--wb-i) center/contain no-repeat; mask: var(--wb-i) center/contain no-repeat; }
.wb-firma__info--adres { --wb-i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M12 21s-7-6.2-7-11.5a7 7 0 0 1 14 0C19 14.8 12 21 12 21z'/%3E%3Ccircle cx='12' cy='9.5' r='2.5'/%3E%3C/svg%3E"); }
.wb-firma__info--tel { --wb-i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M5 4h4l2 5-2.5 1.5a11 11 0 0 0 5 5L15 13l5 2v4a2 2 0 0 1-2 2A16 16 0 0 1 3 6a2 2 0 0 1 2-2z'/%3E%3C/svg%3E"); }
.wb-firmy__pusto { background: var(--wb-soft); border-radius: var(--wb-radius); padding: 24px; text-align: center; }
.wb-firmy__pusto a { color: var(--wb-blue); font-weight: 700; }

/* Boczna kolumna */
.wb-aside { display: flex; flex-direction: column; gap: 16px; }
.wb-aside > * { margin: 0 !important; }
.wb-card { background: var(--wb-soft); border: 1px solid #dfe8fb; border-radius: var(--wb-radius); padding: 20px; }
.wb-card > * + * { margin-top: 10px !important; }
.wb-card h3 { font-size: 15px !important; font-weight: 800 !important; padding-left: 62px; position: relative; min-height: 48px; }
.wb-card h3::before {
	content: ""; position: absolute; left: 0; top: 0; width: 48px; height: 48px; border-radius: 50%;
	background: #fff; box-shadow: 0 2px 10px rgba(21, 89, 230, .12);
}
.wb-card h3::after {
	content: ""; position: absolute; left: 12px; top: 12px; width: 24px; height: 24px; background: var(--wb-blue);
	-webkit-mask: var(--wb-i) center/contain no-repeat; mask: var(--wb-i) center/contain no-repeat;
}
.wb-card p { font-size: 12.5px; line-height: 1.5; padding-left: 62px; margin-top: -24px !important; }
.wb-card .wb-btns { margin-top: 16px !important; }
.wb-card--firma { --wb-i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linejoin='round'%3E%3Cpath d='M3 9l1.5-5h15L21 9M3 9v11h18V9M3 9c0 1.7 1.3 3 3 3s3-1.3 3-3c0 1.7 1.3 3 3 3s3-1.3 3-3c0 1.7 1.3 3 3 3s3-1.3 3-3M9 20v-5h6v5'/%3E%3C/svg%3E"); }
.wb-card--artykul { --wb-i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h5M14 3l5 5v3M14 3v5h5M8 12h6M8 16h3M19.5 14.5l-5 5-2.5.5.5-2.5 5-5a1.4 1.4 0 0 1 2 2z'/%3E%3C/svg%3E"); }

/* Pionowy baner w kolumnie (własny) */
.wb-promo-v.wp-block-cover { border-radius: var(--wb-radius); overflow: hidden; min-height: 470px !important; padding: 24px; align-items: flex-end; }
.wb-promo-v .wp-block-cover__inner-container, .wb-promo .wp-block-cover__inner-container { position: static; color: inherit; }
.wb-promo-v .wp-block-cover__inner-container { color: #fff; }
.wb-promo-v h3 { color: #fff !important; font-size: 24px !important; line-height: 1.2 !important; font-weight: 800 !important; }
.wb-promo-v p { color: rgba(255, 255, 255, .9) !important; font-size: 15px; margin-top: 10px !important; }
.wb-promo-v .wb-btns { margin-top: 20px !important; }
.wb-promo-v .wb-ad-label { color: #fff !important; background: rgba(11, 29, 74, .45); padding: 2px 6px; border-radius: 4px; }

/* Pas z ofertą */
.wb-band { background: var(--wb-soft); border: 1px solid #dfe8fb; border-radius: 16px; overflow: hidden; margin-top: 28px !important; }
.wb-band > .wp-block-columns { gap: 0 !important; margin: 0 !important; align-items: stretch !important; }
.wb-band__img { margin: 0 !important; height: 100%; }
.wb-band__img img { width: 100%; height: 100% !important; min-height: 160px; object-fit: cover; display: block; }
.wb-band__text { padding: 24px 28px; align-self: center; }
.wb-band__text h2 { font-size: 20px !important; font-weight: 800 !important; }
.wb-band__text p { font-size: 14px; margin-top: 8px !important; }
.wb-band__text .wb-btns { margin-top: 18px !important; }
.wb-band__list { padding: 24px 24px 24px 0; align-self: center; }
.wb-band__list p { display: flex; align-items: center; gap: 14px; font-size: 13px; font-weight: 600; color: var(--wb-navy) !important; }
.wb-band__list p + p { margin-top: 14px !important; }
.wb-band__list p::before {
	content: ""; width: 34px; height: 34px; flex: none; border-radius: 50%; background: #fff var(--wb-i) center/18px no-repeat;
	box-shadow: 0 2px 10px rgba(21, 89, 230, .12);
}
.wb-li--chart { --wb-i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231559e6' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M4 20h16M7 16v-4M12 16V8M17 16V5'/%3E%3C/svg%3E"); }
.wb-li--people { --wb-i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231559e6' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='9' cy='8' r='3.2'/%3E%3Cpath d='M3 20c.5-3.5 3-5.5 6-5.5s5.5 2 6 5.5M16 4.8a3.2 3.2 0 0 1 0 6.4M18 14.6c1.8.6 3 2.4 3.3 5.4'/%3E%3C/svg%3E"); }
.wb-li--mega { --wb-i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231559e6' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M3 10v4h3l7 5V5L6 10H3zM16.5 8.5a5 5 0 0 1 0 7M19 6a8.5 8.5 0 0 1 0 12'/%3E%3C/svg%3E"); }

/* ---------- Responsywność ---------- */
@media (max-width: 1100px) {
	.wb-firmy { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 999px) {
	.wb-main { flex-wrap: wrap !important; }
	.wb-main > .wp-block-column { flex-basis: 100% !important; }
	.wb-aside { display: grid; grid-template-columns: 1fr 1fr; }
	.wb-aside .wb-promo-v, .wb-aside .wb-ad { grid-column: 1 / -1; }
	.wb-promo-v.wp-block-cover { min-height: 300px !important; }
	.wb-band > .wp-block-columns { flex-wrap: wrap !important; }
	.wb-band > .wp-block-columns > .wp-block-column { flex-basis: 100% !important; }
	.wb-band__img img { max-height: 200px; }
	.wb-band__list { padding: 0 28px 24px; }
}
@media (max-width: 781px) {
	.wb-promo.wp-block-cover { padding: 18px; }
	.wb-promo .wp-block-cover__inner-container { flex-direction: column; align-items: flex-start; gap: 14px; }
	.wb-promo .wp-block-cover__background { background: linear-gradient(90deg, rgba(238,244,255,.97) 0%, rgba(238,244,255,.88) 100%) !important; }
	.wb-hero.wp-block-cover { padding: 32px 20px 56px; min-height: 0 !important; }
	.wb-hero .wp-block-cover__background { background: linear-gradient(180deg, rgba(8,24,64,.85) 0%, rgba(8,24,64,.75) 100%) !important; }
	.wb-news > .wp-block-column { flex-basis: 100% !important; }
	.wb-aside { grid-template-columns: 1fr; }
	.wb-head { flex-wrap: wrap; }
}
@media (max-width: 560px) {
	.wb-news-small .wp-block-post-template { grid-template-columns: 1fr; }
	.wb-firmy { grid-template-columns: 1fr; }
	.wb-hero .wb-btns { flex-direction: column; align-items: stretch; }
	.wb-hero .wb-btns .wp-block-button__link { width: 100%; }
}

/* ---------- Nagłówek ---------- */
.ct-header [data-row*="middle"] { box-shadow: 0 1px 0 var(--wb-line); }
.ct-header .ct-menu-link, .ct-header [data-id="menu"] > ul > li > a {
	font-size: 12px !important; font-weight: 700 !important; letter-spacing: .02em; text-transform: uppercase;
}
.ct-header [data-id="menu"] > ul > li > a { color: var(--wb-navy); }
.ct-header [data-id="menu"] > ul > li.current-menu-item > a,
.ct-header [data-id="menu"] > ul > li > a:hover { color: var(--wb-blue) !important; }

/* ---------- Stopka ---------- */
.ct-footer { border-top: 1px solid var(--wb-line); }
.ct-footer [data-row*="top"] { background: #fff !important; }
.ct-footer [data-row*="top"] .ct-container { grid-template-columns: 1.5fr 1fr 1fr 1.1fr 1.5fr !important; padding-block: 44px 28px; }
.ct-footer .ct-widget h2, .ct-footer .ct-widget h3, .ct-footer .widget-title, .wb-foot h3 {
	font-size: 13px !important; font-weight: 800 !important; color: var(--wb-navy) !important; margin: 0 0 12px !important; text-transform: none;
}
.wb-foot p, .wb-foot li { font-size: 13px; color: var(--wb-text); line-height: 1.5; }
.wb-foot ul { list-style: none; margin: 0; padding: 0; }
.wb-foot li + li { margin-top: 4px; }
.wb-foot a { color: var(--wb-text); text-decoration: none; }
.wb-foot a:hover { color: var(--wb-blue); }
.wb-foot .wb-foot__aktywne a { color: var(--wb-blue); font-weight: 700; }
.wb-foot .wb-foot__logo img { max-width: 180px; height: auto; }
.wb-foot__kontakt p { display: flex; gap: 10px; align-items: flex-start; }
.wb-foot__kontakt p + p { margin-top: 8px; }
.wb-foot__kontakt p::before { content: ""; width: 16px; height: 16px; flex: none; margin-top: 2px; background: var(--wb-navy); -webkit-mask: var(--wb-i) center/contain no-repeat; mask: var(--wb-i) center/contain no-repeat; }
.wb-foot__mail { --wb-i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='m3 7 9 6 9-6'/%3E%3C/svg%3E"); }
.wb-foot__tel { --wb-i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M5 4h4l2 5-2.5 1.5a11 11 0 0 0 5 5L15 13l5 2v4a2 2 0 0 1-2 2A16 16 0 0 1 3 6a2 2 0 0 1 2-2z'/%3E%3C/svg%3E"); }
.wb-foot__www { --wb-i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M3 12h18M12 3c2.5 2.7 3.8 5.7 3.8 9s-1.3 6.3-3.8 9c-2.5-2.7-3.8-5.7-3.8-9S9.5 5.7 12 3z'/%3E%3C/svg%3E"); }
.ct-footer [data-row*="top"] [data-id="socials"] { margin-top: 16px; }
.ct-footer [data-id="socials"] .ct-social-box a { width: 32px; height: 32px; border-radius: 50%; background: #eef3fc; display: grid; place-items: center; }
.ct-footer [data-id="socials"] svg { fill: var(--wb-navy) !important; width: 14px; height: 14px; }

/* Pas z linkami partnerskimi */
.ct-footer [data-row*="middle"] { background: #f6f9fe !important; }
.ct-footer [data-row*="middle"] .ct-container { padding-block: 18px !important; }
.wb-partnerzy { display: flex; flex-wrap: wrap; gap: 10px 40px; font-size: 12.5px; }
.wb-partnerzy p { margin: 0; color: var(--wb-text); display: flex; flex-wrap: wrap; align-items: center; gap: 4px 14px; }
.wb-partnerzy strong { color: var(--wb-navy); }
.wb-partnerzy a { color: var(--wb-text); text-decoration: none; }
.wb-partnerzy a:hover { color: var(--wb-blue); }

/* Dolny pas */
.ct-footer [data-row*="bottom"] { background: #fff !important; border-top: 1px solid var(--wb-line); }
.ct-footer [data-row*="bottom"] .ct-container { padding-block: 16px !important; }
.ct-footer [data-row*="bottom"], .ct-footer [data-row*="bottom"] a, .ct-footer .ct-footer-copyright { color: var(--wb-muted) !important; font-size: 12px; }
.ct-footer [data-row*="bottom"] [data-id="menu"] a { font-size: 12px !important; color: var(--wb-muted) !important; }
.ct-footer [data-row*="bottom"] a:hover { color: var(--wb-blue) !important; }

@media (max-width: 999px) {
	.ct-footer [data-row*="top"] .ct-container { grid-template-columns: 1fr 1fr !important; gap: 28px !important; }
	.ct-footer [data-row*="top"] .ct-container > div:first-child { grid-column: 1 / -1; }
}
@media (max-width: 560px) {
	.ct-footer [data-row*="top"] .ct-container { grid-template-columns: 1fr !important; }
}

/* Poprawki po podglądzie */
.wb-hero .wp-block-cover__inner-container { position: static; }
.ct-footer [data-row*="middle"] .ct-container { grid-template-columns: 1fr !important; }
.ct-footer [data-row*="bottom"] .ct-container { align-items: center; }
.ct-footer [data-row*="bottom"] [data-id="menu"] a { text-transform: none !important; font-weight: 500 !important; letter-spacing: 0 !important; }
.ct-footer [data-row*="bottom"] .ct-footer-copyright p { margin: 0; }
@media (max-width: 781px) {
	.wb-hero .wb-hero__caption { right: 12px; bottom: 12px; }
}
.wb-hero .wp-block-cover__inner-container > * { position: relative; z-index: 2; }
.wb-hero .wp-block-cover__inner-container > .wb-hero__caption { position: absolute; z-index: 2; }
.wb-promo .wp-block-cover__inner-container > *, .wb-promo-v .wp-block-cover__inner-container > * { position: relative; z-index: 2; }
.wb-promo .wp-block-cover__inner-container > .wb-ad-label, .wb-promo-v .wp-block-cover__inner-container > .wb-ad-label { position: absolute; z-index: 3; }
.ct-footer [data-row*="bottom"] [data-column] { align-self: center; margin-block: 0 !important; }

/* Strony prawne obok copyright */
.ct-footer [data-row*="bottom"] .ct-container { grid-template-columns: 1fr !important; }
.ct-footer [data-row*="bottom"] [data-column] { display: flex !important; flex-wrap: wrap; align-items: center; gap: 6px 18px; }
.ct-footer [data-row*="bottom"] [data-id="menu"] { margin: 0 !important; }
.ct-footer [data-row*="bottom"] [data-id="menu"] ul { display: flex; flex-wrap: wrap; gap: 4px 18px; margin: 0; padding: 0; }
.ct-footer [data-row*="bottom"] [data-id="menu"] li { margin: 0; padding: 0; }
.ct-footer [data-row*="bottom"] [data-id="menu"] a { padding: 0 !important; height: auto !important; }
.ct-footer [data-row*="bottom"] [data-id="menu"] li:first-child { position: relative; padding-left: 18px; }
.ct-footer [data-row*="bottom"] [data-id="menu"] li:first-child::before { content: "|"; position: absolute; left: 0; color: var(--wb-line); }
@media (max-width: 781px) {
	.ct-footer [data-row*="bottom"] [data-column] { justify-content: center; text-align: center; }
	.ct-footer [data-row*="bottom"] [data-id="menu"] ul { justify-content: center; }
	.ct-footer [data-row*="bottom"] [data-id="menu"] li:first-child { padding-left: 0; }
	.ct-footer [data-row*="bottom"] [data-id="menu"] li:first-child::before { display: none; }
}
.ct-footer [data-row*="top"] [data-column] { --horizontal-alignment: flex-start; --text-horizontal-alignment: left; justify-content: flex-start !important; align-items: flex-start !important; text-align: left !important; }
.ct-footer [data-row*="top"] [data-column] .ct-widget { text-align: left !important; }
.ct-footer [data-row*="bottom"] [data-column] { justify-content: flex-start !important; text-align: left !important; flex-wrap: wrap; }
.ct-footer [data-row*="bottom"] .ct-footer-copyright { width: auto !important; flex: 0 1 auto; text-align: left !important; }
@media (max-width: 781px) {
	.ct-footer [data-row*="bottom"] [data-column] { justify-content: center !important; text-align: center !important; }
	.ct-footer [data-row*="bottom"] .ct-footer-copyright { text-align: center !important; }
}
@media (min-width: 782px) {
	.ct-footer [data-row*="bottom"] [data-column] { flex-direction: row !important; align-items: center !important; }
}
@media (min-width: 782px) {
	.ct-footer [data-row*="bottom"] [data-column] { justify-content: space-between !important; }
	.ct-footer [data-row*="bottom"] [data-id="menu"] li:first-child { padding-left: 0; }
	.ct-footer [data-row*="bottom"] [data-id="menu"] li:first-child::before { display: none; }
}

/* Reklamy z kodu */
.wb-ad { min-height: 0; }
.wb-ad ins.adsbygoogle { margin: 0 auto; }
.wb-ad img { max-width: 100%; height: auto; display: inline-block; }
.wb-ad--bok { background: transparent; border: 0; padding-top: 18px; }
.wb-ad--gora, .wb-ad--srodek, .wb-ad--dol { padding: 20px 12px 10px; }

/* Baner u góry: równe wyrównanie */
.wb-promo.wp-block-cover { padding: 24px 32px !important; align-items: center !important; }
.wb-promo .wp-block-cover__inner-container { align-items: center !important; }
.wb-promo .wp-block-cover__inner-container > *:not(.wb-ad-label) { margin: 0 !important; }
.wb-promo .wb-promo__text > * { margin: 0 !important; }
.wb-promo .wb-promo__text p { margin-top: 6px !important; }
@media (max-width: 781px) {
	.wb-promo.wp-block-cover { padding: 22px 20px !important; }
}

/* Podpis „Reklama” nad reklamą, bez nachodzenia */
.wb-ad, .wb-ad--gora, .wb-ad--srodek, .wb-ad--dol, .wb-ad--bok { padding-top: 34px !important; }
.wb-ad .wb-ad__label { top: 9px; right: 12px; line-height: 1; }

/* ==========================================================
   Dokumenty: polityka prywatności, regulamin, RODO, patronat
   ========================================================== */
.wb-doc-hero, .wb-doc { font-family: var(--wb-font); }
.wb-doc-hero *, .wb-doc * { font-family: inherit; }
.entry-content > .wb-doc-hero, .entry-content > .wb-doc { margin-block: 0 !important; }
.wb-wrap { width: var(--theme-container-width, calc(100% - 40px)); max-width: var(--theme-normal-container-max-width, 1290px); margin-inline: auto !important; }
.wb-doc-hero {
	background: radial-gradient(900px 380px at 85% 0%, #e6efff 0%, rgba(230,239,255,0) 65%), linear-gradient(180deg, #f7faff 0%, #fff 100%);
	padding: 56px 0 40px; border-bottom: 1px solid var(--wb-line);
}
.wb-doc-hero h1, .wb-doc h2, .wb-doc h3 { color: var(--wb-navy); }
.wb-eyebrow {
	display: inline-block; font-size: 11px !important; font-weight: 700; letter-spacing: .14em; text-transform: uppercase;
	color: var(--wb-blue) !important; background: #e7effd; padding: 5px 12px; border-radius: 6px; margin: 0 0 14px !important;
}
.wb-doc-hero__title { font-size: clamp(30px, 4vw, 44px) !important; font-weight: 800 !important; letter-spacing: -.02em; line-height: 1.15 !important; margin: 4px 0 12px !important; }
.wb-lead { max-width: 660px; font-size: 17px; line-height: 1.6; color: var(--wb-text); margin: 0 !important; }
.wb-doc-hero__date { margin: 12px 0 0 !important; font-size: 13px; color: var(--wb-muted) !important; }
.wb-doc-nav { list-style: none; display: flex; flex-wrap: wrap; gap: 10px; padding: 0 !important; margin: 24px 0 0 !important; }
.wb-doc-nav li { margin: 0; }
.wb-doc-nav a {
	display: inline-block; padding: 8px 16px; border-radius: 999px; border: 1px solid var(--wb-line);
	background: #fff; color: var(--wb-navy); font-size: 14px; font-weight: 600; text-decoration: none; transition: .2s;
}
.wb-doc-nav a:hover { border-color: var(--wb-blue); color: var(--wb-blue); }
.wb-doc-nav .is-current a { background: var(--wb-blue); border-color: var(--wb-blue); color: #fff; }

.wb-doc { background: var(--wb-soft); padding: 40px 0 64px; }
.wb-doc__grid { display: grid; grid-template-columns: 280px minmax(0, 1fr); gap: 28px; align-items: start; }
.wb-doc__toc {
	position: sticky; top: 24px; margin: 0 !important; background: #fff; border: 1px solid var(--wb-line);
	border-radius: var(--wb-radius); padding: 20px !important; max-height: calc(100vh - 48px); overflow: auto;
}
.admin-bar .wb-doc__toc { top: 56px; }
.wb-doc__toc-title { font-size: 12px !important; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: var(--wb-navy) !important; margin: 0 0 10px !important; }
.wb-doc__toc ol { list-style: none; padding: 0 !important; margin: 0 !important; }
.wb-doc__toc li { margin: 0; }
.wb-doc__toc a {
	display: block; padding: 6px 10px; border-left: 2px solid transparent; border-radius: 0 6px 6px 0;
	font-size: 13.5px; line-height: 1.4; color: var(--wb-text); text-decoration: none;
}
.wb-doc__toc a:hover, .wb-doc__toc a.is-active { background: #eef4ff; color: var(--wb-blue); border-left-color: var(--wb-blue); }

.wb-doc__body {
	background: #fff; border: 1px solid var(--wb-line); border-radius: var(--wb-radius);
	padding: 40px 44px !important; margin: 0 !important; box-shadow: 0 16px 40px -32px rgba(11,29,74,.3);
}
.wb-doc__body > * { max-width: 800px; }
.wb-doc__body p, .wb-doc__body li { font-size: 15.5px; line-height: 1.75; color: var(--wb-text); }
.wb-doc__body > p { margin: 0 0 16px !important; }
.wb-doc__body strong { color: var(--wb-navy); }
.wb-doc__body a { color: var(--wb-blue); }
.wb-doc__body h2 {
	font-size: 21px !important; font-weight: 800 !important; line-height: 1.3 !important;
	margin: 36px 0 14px !important; padding-top: 26px; border-top: 1px solid var(--wb-line); scroll-margin-top: 90px;
}
.wb-doc__body > h2:first-child { margin-top: 0 !important; padding-top: 0; border-top: 0; }
.wb-doc__body ul { list-style: none; padding-left: 0 !important; margin: 0 0 18px !important; }
.wb-doc__body ul > li { position: relative; padding-left: 22px; margin-bottom: 8px; }
.wb-doc__body ul > li::before { content: ""; position: absolute; left: 4px; top: .72em; width: 7px; height: 7px; border-radius: 50%; background: var(--wb-blue); }
.wb-doc__help {
	margin-top: 40px !important; padding: 26px !important; border-radius: var(--wb-radius);
	background: linear-gradient(135deg, #eaf1fd 0%, #f6f9ff 100%); border: 1px solid #d9e5fa;
}
.wb-doc__help h3 { margin: 0 0 6px !important; font-size: 18px !important; font-weight: 800 !important; }
.wb-doc__help p { margin: 0 !important; }
.wb-doc__help .wb-btns { margin-top: 16px !important; }

@media (max-width: 1024px) {
	.wb-doc__grid { grid-template-columns: minmax(0, 1fr); }
	.wb-doc__body { overflow-wrap: anywhere; }
	.wb-doc__toc { position: static; max-height: none; }
	.wb-doc__toc ol { columns: 2; column-gap: 20px; }
}
@media (max-width: 690px) {
	.wb-doc-hero { padding: 36px 0 28px; }
	.wb-doc { padding: 20px 0 40px; }
	.wb-doc__toc ol { columns: 1; }
	.wb-doc__body { padding: 24px 18px !important; }
	.wb-doc__body h2 { font-size: 19px !important; }
	.wb-doc-nav a { padding: 7px 13px; font-size: 13px; }
}

/* ==========================================================
   Podstrony: Kontakt, Pomagamy, Współpraca, O nas
   ========================================================== */
.wb-psec, .wb-page-hero { font-family: var(--wb-font); }
.wb-psec * { font-family: inherit; }
.entry-content > .wb-psec { margin-block: 0 !important; }
.wb-psec { padding: 56px 0; background: #fff; }
.wb-psec--soft { background: var(--wb-soft); }
.wb-psec h2, .wb-psec h3 { color: var(--wb-navy); margin: 0; }
.wb-psec p { color: var(--wb-text); margin: 0; }
.wb-psec a { color: var(--wb-blue); }
.wb-psec .wb-btn .wp-block-button__link { color: #fff; }
.wb-psec .wb-btn--light .wp-block-button__link { color: var(--wb-blue); }
.wb-phead { margin-bottom: 26px !important; max-width: 720px; }
.wb-h2 { font-size: clamp(24px, 2.8vw, 32px) !important; font-weight: 800 !important; line-height: 1.2 !important; letter-spacing: -.01em; }
.wb-sub { margin-top: 10px !important; font-size: 16px; line-height: 1.6; }

/* Statystyki i kategorie w nagłówku */
.wb-stats { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px !important; }
.wb-stat { background: #fff; border: 1px solid var(--wb-line); border-radius: var(--wb-radius); padding: 12px 18px !important; min-width: 120px; }
.wb-stat p { margin: 0 !important; font-size: 12px; color: var(--wb-muted); }
.wb-stat p:first-child { font-size: 24px; line-height: 1.2; color: var(--wb-blue); }
.wb-stat strong { color: var(--wb-blue); font-weight: 800; }
.wb-pills { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 22px !important; }
.wb-pill { margin: 0 !important; background: #fff; border: 1px solid var(--wb-line); border-radius: 999px; padding: 6px 14px; font-size: 13px; font-weight: 600; color: var(--wb-navy) !important; }

/* Karty */
.wb-pcards { display: grid; gap: 18px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.wb-pcards--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.wb-pcards > * { margin: 0 !important; }
.wb-pcard { background: #fff; border: 1px solid var(--wb-line); border-radius: var(--wb-radius); padding: 24px !important; box-shadow: var(--wb-shadow); }
.wb-psec--soft .wb-pcard { border-color: #dfe8fb; }
.wb-pcard h3 { font-size: 17px !important; font-weight: 800 !important; margin: 0 0 8px !important; }
.wb-pcard p { font-size: 14.5px; line-height: 1.6; }
.wb-pcard::before, .wb-kontakt__item::before {
	content: ""; display: block; width: 46px; height: 46px; border-radius: 12px; margin-bottom: 16px;
	background: #eaf1ff var(--wb-i) center/22px no-repeat;
}
.wb-ico-mail { --wb-i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231559e6' stroke-width='2'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='m3 7 9 6 9-6'/%3E%3C/svg%3E"); }
.wb-ico-phone { --wb-i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231559e6' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M5 4h4l2 5-2.5 1.5a11 11 0 0 0 5 5L15 13l5 2v4a2 2 0 0 1-2 2A16 16 0 0 1 3 6a2 2 0 0 1 2-2z'/%3E%3C/svg%3E"); }
.wb-ico-heart { --wb-i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231559e6' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M12 20s-7-4.4-7-10a4 4 0 0 1 7-2.6A4 4 0 0 1 19 10c0 5.6-7 10-7 10z'/%3E%3C/svg%3E"); }
.wb-ico-share { --wb-i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231559e6' stroke-width='2'%3E%3Ccircle cx='18' cy='5' r='2.5'/%3E%3Ccircle cx='6' cy='12' r='2.5'/%3E%3Ccircle cx='18' cy='19' r='2.5'/%3E%3Cpath d='m8.2 10.8 7.6-4.5M8.2 13.2l7.6 4.5'/%3E%3C/svg%3E"); }
.wb-ico-seo { --wb-i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231559e6' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='6.5'/%3E%3Cpath d='m20 20-4.2-4.2M8.5 11h5M11 8.5v5'/%3E%3C/svg%3E"); }
.wb-ico-link { --wb-i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231559e6' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M10 14a4 4 0 0 0 5.7 0l3-3a4 4 0 0 0-5.7-5.7l-1 1M14 10a4 4 0 0 0-5.7 0l-3 3a4 4 0 0 0 5.7 5.7l1-1'/%3E%3C/svg%3E"); }
.wb-ico-pen { --wb-i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231559e6' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M4 20l1-4L16 5l3 3L8 19z'/%3E%3Cpath d='M14 7l3 3'/%3E%3C/svg%3E"); }
.wb-ico-pin { --wb-i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231559e6' stroke-width='2'%3E%3Cpath d='M12 21s-7-6.2-7-11.5a7 7 0 0 1 14 0C19 14.8 12 21 12 21z'/%3E%3Ccircle cx='12' cy='9.5' r='2.5'/%3E%3C/svg%3E"); }
.wb-ico-layout { --wb-i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231559e6' stroke-width='2'%3E%3Crect x='3' y='4' width='18' height='16' rx='2'/%3E%3Cpath d='M3 9h18M9 9v11'/%3E%3C/svg%3E"); }
.wb-ico-repeat { --wb-i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231559e6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M17 2l3 3-3 3M4 11V9a4 4 0 0 1 4-4h12M7 22l-3-3 3-3M20 13v2a4 4 0 0 1-4 4H4'/%3E%3C/svg%3E"); }
.wb-ico-check { --wb-i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231559e6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l7 3v6c0 4.5-3 7.5-7 9-4-1.5-7-4.5-7-9V6z'/%3E%3Cpath d='m9 12 2 2 4-4'/%3E%3C/svg%3E"); }
.wb-ico-news { --wb-i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231559e6' stroke-width='2'%3E%3Crect x='3' y='4' width='18' height='16' rx='2'/%3E%3Cpath d='M7 8h10M7 12h10M7 16h6'/%3E%3C/svg%3E"); }
.wb-ico-shop { --wb-i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231559e6' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M3 9l1.5-5h15L21 9M3 9v11h18V9M3 9c0 1.7 1.3 3 3 3s3-1.3 3-3c0 1.7 1.3 3 3 3s3-1.3 3-3c0 1.7 1.3 3 3 3s3-1.3 3-3'/%3E%3C/svg%3E"); }
.wb-ico-chart { --wb-i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231559e6' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M4 20h16M7 16v-4M12 16V8M17 16V5'/%3E%3C/svg%3E"); }
.wb-ico-mega { --wb-i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231559e6' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M3 10v4h3l7 5V5L6 10H3zM16.5 8.5a5 5 0 0 1 0 7'/%3E%3C/svg%3E"); }

/* Kontakt */
.wb-kontakt { gap: 40px !important; align-items: flex-start !important; margin: 0 !important; }
.wb-kontakt__item { display: grid !important; grid-template-columns: 46px 1fr; column-gap: 14px; align-items: center; background: #fff; border: 1px solid #dfe8fb; border-radius: var(--wb-radius); padding: 14px 16px !important; margin: 0 0 12px !important; }
.wb-kontakt__item::before { grid-row: span 2; margin: 0; }
.wb-kontakt__item p { margin: 0 !important; font-size: 15px; font-weight: 700; color: var(--wb-navy); overflow-wrap: anywhere; }
.wb-kontakt__item a { color: var(--wb-navy); text-decoration: none; }
.wb-kontakt__item a:hover { color: var(--wb-blue); }
p.wb-kontakt__label { font-size: 11px !important; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--wb-muted) !important; }
.wb-kontakt__h3 { font-size: 16px !important; font-weight: 800 !important; margin: 26px 0 10px !important; }
.wb-checks { list-style: none; padding: 0 !important; margin: 0 !important; }
.wb-checks li { position: relative; padding-left: 28px; margin: 0 0 10px; font-size: 15px; color: var(--wb-text); }
.wb-checks li::before { content: ""; position: absolute; left: 0; top: 3px; width: 18px; height: 18px; border-radius: 50%; background: var(--wb-blue) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 12 4 4 8-8'/%3E%3C/svg%3E") center/12px no-repeat; }
.wb-formcard { background: #fff; border: 1px solid var(--wb-line); border-radius: 16px; padding: 30px !important; box-shadow: 0 20px 50px -30px rgba(11, 29, 74, .35); }
.wb-formcard h3 { font-size: 20px !important; font-weight: 800 !important; }
.wb-formcard__sub { margin: 6px 0 18px !important; font-size: 14px; }
.wb-formcard .ff-btn-submit { background: var(--wb-blue) !important; border-radius: 8px !important; font-weight: 700 !important; padding: 12px 26px !important; }

/* Zbiórki */
.wb-zbiorki { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 20px; justify-items: center; }
.wb-zbiorki > * { margin: 0 !important; }
.wb-zbiorki iframe { display: block; border: 0; border-radius: var(--wb-radius); box-shadow: var(--wb-shadow); background: #fff; max-width: 100%; }

/* Cennik */
.wb-prices { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
.wb-prices > * { margin: 0 !important; }
.wb-price { position: relative; background: #fff; border: 1px solid #dfe8fb; border-radius: var(--wb-radius); padding: 24px !important; box-shadow: var(--wb-shadow); }
.wb-price--hot { border: 2px solid var(--wb-blue); }
.wb-price p { font-size: 14px; line-height: 1.55; }
p.wb-price__name { font-size: 15px; font-weight: 700; color: var(--wb-navy); }
p.wb-price__val { margin: 8px 0 10px !important; font-size: 30px; line-height: 1.1; }
.wb-price__val strong { color: var(--wb-blue); font-weight: 800; }
p.wb-price__badge { position: absolute; top: -12px; right: 16px; background: var(--wb-blue); color: #fff !important; font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; padding: 4px 10px; border-radius: 6px; }
.wb-note { margin-top: 20px !important; font-size: 14px; color: var(--wb-muted) !important; }

/* Kroki */
.wb-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.wb-steps > * { margin: 0 !important; }
.wb-step { background: var(--wb-soft); border-radius: var(--wb-radius); padding: 24px !important; }
p.wb-step__nr { width: 40px; height: 40px; border-radius: 50%; background: var(--wb-blue); color: #fff !important; display: grid; place-items: center; font-weight: 800; margin-bottom: 14px !important; }
.wb-step h3 { font-size: 17px !important; font-weight: 800 !important; margin-bottom: 6px !important; }
.wb-step p { font-size: 14.5px; }

/* Zdjęcie i dwie kolumny */
.wb-split { gap: 48px !important; align-items: center !important; margin: 0 !important; }
.wb-split p + p { margin-top: 14px !important; }
.wb-pimg { margin: 0 !important; }
.wb-pimg img { width: 100%; height: 360px; object-fit: cover; border-radius: 16px; display: block; box-shadow: 0 20px 50px -30px rgba(11, 29, 74, .45); }

/* CTA */
.wb-psec--cta { padding-top: 0; background: #fff; }
.wb-psec--soft + .wb-psec--cta { padding-top: 56px; }
.wb-pcta { background: linear-gradient(120deg, #0b1d4a 0%, #1559e6 100%); border-radius: 18px; padding: 44px 48px !important; text-align: center; }
.wb-pcta .wb-h2 { color: #fff !important; }
.wb-pcta .wb-sub { color: rgba(255, 255, 255, .85) !important; max-width: 640px; margin-inline: auto !important; }
.wb-pcta .wb-btns { justify-content: center; margin-top: 24px !important; }
.wb-pcta .wb-btn:not(.wb-btn--light) .wp-block-button__link { background: #fff; color: var(--wb-blue); border-color: #fff; }
.wb-pcta .wb-btn--light .wp-block-button__link { background: transparent; color: #fff; border-color: rgba(255, 255, 255, .6); }
.wb-pcta .wb-btn .wp-block-button__link:hover { background: #fff; color: var(--wb-navy); }
.wb-eyebrow--light { background: rgba(255, 255, 255, .14) !important; color: #fff !important; }

@media (max-width: 1100px) {
	.wb-pcards--4, .wb-prices { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 860px) {
	.wb-pcards, .wb-steps { grid-template-columns: minmax(0, 1fr); }
	.wb-kontakt, .wb-split { flex-wrap: wrap !important; gap: 28px !important; }
	.wb-kontakt > .wp-block-column, .wb-split > .wp-block-column { flex-basis: 100% !important; }
	.wb-pimg img { height: 240px; }
}
@media (max-width: 560px) {
	.wb-psec { padding: 40px 0; }
	.wb-pcards--4, .wb-prices { grid-template-columns: minmax(0, 1fr); }
	.wb-pcta { padding: 32px 20px !important; }
	.wb-formcard { padding: 22px 18px !important; }
}

/* Współpraca: miejsca reklamowe na stronie głównej */
.wb-psec--soft .wb-step { background: #fff; border: 1px solid #dfe8fb; }
.wb-adplan { gap: 32px !important; align-items: flex-start !important; margin: 0 !important; }
.wb-adplan__map {
	position: sticky; top: 90px; background: #f6f9fe; border: 1px solid var(--wb-line); border-radius: 16px; padding: 14px !important;
	display: flex; flex-direction: column; gap: 8px; box-shadow: var(--wb-shadow);
}
.admin-bar .wb-adplan__map { top: 122px; }
.wb-adplan__map > *, .wb-adplan__row > *, .wb-adplan__main > *, .wb-adplan__side > * { margin: 0 !important; }
.wb-adplan__map p { font-size: 11px !important; line-height: 1.2; text-align: center; border-radius: 8px; }
p.wb-adplan__bar { background: #dfe7f5; color: var(--wb-muted) !important; padding: 8px; }
p.wb-adplan__box { background: #fff; border: 1px solid var(--wb-line); color: var(--wb-muted) !important; padding: 12px 6px; }
p.wb-adplan__box--hero { padding: 26px 6px; background: linear-gradient(90deg, #0b1d4a, #3c6fd6); color: rgba(255,255,255,.8) !important; border: 0; }
.wb-adplan__row { display: grid; grid-template-columns: 2fr 1fr; gap: 8px; }
.wb-adplan__main, .wb-adplan__side { display: flex; flex-direction: column; gap: 8px; }
.wb-adplan__main p.wb-adplan__box { padding: 18px 6px; }
p.wb-adplan__slot {
	background: repeating-linear-gradient(45deg, #e3ecff, #e3ecff 6px, #d3e1ff 6px, #d3e1ff 12px);
	border: 2px dashed var(--wb-blue); color: var(--wb-blue) !important; font-size: 16px !important; font-weight: 800; padding: 10px 6px;
}
p.wb-adplan__slot--2 { padding: 46px 6px; display: grid; place-items: center; flex: 1; }
.wb-adslots { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.wb-adslots > * { margin: 0 !important; }
.wb-adslot { position: relative; background: #fff; border: 1px solid #dfe8fb; border-radius: var(--wb-radius); padding: 22px !important; box-shadow: var(--wb-shadow); }
.wb-adslot--hot { border: 2px solid var(--wb-blue); }
p.wb-adslot__nr { width: 34px; height: 34px; border-radius: 50%; background: var(--wb-blue); color: #fff !important; display: grid; place-items: center; font-weight: 800; margin-bottom: 12px !important; }
.wb-adslot h3 { font-size: 16px !important; font-weight: 800 !important; margin: 0 0 6px !important; }
p.wb-adslot__desc { font-size: 13.5px; line-height: 1.55; margin-bottom: 12px !important; }
p.wb-adslot__row { display: flex; justify-content: space-between; align-items: baseline; padding: 8px 0; border-top: 1px solid var(--wb-line); font-size: 14px; }
.wb-adslot__row strong { color: var(--wb-blue); font-size: 17px; font-weight: 800; }
@media (max-width: 1100px) {
	.wb-adslots { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 860px) {
	.wb-adplan { flex-wrap: wrap !important; }
	.wb-adplan > .wp-block-column { flex-basis: 100% !important; }
	.wb-adplan__map { position: static; max-width: 360px; margin-inline: auto !important; }
	.wb-adslots { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 560px) {
	.wb-adslots { grid-template-columns: minmax(0, 1fr); }
}

/* Współpraca: przyciski w nagłówku, ceny artykułów */
.wb-page-hero .wb-btns { margin-top: 24px !important; }
.wb-page-hero .wb-btn--light .wp-block-button__link { border-color: var(--wb-blue); }
.wb-psec .wb-btns { margin-top: 24px !important; }
.wb-prices--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 760px; margin: 22px 0 !important; }
.wb-prices--2 + .wb-pcards { margin-top: 8px !important; }
#reklama { scroll-margin-top: 80px; }
.wb-foot__reklama { --wb-i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M3 10v4h3l7 5V5L6 10H3zM16.5 8.5a5 5 0 0 1 0 7'/%3E%3C/svg%3E"); }
@media (max-width: 560px) { .wb-prices--2 { grid-template-columns: minmax(0, 1fr); } }

/* Dodaj firmę: pakiety, kroki, FAQ */
.wb-prices--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.wb-plan .wb-checks { margin-top: 14px !important; }
.wb-plan .wb-checks li { font-size: 14px; margin-bottom: 8px; }
p.wb-plan__sub { font-size: 13px; color: var(--wb-muted) !important; }
.wb-steps--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
#cennik, #formularz { scroll-margin-top: 80px; }
.wb-faqs { display: grid; gap: 12px; max-width: 860px; }
.wb-faqs > * { margin: 0 !important; }
.wb-faq { background: #fff; border: 1px solid var(--wb-line); border-radius: var(--wb-radius); padding: 0 !important; box-shadow: var(--wb-shadow); }
.wb-faq summary { cursor: pointer; list-style: none; padding: 16px 52px 16px 20px; font-weight: 700; color: var(--wb-navy); position: relative; }
.wb-faq summary::-webkit-details-marker { display: none; }
.wb-faq summary::after { content: "+"; position: absolute; right: 20px; top: 50%; transform: translateY(-50%); width: 24px; height: 24px; border-radius: 50%; background: #eaf1ff; color: var(--wb-blue); display: grid; place-items: center; font-weight: 800; }
.wb-faq[open] summary::after { content: "\2212"; }
.wb-faq p { padding: 0 20px 18px; font-size: 15px; line-height: 1.65; }
.wb-formcard .ff-el-group { margin-bottom: 16px; }
.wb-formcard .ff-el-input--label label { font-weight: 600; color: var(--wb-navy); font-size: 14px; }
.wb-formcard .ff-el-form-control { border-radius: 8px !important; border-color: #d6e0f0 !important; }
.wb-formcard .ff-el-help-message { font-size: 12.5px; color: var(--wb-muted); }
@media (max-width: 1100px) { .wb-steps--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 860px) { .wb-prices--3 { grid-template-columns: minmax(0, 1fr); max-width: 520px; } }
@media (max-width: 560px) { .wb-steps--4 { grid-template-columns: minmax(0, 1fr); } }

/* Poprawki: odstęp przed kartami kontaktu, plusik w FAQ */
.wb-checks + .wb-kontakt__item { margin-top: 24px !important; }
.wb-faq summary::after {
	content: ""; width: 26px; height: 26px; border-radius: 50%;
	background:
		linear-gradient(var(--wb-blue), var(--wb-blue)) center / 12px 2px no-repeat,
		linear-gradient(var(--wb-blue), var(--wb-blue)) center / 2px 12px no-repeat,
		#eaf1ff;
}
.wb-faq[open] summary::after {
	content: "";
	background: linear-gradient(var(--wb-blue), var(--wb-blue)) center / 12px 2px no-repeat, #eaf1ff;
}
.wb-faq summary { margin: 0 !important; display: block; }
.wb-faq > p, .wb-faq > .wp-block-paragraph { margin: 0 !important; }

/* ==========================================================
   Wpisy: śródtytuły w kolorze portalu
   ========================================================== */
.single-post .entry-content h2,
.single-post .entry-content h3 { color: var(--wb-blue); scroll-margin-top: 90px; }
.single-post .entry-content p a, .single-post .entry-content .wp-block-list a { color: var(--wb-blue); }
.single-post .entry-content strong { color: var(--wb-navy); }
.single-post .entry-content ul.wp-block-list li::marker { color: var(--wb-blue); }


/* Strona główna: równe karty w sekcji najnowszych artykułów */
.wb-news { align-items: stretch !important; }
.wb-news > .wp-block-column { display: flex; flex-direction: column; }
.wb-news .wp-block-query { flex: 1; display: flex; flex-direction: column; margin: 0; }
.wb-news .wp-block-post-template { flex: 1; }
.wb-news-big .wp-block-post-template { display: flex; flex-direction: column; }
.wb-news-big .wp-block-post-template > li { flex: 1; display: flex; }
.wb-news-big .wb-post { flex: 1; }
.wb-news-small .wp-block-post-template { grid-auto-rows: 1fr; }
.wb-news-small .wp-block-post-template > li { display: flex; }
.wb-news-small .wb-post { flex: 1; }
.wb-post .wp-block-post-featured-image { flex: none; }
.wb-post .wp-block-post-title a { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.wb-news-big .wp-block-post-excerpt__excerpt { display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; margin: 0; }
.wb-post .wp-block-post-featured-image img { background: #e9eef8; }

/* Najnowsze artykuły: małe karty w naturalnej wysokości, zdjęcie dużej karty wypełnia resztę */
.wb-news-small .wp-block-query, .wb-news-small .wp-block-post-template { flex: none !important; }
.wb-news-small .wp-block-post-template { grid-auto-rows: auto !important; align-content: start; }
.wb-news-big .wb-post .wp-block-post-featured-image { flex: 1 1 auto; min-height: 220px; position: relative; overflow: hidden; }
.wb-news-big .wb-post .wp-block-post-featured-image a { position: absolute; inset: 0; display: block; }
.wb-news-big .wb-post .wp-block-post-featured-image img { position: absolute; inset: 0; width: 100% !important; height: 100% !important; aspect-ratio: auto !important; object-fit: cover; }
.wb-news-big .wb-post__body { flex: none; padding-bottom: 22px; }
.wb-news-big .wp-block-post-date { margin-top: 4px !important; }
@media (max-width: 781px) {
	.wb-news-big .wb-post .wp-block-post-featured-image { flex: none; aspect-ratio: 16 / 9; min-height: 0; }
}

/* Miejsca reklamowe bez reklamy (Google nic nie podstawił) są ukrywane */
.wb-ad:has(ins.adsbygoogle[data-ad-status="unfilled"]) { display: none !important; }

/* Kafelki artykułów: równe rzędy i odstępy */
.wb-news-small .wp-block-post-template { grid-auto-rows: 1fr !important; row-gap: 16px !important; column-gap: 16px !important; align-content: start; }
.wb-news-small .wp-block-post-template > li { margin: 0 !important; display: flex; }
.wb-news-small .wb-post { height: auto; flex: 1; }
.wb-post__body > * { margin-block: 0 !important; }
.wb-post .wb-badge { margin-top: -12px !important; margin-bottom: 4px !important; }
.wb-post .wp-block-post-date { margin-top: auto !important; padding-top: 6px; }

/* Własna reklama pod katalogiem firm (strony i opieka WordPress) */
.wb-pdpromo { position: relative; margin-top: 28px !important; background: #fff; border: 1px solid #e4dcff; border-radius: 16px; overflow: hidden; box-shadow: var(--wb-shadow); }
.wb-pdpromo__cols { gap: 0 !important; margin: 0 !important; align-items: center !important; }
.wb-pdpromo__img { margin: 0 !important; background: linear-gradient(135deg, #f3efff, #eaf1ff); }
.wb-pdpromo__img img { display: block; width: 100%; height: auto; }
.wb-pdpromo__text { padding: 24px 28px !important; }
.wb-pdpromo__text > * { margin-block: 0 !important; }
.wb-pdpromo__text > * + * { margin-top: 12px !important; }
.wb-pdpromo h3 { font-size: 22px !important; font-weight: 800 !important; color: var(--wb-navy) !important; }
.wb-pdpromo p { font-size: 14.5px; line-height: 1.6; }
.wb-pdpromo .wb-checks li { font-size: 14px; margin-bottom: 6px; }
.wb-pdpromo .wb-checks li::before { background-color: #6c3cf0; }
.wb-pdpromo .wb-btn:not(.is-style-outline) .wp-block-button__link { background: #6c3cf0; border-color: #6c3cf0; }
.wb-pdpromo .wb-btn.is-style-outline .wp-block-button__link { color: #6c3cf0; border-color: #6c3cf0; }
.wb-pdpromo .wb-btn .wp-block-button__link:hover { background: #5a2ed6; border-color: #5a2ed6; color: #fff; }
.wb-pdpromo .wb-btns { margin-top: 18px !important; }
.wb-pdpromo > .wb-ad-label { position: absolute; top: 8px; right: 12px; margin: 0 !important; z-index: 2; }
@media (max-width: 781px) {
	.wb-pdpromo__cols { flex-wrap: wrap !important; }
	.wb-pdpromo__cols > .wp-block-column { flex-basis: 100% !important; }
	.wb-pdpromo__text { padding: 20px !important; }
}

/* Przyciski: równe wysokości i odstępy (także wersja z obramowaniem) */
.wb-btns { gap: 12px 14px !important; align-items: center; }
.wb-btns > .wp-block-button { margin: 0 !important; }
.wb-btn .wp-block-button__link { padding: 12px 22px !important; min-height: 46px; box-sizing: border-box; border-width: 2px !important; line-height: 1.2 !important; }
.wb-pdpromo .wb-btns { gap: 12px !important; }

/* Baner z nieruchomościami przesuwa się razem z przewijaniem (prawa kolumna) */
@media (min-width: 1000px) {
	.wb-main { align-items: stretch !important; }
	.wb-promo-v.wp-block-cover { position: sticky !important; top: 24px; }
	.admin-bar .wb-promo-v.wp-block-cover { top: 56px; }
}

/* Redakcja poleca (artykuły sponsorowane) */
.wb-polecane { margin-top: 32px !important; }
.wb-polecane .wp-block-post-template { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
.wb-polecane .wb-nopost a { color: var(--wb-blue); font-weight: 700; }
@media (max-width: 781px) { .wb-polecane .wp-block-post-template { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } }
@media (max-width: 560px) { .wb-polecane .wp-block-post-template { grid-template-columns: minmax(0, 1fr) !important; } }

/* Redakcja poleca: 4 pionowe karty z tytułem na zdjęciu */
.wb-rp .wp-block-post-template { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)) !important; gap: 14px; margin: 0; padding: 0; list-style: none; }
.wb-rp .wp-block-post-template > li { margin: 0 !important; }
.wb-rp-card { position: relative; border-radius: 14px; overflow: hidden; background: var(--wb-navy); box-shadow: 0 10px 28px -14px rgba(11, 29, 74, .45); transition: transform .25s, box-shadow .25s; }
.wb-rp-card:hover { transform: translateY(-3px); box-shadow: 0 16px 34px -14px rgba(11, 29, 74, .55); }
.wb-rp-card .wp-block-post-featured-image { margin: 0 !important; }
.wb-rp-card .wp-block-post-featured-image img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .4s; }
.wb-rp-card:hover .wp-block-post-featured-image img { transform: scale(1.04); }
.wb-rp-card__body {
	position: absolute; inset: auto 0 0 0; padding: 60px 14px 14px !important; margin: 0 !important;
	background: linear-gradient(180deg, rgba(11, 29, 74, 0) 0%, rgba(11, 29, 74, .78) 40%, rgba(11, 29, 74, .95) 100%);
	pointer-events: none;
}
.wb-rp-card__body { display: flex; flex-direction: column; }
.wb-rp-card__body > * { margin: 0 !important; pointer-events: auto; }
.wb-rp-card__body > * + * { margin-top: 6px !important; }
p.wb-rp-card__label { display: inline-block; align-self: flex-start; background: #ffb400; color: #1d1600 !important; font-size: 10px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; padding: 4px 9px; border-radius: 5px; line-height: 1.3; }
.wb-rp-card .wp-block-post-title { font-size: 15px !important; line-height: 1.3 !important; font-weight: 800 !important; }
.wb-rp-card .wp-block-post-title a { color: #fff !important; display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; }
.wb-rp-card .wp-block-post-date { font-size: 12px; color: rgba(255, 255, 255, .75) !important; }
.wb-rp-card .wp-block-post-date a { color: inherit !important; }
@media (max-width: 1100px) { .wb-rp .wp-block-post-template { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } }
@media (max-width: 480px) { .wb-rp .wp-block-post-template { grid-template-columns: minmax(0, 1fr) !important; } .wb-rp-card .wp-block-post-featured-image img { aspect-ratio: 4 / 3 !important; } }

/* Pasek boczny wpisów: karty dodaj firmę / artykuł, baner reklamy */
.ct-sidebar .wb-card, .ct-sidebar .wb-sb-promo, .ct-sidebar .wb-sb-img { font-family: var(--wb-font); }
.ct-sidebar .wb-card h3, .ct-sidebar .wb-sb-promo h3 { margin: 0; }
.ct-sidebar .wb-card p { color: var(--wb-text); }
.wb-sb-promo.wp-block-cover { border-radius: var(--wb-radius); overflow: hidden; padding: 26px 22px 22px !important; min-height: 340px !important; align-items: flex-end !important; }
.wb-sb-promo .wp-block-cover__inner-container { color: #fff; }
.wb-sb-promo .wp-block-cover__inner-container > * { margin: 0 !important; }
.wb-sb-promo .wp-block-cover__inner-container > * + * { margin-top: 10px !important; }
.wb-sb-promo h3 { color: #fff !important; font-size: 22px !important; font-weight: 800 !important; line-height: 1.2 !important; }
.wb-sb-promo p { color: rgba(255, 255, 255, .9) !important; font-size: 14px; line-height: 1.55; }
.wb-sb-promo .wb-btns { margin-top: 16px !important; }
p.wb-sb-promo__label { position: absolute; top: 8px; right: 12px; margin: 0 !important; font-size: 10px !important; letter-spacing: .04em; color: rgba(255, 255, 255, .85) !important; }
.wb-sb-img { position: relative; }
.wb-sb-img p.wb-sb-promo__label { color: var(--wb-muted) !important; top: -16px; right: 2px; }
.wb-sb-img .wp-block-image { margin: 0 !important; }
.wb-sb-img img { width: 100%; height: auto; border-radius: var(--wb-radius); box-shadow: var(--wb-shadow); display: block; }
.wb-sb-promo .wp-block-cover__inner-container { position: static; }
.wb-sb-promo .wp-block-cover__inner-container > *:not(.wb-sb-promo__label) { position: relative; z-index: 2; }
.wb-sb-promo p.wb-sb-promo__label { z-index: 3; }

/* Karty (dodaj firmę / artykuł): tytuł obok ikony, opis pod spodem, bez nachodzenia */
.wb-card h3 { display: flex; align-items: center; min-height: 48px; line-height: 1.25 !important; }
.wb-card h3::before, .wb-card h3::after { top: 50% !important; transform: translateY(-50%); }
.wb-card p { padding-left: 0 !important; margin-top: 12px !important; }
.wb-card .wb-btns { margin-top: 16px !important; }
.ct-sidebar .wb-card { padding: 20px !important; }
.ct-sidebar .wb-card h3 { font-size: 16px !important; color: var(--wb-navy); }
.ct-sidebar .wb-btn.is-style-outline .wp-block-button__link { background: #fff !important; color: var(--wb-blue) !important; border-color: var(--wb-blue) !important; }
.ct-sidebar .wb-btn.is-style-outline .wp-block-button__link:hover { background: var(--wb-blue) !important; color: #fff !important; }
.ct-sidebar .wb-btn:not(.is-style-outline):not(.wb-btn--light) .wp-block-button__link { color: #fff !important; }

/* Własna reklama: zdjęcie wypełnia całą wysokość karty (bez paska na dole) */
@media (min-width: 782px) {
	.wb-pdpromo__cols { align-items: stretch !important; }
	.wb-pdpromo__cols > .wp-block-column:first-child { display: flex; }
	.wb-pdpromo__img { flex: 1; height: 100%; }
	.wb-pdpromo__img a { display: block; height: 100%; }
	.wb-pdpromo__img img { height: 100% !important; object-fit: contain; object-position: center; }
	.wb-pdpromo__text { align-self: center; }
}
.wb-pdpromo__img { background: #fff !important; }

/* Redakcja poleca: 2 rzędy po 2 większe karty */
.wb-rp .wp-block-post-template { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 16px; }
.wb-rp-card__body { padding: 70px 20px 18px !important; }
.wb-rp-card .wp-block-post-title { font-size: 19px !important; line-height: 1.3 !important; }
.wb-rp-card .wp-block-post-title a { -webkit-line-clamp: 3; }
.wb-rp-card .wp-block-post-date { font-size: 13px; }
@media (max-width: 560px) { .wb-rp .wp-block-post-template { grid-template-columns: minmax(0, 1fr) !important; } .wb-rp-card .wp-block-post-title { font-size: 17px !important; } }

/* Linki sponsorowane pod artykułami (blok treści Blocksy) */
.wb-sl { font-family: var(--wb-font); margin: 40px 0 10px !important; padding: 22px !important; border-radius: 16px; background: var(--wb-soft); border: 1px solid #dfe8fb; }
.wb-sl * { font-family: inherit; }
.wb-sl > * { margin: 0 !important; }
.wb-sl__head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 14px !important; }
.wb-sl__head > * { margin: 0 !important; }
p.wb-sl__label { font-size: 12px !important; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: var(--wb-navy) !important; display: flex; align-items: center; gap: 8px; }
p.wb-sl__label::before { content: ""; width: 18px; height: 3px; border-radius: 2px; background: var(--wb-blue); }
p.wb-sl__more { font-size: 13px !important; }
p.wb-sl__more a { color: var(--wb-blue) !important; font-weight: 700; text-decoration: none; }
p.wb-sl__more a::after { content: " \2192"; }
.wb-sl__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.wb-sl__grid > * { margin: 0 !important; }
.wb-sl__item {
	position: relative; background: #fff; border: 1px solid var(--wb-line); border-radius: 12px; padding: 16px 44px 16px 64px !important;
	box-shadow: var(--wb-shadow); transition: transform .2s, box-shadow .2s, border-color .2s;
}
.wb-sl__item:hover { transform: translateY(-2px); border-color: #c9d8f5; box-shadow: 0 12px 28px -14px rgba(11, 29, 74, .35); }
.wb-sl__item > * { margin: 0 !important; }
.wb-sl__item > * + * { margin-top: 4px !important; }
.wb-sl__item::before {
	content: ""; position: absolute; left: 16px; top: 16px; width: 34px; height: 34px; border-radius: 10px;
	background: #eaf1ff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231559e6' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M10 14a4 4 0 0 0 5.7 0l3-3a4 4 0 0 0-5.7-5.7l-1 1M14 10a4 4 0 0 0-5.7 0l-3 3a4 4 0 0 0 5.7 5.7l1-1'/%3E%3C/svg%3E") center/18px no-repeat;
}
.wb-sl__item::after { content: "\2197"; position: absolute; right: 16px; top: 16px; color: var(--wb-muted); font-size: 16px; transition: color .2s; }
.wb-sl__item:hover::after { color: var(--wb-blue); }
p.wb-sl__site { font-size: 11px !important; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--wb-muted) !important; }
p.wb-sl__title { font-size: 16px !important; font-weight: 800; line-height: 1.3; }
p.wb-sl__title a { color: var(--wb-navy) !important; text-decoration: none; }
p.wb-sl__title a::before { content: ""; position: absolute; inset: 0; }
.wb-sl__item:hover p.wb-sl__title a { color: var(--wb-blue) !important; }
p.wb-sl__desc { font-size: 13.5px !important; line-height: 1.5; color: var(--wb-text) !important; }
.wb-sl__item--free { background: transparent; border: 1.5px dashed #b9cbef; box-shadow: none; }
.wb-sl__item--free::before { background-color: #fff; }
.wb-sl__item--free p.wb-sl__title a { color: var(--wb-blue) !important; }
@media (max-width: 690px) {
	.wb-sl__grid { grid-template-columns: minmax(0, 1fr); }
	.wb-sl { padding: 16px !important; }
}

/* WB-RP-NOIMG: karta Redakcja poleca bez zdjęcia wyróżniającego */
.wb-rp-card:not(:has(.wp-block-post-featured-image)) { height: 100%; min-height: 190px; display: flex; background: linear-gradient(140deg, #0b1d4a 0%, #1559e6 100%); }
.wb-rp-card:not(:has(.wp-block-post-featured-image)) .wb-rp-card__body { position: relative; inset: auto; flex: 1; justify-content: flex-end; padding: 16px 14px 14px !important; background: none; }
.wb-rp .wp-block-post:has(.wb-rp-card) { display: flex; }
.wb-rp .wp-block-post > .wb-rp-card { flex: 1; }

/* WB-BANER-BOCZNY: własny baner 300x600 w prawej kolumnie strony głównej */
.wb-baner-boczny { margin: 0 auto 24px !important; max-width: 300px; }
.wb-baner-boczny a { display: block; border-radius: 14px; overflow: hidden; box-shadow: 0 10px 28px -14px rgba(11, 29, 74, .45); transition: transform .25s, box-shadow .25s; }
.wb-baner-boczny a:hover { transform: translateY(-3px); box-shadow: 0 16px 34px -14px rgba(11, 29, 74, .55); }
.wb-baner-boczny img { display: block; width: 100% !important; height: auto; border-radius: 14px; }

/* WB-BANER-BOCZNY-2: baner w ramce reklamy (podpis Reklama nad banerem) */
.wb-ad--bok .wb-baner-boczny { margin: 0 auto !important; }

/* WB-SLPLAN: sekcja Linki sponsorowane na stronie Współpraca */
.wb-psec--sl { border-top: 1px solid #e6edfa; }
.wb-slplan { gap: 28px !important; align-items: center !important; margin: 28px 0 22px !important; }
.wb-slplan .wb-sl { margin: 0 !important; }
.wb-slplan .wb-adslot > * { margin: 0 !important; }
.wb-slplan .wb-adslot > * + * { margin-top: 10px !important; }
.wb-slplan .wb-adslot .wb-btns { margin-top: 18px !important; }
ul.wb-slplan__list { list-style: none; padding: 0 !important; font-size: 14px; }
ul.wb-slplan__list li { position: relative; padding-left: 24px; margin: 6px 0 0; color: var(--wb-text); }
ul.wb-slplan__list li::before { content: "\2713"; position: absolute; left: 0; top: 0; color: var(--wb-blue); font-weight: 800; }
