/* Functional color preference, shared by all marketing routes. */
.theme-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;flex-shrink:0;min-width:44px;min-height:44px;padding:8px 11px;border:1px solid #527183;border-radius:5px;background:transparent;color:#d3e6ef;font-size:11px;white-space:nowrap}.theme-toggle svg{width:19px;height:19px}.site-header .nav{gap:20px}.theme-toggle:hover{border-color:var(--cyan);background:#71e4dd0c}.mobile-menu__top .theme-toggle{margin-left:auto;margin-right:12px}.industry-layout:hover .industry-photo,.service:hover .service-image img{transform:none!important}.hero-art img{transform:translate3d(0,var(--hero-shift),0) scale(var(--hero-scale))}
html[data-theme=light]{color-scheme:light;--ink:#f5f8fa;--navy:#eaf1f5;--paper:#fff;--white:#102b3b;--text:#102b3b;--muted:#405d6c;--dim:#405d6c;--cyan:#006c70;--violet:#2264ad;--lime:#386a30;--line:#153d5429;--panel:#fff}
html[data-theme=light] body{background:#f5f8fa;color:#102b3b}
html[data-theme=light] :is(a,button,input,textarea,select,summary):focus-visible{outline-color:#006c70}
html[data-theme=light] header.site-header{background:#f7fafbed;border-color:#173f5126}
html[data-theme=light] :is(.site-header .logo,.mobile-menu .logo,.footer-brand img[src*="factor-ehs-logo"]){filter:brightness(0) saturate(100%) invert(12%) sepia(17%) saturate(2200%) hue-rotate(160deg)}
html[data-theme=light] :is(.navlinks,.header-actions>a:first-child,.theme-toggle,.menu-toggle,.mobile-menu__close){color:#183d50}
html[data-theme=light] :is(.theme-toggle,.menu-toggle,.mobile-menu__close){border-color:#819ba9}
html[data-theme=light] .nav-dropdown{background:#fff;border-color:#b4c8d1;box-shadow:0 20px 40px #1235431a}
html[data-theme=light] .nav-dropdown a:hover{background:#e8f4f3;color:#005d61}
html[data-theme=light] .mobile-menu{background:#f5f8fafc;color:#102b3b}
html[data-theme=light] .button.primary{background:#006c70;border-color:#006c70;color:#fff}
html[data-theme=light] .button.primary:hover{background:#00595c}
html[data-theme=light] .button.ghost{background:#ffffffb3;color:#143d51;border-color:#8aa5b2}
html[data-theme=light] :is(.band,.band.alt,.contact,.intro,.hop,.proof,.process,.workflow,.credential,.frameworks,.credential-section,.showcase-section,.perspective-section,.intelligence-section,.vision-intro,.vision-bridge,.vision-ai,.vision-chapter,.vision-chapter:nth-of-type(even),.vision-foundation){background:#f5f8fa;color:#102b3b}
html[data-theme=light] :is(.band.alt,.proof,.process,.credential-section,.perspective-section,.vision-chapter:nth-of-type(even),.vision-foundation){background:#eaf1f5}
html[data-theme=light] :is(.card,.card.dark,.service,.service:nth-child(2),.industry,.tracking-card,.tracking-card--dark,.framework-card,.sdg-card,.customer-login-card,.capability-card,.foundation-grid article,.vision-domains a,.vision-availability,.contact-card){background:#fff;color:#102b3b;border-color:#b9ccd5;box-shadow:0 12px 35px #244c5d07}
html[data-theme=light] :is(.lead,.guardrail,.band p,.hop-copy .lead,.split-title p,.proof-copy p,.principle p,.customer-help p,.customer-help ol,.sustainability-steps p,.tracking-card p,.industry p,.card p,.card.dark p,.service p,.service:nth-child(2) p,.step p,.hop-point span,.frameworks-intro>p,.credential-section .credential-bottom p,.vision-bridge .section-head>div>p,.vision-small,.vision-availability p,.capability-card p,.capability-card li,.foundation-grid p,.vision-mobile p,.value-footnote,.value-expand summary,.perspective-points li,.intelligence-list li,.availability-note,.module-tabs button,.perspective-controls button,.industry-controls button,.story-note){color:#405d6c}
html[data-theme=light] :is(.capability-card h3,.foundation-grid h3,.vision-domains a,.vision-availability strong,.scope-label,.tag,.credential-tracks span,.footer-links strong){color:#173f51}
html[data-theme=light] :is(.scope-label,.tag,.vision-jump a){border-color:#8faab7;color:#245467}
html[data-theme=light] :is(.card .num,.tracking-card>span,.industry>span,.sustainability-steps b,.service .number,.hop-point b,.principle b,.foundation-grid article>span,.capability-card li:before,.section-index,.impact-home .section-index){color:#006c70}
html[data-theme=light] :is(.vision-domains a:hover,.module-tabs button:hover){background:#dfefed;color:#005d61}
html[data-theme=light] :is(.module-tabs button[aria-selected=true],.perspective-controls button[aria-selected=true],.industry-controls button[aria-pressed=true]){background:#dcefeb;color:#005c60;border-color:#006c70}
html[data-theme=light] .vision-chapter-image{box-shadow:15px 20px 50px #22465715}
html[data-theme=light] .foundation-grid{background:#b9ccd5;border-color:#b9ccd5}
html[data-theme=light] .device-stage{background:radial-gradient(ellipse,#a8dcd680,transparent 66%)}
html[data-theme=light] .impact-ribbon{background:#e4f0f0;border-color:#a7c7c8}
html[data-theme=light] .impact-ribbon>div{color:#153f50}
html[data-theme=light] .impact-ribbon span{-webkit-text-stroke-color:#46747b}
html[data-theme=light] .site-footer{background:#e7eff3;color:#183d50}
html[data-theme=light] :is(.footer-links a,.footer-brand p,.footer-bottom,.footer-mascot-link){color:#405d6c}
html[data-theme=light] :is(.cta,.cinematic-cta){background:radial-gradient(ellipse at 50% 110%,#b0dfd6,transparent 65%),#eaf3f4;color:#102b3b}
html[data-theme=light] .cinematic-cta small{color:#405d6c}
html[data-theme=light] .cta-sculpture{opacity:.1}
html[data-theme=light] .cta-sculpture:after{background:linear-gradient(90deg,#eaf3f4,transparent,#eaf3f4)}
/* Device previews retain their own product palette; cinematic photo scenes retain readable light type. */
html[data-theme=light] :is(.product-window,.mobile-device,.mini-desktop,.intelligence-orbit,.cinematic-hero,.layered-story,.clarity-section,.field-chapter,.industry-layout,.page-hero.image-hero,.services-hero){--text:#eef5fb;--dim:#aac0d2;--cyan:#71e4dd;--line:#9abbd426;color:#eef5fb;color-scheme:dark}
html[data-theme=light] :is(.cinematic-hero,.layered-story,.clarity-section,.field-chapter,.industry-layout,.page-hero.image-hero,.services-hero) :is(.eyebrow,.kicker,.text-link){color:#71e4dd}
html[data-theme=light] :is(.cinematic-hero,.layered-story,.clarity-section,.field-chapter,.industry-layout,.page-hero.image-hero,.services-hero) .button.primary{background:#8bf4e3;border-color:#8bf4e3;color:#032620}
html[data-theme=light] :is(.cinematic-hero,.field-chapter,.page-hero.image-hero,.services-hero) .button.ghost{background:#081724b3;color:#eef5fb;border-color:#93b5c180}
html[data-theme=light] .clarity-section .section-index{color:#a7c7d0}
html[data-theme=light] .clarity-section .story-note{color:#a7c4cf}
html[data-theme=light] .intelligence-orbit .insight-card small{color:#93eddb}
html[data-theme=light] .page-hero:not(.image-hero):not(.services-hero){background:radial-gradient(ellipse at right,#c9e7e5,transparent 60%),#eaf1f5;color:#102b3b}
html[data-theme=light] .page-hero:not(.image-hero):not(.services-hero) p{color:#405d6c}
/* The production contact form is injected by the existing Cloudflare integration. */
html[data-theme=light] .contact-card :is(h2,h3,h4,label,legend,strong){color:#173f51!important}
html[data-theme=light] .contact-card :is(p,small,.contact-note){color:#405d6c!important}
html[data-theme=light] .contact-card :is(input,select,textarea){background:#f8fbfc!important;color:#173f51!important;border-color:#819ba9!important}
html[data-theme=light] .contact-card :is(input,textarea)::placeholder{color:#526d7b}
html[data-theme=light] .contact-card button[type=submit]{background:#006c70!important;color:#fff!important;border-color:#006c70!important}
@media(max-width:1180px){.site-header .nav{gap:14px}.site-header .theme-toggle span{display:none}.site-header .theme-toggle{padding:8px}}
@media(max-width:1000px){.site-header .theme-toggle{margin-left:auto}.site-header .nav{gap:12px}.mobile-menu__top .theme-toggle span{display:none}}
@media(prefers-reduced-motion:reduce){.theme-toggle{transition:none}}
html[data-theme=light] :is(.credential-heading p,.credential-features p,.credential-screens figcaption,.customer-login-card p,.customer-login-card .login-destination,.credential .lead,.credential-list div,.service-note,.framework-card p,.framework-card li,.goal-row span,.framework-note){color:#405d6c}
html[data-theme=light] .credential-features article>span{color:#006c70}
html[data-theme=light] .energy-panel{--cyan:#71e4dd;--lime:#c6e5a3;--line:#9abbd426;color:#eef5fb;color-scheme:dark}
html[data-theme=light] .credential-desktop .screen-label{color:#a6bace}
.editorial-image{margin:0;overflow:hidden;border-radius:8px;border:1px solid var(--line)}.editorial-image img{display:block;width:100%;height:auto;max-height:530px;object-fit:cover;object-position:center}.editorial-image figcaption{padding:16px 22px;font-size:12px;color:var(--dim);background:var(--panel)}.environment-image{margin-top:50px}
html[data-theme=light] .mobile-menu nav a{color:#183d50}
html[data-theme=light] .menu-toggle{background:transparent}
html[data-theme=light] :is(.process>div>p,.process .description,.field){color:#405d6c}
html[data-theme=light] .field{border-color:#8faab7}
