/* Transform-only ambient movement keeps the approved artwork intact. */
.orb-one{animation:aura-drift-one 24s ease-in-out infinite alternate}
.orb-two{animation:aura-drift-two 29s ease-in-out infinite alternate}
.orb-three{animation:aura-drift-three 21s ease-in-out infinite alternate}
.aura{translate:var(--aura-x,0px) calc(var(--aura-y,0px) + var(--aura-scroll,0px));scale:1.07}
@keyframes aura-drift-one{from{transform:translate(-2%,1%) rotate(-32deg) scale(1)}to{transform:translate(5%,-5%) rotate(-24deg) scale(1.08)}}
@keyframes aura-drift-two{from{transform:translate(2%,0) rotate(24deg) scale(1.04)}to{transform:translate(-5%,-8%) rotate(15deg) scale(.98)}}
@keyframes aura-drift-three{from{transform:translate(0,0) scale(1)}to{transform:translate(-7%,15%) scale(1.12)}}
.hero .eyebrow{animation:hero-enter .95s .1s cubic-bezier(.22,1,.36,1) both}
.hero h1{animation:hero-enter 1.1s .2s cubic-bezier(.22,1,.36,1) both}
.hero-sub{animation:hero-enter 1s .35s cubic-bezier(.22,1,.36,1) both}
.hero .pearl{animation:hero-enter 1s .48s cubic-bezier(.22,1,.36,1) both,pearl-flow 12s 1.5s ease-in-out infinite alternate}
@keyframes hero-enter{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
.pearl{position:relative;overflow:hidden;background-size:220% 220%;animation:pearl-flow 12s ease-in-out infinite alternate;isolation:isolate}
@keyframes pearl-flow{from{background-position:0% 35%}to{background-position:100% 65%}}
.pearl:before{content:'';position:absolute;inset:-70% -50%;background:linear-gradient(100deg,transparent 38%,#ffffff60 49%,transparent 60%);transform:translateX(-70%) rotate(-12deg);transition:transform .8s cubic-bezier(.22,1,.36,1);z-index:-1;pointer-events:none}
.pearl:hover:before,.pearl:focus-visible:before{transform:translateX(70%) rotate(-12deg)}
.motion-ready .reveal{opacity:0;transform:translateY(28px);transition:opacity .85s var(--reveal-delay,0ms) ease,transform 1s var(--reveal-delay,0ms) cubic-bezier(.22,1,.36,1)}
.motion-ready .reveal.is-visible{opacity:1;transform:translateY(0)}
.motion-ready .delivery-sheet.reveal{transform:translateY(28px) rotate(-1deg)}
.motion-ready .delivery-sheet.reveal.is-visible{transform:translateY(0) rotate(-1deg)}
.service summary h3{transition:transform .3s cubic-bezier(.22,1,.36,1),color .3s ease}
.service summary:hover h3{transform:translateX(8px);color:#786687}
html[dir=rtl] .service summary:hover h3{transform:translateX(-8px)}
.service[open] .service-body{animation:detail-enter .4s cubic-bezier(.22,1,.36,1) both}
@keyframes detail-enter{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}
.steps article{position:relative}
.steps article:before{content:'';position:absolute;inset-inline-start:0;top:-1px;width:100%;height:1px;background:var(--pearl);transform:scaleX(0);transform-origin:left;transition:transform 1.3s .15s cubic-bezier(.22,1,.36,1)}
html[dir=rtl] .steps article:before{transform-origin:right}
.steps article.is-visible:before{transform:scaleX(1)}
.text-link span:last-child,.expertise-strip a span:last-child{transition:transform .3s ease}
.text-link:hover span:last-child{transform:translate(3px,-3px)}
.footer-links{flex-wrap:wrap;row-gap:18px}
#motion-toggle{color:#bfc1cb;font-size:12px}
#motion-toggle:disabled{cursor:default;opacity:.65}
.motion-paused *,.motion-paused *:before,.motion-paused *:after{animation:none!important;transition:none!important}
.motion-paused .reveal{opacity:1;transform:none}
.motion-paused .delivery-sheet.reveal{transform:rotate(-1deg)}
.motion-paused .aura{translate:0 0;scale:1}
.motion-paused .steps article:before{transform:scaleX(1)}
.motion-paused .service summary:hover h3,.motion-paused .pearl:hover,.motion-paused .text-link:hover span:last-child{transform:none}
@media(max-width:720px){.motion-ready .delivery-sheet.reveal{transform:translateY(20px)}.motion-ready .delivery-sheet.reveal.is-visible,.motion-paused .delivery-sheet.reveal{transform:none}.motion-ready .reveal{transition-duration:.65s;transform:translateY(20px)}.aura{translate:0 0;scale:1}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.motion-ready .reveal{opacity:1;transform:none}.motion-ready .delivery-sheet.reveal{transform:rotate(-1deg)}.aura{translate:0 0;scale:1}.steps article:before{transform:scaleX(1)}.service summary:hover h3,.pearl:hover{transform:none}}
