.child-page-v2 {
  background: #f7f7f2;
}

.child-page-v2__body {
  padding: clamp(36px, 6vw, 84px) 0 0;
}

.child-page-v2__inner {
  width: 100%;
  padding-inline: var(--section-padding-x);
  box-sizing: border-box;
  display: grid;
  gap: clamp(28px, 5vw, 64px);
}

@media (min-width: 1024px) {
  .child-page-v2__inner {
    max-width: 1240px;
    margin: 0 auto;
    grid-template-columns: minmax(320px, 400px) minmax(0, 740px);
    align-items: start;
  }
}

@media (min-width: 1920px) {
  .child-page-v2__inner {
    max-width: 1360px;
    grid-template-columns: minmax(340px, 420px) minmax(0, 800px);
    gap: clamp(36px, 2.4vw, 68px);
  }
}

@media (min-width: 2560px) {
  .child-page-v2__inner {
    max-width: 1480px;
    grid-template-columns: minmax(360px, 460px) minmax(0, 860px);
    gap: clamp(42px, 2vw, 78px);
  }
}

.child-page-v2__toc {
  align-self: start;
  width: 100%;
  max-width: 398px;
  border-radius: 24px;
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 24px;
  backdrop-filter: blur(3px);
}

@media (min-width: 1024px) {
  .child-page-v2__toc {
    position: sticky;
    top: 118px;
    max-height: calc(100vh - 148px);
    overflow: auto;
    padding-right: 10px;
  }
}

.child-page-v2__toc-title {
  margin: 0;
  color: #4f554a;
  font-family: var(--font-display);
  font-size: clamp(24px, 2vw, 27.65px);
  line-height: 1.1;
  font-weight: 400;
}

.child-page-v2__toc-nav {
  margin-top: 0;
  display: grid;
  gap: 16px;
  width: 100%;
}

.child-page-v2__toc-link {
  display: block;
  color: #20231f;
  font: 600 16px/27.2px var(--font-secondary);
  max-width: 350px;
  text-decoration: none;
  transition: color 180ms ease;
}

.child-page-v2__toc-link.is-active {
  display: inline-flex;
  align-items: flex-start;
  gap: 8px;
  color: #5f7f2e;
}

.child-page-v2__toc-link.is-active::before {
  content: "\203A";
  font-size: 14px;
  line-height: 1.2;
  color: #5f7f2e;
  margin-top: 3px;
}

.child-page-v2__toc-link:hover,
.child-page-v2__toc-link:focus-visible {
  color: #5f7f2e;
}

.child-page-v2__sections {
  min-width: 0;
  max-width: 740px;
}

.child-page-v2__sections .content-page-h1-section,
.child-page-v2__sections .content-block {
  margin: 0;
  max-width: none;
  padding: 0 0 clamp(26px, 4vw, 42px);
}

.child-page-v2__sections .content-page-h1-section .content-block,
.child-page-v2__sections .content-page-h1-section .content-block__inner,
.child-page-v2__sections .content-block .content-block__inner {
  padding-inline: 0;
}

.child-page-v2__full-bleed {
  width: 100%;
}

.child-page-v2__full-bleed .content-block {
  margin: 0;
  max-width: none;
}

.child-page-v2__full-bleed .content-block:last-child,
.child-page-v2__full-bleed .landing-cta.reusable-cta:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
}

.child-page-v2__sections .content-block__h2 {
  margin-bottom: 16px;
  color: #4f554a;
  font-family: var(--font-display);
  font-size: clamp(36px, 3.9vw, 47.78px);
  line-height: 1.1;
  font-weight: 400;
}

.child-page-v2__sections .content-page-h1-section .content-block__h2 {
  font-size: clamp(44px, 4.8vw, 57.33px);
  line-height: 1;
}

.child-page-v2__sections .content-block__text {
  margin-bottom: 0;
  color: #20231f;
  font: 400 16px/25.6px var(--font-body);
}

.child-page-v2__sections .content-block__text h3,
.child-page-v2__sections .content-block__text h4 {
  color: #4f554a;
  font-family: var(--font-display);
}

.child-page-v2__sections .content-block__text h3 {
  margin: 18px 0 10px;
  font-size: clamp(32px, 3vw, 39.81px);
  line-height: 1.1;
  font-weight: 400;
}

.child-page-v2__sections .content-block__text h4 {
  margin: 14px 0 8px;
  font-size: clamp(28px, 2.5vw, 33.18px);
  line-height: 1.1;
  font-weight: 400;
}

.child-page-v2__sections .content-block__text p {
  margin-bottom: 16px;
}

.child-page-v2__sections .content-block__text p + p {
  margin-top: 12px;
}

.child-page-v2__sections .content-block__text ul,
.child-page-v2__sections .content-block__text ol {
  margin: 14px 0;
  padding-left: 1.75rem;
  margin-left: 0.25rem;
}

.child-page-v2__sections .content-block__text ul {
  list-style: disc;
}

.child-page-v2__sections .content-block__text ol {
  list-style: decimal;
}

.child-page-v2__sections .content-block__text li + li {
  margin-top: 6px;
}

.child-page-v2__sections .content-block__text a {
  color: #5f7f2e;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.child-page-v2__sections .content-block__text a:hover {
  text-decoration: none;
}

.child-page-v2__sections .content-block__text h5,
.child-page-v2__sections .content-block__text h6 {
  margin: 12px 0 8px;
  color: #4f554a;
  font-family: var(--font-display);
  line-height: 1.12;
  font-weight: 400;
}

.child-page-v2__sections .content-block__text h5 {
  font-size: var(--fs-h5);
}

.child-page-v2__sections .content-block__text h6 {
  font-size: var(--fs-h6);
}

.child-page-v2__sections .accordion__answer-text {
  color: #20231f;
  font: 400 16px/25.6px var(--font-body);
}

.child-page-v2__sections .accordion__answer-text ul,
.child-page-v2__sections .accordion__answer-text ol {
  margin: 12px 0;
  padding-left: 1.75rem;
  margin-left: 0.25rem;
}

.child-page-v2__sections .accordion__answer-text ul {
  list-style: disc;
}

.child-page-v2__sections .accordion__answer-text ol {
  list-style: decimal;
}

.child-page-v2__sections .accordion__answer-text li + li {
  margin-top: 6px;
}

.child-page-v2__sections .accordion__answer-text a {
  color: #5f7f2e;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.child-page-v2__sections .accordion__answer-text a:hover {
  text-decoration: none;
}

.child-page-v2__sections .accordion__answer-text h3,
.child-page-v2__sections .accordion__answer-text h4,
.child-page-v2__sections .accordion__answer-text h5,
.child-page-v2__sections .accordion__answer-text h6 {
  margin: 12px 0 8px;
  color: #4f554a;
  font-family: var(--font-display);
  line-height: 1.12;
  font-weight: 400;
}

.child-page-v2__sections .accordion__answer-text h3 {
  font-size: clamp(32px, 3vw, 39.81px);
}

.child-page-v2__sections .accordion__answer-text h4 {
  font-size: clamp(28px, 2.5vw, 33.18px);
}

.child-page-v2__sections .accordion__answer-text h5 {
  font-size: var(--fs-h5);
}

.child-page-v2__sections .accordion__answer-text h6 {
  font-size: var(--fs-h6);
}

body.page-template-content-shortcode-template-child .hero-section--about .hero-section__title {
  font-size: clamp(42px, 5vw, 68.8px);
  line-height: 1.1;
}

@media (max-width: 1023px) {
  .child-page-v2__toc {
    order: -1;
  }
}
