/* FT service pages only. Media pixels and original Mother geometry stay intact. */
:root{color-scheme:light}
:root[data-theme=dark]{color-scheme:dark;--md-bg:#121212;--md-text:#f5f5f5;--md-text-muted:#bdbdbd;--md-grey-light:#222;--md-hairline:#777;--md-border:1px solid #aaa}
.md-controls .theme-toggle{width:auto;min-width:82px;padding:0 12px;font-size:13px;white-space:nowrap;border:0;border-right:var(--md-border);background:transparent;color:inherit}
.md-controls .theme-toggle[hidden]{display:none}
.md-controls .theme-toggle:focus-visible{outline:2px solid currentColor;outline-offset:-5px}
:root[data-theme=dark] .mother-fitness{background:#121212;color:#f5f5f5}
:root[data-theme=dark] .mother-fitness :is(.md-navbox,.md-controls){background:#121212;color:#f5f5f5;border-color:#aaa}
:root[data-theme=dark] .mother-fitness :is(.hero-label,.hero-foot p,.eyebrow,.sub,.mod p,.mod::before,.it p,.lead,.f small,.consent details,.service-note,.faq-list details p,.review-note,.visual-disclosure,.film-layout figcaption,.touchpoint-map figcaption,.wide-treatment figcaption,.route-visual figcaption,.feature-status){color:#bdbdbd}
:root[data-theme=dark] .mother-fitness :is(.soft,.feature-section,.feature-pin,.film-treatment,footer){background:#222;color:#f5f5f5}
:root[data-theme=dark] .mother-fitness :is(.contact,#mobile-menu){background:#121212;color:#f5f5f5;border-color:#aaa}
:root[data-theme=dark] :is(footer b,.menu-close,.video-close,.video-controls button){color:#f5f5f5}
:root[data-theme=dark] .mother-fitness .f :is(input,select,textarea){background:#222;color:#f5f5f5;border-color:#aaa}
:root[data-theme=dark] .mother-fitness .form-msg{background:#222;color:#eee;border-color:#aaa}
:root[data-theme=dark] .mother-fitness .pill{background:#f5f5f5;color:#121212;border-color:#aaa}
:root[data-theme=dark] .mother-fitness .pill:hover{background:#333;color:#f5f5f5}
:root[data-theme=dark] .mother-fitness :is(.fab a,.fab button){background:#222;color:#f5f5f5;border-color:#aaa}
:root[data-theme=dark] .mother-fitness :is(.app-showcase,.video-dialog,.video-dialog video){background:#262626;color:#f5f5f5}
:root[data-theme=dark] .center-management :is(.video-showcase figcaption,.demo-note){color:#c6c6c6}
:root[data-theme=dark] :is(.showcase-top,.video-controls,.feature-actions button,.brief-rows,.brief-rows article,.scope-ledger>div,.timeline-section .mod){border-color:#888}
:root[data-theme=dark] .feature-tabs button[aria-selected=true]{border-color:#eee}
:root[data-theme=dark] :is(.feature-viewport,.feature-actions button,.feature-nav button):focus-visible{outline-color:#f5f5f5}
:root[data-theme=dark] .mother-fitness :is(a,button,input,select,textarea,summary):focus-visible{outline-color:#f5f5f5}
:root[data-theme=dark] .md :is(.md-navbox__list a,.md-controls button):hover{background:#eee;color:#121212}
:root[data-theme=dark] .marketing-route{background:#181818;color:#f5f5f5}
:root[data-theme=dark] :is(.route-visual,.wide-treatment,.film-layout .media-window){outline:1px solid #888;outline-offset:-1px}
:root[data-theme=dark] ::selection{background:#eee;color:#121212}
@media(max-width:600px){.md-controls .theme-toggle{min-width:76px;padding-inline:10px}}
/* No script: system dark styling, toggle stays hidden. */
@media(prefers-color-scheme:dark){
:root:not([data-theme]){color-scheme:dark;--md-bg:#121212;--md-text:#f5f5f5;--md-text-muted:#bdbdbd;--md-grey-light:#222;--md-hairline:#777;--md-border:1px solid #aaa}
:root:not([data-theme]) .mother-fitness{background:#121212;color:#f5f5f5}
:root:not([data-theme]) .mother-fitness :is(.md-navbox,.md-controls){background:#121212;color:#f5f5f5;border-color:#aaa}
:root:not([data-theme]) .mother-fitness :is(.hero-label,.hero-foot p,.eyebrow,.sub,.mod p,.mod::before,.it p,.lead,.f small,.consent details,.service-note,.faq-list details p,.review-note,.visual-disclosure,.film-layout figcaption,.touchpoint-map figcaption,.wide-treatment figcaption,.route-visual figcaption,.feature-status){color:#bdbdbd}
:root:not([data-theme]) .mother-fitness :is(.soft,.feature-section,.feature-pin,.film-treatment,footer){background:#222;color:#f5f5f5}
:root:not([data-theme]) .mother-fitness :is(.contact,#mobile-menu){background:#121212;color:#f5f5f5;border-color:#aaa}
:root:not([data-theme]) :is(footer b,.menu-close,.video-close,.video-controls button){color:#f5f5f5}
:root:not([data-theme]) .mother-fitness .f :is(input,select,textarea){background:#222;color:#f5f5f5;border-color:#aaa}
:root:not([data-theme]) .mother-fitness .form-msg{background:#222;color:#eee;border-color:#aaa}
:root:not([data-theme]) .mother-fitness .pill{background:#f5f5f5;color:#121212;border-color:#aaa}
:root:not([data-theme]) .mother-fitness .pill:hover{background:#333;color:#f5f5f5}
:root:not([data-theme]) .mother-fitness :is(.fab a,.fab button){background:#222;color:#f5f5f5;border-color:#aaa}
:root:not([data-theme]) .mother-fitness :is(.app-showcase,.video-dialog,.video-dialog video){background:#262626;color:#f5f5f5}
:root:not([data-theme]) .center-management :is(.video-showcase figcaption,.demo-note){color:#c6c6c6}
:root:not([data-theme]) :is(.showcase-top,.video-controls,.feature-actions button,.brief-rows,.brief-rows article,.scope-ledger>div,.timeline-section .mod){border-color:#888}
:root:not([data-theme]) .feature-tabs button[aria-selected=true]{border-color:#eee}
:root:not([data-theme]) :is(.feature-viewport,.feature-actions button,.feature-nav button):focus-visible{outline-color:#f5f5f5}
:root:not([data-theme]) .mother-fitness :is(a,button,input,select,textarea,summary):focus-visible{outline-color:#f5f5f5}
:root:not([data-theme]) .md :is(.md-navbox__list a,.md-controls button):hover{background:#eee;color:#121212}
:root:not([data-theme]) .marketing-route{background:#181818;color:#f5f5f5}
:root:not([data-theme]) :is(.route-visual,.wide-treatment,.film-layout .media-window){outline:1px solid #888;outline-offset:-1px}
:root:not([data-theme]) ::selection{background:#eee;color:#121212}
}

/* Avoid inherited color/background fades passing through unreadable grey pairs. */
.mother-fitness :is(a,button){transition-property:opacity,transform}

/* Hub contrast fix: mobile secondary touchpoint heading, including no-JS dark. */
:root[data-theme=dark] .touchpoint-heading span+span{color:#bdbdbd}
@media(prefers-color-scheme:dark){:root:not([data-theme]) .touchpoint-heading span+span{color:#bdbdbd}}

/* Bright cards own their ink in both themes, including the no-script fallback. */
.touchpoint-tile:is(.discovery,.inquiry),.touchpoint-tile .search-line{color:#181818;--md-text:#181818;--md-text-muted:#555}
.touchpoint-tile:is(.discovery,.inquiry) :is(h2,h3,p,.map-index,a,button){color:#181818}
:root .touchpoint-tile:is(.discovery,.inquiry) :is(a,button):focus-visible{outline-color:#181818}
/* Keep the image unchanged; an opaque local text ground guarantees contrast. */
.touchpoint-tile.understand :is(.map-index,p){color:#fff;background:#181818;padding:6px 10px;align-self:flex-start;max-width:100%}

/* Section numbers are text too; set pseudo-element ink directly. */
.mother-fitness .timeline-section .mod::before{color:#666}
:root[data-theme=dark] .mother-fitness .mod::before{color:#bdbdbd}
@media(prefers-color-scheme:dark){:root:not([data-theme]) .mother-fitness .mod::before{color:#bdbdbd}}
