/* Inner-page motion is activated by JS only. Home and navigation remain outside its scope. */
body.nhc-inner-motion{--nhc-motion-ease:cubic-bezier(.2,.65,.3,1);--nhc-motion-rise:20px}
body.nhc-inner-motion .nhc-motion-pending{opacity:0;transform:translate3d(0,var(--nhc-motion-rise),0)}
body.nhc-inner-motion .nhc-motion-playing{animation:nhc-inner-arrive 580ms var(--nhc-motion-ease) both!important;animation-delay:var(--nhc-motion-delay,0ms)!important}
@keyframes nhc-inner-arrive{from{opacity:0;transform:translate3d(0,var(--nhc-motion-rise),0)}to{opacity:1;transform:translate3d(0,0,0)}}
body.nhc-inner-motion .nhc-motion-card{transition:translate 320ms var(--nhc-motion-ease),box-shadow 320ms var(--nhc-motion-ease),border-color 320ms ease}
body.nhc-inner-motion .nhc-motion-surface{isolation:isolate}
body.nhc-inner-motion .nhc-motion-surface-static{position:relative}
body.nhc-inner-motion .nhc-motion-wash{display:block!important;position:absolute!important;inset:0!important;width:auto!important;height:auto!important;margin:0!important;padding:0!important;border:0!important;border-radius:inherit;pointer-events:none!important;z-index:-1!important;overflow:hidden;opacity:0;transition:opacity 380ms ease;background:radial-gradient(420px circle at var(--nhc-hover-x,50%) var(--nhc-hover-y,50%),#2563eb30,transparent 72%),linear-gradient(125deg,#2563eb13,#06b6d40d 60%,#2563eb06);box-shadow:inset 0 0 0 1px #93c5fd50}
body.nhc-inner-motion .nhc-motion-wash::before{content:"";position:absolute;top:-30%;left:0;width:35%;height:160%;background:linear-gradient(90deg,transparent,#ffffff75,transparent);transform:translateX(-180%) skewX(-18deg);opacity:0;pointer-events:none}
body.nhc-inner-motion .nhc-motion-surface:focus-within>.nhc-motion-wash{opacity:.7}
body.nhc-inner-motion .nhc-motion-card:focus-within{border-color:#93b4ef}
/* Flat editorial rows need an inset once they gain a full hover background. */
body.nhc-inner-motion :is(.sw2-service-grid,.sw2-capability-list,.sw2-process,.sw-scopes,.sw-process,.ap-platforms,.ap-scenarios,.ap-process,.av-scenarios,.av-build-grid,.av-process,.av-deploy-compare,.ct-offices)>.nhc-motion-card{min-width:0;padding:22px;border-radius:6px}
@media(max-width:767px){body.nhc-inner-motion :is(.sw2-service-grid,.sw2-capability-list,.sw2-process,.sw-scopes,.sw-process,.ap-platforms,.ap-scenarios,.ap-process,.av-scenarios,.av-build-grid,.av-process,.av-deploy-compare,.ct-offices)>.nhc-motion-card{padding:20px 18px}}
body.nhc-inner-motion .nhc-motion-button{transition:background-color 200ms ease,border-color 200ms ease,box-shadow 200ms ease,translate 200ms ease}
body.nhc-inner-motion .nhc-motion-button>svg{transition:translate 200ms var(--nhc-motion-ease)}
@media(hover:hover) and (pointer:fine){
 body.nhc-inner-motion .nhc-motion-card:hover{translate:0 -6px;border-color:#7fa9eb;box-shadow:0 18px 40px #2563eb1c,0 2px 8px #0f172a08}
 body.nhc-inner-motion .nhc-motion-card:hover>.nhc-motion-wash{opacity:1}
 body.nhc-inner-motion .nhc-motion-card:hover>.nhc-motion-wash::before{animation:nhc-inner-sheen 850ms var(--nhc-motion-ease) both}
 body.nhc-inner-motion .nhc-motion-button:hover{translate:0 -2px;box-shadow:0 6px 16px #1d4ed817}
 body.nhc-inner-motion .nhc-motion-button:hover>svg{translate:3px 0}
 body.nhc-inner-motion .nhc-motion-image{transition:scale 650ms var(--nhc-motion-ease)}
 body.nhc-inner-motion .nhc-motion-card:hover .nhc-motion-image{scale:1.045}
}
@keyframes nhc-inner-sheen{0%{opacity:0;transform:translateX(-180%) skewX(-18deg)}20%{opacity:.8}100%{opacity:0;transform:translateX(440%) skewX(-18deg)}}
@media(max-width:767px){body.nhc-inner-motion{--nhc-motion-rise:12px}body.nhc-inner-motion .nhc-motion-playing{animation-duration:440ms!important}}
@media(prefers-reduced-motion:reduce){
 body.nhc-inner-motion .nhc-motion-pending{opacity:1!important;transform:none!important}
 body.nhc-inner-motion :is(.nhc-motion-playing,.nhc-motion-card,.nhc-motion-button,.nhc-motion-image,.nhc-motion-wash){animation:none!important;transition:none!important;translate:none!important;scale:none!important}
 body.nhc-inner-motion .nhc-motion-wash::before{animation:none!important;transition:none!important}
}
@media print{body.nhc-inner-motion .nhc-motion-pending{opacity:1!important;transform:none!important}body.nhc-inner-motion .nhc-motion-playing{animation:none!important}body.nhc-inner-motion .nhc-motion-wash{display:none!important}}
