/* Family introduction: left-aligned copy with two vertically stacked points. */
/* Show the parent and child in the consultation photo; keep the clinician outside this visual crop. */
body.page-family[data-design="proposal-b"] .page-section--family-consult .section-visual-card img {
  transform: none;
  object-position: 62% center;
}

@media (max-width: 920px) {
  body.page-family[data-design="proposal-b"] .page-section--family-consult .section-visual-card img {
    transform: none;
    object-position: 62% center;
  }
}

@media (max-width: 620px) {
  body.page-family[data-design="proposal-b"] .page-section--family-consult .section-visual-card img {
    object-position: 64% center;
  }
}

/* The generated boy is composed for this panel; retain the full reassuring expression. */
body.page-family[data-design="proposal-b"] .page-section--family-gentle .section-visual-card img {
  transform: none;
  object-position: center center;
}

@media (max-width: 920px) {
  body.page-family[data-design="proposal-b"] .page-section--family-gentle .section-visual-card img {
    transform: none;
  }
}

body.page-family[data-design="proposal-b"] .page-section--family-intro .page-section__heading {
  width: 100%;
  max-width: none;
  margin-inline: 0;
  text-align: left;
}

body.page-family[data-design="proposal-b"] .page-section--family-intro .page-section__heading > p:not(.page-section__eyebrow) {
  max-width: none;
}

body.page-family[data-design="proposal-b"] .page-section--family-intro .content-grid.content-grid--two {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
  width: 100%;
  margin-top: clamp(28px, 3.5vw, 42px);
}

body.page-family[data-design="proposal-b"] .page-section--family-intro .content-card {
  width: 100%;
  min-width: 0;
  min-height: 0;
  padding: clamp(20px, 2.6vw, 28px) 0;
  border: 0;
  border-top: 1px solid rgba(69, 113, 83, 0.18);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

/* Family page: stable text-only chapters after shared treatment layout rules. */
body.page-family[data-design="proposal-b"] .page-section--family-growth,
body.page-family[data-design="proposal-b"] .page-section--family-growth:nth-of-type(odd),
body.page-family[data-design="proposal-b"] .page-section--family-growth:nth-of-type(even) {
  padding-block: clamp(72px, 8vw, 112px);
  color: #49352d;
  background:
    radial-gradient(circle at 12% 15%, rgba(214, 107, 44, 0.06), transparent 30%),
    linear-gradient(145deg, #edf4ed, #e4eee6);
}

body.page-family[data-design="proposal-b"] .page-section--family-growth .page-section__layout.page-section__layout--text-only {
  display: block;
  width: min(calc(100% - 72px), 1240px);
  max-width: 1240px;
  margin-inline: auto;
  padding: 0;
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

body.page-family[data-design="proposal-b"] .page-section--family-growth .page-section__content {
  display: block;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
  color: #49352d;
}

body.page-family[data-design="proposal-b"] .page-section--family-growth .page-section__heading {
  width: 100%;
  max-width: none;
  margin: 0;
}

body.page-family[data-design="proposal-b"] .page-section--family-growth .page-section__heading > p:not(.page-section__eyebrow) {
  max-width: none;
}

body.page-family[data-design="proposal-b"] .page-section--family-growth .page-section__eyebrow {
  color: #6b8874;
}

body.page-family[data-design="proposal-b"] .page-section--family-growth .page-section__heading :is(h2, p),
body.page-family[data-design="proposal-b"] .page-section--family-growth .content-card :is(h3, p) {
  color: #49352d;
}

body.page-family[data-design="proposal-b"] .page-section--family-growth .content-grid.content-grid--two {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(18px, 2.4vw, 28px);
  width: 100%;
  margin-top: clamp(30px, 4vw, 48px);
}

body.page-family[data-design="proposal-b"] .page-section--family-growth .content-card {
  width: 100%;
  min-width: 0;
  height: 100%;
  padding: clamp(24px, 3vw, 34px);
  box-sizing: border-box;
  border: 1px solid rgba(69, 113, 83, 0.14);
  border-radius: 6px;
  background: rgba(255, 255, 255, 0.76);
  box-shadow: 0 16px 36px rgba(42, 79, 57, 0.07);
}

body.page-family[data-design="proposal-b"] .page-section--family-support,
body.page-family[data-design="proposal-b"] .page-section--family-support:nth-of-type(odd),
body.page-family[data-design="proposal-b"] .page-section--family-support:nth-of-type(even) {
  padding-block: clamp(72px, 8vw, 112px);
  color: #49352d;
  background: #f4ecdf;
}

body.page-family[data-design="proposal-b"] .page-section--family-support .page-section__layout.page-section__layout--text-only {
  display: block;
  width: min(calc(100% - 48px), 1240px);
  max-width: 1240px;
  margin-inline: auto;
  padding: 0;
  box-sizing: border-box;
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

body.page-family[data-design="proposal-b"] .page-section--family-support .page-section__content {
  display: block;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: clamp(30px, 4.5vw, 56px);
  color: #49352d;
  box-sizing: border-box;
  border: 1px solid rgba(73, 53, 45, 0.12);
  border-radius: 12px;
  background: rgba(255, 253, 249, 0.86);
  box-shadow: 0 18px 46px rgba(45, 31, 26, 0.07);
}

body.page-family[data-design="proposal-b"] .page-section--family-support .page-section__heading {
  width: 100%;
  max-width: none;
  margin: 0;
}

body.page-family[data-design="proposal-b"] .page-section--family-support .page-section__heading > p:not(.page-section__eyebrow) {
  max-width: none;
}

body.page-family[data-design="proposal-b"] .page-section--family-support .page-section__heading :is(h2, p),
body.page-family[data-design="proposal-b"] .page-section--family-support .content-card :is(h3, p) {
  color: #49352d;
}

body.page-family[data-design="proposal-b"] .page-section--family-support .page-section__eyebrow {
  color: #6b8874;
}

body.page-family[data-design="proposal-b"] .page-section--family-support .content-grid.content-grid--two {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(16px, 2.2vw, 24px);
  width: 100%;
  margin-top: clamp(28px, 3.5vw, 42px);
}

body.page-family[data-design="proposal-b"] .page-section--family-support .content-card {
  width: 100%;
  min-width: 0;
  height: 100%;
  padding: clamp(22px, 3vw, 30px);
  box-sizing: border-box;
  border: 1px solid rgba(69, 113, 83, 0.14);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.78);
  box-shadow: 0 12px 30px rgba(45, 31, 26, 0.05);
}

@media (max-width: 900px) {
  body.page-family[data-design="proposal-b"] .page-section--family-growth .page-section__layout.page-section__layout--text-only {
    width: calc(100% - 40px);
  }
}

@media (max-width: 760px) {
  body.page-family[data-design="proposal-b"] .page-section--family-growth .content-grid.content-grid--two,
  body.page-family[data-design="proposal-b"] .page-section--family-support .content-grid.content-grid--two {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 620px) {
  body.page-family[data-design="proposal-b"] :is(.page-section--family-growth, .page-section--family-support) {
    padding-block: 42px;
  }

  body.page-family[data-design="proposal-b"] .page-section--family-growth .page-section__layout.page-section__layout--text-only {
    width: calc(100% - 24px);
    max-width: none;
    padding: 0;
  }

  body.page-family[data-design="proposal-b"] .page-section--family-support .page-section__layout.page-section__layout--text-only {
    width: calc(100% - 32px);
    padding: 0;
  }

  body.page-family[data-design="proposal-b"] .page-section--family-support .page-section__content {
    padding: 26px 20px;
  }

  body.page-family[data-design="proposal-b"] .page-section--family-support .content-grid.content-grid--two {
    grid-template-columns: 1fr;
  }
}
