/* ================================================================
   MUTTER/KIND LANDINGPAGE
   Nach Suby × Hormozi × Priestley:
   Situations-Einstieg · Scorecard als primärer CTA · Katja mit
   Reason Why · Problem-Lösungs-Stack · Ehrliche Verknappung.
   Scope: body.page-mutter-kind
================================================================ */

/* Hero — Full-Bleed Photo · Editorial Overlay */

.mk-hero {
  position: relative;
  padding: clamp(28px, 4vw, 56px) 22px clamp(32px, 4vw, 56px);
  min-height: 92vh;
  background-color: #f5f3ee;
  background-repeat: no-repeat;
  background-position: center right;
  background-size: cover;
  overflow: hidden;
  isolation: isolate;
}

.mk-hero-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(245, 243, 238, 0.92) 0%, rgba(245, 243, 238, 0.62) 32%, rgba(245, 243, 238, 0.05) 55%, rgba(245, 243, 238, 0) 70%);
}

.mk-hero-inner {
  position: relative;
  z-index: 2;
  width: min(1240px, 100%);
  margin: 0 auto;
  display: grid;
  grid-template-rows: auto 1fr auto;
  gap: clamp(32px, 4vw, 56px);
  min-height: calc(92vh - clamp(60px, 8vw, 112px));
}

/* Handschrift-Notiz oben rechts */





/* Zwei-Spalten-Layout */

.mk-hero-main {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.85fr);
  gap: clamp(28px, 5vw, 72px);
  align-items: center;
  margin-top: clamp(48px, 6vw, 76px);
}

.mk-hero-copy { max-width: 620px; }

/* Eyebrow */

.mk-hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 8px 16px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.78);
  backdrop-filter: blur(4px);
  border: 1px solid rgba(210, 10, 91, 0.28);
  font-family: "DM Sans", sans-serif;
  font-size: 10.5px;
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #a80846;
  margin-bottom: 26px;
}

.mk-hero-eyebrow .dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #d20a5b;
  box-shadow: 0 0 0 4px rgba(210, 10, 91, 0.16);
}

/* Headline */

.mk-hero h1 {
  margin: 0;
  font-family: "Playfair Display", serif;
  font-weight: 400;
  font-size: clamp(32px, 3.6vw, 54px);
  line-height: 1.08;
  letter-spacing: -0.028em;
  color: #18221f;
  text-wrap: balance;
}

.mk-hero h1 em {
  font-style: italic;
  font-weight: 400;
  color: #a80846;
}

/* Lead */

.mk-hero .mk-hero-lead {
  max-width: 520px;
  margin: 24px 0 0;
  font-family: "Manrope", sans-serif;
  font-size: 15.5px;
  line-height: 1.65;
  color: #2a3733;
}

/* CTAs */

.mk-hero-ctas {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 30px;
}

.mk-cta-primary {
  min-height: 58px;
  padding: 6px 12px 6px 24px;
  display: inline-flex;
  align-items: center;
  gap: 14px;
  border-radius: 999px;
  background: #18221f;
  color: #fff;
  text-decoration: none;
  font-family: "DM Sans", sans-serif;
  font-size: 13px;
  font-weight: 600;
  box-shadow: 0 14px 30px rgba(24, 34, 31, 0.24);
  transition: transform 0.25s ease, background 0.25s ease, box-shadow 0.25s ease;
}

.mk-cta-primary:hover {
  transform: translateY(-3px);
  background: #253430;
  box-shadow: 0 20px 40px rgba(24, 34, 31, 0.28);
}

.mk-cta-primary .arr {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #d20a5b;
  color: #18221f;
  transition: transform 0.25s ease;
}

.mk-cta-primary:hover .arr { transform: rotate(8deg); }

.mk-cta-primary > svg,
.mk-cta-primary > i svg { width: 16px; height: 16px; }

.mk-cta-secondary {
  min-height: 58px;
  padding: 0 24px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  border-radius: 999px;
  border: 1px solid rgba(24, 34, 31, 0.14);
  background: rgba(255, 255, 255, 0.9);
  color: #18221f;
  text-decoration: none;
  font-family: "DM Sans", sans-serif;
  font-size: 13px;
  font-weight: 600;
  transition: background 0.25s ease, transform 0.25s ease;
}

.mk-cta-secondary:hover { background: #fff; transform: translateY(-3px); }

.mk-cta-secondary svg { width: 15px; height: 15px; color: #a80846; }

/* Feature-Row unter den CTAs */

.mk-hero-features {
  list-style: none;
  margin: 30px 0 0;
  padding: 16px 22px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
  background: rgba(255, 255, 255, 0.92);
  backdrop-filter: blur(6px);
  border: 1px solid rgba(24, 34, 31, 0.06);
  border-radius: 18px;
  box-shadow: 0 18px 40px rgba(20, 34, 30, 0.1);
}

.mk-hero-features li {
  display: flex;
  align-items: center;
  gap: 10px;
  font-family: "DM Sans", sans-serif;
  font-size: 12px;
  line-height: 1.35;
  color: #2a3733;
}

.mk-hero-features .ic {
  flex: none;
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: rgba(139, 206, 194, 0.28);
  color: #a80846;
}

.mk-hero-features .ic svg { width: 16px; height: 16px; }

/* Rechte Spalte: Öffnungs-Cards + Kreis-Badge */

.mk-hero-aside {
  position: relative;
  align-self: center;
  justify-self: end;
  width: min(420px, 100%);
}

.mk-hero-openings {
  padding: 22px;
  border-radius: 26px;
  background: rgba(255, 255, 255, 0.92);
  backdrop-filter: blur(6px);
  border: 1px solid rgba(24, 34, 31, 0.06);
  box-shadow: 0 30px 70px rgba(20, 34, 30, 0.16);
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.mk-hero-openings-title {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 6px 12px;
  border-radius: 999px;
  align-self: flex-start;
  background: rgba(139, 206, 194, 0.2);
  font-family: "DM Sans", sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #a80846;
  margin-bottom: 2px;
}

.mk-hero-openings-title .dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #d20a5b;
  box-shadow: 0 0 0 3px rgba(210, 10, 91, 0.2);
}

.mk-hero-loc {
  display: grid;
  grid-template-columns: 62px 1fr 40px;
  align-items: center;
  gap: 14px;
  padding: 10px 12px 10px 10px;
  border-radius: 18px;
  background: rgba(245, 243, 238, 0.7);
  text-decoration: none;
  color: inherit;
  transition: background 0.25s ease, transform 0.25s ease;
}

.mk-hero-loc:hover {
  background: rgba(245, 243, 238, 1);
  transform: translateY(-2px);
}

.mk-hero-loc-img {
  width: 62px;
  height: 62px;
  border-radius: 14px;
  overflow: hidden;
  background: #dde3df;
  display: block;
}

.mk-hero-loc-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.mk-hero-loc-txt {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.mk-hero-loc-txt strong {
  font-family: "DM Sans", sans-serif;
  font-size: 15px;
  font-weight: 700;
  color: #18221f;
}

.mk-hero-loc-txt .mk-hero-loc-sub {
  font-family: "DM Sans", sans-serif;
  font-size: 11px;
  color: #6b7671;
}

.mk-hero-loc-txt b {
  font-family: "Playfair Display", serif;
  font-weight: 500;
  font-style: italic;
  font-size: 17px;
  color: #18221f;
  letter-spacing: -0.01em;
}

.mk-hero-loc-arr {
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: rgba(139, 206, 194, 0.35);
  color: #18221f;
  transition: background 0.25s ease, transform 0.25s ease;
}

.mk-hero-loc:hover .mk-hero-loc-arr {
  background: #d20a5b;
  transform: rotate(-8deg);
}

.mk-hero-loc-arr svg { width: 16px; height: 16px; }

/* Mint-Kreis-Badge */

.mk-hero-badge {
  position: absolute;
  bottom: -290px;
  right: -30px;
  width: 168px;
  height: 168px;
  border-radius: 50%;
  background: radial-gradient(circle at 30% 30%, #f4bcd0 0%, #d20a5b 100%);
  display: grid;
  place-items: center;
  text-align: center;
  font-family: "Caveat", "Kalam", cursive;
  font-size: 20px;
  line-height: 1.15;
  color: #18221f;
  box-shadow: 0 22px 45px rgba(29, 62, 55, 0.22);
  padding: 12px;
  transform: rotate(-3deg);
}

.mk-hero-badge svg {
  position: absolute;
  top: 20px;
  left: 22px;
  width: 22px;
  height: 22px;
  color: #18221f;
  opacity: 0.9;
}

.mk-hero-badge-line {
  position: absolute;
  bottom: 42px;
  left: 50%;
  transform: translateX(-50%);
  width: 40px;
  height: 1px;
  background: #18221f;
  opacity: 0.6;
}

/* Untere Katja-Bar */















/* Scorecard-Wizard (Signal statt Verkauf) */

.mk-scorecard-section {
  padding: clamp(50px, 5vw, 80px) 20px;
  background: #ebeae1;
}

.mk-scorecard {
  width: min(680px, 100%);
  margin: 0 auto;
  padding: 32px 30px 28px;
  border-radius: 26px;
  background: #fffefb;
  border: 1px solid rgba(24, 34, 31, 0.09);
  box-shadow: 0 20px 50px rgba(28, 40, 35, 0.05);
}

.mk-sc-progress {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 24px;
  gap: 20px;
}

.mk-sc-progress-label {
  font-family: "DM Sans", sans-serif;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #a80846;
}

.mk-sc-progress-count {
  font-family: "Playfair Display", serif;
  font-size: 14px;
  color: #18221f;
  font-variant-numeric: tabular-nums;
}

.mk-sc-progress-bar {
  height: 4px;
  background: #e6e4dd;
  border-radius: 100px;
  overflow: hidden;
  margin-bottom: 28px;
}

.mk-sc-progress-fill {
  height: 100%;
  width: 20%;
  background: linear-gradient(90deg, #d20a5b, #a80846);
  border-radius: 100px;
  transition: width 0.4s cubic-bezier(.2,.7,.2,1);
}

.mk-sc-question {
  display: none;
}

.mk-sc-question.is-active {
  display: block;
  animation: mkFadeIn 0.35s ease;
}

.mk-sc-question h3 {
  margin: 0 0 8px;
  font-family: "Playfair Display", serif;
  font-weight: 400;
  font-size: clamp(22px, 2.1vw, 28px);
  line-height: 1.15;
  letter-spacing: -0.02em;
  color: #18221f;
}

.mk-sc-question p {
  margin: 0 0 22px;
  font-family: "Manrope", sans-serif;
  font-size: 13.5px;
  line-height: 1.55;
  color: #68736f;
}

.mk-sc-options {
  display: grid;
  gap: 8px;
  margin-bottom: 24px;
}

.mk-sc-option {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 16px;
  border-radius: 14px;
  border: 1px solid rgba(24, 34, 31, 0.09);
  background: #f5f3ee;
  cursor: pointer;
  transition: background 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
  font-family: "Manrope", sans-serif;
  font-size: 14px;
  color: #18221f;
  text-align: left;
  width: 100%;
}

.mk-sc-option:hover {
  background: #fffefb;
  border-color: rgba(210, 10, 91, 0.32);
  transform: translateY(-1px);
}

.mk-sc-option.is-selected {
  background: rgba(137, 204, 192, 0.12);
  border-color: #a80846;
}

.mk-sc-option-check {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  border: 1.5px solid rgba(24, 34, 31, 0.24);
  flex-shrink: 0;
  position: relative;
}

.mk-sc-option.is-selected .mk-sc-option-check {
  background: #a80846;
  border-color: #a80846;
}

.mk-sc-option.is-selected .mk-sc-option-check::after {
  content: "";
  position: absolute;
  left: 6px;
  top: 3px;
  width: 5px;
  height: 9px;
  border: solid #fff;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}

.mk-sc-nav {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
}

.mk-sc-back {
  padding: 10px 16px;
  border-radius: 999px;
  background: transparent;
  border: 1px solid rgba(24, 34, 31, 0.14);
  color: #68736f;
  font-family: "DM Sans", sans-serif;
  font-size: 12px;
  font-weight: 500;
  cursor: pointer;
  transition: background 0.2s ease, color 0.2s ease;
}

.mk-sc-back:hover { background: #f5f3ee; color: #18221f; }

.mk-sc-back:disabled { opacity: 0.35; cursor: not-allowed; }

.mk-sc-next {
  padding: 12px 22px;
  border-radius: 999px;
  background: #18221f;
  color: #fff;
  border: none;
  font-family: "DM Sans", sans-serif;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.2s ease, transform 0.2s ease;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.mk-sc-next:hover:not(:disabled) { background: #253430; transform: translateY(-1px); }

.mk-sc-next:disabled { opacity: 0.4; cursor: not-allowed; }

.mk-sc-next svg { width: 14px; height: 14px; }

/* Scorecard result state */

.mk-sc-result { display: none; }

.mk-sc-result.is-active { display: block; animation: mkFadeIn 0.4s ease; }

.mk-sc-result-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 12px;
  border-radius: 999px;
  background: rgba(139, 206, 194, 0.14);
  color: #a80846;
  font-family: "DM Sans", sans-serif;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  margin-bottom: 18px;
}

.mk-sc-result-badge svg { width: 12px; height: 12px; }

.mk-sc-result h3 {
  margin: 0 0 12px;
  font-family: "Playfair Display", serif;
  font-weight: 400;
  font-size: clamp(24px, 2.4vw, 32px);
  line-height: 1.1;
  color: #18221f;
}

.mk-sc-result h3 em { font-style: italic; color: #a80846; }

.mk-sc-result p {
  margin: 0 0 24px;
  font-family: "Manrope", sans-serif;
  font-size: 14px;
  line-height: 1.65;
  color: #55605c;
}

.mk-sc-result-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

/* Katja Statement */

























/* Problem-Lösungs-Stack (Hormozi) */





.mk-section-head {
  max-width: 720px;
  margin: 0 auto clamp(36px, 4vw, 52px);
  text-align: center;
}

.mk-section-head span {
  display: block;
  margin-bottom: 12px;
  font-family: "DM Sans", sans-serif;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #a80846;
}

.mk-section-head h2 {
  margin: 0;
  font-family: "Playfair Display", serif;
  font-weight: 400;
  font-size: clamp(34px, 3.4vw, 52px);
  line-height: 0.98;
  letter-spacing: -0.04em;
  color: #18221f;
  text-wrap: balance;
}

.mk-section-head h2 em { font-style: italic; color: #a80846; }

.mk-section-head p {
  max-width: 560px;
  margin: 16px auto 0;
  font-family: "Manrope", sans-serif;
  font-size: 14px;
  line-height: 1.6;
  color: #68736f;
}















/* Preisvergleich */





















/* Zusagen */

.mk-zusagen {
  padding: clamp(56px, 5vw, 80px) 20px;
  background: #ebeae1;
}

.mk-zusagen-inner { width: min(920px, 100%); margin: 0 auto; }

.mk-zusagen-list {
  margin-top: 32px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.mk-zusage {
  padding: 22px 24px;
  border-radius: 18px;
  background: #fffefb;
  border: 1px solid rgba(24, 34, 31, 0.08);
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 16px;
}

.mk-zusage-num {
  font-family: "Playfair Display", serif;
  font-style: italic;
  font-size: 22px;
  color: #c96940;
  font-variant-numeric: oldstyle-nums;
  line-height: 1;
  margin-top: 2px;
}

.mk-zusage-body h4 {
  margin: 0 0 8px;
  font-family: "DM Sans", sans-serif;
  font-size: 14px;
  font-weight: 600;
  color: #18221f;
  letter-spacing: 0.01em;
}

.mk-zusage-body p {
  margin: 0;
  font-family: "Manrope", sans-serif;
  font-size: 13.5px;
  line-height: 1.6;
  color: #55605c;
}

/* Hebammen B2B */





















/* FAQ nutzt city-faq__* mit eigenen Vars */

.mk-faq {
  --faq-bg: #ebeae1;
  --faq-surface: #fffefb;
  --faq-surface-soft: #eeeee7;
  --faq-dark: #19231f;
  --faq-text: #66706c;
  --faq-muted: #929a96;
  --faq-mint: #d20a5b;
  --faq-mint-dark: #4b9186;
  --faq-mint-soft: #e2f0ec;
  --faq-line: rgba(25, 35, 31, 0.09);
  padding: clamp(60px, 6vw, 90px) 20px;
  background: #ebeae1;
}

.mk-faq-inner { width: min(820px, 100%); margin: 0 auto; }

.mk-faq .city-faq__list { margin-top: 32px; }

/* Disqualifikation */











/* ================================================================
   MUTTER/KIND · v2 · Problem→Lösung, Stillberatung, Eltern&Kind,
   Vaterschaftstest, Wizard-Fixes
================================================================ */

/* Scorecard-Anchor unter Sticky-Header ausrichten */
.mk-scorecard-section { scroll-margin-top: 80px; }

/* "Nochmal ausfüllen" im Result */
.mk-sc-restart {
  margin-top: 22px;
  padding: 8px 14px;
  background: transparent;
  border: 1px solid rgba(24, 34, 31, 0.14);
  border-radius: 999px;
  font-family: "DM Sans", sans-serif;
  font-size: 11px;
  font-weight: 500;
  color: #68736f;
  cursor: pointer;
  transition: background 0.2s ease, color 0.2s ease;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.mk-sc-restart:hover { background: #f5f3ee; color: #18221f; }

.mk-sc-restart svg { width: 12px; height: 12px; }

/* ---------- 3 · Problem-Section — Redesign „Sie kennen diese Situationen" ---------- */

.mom-problems {
  --mp-green: #a80846;
  --mp-green-2: #a80846;
  --mp-mint: #e8f3ee;
  --mp-mint-2: #fce4ee;
  --mp-orange: #cf7857;
  --mp-orange-soft: #faeee8;
  --mp-text: #16241f;
  --mp-muted: #737d78;
  --mp-line: rgba(22, 36, 31, 0.09);

  position: relative;
  width: 100%;
  padding: clamp(70px, 8vw, 135px) 0 clamp(60px, 7vw, 115px);
  background: #f5f3ee;
  color: var(--mp-text);
  font-family: "DM Sans", sans-serif;
  overflow: hidden;
}

.mom-problems *,
.mom-problems *::before,
.mom-problems *::after { box-sizing: border-box; }

.mom-problems__container {
  width: min(1400px, calc(100% - 40px));
  margin: 0 auto;
}

/* Header */

.mom-problems__header { margin: 0 auto 72px; max-width: 900px; }

.mom-problems__title {
  max-width: 850px;
  margin: 0;
  font-family: "Playfair Display", serif;
  font-size: clamp(46px, 5.4vw, 84px);
  font-weight: 400;
  line-height: 0.98;
  letter-spacing: -0.045em;
  color: var(--mp-text);
  text-wrap: balance;
}

.mom-problems__title span {
  display: block;
  color: var(--mp-orange);
  font-style: italic;
  font-weight: 400;
}

.mom-problems__intro {
  margin-top: 28px;
  max-width: 620px;
}

.mom-problems__intro p {
  margin: 0;
  color: var(--mp-muted);
  font-family: "Manrope", sans-serif;
  font-size: 15.5px;
  line-height: 1.7;
}

/* Grid */

.mom-problems__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}

/* Card */

.mom-problem-card {
  min-height: 325px;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  overflow: hidden;
  padding: 27px;
  border: 1px solid var(--mp-line);
  border-radius: 25px;
  background: #fff;
  box-shadow: 0 12px 35px rgba(28, 48, 40, 0.025);
  transition:
    transform 0.45s cubic-bezier(0.2, 0.8, 0.2, 1),
    box-shadow 0.45s ease,
    border-color 0.45s ease,
    background 0.45s ease;
}

.mom-problem-card::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: 0;
  background: radial-gradient(circle at 20% 0%, rgba(28, 96, 75, 0.07), transparent 42%);
  transition: opacity 0.4s ease;
}

.mom-problem-card:hover {
  transform: translateY(-7px);
  border-color: rgba(28, 96, 75, 0.15);
  background: #fff;
  box-shadow: 0 30px 70px rgba(24, 48, 39, 0.085);
}

.mom-problem-card:hover::before { opacity: 1; }

.mom-problem-card__top {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.mom-problem-card__number {
  font-family: "DM Sans", sans-serif;
  color: #a3aaa7;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.14em;
}

.mom-problem-card__icon {
  width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 15px;
}

.mom-problem-card__icon svg { width: 19px; height: 19px; }

.mom-problem-card__icon--green {
  color: var(--mp-green-2);
  background: var(--mp-mint);
}

.mom-problem-card__icon--orange {
  color: var(--mp-orange);
  background: var(--mp-orange-soft);
}

.mom-problem-card__content {
  position: relative;
  z-index: 2;
  margin-top: 55px;
}

.mom-problem-card__label {
  display: block;
  margin-bottom: 11px;
  font-family: "DM Sans", sans-serif;
  color: #8c9691;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.mom-problem-card h3 {
  max-width: 420px;
  margin: 0 0 13px;
  font-family: "Playfair Display", serif;
  font-size: clamp(24px, 2vw, 31px);
  font-weight: 400;
  line-height: 1.05;
  letter-spacing: -0.035em;
  color: var(--mp-text);
}

.mom-problem-card p {
  max-width: 420px;
  margin: 0;
  font-family: "Manrope", sans-serif;
  color: var(--mp-muted);
  font-size: 13.5px;
  line-height: 1.65;
}

/* Large first card */

.mom-problem-card--large {
  background: linear-gradient(145deg, #fdf1f6, #fdf1f6);
}

.mom-problem-card--large .mom-problem-card__line {
  position: absolute;
  width: 180px;
  height: 180px;
  right: -70px;
  top: -70px;
  border-radius: 50%;
  border: 1px solid rgba(28, 96, 75, 0.09);
  box-shadow:
    0 0 0 30px rgba(28, 96, 75, 0.025),
    0 0 0 60px rgba(28, 96, 75, 0.018);
}

/* Dark card */

.mom-problem-card--dark {
  color: #fff;
  border-color: rgba(255, 255, 255, 0.08);
  background: linear-gradient(145deg, #3a1428, #1e0a13);
  box-shadow: 0 20px 55px rgba(15, 45, 36, 0.12);
}

.mom-problem-card--dark:hover {
  border-color: rgba(255, 255, 255, 0.1);
  background: linear-gradient(145deg, #3a1428, #1e0a13);
}

.mom-problem-card--dark::before { display: none; }

.mom-problem-card--dark .mom-problem-card__number { color: rgba(255, 255, 255, 0.35); }

.mom-problem-card--dark .mom-problem-card__label { color: rgba(255, 255, 255, 0.45); }

.mom-problem-card--dark h3 { color: #fff; }

.mom-problem-card--dark p { color: rgba(255, 255, 255, 0.62); }

.mom-problem-card__icon--dark {
  color: #f0adcb;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.07);
}

.mom-problem-card__glow {
  position: absolute;
  width: 300px;
  height: 300px;
  right: -120px;
  top: -120px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(111, 201, 164, 0.16), transparent 67%);
}

.mom-problem-card__status {
  width: max-content;
  position: absolute;
  top: 30px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 6px 10px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 100px;
  color: rgba(255, 255, 255, 0.55);
  background: rgba(255, 255, 255, 0.04);
  font-family: "DM Sans", sans-serif;
  font-size: 8px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  font-weight: 600;
}

.mom-problem-card__status span {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #d20a5b;
  box-shadow: 0 0 0 4px rgba(210, 10, 91, 0.08);
}

/* Transition */

.mom-problems__transition {
  min-height: 120px;
  margin-top: 14px;
  padding: 20px 22px;
  display: grid;
  grid-template-columns: 1.2fr 0.75fr auto;
  gap: 35px;
  align-items: center;
  border: 1px solid rgba(20, 63, 51, 0.09);
  border-radius: 25px;
  background: linear-gradient(100deg, #fdf1f6, #fdf1f6);
}

.mom-problems__transition-left {
  display: flex;
  align-items: center;
  gap: 18px;
}

.mom-problems__transition-icon {
  flex: 0 0 auto;
  width: 62px;
  height: 62px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: var(--mp-green);
  background: #fff;
  box-shadow: 0 8px 25px rgba(30, 65, 51, 0.06);
}

.mom-problems__transition-icon svg { width: 23px; height: 23px; }

.mom-problems__transition-label {
  display: block;
  margin-bottom: 5px;
  font-family: "DM Sans", sans-serif;
  color: var(--mp-green-2);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.mom-problems__transition h3 {
  max-width: 560px;
  margin: 0;
  font-family: "Playfair Display", serif;
  font-size: clamp(19px, 1.6vw, 25px);
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: -0.02em;
}

.mom-problems__transition-copy {
  border-left: 1px solid rgba(20, 63, 51, 0.1);
  padding-left: 35px;
}

.mom-problems__transition-copy p {
  max-width: 330px;
  margin: 0;
  font-family: "Manrope", sans-serif;
  color: var(--mp-muted);
  font-size: 13px;
  line-height: 1.6;
}

.mom-problems__transition-btn {
  min-width: 190px;
  height: 58px;
  padding: 7px 8px 7px 22px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  border-radius: 100px;
  background: var(--mp-green);
  color: #fff;
  text-decoration: none;
  font-family: "DM Sans", sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.02em;
  transition: transform 0.3s ease, background 0.3s ease;
}

.mom-problems__transition-btn:hover {
  transform: translateY(-3px);
  background: #0d3027;
}

.mom-problems__transition-arrow {
  width: 44px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: var(--mp-green);
  background: #d20a5b;
  transition: transform 0.3s ease;
}

.mom-problems__transition-btn:hover .mom-problems__transition-arrow { transform: translateX(3px); }

.mom-problems__transition-arrow svg { width: 17px; height: 17px; }

/* Reveal animation */

.mp-reveal {
  opacity: 0;
  transform: translateY(32px);
  transition:
    opacity 0.75s cubic-bezier(0.2, 0.8, 0.2, 1),
    transform 0.75s cubic-bezier(0.2, 0.8, 0.2, 1);
}

.mp-reveal.mp-visible {
  opacity: 1;
  transform: translateY(0);
}

/* ---------- 4 · Lösung-Section (hell, spiegelbildlich zum Problem) ---------- */





















/* ---------- 7 · Stillberatung (Split mit Foto & Content) ---------- */

.mk-stillberatung {
  padding: clamp(64px, 6vw, 100px) 20px;
  background: #ebeae1;
}

.mk-stillberatung-inner {
  width: min(1150px, 100%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 0.95fr 1.05fr;
  gap: clamp(32px, 5vw, 60px);
  align-items: center;
}

.mk-stillberatung-visual {
  aspect-ratio: 4/5;
  border-radius: 26px;
  overflow: hidden;
  background:
    radial-gradient(circle at 30% 30%, rgba(139, 206, 194, 0.22), transparent 55%),
    linear-gradient(155deg, #dfeeea 0%, #f5f0e6 100%);
  position: relative;
  display: grid;
  place-items: center;
}

.mk-stillberatung-visual svg { width: 45%; height: 45%; opacity: 0.6; }

.mk-stillberatung-visual .mk-still-quote {
  position: absolute;
  left: 24px;
  right: 24px;
  bottom: 24px;
  padding: 20px 22px;
  background: rgba(255, 255, 255, 0.92);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border-radius: 16px;
  border: 1px solid rgba(24, 34, 31, 0.06);
  font-family: "Playfair Display", serif;
  font-style: italic;
  font-size: 15px;
  line-height: 1.35;
  color: #18221f;
}

.mk-stillberatung-visual .mk-still-quote small {
  display: block;
  margin-top: 8px;
  font-family: "DM Sans", sans-serif;
  font-style: normal;
  font-size: 10px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #929b97;
}



.mk-stillberatung-content h2 {
  margin: 0 0 20px;
  font-family: "Playfair Display", serif;
  font-weight: 400;
  font-size: clamp(30px, 3vw, 44px);
  line-height: 1.05;
  letter-spacing: -0.035em;
  color: #18221f;
}

.mk-stillberatung-content h2 em {
  font-style: italic;
  color: #a80846;
}

.mk-stillberatung-content p {
  margin: 0 0 20px;
  font-family: "Manrope", sans-serif;
  font-size: 14.5px;
  line-height: 1.65;
  color: #55605c;
  max-width: 48ch;
}

.mk-still-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 22px 0 28px;
}

.mk-still-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(139, 206, 194, 0.14);
  border: 1px solid rgba(210, 10, 91, 0.18);
  font-family: "DM Sans", sans-serif;
  font-size: 11px;
  font-weight: 500;
  color: #18221f;
}

.mk-still-chip svg { width: 13px; height: 13px; color: #a80846; }

/* ---------- 8 · Eltern & Kind Beratung (3-Card Grid) ---------- */

























/* ---------- 10 · Vaterschaftstest (kompakter Verweis) ---------- */

.mk-vater {
  padding: clamp(40px, 4vw, 64px) 20px;
  background: #ebeae1;
}

.mk-vater-inner {
  width: min(920px, 100%);
  margin: 0 auto;
  padding: 26px 30px;
  border-radius: 20px;
  background: #fffefb;
  border: 1px solid rgba(24, 34, 31, 0.09);
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 22px;
}

.mk-vater-icon {
  width: 52px;
  height: 52px;
  border-radius: 15px;
  background: rgba(24, 34, 31, 0.06);
  color: #18221f;
  display: grid;
  place-items: center;
  flex-shrink: 0;
}

.mk-vater-icon svg { width: 22px; height: 22px; stroke-width: 1.7; }

.mk-vater-body {
  min-width: 0;
}

.mk-vater-body small {
  display: block;
  font-family: "DM Sans", sans-serif;
  font-size: 9px;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #929b97;
  margin-bottom: 4px;
}

.mk-vater-body h3 {
  margin: 0 0 4px;
  font-family: "Playfair Display", serif;
  font-weight: 400;
  font-size: 20px;
  line-height: 1.2;
  color: #18221f;
  letter-spacing: -0.01em;
}

.mk-vater-body p {
  margin: 0;
  font-family: "Manrope", sans-serif;
  font-size: 13px;
  line-height: 1.5;
  color: #68736f;
  max-width: 52ch;
}

.mk-vater-cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 18px;
  border-radius: 999px;
  background: #18221f;
  color: #fff;
  text-decoration: none;
  font-family: "DM Sans", sans-serif;
  font-size: 11px;
  font-weight: 600;
  white-space: nowrap;
  transition: background 0.25s ease, transform 0.25s ease;
}

.mk-vater-cta:hover { background: #253430; transform: translateY(-2px); }

.mk-vater-cta svg { width: 12px; height: 12px; }

/* =========================================================
   Katja Daub · About / Trust Section
========================================================= */

.kd-about {
  --kd-green: #a80846;
  --kd-green-dark: #3a1428;
  --kd-mint: #e6f2ed;
  --kd-mint-2: #fce4ee;
  --kd-warm: #d28a68;
  --kd-warm-soft: #f8eee8;
  --kd-text: #18231f;
  --kd-muted: #747e79;
  --kd-line: rgba(24, 35, 31, 0.09);

  position: relative;
  width: 100%;
  padding: clamp(70px, 8vw, 130px) 0;
  overflow: hidden;
  background: #fff;
  color: var(--kd-text);
  font-family: "DM Sans", sans-serif;
}

.kd-about *,
.kd-about *::before,
.kd-about *::after { box-sizing: border-box; }

.kd-about__container {
  width: min(1440px, calc(100% - 64px));
  margin: 0 auto;
  position: relative;
  z-index: 2;
}

/* Ambient blobs */

.kd-about__ambient {
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
}

.kd-about__ambient--1 {
  width: 600px;
  height: 600px;
  left: -380px;
  bottom: -280px;
  background: radial-gradient(circle, rgba(223, 239, 232, 0.55), transparent 68%);
}

.kd-about__ambient--2 {
  width: 450px;
  height: 450px;
  right: -250px;
  top: -180px;
  background: radial-gradient(circle, rgba(245, 232, 223, 0.4), transparent 68%);
}

/* Grid */

.kd-about__grid {
  display: grid;
  grid-template-columns: minmax(430px, 0.9fr) minmax(500px, 1.1fr);
  gap: clamp(48px, 6vw, 100px);
  align-items: center;
}

/* Image */

.kd-about__visual { position: relative; }

.kd-about__image-wrap {
  position: relative;
  width: 100%;
  height: clamp(560px, 60vw, 760px);
  overflow: hidden;
  border-radius: 34px;
  background: #edf1ee;
  box-shadow: 0 30px 80px rgba(26, 50, 40, 0.09);
}

.kd-about__image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transform: scale(1.025);
  transition: transform 1.2s cubic-bezier(0.2, 0.8, 0.2, 1);
}

.kd-about__image-wrap:hover .kd-about__image { transform: scale(1.055); }

.kd-about__image-shade {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(180deg, transparent 55%, rgba(15, 40, 31, 0.13) 100%);
}

/* Content */

.kd-about__content { position: relative; }

/* Eyebrow */

.kd-about__eyebrow {
  width: max-content;
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 27px;
  padding: 9px 14px;
  border-radius: 100px;
  background: #eff6f3;
  color: #a80846;
  font-family: "DM Sans", sans-serif;
  font-size: 9.5px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.kd-about__eyebrow-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #a80846;
  box-shadow: 0 0 0 5px rgba(210, 10, 91, 0.09);
}

/* Title */

.kd-about__title {
  max-width: 750px;
  margin: 0 0 32px;
  font-family: "Playfair Display", serif;
  font-size: clamp(44px, 4.6vw, 74px);
  font-weight: 400;
  line-height: 0.98;
  letter-spacing: -0.045em;
  color: var(--kd-text);
  text-wrap: balance;
}

.kd-about__title span {
  display: block;
  color: #a80846;
  font-style: italic;
  font-weight: 400;
}

/* Copy */

.kd-about__copy { max-width: 720px; }

.kd-about__copy p {
  margin: 0 0 22px;
  font-family: "Manrope", sans-serif;
  color: var(--kd-muted);
  font-size: 15px;
  line-height: 1.75;
}

.kd-about__copy strong {
  color: var(--kd-text);
  font-weight: 600;
}

/* Signature */

.kd-about__signature { margin-top: 34px; }

.kd-about__signature-line {
  width: 100%;
  height: 1px;
  margin-bottom: 22px;
  background: var(--kd-line);
}

.kd-about__signature-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 30px;
}

.kd-about__signature-name {
  display: block;
  margin-bottom: 4px;
  color: #a80846;
  font-family: "Playfair Display", serif;
  font-size: 27px;
  font-style: italic;
  font-weight: 400;
  letter-spacing: -0.01em;
}

.kd-about__signature-role {
  display: block;
  color: #9aa29e;
  font-family: "DM Sans", sans-serif;
  font-size: 9.5px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

/* Personal note */

.kd-about__personal-note {
  display: flex;
  align-items: center;
  gap: 11px;
  padding-right: 5px;
  transform: rotate(-3deg);
  color: #a80846;
}

.kd-about__personal-heart {
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--kd-mint);
}

.kd-about__personal-heart svg { width: 17px; height: 17px; }

.kd-about__personal-note span {
  font-family: "Playfair Display", serif;
  font-size: 14px;
  line-height: 1.3;
  font-style: italic;
}

/* Trust cards */

.kd-about__trust {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  margin-top: 34px;
}

.kd-trust-card {
  min-height: 105px;
  padding: 15px;
  display: flex;
  align-items: center;
  gap: 13px;
  border: 1px solid var(--kd-line);
  border-radius: 19px;
  background: rgba(255, 255, 255, 0.8);
  box-shadow: 0 10px 30px rgba(25, 47, 39, 0.025);
  transition:
    transform 0.35s cubic-bezier(0.2, 0.8, 0.2, 1),
    border-color 0.35s ease,
    box-shadow 0.35s ease;
}

.kd-trust-card:hover {
  transform: translateY(-5px);
  border-color: rgba(210, 10, 91, 0.15);
  box-shadow: 0 20px 45px rgba(25, 47, 39, 0.075);
}

.kd-trust-card__icon {
  flex: 0 0 auto;
  width: 50px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: var(--kd-green);
  background: var(--kd-mint);
}

.kd-trust-card__icon--warm {
  color: var(--kd-warm);
  background: var(--kd-warm-soft);
}

.kd-trust-card__icon svg { width: 20px; height: 20px; }

.kd-trust-card__copy { min-width: 0; }

.kd-trust-card__small {
  display: block;
  margin-bottom: 5px;
  font-family: "DM Sans", sans-serif;
  color: #99a29e;
  font-size: 8px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.kd-trust-card strong {
  display: block;
  font-family: "DM Sans", sans-serif;
  color: var(--kd-text);
  font-size: 12.5px;
  font-weight: 600;
  line-height: 1.35;
}

/* Reveal */

.kd-reveal {
  opacity: 0;
  transform: translateY(30px);
  transition:
    opacity 0.8s cubic-bezier(0.2, 0.8, 0.2, 1),
    transform 0.8s cubic-bezier(0.2, 0.8, 0.2, 1);
}

.kd-reveal.kd-visible {
  opacity: 1;
  transform: translateY(0);
}

/* =========================================================
   Stillberatung · Editorial Service Section
========================================================= */

.still-service {
  --ss-dark: #1e0a13;
  --ss-green: #a80846;
  --ss-green-light: #d20a5b;
  --ss-mint: #fce4ee;
  --ss-mint-soft: #fdf1f6;
  --ss-warm: #c97958;
  --ss-warm-soft: #faeee7;
  --ss-text: #15231e;
  --ss-muted: #727d78;
  --ss-line: rgba(21, 35, 30, 0.09);

  position: relative;
  width: 100%;
  padding: clamp(70px, 8vw, 130px) 0;
  background: #fff;
  color: var(--ss-text);
  font-family: "DM Sans", sans-serif;
}

.still-service *,
.still-service *::before,
.still-service *::after { box-sizing: border-box; }

.still-service__container {
  width: min(1400px, calc(100% - 64px));
  margin: 0 auto;
}

/* Top */

.still-service__top {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(320px, 0.55fr);
  gap: clamp(48px, 6vw, 120px);
  align-items: end;
  padding-bottom: 70px;
}

.still-service__eyebrow {
  width: max-content;
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 25px;
  padding: 8px 14px 8px 8px;
  border-radius: 100px;
  background: var(--ss-mint-soft);
  color: var(--ss-green);
  font-family: "DM Sans", sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.15em;
  text-transform: uppercase;
}

.still-service__eyebrow span {
  width: 28px;
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--ss-mint);
}

.still-service__eyebrow svg { width: 14px; height: 14px; }

.still-service__title {
  max-width: 850px;
  margin: 0;
  font-family: "Playfair Display", serif;
  font-size: clamp(44px, 5.4vw, 82px);
  line-height: 0.96;
  letter-spacing: -0.045em;
  font-weight: 400;
  color: var(--ss-text);
  text-wrap: balance;
}

.still-service__title em {
  display: block;
  color: var(--ss-warm);
  font-style: italic;
  font-weight: 400;
}

.still-service__lead {
  max-width: 720px;
  margin: 28px 0 0;
  font-family: "Manrope", sans-serif;
  color: var(--ss-muted);
  font-size: 15.5px;
  line-height: 1.75;
}

/* Editorial right */

.still-service__editorial {
  position: relative;
  padding: 0 0 8px 34px;
  border-left: 1px solid var(--ss-line);
}

.still-service__editorial-line {
  position: absolute;
  left: -1px;
  top: 0;
  width: 1px;
  height: 75px;
  background: var(--ss-green);
}

.still-service__editorial-number {
  display: block;
  margin-bottom: 20px;
  font-family: "DM Sans", sans-serif;
  color: #a1aaa6;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.still-service__editorial blockquote {
  max-width: 400px;
  margin: 0 0 22px;
  font-family: "Playfair Display", serif;
  font-size: clamp(23px, 2vw, 32px);
  line-height: 1.18;
  letter-spacing: -0.02em;
  font-style: italic;
  font-weight: 400;
  color: var(--ss-text);
}

.still-service__editorial p {
  max-width: 400px;
  margin: 0;
  font-family: "Manrope", sans-serif;
  color: var(--ss-muted);
  font-size: 13px;
  line-height: 1.7;
}

.still-service__note {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 26px;
  color: var(--ss-green);
  font-family: "DM Sans", sans-serif;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.still-service__note i {
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: #d20a5b;
}

/* Benefits — Cards mit Abstand, kein Table-Look */

.still-service__benefits {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
  margin-bottom: 70px;
}

.still-benefit {
  position: relative;
  min-height: 340px;
  padding: 26px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  border: 1px solid rgba(21, 35, 30, 0.08);
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 12px 35px rgba(28, 48, 40, 0.03);
  transition:
    transform 0.4s cubic-bezier(0.2, 0.8, 0.2, 1),
    box-shadow 0.4s ease,
    border-color 0.4s ease,
    background 0.4s ease;
}

.still-benefit:hover {
  transform: translateY(-6px);
  background: #fbfdfc;
  border-color: rgba(210, 10, 91, 0.15);
  box-shadow: 0 28px 60px rgba(24, 47, 39, 0.08);
}

.still-benefit__top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}

.still-benefit__number {
  font-family: "DM Sans", sans-serif;
  color: #a4aca8;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.16em;
}

.still-benefit__icon {
  width: 52px;
  height: 52px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: var(--ss-green);
  background: var(--ss-mint);
}

.still-benefit__icon--warm {
  color: var(--ss-warm);
  background: var(--ss-warm-soft);
}

.still-benefit__icon svg { width: 20px; height: 20px; }

.still-benefit__content { margin-top: 40px; }

.still-benefit__content h3 {
  max-width: 250px;
  margin: 0 0 14px;
  font-family: "Playfair Display", serif;
  font-size: clamp(22px, 1.9vw, 28px);
  line-height: 1.08;
  letter-spacing: -0.03em;
  font-weight: 400;
  color: var(--ss-text);
}

.still-benefit__content p {
  max-width: 275px;
  margin: 0;
  font-family: "Manrope", sans-serif;
  color: var(--ss-muted);
  font-size: 12.5px;
  line-height: 1.65;
}

/* Accent (dark) card */

.still-benefit--accent {
  color: #fff;
  background: linear-gradient(145deg, var(--ss-dark), #1e0a13);
  border-color: transparent;
}

.still-benefit--accent:hover {
  background: linear-gradient(145deg, #3a1428, #1e0a13);
  border-color: transparent;
}

.still-benefit--accent .still-benefit__number { color: rgba(255, 255, 255, 0.4); }

.still-benefit--accent .still-benefit__content h3 { color: #fff; }

.still-benefit--accent .still-benefit__content p { color: rgba(255, 255, 255, 0.62); }

.still-benefit__icon--white {
  color: #fff;
  background: rgba(255, 255, 255, 0.12);
  border: 1px solid rgba(255, 255, 255, 0.08);
}

/* Contact area */

.still-service__contact {
  display: grid;
  grid-template-columns: 0.7fr 1.3fr;
  gap: clamp(32px, 5vw, 80px);
  align-items: center;
  padding: 20px 0 45px;
}

.still-service__contact-kicker {
  display: block;
  margin-bottom: 12px;
  font-family: "DM Sans", sans-serif;
  color: var(--ss-green);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.still-service__contact-left h3 {
  max-width: 480px;
  margin: 0;
  font-family: "Playfair Display", serif;
  font-size: clamp(28px, 3vw, 44px);
  line-height: 1.05;
  font-weight: 400;
  letter-spacing: -0.035em;
  color: var(--ss-text);
}

.still-service__formats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}

.still-format {
  min-height: 100px;
  padding: 16px;
  display: flex;
  align-items: center;
  gap: 14px;
  border: 1px solid var(--ss-line);
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 10px 30px rgba(28, 48, 40, 0.03);
  transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}

.still-format:hover {
  transform: translateY(-4px);
  border-color: rgba(210, 10, 91, 0.15);
  box-shadow: 0 20px 45px rgba(24, 47, 39, 0.07);
}

.still-format__icon {
  flex: 0 0 auto;
  width: 46px;
  height: 46px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: var(--ss-green);
  background: var(--ss-mint);
}

.still-format__icon--warm {
  color: var(--ss-warm);
  background: var(--ss-warm-soft);
}

.still-format__icon svg { width: 18px; height: 18px; }

.still-format strong,
.still-format span { display: block; }

.still-format strong {
  margin-bottom: 4px;
  font-family: "DM Sans", sans-serif;
  font-size: 12.5px;
  font-weight: 700;
  color: var(--ss-text);
}

.still-format span {
  font-family: "Manrope", sans-serif;
  color: var(--ss-muted);
  font-size: 11px;
}

/* CTA */

.still-service__cta-row {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 26px;
  margin-bottom: 8px;
}

.still-service__cta {
  min-width: 410px;
  height: 68px;
  padding: 8px 9px 8px 26px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  border-radius: 100px;
  color: #fff;
  background: var(--ss-dark);
  text-decoration: none;
  font-family: "DM Sans", sans-serif;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.02em;
  box-shadow: 0 20px 45px rgba(16, 45, 38, 0.16);
  transition: transform 0.35s ease, box-shadow 0.35s ease, background 0.35s ease;
}

.still-service__cta:hover {
  transform: translateY(-4px);
  background: #3a1428;
  box-shadow: 0 27px 55px rgba(16, 45, 38, 0.24);
}

.still-service__cta-arrow {
  flex: 0 0 auto;
  width: 52px;
  height: 52px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: var(--ss-dark);
  background: var(--ss-green-light);
  transition: transform 0.3s ease;
}

.still-service__cta:hover .still-service__cta-arrow { transform: translateX(4px); }

.still-service__cta-arrow svg { width: 19px; height: 19px; }

/* Trust strip */

.still-service__trust {
  min-height: 110px;
  padding: 18px 26px;
  display: grid;
  grid-template-columns: 1.6fr 1px 0.45fr 0.45fr 0.55fr;
  gap: 30px;
  align-items: center;
  border: 1px solid var(--ss-line);
  border-radius: 24px;
  background: linear-gradient(100deg, #fdf1f6, #fbf8f5);
}

.still-service__trust-intro {
  display: flex;
  align-items: center;
  gap: 16px;
}

.still-service__trust-icon {
  flex: 0 0 auto;
  width: 58px;
  height: 58px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: var(--ss-green);
  background: #fff;
  box-shadow: 0 10px 30px rgba(20, 50, 40, 0.05);
}

.still-service__trust-icon svg { width: 22px; height: 22px; }

.still-service__trust-intro strong,
.still-service__trust-intro span { display: block; }

.still-service__trust-intro strong {
  margin-bottom: 5px;
  font-family: "Playfair Display", serif;
  font-size: 16px;
  font-weight: 400;
  color: var(--ss-text);
}

.still-service__trust-intro span {
  font-family: "Manrope", sans-serif;
  color: var(--ss-muted);
  font-size: 11.5px;
}

.still-service__trust-line {
  width: 1px;
  height: 60px;
  background: var(--ss-line);
}

.still-service__stat { text-align: center; }

.still-service__stat strong {
  display: block;
  margin-bottom: 4px;
  font-family: "Playfair Display", serif;
  font-style: italic;
  color: var(--ss-dark);
  font-size: 34px;
  font-weight: 500;
  letter-spacing: -0.03em;
}

.still-service__stat span {
  display: block;
  font-family: "DM Sans", sans-serif;
  color: #8c9691;
  font-size: 9px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  font-weight: 700;
}

/* Reveal */

.ss-reveal {
  opacity: 0;
  transform: translateY(28px);
  transition:
    opacity 0.75s cubic-bezier(0.2, 0.8, 0.2, 1),
    transform 0.75s cubic-bezier(0.2, 0.8, 0.2, 1);
}

.ss-reveal.ss-visible {
  opacity: 1;
  transform: translateY(0);
}

/* =========================================================
   Family-Services · 3 Beratungsbereiche
========================================================= */

.family-services {
  --fs-dark: #152d26;
  --fs-text: #18251f;
  --fs-green: #a80846;
  --fs-green-dark: #286d5f;
  --fs-mint: #fce4ee;
  --fs-mint-light: #fdf1f6;
  --fs-warm: #c98160;
  --fs-warm-light: #f8ede7;
  --fs-muted: #77817d;
  --fs-line: rgba(21, 45, 38, 0.09);

  position: relative;
  width: 100%;
  padding: clamp(70px, 8vw, 120px) 0 clamp(60px, 7vw, 100px);
  background: #fff;
  color: var(--fs-text);
  font-family: "DM Sans", sans-serif;
  overflow: hidden;
}

.family-services *,
.family-services *::before,
.family-services *::after { box-sizing: border-box; }

.family-services__container {
  width: min(1420px, calc(100% - 64px));
  margin: 0 auto;
}

/* Header — nur Badge + Headline + Intro, mittig */

.family-services__header {
  max-width: 970px;
  margin: 0 auto 70px;
  text-align: center;
}

.family-services__title {
  max-width: 1050px;
  margin: 0 auto;
  font-family: "Playfair Display", serif;
  font-size: clamp(44px, 5.2vw, 82px);
  font-weight: 400;
  line-height: 0.98;
  letter-spacing: -0.045em;
  color: var(--fs-text);
  text-wrap: balance;
}

.family-services__title em {
  display: block;
  color: var(--fs-green);
  font-style: italic;
  font-weight: 400;
}

.family-services__intro {
  max-width: 650px;
  margin: 26px auto 0;
  font-family: "Manrope", sans-serif;
  color: var(--fs-muted);
  font-size: 15px;
  line-height: 1.7;
}

/* Grid */

.family-services__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

/* Card */

.family-card {
  position: relative;
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--fs-line);
  border-radius: 26px;
  background: #fff;
  box-shadow: 0 14px 40px rgba(24, 48, 39, 0.035);
  transition:
    transform 0.5s cubic-bezier(0.2, 0.8, 0.2, 1),
    box-shadow 0.5s ease,
    border-color 0.5s ease;
}

.family-card:hover {
  transform: translateY(-8px);
  border-color: rgba(210, 10, 91, 0.19);
  box-shadow: 0 30px 70px rgba(24, 48, 39, 0.09);
}

/* Image */

.family-card__image {
  position: relative;
  width: 100%;
  height: 285px;
  overflow: hidden;
  background: #f2f4f2;
}

.family-card__image::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(180deg, transparent 65%, rgba(13, 39, 31, 0.08));
}

.family-card__image img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transform: scale(1.01);
  transition: transform 0.8s cubic-bezier(0.2, 0.8, 0.2, 1);
}

.family-card:hover .family-card__image img { transform: scale(1.055); }

/* Number badge */

.family-card__number {
  position: absolute;
  z-index: 3;
  top: 20px;
  right: 20px;
  width: 38px;
  height: 38px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255, 255, 255, 0.6);
  border-radius: 50%;
  color: #fff;
  background: rgba(20, 46, 38, 0.28);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  font-family: "DM Sans", sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.08em;
}

/* Featured badge */

.family-card__badge {
  position: absolute;
  z-index: 3;
  left: 20px;
  top: 20px;
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 8px 12px;
  border: 1px solid rgba(255, 255, 255, 0.7);
  border-radius: 100px;
  color: #fff;
  background: rgba(18, 47, 38, 0.35);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  font-family: "DM Sans", sans-serif;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.family-card__badge span {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #d20a5b;
}

/* Body */

.family-card__body {
  position: relative;
  min-height: 380px;
  padding: 50px 32px 32px;
}

.family-card__icon {
  position: absolute;
  top: -35px;
  left: 30px;
  z-index: 5;
  width: 70px;
  height: 70px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 7px solid #fff;
  border-radius: 50%;
  color: var(--fs-green);
  background: var(--fs-mint);
  box-shadow: 0 9px 25px rgba(29, 71, 58, 0.06);
}

.family-card__icon svg { width: 22px; height: 22px; }

.family-card__label {
  display: block;
  margin-bottom: 10px;
  font-family: "DM Sans", sans-serif;
  color: #8b9691;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.family-card h3 {
  margin: 0 0 14px;
  font-family: "Playfair Display", serif;
  font-size: clamp(26px, 2.2vw, 34px);
  font-weight: 400;
  line-height: 1.05;
  letter-spacing: -0.03em;
  color: var(--fs-text);
}

.family-card p {
  max-width: 390px;
  margin: 0;
  font-family: "Manrope", sans-serif;
  color: var(--fs-muted);
  font-size: 13px;
  line-height: 1.7;
}

/* Topics */

.family-card__topics {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 22px;
}

.family-card__topics span {
  padding: 6px 11px;
  border: 1px solid rgba(210, 10, 91, 0.14);
  border-radius: 100px;
  color: #a80846;
  background: #fdf1f6;
  font-family: "DM Sans", sans-serif;
  font-size: 9px;
  font-weight: 600;
  letter-spacing: 0.04em;
}

/* Card CTA */

.family-card__link {
  position: absolute;
  left: 32px;
  right: 30px;
  bottom: 27px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: 18px;
  border-top: 1px solid var(--fs-line);
  color: var(--fs-green);
  text-decoration: none;
  text-transform: uppercase;
  font-family: "DM Sans", sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.14em;
}

.family-card__arrow {
  width: 33px;
  height: 33px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: var(--fs-green);
  background: var(--fs-mint-light);
  transition: transform 0.3s ease, background 0.3s ease;
}

.family-card__arrow svg { width: 14px; height: 14px; }

.family-card__link:hover .family-card__arrow {
  transform: translateX(4px);
  background: var(--fs-mint);
}

/* Featured middle card lifted up */

.family-card--featured { transform: translateY(-12px); }

.family-card--featured:hover { transform: translateY(-20px); }

/* Reveal */

.fs-reveal {
  opacity: 0;
  transform: translateY(25px);
  transition:
    opacity 0.75s cubic-bezier(0.2, 0.8, 0.2, 1),
    transform 0.75s cubic-bezier(0.2, 0.8, 0.2, 1);
}

.fs-reveal.fs-visible {
  opacity: 1;
  transform: translateY(0);
}

.family-card--featured.fs-reveal { transform: translateY(13px); }

.family-card--featured.fs-visible { transform: translateY(-12px); }

/* =========================================================
   Milchpumpen-Vergleich · Compare Table
========================================================= */

.pump-compare {
  --pc-dark: #1e0a13;
  --pc-text: #17251f;
  --pc-green: #a80846;
  --pc-green-dark: #287264;
  --pc-mint: #e4f2ed;
  --pc-mint-light: #f2f8f5;
  --pc-orange: #c87b58;
  --pc-muted: #7a8580;
  --pc-line: rgba(19, 46, 38, 0.10);

  position: relative;
  width: 100%;
  padding: clamp(70px, 8vw, 120px) 0 clamp(60px, 7vw, 95px);
  overflow: hidden;
  background: #fff;
  color: var(--pc-text);
  font-family: "DM Sans", sans-serif;
}

.pump-compare *,
.pump-compare *::before,
.pump-compare *::after { box-sizing: border-box; }

.pump-compare__container {
  width: min(1400px, calc(100% - 64px));
  margin: 0 auto;
}

/* Header */

.pump-compare__header {
  max-width: 950px;
  margin: 0 auto 60px;
  text-align: center;
}

.pump-compare__title {
  margin: 0;
  font-family: "Playfair Display", serif;
  font-size: clamp(44px, 5.2vw, 80px);
  font-weight: 400;
  line-height: 0.98;
  letter-spacing: -0.045em;
  color: var(--pc-text);
  text-wrap: balance;
}

.pump-compare__title em {
  color: var(--pc-green);
  font-style: italic;
  font-weight: 400;
}

.pump-compare__title span { display: block; }

.pump-compare__subtitle {
  max-width: 680px;
  margin: 24px auto 0;
  font-family: "Manrope", sans-serif;
  color: var(--pc-muted);
  font-size: 15px;
  line-height: 1.7;
}

/* Table */

.pump-compare__table {
  overflow: hidden;
  border: 1px solid var(--pc-line);
  border-radius: 26px;
  background: #fff;
  box-shadow: 0 20px 60px rgba(20, 48, 39, 0.05);
}

.pump-compare__row {
  display: grid;
  grid-template-columns: 0.9fr 1fr 1fr;
}

.pump-compare__row:not(:last-child) {
  border-bottom: 1px solid var(--pc-line);
}

.pump-compare__cell {
  min-height: 88px;
  padding: 22px 28px;
  display: flex;
  align-items: center;
}

.pump-compare__cell:not(:last-child) {
  border-right: 1px solid var(--pc-line);
}

/* Head row */

.pump-compare__row--head .pump-compare__cell {
  min-height: 68px;
  font-family: "DM Sans", sans-serif;
  color: #7e8984;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.pump-compare__row--head .pump-compare__cell--classic {
  justify-content: center;
}

.pump-compare__row--head .pump-compare__cell--city {
  color: var(--pc-green-dark);
}

/* City column tint */

.pump-compare__cell--city {
  position: relative;
  background: linear-gradient(90deg, rgba(235, 246, 242, 0.7), rgba(246, 250, 248, 0.72));
}

.pump-compare__city-title {
  display: flex;
  align-items: center;
  gap: 10px;
}

.pump-compare__city-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #d20a5b;
  box-shadow: 0 0 0 5px rgba(100, 197, 170, 0.12);
}

/* Feature label */

.pump-compare__feature {
  display: flex;
  align-items: center;
  gap: 16px;
}

.pump-compare__feature-icon {
  flex: 0 0 auto;
  width: 42px;
  height: 42px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: var(--pc-dark);
  background: var(--pc-mint-light);
}

.pump-compare__feature-icon svg { width: 18px; height: 18px; }

.pump-compare__feature > span {
  font-family: "DM Sans", sans-serif;
  font-size: 13px;
  font-weight: 700;
  color: var(--pc-text);
}

/* Classic value */

.pump-compare__classic-value {
  font-family: "Manrope", sans-serif;
  color: #7c8681;
  font-size: 13.5px;
  line-height: 1.5;
}

/* Win cell */

.pump-compare__win {
  display: flex;
  align-items: center;
  gap: 14px;
}

.pump-compare__check {
  flex: 0 0 auto;
  width: 27px;
  height: 27px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: #fff;
  background: var(--pc-green);
  box-shadow: 0 7px 16px rgba(210, 10, 91, 0.2);
}

.pump-compare__check svg { width: 13px; height: 13px; }

.pump-compare__win strong {
  font-family: "DM Sans", sans-serif;
  color: var(--pc-green-dark);
  font-size: 13.5px;
  font-weight: 700;
  line-height: 1.45;
}

/* Row hover */

.pump-compare__row:not(.pump-compare__row--head) {
  transition: background 0.3s ease;
}

.pump-compare__row:not(.pump-compare__row--head):hover {
  background: #fbfcfb;
}

.pump-compare__row:not(.pump-compare__row--head):hover .pump-compare__cell--city {
  background: #edf7f3;
}

/* Benefits */

.pump-compare__benefits {
  display: grid;
  grid-template-columns: 1fr 1px 1fr 1px 1fr;
  align-items: center;
  gap: 30px;
  margin: 46px 20px 0;
}

.pump-benefit {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
}

.pump-benefit__icon {
  flex: 0 0 auto;
  width: 60px;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: var(--pc-green);
  background: var(--pc-mint);
}

.pump-benefit__icon svg { width: 22px; height: 22px; }

.pump-benefit strong,
.pump-benefit span { display: block; }

.pump-benefit strong {
  margin-bottom: 4px;
  font-family: "DM Sans", sans-serif;
  font-size: 13px;
  font-weight: 700;
  color: var(--pc-text);
}

.pump-benefit span {
  font-family: "Manrope", sans-serif;
  color: var(--pc-muted);
  font-size: 11.5px;
}

.pump-benefit__divider {
  width: 1px;
  height: 55px;
  background: var(--pc-line);
}

/* Footer / CTA */

.pump-compare__footer {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 46px;
}

.pump-compare__cta-wrap { text-align: center; }

.pump-compare__cta {
  min-width: 370px;
  height: 68px;
  padding: 8px 8px 8px 26px;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  border-radius: 100px;
  color: #fff;
  background: var(--pc-dark);
  text-decoration: none;
  font-family: "DM Sans", sans-serif;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.02em;
  box-shadow: 0 20px 45px rgba(17, 46, 39, 0.18);
  transition: transform 0.35s ease, box-shadow 0.35s ease, background 0.35s ease;
}

.pump-compare__cta:hover {
  transform: translateY(-4px);
  background: #163a30;
  box-shadow: 0 27px 60px rgba(17, 46, 39, 0.24);
}

.pump-compare__cta-arrow {
  flex: 0 0 auto;
  width: 52px;
  height: 52px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: var(--pc-dark);
  background: #d20a5b;
  transition: transform 0.3s ease;
}

.pump-compare__cta:hover .pump-compare__cta-arrow { transform: translateX(4px); }

.pump-compare__cta-arrow svg { width: 19px; height: 19px; }

.pump-compare__cta-note {
  display: block;
  margin-top: 16px;
  font-family: "DM Sans", sans-serif;
  color: #8b9691;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

/* Mobile comparison (hidden on desktop) */

.pump-compare__mobile { display: none; }

/* Reveal */

.pc-reveal {
  opacity: 0;
  transform: translateY(25px);
  transition:
    opacity 0.75s cubic-bezier(0.2, 0.8, 0.2, 1),
    transform 0.75s cubic-bezier(0.2, 0.8, 0.2, 1);
}

.pc-reveal.pc-visible {
  opacity: 1;
  transform: translateY(0);
}

/* =========================================================
   Vaterschaftstest · DNA Section
========================================================= */

.dna-section {
  --dna-dark: #1e0a13;
  --dna-text: #17251f;
  --dna-green: #a80846;
  --dna-green-dark: #a80846;
  --dna-mint: #fce4ee;
  --dna-mint-light: #fdf1f6;
  --dna-muted: #77827e;
  --dna-line: rgba(18, 45, 37, 0.1);

  position: relative;
  width: 100%;
  padding: clamp(70px, 8vw, 120px) 0 clamp(60px, 7vw, 90px);
  background: #fff;
  color: var(--dna-text);
  font-family: "DM Sans", sans-serif;
  overflow: hidden;
}

.dna-section *,
.dna-section *::before,
.dna-section *::after { box-sizing: border-box; }

.dna-container {
  width: min(1450px, calc(100% - 64px));
  margin: 0 auto;
}

.dna-header {
  max-width: 1000px;
  margin: 0 auto 55px;
  text-align: center;
}

.dna-title {
  margin: 0;
  font-family: "Playfair Display", serif;
  font-size: clamp(44px, 5vw, 78px);
  font-weight: 400;
  line-height: 0.98;
  letter-spacing: -0.045em;
  color: var(--dna-text);
  text-wrap: balance;
}

.dna-title em {
  display: block;
  color: var(--dna-green);
  font-style: italic;
  font-weight: 400;
}

.dna-intro {
  max-width: 720px;
  margin: 26px auto 0;
  font-family: "Manrope", sans-serif;
  color: var(--dna-muted);
  font-size: 15px;
  line-height: 1.7;
}

/* Main card */

.dna-card {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) 1px minmax(280px, 0.8fr) 1px auto;
  align-items: center;
  gap: 36px;
  min-height: 240px;
  padding: 36px 40px;
  border: 1px solid var(--dna-line);
  border-radius: 26px;
  background: linear-gradient(135deg, #fff 0%, #fff 72%, #fbfdfc 100%);
  box-shadow: 0 20px 60px rgba(20, 47, 39, 0.045);
  transition:
    transform 0.5s cubic-bezier(0.2, 0.8, 0.2, 1),
    border-color 0.4s ease,
    box-shadow 0.5s ease;
}

.dna-card:hover {
  transform: translateY(-5px);
  border-color: rgba(210, 10, 91, 0.2);
  box-shadow: 0 30px 80px rgba(20, 47, 39, 0.08);
}

.dna-card__main {
  display: grid;
  grid-template-columns: 118px 1fr;
  gap: 28px;
  align-items: center;
}

.dna-card__icon {
  width: 118px;
  height: 118px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 26px;
  color: var(--dna-dark);
  background: linear-gradient(145deg, #edf7f3, #fdf1f6);
  transition: transform 0.4s cubic-bezier(0.2, 0.8, 0.2, 1), background 0.4s ease;
}

.dna-card__icon svg { width: 38px; height: 38px; stroke-width: 1.6; }

.dna-card:hover .dna-card__icon {
  transform: rotate(-3deg) scale(1.035);
  background: var(--dna-mint);
}

.dna-card__label {
  display: block;
  margin-bottom: 10px;
  font-family: "DM Sans", sans-serif;
  color: #84928c;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.dna-card__content h3 {
  margin: 0 0 12px;
  font-family: "Playfair Display", serif;
  font-size: clamp(26px, 2.3vw, 36px);
  font-weight: 400;
  line-height: 1.05;
  letter-spacing: -0.03em;
  color: var(--dna-text);
}

.dna-card__content p {
  max-width: 600px;
  margin: 0;
  font-family: "Manrope", sans-serif;
  color: var(--dna-muted);
  font-size: 13px;
  line-height: 1.7;
}

.dna-divider {
  width: 1px;
  height: 140px;
  background: var(--dna-line);
}

.dna-benefits {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.dna-benefit {
  display: flex;
  align-items: center;
  gap: 13px;
  font-family: "DM Sans", sans-serif;
  color: var(--dna-text);
  font-size: 13px;
  line-height: 1.4;
  font-weight: 600;
}

.dna-check {
  flex: 0 0 auto;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: var(--dna-green);
  background: var(--dna-mint-light);
}

.dna-check svg { width: 15px; height: 15px; stroke-width: 2.2; }

.dna-card__action {
  display: flex;
  align-items: center;
  justify-content: center;
}

.dna-button {
  min-width: 240px;
  height: 62px;
  padding: 7px 8px 7px 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  border-radius: 100px;
  color: #fff;
  background: var(--dna-dark);
  text-decoration: none;
  font-family: "DM Sans", sans-serif;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.02em;
  box-shadow: 0 16px 35px rgba(17, 44, 37, 0.16);
  transition: transform 0.35s ease, box-shadow 0.35s ease, background 0.35s ease;
}

.dna-button:hover {
  transform: translateY(-3px);
  background: #17382f;
  box-shadow: 0 22px 45px rgba(17, 44, 37, 0.22);
}

.dna-button__arrow {
  width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: var(--dna-dark);
  background: #d20a5b;
  transition: transform 0.3s ease;
}

.dna-button__arrow svg { width: 18px; height: 18px; }

.dna-button:hover .dna-button__arrow { transform: translateX(3px); }

/* Reveal */

.dna-reveal {
  opacity: 0;
  transform: translateY(25px);
  transition:
    opacity 0.75s cubic-bezier(0.2, 0.8, 0.2, 1),
    transform 0.75s cubic-bezier(0.2, 0.8, 0.2, 1);
}

.dna-reveal.dna-visible {
  opacity: 1;
  transform: translateY(0);
}

/* =========================================================
   Zusagen · Promise Section
========================================================= */

.promise-section {
  --ps-dark: #1e0a13;
  --ps-text: #17251f;
  --ps-green: #a80846;
  --ps-green-dark: #a80846;
  --ps-mint: #fce4ee;
  --ps-mint-light: #fdf1f6;
  --ps-muted: #75817c;
  --ps-line: rgba(18, 42, 36, 0.09);

  width: 100%;
  padding: clamp(70px, 8vw, 120px) 0 clamp(60px, 7vw, 95px);
  background: #fff;
  color: var(--ps-text);
  font-family: "DM Sans", sans-serif;
  overflow: hidden;
}

.promise-section *,
.promise-section *::before,
.promise-section *::after { box-sizing: border-box; }

.promise-container {
  width: min(1420px, calc(100% - 64px));
  margin: 0 auto;
}

.promise-header {
  max-width: 970px;
  margin: 0 auto 58px;
  text-align: center;
}

.promise-title {
  margin: 0;
  font-family: "Playfair Display", serif;
  font-size: clamp(44px, 5.2vw, 80px);
  line-height: 0.98;
  letter-spacing: -0.045em;
  font-weight: 400;
  color: var(--ps-text);
  text-wrap: balance;
}

.promise-title em {
  display: block;
  color: var(--ps-green);
  font-style: italic;
  font-weight: 400;
}

.promise-subtitle {
  max-width: 650px;
  margin: 24px auto 0;
  font-family: "Manrope", sans-serif;
  color: var(--ps-muted);
  font-size: 15px;
  line-height: 1.7;
}

/* Grid */

.promise-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

/* Card */

.promise-card {
  position: relative;
  min-height: 480px;
  padding: 28px 28px 24px;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid var(--ps-line);
  border-radius: 26px;
  background: linear-gradient(145deg, #fff 0%, #fff 65%, #fbfdfc 100%);
  box-shadow: 0 18px 50px rgba(20, 47, 39, 0.045);
  transition:
    transform 0.5s cubic-bezier(0.2, 0.8, 0.2, 1),
    border-color 0.4s ease,
    box-shadow 0.5s ease;
}

.promise-card::before {
  content: "";
  position: absolute;
  top: -110px;
  right: -110px;
  width: 250px;
  height: 250px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(210, 10, 91, 0.12), transparent 68%);
  pointer-events: none;
}

.promise-card:hover {
  transform: translateY(-8px);
  border-color: rgba(210, 10, 91, 0.2);
  box-shadow: 0 30px 70px rgba(20, 47, 39, 0.09);
}

.promise-card-top {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 34px;
}

.promise-number {
  width: 58px;
  height: 58px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: var(--ps-green);
  background: var(--ps-mint-light);
  font-family: "Playfair Display", serif;
  font-size: 22px;
  font-style: italic;
  font-weight: 500;
  letter-spacing: -0.02em;
}

.promise-icon {
  width: 64px;
  height: 64px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: var(--ps-green-dark);
  background: var(--ps-mint);
  transition: transform 0.4s cubic-bezier(0.2, 0.8, 0.2, 1), background 0.4s ease;
}

.promise-icon svg { width: 24px; height: 24px; stroke-width: 1.7; }

.promise-card:hover .promise-icon {
  transform: rotate(-5deg) scale(1.06);
  background: #fce4ee;
}

.promise-card-content {
  position: relative;
  z-index: 2;
}

.promise-card-content h3 {
  margin: 0 0 18px;
  font-family: "Playfair Display", serif;
  font-size: clamp(24px, 2vw, 32px);
  line-height: 1.1;
  letter-spacing: -0.03em;
  font-weight: 400;
  color: var(--ps-text);
}

.promise-card-content h3 span { display: block; }

.promise-card-content p {
  max-width: 390px;
  margin: 0;
  font-family: "Manrope", sans-serif;
  color: var(--ps-muted);
  font-size: 13px;
  line-height: 1.7;
}

/* Result strip */

.promise-result {
  position: relative;
  z-index: 2;
  width: 100%;
  min-height: 54px;
  margin-top: auto;
  padding: 10px 15px;
  display: flex;
  align-items: center;
  gap: 12px;
  border-radius: 14px;
  color: var(--ps-dark);
  background: linear-gradient(90deg, #edf7f3, #fdf1f6);
  font-family: "DM Sans", sans-serif;
  font-size: 12px;
  font-weight: 700;
}

.promise-result-check {
  flex: 0 0 auto;
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: #fff;
  background: var(--ps-green);
  box-shadow: 0 6px 15px rgba(210, 10, 91, 0.2);
}

.promise-result-check svg { width: 14px; height: 14px; stroke-width: 2.2; }

/* Reveal */

.promise-reveal {
  opacity: 0;
  transform: translateY(28px);
  transition:
    opacity 0.75s cubic-bezier(0.2, 0.8, 0.2, 1),
    transform 0.75s cubic-bezier(0.2, 0.8, 0.2, 1);
}

.promise-reveal.promise-visible {
  opacity: 1;
  transform: translateY(0);
}

/* =========================================================
   Hebammen-Netzwerk · B2B Editorial
========================================================= */

.midwife-network {
  --mn-dark: #1e0a13;
  --mn-text: #17271f;
  --mn-green: #459486;
  --mn-green-dark: #a80846;
  --mn-mint: #fce4ee;
  --mn-mint-light: #eff7f4;
  --mn-orange: #cf7858;
  --mn-muted: #74817c;
  --mn-line: rgba(18, 45, 37, 0.09);

  width: 100%;
  padding: clamp(60px, 7vw, 90px) 0;
  background: #fff;
  color: var(--mn-text);
  font-family: "DM Sans", sans-serif;
  overflow: hidden;
}

.midwife-network *,
.midwife-network *::before,
.midwife-network *::after { box-sizing: border-box; }

.midwife-network__container {
  width: min(1500px, calc(100% - 64px));
  margin: 0 auto;
}

/* Outer card */

.midwife-network__card {
  position: relative;
  padding: clamp(40px, 5vw, 68px) clamp(28px, 4vw, 68px) clamp(30px, 4vw, 42px);
  overflow: hidden;
  border: 1px solid var(--mn-line);
  border-radius: 30px;
  background: linear-gradient(135deg, #fff 0%, #fff 65%, #fbfdfc 100%);
  box-shadow: 0 20px 60px rgba(18, 45, 37, 0.045);
}

/* Top area */

.midwife-network__top {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(420px, 0.95fr);
  gap: clamp(40px, 5vw, 70px);
  align-items: center;
}

/* Content */

.midwife-network__content { max-width: 680px; }

.midwife-network__title {
  max-width: 700px;
  margin: 0;
  font-family: "Playfair Display", serif;
  font-size: clamp(42px, 4.4vw, 68px);
  font-weight: 400;
  line-height: 1;
  letter-spacing: -0.045em;
  color: var(--mn-text);
  text-wrap: balance;
}

.midwife-network__title em {
  color: var(--mn-green);
  font-style: italic;
  font-weight: 400;
}

.midwife-network__text {
  max-width: 640px;
  margin: 26px 0 0;
  font-family: "Manrope", sans-serif;
  color: var(--mn-muted);
  font-size: 15px;
  line-height: 1.7;
}

/* CTA */

.midwife-network__cta-area {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  margin-top: 30px;
}

.midwife-network__button {
  min-width: 300px;
  height: 64px;
  padding: 7px 8px 7px 26px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  border-radius: 100px;
  color: #fff;
  background: var(--mn-dark);
  text-decoration: none;
  font-family: "DM Sans", sans-serif;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.02em;
  box-shadow: 0 17px 38px rgba(17, 45, 38, 0.16);
  transition: transform 0.35s ease, box-shadow 0.35s ease, background 0.35s ease;
}

.midwife-network__button:hover {
  transform: translateY(-4px);
  background: #163a30;
  box-shadow: 0 24px 48px rgba(17, 45, 38, 0.22);
}

.midwife-network__button-icon {
  width: 50px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: var(--mn-dark);
  background: #d20a5b;
  transition: transform 0.3s ease;
}

.midwife-network__button-icon svg { width: 18px; height: 18px; }

.midwife-network__button:hover .midwife-network__button-icon { transform: translateX(3px); }

.midwife-network__cta-note {
  margin: 14px 0 0 7px;
  font-family: "DM Sans", sans-serif;
  color: #87918d;
  font-size: 11px;
  letter-spacing: 0.02em;
}

/* Visual */

.midwife-network__visual {
  position: relative;
  min-height: 400px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.midwife-network__shape {
  position: absolute;
  z-index: 0;
  background: var(--mn-mint-light);
  pointer-events: none;
}

.midwife-network__shape--one {
  width: 400px;
  height: 310px;
  right: 10px;
  top: 18px;
  border-radius: 48% 52% 43% 57% / 58% 43% 57% 42%;
  transform: rotate(13deg);
}

.midwife-network__shape--two {
  width: 260px;
  height: 240px;
  right: 5px;
  bottom: 5px;
  border-radius: 54% 46% 60% 40% / 43% 60% 40% 57%;
  background: rgba(220, 240, 234, 0.75);
  transform: rotate(-15deg);
}

.midwife-network__image {
  position: relative;
  z-index: 2;
  width: min(100%, 520px);
  height: 340px;
  overflow: hidden;
  border-radius: 46% 54% 44% 56% / 56% 43% 57% 44%;
  transform: rotate(-3deg);
  box-shadow: 0 24px 55px rgba(25, 56, 47, 0.1);
}

.midwife-network__image img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transform: scale(1.08) rotate(3deg);
  transition: transform 1s cubic-bezier(0.2, 0.8, 0.2, 1);
}

.midwife-network__visual:hover .midwife-network__image img {
  transform: scale(1.14) rotate(3deg);
}

/* Floating card */

.midwife-network__floating {
  position: absolute;
  z-index: 4;
  top: 5px;
  right: 0;
  width: 190px;
  height: 190px;
  padding: 22px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  border: 1px solid rgba(210, 10, 91, 0.08);
  border-radius: 50%;
  background: rgba(239, 247, 244, 0.96);
  box-shadow: 0 16px 45px rgba(24, 54, 45, 0.07);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

.midwife-network__floating-icon {
  margin-bottom: 12px;
  color: var(--mn-green-dark);
}

.midwife-network__floating-icon svg { width: 22px; height: 22px; stroke-width: 1.6; }

.midwife-network__floating p {
  margin: 0;
  font-family: "Playfair Display", serif;
  font-size: 16px;
  line-height: 1.25;
  color: var(--mn-text);
  font-weight: 400;
}

.midwife-network__floating p em {
  display: block;
  color: var(--mn-green-dark);
  font-style: italic;
  font-weight: 400;
}

.midwife-network__floating > span {
  width: 34px;
  height: 1px;
  margin-top: 16px;
  background: rgba(210, 10, 91, 0.55);
}

/* Benefits */

.midwife-network__benefits {
  display: grid;
  grid-template-columns: 1fr 1px 1fr 1px 1fr 1px 1fr;
  gap: 26px;
  align-items: center;
  margin-top: 60px;
  padding-top: 34px;
  border-top: 1px solid var(--mn-line);
}

.midwife-benefit {
  display: flex;
  align-items: center;
  gap: 15px;
}

.midwife-benefit__icon {
  flex: 0 0 auto;
  width: 56px;
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: var(--mn-green-dark);
  background: var(--mn-mint);
  transition: transform 0.35s ease, background 0.35s ease;
}

.midwife-benefit:hover .midwife-benefit__icon {
  transform: translateY(-3px);
  background: #fce4ee;
}

.midwife-benefit__icon svg { width: 22px; height: 22px; stroke-width: 1.7; }

.midwife-benefit__content strong,
.midwife-benefit__content span { display: block; }

.midwife-benefit__content strong {
  margin-bottom: 4px;
  font-family: "DM Sans", sans-serif;
  color: var(--mn-text);
  font-size: 12.5px;
  font-weight: 700;
}

.midwife-benefit__content span {
  max-width: 190px;
  font-family: "Manrope", sans-serif;
  color: var(--mn-muted);
  font-size: 11px;
  line-height: 1.55;
}

.midwife-network__divider {
  width: 1px;
  height: 62px;
  background: var(--mn-line);
}

/* Reveal */

.mn-reveal {
  opacity: 0;
  transform: translateY(25px);
  transition:
    opacity 0.8s cubic-bezier(0.2, 0.8, 0.2, 1),
    transform 0.8s cubic-bezier(0.2, 0.8, 0.2, 1);
}

.mn-reveal.mn-visible {
  opacity: 1;
  transform: translateY(0);
}

/* =========================================================
   FAQ · Header im Site-Design
========================================================= */

.mk-faq__header {
  max-width: 900px;
  margin: 0 auto 50px;
  text-align: center;
}

.mk-faq__title {
  margin: 0;
  font-family: "Playfair Display", serif;
  font-size: clamp(42px, 5vw, 74px);
  font-weight: 400;
  line-height: 0.98;
  letter-spacing: -0.045em;
  color: #17251f;
  text-wrap: balance;
}

.mk-faq__title em {
  display: block;
  color: #a80846;
  font-style: italic;
  font-weight: 400;
}

.mk-faq__lead {
  max-width: 620px;
  margin: 22px auto 0;
  font-family: "Manrope", sans-serif;
  color: #74817c;
  font-size: 15px;
  line-height: 1.7;
}

/* =========================================================
   Wizard · Kontaktformular (Step 5)
========================================================= */

.mk-sc-contact-step .mk-sc-form {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-top: 22px;
  margin-bottom: 24px;
}

.mk-sc-field-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.mk-sc-field {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}

.mk-sc-field > span {
  font-family: "DM Sans", sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #6b7671;
  padding-left: 2px;
}

.mk-sc-field input {
  width: 100%;
  height: 52px;
  padding: 0 18px;
  border: 1px solid rgba(24, 34, 31, 0.14);
  border-radius: 14px;
  background: #fff;
  color: #18221f;
  font-family: "Manrope", sans-serif;
  font-size: 14.5px;
  transition: border-color 0.25s ease, box-shadow 0.25s ease, background 0.25s ease;
  -webkit-appearance: none;
  appearance: none;
}

.mk-sc-field input::placeholder {
  color: #adb3af;
  font-weight: 400;
}

.mk-sc-field input:hover {
  border-color: rgba(210, 10, 91, 0.35);
}

.mk-sc-field input:focus {
  outline: none;
  border-color: #a80846;
  box-shadow: 0 0 0 3px rgba(77, 151, 139, 0.15);
  background: #fff;
}

.mk-sc-consent {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 14px 16px;
  border: 1px solid rgba(24, 34, 31, 0.08);
  border-radius: 14px;
  background: rgba(244, 248, 246, 0.5);
  cursor: pointer;
  transition: background 0.25s ease, border-color 0.25s ease;
}

.mk-sc-consent:hover {
  background: rgba(244, 248, 246, 1);
  border-color: rgba(210, 10, 91, 0.2);
}

.mk-sc-consent input[type="checkbox"] {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  accent-color: #a80846;
  cursor: pointer;
}

.mk-sc-consent > span {
  font-family: "Manrope", sans-serif;
  font-size: 12px;
  line-height: 1.55;
  color: #55605c;
}

/* =========================================================
   Wizard · Assessment Screens (4 Typen)
========================================================= */

.mk-sc-assessment {
  --a-accent: #a80846;
  --a-accent-soft: #fce4ee;
  --a-accent-bg: #fdf1f6;
  padding: 4px 0 0;
}

.mk-sc-assessment--notfall {
  --a-accent: #c02932;
  --a-accent-soft: #fbe6e7;
  --a-accent-bg: #fdf4f5;
}

.mk-sc-assessment--directcall {
  --a-accent: #a80846;
  --a-accent-soft: #fce4ee;
  --a-accent-bg: #fdf1f6;
}

.mk-sc-assessment--booking {
  --a-accent: #a80846;
  --a-accent-soft: #fce4ee;
  --a-accent-bg: #fdf1f6;
}

.mk-sc-assessment--info {
  --a-accent: #6b7671;
  --a-accent-soft: #eff2ef;
  --a-accent-bg: #f7f8f7;
}

.mk-sc-assessment-head {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 14px;
}

.mk-sc-assessment-icon {
  flex: 0 0 auto;
  width: 46px;
  height: 46px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: var(--a-accent);
  background: var(--a-accent-soft);
}

.mk-sc-assessment-icon svg { width: 22px; height: 22px; }

.mk-sc-assessment-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 12px;
  border-radius: 100px;
  background: var(--a-accent-soft);
  color: var(--a-accent);
  font-family: "DM Sans", sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.mk-sc-assessment h3 {
  margin: 0 0 10px;
  font-family: "Playfair Display", serif;
  font-size: clamp(24px, 2.4vw, 32px);
  font-weight: 400;
  line-height: 1.15;
  letter-spacing: -0.02em;
  color: #18221f;
}

.mk-sc-assessment > p {
  margin: 0 0 22px;
  font-family: "Manrope", sans-serif;
  font-size: 14.5px;
  line-height: 1.65;
  color: #55605c;
}

/* Tel-Cards für Notfall / DirectCall */

.mk-sc-tel-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-bottom: 18px;
}

.mk-sc-tel-card {
  display: grid;
  grid-template-columns: 52px 1fr 40px;
  align-items: center;
  gap: 14px;
  padding: 14px 16px;
  border: 1px solid rgba(24, 34, 31, 0.08);
  border-left: 3px solid var(--a-accent);
  border-radius: 16px;
  background: var(--a-accent-bg);
  text-decoration: none;
  color: inherit;
  transition: transform 0.25s ease, background 0.25s ease, box-shadow 0.25s ease;
}

.mk-sc-tel-card:hover {
  transform: translateY(-2px);
  background: #fff;
  box-shadow: 0 12px 28px rgba(20, 34, 30, 0.08);
}

.mk-sc-tel-icon {
  width: 52px;
  height: 52px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--a-accent);
  color: #fff;
}

.mk-sc-tel-icon svg { width: 20px; height: 20px; }

.mk-sc-tel-body {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.mk-sc-tel-body strong {
  font-family: "Playfair Display", serif;
  font-style: italic;
  font-weight: 500;
  font-size: 22px;
  letter-spacing: -0.01em;
  color: #18221f;
  line-height: 1.1;
}

.mk-sc-tel-body span {
  font-family: "DM Sans", sans-serif;
  font-size: 13px;
  font-weight: 700;
  color: #18221f;
}

.mk-sc-tel-body small {
  font-family: "DM Sans", sans-serif;
  font-size: 11px;
  color: #6b7671;
  letter-spacing: 0.02em;
}

.mk-sc-tel-arrow {
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.9);
  color: var(--a-accent);
}

.mk-sc-tel-arrow svg { width: 15px; height: 15px; }

/* Notfall-Notiz */

.mk-sc-assessment-note {
  padding: 12px 16px;
  margin-bottom: 22px;
  border-radius: 12px;
  background: rgba(192, 41, 50, 0.08);
  font-family: "DM Sans", sans-serif;
  font-size: 12.5px;
  font-weight: 700;
  color: #a02128;
  text-align: center;
  letter-spacing: 0.02em;
}

/* Toggle-Button für optionales Formular (DirectCall) */

.mk-sc-toggle-form {
  width: 100%;
  padding: 12px 16px;
  margin-bottom: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 1px solid rgba(24, 34, 31, 0.14);
  border-radius: 100px;
  background: #fff;
  color: #55605c;
  font-family: "DM Sans", sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.02em;
  cursor: pointer;
  transition: background 0.25s ease, color 0.25s ease;
}

.mk-sc-toggle-form:hover {
  background: var(--a-accent-bg);
  color: var(--a-accent);
}

.mk-sc-toggle-form svg {
  width: 14px;
  height: 14px;
  transition: transform 0.25s ease;
}

.mk-sc-toggle-form.is-open svg { transform: rotate(180deg); }

.mk-sc-optional-form {
  animation: mk-sc-fade-in 0.35s ease both;
}

.mk-sc-optional-form[hidden] { display: none; }

.mk-sc-assessment .mk-sc-optional-back .mk-sc-back {
  margin-top: 6px;
}

/* Single-Button Nav (Notfall, DirectCall Back only) */

.mk-sc-nav--single {
  display: flex;
  justify-content: flex-start;
  margin-top: 4px;
}


/* ==== @media (aus shared.css umverteilt) ==== */
@media (max-width: 880px) {
  .mk-nav-inner { grid-template-columns: auto auto; justify-content: space-between; }
  .mk-nav-capacity { display: none; }
}

@media (max-width: 1080px) {
  .mk-hero-features { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mk-hero-badge { width: 140px; height: 140px; font-size: 17px; bottom: -170px; right: -20px; }
}

@media (max-width: 900px) {
  .mk-hero {
    min-height: auto;
    background-position: center 20%;
    padding: 24px 20px 32px;
  }
  .mk-hero-overlay {
    background:
      linear-gradient(180deg, rgba(245, 243, 238, 0.94) 0%, rgba(245, 243, 238, 0.7) 40%, rgba(245, 243, 238, 0.15) 62%, rgba(245, 243, 238, 0) 76%);
  }
  .mk-hero-inner {
    grid-template-rows: auto auto auto;
    min-height: 0;
  }
  .mk-hero-main {
    grid-template-columns: 1fr;
    gap: 32px;
    margin-top: 68px;
  }
  .mk-hero-aside {
    justify-self: stretch;
    width: 100%;
    max-width: 480px;
    margin-inline: auto;
  }
  .mk-hero-badge {
    position: relative;
    bottom: auto;
    left: auto;
    margin: -30px auto 0;
  }
  
  
  
}

@media (max-width: 520px) {
  .mk-hero h1 { font-size: clamp(36px, 9vw, 46px); }
  .mk-hero-features { grid-template-columns: 1fr; }
  
}









@media (max-width: 1050px) {
  .mom-problems { padding: 100px 0; }
  .mom-problems__container { width: calc(100% - 40px); }
  .mom-problems__grid { grid-template-columns: 1fr 1fr; }
  .mom-problems__transition { grid-template-columns: 1fr; }
  .mom-problems__transition-copy {
    border-left: 0;
    border-top: 1px solid rgba(20, 63, 51, 0.1);
    padding: 20px 0 0;
  }
  .mom-problems__transition-btn { width: max-content; }
}

@media (max-width: 650px) {
  .mom-problems { padding: 72px 0; }
  .mom-problems__container { width: calc(100% - 24px); }
  .mom-problems__header { margin-bottom: 45px; }
  .mom-problems__eyebrow { font-size: 9px; }
  .mom-problems__title { font-size: clamp(38px, 11vw, 52px); }
  .mom-problems__intro p { font-size: 14.5px; }
  .mom-problems__grid { grid-template-columns: 1fr; }
  .mom-problem-card { min-height: 280px; padding: 24px; }
  .mom-problem-card h3 { font-size: 25px; }
  .mom-problems__transition { padding: 25px; }
  .mom-problems__transition-left { align-items: flex-start; }
  .mom-problems__transition-icon { width: 50px; height: 50px; }
  .mom-problems__transition-btn { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  .mp-reveal,
  .mom-problem-card { transition: none; }
}



@media (max-width: 900px) {
  .mk-stillberatung-inner { grid-template-columns: 1fr; }
  .mk-stillberatung-visual { max-width: 460px; aspect-ratio: 4/3; }
}



@media (max-width: 720px) {
  .mk-vater-inner { grid-template-columns: 1fr; text-align: center; padding: 24px; }
  .mk-vater-icon { justify-self: center; }
  .mk-vater-cta { justify-self: center; }
}

/* ================================================================
   .sos-bento — Familien-Apotheke Bento Grid (MK-only, verschoben aus sos-apotheke.css)
================================================================ */


/* =========================================================
   Bento-Section — Leistungen im Überblick
========================================================= */

.sos-bento {
  --sos-bg: #f2f2ed;
  --sos-card: #fbfcfa;
  --sos-green: #a80846;
  --sos-green-dark: #1e0a13;
  --sos-green-soft: #e5f1ec;
  --sos-text: #17231f;
  --sos-muted: #78817d;
  --sos-border: rgba(23, 35, 31, 0.075);

  position: relative;
  overflow: hidden;
  padding: clamp(70px, 8vw, 130px) 0;
  background:
    radial-gradient(circle at 8% 5%, rgba(255, 255, 255, 0.9), transparent 28%),
    radial-gradient(circle at 95% 40%, rgba(216, 231, 223, 0.75), transparent 27%),
    var(--sos-bg);
  font-family: "DM Sans", sans-serif;
  color: var(--sos-text);
}

.sos-bento *,
.sos-bento *::before,
.sos-bento *::after { box-sizing: border-box; }

.sos-bento__container {
  width: min(1420px, calc(100% - 64px));
  margin: 0 auto;
  position: relative;
  z-index: 2;
}

/* Ambient blobs */

.sos-bento__ambient {
  position: absolute;
  border-radius: 999px;
  pointer-events: none;
  filter: blur(2px);
}

.sos-bento__ambient--one {
  width: 500px;
  height: 500px;
  left: -280px;
  top: 400px;
  background: rgba(32, 106, 79, 0.08);
}

.sos-bento__ambient--two {
  width: 600px;
  height: 600px;
  right: -330px;
  bottom: 100px;
  background: rgba(255, 255, 255, 0.8);
}

/* Header */

.sos-bento__header {
  display: block;
  margin-bottom: 65px;
}

.sos-bento__intro { max-width: 850px; margin: 0 auto; }

.sos-bento__title {
  margin: 0;
  font-family: "Playfair Display", serif;
  font-size: clamp(44px, 5vw, 76px);
  line-height: 1;
  letter-spacing: -0.045em;
  font-weight: 400;
  color: var(--sos-text);
  text-wrap: balance;
}

.sos-bento__title span {
  color: var(--sos-green);
  font-style: italic;
}

.sos-bento__lead {
  max-width: 720px;
  margin: 26px 0 0;
  font-family: "Manrope", sans-serif;
  font-size: 16px;
  line-height: 1.7;
  color: var(--sos-muted);
}

.sos-bento__header-right {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 25px;
}

.sos-bento__quickcall {
  width: 100%;
  max-width: 390px;
  min-height: 82px;
  padding: 12px 14px;
  display: flex;
  align-items: center;
  gap: 15px;
  background: rgba(255, 255, 255, 0.76);
  border: 1px solid rgba(255, 255, 255, 0.9);
  border-radius: 100px;
  text-decoration: none;
  color: var(--sos-text);
  box-shadow:
    0 18px 50px rgba(32, 54, 45, 0.07),
    inset 0 1px 0 white;
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  transition: transform 0.35s cubic-bezier(0.2, 0.8, 0.2, 1), box-shadow 0.35s ease;
}

.sos-bento__quickcall:hover {
  transform: translateY(-4px);
  box-shadow: 0 25px 60px rgba(32, 54, 45, 0.12), inset 0 1px 0 white;
}

.sos-bento__quickcall-icon,
.sos-bento__quickcall-arrow {
  flex: 0 0 auto;
  width: 54px;
  height: 54px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--sos-green-soft);
  color: var(--sos-green);
}

.sos-bento__quickcall-icon svg { width: 21px; height: 21px; }

.sos-bento__quickcall-arrow {
  width: 43px;
  height: 43px;
  margin-left: auto;
}

.sos-bento__quickcall-arrow svg { width: 17px; height: 17px; }

.sos-bento__quickcall-copy {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.sos-bento__quickcall-copy strong {
  font-family: "DM Sans", sans-serif;
  font-size: 14px;
  font-weight: 700;
}

.sos-bento__quickcall-copy small {
  color: var(--sos-muted);
  font-size: 12px;
}

/* Main Grid */

.sos-bento__grid {
  display: grid;
  grid-template-columns: 1.35fr 1fr 1fr 1fr;
  grid-template-rows: 285px 315px;
  gap: 13px;
}

/* Mini services */

.sos-bento__services {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 13px;
  margin-top: 13px;
}

/* Trust bar */

.sos-bento__trust {
  min-height: 94px;
  margin-top: 13px;
  padding: 18px 20px;
  display: grid;
  grid-template-columns: 1fr 1px 1fr auto;
  gap: 25px;
  align-items: center;
  border: 1px solid rgba(255, 255, 255, 0.85);
  border-radius: 24px;
  background: rgba(239, 247, 243, 0.72);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  box-shadow:
    inset 0 1px 0 white,
    0 12px 35px rgba(34, 58, 48, 0.04);
}

/* =========================================================
   BACKGROUND-VEREINHEITLICHUNG · Unterseiten
   Alle Unterseiten-Sections bekommen #f5f3ee als Grundfarbe
========================================================= */

/* Mutter/Kind */
:is(body.page-index, body.page-mutter-kind) .mom-problems,
:is(body.page-index, body.page-mutter-kind) .sos-bento,
:is(body.page-index, body.page-mutter-kind) .kd-about,
:is(body.page-index, body.page-mutter-kind) .still-service,
:is(body.page-index, body.page-mutter-kind) .pump-compare,
:is(body.page-index, body.page-mutter-kind) .family-services,
:is(body.page-index, body.page-mutter-kind) .dna-section,
:is(body.page-index, body.page-mutter-kind) .promise-section,
:is(body.page-index, body.page-mutter-kind) .midwife-network,
:is(body.page-index, body.page-mutter-kind) .mk-faq,
:is(body.page-index, body.page-mutter-kind) .mk-scorecard-section {
  background: #f5f3ee !important;
}

/* Radiale Deko-Backgrounds unterdrücken */
:is(body.page-index, body.page-mutter-kind) .mom-problems::before,
:is(body.page-index, body.page-mutter-kind) .sos-bento::before,
:is(body.page-index, body.page-mutter-kind) .kd-about::before,
:is(body.page-index, body.page-mutter-kind) .still-service::before {
  display: none;
}

/* Pseudo-Element Backgrounds (Grain, Gradients, Deko) neutralisieren
   auf Section-Ebene — damit Sections wirklich einheitlich sind */

:is(body.page-index, body.page-mutter-kind) .hero::before,
:is(body.page-index, body.page-mutter-kind) .hero::after,
:is(body.page-index, body.page-mutter-kind) .quick-help::before,
:is(body.page-index, body.page-mutter-kind) .quick-help::after,
:is(body.page-index, body.page-mutter-kind) .same-day::before,
:is(body.page-index, body.page-mutter-kind) .same-day::after,
:is(body.page-index, body.page-mutter-kind) .services::before,
:is(body.page-index, body.page-mutter-kind) .services-section::before,
:is(body.page-index, body.page-mutter-kind) .reviews-section::before,
:is(body.page-index, body.page-mutter-kind) .journal-section::before,
:is(body.page-index, body.page-mutter-kind) .closing-section::before,
:is(body.page-index, body.page-mutter-kind) .closing-section::after,
:is(body.page-index, body.page-mutter-kind) .mom-problems::before,
:is(body.page-index, body.page-mutter-kind) .sos-bento::before,
:is(body.page-index, body.page-mutter-kind) .kd-about::before,
:is(body.page-index, body.page-mutter-kind) .still-service::before,
:is(body.page-index, body.page-mutter-kind) .sos-cases::before,
:is(body.page-index, body.page-mutter-kind) .sos-supply-section::before {
  background: transparent !important;
  background-image: none !important;
}


/* ================================================================
   .sos-mini-card + .sos-trust — Familien-Apotheke (MK-only, verschoben aus sos-apotheke.css)
================================================================ */


.sos-mini-card {
  min-height: 155px;
  position: relative;
  padding: 24px;
  display: grid;
  grid-template-columns: 48px 1fr;
  gap: 16px;
  border: 1px solid var(--sos-border);
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.7);
  box-shadow:
    0 10px 30px rgba(40, 60, 52, 0.025),
    inset 0 1px 0 white;
  transition:
    transform 0.35s cubic-bezier(0.2, 0.8, 0.2, 1),
    background 0.35s ease,
    box-shadow 0.35s ease;
}

.sos-mini-card:hover {
  transform: translateY(-5px);
  background: #fff;
  box-shadow: 0 22px 50px rgba(37, 56, 48, 0.08);
}

.sos-mini-card__icon {
  width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--sos-green-soft);
  color: var(--sos-green);
}

.sos-mini-card__icon svg { width: 19px; height: 19px; }

.sos-mini-card h4 {
  margin: 4px 25px 6px 0;
  font-family: "Playfair Display", serif;
  font-weight: 400;
  font-size: 15px;
  line-height: 1.2;
  letter-spacing: -0.015em;
  color: var(--sos-text);
}

.sos-mini-card p {
  margin: 0;
  font-family: "Manrope", sans-serif;
  font-size: 12px;
  line-height: 1.55;
  color: var(--sos-muted);
}

.sos-mini-card__arrow {
  position: absolute;
  right: 20px;
  top: 22px;
  width: 14px;
  height: 14px;
  color: #a1aaa6;
  transition: 0.3s ease;
}

.sos-mini-card:hover .sos-mini-card__arrow {
  color: var(--sos-green);
  transform: translate(2px, -2px);
}

.sos-trust-item {
  display: flex;
  align-items: center;
  gap: 15px;
}

.sos-trust-item__icon {
  flex: 0 0 auto;
  width: 47px;
  height: 47px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.75);
  color: var(--sos-green);
}

.sos-trust-item__icon svg { width: 19px; height: 19px; }

.sos-trust-item strong,
.sos-trust-item span { display: block; }

.sos-trust-item strong {
  margin-bottom: 3px;
  font-family: "DM Sans", sans-serif;
  font-size: 12.5px;
  font-weight: 700;
  color: var(--sos-text);
}

.sos-trust-item span {
  font-family: "Manrope", sans-serif;
  font-size: 11px;
  color: var(--sos-muted);
}

.sos-trust-divider {
  width: 1px;
  height: 45px;
  background: rgba(23, 35, 31, 0.1);
}

.sos-trust-cta {
  display: flex;
  align-items: center;
  gap: 14px;
  padding-left: 20px;
  font-family: "DM Sans", sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-decoration: none;
  color: var(--sos-green);
}

.sos-trust-cta span {
  width: 44px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: rgba(217, 67, 67, 0.11);
  transition: 0.3s ease;
}

.sos-trust-cta:hover span {
  background: var(--sos-green);
  color: #fff;
  transform: translateX(3px);
}

.sos-trust-cta svg { width: 17px; height: 17px; }

@media (max-width: 1100px) {
  .sos-bento { padding: 96px 0; }
  .sos-bento__container { width: min(100% - 36px, 1420px); }
  .sos-bento__header { grid-template-columns: 1fr; }
  .sos-bento__header-right { align-items: flex-start; }
  .sos-bento__grid {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto;
  }
  .sos-card { min-height: 300px; }
  .sos-card--family { grid-row: auto; min-height: 560px; }
  .sos-bento__services { grid-template-columns: 1fr 1fr; }
  .sos-bento__trust { grid-template-columns: 1fr; }
  .sos-trust-divider { width: 100%; height: 1px; }
  .sos-trust-cta { padding: 0; justify-content: space-between; }
}

@media (max-width: 680px) {
  .sos-bento { padding: 72px 0; }
  .sos-bento__container { width: calc(100% - 24px); }
  .sos-bento__header { margin-bottom: 40px; }
  .sos-bento__title { font-size: clamp(38px, 10vw, 52px); }
  .sos-bento__lead { font-size: 15px; }
  .sos-bento__quickcall { max-width: none; }
  .sos-bento__grid { display: flex; flex-direction: column; }
  .sos-card { min-height: 290px; }
  .sos-card--family { min-height: 460px; }
  .sos-card__family-content { left: 25px; right: 25px; bottom: 25px; }
  .sos-card__family-content h3 { font-size: 30px; }
  .sos-bento__services { grid-template-columns: 1fr; }
  .sos-mini-card { min-height: 135px; }
  .sos-bento__trust { padding: 20px; }
}

@media (max-width: 1100px) {
  .kd-about { padding: 100px 0; }
  .kd-about__container { width: calc(100% - 40px); }
  .kd-about__grid { grid-template-columns: 1fr; gap: 60px; }
  .kd-about__image-wrap { height: clamp(500px, 70vw, 700px); max-width: 750px; }
  .kd-about__content { max-width: 800px; }
}

@media (max-width: 680px) {
  .kd-about { padding: 72px 0; }
  .kd-about__container { width: calc(100% - 24px); }
  .kd-about__grid { gap: 48px; }
  .kd-about__image-wrap { height: 480px; border-radius: 25px; }
  .kd-about__title { font-size: clamp(38px, 10vw, 52px); margin-bottom: 26px; }
  .kd-about__copy p { font-size: 14px; }
  .kd-about__signature-row { flex-direction: column; gap: 20px; }
  .kd-about__personal-note { transform: none; }
  .kd-about__trust { grid-template-columns: 1fr; }
  .kd-trust-card { min-height: 88px; }
}

@media (prefers-reduced-motion: reduce) {
  .kd-reveal,
  .kd-about__image,
  .kd-trust-card { transition: none !important; }
}

@media (max-width: 1050px) {
  .still-service { padding: 96px 0; }
  .still-service__container { width: calc(100% - 40px); }
  .still-service__top { grid-template-columns: 1fr; gap: 50px; }
  .still-service__editorial { max-width: 600px; }
  .still-service__benefits { grid-template-columns: 1fr 1fr; }
  .still-service__contact { grid-template-columns: 1fr; gap: 32px; }
  .still-service__trust { grid-template-columns: 1fr 1fr 1fr; }
  .still-service__trust-intro { grid-column: 1 / -1; }
  .still-service__trust-line { display: none; }
}

@media (max-width: 680px) {
  .still-service { padding: 72px 0; }
  .still-service__container { width: calc(100% - 24px); }
  .still-service__top { padding-bottom: 48px; }
  .still-service__title { font-size: clamp(38px, 10vw, 52px); }
  .still-service__lead { font-size: 14.5px; }
  .still-service__benefits { grid-template-columns: 1fr; }
  .still-benefit { min-height: 260px; }
  .still-service__formats { grid-template-columns: 1fr; }
  .still-service__cta-row { display: block; }
  .still-service__cta { width: 100%; min-width: 0; }
  .still-service__trust { grid-template-columns: 1fr; gap: 20px; padding: 22px; }
  .still-service__stat {
    display: flex;
    align-items: center;
    justify-content: space-between;
    text-align: left;
    padding-top: 14px;
    border-top: 1px solid var(--ss-line);
  }
  .still-service__stat strong { margin: 0; }
}

@media (prefers-reduced-motion: reduce) {
  .ss-reveal,
  .still-benefit,
  .still-format { transition: none; }
}

@media (max-width: 1050px) {
  .family-services { padding: 96px 0 80px; }
  .family-services__container { width: calc(100% - 40px); }
  .family-services__grid { grid-template-columns: 1fr 1fr; }
  .family-card--featured { transform: none; }
  .family-card--featured.fs-reveal { transform: translateY(25px); }
  .family-card--featured.fs-visible { transform: translateY(0); }
}

@media (max-width: 680px) {
  .family-services { padding: 72px 0 60px; }
  .family-services__container { width: calc(100% - 24px); }
  .family-services__header { margin-bottom: 44px; }
  .family-services__title { font-size: clamp(38px, 10vw, 52px); }
  .family-services__intro { font-size: 14px; }
  .family-services__grid { grid-template-columns: 1fr; gap: 14px; }
  .family-card { border-radius: 22px; }
  .family-card__image { height: 240px; }
  .family-card__body { min-height: 360px; padding: 46px 24px 26px; }
  .family-card__icon { left: 22px; }
  .family-card__link { left: 24px; right: 24px; }
}

@media (prefers-reduced-motion: reduce) {
  .fs-reveal,
  .family-card,
  .family-card__image img,
  .family-card__arrow { transition: none; }
}

@media (max-width: 1050px) {
  .pump-compare { padding: 96px 0 80px; }
  .pump-compare__container { width: calc(100% - 40px); }
  .pump-compare__cell { padding: 20px; }
  .pump-compare__feature { gap: 12px; }
  .pump-compare__benefits { gap: 20px; margin-left: 0; margin-right: 0; }
}

@media (max-width: 720px) {
  .pump-compare { padding: 72px 0 60px; }
  .pump-compare__container { width: calc(100% - 24px); }
  .pump-compare__header { margin-bottom: 40px; }
  .pump-compare__title { font-size: clamp(38px, 10vw, 52px); }
  .pump-compare__subtitle { font-size: 14px; }

  .pump-compare__table { display: none; }

  .pump-compare__mobile { display: grid; gap: 10px; }

  .pump-mobile-card {
    overflow: hidden;
    border: 1px solid var(--pc-line);
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 10px 30px rgba(20, 48, 39, 0.04);
  }

  .pump-mobile-card__head {
    display: flex;
    align-items: center;
    gap: 13px;
    padding: 16px 18px;
    border-bottom: 1px solid var(--pc-line);
  }

  .pump-mobile-card__head .pump-compare__feature-icon { width: 38px; height: 38px; }
  .pump-mobile-card__head .pump-compare__feature-icon svg { width: 16px; height: 16px; }

  .pump-mobile-card__head h3 {
    margin: 0;
    font-family: "Playfair Display", serif;
    font-size: 19px;
    font-weight: 400;
    color: var(--pc-text);
  }

  .pump-mobile-card__compare {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .pump-mobile-card__compare > div {
    min-height: 110px;
    padding: 16px 18px;
  }

  .pump-mobile-card__compare > div:first-child {
    border-right: 1px solid var(--pc-line);
  }

  .pump-mobile-card__compare span {
    display: block;
    margin-bottom: 8px;
    font-family: "DM Sans", sans-serif;
    color: #929b97;
    font-size: 8px;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
  }

  .pump-mobile-card__compare p {
    margin: 0;
    font-family: "Manrope", sans-serif;
    color: var(--pc-muted);
    font-size: 12px;
    line-height: 1.5;
  }

  .pump-mobile-card__city { background: var(--pc-mint-light); }
  .pump-mobile-card__city span { color: var(--pc-green); }

  .pump-mobile-card__city strong {
    font-family: "DM Sans", sans-serif;
    color: var(--pc-green-dark);
    font-size: 12px;
    font-weight: 700;
    line-height: 1.5;
  }

  .pump-compare__benefits {
    grid-template-columns: 1fr;
    gap: 0;
    margin-top: 36px;
  }

  .pump-benefit {
    justify-content: flex-start;
    padding: 16px 0;
    border-bottom: 1px solid var(--pc-line);
  }

  .pump-benefit__divider { display: none; }
  .pump-benefit__icon { width: 50px; height: 50px; }

  .pump-compare__footer { margin-top: 36px; }
  .pump-compare__cta { width: 100%; min-width: 0; }
  .pump-compare__cta-wrap { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  .pc-reveal,
  .pump-compare__cta,
  .pump-compare__cta-arrow { transition: none; }
}

@media (max-width: 1100px) {
  .dna-section { padding: 96px 0 72px; }
  .dna-container { width: calc(100% - 40px); }
  .dna-card { grid-template-columns: 1fr 1px 0.8fr; }
  .dna-card__action { grid-column: 1 / -1; padding-top: 4px; }
  .dna-button { min-width: 280px; }
}

@media (max-width: 720px) {
  .dna-section { padding: 72px 0 60px; }
  .dna-container { width: calc(100% - 24px); }
  .dna-header { margin-bottom: 38px; }
  .dna-title { font-size: clamp(38px, 10vw, 50px); }
  .dna-intro { font-size: 14px; }
  .dna-card { display: block; min-height: 0; padding: 22px; border-radius: 20px; }
  .dna-card__main { display: block; }
  .dna-card__icon { width: 68px; height: 68px; margin-bottom: 22px; border-radius: 18px; }
  .dna-card__icon svg { width: 26px; height: 26px; }
  .dna-card__content h3 { font-size: 28px; }
  .dna-divider { width: 100%; height: 1px; margin: 26px 0; }
  .dna-benefits { gap: 12px; }
  .dna-card__action { width: 100%; }
  .dna-button { width: 100%; min-width: 0; }
}

@media (prefers-reduced-motion: reduce) {
  .dna-reveal,
  .dna-card,
  .dna-card__icon,
  .dna-button,
  .dna-button__arrow { transition: none; }
}

@media (max-width: 1050px) {
  .promise-section { padding: 96px 0 78px; }
  .promise-container { width: calc(100% - 40px); }
  .promise-grid { grid-template-columns: 1fr 1fr; }
  .promise-card:last-child { grid-column: 1 / -1; }
  .promise-card:last-child .promise-card-content p { max-width: 650px; }
}

@media (max-width: 680px) {
  .promise-section { padding: 72px 0 60px; }
  .promise-container { width: calc(100% - 24px); }
  .promise-header { margin-bottom: 42px; }
  .promise-title { font-size: clamp(38px, 10vw, 52px); }
  .promise-subtitle { font-size: 14px; }
  .promise-grid { grid-template-columns: 1fr; }
  .promise-card:last-child { grid-column: auto; }
  .promise-card { min-height: 440px; padding: 22px 22px 20px; border-radius: 20px; }
  .promise-card-top { margin-bottom: 26px; }
  .promise-number { width: 50px; height: 50px; font-size: 19px; }
  .promise-icon { width: 56px; height: 56px; }
  .promise-card-content h3 { font-size: 26px; }
}

@media (prefers-reduced-motion: reduce) {
  .promise-reveal,
  .promise-card,
  .promise-icon { transition: none; }
}

@media (max-width: 1100px) {
  .midwife-network { padding: 70px 0; }
  .midwife-network__container { width: calc(100% - 40px); }
  .midwife-network__card { padding: 50px 40px 36px; }
  .midwife-network__top { grid-template-columns: 1fr; gap: 44px; }
  .midwife-network__content { max-width: 780px; }
  .midwife-network__visual { max-width: 700px; width: 100%; margin: 0 auto; }
  .midwife-network__benefits {
    grid-template-columns: 1fr 1fr;
    gap: 0 40px;
    padding-top: 20px;
  }
  .midwife-network__divider { display: none; }
  .midwife-benefit { padding: 22px 0; border-bottom: 1px solid var(--mn-line); }
}

@media (max-width: 680px) {
  .midwife-network { padding: 56px 0; }
  .midwife-network__container { width: calc(100% - 24px); }
  .midwife-network__card { padding: 32px 22px 20px; border-radius: 22px; }
  .midwife-network__card .midwife-network__badge { margin: 0 auto 24px; }
  .midwife-network__title { font-size: clamp(38px, 10vw, 46px); }
  .midwife-network__text { font-size: 14px; }
  .midwife-network__button { width: 100%; min-width: 0; }
  .midwife-network__cta-note { align-self: center; margin: 12px 0 0; }

  .midwife-network__visual { min-height: 320px; }
  .midwife-network__image { width: 100%; height: 260px; }
  .midwife-network__shape--one { width: 280px; height: 240px; }
  .midwife-network__shape--two { width: 190px; height: 180px; }

  .midwife-network__floating {
    top: -8px;
    right: -4px;
    width: 140px;
    height: 140px;
    padding: 16px;
  }
  .midwife-network__floating p { font-size: 12px; }
  .midwife-network__floating-icon { margin-bottom: 8px; }
  .midwife-network__floating-icon svg { width: 18px; height: 18px; }
  .midwife-network__floating > span { margin-top: 10px; }

  .midwife-network__benefits { grid-template-columns: 1fr; margin-top: 32px; padding-top: 14px; }
  .midwife-benefit { padding: 18px 0; }
  .midwife-benefit__content strong { font-size: 13px; }
  .midwife-benefit__content span { max-width: none; font-size: 11.5px; }
}

@media (prefers-reduced-motion: reduce) {
  .mn-reveal,
  .midwife-network__image img,
  .midwife-network__button,
  .midwife-network__button-icon,
  .midwife-benefit__icon { transition: none; }
}

@media (max-width: 680px) {
  .mk-faq__header { margin-bottom: 36px; }
  .mk-faq__title { font-size: clamp(36px, 10vw, 48px); }
  .mk-faq__lead { font-size: 14px; }
}

@media (max-width: 620px) {
  .mk-sc-field-row { grid-template-columns: 1fr; }
  .mk-sc-field input { height: 50px; font-size: 15px; }
  .mk-sc-consent { padding: 12px 14px; }
  .mk-sc-consent > span { font-size: 11.5px; }
}

@media (max-width: 620px) {
  .mk-sc-assessment-head { flex-wrap: wrap; }
  .mk-sc-tel-card { grid-template-columns: 44px 1fr 32px; padding: 12px 14px; gap: 12px; }
  .mk-sc-tel-icon { width: 44px; height: 44px; }
  .mk-sc-tel-icon svg { width: 18px; height: 18px; }
  .mk-sc-tel-body strong { font-size: 19px; }
  .mk-sc-tel-body span { font-size: 12px; }
  .mk-sc-tel-body small { font-size: 10.5px; }
  .mk-sc-tel-arrow { width: 30px; height: 30px; }
}
