/* Shared service motion language; original product content remains in its page. */
.service-film{width:min(100%,440px);aspect-ratio:16/9;margin:0 0 30px;border-radius:18px;overflow:hidden;background:#081728;box-shadow:0 18px 40px -28px #08172888}
.service-film svg{display:block;width:100%;height:100%;font-family:inherit}
.service-film .film-action{transform-origin:160px 85px}.service-film .film-bars{transform-origin:center 122px}
.service-hero-screen{border-color:#45665d!important;background:#0b242b!important}
@keyframes service-action{0%,100%{opacity:.5;transform:translateY(7px) scale(.96)}18%,85%{opacity:1;transform:translateY(0) scale(1)}}
@keyframes service-caption{0%,22%{opacity:0;transform:translateX(-6px)}40%,90%{opacity:1;transform:translateX(0)}100%{opacity:0;transform:translateX(4px)}}
@keyframes service-route{0%,100%{transform:translateX(-15px)}65%{transform:translateX(40px)}}
@keyframes service-bars{0%,100%{transform:scaleY(.6)}60%{transform:scaleY(1)}}
@keyframes service-check{0%,20%{opacity:.4}50%,100%{opacity:1}}
@keyframes service-chat{0%,100%{transform:translateY(4px);opacity:.6}45%,80%{transform:translateY(0);opacity:1}}
@media(prefers-reduced-motion:no-preference){.service-film.in-view .film-action{animation:service-action 9s ease-in-out infinite}.service-film.in-view .film-caption{animation:service-caption 9s ease-in-out infinite}.service-film.in-view .film-route{animation:service-route 7s ease-in-out infinite}.service-film.in-view .film-bars{animation:service-bars 6s ease-in-out infinite}.service-film.in-view .film-check{animation:service-check 6s ease-in-out infinite}.service-film.in-view .film-chat,.service-film.in-view .film-reply{animation:service-chat 6s ease-in-out infinite}.service-film.in-view .film-reply{animation-delay:-2s}}
body:has(.service-film) main .section:not(.dark-section) p{color:#344653;font-weight:500}
body:has(.service-film) main .dark-section p{color:#dce8ed}
@media(max-width:600px){.service-film{width:100%;max-width:360px;border-radius:12px;margin-bottom:24px}.service-film.in-view .film-action{animation:none}}
@media(prefers-reduced-motion:reduce){.service-film *{animation:none!important}}
html.motion-paused .service-film *{animation:none!important}
/* Pair the film with its introduction rather than adding a tall standalone row. */
.container:has(>.service-film):not(.messaging-grid){display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.7fr);gap:28px 42px;align-items:start}
.container:has(>.service-film):not(.messaging-grid)>*{grid-column:1/-1}
.container:has(>.service-film):not(.messaging-grid)>.service-film{grid-column:2;grid-row:1;width:100%;margin:0}
.container:has(>.service-film):not(.messaging-grid)>.section-head{grid-column:1;grid-row:1;display:block;margin:0}
.container:has(>.service-film)>.section-head .lead{margin-top:20px}
.messaging-grid>.service-film{grid-column:1/-1;margin-bottom:0}
@media(max-width:800px){.container:has(>.service-film):not(.messaging-grid){grid-template-columns:1fr;gap:24px}.container:has(>.service-film):not(.messaging-grid)>.section-head{grid-column:1;grid-row:1}.container:has(>.service-film):not(.messaging-grid)>.service-film{grid-column:1;grid-row:2;max-width:400px}.messaging-grid>.service-film{max-width:360px}}
/* Complete the shared service cards without changing their copy. */
body:has(.service-film) main .service-motion-card{min-width:0;padding:22px;border:1px solid #294352;border-radius:20px;background:#081728;box-shadow:0 18px 36px -30px #08172880}
body:has(.service-film) main .service-motion-card h3{color:#fff;font-size:1.2rem;line-height:1.3}
body:has(.service-film) main .section .service-motion-card p,body:has(.service-film) main .section .service-motion-card li{color:#dce8ed;font-weight:400;line-height:1.65}
body:has(.service-film) main .service-motion-card .step-number,body:has(.service-film) main .service-motion-card .card-number{color:#62dcae;font-size:.8rem;margin:0 0 12px}
.service-motion-card .service-card-film{width:100%;max-width:none;margin:0 0 18px;border:1px solid #294352;border-radius:12px;box-shadow:none}
@media(max-width:600px){body:has(.service-film) main .service-motion-card{padding:16px;border-radius:16px}body:has(.service-film) main .service-motion-card h3{font-size:1.08rem}.service-motion-card .service-card-film{margin-bottom:14px}}
.service-motion-card .service-card-film{height:145px;aspect-ratio:auto}
@media(min-width:951px){.two-grid:has(>.service-motion-card:nth-child(4)):not(:has(>:nth-child(5))){grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}}
@media(max-width:600px){.service-motion-card .service-card-film{height:112px}}
