/* Service catalogue and editorial pages share the site's violet / blue palette. */
.page-services .pagehead{padding-bottom:12px}.page-services .pagehead h1{margin-bottom:0}.page-services #main-content{padding-top:12px}.services-intro{max-width:1000px;margin:0 auto 38px;text-align:center;font-size:15px;line-height:1.9}
.service-catalog{gap:22px}.service-catalog-card{position:relative;border:1px solid #e1e5f2!important;background:linear-gradient(145deg,#fff 50%,#f0edff)!important;padding:28px!important;overflow:hidden;transition:transform .25s,box-shadow .25s,border-color .25s;display:flex;flex-direction:column}.service-catalog-card.tone-1{background:linear-gradient(145deg,#fff 50%,#eaf4ff)!important}.service-catalog-card.tone-2{background:linear-gradient(145deg,#fff 50%,#e7f9f8)!important}.service-catalog-card.tone-3{background:linear-gradient(145deg,#fff 50%,#f8edff)!important}.service-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.service-icon{display:inline-grid;place-items:center;width:66px;height:66px;border-radius:20px;background:linear-gradient(135deg,#8238ff,#076df8);color:white;box-shadow:0 8px 24px #6355e326;flex-shrink:0}.service-icon svg{width:34px;height:34px}.tone-1 .service-icon{background:linear-gradient(135deg,#267cf8,#18b8dd)}.tone-2 .service-icon{background:linear-gradient(135deg,#087f9e,#26b8ac)}.tone-3 .service-icon{background:linear-gradient(135deg,#ac38dc,#6143e9)}.service-card-arrow{font-size:25px;color:#6555cf}.service-catalog-card h2{font-size:19px!important;line-height:1.5;margin:0 0 14px}.service-catalog-card p{font-size:13px;line-height:1.85;margin:0 0 26px}.service-card-more{font-size:12px;color:#4d3db5;font-weight:600;margin-top:auto}.service-catalog-card:hover,.service-catalog-card:focus-visible{transform:translateY(-5px);box-shadow:0 15px 40px #30316816;border-color:#9d87ef!important}.service-catalog-card:focus-visible{outline:3px solid #793ff8;outline-offset:3px}
.service-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:55px;align-items:start}.service-detail-layout .content{max-width:none}.service-detail-layout .lead{font-size:17px;color:#28314f}.service-sidebar{position:sticky;top:115px;min-width:0}.service-photo{display:block;width:100%;height:245px;object-fit:cover;border-radius:18px}.service-help-card{background:linear-gradient(145deg,#f3efff,#edf7ff);padding:28px;border:1px solid #e0d9f8;border-radius:18px;margin-top:20px}.service-help-card h2{font-size:21px;line-height:1.5;margin:22px 0 12px}.service-help-card p{font-size:12px;line-height:1.9}.service-call{display:block;font-size:21px;font-weight:700;color:#5940c4;margin:18px 0}.service-help-card .btn{width:100%;justify-content:center}.service-detail-layout .actions{flex-wrap:wrap;gap:12px}.service-detail-layout .actions .btn{font-size:12px}.service-detail-layout .seo-detail h2{font-size:24px}.service-related{border-top:1px solid #e5e6ef;margin-top:35px;padding-top:20px}
.page-news .pagehead,.page-article .pagehead{padding-bottom:18px}.page-news #main-content,.page-article #main-content{padding-top:15px}.news-intro{max-width:950px;margin:0 auto 35px;text-align:center}.news-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.news-card{border:1px solid #e2e6f2;border-radius:20px;overflow:hidden;background:linear-gradient(150deg,#fff,#f1f2ff);transition:box-shadow .2s}.news-card:hover{box-shadow:0 15px 40px #343b6920}.news-card img{display:block;width:100%;height:270px;object-fit:cover}.news-card-copy{padding:30px}.news-card h2{font-size:24px;line-height:1.5;margin:15px 0}.news-card p{font-size:13px}.news-card time{font-size:12px;color:#6c7587}.news-article{max-width:880px;margin:auto}.page-article .pagehead h1{max-width:1100px;margin-inline:auto;font-size:clamp(27px,3.2vw,45px)}.article-meta{display:flex;gap:12px 22px;flex-wrap:wrap;color:#6c728a;font-size:12px;align-items:center;margin-bottom:25px}.article-meta>span{color:#6446d6;background:#f1edff;padding:6px 14px;border-radius:30px}.news-article .lead{font-size:17px;line-height:1.9}.news-article figure{margin:35px 0}.news-article figure img{display:block;width:100%;height:auto;max-height:520px;object-fit:cover;border-radius:18px}.news-article figcaption{font-size:11px;color:#6c7587;margin-top:10px;line-height:1.7}.article-toc{padding:25px 30px;background:#f3f4ff;border-radius:16px;display:grid;gap:10px;margin:35px 0}.article-toc strong{color:#323450;margin-bottom:8px}.article-toc a{font-size:13px;color:#5b41ba;text-decoration:underline;text-underline-offset:4px}.news-article section{scroll-margin-top:120px}.news-article h2{font-size:26px;line-height:1.5;margin:35px 0 16px}.news-article p{line-height:1.95}.article-takeaway{padding:30px;background:linear-gradient(135deg,#eae3ff,#e5f5ff);border-radius:20px;margin:40px 0}.article-takeaway h2{margin-top:0}.article-takeaway .actions{flex-wrap:wrap;gap:12px}.article-sources{border-top:1px solid #e3e7f1;padding-top:5px;margin:35px 0}.article-sources p,.article-sources li{font-size:12px;line-height:1.9}.article-sources a{color:#6041c0;text-decoration:underline;overflow-wrap:anywhere}
@media(max-width:1000px){.service-detail-layout{grid-template-columns:minmax(0,1fr) 290px;gap:30px}.service-help-card{padding:22px}.neo-utility-left{gap:12px}.neo-utility-left>span:first-child{font-size:10px}}
@media(max-width:767px){.services-intro{text-align:left;font-size:13px;margin-bottom:25px}.service-catalog-card{padding:23px!important}.service-detail-layout{grid-template-columns:1fr;gap:30px}.service-sidebar{position:static;display:grid;grid-template-columns:1fr;gap:20px}.service-help-card{margin-top:0}.service-photo{height:240px}.service-detail-layout .seo-detail h2{font-size:22px}.news-grid{grid-template-columns:1fr}.news-card img{height:220px}.news-card-copy{padding:22px}.news-card h2{font-size:21px}.news-intro{text-align:left}.news-article h2{font-size:23px}.news-article .lead{font-size:15px}.article-toc{padding:22px}.article-takeaway{padding:22px}.article-meta{gap:8px 14px}.page-article .pagehead h1{font-size:27px}.article-sources ul{padding-left:20px}}
.inner-page.page-services .pagehead{padding-bottom:8px!important}.inner-page.page-services .pagehead h1{margin-bottom:0!important}.inner-page.page-service #main-content{padding-top:32px}.inner-page.page-news #main-content,.inner-page.page-article #main-content{padding-top:20px}
@media(prefers-reduced-motion:reduce){.service-catalog-card{transition:none}.service-catalog-card:hover{transform:none}}
.news-article .lead{max-width:none}.hardware-detail .service-photo{height:300px;margin-bottom:30px}.service-related a{color:#6041c0;text-decoration:underline;text-underline-offset:4px}
.mobile-pages-toggle{display:none}
/* These two effects play on mobile and with reduced-motion preferences, per the site owner's choice. The slideshow retains its explicit pause control. */
.neo-hero .neo-hero-slide{transition:opacity 1.25s ease!important}
.neo-hero .neo-hero-slide img{transition:transform 8s linear!important}
.neo-hero .neo-hero-slide:not(.is-active) img{transform:scale(1.06)!important}
.neo-hero .neo-hero-slide.is-active img{transform:scale(1)!important}
.contact-scene .contact-tech-art:before{animation:tech-flow 22s linear infinite!important}
.contact-scene .contact-tech-art i{animation:tech-float 8s ease-in-out infinite!important}
.contact-scene .contact-tech-art i:nth-child(2){animation-delay:-3s!important}
.contact-scene .contact-tech-art i:nth-child(3){animation-delay:-5s!important}
@media(max-width:767px){
 .neo-site-header .neo-main-nav #navigation.links.open{position:fixed!important;top:var(--mobile-menu-top,104px)!important;left:0!important;right:0!important;width:100%!important;max-width:100vw!important;height:auto!important;max-height:calc(100dvh - var(--mobile-menu-top,104px))!important;margin:0!important;padding:12px 20px 20px!important;box-sizing:border-box;display:flex!important;flex-direction:column!important;flex-wrap:nowrap!important;align-items:stretch!important;gap:0!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior:contain;background:#111a32!important;z-index:1000}
 .neo-site-header .neo-main-nav #navigation.links>*,.neo-site-header .neo-main-nav #navigation.links>a{min-width:0;max-width:100%;flex:0 0 auto;box-sizing:border-box}
 .neo-site-header .neo-main-nav #navigation.links>a{width:100%;padding:10px 4px!important;min-height:44px;font-size:14px!important;line-height:1.5;white-space:normal!important;margin:0!important;justify-content:flex-start;overflow-wrap:anywhere}
 .neo-site-header .neo-main-nav #navigation .neo-nav-pages>a{display:none!important}
 .neo-site-header .neo-main-nav #navigation .mobile-pages-toggle{display:flex;width:100%;min-height:44px;align-items:center;justify-content:space-between;gap:15px;padding:10px 4px;border:0;background:transparent;color:#fff;font:inherit;font-size:14px;font-weight:600;text-align:left;cursor:pointer}
 .mobile-pages-toggle>span{font-size:23px;line-height:1}
 .neo-site-header .neo-main-nav #navigation .neo-pages-menu{display:none!important;position:static!important;min-width:0!important;width:100%;transform:none;box-sizing:border-box;padding:0 0 8px 14px!important}
 .neo-site-header .neo-main-nav #navigation .neo-nav-pages.is-open .neo-pages-menu{display:grid!important;gap:0}
 .neo-site-header .neo-main-nav #navigation .neo-pages-menu a{padding:9px 4px!important;min-height:40px;white-space:normal;overflow-wrap:anywhere;border-radius:0;font-size:12px!important}
 .neo-site-header .neo-main-nav #navigation.links>a.mobile-contact{display:flex!important;align-items:center;gap:13px;margin-top:12px!important;padding:13px 16px!important;min-height:64px;border:1px solid #826eff!important;border-radius:12px;background:linear-gradient(110deg,#6340d8,#165dc5);color:white!important;white-space:nowrap!important;overflow-wrap:normal;box-shadow:0 5px 22px #0002}
 .mobile-contact .headset-icon{width:27px;height:27px;flex:0 0 27px}
 .mobile-contact small{display:block;font-size:10px;line-height:1.5;color:#eee8ff}
 .mobile-contact strong{display:block;font-size:18px;line-height:1.6;letter-spacing:0;white-space:nowrap}
}

.footer-refresh .footgrid a.brand{display:flex;align-items:center;gap:10px;font-family:Arial,sans-serif;font-size:24px!important;white-space:nowrap}.footer-refresh .brand>img{width:40px;height:40px;flex:0 0 40px;object-fit:contain}.footer-refresh .brand>span{display:block}
/* Keep both halves of the seamless strip moving, including touch devices and reduced-motion preferences. */
.neo-tech-strip .technology-track{display:flex;width:max-content!important;animation:technology-drift 30s linear infinite!important;animation-play-state:running!important;will-change:transform}
.neo-tech-strip .technology-track .technology-group{display:flex!important;flex:0 0 auto;flex-wrap:nowrap!important;justify-content:flex-start!important;gap:48px!important;padding-right:48px!important}
@keyframes technology-drift{from{transform:translate3d(-50%,0,0)}to{transform:translate3d(0,0,0)}}
@media(hover:hover) and (pointer:fine){.neo-tech-strip .technology-marquee:hover .technology-track{animation-play-state:paused!important}}
@media(max-width:767px){.neo-tech-strip .technology-track .technology-group{gap:30px!important;padding-right:30px!important}.neo-tech-strip .technology-track{animation-duration:25s!important}}

.neo-site-header .neo-brand b,.footer-refresh .brand b{color:#fff!important}
