/* Low-contrast, continuous background; the page content stays above it. */
html{background:#1f2430}body.has-ambient{background:#1f2430;isolation:isolate;min-height:100svh}
.ambient-knowledge{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;contain:strict;mask-image:linear-gradient(to bottom,transparent,#000 10%,#000 90%,transparent)}
.ambient-flake{position:absolute;left:var(--x);top:0;max-width:32%;white-space:nowrap;font:var(--size)/1.5 'Cascadia Code',Consolas,'Microsoft YaHei',monospace;letter-spacing:.02em;color:#b4bac3;opacity:var(--ink);animation:concept-fall var(--fall) var(--offset) linear infinite;will-change:transform}
.ambient-flake:nth-child(5n){color:#ffcc66}
@keyframes concept-fall{0%{transform:translate3d(0,-100px,0)}50%{transform:translate3d(var(--drift),50svh,0)}100%{transform:translate3d(0,calc(100svh + 100px),0)}}
body>main,body>.hero-runway,body>footer{position:relative;z-index:1}
.has-ambient .hero{background:transparent}.has-ambient .hero__grid{display:none}
.ambient-paused .ambient-track,.motion-paused .ambient-track{animation-play-state:paused}
.ambient-controls{position:fixed;right:22px;bottom:17px;z-index:90}.ambient-controls button{background:#1f2430cc;border:0;color:#a6b1ba;padding:9px 0 9px 12px;font-size:10px;font-family:inherit;cursor:pointer}.ambient-controls button:hover{color:#ffcc66}.ambient-controls button:focus-visible{outline:2px solid #ffcc66;outline-offset:5px}
body.service-page{--bg:#1f2430;--surface:#27313b;--text:#e6e1cf;--text-secondary:#b4bac3;--text-tertiary:#8290a2;--accent:#ffcc66;--accent-dim:#ffcc6612;--border:#65717c55;--radius:6px;color:var(--text)}
.service-page .page-hero{background:transparent}.service-page .nav.scrolled{background:#1f2430ec;border-color:#65717c55;backdrop-filter:blur(16px)}
.service-page .button--primary{color:#1f2430}.service-page .button--primary:hover{background:#e4bc69}
.service-page .summary-card,.service-page .service-card,.service-page .capability-card{background:transparent;box-shadow:none}
.service-page .section-heading{font-weight:550}.service-page .section--contact{background:#26313a65}
.service-page.motion-paused *{animation-play-state:paused!important}
@media(max-width:760px){.ambient-flake{left:var(--phone-x);font-size:9px;opacity:calc(var(--ink)*.8);max-width:25%;animation-delay:var(--phone-offset)}.ambient-flake:nth-child(n+41){display:none}.ambient-controls{right:18px;bottom:10px}.ambient-controls button{font-size:9px}.service-page{--section-gap:100px}}
@media(prefers-reduced-motion:reduce){.ambient-track{animation:none!important;transform:translate3d(0,0,0);will-change:auto;top:var(--x)}}
