.page-hero { padding-top: clamp(2rem, 5vw, 3.5rem); padding-bottom: var(--space-lg); }
.page-hero h1 { font-size: var(--fs-display-lg); margin-top: var(--space-md); max-width: 22ch; }
.page-hero p { font-size: var(--fs-body-lg); color: var(--color-ink-soft); margin-top: var(--space-md); max-width: 56ch; }

/* ---------- Services listing ---------- */
.lead-strip { display: block; }
.lead-strip__row { display: flex; align-items: center; justify-content: space-between; gap: var(--space-lg); margin-top: var(--space-sm); }
.lead-strip__row h2 { font-size: 1.6rem; }
.lead-strip__row p { margin-top: 0.4rem; max-width: 52ch; }
.lead-strip__price { text-align: right; display: flex; flex-direction: column; align-items: flex-end; gap: 0.6rem; flex-shrink: 0; }
@media (max-width: 720px) {
  .lead-strip__row { flex-direction: column; align-items: flex-start; }
  .lead-strip__price { align-items: flex-start; }
}

.disciplines-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--space-md); }
.discipline-card h3 { font-size: 1.05rem; margin-top: var(--space-md); }
.discipline-card p { margin-top: 0.4rem; font-size: 0.9rem; }
@media (max-width: 860px) { .disciplines-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px) { .disciplines-grid { grid-template-columns: 1fr; } }

/* ---------- Service detail ---------- */
.service-detail__hero { display: grid; grid-template-columns: 1.3fr 0.9fr; gap: var(--space-2xl); align-items: start; }
.service-detail__breadcrumb { display: flex; gap: 0.4rem; align-items: center; font-size: 0.85rem; color: var(--color-ink-faint); margin-bottom: var(--space-md); }
.service-detail__breadcrumb a { color: var(--color-ink-soft); font-weight: 600; }
.service-detail__meta { display: flex; gap: 0.75rem; margin-top: var(--space-md); flex-wrap: wrap; }
.service-detail h1 { font-size: var(--fs-display-lg); margin-top: var(--space-md); max-width: 20ch; }
.service-detail__tagline { font-size: var(--fs-body-lg); color: var(--color-ink-soft); margin-top: var(--space-sm); }
.service-detail__long { margin-top: var(--space-lg); font-size: 1.02rem; line-height: 1.75; color: var(--color-ink-soft); max-width: 58ch; }
.service-detail__includes { margin-top: var(--space-lg); display: grid; gap: 0.7rem; }
.service-detail__includes li { display: flex; gap: 0.6rem; align-items: flex-start; }
.service-detail__actions { display: flex; gap: 1rem; margin-top: var(--space-xl); flex-wrap: wrap; }

.service-detail__card {
  background: var(--color-ink);
  color: #fff;
  border-radius: var(--radius-lg);
  padding: var(--space-xl);
  position: sticky;
  top: 6.5rem;
}
.service-detail__card .price-tag .num, .service-detail__card .price-tag .cur { color: #fff; }
.service-detail__card .price-tag .num { font-size: 2.6rem; }
.service-detail__card .hint { color: rgba(255,255,255,0.55); margin-top: 0.5rem; }
.service-detail__card dl { margin-top: var(--space-lg); display: grid; gap: 0.8rem; }
.service-detail__card dl > div { display: flex; justify-content: space-between; font-size: 0.9rem; border-bottom: 1px solid rgba(255,255,255,0.12); padding-bottom: 0.6rem; }
.service-detail__card dl dt { color: rgba(255,255,255,0.55); }
.service-detail__card .btn { margin-top: var(--space-lg); }

.related-services { margin-top: var(--space-3xl); }

@media (max-width: 960px) {
  .service-detail__hero { grid-template-columns: 1fr; }
  .service-detail__card { position: static; }
}

/* ---------- Doctors / About / Contact ---------- */
.doctors-page-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--space-md); }
@media (max-width: 860px) { .doctors-page-grid { grid-template-columns: 1fr; max-width: 420px; margin-inline: auto; } }

.about-story { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-2xl); align-items: center; }
.about-story__visual { aspect-ratio: 4/5; border-radius: var(--radius-lg); background: linear-gradient(150deg, var(--color-accent-light), var(--color-paper-dim)); display: flex; align-items: center; justify-content: center; }
@media (max-width: 860px) { .about-story { grid-template-columns: 1fr; } }

.values-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--space-md); margin-top: var(--space-xl); }
@media (max-width: 860px) { .values-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px) { .values-grid { grid-template-columns: 1fr; } }

.contact-page-grid { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-2xl); }
@media (max-width: 900px) { .contact-page-grid { grid-template-columns: 1fr; } }
.contact-info-card { background: var(--color-surface); border: 1px solid var(--color-line); border-radius: var(--radius-lg); padding: var(--space-xl); }
.contact-info-card .contact-details { margin-top: var(--space-lg); }

/* ---------- 404 ---------- */
.error-page { min-height: 60vh; display: flex; align-items: center; justify-content: center; text-align: center; padding-block: var(--space-2xl); }
.error-page h1 { font-size: var(--fs-display-xl); }
