/* Final reference layer for live pages represented in the supplied design archive. */
footer.dto-site-footer, footer.dto-site-footer .dto-footer-links { background:#FFFFFF!important; color:#625659!important; }
footer.dto-site-footer .dto-footer-column h2 { color:#DC93A5!important; font:700 12px/1.4 "DM Sans",Arial,sans-serif!important; letter-spacing:.09em!important; }
footer.dto-site-footer .dto-footer-column a { color:#625659!important; font:400 15.5px/1.4 "DM Sans",Arial,sans-serif!important; }
:root {
  --rar-page: #FDFAF8;
  --rar-ivory: #FFFFFF;
  --rar-blush: #F8E4E8;
  --rar-border: #F0C4CD;
  --rar-rose: #DC93A5;
  --rar-heading: #625659;
  --rar-text: #625659;
  --rar-muted: #8C8285;
}

/* Courses page: exact visual language from Courses.dc.html. */
.page-courses,.editor-styles-wrapper:has(.courses-page),.courses-page{--cr-page:#FFFFFF;--cr-ivory:#FFF9FA;--cr-blush:#F8E4E8;--cr-border:#F0C4CD;--cr-rose:#DC93A5;--cr-heading:#625659;--cr-text:#625659;--cr-dark:#514649;background:var(--cr-page)!important}
.courses-page,.courses-page p,.courses-page li,.courses-page a,.courses-page button,.courses-page input,.courses-page textarea{color:var(--cr-text)!important;font-family:"DM Sans",Arial,sans-serif!important}
.courses-page :is(h1,h2,h3,h4,h5,h6),.courses-page .module strong,.courses-page .course-price,.courses-page .bundle-price{color:var(--cr-heading)!important;font-family:"EB Garamond",Georgia,serif!important;font-weight:500!important}
.courses-page :is(.band,[class*="courses-"]){background-color:var(--cr-page)!important}
.courses-page :is(.courses-featured,.courses-start,.courses-bundles,.courses-canon){background-color:var(--cr-blush)!important}
.courses-page :is(.featured-course,.module,.bundle-card,.canon-card){background-color:var(--cr-ivory)!important}
.courses-page :is(.sound-card,.stage-pill,.course-catalog-card,.trial-card),.courses-page .courses-faq details{background-color:var(--cr-blush)!important}
.courses-page :is(.eyebrow,.mini,.course-kicker,.bundle-kicker,.module strong){color:var(--cr-rose)!important}
.courses-page :is(.wp-block-button__link,.course-button){background:var(--cr-rose)!important;border-color:var(--cr-rose)!important;color:var(--cr-dark)!important}
.courses-page :is(.secondary .wp-block-button__link,.courses-faq summary){color:var(--cr-dark)!important}
.courses-page :is(.featured-course,.course-catalog-card,.bundle-card,.trial-card,.canon-card,.sound-card,.stage-pill,.module,.courses-faq details){border-color:var(--cr-border)!important}

/* Keep About parity after the shared late-loaded reference rules. */
body.page-about-me .about-me-page,
body.page-about-me .about-me-page .hero,
body.page-about-me .about-me-page .methods,
body.page-about-me .about-me-page .canon,
body.page-about-me .about-me-page .book { background:#FFFFFF !important; color:#625659 !important; font-family:"DM Sans",Arial,sans-serif !important; }
body.page-about-me .about-me-page .story,
body.page-about-me .about-me-page .boundaries,
body.page-about-me .about-me-page .offers,
body.page-about-me .about-me-page .method,
body.page-about-me .about-me-page .source { background:#F8E4E8 !important; }
body.page-about-me .about-me-page .offer { background:#FFF9FA !important; }
body.page-about-me .about-me-page :is(h1,h2,h3,h4,h5,h6) { color:#625659 !important; font-family:"EB Garamond",Georgia,serif !important; font-weight:500 !important; }

/* About page final typography and palette parity with About.dc.html. */
body.page-about-me .about-me-page .canon { max-width:1020px!important; padding:60px 40px 100px!important; }
body.page-about-me .about-me-page .canon > .inner { max-width:1020px!important; margin:0 auto!important; }
body.page-about-me .about-me-page .canon h2 { margin:0 0 12px!important; font:500 36px/1.2 "EB Garamond",Georgia,serif!important; text-align:center!important; }
body.page-about-me .about-me-page .canon .sub { margin:0 0 40px!important; font:400 16px/1.5 "DM Sans",Arial,sans-serif!important; text-align:center!important; }
body.page-about-me .about-me-page .canon .wp-block-columns { display:flex!important; gap:26px!important; margin:0 0 17px!important; }
body.page-about-me .about-me-page .canon .wp-block-column { min-width:0!important; flex:1 1 0!important; }
body.page-about-me .about-me-page .canon .source { min-height:98px!important; margin:0!important; padding:24px 28px!important; border-radius:16px!important; background:#F8E4E8!important; }
body.page-about-me .about-me-page .canon .source p:first-child { margin:0 0 12px!important; color:#DC93A5!important; font:700 12px/1.3 "DM Sans",Arial,sans-serif!important; letter-spacing:.09em!important; }
body.page-about-me .about-me-page .canon .source p+p { margin:0!important; color:#625659!important; font:400 16px/1.7 "DM Sans",Arial,sans-serif!important; }
body.page-about-me .about-me-page .canon .review { margin:34px 0 0!important; color:#625659!important; font:400 15px/1.8 "DM Sans",Arial,sans-serif!important; text-align:center!important; }
body.page-about-me .about-me-page .canon { max-width:1350px!important; padding:60px 40px 100px!important; }
body.page-about-me .about-me-page .canon > .inner { max-width:1350px!important; }
body.page-about-me .about-me-page .canon .wp-block-columns { display:grid!important; grid-template-columns:1fr 1fr!important; gap:32px!important; }
body.page-about-me .about-me-page .canon .wp-block-column { width:auto!important; flex:none!important; }
body.page-about-me .about-me-page .canon .source { padding:30px 34px!important; border-radius:18px!important; }
body.page-about-me .about-me-page .canon .source p:first-child { margin-bottom:16px!important; color:#E295A8!important; font-size:15px!important; letter-spacing:.08em!important; }
body.page-about-me .about-me-page .canon .source p+p { font-size:20px!important; line-height:1.7!important; }
body.page-about-me .about-me-page .canon .review { margin-top:44px!important; font-size:18px!important; }
/* The live About page uses page-id-672, not a page-about-me body class. */
body.page-id-672 .about-me-page .canon { width:100%!important; max-width:none!important; padding:60px 40px 100px!important; }
body.page-id-672 .about-me-page .canon > .inner { width:calc(100vw - 324px)!important; max-width:1275px!important; margin:0 auto!important; }
body.page-id-672 .about-me-page .canon .wp-block-columns { display:grid!important; grid-template-columns:1fr 1fr!important; gap:32px!important; margin:0!important; }
body.page-id-672 .about-me-page .canon .wp-block-column { min-width:0!important; width:auto!important; flex:none!important; }
body.page-id-672 .about-me-page .canon .source { min-height:163px!important; padding:30px 34px!important; border-radius:18px!important; background:#F8E4E8!important; font:400 20px/1.7 "DM Sans",Arial,sans-serif!important; }
body.page-id-672 .about-me-page .canon .source > * { color:#625659!important; font:400 20px/1.7 "DM Sans",Arial,sans-serif!important; }
body.page-id-672 .about-me-page .canon .source > :first-child { margin:0 0 16px!important; color:#E295A8!important; font:700 15px/1.3 "DM Sans",Arial,sans-serif!important; letter-spacing:.08em!important; }
body.page-id-672 .about-me-page .canon .review { margin:44px 0 0!important; color:#625659!important; font:400 18px/1.8 "DM Sans",Arial,sans-serif!important; text-align:center!important; }
@media (max-width:781px) { body.page-id-672 .about-me-page .canon > .inner { width:100%!important; } body.page-id-672 .about-me-page .canon .wp-block-columns { grid-template-columns:1fr!important; } body.page-id-672 .about-me-page .canon .source { min-height:0!important; } }
/* About original-content section: correct font families and readable scale. */
body.page-id-672 .about-me-page .boundaries { background:#F8E4E8!important; padding:60px 40px 100px!important; }
body.page-id-672 .about-me-page .boundaries > .inner { max-width:900px!important; margin:0 auto!important; }
body.page-id-672 .about-me-page .boundaries h2 { color:#625659!important; font:500 36px/1.2 "EB Garamond",Georgia,serif!important; margin:0 0 40px!important; text-align:center!important; }
body.page-id-672 .about-me-page .boundaries .boundary-list { max-width:900px!important; margin:0 auto!important; }
body.page-id-672 .about-me-page .boundaries .boundary { background:#FFF9FA!important; border-radius:16px!important; margin:0 0 16px!important; padding:24px 28px!important; color:#625659!important; font:400 16px/1.7 "DM Sans",Arial,sans-serif!important; }
body.page-id-672 .about-me-page .boundaries .boundary strong { font-family:"DM Sans",Arial,sans-serif!important; font-weight:700!important; }
@media (max-width:781px) { body.page-id-672 .about-me-page .boundaries { padding:60px 22px 72px!important; } body.page-id-672 .about-me-page .boundaries h2 { font-size:32px!important; } }
/* Book section: exact reference proportions and typography. */
body.page-id-672 .about-me-page .book { max-width:none!important; padding:96px 40px 100px!important; background:#FFFFFF!important; text-align:center!important; }
body.page-id-672 .about-me-page .book > .inner { max-width:900px!important; margin:0 auto!important; }
body.page-id-672 .about-me-page .book h2 { margin:0 0 24px!important; color:#625659!important; font:500 36px/1.2 "EB Garamond",Georgia,serif!important; }
body.page-id-672 .about-me-page .book-copy { max-width:720px!important; margin:0 auto 34px!important; color:#625659!important; font:400 17px/1.8 "DM Sans",Arial,sans-serif!important; }
body.page-id-672 .about-me-page .signup { display:flex!important; align-items:center!important; justify-content:center!important; gap:18px!important; max-width:none!important; margin:0 auto!important; }
body.page-id-672 .about-me-page .signup .email { width:330px!important; min-width:0!important; margin:0!important; padding:15px 26px!important; border:0!important; border-radius:999px!important; background:#F8E4E8!important; color:#514649!important; font:400 15px/1.4 "DM Sans",Arial,sans-serif!important; }
body.page-id-672 .about-me-page .signup .email::placeholder { color:#C2A5A5!important; opacity:1!important; }
body.page-id-672 .about-me-page .signup .wp-block-button__link { min-width:0!important; margin:0!important; padding:15px 30px!important; border:0!important; border-radius:999px!important; background:#DC93A5!important; color:#514649!important; font:700 15px/1.4 "DM Sans",Arial,sans-serif!important; }
body.page-id-672 .about-me-page .about-book-signup { display:flex!important; align-items:center!important; justify-content:center!important; gap:18px!important; margin:0 auto!important; }
body.page-id-672 .about-me-page .about-book-signup input { width:330px!important; padding:15px 26px!important; border:0!important; border-radius:999px!important; background:#F8E4E8!important; color:#514649!important; font:400 15px/1.4 "DM Sans",Arial,sans-serif!important; }
body.page-id-672 .about-me-page .about-book-signup input::placeholder { color:#C2A5A5!important; opacity:1!important; }
body.page-id-672 .about-me-page .about-book-signup button { padding:15px 30px!important; border:0!important; border-radius:999px!important; background:#DC93A5!important; color:#514649!important; font:700 15px/1.4 "DM Sans",Arial,sans-serif!important; cursor:pointer!important; }
@media (max-width:781px) { body.page-id-672 .about-me-page .book { padding:72px 22px 80px!important; } body.page-id-672 .about-me-page .signup { flex-direction:column!important; gap:14px!important; } body.page-id-672 .about-me-page .signup .email { width:100%!important; } }
@media (max-width:781px) { body.page-id-672 .about-me-page .about-book-signup { flex-direction:column!important; gap:14px!important; } body.page-id-672 .about-me-page .about-book-signup input, body.page-id-672 .about-me-page .about-book-signup button { width:100%!important; } }
body.page-about-me .about-me-page .canon { width:100%!important; max-width:none!important; }
body.page-about-me .about-me-page .canon > .inner { width:calc(100vw - 324px)!important; max-width:1275px!important; }
body.page-about-me .about-me-page .canon .source { min-height:163px!important; padding:30px 34px!important; font:400 20px/1.7 "DM Sans",Arial,sans-serif!important; }
body.page-about-me .about-me-page .canon .source > * { color:#625659!important; font:400 20px/1.7 "DM Sans",Arial,sans-serif!important; }
body.page-about-me .about-me-page .canon .source > :first-child { margin:0 0 16px!important; color:#E295A8!important; font:700 15px/1.3 "DM Sans",Arial,sans-serif!important; letter-spacing:.08em!important; }
body.page-about-me .about-me-page .canon .source > :last-child { margin:0!important; }
@media (max-width:781px) { body.page-about-me .about-me-page .canon > .inner { width:100%!important; } body.page-about-me .about-me-page .canon .source { min-height:0!important; } }
@media (max-width:781px) { body.page-about-me .about-me-page .canon { padding:60px 22px 72px!important; } body.page-about-me .about-me-page .canon .wp-block-columns { grid-template-columns:1fr!important; gap:20px!important; } }
body.page-about-me .about-me-page {
  background: #FFFFFF !important;
  color: #625659 !important;
  font-family: "DM Sans", Arial, sans-serif !important;
  font-size: 16px !important;
  line-height: 1.7 !important;
}
body.page-about-me .about-me-page :is(h1, h2, h3, h4, h5, h6) {
  color: #625659 !important;
  font-family: "EB Garamond", Georgia, serif !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
}
body.page-about-me .about-me-page :is(p, li, a, label, input, button, .wp-block-button__link) {
  font-family: "DM Sans", Arial, sans-serif !important;
}
body.page-about-me .about-me-page :is(.hero, .methods, .canon, .book) { background: #FFFFFF !important; }
body.page-about-me .about-me-page :is(.story, .boundaries, .offers, .method, .source) { background: #F8E4E8 !important; }
body.page-about-me .about-me-page .offer { background: #FFF9FA !important; }
body.page-about-me .about-me-page :is(.hero-copy, .story-copy, .method p, .source p, .offer p) { color: #625659 !important; }
body.page-about-me .about-me-page :is(.sub, .credentials, .note, .review) { color: #837B77 !important; }
body.page-about-me .about-me-page :is(.wp-block-button__link, button, input[type="submit"]) { background: #DC93A5 !important; border-color: #DC93A5 !important; color: #514649 !important; }
body.page-about-me .about-me-page :is(.secondary, .outline) .wp-block-button__link { background: transparent !important; border-color: #F0C4CD !important; color: #514649 !important; }

:is(
  .reference-homepage,
  .about-me-page,
  .courses-page,
  .faq-page,
  .groups-page,
  .individual-therapy-page,
  .partners-page,
  .start-intake-page,
  .workbooks-page,
  .policy-page
) {
  --cream: var(--rar-page);
  --page: var(--rar-page);
  --bg: var(--rar-page);
  --soft: var(--rar-blush);
  --pink: var(--rar-blush);
  --card: var(--rar-blush);
  --panel: var(--rar-border);
  --line: var(--rar-border);
  --rose: var(--rar-rose);
  --accent: var(--rar-rose);
  --ink: var(--rar-heading);
  --heading: var(--rar-heading);
  --text: var(--rar-text);
  --body: var(--rar-text);
  --muted: var(--rar-muted);
  background-color: var(--rar-page) !important;
  color: var(--rar-text) !important;
  font-family: "Inter", Arial, sans-serif !important;
  -webkit-font-smoothing: antialiased;
}

:is(
  .reference-homepage,
  .about-me-page,
  .courses-page,
  .faq-page,
  .groups-page,
  .individual-therapy-page,
  .partners-page,
  .start-intake-page,
  .workbooks-page,
  .policy-page
) :is(h1, h2, h3, h4, h5, h6) {
  color: var(--rar-heading) !important;
  font-family: "Cormorant Garamond", Georgia, serif !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
}

:is(
  .reference-homepage,
  .about-me-page,
  .courses-page,
  .faq-page,
  .groups-page,
  .individual-therapy-page,
  .partners-page,
  .start-intake-page,
  .workbooks-page,
  .policy-page
) :is(p, li, summary, label, input, textarea, select, button, a) {
  font-family: "Inter", Arial, sans-serif !important;
}

:is(
  .reference-homepage,
  .about-me-page,
  .courses-page,
  .faq-page,
  .groups-page,
  .individual-therapy-page,
  .partners-page,
  .start-intake-page,
  .workbooks-page,
  .policy-page
) :is(p, li):not(.has-text-color) {
  color: var(--rar-text);
}

:is(
  .reference-homepage,
  .about-me-page,
  .courses-page,
  .faq-page,
  .groups-page,
  .individual-therapy-page,
  .partners-page,
  .start-intake-page,
  .workbooks-page,
  .policy-page
) :is(.eyebrow, [class*="eyebrow"], [class*="kicker"], [class*="label"]) {
  color: var(--rar-rose) !important;
  font-family: "Inter", Arial, sans-serif !important;
  font-weight: 600 !important;
  letter-spacing: .1em !important;
  text-transform: uppercase;
}

:is(
  .reference-homepage,
  .about-me-page,
  .courses-page,
  .faq-page,
  .groups-page,
  .individual-therapy-page,
  .partners-page,
  .start-intake-page,
  .workbooks-page,
  .policy-page
) :is(.wp-block-button__link, .wp-element-button, button[type="submit"], input[type="submit"], .library-button, .course-button) {
  border-color: var(--rar-rose) !important;
  border-radius: 999px !important;
  font-family: "Inter", Arial, sans-serif !important;
  font-weight: 600 !important;
}

/* Homepage */
.reference-homepage {
  --cream: #FCF9F9 !important;
  --soft: #F8E7E7 !important;
  --rose: #C98B8B !important;
  --ink: #8A6A6A !important;
  --body: #4F4747 !important;
  --muted: #8A8080 !important;
}

.reference-homepage .home-band {
  padding-block: 80px !important;
}

.reference-homepage h1 {
  font-size: clamp(38px, 4vw, 50px) !important;
  line-height: 1.28 !important;
}

.reference-homepage h2 {
  font-size: clamp(28px, 3vw, 38px) !important;
}

/* About */
.about-me-page {
  --about-bg: #FCF9F9 !important;
  --about-soft: #F8E7E7 !important;
  --about-rose: #C98B8B !important;
  --about-ink: #8A6A6A !important;
  --about-text: #4F4747 !important;
}

.about-me-page h1 {
  font-size: 40px !important;
  line-height: 1.2 !important;
}

/* About design: typography and buttons only. */
.about-me-page {
  color: #4F4747 !important;
  font-family: "Inter", Arial, sans-serif !important;
  font-size: 14.5px !important;
  line-height: 1.65 !important;
}

.about-me-page :is(h1, h2, h3) {
  color: #8A6A6A !important;
  font-family: "Cormorant Garamond", Georgia, serif !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
}

.about-me-page .story h2 {
  font-size: 26px !important;
}

.about-me-page :is(.methods, .canon, .offers) h2 {
  font-size: 27px !important;
}

.about-me-page .book h2 {
  font-size: 25px !important;
}

.about-me-page .method h3 {
  font-size: 20px !important;
}

.about-me-page .offer h3 {
  font-size: 19px !important;
}

.about-me-page .hero-copy {
  font-size: 15.5px !important;
  line-height: 1.7 !important;
}

.about-me-page .credentials {
  color: #8A8080 !important;
  font-size: 13px !important;
}

.about-me-page .wp-block-button__link {
  min-height: 0 !important;
  border: 1.5px solid #C98B8B !important;
  border-radius: 999px !important;
  font-family: "Inter", Arial, sans-serif !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  text-decoration: none !important;
}

.about-me-page .primary > .wp-block-button__link {
  padding: 14px 28px !important;
  background: #C98B8B !important;
  color: #FBF7F2 !important;
}

.about-me-page .secondary > .wp-block-button__link {
  padding: 12.5px 26px !important;
  background: transparent !important;
  color: #8A6A6A !important;
}

.about-me-page .offer .wp-block-button__link {
  padding: 11px 20px !important;
  background: #C98B8B !important;
  color: #FBF7F2 !important;
  font-size: 13px !important;
}

.about-me-page .signup .wp-block-button__link {
  padding: 13px 22px !important;
  background: #C98B8B !important;
  color: #FBF7F2 !important;
  font-size: 13.5px !important;
}

@media (max-width: 700px) {
  .about-me-page h1 {
    font-size: 34px !important;
  }
}

/* Homepage footer parity from Homepage.dc.html. */
body.home .home-feelings { background:#F8E4E8 !important; padding:92px 40px !important; }
body.home .reference-homepage .home-feelings.home-band { background:#F8E4E8 !important; }
body.home .home-feelings .home-inner { max-width:1020px !important; }
body.home .home-feelings h2 { font-size:36px !important; margin:0 0 40px !important; text-align:center !important; }
body.home .reference-feelings-list { display:flex; flex-direction:column; gap:20px; }
body.home .reference-feelings-list p { background:#FFF9FA !important; border-radius:16px !important; margin:0 !important; padding:22px 28px !important; font-size:16px !important; line-height:1.7 !important; }
body.home .reference-feelings-close { color:#514649 !important; font-size:16px !important; font-weight:700 !important; margin:34px 0 0 !important; text-align:center !important; }
body.home .reference-feelings-credentials { display:flex; justify-content:center; gap:16px; margin-top:60px; }
body.home .reference-feelings-credentials span { background:#FFF9FA; border-radius:999px; color:#514649; font:500 14px/1.4 "DM Sans",sans-serif; padding:11px 24px; }
@media (max-width:781px) { body.home .home-feelings { padding:60px 20px !important; } body.home .reference-feelings-credentials { flex-wrap:wrap; gap:10px; margin-top:40px; } }
.dto-site-footer { background:#FFF9FA !important; color:#625659 !important; }
.dto-footer-links { background:#FFF9FA !important; padding:56px 40px 64px !important; }
.dto-footer-grid { display:grid !important; grid-template-columns:repeat(4,minmax(0,1fr)) !important; gap:40px !important; max-width:1350px !important; margin:0 auto !important; }
.dto-footer-column h2 { color:#DC93A5 !important; font-family:"DM Sans",sans-serif !important; font-size:12px !important; font-weight:700 !important; letter-spacing:.09em !important; line-height:1.2 !important; margin:0 0 18px !important; text-transform:uppercase !important; }
.dto-footer-list { display:flex !important; flex-direction:column !important; gap:12px !important; margin:0 !important; padding:0 !important; }
.dto-footer-list li,.dto-footer-list a { color:#625659 !important; font-family:"DM Sans",sans-serif !important; font-size:15.5px !important; line-height:1.4 !important; margin:0 !important; }
.dto-footer-list a:hover { color:#DC93A5 !important; }
.dto-site-footer .dto-footer-list a { color:#625659 !important; }
:is(.dto-free-course-banner,.free-course-banner) { background:#514649 !important; padding:18px 40px !important; }
@media (max-width:781px) { .dto-footer-links { padding:46px 20px 52px !important; } .dto-footer-grid { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:32px 24px !important; } }

/* Courses */
.courses-page {
  --cream: #FCF9F9 !important;
  --soft: #F8E7E7 !important;
  --card: #F8E7E7 !important;
  --rose: #C98B8B !important;
  --ink: #8A6A6A !important;
  --body: #4F4747 !important;
  --muted: #8A8080 !important;
}

.courses-page h1 {
  font-size: 38px !important;
  line-height: 1.28 !important;
}

.courses-page h2 {
  font-size: 29px !important;
}

.courses-page :is(.band, [class*="courses-"]) {
  scroll-margin-top: 40px;
}

/* FAQ */
.faq-page {
  --cream: #FCF9F9 !important;
  --pink: #F8E7E7 !important;
  --card: #F8E7E7 !important;
  --line: #EBC9C9 !important;
  --rose: #C98B8B !important;
  --ink: #8A6A6A !important;
  --body: #4F4747 !important;
}

.faq-page h1 {
  font-size: 38px !important;
  line-height: 1.28 !important;
}

.faq-page details {
  background: var(--rar-blush) !important;
  border-color: var(--rar-border) !important;
  border-radius: 14px !important;
}

.faq-page summary {
  color: var(--rar-heading) !important;
  font-size: 14.5px !important;
  font-weight: 600 !important;
}

/* Groups */
.groups-page {
  --cream: #FCF9F9 !important;
  --soft: #F8E7E7 !important;
  --card: #F8E7E7 !important;
  --rose: #C98B8B !important;
  --ink: #8A6A6A !important;
  --body: #4F4747 !important;
  --muted: #8A8080 !important;
}

.groups-page h1 {
  font-size: 38px !important;
  line-height: 1.28 !important;
}

/* Individual Therapy and Partners share the clinical page scale. */
:is(.individual-therapy-page, .partners-page) {
  --cream: #FCF9F9 !important;
  --soft: #F8E7E7 !important;
  --card: #F8E7E7 !important;
  --rose: #C98B8B !important;
  --ink: #8A6A6A !important;
  --body: #4F4747 !important;
  --muted: #8A8080 !important;
}

:is(.individual-therapy-page, .partners-page) h1 {
  font-size: 38px !important;
  line-height: 1.28 !important;
}

:is(.individual-therapy-page, .partners-page) :is(.individual-band, .partners-band) {
  padding-block: 88px !important;
}

/* Start Intake */
.start-intake-page {
  --si-bg: #FCF9F9 !important;
  --si-card: #FBF7F2 !important;
  --si-rose: #C98B8B !important;
  --si-ink: #4F4747 !important;
  --si-line: #EBC9C9 !important;
  --si-soft: #F8E7E7 !important;
}

.start-intake-page h1 {
  color: var(--rar-heading) !important;
  font-size: 38px !important;
  line-height: 1.28 !important;
}

.start-intake-page :is(.si-path-card, .si-form-card, .si-help) {
  background: var(--rar-ivory) !important;
  border-color: var(--rar-border) !important;
}

/* Workbooks */
.workbooks-page {
  --cream: #FCF9F9 !important;
  --soft: #F8E7E7 !important;
  --card: #F8E7E7 !important;
  --rose: #C98B8B !important;
  --ink: #8A6A6A !important;
  --body: #4F4747 !important;
  --muted: #8A8080 !important;
}

.workbooks-page h1 {
  font-size: 44px !important;
  line-height: 1.2 !important;
}

.workbooks-page .workbook-library-card {
  border-radius: 20px !important;
}

@media (max-width: 640px) {
  .workbooks-page h1 {
    font-size: 36px !important;
  }
}

/* All supplied legal-policy page designs use the same centered card system. */
.policy-page {
  background: var(--rar-page) !important;
  padding: 72px 24px 88px !important;
}

.policy-page .policy-inner {
  max-width: 900px !important;
}

.policy-page h1 {
  color: var(--rar-heading) !important;
  font-size: 38px !important;
  line-height: 1.28 !important;
}

.policy-page h2 {
  color: var(--rar-heading) !important;
  font-size: 22px !important;
}

.policy-page :is(.policy-card, .contact) {
  background: var(--rar-blush) !important;
  border-color: var(--rar-border) !important;
  border-radius: 16px !important;
  padding: 28px 30px !important;
}

.policy-page :is(.updated, .intro) {
  color: var(--rar-muted) !important;
}

/* Bundle Checkout design mapped to the live WooCommerce checkout page. */
body.page-id-762 main,
body.page-id-762 .wp-block-post-content {
  background: var(--rar-page) !important;
}

body.page-id-762 :is(.wc-block-checkout, .woocommerce-checkout) {
  color: var(--rar-text) !important;
  font-family: "Inter", Arial, sans-serif !important;
  margin-inline: auto !important;
  max-width: 1080px !important;
  padding-block: 72px 88px !important;
}

body.page-id-762 :is(h1, h2, h3) {
  color: var(--rar-heading) !important;
  font-family: "Cormorant Garamond", Georgia, serif !important;
  font-weight: 600 !important;
}

body.page-id-762 :is(.wc-block-components-sidebar, .wc-block-components-main, .woocommerce-checkout-review-order) {
  background: var(--rar-ivory) !important;
  border-color: var(--rar-border) !important;
  border-radius: 16px !important;
}

body.page-id-762 :is(input, select, textarea) {
  border-color: var(--rar-border) !important;
  color: var(--rar-text) !important;
  font-family: "Inter", Arial, sans-serif !important;
}

body.page-id-762 :is(.wc-block-components-button, #place_order) {
  background: var(--rar-rose) !important;
  border: 1px solid var(--rar-rose) !important;
  border-radius: 999px !important;
  color: var(--rar-ivory) !important;
  font-family: "Inter", Arial, sans-serif !important;
  font-weight: 600 !important;
}

@media (max-width: 781px) {
  .reference-homepage .home-band,
  :is(.individual-therapy-page, .partners-page) :is(.individual-band, .partners-band) {
    padding-block: 60px !important;
  }

  :is(
    .reference-homepage,
    .about-me-page,
    .courses-page,
    .faq-page,
    .groups-page,
    .individual-therapy-page,
    .partners-page,
    .start-intake-page,
    .workbooks-page,
    .policy-page
  ) h1 {
    font-size: 32px !important;
  }

  .policy-page {
    padding: 52px 20px 68px !important;
  }
}

/* Homepage reference image above “You searched for a reason”. */
body.home .reference-homepage .home-reasons { padding:100px 40px !important; text-align:center !important; }
body.home .reference-homepage .home-reasons.home-band { background:#FFFFFF !important; }
body.home .reference-homepage .home-reasons::before { content:""; display:block; width:100%; max-width:1000px; height:260px; margin:0 auto 46px; border-radius:20px; background:url("/wp-content/themes/ollie-child/assets/images/homepage-reference/02-plant-shadows-wide.png") center/cover no-repeat; }
body.home .reference-homepage .home-reasons h2 { font-size:38px !important; margin-bottom:24px !important; }
body.home .reference-homepage .home-reasons p { font-size:17px !important; line-height:1.8 !important; margin:0 auto !important; max-width:840px !important; }

/* Front-end fallback selectors: WordPress puts the page slug on <body>,
   while some templates do not add the matching design wrapper to content. */
body:is(.page-about-me, .page-courses, .page-faq, .page-groups,
        .page-individual-therapy, .page-partners, .page-workbooks,
        .page-start-intake, .page-start-intake-2, .page-recovery-room,
        .policy-blank-page) {
  background: #FDFAF8 !important;
}

body:is(.page-about-me, .page-courses, .page-faq, .page-groups,
        .page-individual-therapy, .page-partners, .page-workbooks,
        .page-start-intake, .page-start-intake-2, .page-recovery-room,
        .policy-blank-page) .wp-block-post-content {
  background: #FDFAF8 !important;
  margin: 0 !important;
  padding: 0 !important;
}

body:is(.page-about-me, .page-courses, .page-faq, .page-groups,
        .page-individual-therapy, .page-partners, .page-workbooks,
        .page-start-intake, .page-start-intake-2, .page-recovery-room,
        .policy-blank-page) :is(.wp-block-button__link, .wp-element-button,
        button[type="submit"], input[type="submit"]) {
  background: #DC93A5 !important;
  border: 1px solid #DC93A5 !important;
  border-radius: 999px !important;
  color: #514649 !important;
  padding: 14px 28px !important;
}

body:is(.page-about-me, .page-courses, .page-faq, .page-groups,
        .page-individual-therapy, .page-partners, .page-workbooks,
        .page-start-intake, .page-start-intake-2, .page-recovery-room,
        .policy-blank-page) :is(.is-style-outline, .secondary,
        .outline) :is(.wp-block-button__link, .wp-element-button) {
  background: #FFFFFF !important;
  border-color: #F0C4CD !important;
  color: #625659 !important;
}

/* Reference parity pass: the supplied page designs use white canvases,
   DM Sans for copy, and EB Garamond for display headings. */
body {
  background-color: #FFFFFF !important;
  color: #625659 !important;
  font-family: "DM Sans", Arial, sans-serif !important;
}

body.home,
body.home .wp-site-blocks,
body.home .site-content {
  background-color: #FFFFFF !important;
}

body :is(.wp-site-blocks, .site-content, .wp-block-post-content, main) {
  background-color: #FFFFFF !important;
}

body :is(p, li, label, input, textarea, select, button, a,
  .wp-block-navigation, .wp-block-button__link, .wp-element-button) {
  font-family: "DM Sans", Arial, sans-serif !important;
}

body :is(h1, h2, h3, h4, h5, h6),
body :is(h1, h2, h3, h4, h5, h6) * {
  font-family: "EB Garamond", Georgia, serif !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
}

body :is(a, .wp-block-navigation a) {
  color: #DC93A5 !important;
}

body :is(.wp-block-button__link, .wp-element-button, button[type="submit"], input[type="submit"]) {
  font-family: "DM Sans", Arial, sans-serif !important;
  background: #DC93A5 !important;
  border-color: #F0C4CD !important;
  color: #514649 !important;
}

body :is(.library-button, .course-button, .si-submit, .start-intake-button) {
  background: #DC93A5 !important;
  border: 1px solid #DC93A5 !important;
  color: #514649 !important;
  font-family: "DM Sans", Arial, sans-serif !important;
}

body.page-id-700 .library-button,
body.page-id-700 .library-button:hover {
  background: #DC93A5 !important;
  border-color: #DC93A5 !important;
  color: #514649 !important;
  font-family: "DM Sans", Arial, sans-serif !important;
}

/* Homepage workbook cards: restore readable text for both CTA variants. */
body.home .workbook-button {
  background: #FFFAF7 !important;
  border: 1px solid #DC93A5 !important;
  color: #DC93A5 !important;
  font-family: "DM Sans", Arial, sans-serif !important;
}

body.home .dynamic-workbook-card:first-child .workbook-button {
  background: #DC93A5 !important;
  border-color: #DC93A5 !important;
  color: #514649 !important;
}

/* Homepage.dc.html exact visual tokens and type scale. */
body.home {
  --home-bg: #FFFFFF;
  --home-cream: #FDFAF8;
  --home-blush: #F8E4E8;
  --home-card: #FFF9FA;
  --home-border: #F0C4CD;
  --home-rose: #DC93A5;
  --home-ink: #625659;
  --home-dark: #514649;
  background: var(--home-bg) !important;
  color: var(--home-ink) !important;
  font-family: "DM Sans", sans-serif !important;
}

body.home :is(.wp-site-blocks, .site-content, .wp-block-post-content) {
  background: var(--home-bg) !important;
  color: var(--home-ink) !important;
}

body.home .site-header {
  background: var(--home-bg) !important;
  border-color: var(--home-border) !important;
}

body.home :is(h1, h2, h3, h4, h5, h6) {
  color: var(--home-ink) !important;
  font-family: "EB Garamond", Georgia, serif !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
}

body.home h1 {
  font-size: 52px !important;
  line-height: 1.18 !important;
}

body.home .home-hero .home-inner.narrow {
  max-width: 1000px !important;
  width: min(100%, 1000px) !important;
}

body.home .home-hero h1 {
  max-width: 1000px !important;
  margin-bottom: 26px !important;
}

body.home .home-hero h1 + p {
  max-width: 790px !important;
  margin-bottom: 36px !important;
}

body.home :is(p, li, label, input, textarea, select, button, a) {
  color: var(--home-ink);
  font-family: "DM Sans", sans-serif !important;
}

body.home :is(a, .wp-block-navigation a) {
  color: var(--home-rose) !important;
}

body.home :is(.wp-block-button__link, .wp-element-button, .workbook-button) {
  border-radius: 999px !important;
  font-family: "DM Sans", sans-serif !important;
  font-weight: 700 !important;
}

body.home :is(.primary .wp-block-button__link, .wp-block-button.is-style-fill .wp-block-button__link) {
  background: var(--home-rose) !important;
  border-color: var(--home-rose) !important;
  color: var(--home-dark) !important;
}

body.home .hero-actions > .wp-block-button:first-child .wp-block-button__link {
  background: var(--home-rose) !important;
  border-color: var(--home-rose) !important;
  color: var(--home-dark) !important;
}

body.home .dto-header-cta .wp-block-button__link {
  background: var(--home-bg) !important;
  border-color: var(--home-border) !important;
  color: var(--home-dark) !important;
}

body.home .home-start .wp-block-button__link {
  background: var(--home-rose) !important;
  border-color: var(--home-rose) !important;
  color: var(--home-dark) !important;
}

/* Prevent legacy page styles from making any homepage CTA text invisible. */
body.home .wp-block-button__link,
body.home .wp-element-button,
body.home .workbook-button {
  color: #514649 !important;
  font-family: "DM Sans", sans-serif !important;
}

body.home .wp-block-button__link *,
body.home .workbook-button * {
  color: #514649 !important;
}

body.home a.wp-block-button__link {
  color: #514649 !important;
}

body.home .reference-homepage .workbook-button {
  color: #514649 !important;
}

body.home .reference-homepage .contact-card,
body.home .reference-homepage .contact-card a {
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
}

body.home .reference-homepage :is(.home-book, .home-book-reference) {
  padding: 96px 40px 40px !important;
  text-align: center !important;
}

body.home .reference-homepage :is(.home-book, .home-book-reference) h2 {
  font-size: 36px !important;
  margin-bottom: 24px !important;
}

body.home .reference-homepage :is(.home-book, .home-book-reference) p {
  font-size: 17px !important;
  line-height: 1.8 !important;
  margin: 0 auto 34px !important;
  max-width: 820px !important;
}

body.home .reference-homepage :is(.home-vlogs, .home-learn-reference) {
  padding: 80px 40px 100px !important;
}

body.home .reference-homepage :is(.home-vlogs, .home-learn-reference)::before {
  content: "";
  display: block;
  width: 100%;
  max-width: 1140px;
  height: 380px;
  margin: 0 auto 48px;
  border-radius: 20px;
  background: url("/wp-content/themes/ollie-child/assets/images/homepage-reference/07-recovery-lounge-wide.png") center / cover no-repeat;
}
body.home .reference-homepage :is(.home-vlogs, .home-learn-reference)::before { display:none !important; }
body.home .reference-homepage :is(.home-vlogs, .home-learn-reference) {
  background:#FFFCFA !important;
  padding:48px 40px 94px !important;
  text-align:center !important;
}
body.home .reference-homepage :is(.home-vlogs, .home-learn-reference) h2 {
  font-size:38px !important;
  margin:0 0 12px !important;
}
body.home .reference-homepage :is(.home-vlogs, .home-learn-reference) > .home-inner > p { margin:0 0 12px !important; }
body.home .reference-homepage :is(.home-vlogs, .home-learn-reference) .three-grid {
  gap:16px !important;
  margin:0 auto !important;
  max-width:1090px;
}
body.home .reference-homepage :is(.home-vlogs, .home-learn-reference) .three-grid > .wp-block-column {
  background:#F8E4E8 !important;
  border-radius:15px !important;
  min-height:118px;
  padding:24px 22px !important;
}
/* Restore the reference image above the learning-format content. */
body.home .reference-homepage :is(.home-vlogs, .home-learn-reference)::before {
  display:block !important;
  width:100%;
  max-width:1140px;
  height:280px;
  margin:0 auto 34px;
  border-radius:20px;
  background:url("/wp-content/themes/ollie-child/assets/images/homepage-reference/07-recovery-lounge-wide.png") center / cover no-repeat;
}
body.home .reference-homepage :is(.home-vlogs, .home-learn-reference):has(.homepage-win-video)::before { display:none; }
body.home .reference-homepage .homepage-win-video {
  display:block;
  width:100%;
  max-width:1140px;
  height:380px;
  margin:0 auto 48px;
  border-radius:20px;
  background:#F8E4E8;
  object-fit:cover;
}
@media(max-width:781px){body.home .reference-homepage .homepage-win-video{height:240px;margin-bottom:32px;}}

body.home .reference-homepage :is(.home-vlogs, .home-learn-reference) h2 {
  font-size: 38px !important;
  margin-bottom: 12px !important;
}

body.home .reference-homepage :is(.home-vlogs, .home-learn-reference) > .home-inner > p {
  margin-bottom: 40px !important;
}

body.home .reference-homepage :is(.home-vlogs, .home-learn-reference) .three-grid {
  gap: 26px !important;
}

body.home .reference-homepage :is(.home-vlogs, .home-learn-reference) .three-grid > .wp-block-column {
  background: #F8E4E8 !important;
  border-radius: 18px !important;
  padding: 30px 28px !important;
  text-align: center !important;
}

/* Homepage workbook covers use the supplied reference image set. */
body.home .reference-homepage .dynamic-workbook-card .workbook-cover {
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
}

body.home .reference-homepage .dynamic-workbook-card .workbook-cover.placeholder span {
  display: none !important;
}

body.home .reference-homepage .dynamic-workbook-card:nth-child(1) .workbook-cover {
  background-image: url("/wp-content/themes/ollie-child/assets/images/homepage-reference/01-monstera-hero-vertical.png") !important;
}
body.home .reference-homepage .dynamic-workbook-card:nth-child(2) .workbook-cover {
  background-image: url("/wp-content/themes/ollie-child/assets/images/homepage-reference/02-plant-shadows-wide.png") !important;
}
body.home .reference-homepage .dynamic-workbook-card:nth-child(3) .workbook-cover {
  background-image: url("/wp-content/themes/ollie-child/assets/images/homepage-reference/03-ficus-white-room-vertical.png") !important;
}
body.home .reference-homepage .dynamic-workbook-card:nth-child(4) .workbook-cover {
  background-image: url("/wp-content/themes/ollie-child/assets/images/homepage-reference/04-translucent-leaves-macro-vertical.png") !important;
}
body.home .reference-homepage .dynamic-workbook-card:nth-child(5) .workbook-cover {
  background-image: url("/wp-content/themes/ollie-child/assets/images/homepage-reference/06-philodendron-pedestal-square.png") !important;
}
body.home .reference-homepage .dynamic-workbook-card:nth-child(6) .workbook-cover {
  background-image: url("/wp-content/themes/ollie-child/assets/images/homepage-reference/07-recovery-lounge-wide.png") !important;
}
body.home .reference-homepage .dynamic-workbook-card:nth-child(7) .workbook-cover {
  background-image: url("/wp-content/themes/ollie-child/assets/images/homepage-reference/11-white-hallway-vertical.png") !important;
}

body.home .reference-homepage .dynamic-workbook-card {
  background: #F8E4E8 !important;
  border-radius: 15px !important;
  overflow: hidden !important;
}

body.home .reference-homepage .dynamic-workbook-card:not(:first-child) .workbook-button {
  background: #FFF9FA !important;
  border: 0 !important;
  color: #514649 !important;
  font-size: 12px !important;
  padding: 13px 18px !important;
}

/* Reference homepage media row: replace the live text-only video placeholder
   with the supplied reference images without rewriting saved page content. */
body.home .home-intro-video {
  display: grid !important;
  grid-template-columns: 1.7fr 1fr !important;
  gap: 20px !important;
  max-width: 1160px !important;
  min-height: 430px !important;
  margin: 56px auto 22px !important;
  padding: 0 !important;
  align-items: stretch !important;
  width: calc(100% + 160px) !important;
  margin-left: -80px !important;
}

body.home .home-intro-video::before,
body.home .home-intro-video::after {
  content: "";
  display: block;
  min-height: 430px;
  border-radius: 20px;
  background-position: center;
  background-size: cover;
}

body.home .home-intro-video::before {
  background-image: url("/wp-content/themes/ollie-child/assets/images/homepage-reference/05-blush-therapy-office-wide.png");
}

body.home .home-intro-video::after {
  background-image: url("/wp-content/themes/ollie-child/assets/images/homepage-reference/01-monstera-hero-vertical.png");
}

body.home .home-intro-video > p {
  grid-column: 1 / -1;
  display: none !important;
}
body.home .home-intro-video.has-win-video::before,
body.home .home-intro-video.has-win-video::after { display:none !important; }
body.home .home-intro-video.has-win-video { display:block !important; padding:0 !important; overflow:hidden; }
body.home .home-intro-video .homepage-hero-video {
  display:block;
  width:100%;
  height:100%;
  min-height:220px;
  border-radius:14px;
  object-fit:cover;
  background:#F8E4E8;
}

body.home .home-intro-video + .video-caption {
  max-width: 640px !important;
  margin: 0 auto !important;
  color: #625659 !important;
  font-family: "DM Sans", sans-serif !important;
  font-size: 15px !important;
  line-height: 1.7 !important;
  text-align: center !important;
}

/* Final homepage section rhythm, surfaces, and type scale from Homepage.dc.html. */
body.home .reference-homepage .home-band {
  padding: 92px 40px !important;
  background: #FFFFFF !important;
}

body.home .reference-homepage .home-hero {
  padding: 96px 40px 104px !important;
}

body.home .reference-homepage .home-band:nth-child(even),
body.home .reference-homepage .home-investment,
body.home .reference-homepage .home-email,
body.home .reference-homepage .home-reassurance {
  background: #F8E4E8 !important;
}

/* Explicit section backgrounds from the supplied Homepage reference. */
body.home .reference-homepage .home-glance,
body.home .reference-homepage .home-next,
body.home .reference-homepage .home-fit,
body.home .reference-homepage .home-contact,
body.home .reference-homepage .home-vlogs {
  background: #FFFFFF !important;
}

body.home .reference-homepage .home-investment,
body.home .reference-homepage .home-workbooks,
body.home .reference-homepage .home-closing,
body.home .reference-homepage .home-disclaimer {
  background: #F8E4E8 !important;
}

body.home .reference-homepage.home-band.home-glance,
body.home .reference-homepage.home-band.home-next,
body.home .reference-homepage.home-band.home-fit,
body.home .reference-homepage.home-band.home-vlogs,
body.home .reference-homepage.home-band.home-contact { background:#FFFFFF !important; }
body.home .reference-homepage.home-band.home-investment,
body.home .reference-homepage.home-band.home-workbooks,
body.home .reference-homepage.home-band.home-closing,
body.home .reference-homepage.home-band.home-disclaimer { background:#F8E4E8 !important; }
body.home .reference-homepage .home-glance.home-band,
body.home .reference-homepage .home-next.home-band,
body.home .reference-homepage .home-fit.home-band,
body.home .reference-homepage .home-vlogs.home-band,
body.home .reference-homepage .home-contact.home-band { background:#FFFFFF !important; }
body.home .reference-homepage .home-investment.home-band,
body.home .reference-homepage .home-workbooks.home-band,
body.home .reference-homepage .home-closing.home-band,
body.home .reference-homepage .home-disclaimer.home-band { background:#F8E4E8 !important; }

/* The disclaimer strip uses the deeper blush from the approved reference. */
body.home .reference-homepage .home-disclaimer.home-band { background:#F0C4CD !important; }

body.home .reference-homepage .home-protection {
  background:#F8E4E8 !important;
  padding:72px 40px 78px !important;
  text-align:center !important;
}
/* Soft blush treatment for the “What it will take” section. */
body.home .reference-homepage .home-next {
  background:#F8E4E8 !important;
  padding:92px 40px 100px !important;
}
body.home .reference-homepage .home-next .pill {
  background:#FFF9FA !important;
  border-radius:14px !important;
  color:#625659 !important;
  text-align:center !important;
}
body.home .reference-homepage .home-next,
body.home .reference-homepage .home-next.home-band { background:#F8E4E8 !important; }
body.home .reference-homepage .home-faq {
  background:#F8E4E8 !important;
  padding:92px 40px 100px !important;
}
body.home .reference-homepage .home-faq .home-inner {
  max-width:900px !important;
  margin:0 auto !important;
}
body.home .reference-homepage .home-faq h2 {
  margin-bottom:42px !important;
  text-align:center !important;
}
body.home .reference-homepage .home-faq .faq-list {
  display:grid;
  gap:14px;
  margin:0 auto !important;
  max-width:760px;
}
body.home .reference-homepage .home-faq .faq-card {
  background:#FFF9FA !important;
  border-radius:14px !important;
  margin:0 !important;
  padding:22px 26px !important;
  text-align:left !important;
}
body.home .reference-homepage .home-faq .faq-card h3 { margin:0 0 8px !important; }
body.home .reference-homepage .home-vlogs > .home-inner > p {
  max-width:820px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  text-align:center !important;
}
body.home .reference-homepage .home-protection h2 {
  font-size:27px !important;
  margin-bottom:34px !important;
}
body.home .reference-homepage .protection-grid {
  display:grid;
  gap:10px;
  grid-template-columns:repeat(2,minmax(0,1fr));
  margin:0 auto !important;
  max-width:640px;
}
body.home .reference-homepage .protection-grid p {
  background:#FFF9FA;
  border-radius:10px;
  color:#625659 !important;
  font-size:11px !important;
  line-height:1.5 !important;
  margin:0 !important;
  padding:14px 16px;
  text-align:left !important;
}
@media(max-width:640px){
  body.home .reference-homepage .home-protection { padding:55px 20px 60px !important; }
  body.home .reference-homepage .protection-grid { grid-template-columns:1fr; }
}

body.home .reference-homepage .home-inner {
  max-width: 1020px !important;
}

body.home .reference-homepage :is(h2, h3) {
  color: #625659 !important;
}

body.home .reference-homepage h2 {
  font-size: 38px !important;
  line-height: 1.2 !important;
  margin-bottom: 46px !important;
}

body.home .reference-homepage h3 {
  font-size: 22px !important;
  line-height: 1.25 !important;
}

body.home .reference-homepage :is(.home-card, .offer-card, .quiz-card, .email-card, .reassurance-card) {
  background: #FFF9FA !important;
  border: 0 !important;
  border-radius: 18px !important;
}

body.home .reference-homepage :is(.home-card, .offer-card) {
  padding: 26px 30px !important;
}

body.home .reference-homepage .home-glance .home-inner,
body.home .reference-homepage .scales-section {
  max-width: 1350px !important;
}

body.home .reference-homepage :is(.home-glance, .scales-section) .wp-block-table {
  margin-top: 35px !important;
}

body.home .reference-homepage :is(.home-glance, .scales-section) .wp-block-table table {
  background: #F8E4E8 !important;
  border-radius: 16px !important;
  font-size: 16px !important;
}

body.home .reference-homepage :is(.home-glance, .scales-section) .wp-block-table th {
  font-size: 13px !important;
  padding: 20px 26px !important;
}

body.home .reference-homepage :is(.home-glance, .scales-section) .wp-block-table td {
  font-size: 16px !important;
  padding: 18px 26px !important;
}

body.home .reference-homepage :is(p, li) {
  color: #625659 !important;
  font-family: "DM Sans", sans-serif !important;
  font-size: 16px !important;
  line-height: 1.7 !important;
}

body.home .reference-homepage :is(.eyebrow, [class*="kicker"], [class*="label"]) {
  color: #DC93A5 !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: .1em !important;
  line-height: 1.3 !important;
  text-transform: uppercase;
}

@media (max-width: 781px) {
  body.home .reference-homepage .home-band {
    padding: 60px 20px !important;
  }

  body.home .reference-homepage h2 {
    font-size: 32px !important;
    margin-bottom: 32px !important;
  }
}

@media (max-width: 700px) {
  body.home .home-intro-video {
    grid-template-columns: 1fr !important;
    min-height: 0 !important;
    width: 100% !important;
    margin-left: auto !important;
  }

  body.home .home-intro-video::before,
  body.home .home-intro-video::after {
    min-height: 260px;
  }
}

body.home :is(.secondary .wp-block-button__link, .wp-block-button.is-style-outline .wp-block-button__link) {
  background: var(--home-bg) !important;
  border: 1px solid var(--home-border) !important;
  color: var(--home-dark) !important;
}

body.home :is(.home-band, section) :is(.has-background, .soft-section, .section-soft) {
  background-color: var(--home-blush) !important;
}

/* Header CTA is the outlined variant in the reference. */
body .site-header :is(.wp-block-button__link, .wp-element-button) {
  background: #FFFFFF !important;
  border: 1px solid #F0C4CD !important;
  color: #514649 !important;
}

body.policy-blank-page,
body.policy-blank-page .site-content,
body.policy-blank-page .entry-content.wp-block-post-content {
  background-color: #FDFAF8 !important;
}

/* Shared reference geometry for the remaining supplied pages.  Keep this
   scoped to the page wrappers so the theme's global blocks are unaffected. */
:is(.about-me-page, .courses-page, .faq-page, .groups-page,
    .individual-therapy-page, .partners-page, .reference-homepage,
    .start-intake-page, .workbooks-page, .recovery-room,
    .recovery-room-reference-v2, .policy-page) {
  --reference-page: #FDFAF8;
  --reference-white: #FFFFFF;
  --reference-blush: #F8E4E8;
  --reference-border: #F0C4CD;
  --reference-rose: #DC93A5;
  --reference-ink: #625659;
  background-color: var(--reference-page) !important;
  color: var(--reference-ink) !important;
}

:is(.about-me-page, .courses-page, .faq-page, .groups-page,
    .individual-therapy-page, .partners-page, .reference-homepage,
    .start-intake-page, .workbooks-page, .recovery-room,
    .recovery-room-reference-v2, .policy-page) :is(section, .section, [class*="-band"]) {
  border-color: var(--reference-border);
}

:is(.about-me-page, .courses-page, .faq-page, .groups-page,
    .individual-therapy-page, .partners-page, .reference-homepage,
    .start-intake-page, .workbooks-page, .recovery-room,
    .recovery-room-reference-v2, .policy-page) :is(.soft-section, .section-soft,
    .blush-section, [class*="-soft"], [class*="-blush"]) {
  background-color: var(--reference-blush) !important;
}

:is(.about-me-page, .courses-page, .faq-page, .groups-page,
    .individual-therapy-page, .partners-page, .reference-homepage,
    .start-intake-page, .workbooks-page, .recovery-room,
    .recovery-room-reference-v2, .policy-page) :is(.wp-block-button__link,
    .wp-element-button, button[type="submit"], input[type="submit"],
    .library-button, .course-button, a[class*="button"]) {
  border-radius: 999px !important;
  border: 1px solid var(--reference-rose) !important;
  background-color: var(--reference-rose) !important;
  color: #514649 !important;
  padding: 14px 28px !important;
  line-height: 1.2 !important;
  box-shadow: none !important;
}

:is(.about-me-page, .courses-page, .faq-page, .groups-page,
    .individual-therapy-page, .partners-page, .reference-homepage,
    .start-intake-page, .workbooks-page, .recovery-room,
    .recovery-room-reference-v2, .policy-page) :is(.is-style-outline,
    .secondary, .outline, .secondary-button) :is(.wp-block-button__link,
    .wp-element-button, a[class*="button"]) {
  background-color: var(--reference-white) !important;
  color: var(--reference-ink) !important;
}

@media (max-width: 781px) {
  :is(.about-me-page, .courses-page, .faq-page, .groups-page,
      .individual-therapy-page, .partners-page, .reference-homepage,
      .start-intake-page, .workbooks-page, .recovery-room,
      .recovery-room-reference-v2, .policy-page) :is(section, .section, [class*="-band"]) {
    padding-left: 20px !important;
      padding-right: 20px !important;
  }
}

/* Final override: this reference section is a white full-width band. */
body.home .reference-homepage .home-reasons.home-band {
  background-color: #FFFFFF !important;
}

body.home .reference-homepage .home-path.home-band { background:#FFFFFF !important; padding:96px 40px 100px !important; }
body.home .reference-homepage .home-path .home-inner { max-width:1350px !important; margin:0 auto !important; }
body.home .reference-path-image { max-width:1150px; height:380px; margin:0 auto 50px; }
body.home .reference-path-image img { display:block; width:100%; height:380px; object-fit:cover; object-position:center; border-radius:20px; }
body.home .reference-homepage .home-path h2 { font:500 38px/1.2 "EB Garamond",serif !important; color:#625659 !important; text-align:center !important; margin:0 0 46px !important; }
body.home .reference-path-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; margin-top:0; }
body.home .reference-path-grid article { background:#F8E4E8; border-radius:18px; min-height:266px; padding:26px 30px; }
body.home .reference-path-grid h3 { color:#625659 !important; font:500 24px/1.2 "EB Garamond",serif !important; margin:0 0 12px !important; }
body.home .reference-path-grid strong { color:#DC93A5; display:block; font:700 15.5px/1.6 "DM Sans",sans-serif; margin:0 0 14px; }
body.home .reference-path-grid p { color:#625659 !important; font:400 16px/1.7 "DM Sans",sans-serif !important; margin:0 !important; }
@media (max-width:781px) { body.home .reference-homepage .home-path.home-band { padding:60px 20px !important; } body.home .reference-path-image,.home-path .reference-path-image img { height:240px; } body.home .reference-path-grid { grid-template-columns:1fr; } }

/* Final Courses.dc.html palette and type cascade. */
.page-courses,.courses-page{background:#FFFFFF!important}
.courses-page{--cr-page:#FFFFFF;--cr-ivory:#FFF9FA;--cr-blush:#F8E4E8;--cr-border:#F0C4CD;--cr-rose:#DC93A5;--cr-heading:#625659;--cr-text:#625659;--cr-dark:#514649;background:var(--cr-page)!important;color:var(--cr-text)!important;font-family:"DM Sans",Arial,sans-serif!important}
.courses-page :is(h1,h2,h3,h4,h5,h6){color:#625659!important;font-family:"EB Garamond",Georgia,serif!important;font-weight:500!important}
.courses-page :is(.band,[class*="courses-"]){background-color:#FFFFFF!important}
.courses-page :is(.courses-featured,.courses-start,.courses-bundles,.courses-canon,.sound-card,.stage-pill,.course-catalog-card,.trial-card,.courses-faq details){background-color:#F8E4E8!important}
.courses-page :is(.featured-course,.module,.bundle-card,.canon-card){background-color:#FFF9FA!important}
.courses-page :is(.eyebrow,.mini,.course-kicker,.bundle-kicker){color:#DC93A5!important}
.courses-page :is(.wp-block-button__link,.course-button){background:#DC93A5!important;border-color:#DC93A5!important;color:#514649!important;font-family:"DM Sans",Arial,sans-serif!important}

/* Beat late theme/button declarations on the live WordPress page. */
body.page-courses .courses-page :is(.wp-block-button__link,.course-button),
body.page-courses .courses-page a[class*="button"] {
  background:#DC93A5!important;
  border:1px solid #DC93A5!important;
  border-radius:999px!important;
  color:#514649!important;
  font-family:"DM Sans",Arial,sans-serif!important;
  font-size:15px!important;
  font-weight:700!important;
  line-height:1.2!important;
  padding:16px 34px!important;
  text-decoration:none!important;
}
body.page-courses .courses-page :is(.secondary .wp-block-button__link,a.course-button.secondary) {
  background:#FFFFFF!important;
  border-color:#F0C4CD!important;
  color:#514649!important;
}
body.page-courses .courses-page :is(.wp-block-button__link,.course-button):hover { background:#E2A2B1!important;border-color:#E2A2B1!important; }

/* The page body uses the WordPress page ID rather than page-courses. */
body.page-id-204 .courses-page .courses-hero .wp-block-button__link,
body.page-id-204 .courses-page .course-catalog-card .course-button,
body.page-id-204 .courses-page .courses-start .course-button {
  background:#DC93A5!important;
  border:1px solid #DC93A5!important;
  border-radius:999px!important;
  color:#514649!important;
  font-family:"DM Sans",Arial,sans-serif!important;
  font-size:15px!important;
  font-weight:700!important;
  line-height:1.2!important;
  padding:16px 34px!important;
}
body.page-id-204 .courses-page .courses-hero .secondary .wp-block-button__link {
  background:#FFFFFF!important;border-color:#F0C4CD!important;color:#514649!important;
}

/* Recovery Room buttons — exact typography and colors from the supplied HTML. */
/* Recovery Room reference tokens: visual properties only; layout remains in
   the page's existing recovery-room stylesheets. */

/* Keep the homepage footer presentation identical on every internal page. */
body:not(.home) .dto-site-footer{background:#FFF9FA!important;color:#625659!important;font-family:"DM Sans",Arial,sans-serif!important}
body:not(.home) .dto-site-footer .dto-footer-links{background:#FFF9FA!important;padding:56px 40px 64px!important}
body:not(.home) .dto-site-footer .dto-footer-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:40px!important;max-width:1350px!important;margin:0 auto!important}
body:not(.home) .dto-site-footer .dto-footer-column h2{color:#DC93A5!important;font-family:"EB Garamond",Georgia,serif!important;font-size:16px!important;font-weight:500!important;letter-spacing:.11em!important;margin:0 0 18px!important;text-transform:uppercase!important}
body:not(.home) .dto-site-footer .dto-footer-list{display:flex!important;flex-direction:column!important;gap:12px!important;margin:0!important;padding:0!important}
body:not(.home) .dto-site-footer .dto-footer-list li{margin:0!important;padding:0!important}
body:not(.home) .dto-site-footer .dto-footer-list a{color:#DC93A5!important;font-family:"DM Sans",sans-serif!important;font-size:15.5px!important;line-height:1.4!important;text-decoration:none!important}
body:not(.home) .dto-site-footer .dto-footer-promo{background:#F8E4E8!important;color:#625659!important;min-height:41px!important;padding:7px 20px!important}
@media(max-width:781px){body:not(.home) .dto-site-footer .dto-footer-links{padding:46px 20px 52px!important}body:not(.home) .dto-site-footer .dto-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:32px 24px!important}}

/* About page ID cascade: the live page is page-id-672. */
body.page-id-672,.page-id-672 .wp-site-blocks,body.page-id-672 .wp-block-post-content{background:#FFFFFF!important}
body.page-id-672 .about-me-page{background:#FFFFFF!important;color:#625659!important;font-family:"DM Sans",Arial,sans-serif!important}
body.page-id-672 .about-me-page :is(h1,h2,h3,h4,h5,h6){color:#625659!important;font-family:"EB Garamond",Georgia,serif!important;font-weight:500!important}
body.page-id-672 .about-me-page :is(p,li,a,label,input,button,.wp-block-button__link){font-family:"DM Sans",Arial,sans-serif!important}
body.page-id-672 .about-me-page :is(.story,.boundaries,.offers,.method,.source){background:#F8E4E8!important}
body.page-id-672 .about-me-page .offer{background:#FFF9FA!important}
body.page-id-672 .about-me-page :is(.wp-block-button__link,button,input[type="submit"]){background:#DC93A5!important;border:1px solid #DC93A5!important;border-radius:999px!important;color:#514649!important;font-size:15px!important;font-weight:700!important;padding:16px 34px!important}
body.page-id-672 .about-me-page :is(.secondary,.outline) .wp-block-button__link{background:#FFFFFF!important;border-color:#F0C4CD!important;color:#514649!important;font-weight:500!important}
body.page-id-672 .about-me-page .story::before{background-image:url("/wp-content/themes/ollie-child/assets/images/homepage-reference/05-blush-therapy-office-wide.png")!important}
body.page-id-672 .about-me-page .methods::before{background-image:url("/wp-content/themes/ollie-child/assets/images/homepage-reference/04-translucent-leaves-macro-vertical.png")!important}
body.page-id-672 .about-me-page .offers::before{background-image:url("/wp-content/themes/ollie-child/assets/images/homepage-reference/07-recovery-lounge-wide.png")!important}
body.page-id-672 .about-me-page .story::before{background-image:url("/wp-content/uploads/2026/09/win-cover-photo.jpg")!important;background-position:center 35%!important}

/* Match the desktop section proportions in About.dc.html. */
body.page-id-672 .about-me-page .band{width:100%!important;padding-left:40px!important;padding-right:40px!important}
body.page-id-672 .about-me-page .hero{max-width:none!important;padding:88px 40px 96px!important}
body.page-id-672 .about-me-page .hero>.inner{max-width:1000px!important;margin:0 auto!important}
body.page-id-672 .about-me-page .hero h1{font-size:50px!important;line-height:1.2!important;margin:0 auto 26px!important}
body.page-id-672 .about-me-page .hero .hero-copy{max-width:790px!important;margin:0 auto 26px!important;font-size:17px!important;line-height:1.75!important}
body.page-id-672 .about-me-page .hero .credentials{font-size:15.5px!important;margin:0 0 34px!important}
body.page-id-672 .about-me-page .story{padding:92px 40px 100px!important}
body.page-id-672 .about-me-page .story::before{width:min(100%,1000px)!important;height:400px!important;margin:0 auto 52px!important}
body.page-id-672 .about-me-page .story>.inner{max-width:1000px!important}
body.page-id-672 .about-me-page .story h2{font-size:36px!important;margin-bottom:40px!important}
body.page-id-672 .about-me-page .methods{max-width:none!important;padding:88px 40px!important}
body.page-id-672 .about-me-page .methods::before{width:min(100%,560px)!important;height:320px!important;margin:0 auto 48px!important}
body.page-id-672 .about-me-page .methods>.inner{max-width:1000px!important}
body.page-id-672 .about-me-page .methods h2{font-size:38px!important}
body.page-id-672 .about-me-page :is(.hero,.methods,.canon,.book){background:#FFFFFF!important}
body.page-id-672 .about-me-page .offers{padding:92px 40px 100px!important}
body.page-id-672 .about-me-page .offers::before{width:min(100%,1150px)!important;height:380px!important;margin:0 auto 48px!important}
body.page-id-672 .about-me-page .offers>.inner{max-width:1150px!important}
body.page-id-672 .about-me-page .offers h2{font-size:38px!important}
@media(max-width:781px){body.page-id-672 .about-me-page .band{padding-left:20px!important;padding-right:20px!important}body.page-id-672 .about-me-page .hero{padding:56px 20px 60px!important}body.page-id-672 .about-me-page .hero h1{font-size:34px!important}.about-me-page .story::before,.about-me-page .offers::before{height:220px!important}}

/* About.dc.html final controls and available reference photography. */
.about-me-page :is(.wp-block-button__link,button,input[type="submit"]){border-radius:999px!important;color:#514649!important;font-family:"DM Sans",Arial,sans-serif!important;font-size:15px!important;font-weight:700!important;line-height:1.2!important;padding:16px 34px!important;background:#DC93A5!important;border-color:#DC93A5!important}
.about-me-page :is(.secondary,.outline) .wp-block-button__link{background:#FFFFFF!important;border-color:#F0C4CD!important;color:#514649!important;font-weight:500!important}
.about-me-page .story::before{background-image:url("../../images/homepage-reference/05-blush-therapy-office-wide.png")!important;background-position:center!important}
.about-me-page .methods::before{background-image:url("../../images/homepage-reference/04-translucent-leaves-macro-vertical.png")!important;background-position:center 45%!important}
.about-me-page .offers::before{background-image:url("../../images/homepage-reference/07-recovery-lounge-wide.png")!important;background-position:center!important}
.about-me-page :is(.story,.methods,.offers)::before { background-size:cover !important; background-color:transparent !important; }
.about-me-page .story::before {
  width:min(100%,560px) !important;
  height:560px !important;
  background-position:center 35% !important;
}
@media(max-width:781px){.about-me-page .story::before{height:420px !important;}}
