/* Page-wide motion accents. Original dimensions, typography, and colors remain
 * in styles.css. Only separate, pointer-transparent decoration is animated. */
.cms-page-host{position:relative;isolation:isolate}
.cms-page-host>.container{position:relative;z-index:2}
.cms-page-atmosphere{position:absolute;inset:0 0 auto;height:100%;max-height:700px;overflow:hidden;z-index:1;pointer-events:none;user-select:none;color:#428bea;contain:layout paint;--cms-page-atmosphere-strength:.56}
.cms-page-atmosphere-legal{height:440px;--cms-page-atmosphere-strength:.29}
.cms-page-atmosphere-article{max-height:540px;--cms-page-atmosphere-strength:.38}
.cms-page-blueprint{position:absolute;inset:0;width:100%;height:100%;overflow:hidden;opacity:var(--cms-page-atmosphere-strength)}
.cms-page-tracks,.cms-page-current{fill:none;stroke-width:1;vector-effect:non-scaling-stroke}
.cms-page-current{stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-dasharray:3 97;animation:cms-page-signal calc(19s * var(--cms-rate,1)) linear infinite}
.cms-page-current path:nth-child(2){stroke-dasharray:1.5 98.5;stroke-dashoffset:42;opacity:.6}
.cms-page-points{fill:currentColor;opacity:.45;animation:cms-page-beacon calc(9s * var(--cms-rate,1)) ease-in-out infinite}
.cms-page-aura{position:absolute;right:-5%;top:1%;width:57%;height:86%;border-radius:50%;background:radial-gradient(ellipse,rgba(95,159,245,.09),rgba(119,176,255,.025) 46%,transparent 68%);transform-origin:70% 30%;animation:cms-page-dawn calc(24s * var(--cms-rate,1)) ease-in-out infinite alternate}
.cms-page-aura-alt{right:12%;top:55%;height:66%;width:46%;opacity:.45;animation-duration:calc(31s * var(--cms-rate,1));animation-delay:-11s;animation-direction:alternate-reverse}
.cms-page-dark .cms-page-atmosphere{color:#88bbff;--cms-page-atmosphere-strength:.54}
.cms-page-dark .cms-page-aura{background:radial-gradient(ellipse,rgba(74,142,255,.12),rgba(63,133,252,.025) 48%,transparent 68%)}
.cms-page-atmosphere-legal .cms-page-aura{opacity:.3}
.cms-page-heading{position:relative}
.cms-page-heading-line{position:absolute;left:0;bottom:-6px;width:54px;height:2px;border-radius:2px;background:rgba(40,112,218,.13);pointer-events:none;overflow:hidden;opacity:.8}
.cms-page-heading-line::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,#4b91ef,transparent);animation:cms-page-line calc(12s * var(--cms-rate,1)) ease-in-out infinite;animation-delay:calc(var(--cms-page-phase,0) * -2.5s)}
.dark-band .cms-page-heading-line{background:rgba(137,184,246,.13)}
.dark-band .cms-page-heading-line::after{background:linear-gradient(90deg,transparent,#88baff,transparent)}
.cms-page-surface{position:relative}
.cms-page-edge{position:absolute;inset:0;overflow:hidden;border-radius:inherit;pointer-events:none;user-select:none;z-index:1}
.cms-page-edge::after{content:"";position:absolute;left:0;top:0;width:32%;height:1px;background:linear-gradient(90deg,transparent,rgba(66,135,234,.65),transparent);opacity:0;animation:cms-page-edge calc(18s * var(--cms-rate,1)) ease-in-out infinite;animation-delay:calc(var(--cms-page-phase,0) * -3.1s)}
.principle>.cms-page-edge::after,.ecosystem-row>.cms-page-edge::after{top:auto;bottom:0}
.metric>.cms-page-edge::after{background:linear-gradient(90deg,transparent,rgba(131,183,254,.55),transparent)}
@keyframes cms-page-signal{to{stroke-dashoffset:-100}}
@keyframes cms-page-beacon{0%,100%{opacity:.35}50%{opacity:.78}}
@keyframes cms-page-dawn{from{transform:translate3d(-2%,2%,0) scale(.95)}to{transform:translate3d(4%,-4%,0) scale(1.06)}}
@keyframes cms-page-line{0%,20%,100%{opacity:.12;transform:translateX(-90%)}42%{opacity:.75}65%,90%{opacity:.12;transform:translateX(90%)}}
@keyframes cms-page-edge{0%,12%{opacity:0;transform:translateX(-105%)}22%{opacity:.85}51%{opacity:.5}65%,100%{opacity:0;transform:translateX(325%)}}
/* Smaller screens retain one slow, clean trace instead of overlapping layers. */
.cms-lite-motion .cms-page-aura-alt{display:none}
.cms-lite-motion .cms-page-points{animation:none}
@media(max-width:640px){
 .cms-page-atmosphere{max-height:550px;--cms-page-atmosphere-strength:.42}
 .cms-page-atmosphere-legal{height:370px;--cms-page-atmosphere-strength:.23}
 .cms-page-blueprint{width:170%;max-width:none;left:-70%}
 .cms-page-aura{width:90%;right:-30%}
 .cms-page-heading-line{width:38px}
}
/* Inspector targets stay clear and still; page content is never faded or hidden. */
.cms-page-editor .cms-page-atmosphere{opacity:.45}
.cms-page-editor .cms-page-atmosphere *,.cms-page-editor .cms-page-heading-line::after,.cms-page-editor .cms-page-edge::after{animation:none!important}
.cms-image-replaced .cms-page-atmosphere,.cms-image-replaced>.cms-page-edge,.cms-image-replaced>.cms-page-heading-line{display:none}
html.cms-reduced-motion .cms-page-atmosphere *,html.cms-reduced-motion .cms-page-heading-line::after,html.cms-reduced-motion .cms-page-edge::after{animation:none!important}
@media(prefers-reduced-motion:reduce){.cms-page-atmosphere *,.cms-page-heading-line::after,.cms-page-edge::after{animation:none!important}}
