/* Homepage-style motion for service pages. Only visible decorations keep moving. */
.service-scroll-progress{position:fixed;inset:0 0 auto;height:3px;z-index:1100;pointer-events:none;background:#ffffff08}
.service-scroll-progress i{display:block;height:100%;transform:scaleX(0);transform-origin:left;background:linear-gradient(90deg,#c6ff00,#00f0ff,#ff3edb);box-shadow:0 0 12px #c6ff0040}
.service-page .s-hero{isolation:isolate}
.service-hero-art{position:absolute;inset:0;overflow:hidden;z-index:-1;pointer-events:none}
.service-hero-art>i{position:absolute;display:block;color:#7b61ff;font-style:normal;font-size:40px;line-height:1;opacity:.65;animation:service-orbit 35s linear infinite;animation-play-state:paused}
.service-hero-art>i:first-child{top:13%;right:6%;color:#ff3edb}
.service-hero-art>i:nth-child(2){bottom:11%;left:3%;color:#c6ff00;font-size:21px;animation-direction:reverse}
.service-hero-art>i:nth-child(3){top:49%;left:47%;width:66px;height:66px;border:1px solid #00f0ff25;border-radius:50%;color:transparent}
.service-hero-art>i:nth-child(3):after{content:'';position:absolute;top:0;left:24px;width:5px;height:5px;border-radius:50%;background:#00f0ff}
.s-hero.service-in-view .service-hero-art>i{animation-play-state:running}
@keyframes service-orbit{to{transform:rotate(360deg)}}
.service-page .service-demo{transform:perspective(1100px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .8s cubic-bezier(.16,1,.3,1),border-color .7s,box-shadow .7s;will-change:auto}
.service-page .service-demo:hover{border-color:#bfa6ff70;box-shadow:inset 0 1px #ffffff28,0 30px 80px #0005,0 0 35px #7b61ff0d}
.service-demo:after{content:'';position:absolute;inset:0;border-radius:inherit;background:radial-gradient(380px circle at var(--light-x,50%) var(--light-y,20%),#d0c2ff12,transparent 72%);pointer-events:none;opacity:0;transition:opacity .7s}
.service-demo:hover:after{opacity:1}
.service-page .s-button{position:relative;isolation:isolate;overflow:hidden}
.service-page .s-button:before{content:'';position:absolute;inset:-50% -100%;pointer-events:none;background:linear-gradient(110deg,transparent 42%,#ffffff70 50%,transparent 58%);transform:translateX(-80%);transition:transform 1s cubic-bezier(.16,1,.3,1)}
.service-page .s-button:hover:before,.service-page .s-button:focus-visible:before{transform:translateX(80%)}
.service-page .s-button:active{transform:translateY(0) scale(.98)}
.service-page .s-text-link{position:relative;border-bottom:0}
.service-page .s-text-link:after{content:'';position:absolute;inset:auto 0 0;height:1px;background:currentColor;transform:scaleX(.35);transform-origin:left;transition:transform .65s cubic-bezier(.16,1,.3,1)}
.service-page .s-text-link:hover:after,.service-page .s-text-link:focus-visible:after{transform:scaleX(1)}
.service-page .s-card{overflow:hidden;display:flex;flex-direction:column}
.service-page .s-card:after{display:none}
.service-page .s-card-no{margin-bottom:25px}
.service-page .s-card h3{min-height:2.4em}
.service-page .s-card p{flex:1}
.service-page .s-card:hover{border-color:#8566c470}
.service-page .s-card .widget-replay{align-self:flex-start}
.feature-widget{position:relative;margin:25px 0 0;height:132px;border:1px solid #37304c18;background:#ffffff6b;border-radius:16px;overflow:hidden;isolation:isolate;color:#241c32;box-shadow:inset 0 1px #fff;flex:none;pointer-events:none}
.feature-widget>div{position:absolute;inset:18px}
.widget-replay{border:0;background:transparent;color:#4d305f;font:600 12px/1.4 Jost,system-ui;padding:12px 0 0;cursor:pointer;display:inline-flex;gap:8px;align-items:center}
.widget-replay span{display:inline-block;transition:transform .7s cubic-bezier(.16,1,.3,1)}
.widget-replay:hover span{transform:rotate(120deg)}
.widget-replay:focus-visible{outline:2px solid #6434a4;outline-offset:5px}
.widget-browser{border:1px solid #d5c8e5;border-radius:8px;background:#fff;box-shadow:0 9px 20px #35234210;display:grid;grid-template-columns:1fr .7fr;gap:8px;padding:26px 12px 12px}
.widget-browser:before{content:'● ● ●';position:absolute;inset:0 0 auto;padding:5px 10px;font-size:6px;letter-spacing:2px;color:#8955aa;border-bottom:1px solid #30234110}
.widget-browser i{border-radius:4px;background:#eee8f8;grid-column:1;height:7px}
.widget-browser i:nth-child(2){width:70%;background:#d2e7ff}
.widget-browser b{grid-column:1;width:58%;height:14px;border-radius:9px;background:#c6ff00}
.widget-browser em{grid-column:2;grid-row:1/4;border-radius:4px;background:linear-gradient(145deg,#815df3,#45cce4);font-style:normal}
.widget-gallery{display:flex;align-items:center;justify-content:center;gap:9px}
.widget-gallery i{display:block;width:30%;height:68px;border-radius:8px;background:linear-gradient(145deg,#7036b7,#bb9dea);transform:rotate(-8deg);box-shadow:0 5px 10px #35234214}
.widget-gallery i:nth-child(2){height:82px;background:linear-gradient(130deg,#dd6cbb,#fdcbe8);transform:rotate(4deg)}
.widget-gallery i:nth-child(3){height:65px;background:linear-gradient(130deg,#297b9a,#87ddec);transform:rotate(9deg)}
.widget-message{display:flex;align-items:center;justify-content:center;gap:14px;border:1px solid #b1c68b;border-radius:12px;background:#f2ffd8;padding:15px}
.widget-message i{flex:none;display:grid;place-items:center;border-radius:50%;width:30px;height:30px;background:#283515;color:#d4ff71;font-size:16px;font-style:normal}
.widget-message strong{display:block;font-size:13px;line-height:1.4;letter-spacing:-.02em}
.widget-message small{display:block;margin-top:4px;font-size:10px;color:#55603f;line-height:1.5}
.widget-search{display:flex;flex-direction:column;justify-content:center;gap:10px}
.widget-search b{display:block;background:white;border:1px solid #dacfe9;border-radius:99px;padding:10px 13px;font:500 11px Jost,system-ui;white-space:nowrap;overflow:hidden}
.widget-search b:before{content:'⌕';margin-right:8px;color:#683b9a}
.widget-search i{height:5px;border-radius:5px;background:#d8c9eb;width:85%;margin-left:10px}
.widget-search i:last-child{width:58%;background:#adcfdd}
.widget-map{background:linear-gradient(90deg,transparent 47%,#b3ccdf70 48% 49%,transparent 50%),linear-gradient(0deg,transparent 47%,#b3ccdf70 48% 49%,transparent 50%);background-size:30px 30px}
.widget-map:before{content:'';position:absolute;width:74px;height:74px;border:1px solid #665aa844;border-radius:50%;top:50%;left:50%;transform:translate(-50%,-50%);background:#b0a3de16}
.widget-map i{position:absolute;top:47%;left:48%;display:block;width:9px;height:9px;border-radius:50%;background:#7340af;box-shadow:0 0 0 7px #7340af18}
.widget-map i:nth-child(2){top:22%;left:25%;background:#ed3dc2;box-shadow:0 0 0 5px #ed3dc215}
.widget-map i:nth-child(3){top:66%;left:70%;background:#268c9c;box-shadow:0 0 0 5px #268c9c15}
.feature-widget[data-playing] .widget-browser>*{animation:service-assemble .9s cubic-bezier(.16,1,.3,1) both}
.feature-widget[data-playing] .widget-browser i:nth-child(2){animation-delay:.15s}.feature-widget[data-playing] .widget-browser b{animation-delay:.3s}.feature-widget[data-playing] .widget-browser em{animation-delay:.2s}
.feature-widget[data-playing] .widget-gallery i{animation:service-gallery 1.3s cubic-bezier(.16,1,.3,1) both}
.feature-widget[data-playing] .widget-gallery i:nth-child(2){animation-delay:.12s}.feature-widget[data-playing] .widget-gallery i:nth-child(3){animation-delay:.24s}
.feature-widget[data-playing] .widget-message{animation:service-message 1s cubic-bezier(.16,1,.3,1) both}
.feature-widget[data-playing] .widget-message i{animation:service-check .7s .4s cubic-bezier(.16,1,.3,1) both}
.feature-widget[data-playing] .widget-search b{animation:service-search 1.2s cubic-bezier(.16,1,.3,1) both}
.feature-widget[data-playing] .widget-search i{animation:service-assemble .9s .3s cubic-bezier(.16,1,.3,1) both}
.feature-widget[data-playing] .widget-map i{animation:service-pin 1.4s cubic-bezier(.16,1,.3,1) both}
.feature-widget[data-playing] .widget-map i:nth-child(2){animation-delay:.2s}.feature-widget[data-playing] .widget-map i:nth-child(3){animation-delay:.4s}
@keyframes service-assemble{from{opacity:0;translate:0 10px}to{opacity:1;translate:0 0}}
@keyframes service-gallery{from{opacity:0;translate:0 18px;scale:.86}to{opacity:1;translate:0 0;scale:1}}
@keyframes service-message{from{opacity:0;translate:25px 0}to{opacity:1;translate:0 0}}
@keyframes service-check{from{scale:.4;rotate:-30deg}to{scale:1;rotate:0deg}}
@keyframes service-search{from{clip-path:inset(0 90% 0 0 round 30px)}to{clip-path:inset(0 0 0 0 round 30px)}}
@keyframes service-pin{0%{opacity:0;scale:0}60%{opacity:1;scale:1.35}100%{opacity:1;scale:1}}
.service-page .s-process article{--process-stage:#537b12}
.service-page .s-process article.is-current-step{border-color:#334a2875!important;box-shadow:inset 4px 0 #283d0b,0 14px 30px #34500014!important}
.service-page .s-process article>b{transition:transform .6s cubic-bezier(.16,1,.3,1)!important}
.service-page .s-process article.is-current-step>b{transform:rotate(-5deg) scale(1.06)}
.service-process-meter{margin-top:30px;display:flex;align-items:center;gap:13px;color:#283d0b;font:600 11px/1.5 Jost,system-ui}
.service-process-meter i{height:3px;flex:1;border-radius:9px;background:#334a2826;overflow:hidden}
.service-process-meter i>b{display:block;height:100%;width:100%;background:#283d0b;transform:scaleX(var(--process-progress,.2));transform-origin:left;transition:transform .8s cubic-bezier(.16,1,.3,1)}
.service-process-meter span{white-space:nowrap}
.demo-device-controls{display:flex;gap:6px;align-items:center;margin:0 0 15px;flex-wrap:wrap}
.demo-device-controls>span{color:#aaa3b9;font:500 10px Jost,system-ui;margin-right:auto;letter-spacing:.06em;text-transform:uppercase}
.demo-device-controls button,.demo-watch{font:500 11px/1.4 Jost,system-ui;border:1px solid #ffffff25;border-radius:99px;padding:7px 12px;background:#ffffff05;color:#c9c2d6;cursor:pointer;min-height:34px;transition:background .4s,color .4s}
.demo-device-controls button[aria-pressed=true]{background:#ffffff15;color:#fff;border-color:#ffffff65}
.demo-device-controls button:focus-visible,.demo-watch:focus-visible{outline:2px solid #00f0ff;outline-offset:4px}
.service-demo[data-web-demo] .s-mini-browser{width:100%;margin-inline:auto;transition:width .85s cubic-bezier(.16,1,.3,1),border-radius .85s;min-height:330px}
.service-demo[data-device=phone] .s-mini-browser{width:270px;max-width:100%;border-radius:26px;border:5px solid #30283d}
.service-demo[data-device=phone] .s-browser-page{padding:16px}
.service-demo[data-device=phone] .s-mini-nav>span{display:none}
.service-demo[data-device=phone] .s-mini-content{padding-block:22px;grid-template-columns:1fr;gap:18px}
.service-demo[data-device=phone] .s-mini-content b{font-size:25px}
.service-demo[data-device=phone] .s-house{min-height:70px;height:70px;aspect-ratio:auto;border-radius:10px}
.service-demo[data-device=phone] .s-mini-content p{font-size:11px}
.service-demo[data-device=phone] .s-mini-links{font-size:8px}
.demo-watch{display:inline-flex;align-items:center;gap:8px;margin-left:auto;color:#9bf7ff;border-color:#00f0ff40}
.demo-watch[aria-pressed=true]{background:#00f0ff15;color:#fff}
.demo-watch>span{font-size:9px;color:#00f0ff}
.service-cursor{position:fixed;left:0;top:0;z-index:1200;pointer-events:none;display:grid;place-items:center;width:19px;height:19px;margin:-9px 0 0 -9px;border:1px solid #c6ff0099;border-radius:50%;opacity:0;background:#c6ff0008;transition:transform .18s ease-out,width .55s cubic-bezier(.16,1,.3,1),height .55s cubic-bezier(.16,1,.3,1),margin .55s cubic-bezier(.16,1,.3,1),background .5s,opacity .25s}
.service-cursor.is-visible{opacity:1}.service-cursor.is-expanded{width:72px;height:72px;margin:-36px 0 0 -36px;background:#15111ee8;border-color:#c6ff00;box-shadow:inset 0 1px #ffffff20;color:#eaffaa;font:600 11px Jost,system-ui}
.service-page .s-project{position:relative}.service-page .s-project:hover .s-project-info>span{background:#c6ff00;color:#111;transform:rotate(45deg);transition:background .5s,transform .6s cubic-bezier(.16,1,.3,1)}
.service-page [data-service-wait]{opacity:0;transform:translateY(18px)}
.service-page .site-motion-control{position:fixed!important;bottom:15px;left:15px;z-index:60!important;min-height:34px;padding:8px 13px!important;border:1px solid #ffffff35!important;border-radius:99px!important;background:#15111ee8!important;color:#e9e2f1!important;font:500 11px/1.4 Jost,system-ui!important;box-shadow:0 4px 12px #0002}
.motion-paused .service-cursor{display:none}.motion-paused .service-hero-art>i,.site-motion-idle .service-hero-art>i{animation-play-state:paused!important}
.motion-paused .feature-widget *{animation:none!important}.motion-paused .service-demo{transform:none!important}.motion-paused .service-page [data-service-wait]{opacity:1;transform:none}
@media(max-width:650px){.service-cursor{display:none}.service-hero-art>i:first-child{right:3%;top:4%;font-size:24px;opacity:.3}.service-hero-art>i:nth-child(3){display:none}.feature-widget{height:125px}.service-page .s-card h3{min-height:0}.service-demo{transform:none!important}.service-process-meter{margin-top:24px}.demo-watch{margin-left:0}.service-page .site-motion-control{bottom:10px;left:10px;font-size:10px!important}.service-demo[data-web-demo] .s-mini-browser{min-height:300px}}
@media(prefers-reduced-motion:reduce){.service-cursor{display:none}.service-hero-art>i,.feature-widget *{animation:none!important}.service-page [data-service-wait]{opacity:1;transform:none}.service-page .service-demo{transform:none!important}.service-page .s-button:before{display:none}}
