/* Short thematic pages: psychiatry, tests, pricing and FAQ */
.inner-page { padding: clamp(2.8rem, 7vw, 5.8rem) 0; }
.inner-page + .inner-page { padding-top: 0; }
.inner-page__crumbs { display:flex; gap:.55rem; align-items:center; margin:0 0 1.2rem; color:var(--color-muted); font-size:.82rem; }
.inner-page__crumbs a { color:inherit; text-decoration:none; }
.inner-page__crumbs i { color:var(--color-teal); font-size:1rem; }
.inner-page__hero { display:grid; gap:2rem; align-items:center; }
.inner-page__hero--media { grid-template-columns:minmax(0, .9fr) minmax(0, 1.1fr); }
.inner-page__hero-copy { max-width:44rem; }
.inner-page__eyebrow { margin:0 0 .8rem; color:var(--color-teal); font-size:.78rem; font-weight:700; letter-spacing:.09em; text-transform:uppercase; }
.inner-page h1 { margin:0; max-width:14ch; color:var(--color-navy); font-size:clamp(2rem, 8vw, 5rem); line-height:1.05; letter-spacing:-.06em; overflow-wrap:break-word; }
.inner-page__lead { margin:1.35rem 0 1.65rem; max-width:52ch; color:var(--color-muted); font-size:1.08rem; }
.cennik-hero-phone { margin-top:1.15rem; }
.cennik-hero-phone i { font-size:1.2rem; }
.inner-page__media { min-height:19rem; overflow:hidden; border-radius:var(--radius-banner); }
.inner-page__media img { width:100%; height:100%; min-height:19rem; object-fit:cover; }
.inner-page__intro { display:grid; grid-template-columns:70px minmax(0, 1.1fr) minmax(0, .8fr); gap:1.3rem; align-items:start; padding:2rem 0; border-top:1px solid var(--color-line); border-bottom:1px solid var(--color-line); }
.inner-page__intro .icon-circle { width:3.6rem; height:3.6rem; background:var(--teal-100); color:var(--color-teal); }
.inner-page__intro h2, .inner-page__section-title { margin:0 0 .45rem; color:var(--color-navy); font-size:clamp(1.55rem, 2.5vw, 2.3rem); letter-spacing:-.045em; line-height:1.1; }
.inner-page__intro p { margin:0; color:var(--color-muted); }
.check-list { display:grid; gap:.5rem; margin:0; padding:0; list-style:none; font-size:.92rem; }
.check-list li { display:flex; gap:.55rem; align-items:flex-start; }
.check-list i { color:var(--color-teal); margin-top:.25rem; }
.approach-grid { display:grid; grid-template-columns:1fr; gap:1rem; margin-top:2.5rem; }
.approach-card { padding:1.65rem; border:1px solid var(--color-line); border-radius:var(--radius-card); background:#fff; }
.approach-card i { display:block; margin-bottom:1.2rem; color:var(--color-teal); font-size:2.25rem; }
.approach-card h3 { margin:0 0 .6rem; color:var(--color-navy); font-size:1.15rem; }
.approach-card p { margin:0; color:var(--color-muted); font-size:.9rem; }
.approach-card--psychiatrist {
  background: var(--blue-100);
  border-color: rgba(58, 145, 181, 0.32);
}
.approach-card--psychiatrist i {
  color: var(--blue-500);
}
.approach-card--psychologist {
  background: var(--amber-100);
  border-color: rgba(250, 169, 61, 0.35);
}
.approach-card--psychologist i {
  color: var(--amber-500);
}
.approach-card--coach {
  background: var(--teal-100);
  border-color: rgba(45, 156, 148, 0.32);
}
.approach-card--coach i {
  color: var(--teal-500);
}
.approach-card > i.is-teal { color: var(--blue-500); }
.approach-card > i.is-orange { color: var(--amber-500); }
.approach-card > i.is-purple { color: var(--purple-500); }
.approach-card > i.is-red { color: var(--pink-500); }
.approach-card > i.is-green { color: var(--teal-500); }
.approach-card > i.is-yellow { color: var(--green-500); }
.psychiatry-story { display:grid; grid-template-columns:minmax(0, 1fr) minmax(0, 1fr); gap:clamp(2rem, 6vw, 6rem); align-items:center; padding:clamp(3.5rem, 8vw, 7rem) 0; }
.psychiatry-story__media { overflow:hidden; aspect-ratio:4 / 3; border-radius:var(--radius-media); }
.psychiatry-story__media img { width:100%; height:100%; object-fit:cover; }
.psychiatry-story__copy { max-width:34rem; }
.psychiatry-story__copy h2 { margin:0 0 1rem; color:var(--color-navy); font-size:clamp(1.9rem, 3.2vw, 3rem); letter-spacing:-.05em; line-height:1.05; }
.psychiatry-story__copy > p:not(.inner-page__eyebrow) { margin:0; color:var(--color-muted); }
.psychiatry-steps { display:grid; gap:1.15rem; margin:1.6rem 0 0; padding:0; counter-reset:psychiatry; list-style:none; }
.psychiatry-steps li { position:relative; min-height:2.9rem; padding-left:3.65rem; counter-increment:psychiatry; }
.psychiatry-steps li::before { content:counter(psychiatry); position:absolute; left:0; top:0; display:grid; place-items:center; width:2.35rem; height:2.35rem; border:1px solid var(--teal-300); border-radius:50%; color:var(--color-teal); font-weight:700; }
.psychiatry-steps strong, .psychiatry-steps span { display:block; }
.psychiatry-steps strong { color:var(--color-navy); font-size:.95rem; }
.psychiatry-steps span { margin-top:.15rem; color:var(--color-muted); font-size:.86rem; line-height:1.45; }
.psychiatry-story blockquote { margin:1.7rem 0 0; padding:.4rem 0 .4rem 1.25rem; border-left:2px solid var(--teal-500); color:var(--color-teal); font-size:1.2rem; font-weight:600; line-height:1.4; }
.psychiatry-story--reverse { background:linear-gradient(90deg, var(--teal-100) 0%, #fff 72%); margin-left:calc((min(100vw, var(--container)) - 100vw) / 2); margin-right:calc((min(100vw, var(--container)) - 100vw) / 2); padding-left:max(calc((100vw - min(100vw, var(--container))) / 2), 1.25rem); padding-right:max(calc((100vw - min(100vw, var(--container))) / 2), 1.25rem); overflow-x:clip; }
.inner-cta { display:flex; justify-content:space-between; gap:1.5rem; align-items:center; margin:clamp(1.65rem, 3vw, 2.25rem) 0 0; padding:1.5rem 1.75rem; color:#fff; background:var(--gradient-cta); border-radius:var(--radius-card); overflow:hidden; }
.inner-page:has(.inner-cta) { padding-bottom:clamp(2rem, 4vw, 3rem); }
.inner-cta__copy { display:flex; align-items:center; gap:1rem; flex-wrap:wrap; min-width:0; }
.inner-cta__copy i { color:var(--teal-400); font-size:2.5rem; }
.inner-cta h2 { margin:0 0 .2rem; color:#fff; font-size:1.32rem; }
.inner-cta p { margin:0; color:var(--text-on-dark-muted); font-size:.9rem; }

/* Psychiatry guide */
.psy-guide { padding-top: 0; }
.psy-block {
  padding: 2.5rem 0;
  border-top: 1px solid var(--color-line);
}
.psy-block:first-child { border-top: 0; }
.psy-block__head { margin: 0 0 1.5rem; }
.psy-block__lead {
  margin: 0.65rem 0 0;
  max-width: 62ch;
  color: var(--color-muted);
  font-size: 1rem;
  line-height: 1.6;
}
.psy-split {
  display: grid;
  gap: 1.5rem;
  padding: 1.75rem;
  background: var(--blue-100);
  border: 1px solid var(--border-default, var(--color-line));
  border-radius: var(--radius-card);
}
.psy-split__intro h2 { max-width: 14ch; }
.psy-split__body {
  display: grid;
  gap: 0.95rem;
}
.psy-split__body p {
  margin: 0;
  max-width: 62ch;
  color: var(--color-muted);
  font-size: 1rem;
  line-height: 1.65;
}
.psy-grid {
  display: grid;
  gap: 1rem;
}
.psy-grid--2 { grid-template-columns: 1fr; }
.psy-grid--3 { grid-template-columns: 1fr; }
.psy-grid--4 { grid-template-columns: 1fr; }
.psy-grid--6 { grid-template-columns: 1fr; }
.psy-grid .approach-card { margin: 0; }
.psy-card__link {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  margin: 1rem 0 0;
  color: var(--color-teal);
  font-size: 0.88rem;
  font-weight: 600;
  text-decoration: none;
}
.psy-card__link i { font-size: 1rem; }
.psy-benefit {
  padding: 1.25rem 0 0;
  border-top: 2px solid var(--teal-400, var(--color-teal));
}
.psy-benefit h3 {
  margin: 0 0 0.45rem;
  color: var(--color-navy);
  font-size: 1.05rem;
}
.psy-benefit p {
  margin: 0;
  color: var(--color-muted);
  font-size: 0.9rem;
  line-height: 1.55;
}
.psy-steps {
  display: grid;
  gap: 1rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.psy-steps li {
  padding: 1.35rem 1.4rem;
  border: 1px solid var(--color-line);
  border-radius: var(--radius-card);
  background: #fff;
}
.psy-steps__num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.85rem;
  height: 1.85rem;
  margin: 0 0 0.75rem;
  border-radius: 999px;
  background: var(--teal-100);
  color: var(--color-navy);
  font-size: 0.78rem;
  font-weight: 700;
}
.psy-steps h3 {
  margin: 0 0 0.4rem;
  color: var(--color-navy);
  font-size: 1rem;
}
.psy-steps p {
  margin: 0;
  color: var(--color-muted);
  font-size: 0.88rem;
  line-height: 1.5;
}
@media (min-width: 720px) {
  .psy-grid--2 { grid-template-columns: 1fr 1fr; }
  .psy-grid--3 { grid-template-columns: repeat(3, 1fr); }
  .psy-grid--4 { grid-template-columns: 1fr 1fr; }
  .psy-grid--6 { grid-template-columns: 1fr 1fr; }
  .psy-steps { grid-template-columns: 1fr 1fr; }
}
@media (min-width: 900px) {
  .psy-split {
    grid-template-columns: minmax(12rem, 0.42fr) minmax(0, 1fr);
    gap: 2.25rem;
    align-items: start;
    padding: 2rem;
  }
  .psy-grid--4 { grid-template-columns: repeat(4, 1fr); }
  .psy-grid--6 { grid-template-columns: repeat(3, 1fr); }
  .psy-steps { grid-template-columns: repeat(5, 1fr); }
}
.test-hero { padding-bottom:clamp(2rem, 5vw, 4rem); background:linear-gradient(100deg, #fff 0%, #fff 50%, var(--blue-100) 100%); }
.test-hero__visual { align-self:stretch; min-height:16rem; display:grid; place-items:center; overflow:hidden; border-radius:0 0 0 var(--radius-banner); }
.test-hero__visual img { width:100%; height:100%; object-fit:cover; }
.diagnoza-intro {
  padding: clamp(1.35rem, 4vw, 2rem) 0 clamp(0.65rem, 1.8vw, 0.85rem);
  background: var(--bg-main);
}
.diagnoza-intro__panel {
  margin: 0;
  padding: clamp(1.15rem, 3.2vw, 1.6rem) clamp(1.25rem, 3.8vw, 1.85rem);
  border: 2px solid var(--blue-550);
  border-radius: 16px;
  background: var(--blue-100);
  color: var(--text-primary);
  font-size: clamp(1rem, 2.5vw, 1.12rem);
  font-weight: 500;
  line-height: 1.65;
  text-wrap: pretty;
}
.diagnoza-tests {
  padding-top: clamp(0.85rem, 2vw, 1.15rem);
  background: var(--bg-blue-soft);
}
.diagnoza-tests.inner-page {
  padding-top: clamp(0.85rem, 2vw, 1.15rem);
  padding-bottom: clamp(2rem, 4vw, 3rem);
}
.test-grid { display:grid; grid-template-columns:1fr; gap:1.1rem; }
.test-card { position:relative; padding:2rem; border:1px solid var(--color-line); border-radius:var(--radius-card); background:#fff; }
.test-card--primary { border-color:var(--teal-500); background:linear-gradient(135deg, #fff 0%, var(--teal-100) 100%); }
.test-card__icon { display:inline-flex; align-items:center; justify-content:center; width:3.4rem; height:3.4rem; margin-bottom:1.1rem; color:var(--color-teal); background:#fff; border-radius:50%; font-size:1.8rem; }
.test-card h2 { margin:0 0 .55rem; color:var(--color-navy); font-size:1.5rem; letter-spacing:-.04em; }
.test-card p { max-width:38ch; margin:0 0 1.35rem; color:var(--color-muted); }
.test-card__meta { display:flex; flex-wrap:wrap; align-items:center; gap:.8rem; color:var(--color-muted); font-size:.82rem; }
.test-card__meta i { color:var(--color-teal); }
.test-card--compact { display:flex; align-items:center; gap:1rem; padding:1.15rem 1.35rem; }
.test-card--compact .test-card__icon { width:2.8rem; height:2.8rem; margin:0; font-size:1.35rem; }
.test-card--compact h2 { margin:0 0 .2rem; font-size:1.08rem; }
.test-card--compact p { margin:0; font-size:.86rem; }
.test-card__lock { margin-left:auto; color:var(--color-muted); white-space:nowrap; font-size:.82rem; }
.test-card__visit { display:inline-flex; align-items:center; gap:.35rem; margin-left:auto; color:var(--blue-550, #255A88); white-space:nowrap; font-size:.82rem; font-weight:600; }
.test-card__visit i { color:var(--orange-500); font-size:1rem; }
.diagnoza-questionnaires { margin-top:clamp(2rem, 4vw, 2.75rem); }
.diagnoza-questionnaires__head { margin:0 0 1.15rem; }
.diagnoza-questionnaires__head .inner-page__section-title { margin:0; max-width:none; font-size:clamp(1.45rem, 2.5vw, 2rem); }
.test-grid--questionnaires { margin-top:0; }
.test-card--cta { background:linear-gradient(135deg, var(--teal-500, #36ABA7) 0%, #2b9491 100%); border-color:var(--teal-500, #36ABA7); align-items:center; }
.test-card--cta .test-card__icon { flex:0 0 2.8rem; width:2.8rem; height:2.8rem; min-width:2.8rem; min-height:2.8rem; aspect-ratio:1; align-self:center; border-radius:50%; color:var(--teal-500, #36ABA7); background:#fff; }
.test-card--cta h2 { color:#fff; }
.test-card--cta p { color:rgba(255,255,255,.88); max-width:none; }
.test-card-cta__btn { margin-left:auto; flex:0 0 auto; white-space:nowrap; }
@media (max-width: 639px) {
  .test-card--cta { align-items:flex-start; flex-wrap:wrap; }
  .test-card-cta__btn { width:100%; margin:0.75rem 0 0; padding-left:3.8rem; }
}
.test-note--visit { background:var(--teal-100); border-color:var(--teal-300); }
.test-note--visit i { color:var(--color-teal); }
.test-note { display:grid; grid-template-columns:auto 1fr; gap:1.25rem; align-items:center; margin-top:1.1rem; padding:1.4rem 1.55rem; background:var(--blue-100); border:1px solid var(--border-default); border-radius:var(--radius-card); }
.test-note[hidden] { display:none; }
.test-note i { color:var(--color-navy); font-size:2.2rem; }
.test-note h2 { margin:0 0 .2rem; color:var(--color-navy); font-size:1.16rem; }
.test-note p { margin:0; color:var(--color-muted); font-size:.9rem; }
.pricing-columns { display:grid; grid-template-columns:1fr 1.12fr 1fr; gap:0; border-top:1px solid var(--color-line); border-bottom:1px solid var(--color-line); }
.price-group { padding:1.8rem 1.55rem; }
.price-group + .price-group { border-left:1px solid var(--color-line); }
.price-group h2 { display:flex; align-items:center; gap:.7rem; margin:0 0 1.35rem; color:var(--color-navy); font-size:1.25rem; }
.price-group h2 i { color:var(--color-teal); font-size:1.55rem; }
.price-row { display:grid; grid-template-columns:1fr auto; column-gap:.75rem; padding:1rem 0; border-top:1px solid var(--color-line); }
.price-row h3 { margin:0 0 .15rem; color:var(--color-navy); font-size:1.08rem; font-weight:600; line-height:1.3; }
.price-row small { color:var(--color-muted); font-size:.92rem; }
.price-row__cost { display:flex; flex-direction:column; align-items:flex-end; justify-content:center; gap:.2rem; align-self:center; text-align:right; }
.price-row strong { color:var(--color-navy); font-size:1.05rem; white-space:nowrap; }
.price-row__phone { color:var(--color-teal); font-size:1.05rem; font-weight:600; line-height:1.3; text-decoration:none; white-space:nowrap; }
.price-row__phone:hover { color:var(--color-navy); }
.price-group--highlight { background:var(--teal-100); }
.price-group__description { margin:-.8rem 0 1.25rem; color:var(--color-muted); font-size:.85rem; }
.price-info { display:flex; gap:.85rem; align-items:flex-start; margin-top:1.25rem; color:var(--color-muted); font-size:.9rem; line-height:1.55; }
.price-info i { flex:0 0 auto; display:inline-flex; align-items:center; justify-content:center; width:1.35rem; height:1.35rem; margin-top:0; color:var(--color-teal); font-size:1.35rem; line-height:1; }
.price-info p { margin:0; flex:1; min-width:0; padding-top:.12rem; }
.inner-page:has(.pricing-columns) { padding-bottom:clamp(2rem, 4vw, 3rem); }
.faq-page__top { display:grid; grid-template-columns:minmax(0, 1fr) 340px; gap:3.5rem; align-items:start; }
.faq-page h1 { max-width:11ch; }
.faq-page__intro { margin:1.2rem 0 2rem; max-width:56ch; color:var(--color-muted); font-size:1.05rem; }
.faq-page__groups { display:grid; gap:1rem; }
.faq-group { border:1px solid var(--color-line); border-radius:var(--radius-card); overflow:hidden; }
.faq-group h2 { display:flex; gap:.75rem; align-items:center; margin:0; padding:1.05rem 1.2rem; color:var(--color-navy); font-size:1.14rem; background:#fff; }
.faq-group h2 i { color:var(--color-teal); font-size:1.45rem; }
.faq-group .faq-list { gap:0; }
.faq-group .faq-item { margin:0; border:0; border-top:1px solid var(--color-line); border-radius:0; }
.faq-group .faq-item button { padding:1rem 1.2rem; }
.faq-group .faq-panel p { padding:0 1.2rem 1rem; }
.faq-help { padding:1.7rem; background:var(--gradient-faq); border-radius:var(--radius-card); }
@media (min-width: 901px) {
  .faq-help {
    position: sticky;
    top: calc(var(--nav-h) + 1.5rem);
    align-self: start;
  }
}
.faq-help__icon { display:inline-flex; align-items:center; justify-content:center; width:3.4rem; height:3.4rem; margin-bottom:1.2rem; border:1px solid var(--teal-300); border-radius:50%; color:var(--color-teal); font-size:1.6rem; }
.faq-help h2 { margin:0 0 .55rem; color:var(--color-navy); font-size:1.35rem; }
.faq-help p { margin:0 0 1.35rem; color:var(--color-muted); font-size:.92rem; }
.faq-help__contact { display:grid; gap:.85rem; padding:1.2rem 0; border-top:1px solid var(--teal-300); }
.faq-help__contact a { color:var(--color-navy); font-weight:700; text-decoration:none; }
.faq-help__test { margin-top:1rem; padding-top:1.25rem; border-top:1px solid var(--teal-300); }
.faq-help__test h3 { margin:0 0 .45rem; color:var(--color-navy); font-size:1.05rem; }
.faq-help__test .btn { margin-top:.35rem; }
@media (max-width: 900px) {
  .inner-page__hero--media,
  .faq-page__top,
  .psychiatry-story {
    grid-template-columns: 1fr;
  }

  .inner-page h1 {
    max-width: 16ch;
  }

  .inner-page__media {
    order: -1;
    min-height: 14rem;
  }

  .inner-page__media img {
    min-height: 14rem;
  }

  .pricing-columns {
    grid-template-columns: 1fr;
  }

  .price-group + .price-group {
    border-left: 0;
    border-top: 1px solid var(--color-line);
  }

  .psychiatry-story--reverse .psychiatry-story__copy {
    order: 2;
  }

  .psychiatry-story--reverse {
    margin-left: 0;
    margin-right: 0;
    padding-left: 0;
    padding-right: 0;
    background: linear-gradient(180deg, var(--teal-100) 0%, #fff 55%);
  }
}

@media (min-width: 640px) {
  .test-grid {
    grid-template-columns: 1fr 1fr;
  }

  .approach-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 900px) {
  .approach-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .inner-page h1 {
    max-width: 12ch;
  }
}

@media (max-width: 720px) {
  .inner-page {
    padding: 2.4rem 0;
  }

  .diagnoza-tests.inner-page {
    padding-top: 0.85rem;
    padding-bottom: 2.4rem;
  }

  .inner-page__intro,
  .test-grid {
    grid-template-columns: 1fr;
  }

  .inner-page__intro {
    gap: 0.85rem;
  }

  .inner-page__intro .icon-circle {
    display: none;
  }

  .test-card {
    padding: 1.35rem;
  }

  .test-card--compact {
    align-items: flex-start;
    flex-wrap: wrap;
  }

  .test-card__lock {
    display: none;
  }

  .test-card__visit {
    width: 100%;
    margin-left: 0;
    margin-top: 0.65rem;
    padding-left: 3.8rem;
  }

  .test-grid--questionnaires .test-card--compact:not(.test-card--cta) {
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 1.35rem 1.15rem;
  }

  .test-grid--questionnaires .test-card--compact:not(.test-card--cta) .test-card__icon {
    width: 4rem;
    height: 4rem;
    margin: 0 0 0.85rem;
    font-size: 2rem;
  }

  .test-grid--questionnaires .test-card--compact:not(.test-card--cta) .test-card__visit {
    width: auto;
    margin-top: 0.75rem;
    padding-left: 0;
    justify-content: center;
  }

  .test-note {
    grid-template-columns: 1fr;
    text-align: left;
  }

  .test-note i {
    font-size: 1.75rem;
  }

  .inner-cta {
    flex-direction: column;
    align-items: stretch;
    padding: 1.5rem;
  }

  .inner-cta__copy i {
    font-size: 2rem;
  }

  .inner-cta .btn {
    width: 100%;
  }

  .faq-page__top {
    gap: 2rem;
  }

  .price-row {
    grid-template-columns: 1fr;
    gap: 0.35rem;
  }

  .price-row__cost {
    flex-direction: row;
    align-items: center;
    width: 100%;
    justify-content: space-between;
    text-align: left;
    gap: 0.75rem;
  }

  .price-row__phone {
    font-size: 1.08rem;
  }
}

@media (max-width: 767px) {
  body.is-inner-page .inner-page > .site-decor--placement-corner {
    --decor-corner-top: -1.15rem;
  }

  .cennik-hero-phone {
    width: 100%;
  }

  .psy-block {
    --decor-divider-top: -0.9rem;
    --decor-heading-top: 0.2rem;
    --decor-low-bottom: 0.55rem;
  }

  .psy-block:has(> .site-decor--placement-heading) {
    padding-top: 4rem;
  }

  .psy-block > .site-decor--placement-corner {
    --decor-corner-top: -1rem;
  }

  .psychiatry-story {
    --decor-corner-top: -0.75rem;
    --decor-divider-top: -0.85rem;
  }

  .diagnoza-intro {
    --decor-low-bottom: 0.8rem;
    padding-bottom: 4rem;
  }

  .diagnoza-tests.inner-page {
    --decor-divider-top: -0.75rem;
    padding-top: 3rem;
  }

  .price-group.has-site-decor {
    --decor-divider-top: -0.8rem;
    --decor-low-bottom: 0.75rem;
  }

  .faq-group--decorated {
    --decor-heading-top: 0.35rem;
    padding-top: 2.7rem;
  }

  .faq-help.has-site-decor {
    --decor-low-bottom: 0.8rem;
    padding-bottom: 5rem;
  }
}
