/**
 * Nasi Specjaliści — katalog i kontrakt klas dla dynamicznej pętli (page-specjalisci.php).
 * Ładowane wyłącznie na stronie o slug `specjalisci` (inc/specjalisci-template.php).
 * Odwzorowuje projekt Vercel (Tailwind: Lato, gold #caa660, clinic-black #0a0a0a, bg #F6F6F6).
 * Cele CSS = podłańcuch klasy uniqueID (spec-...) → bez custom className; bloki 100% valid i powtarzalne.
 */

/* ============ Baza ============ */
body.rpc-specjalisci-page { background: #F6F6F6; }
body.rpc-specjalisci-page .rpc-breadcrumbs { display: none !important; }
body.rpc-specjalisci-page #masthead { margin-bottom: 0 !important; }
.rpc-specjalisci { background: #F6F6F6; color: #1a1a1a; }
.rpc-specjalisci,
.rpc-specjalisci .wp-block-kadence-advancedheading,
.rpc-specjalisci h1, .rpc-specjalisci h2, .rpc-specjalisci h3, .rpc-specjalisci p,
.rpc-specjalisci a, .rpc-specjalisci span {
  font-family: "Lato", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
}

/* Wspólny kontener treści (max-w-7xl px-6) */
.rpc-specjalisci .kb-row-layout-idspec-hero > .kt-row-column-wrap,
.rpc-specjalisci .kb-row-layout-idspec-gridrow > .kt-row-column-wrap,
.rpc-specjalisci .kb-row-layout-idspec-pagrow > .kt-row-column-wrap,
.rpc-specjalisci .kb-row-layout-idspec-seorow > .kt-row-column-wrap,
.rpc-specjalisci .rpc-specjalisci__container {
  max-width: 1280px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
}

/* ============ HERO (ciemny) ============ */
.rpc-specjalisci .kb-row-layout-idspec-hero,
.rpc-specjalisci .rpc-specjalisci__hero { background: #0a0a0a; }
.rpc-specjalisci .kb-row-layout-idspec-hero > .kt-row-column-wrap,
.rpc-specjalisci .rpc-specjalisci__hero > .rpc-specjalisci__container { padding-top: 16px !important; padding-bottom: 28px !important; }

/* breadcrumb */
.rpc-specjalisci .kb-row-layout-idspec-hero .rank-math-breadcrumb,
.rpc-specjalisci .kb-row-layout-idspec-hero .rank-math-breadcrumb p,
.rpc-specjalisci .rpc-specjalisci__hero .rank-math-breadcrumb,
.rpc-specjalisci .rpc-specjalisci__hero .rank-math-breadcrumb p {
  display: flex !important;
  flex-flow: row wrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 0 !important;
  margin: 0 0 20px !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
  text-align: left !important;
  color: rgba(255,255,255,.45);
}
.rpc-specjalisci .kb-row-layout-idspec-hero .rank-math-breadcrumb a,
.rpc-specjalisci .rpc-specjalisci__hero .rank-math-breadcrumb a { color: rgba(255,255,255,.55); text-decoration: none; transition: color .2s; }
.rpc-specjalisci .kb-row-layout-idspec-hero .rank-math-breadcrumb a:hover,
.rpc-specjalisci .rpc-specjalisci__hero .rank-math-breadcrumb a:hover { color: #caa660; }
.rpc-specjalisci .kb-row-layout-idspec-hero .rank-math-breadcrumb .separator,
.rpc-specjalisci .rpc-specjalisci__hero .rank-math-breadcrumb .separator { margin: 0 8px; color: rgba(255,255,255,.3); }
.rpc-specjalisci .kb-row-layout-idspec-hero .rank-math-breadcrumb .last,
.rpc-specjalisci .rpc-specjalisci__hero .rank-math-breadcrumb .last { color: rgba(255,255,255,.7); }

/* H1 */
.rpc-specjalisci .kt-adv-headingspec-h1,
.rpc-specjalisci .rpc-specjalisci__title {
  font-size: 48px !important;
  font-weight: 300 !important;
  line-height: 1.1 !important;
  color: #ffffff !important;
  margin: 0 0 16px !important;
  letter-spacing: -0.01em;
}
/* opis */
.rpc-specjalisci .kt-adv-headingspec-desc,
.rpc-specjalisci .rpc-specjalisci__description {
  font-size: 18px !important;
  font-weight: 300 !important;
  line-height: 1.6 !important;
  color: rgba(255,255,255,.7) !important;
  max-width: 672px;
  margin: 0 !important;
}
/* złota linia pod opisem */
.rpc-specjalisci .kt-adv-headingspec-desc::after,
.rpc-specjalisci .rpc-specjalisci__description::after {
  content: "";
  display: block;
  width: 64px;
  height: 1px;
  background: #caa660;
  margin: 24px 0 32px;
}

/* pigułki (przyciski Kadence → pill) */
.rpc-specjalisci .kb-btnsspec-pills,
.rpc-specjalisci .rpc-specjalisci__filters { display: flex !important; flex-wrap: wrap; gap: 12px; align-items: center; justify-content: flex-start; }
.rpc-specjalisci .kb-btnsspec-pills .kb-button,
.rpc-specjalisci .rpc-specjalisci__filter {
  background: transparent !important;
  border: 1px solid rgba(255,255,255,.2) !important;
  color: rgba(255,255,255,.7) !important;
  border-radius: 9999px !important;
  padding: 6px 16px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: .06em !important;
  line-height: 1.5 !important;
  min-height: 0 !important;
  transition: color .2s, border-color .2s, background .2s !important;
}
.rpc-specjalisci .kb-btnsspec-pills .kb-button .kt-btn-inner-text { font-size: 11px !important; font-weight: 700 !important; }
.rpc-specjalisci .kb-btnsspec-pills .kb-button:hover,
.rpc-specjalisci .rpc-specjalisci__filter:hover { border-color: #caa660 !important; color: #ffffff !important; }
/* aktywna: Wszyscy */
.rpc-specjalisci .kb-btnsspec-pills .kb-btnspec-pill-0,
.rpc-specjalisci .rpc-specjalisci__filter.is-active { background: #caa660 !important; border-color: #caa660 !important; color: #ffffff !important; }
/* toggle „Pokaż więcej" */
.rpc-specjalisci .kb-btnsspec-pills .kb-btnspec-pill-more,
.rpc-specjalisci .rpc-specjalisci__filters-toggle {
  background: transparent !important;
  border: 0 !important;
  color: #caa660 !important;
  padding: 6px 4px !important;
  letter-spacing: .12em !important;
  cursor: pointer;
}
.rpc-specjalisci .kb-btnsspec-pills .kb-btnspec-pill-more:hover,
.rpc-specjalisci .rpc-specjalisci__filters-toggle:hover { color: #d6b87d !important; }
/* ukryte kategorie — pokazywane po kliknięciu „Pokaż więcej" (klasa dodawana przez JS) */
.rpc-specjalisci .kb-btnsspec-pills [class*="kb-btnspec-pillx-"] { display: none !important; }
.rpc-specjalisci .kb-btnsspec-pills.rpc-pills-expanded [class*="kb-btnspec-pillx-"] { display: inline-flex !important; }
.rpc-specjalisci .rpc-specjalisci__filter--extra { display: none !important; }
.rpc-specjalisci .rpc-specjalisci__filters.rpc-pills-expanded .rpc-specjalisci__filter--extra { display: inline-flex !important; }

/* opis przypisany do wybranej specjalizacji — górna część widoku */
.rpc-specjalisci .rpc-specjalisci__category-description--top {
  max-width: 896px;
  margin-top: 28px;
  color: rgba(255,255,255,.72);
  font-size: 14px;
  font-weight: 300;
  line-height: 1.7;
}
.rpc-specjalisci .rpc-specjalisci__category-description--top > :last-child { margin-bottom: 0; }

/* ============ SEKCJA SIATKI ============ */
/* padding-bottom 0 — paginacja tuż pod kartami (jak w Vercel), nie 160px niżej */
.rpc-specjalisci .kb-row-layout-idspec-gridrow > .kt-row-column-wrap,
.rpc-specjalisci .rpc-specjalisci__grid-section > .rpc-specjalisci__container { padding-top: 40px !important; padding-bottom: 0 !important; }
/* licznik */
.rpc-specjalisci .kt-adv-headingspec-count,
.rpc-specjalisci .rpc-specjalisci__count {
  font-size: 12px !important;
  text-transform: uppercase;
  letter-spacing: .12em;
  color: rgba(26,26,26,.6) !important;
  margin: 0 0 32px !important;
}
.rpc-specjalisci .rpc-specjalisci__empty {
  margin: 32px 0 0;
  color: rgba(26,26,26,.7);
  font-size: 16px;
}
/* siatka */
.rpc-specjalisci .kadence-columnspec-grid > .kt-inside-inner-col,
.rpc-specjalisci .rpc-specjalisci__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 32px;
}

/* ============ KARTA ============ */
/* Celujemy w STABILNE className (rpc-spec-card__*), NIE w uniqueID — dzięki temu powielenie
   bloku karty w edytorze (Kadence regeneruje uniqueID) NIE psuje formatowania. */
.rpc-specjalisci .rpc-spec-card { background: #ffffff; border: 1px solid transparent; transition: border-color .5s ease, box-shadow .5s ease; }
.rpc-specjalisci .rpc-spec-card > .kt-inside-inner-col { display: flex; flex-direction: column; height: 100%; padding: 0 !important; }
.rpc-specjalisci .rpc-spec-card:hover { border-color: #caa660; box-shadow: 0 12px 30px rgba(0,0,0,.09); }

/* zdjęcie 4:5 */
.rpc-specjalisci .rpc-spec-card__img { margin: 0 !important; overflow: hidden; }
.rpc-specjalisci .rpc-spec-card__img .kb-is-ratio-image { aspect-ratio: 4 / 5 !important; padding-bottom: 0 !important; height: auto !important; }
.rpc-specjalisci .rpc-spec-card__img img { width: 100%; height: 100%; object-fit: cover; transition: transform .7s ease; }
.rpc-specjalisci .rpc-spec-card:hover .rpc-spec-card__img img { transform: scale(1.05); }

/* body karty */
.rpc-specjalisci .rpc-spec-card__body { flex-grow: 1; }
.rpc-specjalisci .rpc-spec-card__body > .kt-inside-inner-col { display: flex; flex-direction: column; height: 100%; padding: 24px !important; }

/* tytuł (specjalizacja) */
.rpc-specjalisci .rpc-spec-card__title {
  color: #caa660 !important;
  font-size: 9px !important;
  font-weight: 700 !important;
  text-transform: uppercase;
  letter-spacing: .12em !important;
  line-height: 1.4 !important;
  margin: 0 0 8px !important;
}
/* imię (className na <a>; tekst w wewnętrznym advancedheading) */
.rpc-specjalisci .rpc-spec-card__name { text-decoration: none !important; display: block; }
.rpc-specjalisci .rpc-spec-card__name .wp-block-kadence-advancedheading {
  font-size: 20px !important;
  font-weight: 300 !important;
  color: #0a0a0a !important;
  line-height: 1.3 !important;
  margin: 0 0 12px !important;
  transition: color .2s;
}
.rpc-specjalisci .rpc-spec-card__name:hover .wp-block-kadence-advancedheading { color: #caa660 !important; }
/* specjalizacje — każda to klikalny link do widoku kategorii */
.rpc-specjalisci .rpc-spec-card__specs {
  font-size: 11px !important;
  font-weight: 500 !important;
  color: rgba(26,26,26,.8) !important;
  line-height: 1.7 !important;
  margin: 0 0 16px !important;
}
.rpc-specjalisci .rpc-spec-card__specs a {
  color: rgba(26,26,26,.8) !important;
  text-decoration: none !important;
  transition: color .2s;
}
.rpc-specjalisci .rpc-spec-card__specs a:hover { color: #caa660 !important; }
.rpc-specjalisci .rpc-spec-card__specs .rpc-spec-dot { margin: 0 7px; color: rgba(26,26,26,.8); }
/* separator w kartach dynamicznych: przecinek przylega do poprzedniej pozycji */
.rpc-specjalisci .rpc-spec-card__specs .rpc-spec-sep { margin: 0 4px 0 0; color: rgba(26,26,26,.8); }
.rpc-specjalisci .rpc-spec-card__specs .spec-more-dots { margin-left: 7px; color: rgba(26,26,26,.45); }
/* link „Zobacz profil" — className na <a>; tekst w wewnętrznym advancedheading */
.rpc-specjalisci .rpc-spec-card__link {
  margin-top: auto !important;
  display: block;
  padding-top: 16px;
  border-top: 1px solid #f1f1f1;
  text-decoration: none !important;
}
.rpc-specjalisci .rpc-spec-card__link .wp-block-kadence-advancedheading {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #caa660 !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  text-transform: uppercase;
  letter-spacing: .12em !important;
  margin: 0 !important;
  transition: color .2s;
}
.rpc-specjalisci .rpc-spec-card__link .wp-block-kadence-advancedheading::after {
  content: "";
  width: 0; height: 0;
  border-left: 5px solid currentColor;
  border-top: 4px solid transparent;
  border-bottom: 4px solid transparent;
}
.rpc-specjalisci .rpc-spec-card__link:hover .wp-block-kadence-advancedheading { color: #b59556 !important; }

/* Semantyczny wariant karty dla pętli PHP — bez zależności od Kadence Blocks. */
.rpc-specjalisci .rpc-spec-card--dynamic {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.rpc-specjalisci .rpc-spec-card--dynamic .rpc-spec-card__img {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 5;
}
.rpc-specjalisci .rpc-spec-card--dynamic .rpc-spec-card__body {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  padding: 24px;
}
.rpc-specjalisci .rpc-spec-card--dynamic .rpc-spec-card__name {
  color: #0a0a0a !important;
  font-size: 20px !important;
  font-weight: 300 !important;
  line-height: 1.3 !important;
  margin: 0 0 12px !important;
  transition: color .2s;
}
.rpc-specjalisci .rpc-spec-card--dynamic .rpc-spec-card__name:hover { color: #caa660 !important; }
.rpc-specjalisci .rpc-spec-card--dynamic .rpc-spec-card__link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #caa660 !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  text-transform: uppercase;
  letter-spacing: .12em !important;
  transition: color .2s;
}
.rpc-specjalisci .rpc-spec-card--dynamic .rpc-spec-card__link::after {
  width: 0;
  height: 0;
  border-top: 4px solid transparent;
  border-bottom: 4px solid transparent;
  border-left: 5px solid currentColor;
  content: "";
}
.rpc-specjalisci .rpc-spec-card--dynamic .rpc-spec-card__link:hover { color: #b59556 !important; }

/* opis przypisany do wybranej specjalizacji — pod kartami i paginacją */
.rpc-specjalisci .rpc-specjalisci__category-description--bottom {
  max-width: 896px;
  margin: 64px auto 0;
  padding-top: 48px;
  border-top: 1px solid #e5e7eb;
  color: rgba(26,26,26,.7);
  font-size: 14px;
  font-weight: 300;
  line-height: 1.7;
  text-align: center;
}
.rpc-specjalisci .rpc-specjalisci__category-description--bottom > :last-child { margin-bottom: 0; }

/* ============ PAGINACJA ============ */
.rpc-specjalisci .kb-row-layout-idspec-pagrow > .kt-row-column-wrap,
.rpc-specjalisci .rpc-specjalisci__pagination-section > .rpc-specjalisci__container { padding-top: 0 !important; padding-bottom: 0 !important; }
.rpc-specjalisci .kb-btnsspec-pagination,
.rpc-specjalisci .rpc-specjalisci__pagination { display: flex !important; justify-content: center; gap: 8px; margin-top: 64px; }
.rpc-specjalisci .kb-btnsspec-pagination .kb-button,
.rpc-specjalisci .rpc-specjalisci__pagination .page-numbers {
  width: 40px !important; height: 40px !important;
  padding: 0 !important;
  border: 1px solid #e5e7eb !important;
  background: transparent !important;
  color: #1a1a1a !important;
  border-radius: 0 !important;
  font-size: 14px !important;
  display: inline-flex !important; align-items: center; justify-content: center;
  min-height: 0 !important;
  transition: color .2s, border-color .2s, background .2s !important;
}
.rpc-specjalisci .kb-btnsspec-pagination .kb-button:hover,
.rpc-specjalisci .rpc-specjalisci__pagination .page-numbers:hover { border-color: #caa660 !important; color: #caa660 !important; }
.rpc-specjalisci .kb-btnsspec-pagination .kb-btnspec-pg-1,
.rpc-specjalisci .rpc-specjalisci__pagination .page-numbers.current { border-color: #caa660 !important; color: #caa660 !important; background: rgba(202,166,96,.05) !important; }
/* strzałka wstecz na 1. stronie — wyszarzona i nieaktywna */
.rpc-specjalisci .kb-btnsspec-pagination .kb-btnspec-pg-prev {
  opacity: .3 !important;
  pointer-events: none !important;
  cursor: default !important;
}
.rpc-specjalisci .kb-btnsspec-pagination .kb-btnspec-pg-prev:hover { border-color: #e5e7eb !important; color: #1a1a1a !important; }

/* ============ SEKCJA SEO ============ */
.rpc-specjalisci .kb-row-layout-idspec-seorow > .kt-row-column-wrap,
.rpc-specjalisci .rpc-specjalisci__seo-section > .rpc-specjalisci__container { padding-top: 96px !important; padding-bottom: 96px !important; }
.rpc-specjalisci .kadence-columnspec-seocol > .kt-inside-inner-col,
.rpc-specjalisci .rpc-specjalisci__seo-content {
  max-width: 896px;
  margin: 0 auto;
  padding-top: 64px;
  border-top: 1px solid #e5e7eb;
  text-align: center;
}
.rpc-specjalisci .kt-adv-headingspec-seo-h2,
.rpc-specjalisci .rpc-specjalisci__seo-title { font-size: 24px !important; font-weight: 300 !important; color: #1a1a1a !important; margin: 0 0 24px !important; }
.rpc-specjalisci .kt-adv-headingspec-seo-p,
.rpc-specjalisci .rpc-specjalisci__seo-copy { font-size: 14px !important; font-weight: 300 !important; color: rgba(26,26,26,.7) !important; line-height: 1.7 !important; margin: 0 !important; }

/* ============ RESPONSYWNOŚĆ ============ */
@media (max-width: 1024px) {
  .rpc-specjalisci .kadence-columnspec-grid > .kt-inside-inner-col,
  .rpc-specjalisci .rpc-specjalisci__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
  .rpc-specjalisci .kadence-columnspec-grid > .kt-inside-inner-col,
  .rpc-specjalisci .rpc-specjalisci__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
  .rpc-specjalisci .kt-adv-headingspec-h1,
  .rpc-specjalisci .rpc-specjalisci__title { font-size: 34px !important; }
  .rpc-specjalisci .kt-adv-headingspec-seo-p,
  .rpc-specjalisci .rpc-specjalisci__seo-copy { text-align: justify; }
}
@media (max-width: 479px) {
  .rpc-specjalisci .kadence-columnspec-grid > .kt-inside-inner-col,
  .rpc-specjalisci .rpc-specjalisci__grid { grid-template-columns: minmax(0, 1fr); }
}
