/* Services and Coaching pages only (loaded with the "Leistungen" and "Coaching für Einzelpersonen" templates). The
   reading pages (DECISIONS #64, #65): her prose at reading width, few boxes. */

.prose { max-width: var(--container-text); }
.prose > :last-child { margin-bottom: 0; }

/* Running text in her voice: a little larger than body text, comfortable line length. */
.story-text { font-size: var(--text-lg); }

/* ── How I work: prose, with the pull quote on the page's one mint surface between the two parts ── */
.method .prose + .pullquote,
.method .pullquote + .prose { margin-top: var(--space-6); }
.method .prose + .prose { margin-top: var(--space-5); }
.pullquote { max-width: var(--container-text); margin: 0; padding: var(--space-6); border-radius: var(--radius-lg); background: var(--color-quote); font-family: var(--font-heading); font-size: var(--text-2xl); line-height: var(--wp--custom--line-height--heading); }

/* ── Goals: a jump menu, then one story per goal. Space separates the stories (no divider lines); a story with a
   photo sits beside it from 48rem, alternating sides. ── */
.goals__nav { margin: 0 0 var(--space-7); }
.goals__nav ul { display: flex; flex-wrap: wrap; gap: var(--space-2) var(--space-5); margin: 0; padding: 0; list-style: none; }
.goals__nav a { font-weight: 500; }
.goals__list { display: grid; gap: var(--space-8); }
.story { scroll-margin-top: var(--space-7); }
.story__title { margin-bottom: var(--space-4); font-size: var(--text-2xl); }
.story__blocks { max-width: var(--container-text); margin: var(--space-4) 0 0; color: var(--color-text-muted); font-size: var(--text-sm); }
.story__blocks span { margin-right: var(--space-1); }
.story__media { overflow: hidden; aspect-ratio: 4 / 3; margin-bottom: var(--space-5); border-radius: var(--radius-lg); --media-radius: var(--radius-lg); }
.story__media .media,
.story__media img { width: 100%; height: 100%; object-fit: cover; }

@media (min-width: 48rem) {
  .story--image { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 3fr); gap: var(--space-7); align-items: center; }
  .story--image .story__media { margin-bottom: 0; }
  .story--flip { grid-template-columns: minmax(0, 3fr) minmax(0, 2fr); }
  .story--flip .story__media { order: 2; }
}

/* ── Building blocks: short prose, a name and two or three sentences each, two columns from 48rem ── */
.offer__intro { margin-bottom: var(--space-6); }
.offer__parts { display: grid; gap: var(--space-6) var(--space-7); }
.offer__part { scroll-margin-top: var(--space-7); }
.offer__badge { margin: 0 0 var(--space-2); color: var(--color-text-muted); font-size: var(--text-xs); font-weight: 500; letter-spacing: 0.08em; text-transform: uppercase; }
.offer__title { margin-bottom: var(--space-2); font-size: var(--text-xl); }
.offer__text { margin: 0; }
@media (min-width: 48rem) {
  .offer__parts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* ── Coaching: the practical frame, a short list of facts at reading width ── */
.frame__list { display: grid; gap: var(--space-4); max-width: var(--container-text); margin: 0; }
.frame__item { display: grid; gap: var(--space-1); }
.frame__item dt { font-family: var(--font-heading); font-size: var(--text-xl); }
.frame__item dd { margin: 0; color: var(--color-text-muted); }
@media (min-width: 36rem) {
  .frame__item { grid-template-columns: minmax(0, 1fr) minmax(0, 3fr); gap: var(--space-5); align-items: baseline; }
}
