/* ELC motion: light on the page, deliberate in its timing. */
.hero-line{display:block;overflow:hidden;padding-bottom:.075em;margin-bottom:-.075em}
.hero-line-content{display:block;transform-origin:0 100%}
.hero-content h1 .hero-line{color:#fff}
.hero-content h1 .hero-line-accent{color:#deebbc}
.hero-content h1 .hero-line-content{color:inherit}
.hero-terrain{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none;opacity:.85;mix-blend-mode:screen}
.hero-content{z-index:1}
.hero-motion-control{position:absolute;z-index:2;top:25px;right:56px;display:flex;align-items:center;gap:9px;padding:9px 13px;border:1px solid #ffffff40;border-radius:40px;color:#eef3e3;background:#10372d55;backdrop-filter:blur(8px);font-size:10px;line-height:1.4;cursor:pointer}
.hero-motion-control:hover{background:#10372d99;border-color:#ffffff80}
.motion-control-icon{display:flex;align-items:center;justify-content:center;width:12px;height:12px;gap:3px}
.motion-control-icon:before,.motion-control-icon:after{content:'';display:block;width:2px;height:8px;background:currentColor}
[data-motion-toggle][aria-pressed=true] .motion-control-icon:before{height:0;width:0;border-top:4px solid transparent;border-bottom:4px solid transparent;border-left:6px solid currentColor;background:none}
[data-motion-toggle][aria-pressed=true] .motion-control-icon:after{display:none}
[data-motion-toggle]:disabled{cursor:default;opacity:.75}
.footer-motion-control{display:flex;align-items:center;gap:7px;border:0;background:transparent;padding:5px 0;color:inherit;font-size:inherit;white-space:nowrap}
.footer-motion-control:hover{color:#fff}
.reading-progress{position:absolute;bottom:-1px;left:0;width:100%;height:2px;overflow:hidden;pointer-events:none}
.reading-progress:after{content:'';display:block;height:100%;width:100%;background:linear-gradient(90deg,#289d9b,#b4d696);transform:scaleX(var(--reading-progress,0));transform-origin:left}
html[data-motion=enabled] .hero-image{transform:translate3d(0,var(--hero-shift,0px),0) scale(1.055);will-change:transform}
html[data-motion=enabled] .service-card,html[data-motion=enabled] .industry-card{transform:perspective(1200px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .55s cubic-bezier(.22,1,.36,1),background .3s,box-shadow .4s}
.service-card{position:relative;isolation:isolate}
.service-card:before{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(260px circle at var(--shine-x,50%) var(--shine-y,50%),#d7e7aa60,transparent 80%);opacity:0;pointer-events:none;transition:opacity .5s}
html[data-motion=enabled] .service-card.pointer-active:before{opacity:1}
html[data-motion=enabled] .service-card.pointer-active{box-shadow:0 18px 45px -35px #183e3440}
.button{position:relative;overflow:hidden;isolation:isolate}
.button:after{content:'';position:absolute;inset:-100% -45%;background:linear-gradient(115deg,transparent 38%,#ffffff24 50%,transparent 62%);transform:translateX(-80%);pointer-events:none}
html[data-motion=enabled] .button{translate:var(--magnet-x,0px) var(--magnet-y,0px);transition:background .25s,transform .3s,translate .5s cubic-bezier(.22,1,.36,1)}
html[data-motion=enabled] .button:hover:after{transform:translateX(80%);transition:transform .8s cubic-bezier(.22,1,.36,1)}
html[data-motion=enabled] .industry-image>img{transition:transform 1.2s cubic-bezier(.22,1,.36,1)}
html[data-motion=enabled] .industry-card:hover .industry-image>img{transform:scale(1.065)}
html[data-motion=enabled] .industry-card:hover .image-arrow{transform:rotate(45deg);transition:transform .65s cubic-bezier(.22,1,.36,1),background .3s}
html[data-motion=enabled] .image-arrow{transition:transform .65s cubic-bezier(.22,1,.36,1),background .3s}
html[data-motion=enabled] .process-grid li:before{transition:box-shadow .7s,background .7s}
html[data-motion=enabled] .process-grid li.step-entered:before{box-shadow:0 0 0 5px #183e340b}
html[data-motion=enabled] .mobile-menu:not([hidden]){animation:menu-arrive .35s cubic-bezier(.22,1,.36,1) both}
html[data-motion=enabled] .field input,html[data-motion=enabled] .field textarea,html[data-motion=enabled] .field select{transition:border-color .25s,background .25s,box-shadow .25s}
html[data-motion=enabled] .field:focus-within label{color:var(--green)}
@keyframes menu-arrive{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
html[data-motion=paused]{scroll-behavior:auto}
html[data-motion=paused] *,html[data-motion=paused] *:before,html[data-motion=paused] *:after{animation:none!important;transition:none!important}
html[data-motion=paused] .hero-terrain{display:none}
html[data-motion=paused] .button,html[data-motion=paused] .industry-card img,html[data-motion=paused] .service-card{transform:none!important;translate:none!important}
@media(max-width:1200px){.hero-motion-control{right:36px}}
@media(max-width:700px){.hero-motion-control{top:20px;right:22px;font-size:9px;padding:8px 11px}.hero-terrain{opacity:.4}.footer-motion-control{margin-left:auto}}
@media(prefers-reduced-motion:reduce){.hero-terrain{display:none!important}.hero-image,.service-card,.industry-card,.industry-image>img,.button{transform:none!important;translate:none!important}*,*:before,*:after{animation:none!important;transition:none!important}}
@media print{.hero-terrain,[data-motion-toggle],.reading-progress{display:none!important}.hero-image,.hero-line-content,.service-card,.industry-card{transform:none!important}}
