/* Explicit section overrides follow both normal and dark styles. */
html[data-site-theme] body:is(.motion-lp,.detail-page) [data-section-background],
html[data-site-theme] body:is(.motion-lp,.detail-page) [data-section-background] :is(.hero-stage,.hero-scroll,.site-header,.upcoming-item,.product-card,.case-card,.faq-list details,.story-process li,.plan-grid article,.example-grid article,.reference-photo,.benefit-photo,.card-photo,.seminar-banner) {
  background:var(--section-background);
}
html[data-site-theme] body:is(.motion-lp,.detail-page) [data-section-foreground],
html[data-site-theme] body:is(.motion-lp,.detail-page) [data-section-foreground] :is(h1,h2,h3,h4,p,a,button,summary,span,small,strong,em,time,li,dt,dd,label,output) {
  color:var(--section-foreground);
  border-color:var(--line);
}
html[data-site-theme] body:is(.motion-lp,.detail-page) [data-section-foreground] :is(.plus:before,.plus:after,.menu-button span) {background:var(--section-foreground)}
html[data-site-theme] body:is(.motion-lp,.detail-page) [data-section-foreground] :is(.story-process li+li:before,.faq-list summary:after) {color:var(--section-foreground)}
html[data-site-theme] body:is(.motion-lp,.detail-page) [data-section-foreground] :is(.button-white,.button-dark) {
  background:var(--section-foreground);color:var(--section-on-foreground);border-color:var(--section-foreground);
}
html[data-site-theme] body:is(.motion-lp,.detail-page) [data-section-foreground] :is(.button-white,.button-dark) :is(span,strong) {color:var(--section-on-foreground)}
html[data-site-theme] body:is(.motion-lp,.detail-page) [data-section-foreground] :is(.button-outline,.button-ghost,.product-resource-link) {
  background:transparent;color:var(--section-foreground);border-color:var(--section-foreground);
}
html[data-site-theme] body:is(.motion-lp,.detail-page) [data-section-foreground] :is(a,button,summary):focus-visible:not(.brand) {outline-color:var(--section-foreground)}
html[data-site-theme] body:is(.motion-lp,.detail-page) [data-section-foreground] .brand img {filter:var(--section-logo-filter);mix-blend-mode:normal}
/* Keep text readable on the WebGL control buttons' own surfaces. */
html[data-site-theme] body.motion-lp [data-section-foreground] .cabin-controls button {color:#fff}
html[data-site-theme] body.motion-lp [data-section-foreground] .cabin-controls button[aria-pressed=true] {color:#29312e}
html[data-site-theme] body.motion-lp .mobile-menu-toggle:not(.is-scrolled)[style*="--hero-menu-foreground"] span {background:var(--hero-menu-foreground)}
/* A differently colored product block needs its own top padding. */
html[data-site-theme] body.motion-lp .motion-business+.motion-products[data-section-background] {padding-top:96px}
html[data-site-theme] body.motion-lp .motion-business+.motion-products[data-section-background] .product-intro {padding-top:0;border-top:0}
@media(max-width:800px){html[data-site-theme] body.motion-lp .motion-business+.motion-products[data-section-background] {padding-top:58px}}
@media(hover:hover) and (pointer:fine){
  html[data-site-theme] body:is(.motion-lp,.detail-page) [data-section-foreground] :is(.button-outline,.button-ghost,.product-resource-link):hover {background:var(--section-foreground);color:var(--section-on-foreground)}
  html[data-site-theme] body:is(.motion-lp,.detail-page) [data-section-foreground] :is(.button-outline,.button-ghost,.product-resource-link):hover :is(span,strong) {color:var(--section-on-foreground)}
  html[data-site-theme] body:is(.motion-lp,.detail-page) [data-section-foreground] :is(.button-white,.button-dark):hover {background:var(--section-foreground);color:var(--section-on-foreground);opacity:.85}
}
