/* One continuous light field from the product section through the footer. */
#product-sections{overflow:clip;background:
 radial-gradient(ellipse 90% 18% at 0% 9%,#beddf33d,transparent 85%),
 radial-gradient(ellipse 85% 20% at 100% 18%,#c5e7f12e,transparent 85%),
 radial-gradient(ellipse 90% 17% at 12% 35%,#d4e4f52e,transparent 85%),
 radial-gradient(ellipse 85% 20% at 95% 46%,#c6e5f338,transparent 85%),
 radial-gradient(ellipse 95% 19% at 5% 76%,#c8e0f53d,transparent 85%),
 radial-gradient(ellipse 95% 20% at 95% 90%,#cee9f42e,transparent 85%),
 linear-gradient(180deg,#fcfdff 0%,#f8fbff 30%,#f7fbfe 55%,#fbfdff 78%,#f4f9fd 100%)}
#product,#growth,#cases,#capabilities,#capabilities>.content-section,.site-footer.full-footer{background:transparent}
#product:before,#growth:before,#cases:before{content:none}
#growth,.site-footer.full-footer{border-top-color:transparent}
/* Keep the navy section distinct; diffuse light stays within its boundaries. */
.scenarios-section{background:transparent}
.scenarios-section:before{background:
 radial-gradient(ellipse at 4% 30%,#2d6793,transparent 56%),
 radial-gradient(ellipse at 95% 83%,#286a77,transparent 55%),
 radial-gradient(ellipse at 54% 100%,#474e80,transparent 62%),
 linear-gradient(130deg,#192e43,#23364b 55%,#203849);
 mask-image:none;
 -webkit-mask-image:none}
#site-header:not(.on-hero):not(.on-dark-section){background:#e7f0f7e8;backdrop-filter:blur(18px)}
#site-header.on-dark-section{background:linear-gradient(100deg,#294e70ed,#273e59ed 60%,#28515fed);backdrop-filter:blur(18px)}
@media(max-width:800px){.scenarios-section{padding-top:112px;padding-bottom:128px}}
#product-sections>.content-section,#capabilities,.site-footer.full-footer{border-top:0}
/* Slow blue light beneath the film viewer, independent of its WebGL canvas. */
#stage{isolation:isolate;background:linear-gradient(135deg,#edf7ff,#d8ecfc 55%,#e9f4ff)}
#stage:before,#stage:after{content:'';position:absolute;inset:-18%;z-index:-1;pointer-events:none;background-repeat:no-repeat;transform-origin:center}
#stage:before{background:radial-gradient(ellipse 48% 56% at 72% 35%,#77baf092,transparent 76%),radial-gradient(ellipse 48% 52% at 18% 78%,#8ed8ec85,transparent 78%),radial-gradient(ellipse 40% 50% at 82% 95%,#a0bcef65,transparent 78%);animation:hero-blue-drift 28s ease-in-out infinite alternate}
#stage:after{background:radial-gradient(ellipse 32% 50% at 42% 25%,#ffffffcc,transparent 80%),radial-gradient(ellipse 42% 35% at 83% 63%,#b2e7f775,transparent 80%);animation:hero-blue-drift 36s ease-in-out -12s infinite alternate-reverse}
@keyframes hero-blue-drift{0%{transform:translate3d(-3%,-2%,0) scale(1)}50%{transform:translate3d(3%,1%,0) scale(1.05)}100%{transform:translate3d(-1%,4%,0) scale(1.02)}}
@media(prefers-reduced-motion:reduce){#stage:before,#stage:after{animation:none}}

/* The viewer is now the opening screen. */
#brand-intro{display:none!important}
#stage,#scene{touch-action:pan-y}
.film-controls{position:absolute;left:7.5%;bottom:5%;z-index:6;display:flex;align-items:center;gap:8px;opacity:0;visibility:hidden;transition:opacity .3s}
.film-controls.ready{opacity:1;visibility:visible}
.film-controls button{height:40px;min-width:40px;padding:0 13px;border:1px solid #8cb5ce66;border-radius:24px;background:#ffffff90;color:#36586e;font:inherit;font-size:13px;cursor:pointer;backdrop-filter:blur(10px);transition:background .2s,transform .2s}
.film-controls button:hover{background:#ffffffd9;transform:translateY(-2px)}
.film-controls button:focus-visible{outline:2px solid #438cc0;outline-offset:3px}
@media(max-width:700px){.film-controls{left:5%;bottom:3%}.film-controls button{height:38px}}

/* Stronger primary action against the pale blue ambient background. */
#site-header .workspace-button{background:radial-gradient(ellipse at 12% 0%,#459eea,transparent 75%),linear-gradient(135deg,#287fd0,#245caf);color:#fff;border-color:#2776bd;box-shadow:inset 0 1px 0 #ffffff40,0 6px 20px #2367a42b;animation:none}
#site-header .workspace-button:hover,#site-header .workspace-button:focus-visible{background:linear-gradient(135deg,#247ac8,#194c99);color:#fff;border-color:#2462a2;box-shadow:inset 0 1px 0 #ffffff40,0 9px 24px #2367a43d}
