/* 1c.1 point 18, variant E: a small footer line, separate from the full strip. */
.site-footer .site-footer__crisis {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px 10px;
  margin-top: 24px;
  background: rgba(255, 107, 97, .14);
  border-radius: 16px;
  padding: 6px 8px 6px 6px;
  color: #fbf8f4;
  font: 400 14px/1.5 var(--font-sans);
}
.site-footer__crisis .site-footer__crisis-label {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  flex: 0 0 auto;
}
.site-footer__crisis .site-footer__crisis-icon {
  display: grid;
  place-items: center;
  flex: none;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: #ff6b61;
  color: #1c2c44;
}
.site-footer__crisis-icon svg {
  width: 16px;
  height: 16px;
  fill: currentColor;
}
.site-footer__crisis .site-footer__crisis-actions {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px 10px;
  min-width: 0;
}
.site-footer .site-footer__crisis a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  min-height: 44px;
  color: #fbf8f4;
  font: inherit;
}
.site-footer__crisis .site-footer__crisis-number {
  padding-block: 6px;
  text-decoration: none;
}
.site-footer__crisis-number > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 32px;
  padding: 0 12px;
  border-radius: 999px;
  background: #ff6b61;
  color: #1c2c44;
  font-weight: 600;
  white-space: nowrap;
}
.site-footer__crisis .site-footer__crisis-help {
  padding-inline: 4px;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}
.site-footer .site-footer__crisis a:focus-visible {
  outline: 2px solid #fbf8f4;
  outline-offset: 2px;
}
@media (max-width: 767px) {
  .site-footer__crisis .site-footer__crisis-label { flex-basis: 100%; }
}

/* Stage1c.2: shared refinements preserve the approved1c.1 component system. */
.breadcrumbs li { white-space:nowrap; }
.breadcrumbs li + li::before { content:none; }
.breadcrumbs li:not(:last-child)::after { content:'›'; margin-left:0; }
@media(max-width:767px) {
 .breadcrumbs { margin-bottom:20px; }
 .part-1c .breadcrumbs { margin-bottom:20px; }
 .breadcrumbs li:nth-child(3):last-child { flex-basis:auto; }
 .service-page-nav > .container > div { scrollbar-width:none; }
 .service-page-nav > .container > div::-webkit-scrollbar { display:none; }
 .service-page-nav > .container { position:relative; }
 .service-page-nav.has-more > .container::after { content:''; position:absolute; top:0; bottom:0; right:0; width:24px; pointer-events:none; background:linear-gradient(to right,transparent,var(--nav-bg,#fbf8f4)); }
}
.site-footer__logo img { aspect-ratio:1423/291.1; }
.calendesk-embed { width:100%; max-width:880px; min-width:0; margin-block:24px; }
.calendesk-embed__frame { display:none; width:100%; min-height:900px; border:0; border-radius:16px; background:#fff; }
.calendesk-embed__frame[src] { display:block; }
.calendesk-embed__fallback { padding:24px; background:#fff; border-radius:16px; margin-top:16px; }
.calendesk-embed__status { font-size:14px; margin-block:8px; }
.calendesk-embed__status:empty { display:none; }
.booking-calendar { scroll-margin-top:20px; background:var(--color-peach); border-radius:20px; padding:24px 16px; margin-block:24px; }
.booking-calendar:focus { outline:2px solid var(--color-navy); outline-offset:4px; }
.booking-calendar__heading { display:flex; gap:16px; align-items:flex-start; margin-bottom:24px; }
.booking-calendar__heading img { display:block; flex:none; width:56px; height:56px; border-radius:50%; object-fit:cover; }
.booking-calendar__heading h3 { font-size:22px; margin-bottom:8px; }
.booking-calendar__heading p { font-size:14px; }
.booking-calendar__heading .text-link { min-height:44px; }
.booking-calendar__closed { background:#fff; padding:24px; border-radius:16px; }
.booking-calendar__closed .service-actions { margin-top:24px; }
.booking-calendar__closed p { max-width:62ch; }
.part-1c2-home .section,.part-1c2-team .section { padding-block:64px; }
.part-1c2-home .section-heading,.part-1c2-team .section-heading { font-size:clamp(30px,2.9vw,42px); line-height:1.12; }
.home-offer-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:24px; }
.home-offer-card { position:relative; overflow:hidden; padding:24px; border-radius:20px; background:var(--service-bg); }
.home-offer-card h3 { max-width:calc(100% - 72px); font-size:24px; margin-bottom:20px; }
.home-offer-card .home-offer-subtitle { font-weight:500; margin-bottom:16px; }
.home-offer-card p { margin-bottom:16px; }
.home-offer-card > .service-motif { position:absolute; right:12px; top:16px; width:64px; height:64px; }
.home-offer-card .service-list { display:block; margin-block:16px; }
.home-offer-card .service-list li { padding-block:8px; border:0; }
.home-offer-card .service-list a { display:inline-flex; align-items:center; min-height:44px; text-underline-offset:3px; }
.home-metrics { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px 24px; margin-top:32px; }
.home-metrics dt { font:400 clamp(28px,3.2vw,44px)/1.1 var(--font-serif); font-variant-numeric:lining-nums; margin-bottom:12px; }
.home-metrics dd { font-size:16px; }
.home-metrics-source { font-size:13px; color:#526074; margin-top:24px; }
.home-partners-label { margin-top:40px; margin-bottom:16px; font-weight:500; }
.home-partners { display:grid; gap:16px; grid-template-columns:minmax(0,1fr); }
.home-partners a { display:flex; align-items:center; justify-content:center; min-height:92px; background:#fff; padding:20px; border-radius:12px; }
.home-partners img { max-width:100%; width:auto; height:44px; object-fit:contain; }
.home-cooperation { max-width:62ch; margin-block:24px; }
.part-1c2-team #jakosc { background:#f2ece3; }
.group-form { max-width:880px; padding:24px; background:#fff; border-radius:20px; margin-top:32px; }
.group-form h3 { font-size:24px; margin-bottom:16px; }
.group-form > p { margin-bottom:24px; }
.group-form__fields { display:grid; gap:24px; }
.group-form label,.group-form legend { display:block; font-weight:500; margin-bottom:8px; }
.group-form fieldset { margin:0; padding:0; border:0; }
.group-form input:not([type=radio]):not([type=checkbox]),.group-form select,.group-form textarea { width:100%; min-height:48px; border:1px solid #8a7e6e; border-radius:10px; padding:12px; background:#fbf8f4; color:#1c2c44; font:inherit; }
.group-form textarea { min-height:110px; }
.group-form input[aria-invalid=true],.group-form select[aria-invalid=true] { border:2px solid #a83c34; }
.group-form .group-form__choice { display:flex; align-items:center; gap:12px; min-height:44px; font-weight:400; margin:0; }
.group-form input[type=radio],.group-form input[type=checkbox] { width:22px; height:22px; flex:none; accent-color:#1c2c44; }
.group-form__hint { font-size:14px; margin-top:8px; }
.group-form__error { color:#a83c34; font-size:14px; margin-top:8px; }
.group-form__summary { padding:20px; border:2px solid #a83c34; border-radius:12px; margin-bottom:24px; }
.group-form__summary a { display:block; min-height:44px; }
.group-form__consent { margin-block:24px; }
.group-form__submit { margin-top:24px; }
.group-form__result { padding:24px; background:#f5ded7; border-radius:16px; margin-top:24px; }
.group-form__demo { font-size:14px; padding:16px; background:#f2ece3; border-radius:12px; margin-bottom:24px; }
@media(min-width:768px) {
 .calendesk-embed__frame { min-height:760px; }
 .booking-calendar { padding:32px; }
 .part-1c2-home .section,.part-1c2-team .section { padding-block:72px; }
 .home-offer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .home-partners { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .group-form__fields { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .group-form__wide { grid-column:1/-1; }
}
@media(min-width:1024px) {
 .part-1c2-home .section,.part-1c2-team .section { padding-block:88px; }
 .home-metrics { grid-template-columns:repeat(4,minmax(0,1fr)); }
 .part-1c2-home .offer-layout { grid-template-columns:minmax(0,2.2fr) minmax(260px,1fr); align-items:start; }
}

/* Keep source numbers together and reserve the motif area above the card copy. */
.part-1c2-home .band-sand { background:#f2ece3; }
.home-offer-card h3 { min-height:64px; }
.home-metrics-number { white-space:nowrap; }

.home-offer-group { display:flex; flex-direction:column; gap:16px; min-width:0; }
.home-offer-group > .home-offer-card { flex:1; }
.home-psychiatry-note { font-size:16px; padding-inline:24px; }
/* Partia 26 (Claude): wysokość z czystej strony rezerwacji Calendesk. */
.calendesk-embed__frame[data-height-received="true"] { min-height:0; }
