/* ReMore — scroll motion layer. Calm, editorial, no glow. */
html.ra-js body{opacity:0;transition:opacity .45s ease}
html.ra-ready body{opacity:1}
/* scroll progress: hairline in brand green */
.ra-progress{position:fixed;top:0;left:0;right:0;height:2px;z-index:99999;pointer-events:none;
  transform-origin:0 50%;transform:scaleX(0);background:#2dbe97;opacity:.9}
/* hero background layer for slow ken-burns / parallax */
.ra-hero{position:relative;overflow:hidden;isolation:isolate}
.ra-hero>.ra-bg{position:absolute;inset:-6% 0;z-index:0;background-size:cover;background-repeat:no-repeat;
  will-change:transform;pointer-events:none}
.ra-hero::before{z-index:1}
.ra-hero>:not(.ra-bg){position:relative;z-index:2}
/* line masks for split headings */
.ra-line{display:block;overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em}
.ra-line>.ra-line-in{display:block;will-change:transform}
/* image reveal wrappers */
.ra-img{overflow:hidden}
.ra-img img{will-change:transform}
/* initiatives step-through: thin index rail */
.ra-steps-rail{position:absolute;left:0;bottom:0;height:3px;width:100%;background:rgba(255,255,255,.25);z-index:5;pointer-events:none}
.ra-steps-rail>i{display:block;height:100%;width:100%;background:#fff;transform-origin:0 50%;transform:scaleX(0)}
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
.lenis.lenis-stopped{overflow:hidden}
@media (prefers-reduced-motion: reduce){
  html.ra-js body{opacity:1;transition:none}
  .ra-progress{display:none}
}
