/* ==========================================================================
   BELLAGE - Cennik
   ========================================================================== */
.bl-pricegroup {
  display: grid; grid-template-columns: .3fr .7fr; gap: clamp(20px, 4vw, 72px);
  align-items: start; padding: clamp(30px, 3.6vw, 56px) 0;
  border-top: 1px solid rgba(33, 26, 24, .18);
}
.bl-pricegroup__head { position: sticky; top: calc(var(--bl-header-h) + 62px); }
.bl-pricegroup__name {
  max-width: 14ch; font-family: var(--bl-serif); font-size: clamp(22px, 2.4vw, 34px);
  line-height: 1.08; color: var(--bl-ink); text-wrap: pretty;
}
.bl-pricegroup__count { display: flex; align-items: center; gap: 12px; margin-top: 16px; font-size: 11px; letter-spacing: .2em; text-transform: uppercase; color: var(--bl-muted-2); }
.bl-pricegroup__count span[aria-hidden] { width: 26px; height: 1px; background: rgba(91, 30, 45, .5); }
.bl-pricegroup__note { margin-top: 18px; max-width: 34ch; font-size: 13.5px; line-height: 1.7; color: var(--bl-muted); }
.bl-pricegroup__link {
  display: inline-flex; align-items: center; gap: 9px; margin-top: 18px;
  font-size: 11px; letter-spacing: .18em; text-transform: uppercase; color: var(--bl-accent);
}
.bl-pricegroup__link span { transition: transform .38s var(--bl-ease-2); }
.bl-pricegroup__link:hover span { transform: translateX(6px); }
.bl-priceitem {
  display: grid; grid-template-columns: 1fr auto; gap: clamp(18px, 2.4vw, 40px);
  align-items: baseline; padding: clamp(14px, 1.5vw, 19px) 0;
  border-bottom: 1px solid rgba(33, 26, 24, .13);
  color: var(--bl-ink-2);
}

/* Filtr kategorii i wyszukiwarka chowaja pozycje atrybutem "hidden". Regula
   [hidden]{display:none} z arkusza przegladarki ma nizsza specyficznosc niz
   display:grid powyzej, wiec bez tego powtorzenia filtrowanie nie dawalo
   ZADNEGO efektu - lista zostawala kompletna. */
.bl-pricegroup[hidden], .bl-priceitem[hidden] { display: none; }

.bl-priceitem__left { transition: transform .38s var(--bl-ease-2); }
a.bl-priceitem:hover { color: var(--bl-ink-2); }
a.bl-priceitem:hover .bl-priceitem__left { transform: translateX(12px); }
.bl-priceitem__left { display: flex; align-items: baseline; gap: 12px; min-width: 0; flex-wrap: wrap; }
.bl-priceitem__name { font-size: 15.5px; line-height: 1.5; }
.bl-priceitem__link {
  flex-shrink: 0; font-size: 11px; letter-spacing: .18em; text-transform: uppercase;
  color: var(--bl-accent); border-bottom: 1px solid rgba(91, 30, 45, .4);
}
/* Komorki cenowe (uwagi #764-#766): kazda kwota z etykieta "za co" - 1 zabieg,
   pakiet N zabiegow, lekarze / dr Wierzbicka. Stala szerokosc komorki daje
   efekt kolumn w obrebie grupy bez osobnego naglowka tabeli. */
.bl-priceitem__right { display: flex; align-items: flex-end; justify-content: flex-end; gap: clamp(14px, 1.8vw, 30px); flex-wrap: wrap; }
.bl-priceitem__cell { display: flex; flex-direction: column; align-items: flex-end; gap: 3px; min-width: 104px; }
.bl-priceitem__lbl { font-size: 10px; letter-spacing: .14em; text-transform: uppercase; color: var(--bl-muted-2); white-space: nowrap; line-height: 1.3; }
.bl-priceitem__price { font-family: var(--bl-serif); font-size: clamp(16px, 1.6vw, 21px); color: var(--bl-accent); white-space: nowrap; }
.bl-priceitem__pkg { font-family: var(--bl-serif); font-size: clamp(15px, 1.4vw, 18px); color: var(--bl-ink-2); white-space: nowrap; }
.bl-priceitem__dopisek { flex-basis: 100%; font-size: 12px; line-height: 1.6; color: var(--bl-muted); }
.bl-priceempty { text-align: center; border-top: 1px solid rgba(33, 26, 24, .18); padding: clamp(60px, 8vw, 120px) 30px; }
.bl-pricerules { display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(22px, 3vw, 56px); }
.bl-pricerules > div { border-top: 1px solid var(--bl-line-3); padding-top: 22px; }
.bl-pricerules__no { font-family: var(--bl-serif); font-weight: 300; font-size: clamp(20px, 1.8vw, 26px); color: var(--bl-gold); margin-bottom: 14px; }
.bl-pricerules__title { font-family: var(--bl-serif); font-size: clamp(19px, 1.9vw, 26px); line-height: 1.14; color: var(--bl-ink); margin-bottom: 10px; }
.bl-pricerules__desc { font-size: 14.5px; line-height: 1.72; color: var(--bl-ink-3); }
/* ==========================================================================
   RWD
   ========================================================================== */
@media (max-width: 640px) {
  .bl-priceitem--multi { grid-template-columns: 1fr; gap: 10px; }
  .bl-priceitem--multi .bl-priceitem__right { justify-content: flex-start; }
  .bl-priceitem--multi .bl-priceitem__cell { align-items: flex-start; min-width: 0; }
}
@media (max-width: 960px) {
  .bl-pricegroup { grid-template-columns: 1fr; gap: 22px; }
  .bl-pricegroup__head { position: static; }
  .bl-pricerules { grid-template-columns: 1fr; gap: 26px; }
}

