@charset "UTF-8";
/* ==========================================================================
   401 – Banner
   Figma: „401 banner" — set=horizontal 11009:201786, set=vertical 11356:72660,
   mobile 440px 11353:68731

   Źródło prawdy to TEN plik — style.css obok powstaje przez `npm run build:scss`
   i nie edytuje się go ręcznie.

   Import design systemu jest konieczny z dwóch powodów: przycisk renderuje
   wspólne render_button() (.c-button), a tokeny kolorów muszą być w bundlu
   bloku, bo css/global.css ładuje się tylko dla szablonów z „2026" w nazwie.

   Klasy .blok401-* opisują markup z template-parts/blocks/banner-401.php,
   którego używa też wtyczka „CBT Tagi treści" — dlatego stylowanie jest
   niezależne od .blok401-section (sekcji bloku ACF), która tu tylko centruje.
   ========================================================================== */
:root {
  --surface-surface: #fff;
  --surface-surface-dim: #fbfcff;
  --surface-surface-container-lowest: #fff;
  --surface-surface-container-low: #F7F9FF;
  --surface-surface-container: #F1F3F9;
  --surface-surface-container-high: #ECEEF4;
  --surface-surface-container-highest: #E0E2E8;
  --surface-on-surface: #191c1e;
  --surface-on-surface-variant: #44474a;
  --surface-on-surface-muted: #8e9194;
  --add-on-scrim: #2d3133;
  --add-on-shadow: rgba(62, 72, 78, 0.25);
  --add-on-shadow-2: rgba(62, 72, 78, 0.4);
  --inverse-inverse-surface: #191c1e;
  --inverse-inverse-on-surface: #fff;
  --inverse-inverse-on-surface-variant: #e9ebee;
  --inverse-inverse-on-surface-muted: #8e9194;
  --inverse-inverse-primary: #76d1ff;
  --primary-primary: #001e2b;
  --primary-on-primary: #fff;
  --primary-primary-container: #e2f3ff;
  --primary-on-primary-container: #003548;
  --primary-graphic-primary: #d5efff;
  --primary-graphic-primary-variant: #389ac6;
  --secondary-secondary: #556edf;
  --secondary-secondary-hover: #1c3aac;
  --secondary-secondary-active: #001257;
  --secondary-on-secondary: #fff;
  --secondary-secondary-container: #dde1ff;
  --secondary-on-secondary-container: #001257;
  --secondary-graphic-secondary: #b9c3ff;
  --secondary-graphic-secondary-variant: #7088fb;
  --tertiary-tertiary: #389ac6;
  --tertiary-on-tertiary: #fff;
  --tertiary-tertiary-container: #c2e8ff;
  --tertiary-on-tertiary-container: #003548;
  --tertiary-graphic-tertiary: #c2e8ff;
  --tertiary-graphic-tertiary-variant: #389ac6;
  --outline-outline: #A9ABB1;
  --outline-outline-subtle: #E0E2E8;
  --outline-outline-strong: #74777C;
  --error-error: #ae3029;
  --error-on-error: #fff;
  --error-error-container: #ffdad6;
  --error-on-error-container: #690005;
  --success-success: #006c4b;
  --success-on-success: #fff;
  --success-success-container: #bdffdd;
  --success-on-success-container: #003826;
  --warning-warning: #82781f;
  --warning-on-warning: #fff;
  --warning-warning-container: #fff39b;
  --warning-on-warning-container: #363100;
  --info-info: #556edf;
  --surface-section-tint: #F7F9FF;
  --info-on-info: #fff;
  --info-info-container: #f0efff;
  --info-on-info-container: #001257;
  --utilities: #556edf;
}

[data-theme=default] {
  --surface-surface: #fff;
  --surface-surface-dim: #fbfcff;
  --surface-surface-container-lowest: #fff;
  --surface-surface-container-low: #F7F9FF;
  --surface-surface-container: #F1F3F9;
  --surface-surface-container-high: #ECEEF4;
  --surface-surface-container-highest: #E0E2E8;
  --surface-on-surface: #191c1e;
  --surface-on-surface-variant: #44474a;
  --surface-on-surface-muted: #8e9194;
  --add-on-scrim: #2d3133;
  --add-on-shadow: rgba(62, 72, 78, 0.25);
  --add-on-shadow-2: rgba(62, 72, 78, 0.4);
  --inverse-inverse-surface: #191c1e;
  --inverse-inverse-on-surface: #fff;
  --inverse-inverse-on-surface-variant: #e9ebee;
  --inverse-inverse-on-surface-muted: #8e9194;
  --inverse-inverse-primary: #76d1ff;
  --primary-primary: #001e2b;
  --primary-on-primary: #fff;
  --primary-primary-container: #e2f3ff;
  --primary-on-primary-container: #003548;
  --primary-graphic-primary: #d5efff;
  --primary-graphic-primary-variant: #389ac6;
  --secondary-secondary: #556edf;
  --secondary-secondary-hover: #1c3aac;
  --secondary-secondary-active: #001257;
  --secondary-on-secondary: #fff;
  --secondary-secondary-container: #dde1ff;
  --secondary-on-secondary-container: #001257;
  --secondary-graphic-secondary: #b9c3ff;
  --secondary-graphic-secondary-variant: #7088fb;
  --tertiary-tertiary: #389ac6;
  --tertiary-on-tertiary: #fff;
  --tertiary-tertiary-container: #c2e8ff;
  --tertiary-on-tertiary-container: #003548;
  --tertiary-graphic-tertiary: #c2e8ff;
  --tertiary-graphic-tertiary-variant: #389ac6;
  --outline-outline: #A9ABB1;
  --outline-outline-subtle: #E0E2E8;
  --outline-outline-strong: #74777C;
  --error-error: #ae3029;
  --error-on-error: #fff;
  --error-error-container: #ffdad6;
  --error-on-error-container: #690005;
  --success-success: #006c4b;
  --success-on-success: #fff;
  --success-success-container: #bdffdd;
  --success-on-success-container: #003826;
  --warning-warning: #82781f;
  --warning-on-warning: #fff;
  --warning-warning-container: #fff39b;
  --warning-on-warning-container: #363100;
  --info-info: #556edf;
  --surface-section-tint: #F7F9FF;
  --info-on-info: #fff;
  --info-info-container: #f0efff;
  --info-on-info-container: #001257;
  --utilities: #556edf;
}

[data-theme=cyan] {
  --add-on-shadow: #2d3133;
  --add-on-shadow-2: #2d3133;
  --surface-surface-dim: #fbfcff;
  --surface-section-tint: #e8f5ff;
  --surface-surface-container-low: #f5faff;
  --surface-surface-container: #e8f5ff;
  --surface-surface-container-high: #d5efff;
  --surface-surface-container-highest: #c2e8ff;
  --inverse-inverse-surface: #003548;
  --inverse-inverse-on-surface-variant: #d5efff;
  --primary-primary: #004d67;
  --primary-on-primary-container: #004d67;
  --primary-graphic-primary: #c2e8ff;
}

[data-theme=jade] {
  --add-on-shadow: #2d3133;
  --add-on-shadow-2: #2d3133;
  --surface-surface-dim: #f3fffa;
  --surface-section-tint: #E4F8F6;
  --surface-surface-container-low: #e5fff7;
  --surface-surface-container: #c7fff0;
  --surface-surface-container-high: #abfae7;
  --surface-surface-container-highest: #a3f2de;
  --inverse-inverse-surface: #00201a;
  --inverse-inverse-primary: #87d5c2;
  --primary-primary: #106a5b;
  --primary-primary-container: #a3f2de;
  --primary-on-primary-container: #005144;
  --primary-graphic-primary: #a3f2de;
  --primary-graphic-primary-variant: #509e8d;
}

[data-theme=indigo] {
  --add-on-shadow: #2d3133;
  --add-on-shadow-2: #2d3133;
  --surface-surface-dim: #fffbff;
  --surface-section-tint: #F2EFFF;
  --surface-surface-container-low: #fcf8ff;
  --surface-surface-container: #f2efff;
  --surface-surface-container-high: #ebe9ff;
  --surface-surface-container-highest: #e1dfff;
  --inverse-inverse-surface: #6a6bd5;
  --inverse-inverse-primary: #c1c1ff;
  --primary-primary: #201c8a;
  --primary-primary-container: #e1dfff;
  --primary-on-primary-container: #3838a1;
  --primary-graphic-primary: #e1dfff;
  --primary-graphic-primary-variant: #8485f1;
}

[data-theme=yellow] {
  --add-on-shadow: #2d3133;
  --add-on-shadow-2: #2d3133;
  --surface-surface-dim: #fffbff;
  --surface-section-tint: #FAFAF4;
  --surface-surface-container-low: #fff9e7;
  --surface-surface-container: #fff5b6;
  --surface-surface-container-high: #fff39b;
  --surface-surface-container-highest: #fbed88;
  --inverse-inverse-surface: #1f1c00;
  --inverse-inverse-on-surface-muted: #000;
  --inverse-inverse-primary: #f2e580;
  --primary-primary: #1f1c00;
  --primary-primary-container: #f2e580;
  --primary-on-primary-container: #4f4800;
  --primary-graphic-primary: #f2e580;
  --primary-graphic-primary-variant: #9d9238;
}

[data-theme=sopot] {
  --surface-surface-dim: #fafaf4;
  --surface-surface-container-low: #fafaf4;
  --surface-surface-container: #f4f4ee;
  --surface-surface-container-high: #ebebe5;
  --surface-surface-container-highest: #e3e3dd;
  --surface-on-surface-muted: #74777a;
  --inverse-inverse-surface: #c2e8ff;
  --inverse-inverse-on-surface: #001e2b;
  --inverse-inverse-on-surface-variant: #004d67;
  --inverse-inverse-on-surface-muted: #000;
  --inverse-inverse-primary: #3a54c4;
  --primary-primary: #006688;
  --primary-primary-container: #c2e8ff;
  --primary-on-primary-container: #004d67;
  --primary-graphic-primary: #76d1ff;
}

:root {
  /* Kolory podstawowe */
  --color-primary: #199ACC;
  --color-primary-hover: #1580b0;
  --color-primary-light: #22B3E8;
  --color-primary-dark: #125F81;
  --color-white: #FFFFFF;
  --color-background: #F9F8F7;
  --color-text: #505050;
  --color-link-default: #167FAA;
  --cool-gray-700: #1F2937;
  /* Tekst */
  --color-heading: #050709;
  --color-body: #374151;
  --color-muted: #626573;
  /* Cienie */
  --shadow-primary: rgba(25, 154, 204, 0.3);
  /* Kurs — schematy kolorów (5 wariantów) */
  /* 1 — Niebieski */
  --kurs-1-surface-light: #e8f4fa;
  --kurs-1-surface-dim: #dcedf5;
  --kurs-1-surface-base: #f0f7fb;
  --kurs-1-dot: #3b82f6;
  /* 2 — Zielony */
  --kurs-2-surface-light: #e5f5f0;
  --kurs-2-surface-dim: #d8ede8;
  --kurs-2-surface-base: #eef7f4;
  --kurs-2-dot: #22c55e;
  /* 3 — Indygo */
  --kurs-3-surface-light: #eae6f4;
  --kurs-3-surface-dim: #ddd8ed;
  --kurs-3-surface-base: #f0edf6;
  --kurs-3-dot: #8b5cf6;
  /* 4 — Żółty */
  --kurs-4-surface-light: #faf5e4;
  --kurs-4-surface-dim: #f0ead6;
  --kurs-4-surface-base: #f8f5eb;
  --kurs-4-dot: #eab308;
  /* 5 — Domyślny (neutralny) */
  --kurs-5-surface-light: #f9fafc;
  --kurs-5-surface-dim: #f2f4fa;
  --kurs-5-surface-base: #ffffff;
  --kurs-5-dot: #374151;
  /* akcent (eyebrow, linki) per schemat */
  --kurs-1-accent: #199acc;
  --kurs-2-accent: #188d78;
  --kurs-3-accent: #4338ca;
  --kurs-4-accent: #a16207;
  --kurs-5-accent: #626573;
  /* surface-inverse (ciemna karta) per schemat */
  --kurs-1-surface-inverse: #0d405a;
  --kurs-2-surface-inverse: #093627;
  --kurs-3-surface-inverse: #2a2768;
  --kurs-4-surface-inverse: #422a0f;
  --kurs-5-surface-inverse: #0A0E14;
  /* tekst na ciemnej karcie per schemat */
  --kurs-1-text-secondary-inverse: #d6f3fc;
  --kurs-2-text-secondary-inverse: #e0f7f4;
  --kurs-3-text-secondary-inverse: #e0e7ff;
  --kurs-4-text-secondary-inverse: #e4e7f0;
  --kurs-5-text-secondary-inverse: #cbd5e1;
  --m3-secondary-seconadry: var(--cool-gray-700) ;
}

:root {
  --layout-spacing-section-padding-48-32: 4.8rem 0;
  --spacing-layout-padding-container-32-24: 3.2rem 2.4rem;
}
@media (max-width: 767.98px) {
  :root {
    --layout-spacing-section-padding-48-32: 3.2rem 1.6rem;
  }
}

html {
  font-size: 62.5%;
}

body {
  font-family: "Poppins", sans-serif;
}

.heading--x-small {
  /* Heading/xsmall — 16px */
  font-family: "Poppins", sans-serif;
  font-size: 1.6rem !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
  letter-spacing: -0.01em;
  font-style: normal;
}
.heading--small, .o-simple-item-slider-container.card-small-item .m-card__title {
  /* Heading/small — 18px */
  font-family: "Poppins", sans-serif;
  font-size: 1.8rem !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
  font-style: normal;
}
.heading--medium, .cbt-person-card__name {
  /* Heading/medium — 20px */
  font-family: "Poppins", sans-serif;
  font-size: 2rem !important;
  font-style: normal;
  font-weight: 600 !important;
  line-height: 1.3 !important;
  letter-spacing: -0.4px;
}
.heading--large, .o-simple-item-slider .m-card__title {
  /* Heading/large — 24px */
  font-family: "Poppins", sans-serif;
  font-size: 2.4rem !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
  font-style: normal;
}
.heading--x-large, .blok401-banner .blok401-tytul {
  /* Heading/xlarge — 28px */
  font-family: "Poppins", sans-serif;
  font-size: 2.8rem !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
  font-style: normal;
}

.body--xs, .m-article-review__meta li, .o-page-hero__cta-aside, .body--x-small, .m-article-review__label {
  /* Body/xsmall — 12px */
  font-family: "Poppins", sans-serif;
  font-size: 1.2rem !important;
  font-style: normal;
  font-weight: 400 !important;
  line-height: 1.6 !important;
  letter-spacing: 0.24px;
}
.body--small, .infobox-container .infobox-item, .cbt-person-card__role, .cbt-section-header--small .cbt-section-header__desc, .cbt-section-header--small .cbt-section-header > p {
  /* Body/small — 14px */
  font-family: "Poppins", sans-serif;
  font-size: 1.4rem !important;
  font-style: normal;
  font-weight: 400 !important;
  line-height: 1.5 !important;
}
.body--small-emphasis, .m-article-review__name, .infobox-container .infobox-item strong, .cbt-person-card__degree {
  /* Body/small — 14px, weight-emphasis */
  font-family: "Poppins", sans-serif;
  font-size: 1.4rem !important;
  font-style: normal;
  font-weight: 500 !important;
  line-height: 1.5 !important;
}
.body--base, .cbt-person-card__bio, .cbt-section-header__desc, .cbt-section-header > p {
  /* Body/base — 16px */
  font-family: "Poppins", sans-serif;
  font-size: 1.6rem !important;
  font-style: normal;
  font-weight: 400 !important;
  line-height: 1.5 !important;
}
.body--base-emphasis {
  /* Body/base — 16px, weight-emphasis */
  font-family: "Poppins", sans-serif;
  font-size: 1.6rem !important;
  font-style: normal;
  font-weight: 500 !important;
  line-height: 1.5 !important;
}
.body--large, .o-page-hero__lead, .o-page-hero__lead p {
  /* Body/large — 18px */
  font-family: "Poppins", sans-serif;
  font-size: 1.8rem !important;
  font-style: normal;
  font-weight: 400 !important;
  line-height: 1.5 !important;
}
.body--large-emphasis {
  /* Body/large — 18px, weight-emphasis */
  font-family: "Poppins", sans-serif;
  font-size: 1.8rem !important;
  font-style: normal;
  font-weight: 500 !important;
  line-height: 1.5 !important;
}

.label--xsmall {
  /* Label/xsmall — 12px */
  font-family: "Poppins", sans-serif;
  font-size: 1.2rem !important;
  font-weight: 400 !important;
  line-height: 1.2 !important;
}
.label--xsmall-emphasis {
  /* Label/xsmall — 12px, weight-emphasis */
  font-family: "Poppins", sans-serif;
  font-size: 1.2rem !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
}
.label--small, .o-page-hero__pill, .o-page-hero__pill span, .cbt-section-header__eyebrow, .c-button--navigation .c-button__label, button.c-toggle-more__button, .c-link, .c-link.c-link--external, button.c-link--external.c-toggle-more__button {
  /* Label/small — 14px */
  font-family: "Poppins", sans-serif;
  font-size: 1.4rem !important;
  font-style: normal;
  font-weight: 400 !important;
  line-height: 1.2 !important;
}
.label--small-emphasis {
  /* Label/small — 14px, weight-emphasis */
  font-family: "Poppins", sans-serif;
  font-size: 1.4rem !important;
  font-style: normal;
  font-weight: 500 !important;
  line-height: 1.2 !important;
}
.label--base, .o-page-hero__eyebrow, .c-image__badge, .c-button__label {
  /* Label/base — 16px */
  font-family: "Poppins", sans-serif;
  font-size: 1.6rem !important;
  font-weight: 400 !important;
  line-height: 120% !important; /* 19.2px */
}
.label--base-emphasis, .o-page-hero__heading--multiline .o-page-hero-title__eyebrow {
  /* Label/base — 16px, weight-emphasis */
  font-family: "Poppins", sans-serif;
  font-size: 1.6rem !important;
  font-weight: 500 !important;
  line-height: 120% !important; /* 19.2px */
}
.label--large {
  /* Label/large — 18px */
  font-family: "Poppins", sans-serif;
  font-size: 1.8rem !important;
  font-weight: 400 !important;
  line-height: 1.2 !important;
}
.label--large-emphasis {
  /* Label/large — 18px, weight-emphasis */
  font-family: "Poppins", sans-serif;
  font-size: 1.8rem !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
}

.quote--small {
  /* Quote/small — 16px, identyczne desktop/mobile */
  font-family: "Poppins", sans-serif;
  font-size: 1.6rem;
  font-style: italic;
}
.quote--medium {
  /* Quote/medium */
  font-size: 2rem;
  font-style: italic;
  font-weight: 400;
  line-height: 130%;
  letter-spacing: -0.4px;
}
.quote--large {
  /* Quote/large — 28px desktop / 20px mobile */
  font-family: "Poppins", sans-serif;
  font-size: clamp(2rem, 1.73rem + 0.83vw, 2.8rem);
  font-style: italic;
  letter-spacing: -0.4px;
}

.display--small, .o-page-hero__heading--multiline .o-page-hero-title__subtitle {
  /* Display/small — 24px, identyczne desktop/mobile */
  font-family: "Poppins", sans-serif;
  font-size: 2.4rem !important;
  font-style: normal;
  font-weight: 600 !important;
}
.display--medium, .cbt-section-header__title {
  /* Display/medium — 32px desktop / 28px mobile */
  font-family: "Poppins", sans-serif;
  font-size: clamp(2.8rem, 2.67rem + 0.42vw, 3.2rem) !important;
  font-style: normal;
  font-weight: 600 !important;
  line-height: 1.2 !important;
}
.display--large, .cbt-section-header--large .cbt-section-header__title {
  /* Display/large — 40px desktop / 32px mobile */
  font-family: "Poppins", sans-serif;
  font-size: clamp(3.2rem, 2.93rem + 0.83vw, 4rem) !important;
  font-style: normal;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  letter-spacing: -0.8px;
}
.display--x-large, .o-page-hero__heading, .o-page-hero__heading--multiline .o-page-hero-title__main {
  /* Display/x-large — 56px desktop / 40px mobile  */
  font-family: "Poppins", sans-serif;
  font-size: clamp(4rem, 3.47rem + 1.67vw, 5.6rem) !important;
  font-style: normal;
  font-weight: 600 !important;
  line-height: 1.1 !important;
  letter-spacing: -1.12px;
}

:root {
  --spacing-max-width-full: 128rem;
}

.column--container, .cbt-specjalisci-container {
  width: 100%;
  max-width: 128rem;
  margin-inline: auto;
  padding: var(--layout-spacing-section-padding-48-32);
  box-sizing: border-box;
}

.column--width-12 {
  max-width: 128rem;
  margin-inline: auto;
}
@media (min-width: 768px) {
  .column--width-10 {
    max-width: 106rem !important;
    gap: 3.2rem;
    margin-inline: auto !important;
  }
}
.column--full-bleed {
  width: 100%;
  max-width: none;
  margin-inline: 0;
  background-color: var(--column-background-color, transparent);
}
.column--background-content {
  background-color: var(--column-background-color, transparent);
}
.column--center {
  justify-content: center;
}
.column--v-center, .column--v-center.wp-block-columns {
  align-items: center !important;
}

.wp-block-columns-is-layout-flex {
  padding: var(--layout-spacing-section-padding-48-32);
}

@media (max-width: 767.98px) {
  .wp-block-column .wp-block-image {
    padding: 0 1.6rem;
    aspect-ratio: 34/45;
  }
}

.c-link, button.c-toggle-more__button {
  color: var(--secondary-secondary) !important;
  text-decoration: none !important;
  cursor: pointer;
}
.c-link:hover, button.c-toggle-more__button:hover, .c-link:focus-visible, button.c-toggle-more__button:focus-visible {
  color: var(--secondary-secondary-hover) !important;
}
.c-link:active, button.c-toggle-more__button:active {
  color: var(--secondary-secondary-active) !important;
}

.c-link, button.c-toggle-more__button {
  display: inline-flex;
  padding: 0;
  width: fit-content;
  max-width: 100%;
  background: none;
  border: 0;
  transition: color 150ms ease, gap 150ms ease;
}
.c-link:focus-visible, button.c-toggle-more__button:focus-visible {
  outline: 2px solid #2F5363;
  outline-offset: 2px;
  border-radius: 2px;
}
.c-link:not(.c-link--external) .c-link__icon, button.c-toggle-more__button:not(.c-link--external) .c-link__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 2rem;
  height: 2rem;
}
.c-link:not(.c-link--external) .c-link__icon svg, button.c-toggle-more__button:not(.c-link--external) .c-link__icon svg {
  width: 2rem;
  height: 2rem;
  fill: currentColor !important;
}
.c-link.c-link--external, button.c-link--external.c-toggle-more__button {
  color: var(--secondary-secondary) !important;
  align-items: center;
}
.c-link.c-link--external svg, button.c-link--external.c-toggle-more__button svg {
  position: relative;
  bottom: -0.3rem;
  width: 2rem;
  height: 2rem;
  fill: currentColor;
}
.c-link--icon-right, .c-link--icon-left {
  gap: 0.3rem;
  align-items: center;
}
.c-link--icon-right {
  flex-direction: row;
}
.c-link--icon-right .c-link__icon {
  transition: transform 150ms ease;
}
.c-link--icon-right .c-link__icon:after {
  transform: scaleX(-1);
}
.c-link--icon-right:hover .c-link__icon, .c-link--icon-right:focus-visible .c-link__icon {
  transform: translateX(0.3rem);
}
.c-link--icon-right:active .c-link__icon {
  transform: translateX(0.6rem);
}
.c-link--icon-left {
  flex-direction: row-reverse;
}
.c-link--inline {
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 400;
}
.c-link--disabled, .c-link:disabled, button.c-toggle-more__button:disabled {
  pointer-events: none;
  cursor: not-allowed;
}
.c-link--current[aria-current=page] {
  font-weight: 700;
  text-decoration: underline;
}

.c-button {
  --_btn-bg: var(--surface-on-surface);
  --_btn-color: var(--surface-surface);
  --_btn-outline-color: transparent;
  display: inline-flex;
  padding: 1.6rem !important;
  justify-content: center;
  align-items: center;
  gap: 8px;
  border-radius: 1.2rem;
  text-align: center;
  text-decoration: none !important;
  /* button shadow */
  box-shadow: 0 1px 10px 0 rgba(0, 0, 0, 0.05), 0 1px 10px -1px rgba(0, 0, 0, 0.05);
  transition: color 150ms ease, background-color 150ms ease, border 150ms ease, box-shadow 150ms ease;
  border: 0 solid var(--_btn-outline-color) !important;
  background: var(--_btn-bg) !important;
  color: var(--_btn-color) !important;
}
.c-button:hover {
  box-shadow: inset 0 0 0 100px color-mix(in srgb, var(--_btn-color) 8%, transparent);
}
.c-button:focus-visible {
  box-shadow: inset 0 0 0 100px color-mix(in srgb, var(--_btn-color) 12%, transparent);
}
.c-button:active {
  box-shadow: inset 0 0 0 100px color-mix(in srgb, var(--_btn-color) 12%, transparent);
}
.c-button__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 2rem;
  height: 2rem;
  fill: currentColor;
}
.c-button__icon svg {
  width: 100%;
  height: 100%;
}
.c-button--icon-left {
  flex-direction: row;
}
.c-button--icon-left .c-button__icon {
  margin-left: -0.4rem;
}
.c-button--icon-right {
  flex-direction: row;
}
.c-button--icon-right .c-button__icon {
  margin-right: -0.4rem;
}
.c-button--primary {
  --_btn-bg: var(--primary-primary);
  --_btn-color: var(--primary-on-primary);
}
.c-button--secondary {
  border-width: 0.1rem !important;
  --_btn-bg: transparent;
  --_btn-color: var(--primary-primary);
  --_btn-outline-color: var(--primary-primary);
}
.c-button--accent {
  --_btn-bg: var(--primary-primary-container);
  --_btn-color: var(--primary-on-primary-container);
  --_btn-outline-color: var(--outline-outline-subtle);
}
.c-button--accent:hover {
  --_btn-outline-color: var(--primary-on-primary-container);
}
.c-button--accent:active {
  --_btn-outline-color: var(--outline-outline-subtle, #DAE4EC);
}
.c-button--no-shadow {
  box-shadow: none !important;
}
.c-button--disabled, .c-button:disabled {
  border: 0;
  --_btn-bg: color-mix(in srgb, var(--on-surface) 12%, transparent) !important;
  --_btn-color: color-mix(in srgb, var(--on-surface) 38%, transparent) !important;
  pointer-events: none;
  cursor: not-allowed;
  box-shadow: none;
}

button.c-toggle-more__button {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  align-self: stretch;
  border: none !important;
  margin-top: 1rem;
  padding: 0;
}
button.c-toggle-more__button .c-toggle-more__icon {
  height: 2.4rem;
  transform: rotate(0deg);
  transition: transform 0.2s;
  transition-delay: 150ms;
}
button.c-toggle-more__button .c-toggle-more__icon svg {
  width: 2.4rem;
  height: 2.4rem;
  fill: currentColor;
}
button.c-toggle-more__button:hover, button.c-toggle-more__button:focus {
  background: none !important;
}
button.c-toggle-more__button.is-open .c-toggle-more__icon {
  transform: rotate(180deg);
}

.c-image {
  position: relative;
  flex-shrink: 0;
  overflow: hidden;
  border-radius: var(--radius-l, 2rem);
  box-shadow: 0 0.2rem 2rem 0 rgba(23, 165, 220, 0.1);
}
.c-image > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.c-image--3-4 {
  aspect-ratio: 0.75;
}
.c-image--3-4.c-image--small {
  width: 405px;
  height: 540px;
  max-width: 405px;
  max-height: 540px;
}
@media (width <= calc(405px + 3.2rem)) {
  .c-image--3-4.c-image--small {
    width: 100%;
    height: auto;
    max-width: 100%;
    max-height: none;
  }
}
.c-image--3-4.c-image--base {
  width: 515px;
  height: 687px;
  max-width: 515px;
  max-height: 687px;
}
@media (width <= calc(515px + 3.2rem)) {
  .c-image--3-4.c-image--base {
    width: 100%;
    height: auto;
    max-width: 100%;
    max-height: none;
  }
}
.c-image--3-4.c-image--large {
  width: 620px;
  height: 827px;
  max-width: 620px;
  max-height: 827px;
}
@media (width <= calc(620px + 3.2rem)) {
  .c-image--3-4.c-image--large {
    width: 100%;
    height: auto;
    max-width: 100%;
    max-height: none;
  }
}
.c-image--4-3 {
  aspect-ratio: 1.3333333333;
}
.c-image--4-3.c-image--small {
  width: 405px;
  height: 303px;
  max-width: 405px;
  max-height: 303px;
}
@media (width <= calc(405px + 3.2rem)) {
  .c-image--4-3.c-image--small {
    width: 100%;
    height: auto;
    max-width: 100%;
    max-height: none;
  }
}
.c-image--4-3.c-image--base {
  width: 515px;
  height: 386px;
  max-width: 515px;
  max-height: 386px;
}
@media (width <= calc(515px + 3.2rem)) {
  .c-image--4-3.c-image--base {
    width: 100%;
    height: auto;
    max-width: 100%;
    max-height: none;
  }
}
.c-image--4-3.c-image--large {
  width: 620px;
  height: 465px;
  max-width: 620px;
  max-height: 465px;
}
@media (width <= calc(620px + 3.2rem)) {
  .c-image--4-3.c-image--large {
    width: 100%;
    height: auto;
    max-width: 100%;
    max-height: none;
  }
}
.c-image--1-1 {
  aspect-ratio: 1.3333333333;
}
.c-image--1-1.c-image--small {
  width: 405px;
  height: 405px;
  max-width: 405px;
  max-height: 405px;
}
@media (width <= calc(405px + 3.2rem)) {
  .c-image--1-1.c-image--small {
    width: 100%;
    height: auto;
    max-width: 100%;
    max-height: none;
  }
}
.c-image--1-1.c-image--base {
  width: 515px;
  height: 515px;
  max-width: 515px;
  max-height: 515px;
}
@media (width <= calc(515px + 3.2rem)) {
  .c-image--1-1.c-image--base {
    width: 100%;
    height: auto;
    max-width: 100%;
    max-height: none;
  }
}
.c-image--1-1.c-image--large {
  width: 620px;
  height: 620px;
  max-width: 620px;
  max-height: 620px;
}
@media (width <= calc(620px + 3.2rem)) {
  .c-image--1-1.c-image--large {
    width: 100%;
    height: auto;
    max-width: 100%;
    max-height: none;
  }
}
.c-image__badge {
  position: absolute;
  bottom: 1.4rem;
  left: 1.4rem;
  z-index: 1;
  display: flex;
  flex-direction: row;
  gap: 0.8rem;
  padding: 0.8rem;
  border-radius: 1.2rem;
  background: var(--surface-surface-container);
  color: var(--surface-on-surface) !important;
  box-shadow: 0 1px 10px 0 rgba(0, 0, 0, 0.05), 0 1px 10px -1px rgba(0, 0, 0, 0.05);
}
.c-image__badge svg {
  width: 2rem;
  height: 2rem;
  fill: currentcolor;
}
.c-image a.c-image__badge {
  cursor: pointer;
}

.m-button-group {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.8rem;
}
@media (max-width: 767.98px) {
  .m-button-group {
    flex-direction: column;
    align-items: flex-start;
  }
}
.m-button-group--left {
  justify-content: flex-start;
}
.m-button-group--center {
  justify-content: center;
}
.m-button-group--right {
  justify-content: flex-end;
}
.m-button-group--between {
  justify-content: space-between;
}
.m-button-group--fill > .c-button {
  flex: 1;
  width: 100%;
}
.m-button-group--vertical {
  flex-direction: column;
  align-items: stretch;
  width: 100%;
}
@media (max-width: 767.98px) {
  .m-button-group--wrap {
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    width: 100%;
  }
  .m-button-group--wrap > * {
    width: auto;
    flex: 0 0 auto;
  }
}
@media (max-width: 767.98px) {
  .m-button-group--divider > .c-button:nth-child(2) {
    position: relative;
    margin-top: 3.4rem;
  }
  .m-button-group--divider > .c-button:nth-child(2)::before {
    content: "lub";
    position: absolute;
    top: -3.2rem;
    left: 50%;
    transform: translateX(-50%);
    width: max-content;
    padding: 0;
    color: var(--cool-gray-600, #525561);
    text-align: center;
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 400;
    letter-spacing: 0.36px;
  }
}

.infobox-container {
  display: flex;
  width: 408rem;
  max-width: var(--spacing-max-width-5-col, 515px);
  padding: 24px 0;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  border-radius: var(--radius-l, 20px);
  background: var(--surface-surface);
  box-shadow: 0 2px 20px 0 rgba(23, 165, 220, 0.1);
}
@media (max-width: 767.98px) {
  .infobox-container {
    width: 100%;
  }
}
.infobox-container .infobox-item {
  position: relative;
  width: calc(100% - 56px - 24px);
  padding-top: 8px;
  padding-bottom: 12px;
  align-items: flex-start;
  margin-left: 56px;
  margin-right: 24px;
  color: var(--surface-on-surface);
  border-bottom: 1px solid var(--outline-outline-subtle);
  margin-bottom: 0;
}
.infobox-container .infobox-item--has-aside {
  display: inline-flex;
  gap: 0.4rem;
}
.infobox-container .infobox-item:last-child {
  border-bottom: none;
}
.infobox-container .infobox-item svg:not(.icon) {
  position: absolute;
  left: -32px;
  top: 8px;
  width: 20px;
  height: 20px;
  max-width: 20px;
  max-height: 20px;
  fill: currentcolor;
}
.infobox-container .infobox-item svg.infobox-overlay-info {
  position: static;
  fill: var(--secondary-secondary);
  cursor: pointer;
}
.infobox-container .infobox-item p {
  margin-block-start: 0;
  margin-bottom: 0;
}
.infobox-container .infobox-item--obrazek {
  width: calc(100% - 24px - 24px);
  margin-left: 24px;
  text-align: center;
}
.infobox-container .infobox-item--obrazek img {
  max-width: 100%;
  margin: 0 auto;
}
.infobox-container .infobox-item--placowki {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.infobox-container .infobox-item--placowki-details a {
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-skip-ink: auto;
  text-decoration-thickness: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;
}
.infobox-container .infobox-item--adres {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
}
.infobox-container .infobox-item--godziny-list {
  display: grid;
  grid-template-columns: max-content 1fr;
  gap: 0.2rem 0.6rem;
  margin-top: 0.4rem;
}
.infobox-container .infobox-item--godziny-row {
  display: contents;
}
.infobox-container .infobox-item--godziny-day {
  font-weight: inherit;
}

.cbt-section-header {
  display: flex;
  flex-direction: column;
  max-width: 62rem;
  margin: 0 auto;
  text-align: center;
}
.cbt-section-header--left {
  text-align: left;
  margin: 0;
}
.cbt-section-header__eyebrow {
  display: block;
  margin: 0;
  color: var(--tertiary-tertiary);
}
.cbt-section-header__title {
  margin: 0;
  margin-bottom: 1.6rem;
  color: var(--surface-on-surface) !important;
}
.cbt-section-header__desc, .cbt-section-header > p {
  color: var(--surface-on-surface) !important;
  margin: 0;
}
.m-article-review {
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
  padding-block: 0.4rem;
}
.m-article-review > * + * {
  border-top: 0.1rem solid var(--outline-subtle);
  padding-top: 1.2rem;
}
.m-article-review__authors {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 2.4rem;
  padding-top: 1.2rem;
  border-top: 1px solid var(--outline-outline-subtle);
}
.m-article-review__person {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  text-decoration: none;
}
.m-article-review .a-avatar {
  width: 4.4rem;
  height: 4.4rem;
}
.m-article-review__person-info {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.m-article-review__label {
  color: var(--surface-on-surface-muted);
}
.m-article-review__name {
  color: var(--surface-on-surface);
}
.m-article-review__meta {
  border-top: 1px solid var(--outline-outline-subtle);
  padding-top: 1.2rem;
}
.m-article-review__meta ul {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.8rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.m-article-review__meta li {
  color: var(--on-surface-muted, #74777a);
}
.m-article-review__meta li:not(:first-child)::before {
  content: "•";
  margin-right: 0.8rem;
}

body:has(.o-page-hero--has-bg-img) {
  overflow-x: hidden;
}

/* ==========================================================================
   o-page-hero — organizm (Hero Uniwersalne)
   ========================================================================== */
.o-page-hero {
  position: relative;
  background: var(--surface-surface-dim);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 4.8rem 2.4rem;
  z-index: 0;
}
.o-page-hero.o-page-hero--has-bg-img::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: var(--bg-img);
  filter: blur(10px);
  opacity: 0.8;
  background-size: cover;
  background-position: center;
  transform: scale(1.1);
  z-index: -1;
}
.o-page-hero__content {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
  grid-area: content;
}
.o-page-hero__content--centered {
  align-items: center;
}
@media (width <= 768px) {
  .o-page-hero__content {
    gap: 1.6rem;
    width: 100%;
  }
}
.o-page-hero--image-left .o-page-hero__container {
  grid-template-areas: "image content" "image google";
}
@media (width <= 768px) {
  .o-page-hero--image-left .o-page-hero__container {
    grid-template-areas: "content" "image" "google";
  }
}
@media (width >= 768px) {
  .o-page-hero--img-small .o-page-hero__container {
    grid-template-columns: 1fr 40.5rem;
  }
  .o-page-hero--img-base .o-page-hero__container {
    grid-template-columns: 1fr 51.5rem;
  }
  .o-page-hero--img-large .o-page-hero__container {
    grid-template-columns: 1fr 62rem;
  }
  .o-page-hero--image-left.o-page-hero--img-small .o-page-hero__container {
    grid-template-columns: 40.5rem 1fr;
  }
  .o-page-hero--image-left.o-page-hero--img-base .o-page-hero__container {
    grid-template-columns: 51.5rem 1fr;
  }
  .o-page-hero--image-left.o-page-hero--img-large .o-page-hero__container {
    grid-template-columns: 62rem 1fr;
  }
}
.o-page-hero--no-image .o-page-hero__container {
  grid-template-columns: 1fr;
  grid-template-areas: "content" "google";
  max-width: 72rem;
}
.o-page-hero--no-image .o-page-hero__content,
.o-page-hero--no-image .o-page-hero__preferred-source .cbt-google-pref {
  align-items: center;
  margin: 0 auto;
}
.o-page-hero--no-image .o-page-hero__heading {
  text-align: center;
}
@media (width <= 1280px) {
  .o-page-hero {
    padding: 4rem 2rem;
  }
}
@media (width <= 768px) {
  .o-page-hero {
    padding: 3.2rem 1.6rem;
    max-width: 100%;
  }
}
.o-page-hero__container {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-areas: "content image" "google  image";
  align-items: center;
  gap: 3.2rem;
  max-width: 128rem;
  width: 100%;
}
@media (width <= 768px) {
  .o-page-hero__container {
    grid-template-columns: 1fr;
    grid-template-areas: "content" "image" "google";
    gap: 3.2rem;
  }
}
.o-page-hero .image-container {
  grid-area: image;
}
.o-page-hero__preferred-source {
  grid-area: google;
}
.o-page-hero__preferred-source .cbt-google-pref {
  margin-top: 0;
}
.o-page-hero__top {
  margin-bottom: -3.2rem;
}
@media (width <= 768px) {
  .o-page-hero__top {
    margin-bottom: -1.6rem;
  }
}
.o-page-hero__pills {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
  margin-bottom: 0.8rem;
}
.o-page-hero__pill {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  border-radius: 99.9rem;
  padding: 6px 12px 6px 8px;
  background: var(--surface-surface-container-high);
  color: var(--surface-on-surface-variant) !important;
}
.o-page-hero__pill span {
  white-space: nowrap;
}
.o-page-hero__pill-icon {
  width: 2rem;
  height: 2rem;
  flex-shrink: 0;
  fill: currentcolor;
}
.o-page-hero__heading {
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: -0.072rem;
  color: var(--surface-on-surface) !important;
  margin: 0;
}
@media (max-width: 479.98px) {
  .o-page-hero__heading {
    hyphens: auto;
    hyphenate-limit-chars: 12 7 2;
    overflow-wrap: break-word;
    word-break: normal;
  }
}
.o-page-hero__heading--multiline {
  display: flex;
  flex-direction: column;
}
.o-page-hero__lead p {
  margin-block-end: 0;
}
@media (width <= 1024px) {
  .o-page-hero__lead {
    font-size: 1.8rem;
  }
}
@media (width <= 480px) {
  .o-page-hero__lead {
    font-size: 1.6rem;
  }
}
.o-page-hero__cta {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
}
@media (max-width: 767.98px) {
  .o-page-hero__cta .c-button {
    width: 100%;
  }
}
.o-page-hero__cta-aside {
  color: var(--surface-on-surface-variant) !important;
}
@media (max-width: 767.98px) {
  .o-page-hero__cta-aside {
    text-align: center;
  }
}
.o-page-hero__instructors {
  display: flex;
  align-items: center;
  gap: 1.6rem;
  width: 100%;
}
.o-page-hero__avatars {
  display: flex;
  padding-right: 0.8rem;
  flex-shrink: 0;
}
.o-page-hero__avatar {
  width: 4.4rem;
  height: 4.4rem;
  border-radius: 50%;
  object-fit: cover;
  margin-right: -0.8rem;
}
.o-page-hero__avatar:last-child {
  margin-right: 0;
}
.o-page-hero__instructors-text {
  font-size: 1.3rem;
  font-weight: 400;
  line-height: 1.5;
  color: var(--surface-on-surface-variant) !important;
  margin: 0;
}
.o-page-hero__instructors-link {
  color: var(--secondary-secondary) !important;
  text-decoration: underline;
}

/**
 * cbt-person-card.scss
 * ------------------------------------------------------------------
 * Atomowa karta osoby (specjalisty). Celowo NIE nazwana pod konkretny
 * blok ("cbt-specjalisci-card") — komponent ma być reużywalny wszędzie
 * tam, gdzie prezentujemy osobę: karuzela specjalistów, "podobni
 * specjaliści" na stronie profilu, siatka zespołu itd. (patrz robots.md,
 * zasada "atomic design, ogólne klasy").
 *
 * Zależy od zmiennych CSS zdefiniowanych w :root w mp-carousel.css
 * (--color-*, --kurs-*, --filter-*) — те zostają jako custom properties,
 * czytane tu przez var(...), a nie duplikowane jako zmienne SCSS.
 */
.cbt-specjalisci-container {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
}
.cbt-specjalisci-container .mp-carousel__track {
  padding: 0;
}

.cbt-person-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 12px;
  padding: 1.6rem;
}
.cbt-person-card__avatar {
  width: 100%;
  max-width: 26.4rem;
  max-height: 26.4rem;
  aspect-ratio: 1/1;
  border-radius: 50%;
  overflow: hidden;
  background: var(--kurs-5-surface-dim);
}
.cbt-person-card__avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.cbt-person-card__avatar-placeholder {
  width: 100%;
  height: 100%;
  background: var(--kurs-5-surface-dim);
}
.cbt-person-card__heading {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.cbt-person-card__degree {
  margin: 0;
  color: var(--color-heading);
}
.cbt-person-card__name {
  margin: 0;
  color: var(--color-heading);
}
.cbt-person-card__role {
  margin: 0;
  color: var(--color-body);
}
.cbt-person-card__body {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  text-align: left;
  gap: 10px;
  width: 100%;
}
.cbt-person-card__bio {
  margin: 0;
  color: #1F2937;
}
.cbt-person-card__link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 1.4rem;
  font-weight: 500;
  color: var(--color-heading);
  text-decoration: none;
}
.cbt-person-card__link:hover {
  text-decoration: underline;
}
.cbt-person-card__link svg {
  flex-shrink: 0;
}
.cbt-person-card__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  padding: 10px 16px;
  border: 1px solid var(--filter-border-color, #d1d5db);
  border-radius: var(--filter-btn-radius, 30px);
  font-size: 1.4rem;
  font-weight: 500;
  color: var(--color-heading);
  text-decoration: none;
  transition: background 0.15s ease;
}
.cbt-person-card__cta:hover {
  background: var(--filter-bg-hover, #e5e7eb);
}
.cbt-person-card__cta svg {
  flex-shrink: 0;
}

.c-karta-z-linkami {
  display: flex;
  padding: 1.6rem 2.4rem;
  justify-content: center;
  align-items: center;
  align-content: center;
  gap: 3.2rem;
  flex-wrap: wrap;
  background: var(--surface-surface);
  flex-direction: row;
}
@media (max-width: 767.98px) {
  .c-karta-z-linkami {
    padding: 1.6rem;
    gap: 2.4rem;
  }
}
.c-karta-z-linkami__content {
  display: flex;
  padding: 3.2rem;
  flex-direction: column;
  align-items: center;
  gap: 3.2rem;
  align-self: stretch;
  border-radius: var(--radius-L, 2rem);
  background: var(--surface-surface-container);
  max-width: 62rem;
}
@media (max-width: 767.98px) {
  .c-karta-z-linkami__content {
    flex-direction: column !important;
    padding: 1.6rem;
    width: 100%;
  }
}
.c-karta-z-linkami__content .c-karta-z-linkami__button-group-container {
  width: 100%;
}
@media (min-width: 768px) {
  .c-karta-z-linkami__content .c-karta-z-linkami__button-group-container {
    max-width: 51.5rem;
  }
}
.c-karta-z-linkami__content .c-karta-z-linkami__button-group-container .c-button {
  justify-content: space-between;
}
.c-karta-z-linkami__content .c-karta-z-linkami__button-group-container .m-button-group[data-cbt-toggle-hidden] {
  max-height: 40rem;
  transition: transform 0.4s ease-in-out;
  overflow: hidden;
  margin-top: 1rem;
}
.c-karta-z-linkami__content .c-karta-z-linkami__button-group-container .m-button-group[data-cbt-toggle-hidden].is-hidden {
  max-height: 0rem;
  margin-top: 0rem;
}
.c-karta-z-linkami__media {
  box-shadow: 0 2px 20px 0 rgba(23, 165, 220, 0.1);
}
.c-karta-z-linkami--image-left .c-karta-z-linkami__content {
  order: 2;
}
.c-karta-z-linkami--image-left .c-image {
  order: 1;
}
.c-karta-z-linkami--layout-horizontal .c-karta-z-linkami__content {
  width: 100%;
  max-width: none;
}
.c-karta-z-linkami--layout-horizontal .m-button-group--vertical {
  max-width: 51.5rem;
}
.c-karta-z-linkami--layout-vertical .c-karta-z-linkami__content {
  flex-direction: row;
  gap: 3.2rem;
  max-width: none;
  width: 100%;
  align-items: flex-start;
}
.c-karta-z-linkami--layout-vertical .c-karta-z-linkami__column {
  flex: 1;
}
@media (max-width: 767.98px) {
  .c-karta-z-linkami--layout-vertical .c-karta-z-linkami__column {
    width: 100%;
  }
}
.c-karta-z-linkami--layout-vertical .c-karta-z-linkami__column--left {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
  max-width: 48.3rem;
}

/**
 * styles/organisms/uslugi-slider.scss
 *
 * Atomic classes dla bloku slider-uslug-501:
 * - .o-section-header (organism - nagłówek sekcji)
 * - .m-card (molecule - karta)
 * - .c-link (atom - link)
 * - .c-button (atom - guzik filtru)
 * - .mp-carousel (carousel core)
 */
.o-simple-item-slider {
  background: var(--surface-surface-container);
}
.o-simple-item-slider-container {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
}
.o-simple-item-slider .mp-carousel {
  flex-direction: row;
  flex-wrap: nowrap;
}
.o-simple-item-slider .m-card {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  overflow: hidden;
  width: 29.6rem;
  border-radius: var(--radius-L, 20px);
  background: var(--surface-surface);
}
.o-simple-item-slider .m-card__content {
  display: flex;
  flex-direction: column;
  min-height: 203px;
  flex-grow: 1;
  padding: 20px;
  gap: 12px;
}
.o-simple-item-slider .m-card__content > .c-link {
  margin-top: auto;
}
.o-simple-item-slider-container.card-small-item .m-card__content {
  min-height: 140px;
}
.icon-fill-nfz {
  fill: #28166F !important;
}

.blok401-section {
  background: var(--surface-surface);
}

.blok401-container {
  max-width: 144rem;
  margin: 0 auto;
  padding: 4.8rem 2.4rem;
  display: flex;
  flex-direction: column;
  gap: 4.8rem;
}

/* Baner wstawiony shortcode'em [jv_tag] nie ma wokół siebie sekcji bloku,
   więc odstępy musi zapewnić sobie sam.

   Celowo BEZ tła: własne tło zasłaniało to, na czym baner stoi, i w miejscu
   wstawienia wychodził z niego jasny pas na całą szerokość. Kolor ma dawać
   `.blok401-box` w środku, tak samo jak przy bloku wstawionym na stronę. */
.jv-tag-banner {
  margin: 4.8rem 0;
}

/* ---- Baner ---- */
.blok401-box {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2.4rem;
  padding: 3.2rem 2.4rem;
  border-radius: 2rem;
  background: var(--surface-surface-container-high);
}

.blok401-tekst {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
  flex: 1 1 auto;
  min-width: 0;
}

.blok401-banner .blok401-tytul {
  color: var(--surface-on-surface);
  margin: 0;
  padding: 0;
}

.blok401-opis {
  font-family: "Poppins", sans-serif;
  font-size: 1.4rem;
  line-height: 1.5;
  color: var(--surface-on-surface-variant);
}

.blok401-opis p {
  margin: 0;
}

.blok401-opis p + p {
  margin-top: 1rem;
}

/* ---- Przycisk i dopisek ---- */
.blok401-akcja {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.8rem;
  flex: 0 0 auto;
}

.blok401-dopisek {
  font-family: "Poppins", sans-serif;
  font-size: 1.4rem;
  line-height: 1.5;
  text-align: center;
  color: var(--surface-on-surface-muted);
  margin: 0;
}

/* ---- Wariant wyśrodkowany ---- */
.blok401-banner--wysrodkowany .blok401-box {
  flex-direction: column;
  align-items: stretch;
  padding: 4rem 2.4rem;
}

.blok401-banner--wysrodkowany .blok401-tytul,
.blok401-banner--wysrodkowany .blok401-opis {
  text-align: center;
}

.blok401-banner--wysrodkowany .blok401-akcja {
  align-self: stretch;
}

/* ---- Mobile ----
   Poniżej tabletu oba warianty układają się pionowo i wyśrodkowują — tak jest
   w makiecie mobilnej (11353:68731), niezależnie od wybranego układu. */
@media (max-width: 767.98px) {
  .blok401-container {
    padding: 3.2rem 1.6rem;
    gap: 0.8rem;
  }
  .blok401-box {
    flex-direction: column;
    align-items: stretch;
    padding: 3.2rem 1.6rem;
  }
  .blok401-tekst {
    gap: 0.8rem;
  }
  .blok401-banner .blok401-tytul,
  .blok401-opis {
    text-align: center;
  }
  .blok401-akcja {
    align-self: stretch;
  }
}
