.services-page{--s-ink:#152c43;--s-blue:#1769a8;--s-cyan:#b9eef0;--s-mist:#edf8f8;background:#fbfdfd;color:var(--s-ink);overflow:hidden}
.services-page .inner-hero{background:#24282e;padding:clamp(6rem,9vw,9rem) 0 clamp(3rem,5vw,5rem);position:relative}
.services-page .inner-hero:after{content:"";position:absolute;width:38vw;height:38vw;border:1px solid rgba(185,238,240,.12);border-radius:50%;right:-15vw;top:15%;box-shadow:0 0 0 7vw rgba(185,238,240,.025)}
.services-page .inner-hero .container{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-start;mix-blend-mode:lighten}
.services-page .inner-hero .section-kicker{color:var(--s-cyan)}
.services-page .inner-hero h1{font-size:clamp(3rem,7vw,7rem);letter-spacing:-.08em;line-height:.91;max-width:850px;margin:1rem 0 1.6rem}
.services-page .inner-hero h1.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.services-page .inner-hero .container>p:last-of-type{max-width:530px;color:rgba(237,247,247,.84);font-size:1.08rem;margin:.2rem 0 0}
.services-intro-motion{width:min(100%,560px);aspect-ratio:16/9;margin:.65rem 0 .85rem;overflow:hidden}
.services-intro-video{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none;-webkit-mask-image:linear-gradient(to right,transparent,#000 12%,#000 82%,transparent),linear-gradient(to bottom,transparent,#000 13%,#000 87%,transparent);-webkit-mask-composite:source-in;mask-image:linear-gradient(to right,transparent,#000 12%,#000 82%,transparent),linear-gradient(to bottom,transparent,#000 13%,#000 87%,transparent);mask-composite:intersect}
.services-intro-video::-webkit-media-controls,.services-intro-video::-webkit-media-controls-enclosure,.services-intro-video::-webkit-media-controls-panel,.services-intro-video::-webkit-media-controls-start-playback-button{display:none!important}
.service-divisions{background:var(--s-ink)}.service-division{min-height:82vh;display:flex;align-items:center;color:#edf7f7;position:relative;border-bottom:1px solid rgba(214,237,239,.2);overflow:hidden}
.service-division:before{content:"";position:absolute;width:34vw;height:34vw;border:1px solid rgba(185,238,240,.16);border-radius:50%;right:-13vw;top:20%;transition:transform 1s cubic-bezier(.2,.8,.2,1)}
.service-division:nth-child(even){background:#193852}.service-division:nth-child(even):before{left:-13vw;right:auto;border-radius:42% 58% 53% 47%}
.service-division.is-inview:before{transform:scale(1.3) rotate(18deg)}
.service-division-grid{display:grid;grid-template-columns:1fr 1.8fr 1fr;gap:clamp(2rem,6vw,7rem);align-items:start;position:relative;z-index:1}
.service-division-grid>div:nth-child(1){grid-column:2}.service-division-grid .section-kicker{color:var(--s-cyan)}.service-division h2{font-size:clamp(2.2rem,4vw,4.7rem);line-height:.96;letter-spacing:-.07em;margin:1rem 0 1.8rem;max-width:700px}.service-lead{font-size:1.05rem;line-height:1.55;color:#c9dadd;max-width:600px}.service-capabilities{grid-column:3;list-style:none;padding:0;margin:0;border-top:1px solid rgba(214,237,239,.3)}.service-capabilities li{padding:.9rem 0;border-bottom:1px solid rgba(214,237,239,.3);font-size:.85rem;color:#c9dadd;transition:padding .4s,color .4s}.service-capabilities li:before{content:"↳";color:var(--s-cyan);margin-right:.65rem}.service-capabilities li:hover{padding-left:.8rem;color:#fff}.service-division .inline-link{color:#fff;text-underline-offset:5px}.page-contact-strip{background:var(--s-cyan);color:var(--s-ink)}
@media(max-width:767px){.services-page .inner-hero{padding:7.5rem 0 4rem}.services-page .inner-hero h1{font-size:clamp(3rem,14vw,5rem)}.service-division{min-height:auto;padding:5.5rem 0}.service-division-grid{display:flex;flex-direction:column;gap:2rem}.service-division-grid>div:nth-child(1){display:none}.service-capabilities{width:100%}.service-division:before{width:70vw;height:70vw;right:-35vw}.service-division:nth-child(even):before{left:auto;right:-35vw}}
@media(prefers-reduced-motion:reduce){.service-division:before,.service-capabilities li{transition:none}}

/* Service visuals */
.service-visual{grid-column:1;grid-row:1;align-self:center;position:relative;width:clamp(150px,16vw,230px);height:220px;opacity:.85;transform:translateY(20px);transition:opacity .8s,transform .8s}
.footer .contact-info{display:grid;gap:.7rem;margin-top:1rem}.footer .contact-info p{display:grid;grid-template-columns:1.25rem minmax(0,1fr);gap:.65rem;align-items:start;margin:0!important;line-height:1.45;font-size:.84rem}.footer .contact-info p i{color:#b9eef0;text-align:center}.footer .contact-info p span{min-width:0}.footer .row:first-child>div:last-child{padding-left:clamp(1rem,2vw,2rem);border-left:1px solid rgba(185,238,240,.22)}@media(max-width:991px){.footer .row:first-child>div:last-child{padding-left:calc(var(--bs-gutter-x) * .5);border-left:0;border-top:1px solid rgba(185,238,240,.22);padding-top:1.5rem}}

@media(max-width:767px){
  .services-page .inner-hero{padding:7rem 0 3rem}
  .services-page .inner-hero h1{font-size:clamp(3rem,14vw,5rem)}
  .services-intro-motion{width:min(100%,340px);margin:.45rem 0 .65rem}
  .services-page .inner-hero .container>p:last-of-type{max-width:34rem}
}

/* Third-pass visual system: four authored instruments, not decorative cards. */
.service-visual{overflow:visible;isolation:isolate;color:var(--s-cyan)}
.service-division.is-inview .service-visual{opacity:1;transform:none}
.service-capabilities{position:relative;border-top-color:rgba(185,238,240,.38)}
.service-capabilities li{position:relative;padding-left:1.65rem!important;opacity:.72;transform:translateX(-10px);transition:opacity .65s cubic-bezier(.2,.8,.2,1),transform .65s cubic-bezier(.2,.8,.2,1),color .35s,padding-left .35s}
.service-capabilities li:before{content:"";position:absolute;left:0;top:1.12rem;width:13px;height:7px;margin:0;border-top:1px solid rgba(185,238,240,.72);border-bottom:1px solid rgba(185,238,240,.72);transform:skewX(-28deg);transition:width .45s cubic-bezier(.2,.8,.2,1),border-color .35s,transform .45s}
.service-capabilities li:after{content:"";position:absolute;left:5px;top:1.28rem;width:4px;height:4px;background:var(--s-cyan);transform:rotate(45deg) scale(.6);opacity:.2;transition:transform .45s cubic-bezier(.2,.8,.2,1),opacity .35s}
.service-division.is-inview .service-capabilities li{opacity:1;transform:none;transition-delay:calc(var(--cap-index, 0) * 70ms)}
.service-capabilities li:hover,.service-capabilities li:focus-visible,.service-capabilities li:active{padding-left:2rem!important;color:#fff}
.service-capabilities li:hover:before,.service-capabilities li:focus-visible:before,.service-capabilities li:active:before{width:19px;border-color:var(--s-cyan);transform:skewX(-28deg) translateX(1px)}
.service-capabilities li:hover:after,.service-capabilities li:focus-visible:after,.service-capabilities li:active:after{transform:rotate(45deg) scale(1);opacity:1}
.service-capabilities li:focus-visible{outline:1px solid rgba(185,238,240,.55);outline-offset:5px}
.service-capabilities li:nth-child(1){--cap-index:0}.service-capabilities li:nth-child(2){--cap-index:1}.service-capabilities li:nth-child(3){--cap-index:2}.service-capabilities li:nth-child(4){--cap-index:3}.service-capabilities li:nth-child(5){--cap-index:4}.service-capabilities li:nth-child(6){--cap-index:5}.service-capabilities li:nth-child(7){--cap-index:6}.service-capabilities li:nth-child(8){--cap-index:7}
.visual-crm{display:grid;place-items:center;width:390px;height:190px;border:0;background:transparent}
.crm-ecosystem{position:relative;width:390px;height:190px;display:flex;align-items:center;justify-content:space-between;transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.product-node{position:relative;z-index:2;width:112px;height:96px;display:grid;place-items:center;border:1px solid rgba(185,238,240,.68);background:linear-gradient(145deg,rgba(247,253,253,.98),rgba(185,238,240,.9));padding:12px;box-shadow:0 16px 34px rgba(5,20,34,.18);transition:transform .65s cubic-bezier(.2,.8,.2,1),border-color .5s,box-shadow .5s}
.product-node:after{content:"";position:absolute;inset:5px;border:1px solid rgba(21,44,67,.14);pointer-events:none}
.product-node img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;position:relative;z-index:1;filter:none}.product-os1 img{padding:1px 6px}.product-sphere img{padding:8px 2px}.product-bankey img{padding:7px 0}
.product-label{position:absolute;left:0;top:-1.25rem;font:500 .54rem/1 "DM Mono",monospace;letter-spacing:.13em;color:var(--s-cyan)}
.ecosystem-link{position:absolute;left:105px;right:105px;top:50%;height:1px;background:var(--s-cyan);opacity:.7}.ecosystem-link:before,.ecosystem-link:after{content:"";position:absolute;top:-3px;width:7px;height:7px;border:1px solid var(--s-cyan);background:var(--s-ink);transform:rotate(45deg)}.ecosystem-link:before{left:0}.ecosystem-link:after{right:0}.ecosystem-link i,.ecosystem-link span,.ecosystem-link b{position:absolute;top:-2px;width:5px;height:5px;background:var(--s-cyan);transform:rotate(45deg);animation:coreTransfer 4.2s ease-in-out infinite}.ecosystem-link i{left:15%}.ecosystem-link span{left:48%;animation-delay:-1.4s}.ecosystem-link b{left:78%;animation-delay:-2.8s}
.visual-crm:hover .crm-ecosystem{transform:translateY(-6px)}.visual-crm:hover .product-os1{transform:translateY(-5px) rotate(-2deg);border-color:var(--s-cyan);box-shadow:0 20px 40px rgba(5,20,34,.24)}.visual-crm:hover .product-sphere{transform:translateY(5px) rotate(2deg);border-color:#fabc25;box-shadow:0 20px 40px rgba(5,20,34,.24)}.visual-crm:hover .product-bankey{transform:translateY(-4px) rotate(1deg);border-color:#fabc25;box-shadow:0 20px 40px rgba(5,20,34,.24)}.visual-crm:hover .ecosystem-link{opacity:1}
@keyframes coreTransfer{0%,100%{transform:translateX(0) rotate(45deg);opacity:.35}50%{transform:translateX(12px) rotate(45deg);opacity:1}}
.visual-web{width:250px;height:185px}.visual-web svg{width:100%;height:100%;overflow:visible}.web-route{fill:none;stroke:rgba(185,238,240,.58);stroke-width:1.1;stroke-dasharray:5 8;transition:stroke .5s,stroke-width .5s}.route-two{stroke:rgba(23,105,168,.9)}.route-three{stroke:rgba(185,238,240,.3);stroke-dasharray:2 7}.web-nodes circle{fill:var(--s-ink);stroke:var(--s-cyan);stroke-width:1.3;transition:fill .5s,r .5s}.visual-web:hover .web-route{stroke-width:1.8;stroke:var(--s-cyan)}.visual-web:hover .web-nodes circle{fill:var(--s-blue)}
.visual-production{width:250px;height:190px}.production-flow{width:100%;height:100%;overflow:visible}.flow-track{fill:none;stroke:rgba(185,238,240,.76);stroke-width:1.35;stroke-linecap:round}.flow-echo{fill:none;stroke:rgba(23,105,168,.72);stroke-width:1;stroke-dasharray:2 8;stroke-linecap:round;transition:stroke .5s,stroke-width .5s}.flow-marker{fill:var(--s-cyan);stroke:var(--s-ink);stroke-width:2}.visual-production:hover .flow-track{stroke-width:2}.visual-production:hover .flow-echo{stroke:var(--s-cyan);stroke-width:1.5}.visual-production:hover .flow-marker{r:5}
.visual-infrastructure{height:190px;width:250px;border:0;background:transparent}.infrastructure-map{width:100%;height:100%;overflow:visible}.infra-link{fill:none;stroke:rgba(185,238,240,.62);stroke-width:1.1;stroke-linecap:round;stroke-linejoin:round;transition:stroke .5s,stroke-width .5s}.infra-link-soft{stroke:rgba(23,105,168,.8);stroke-dasharray:3 6}.infra-point{fill:var(--s-ink);stroke:var(--s-cyan);stroke-width:1.2;transition:fill .45s,stroke .45s,r .45s}.infra-point-core{fill:var(--s-blue);stroke:var(--s-cyan)}.visual-infrastructure:hover .infra-link{stroke:var(--s-cyan);stroke-width:1.7}.visual-infrastructure:hover .infra-point{fill:var(--s-cyan)}.visual-infrastructure:hover .infra-point-core{r:9}
@media(max-width:767px){.visual-crm{width:min(100%,320px);margin-inline:auto}.crm-ecosystem{width:320px}.product-node{width:94px;height:86px;padding:9px}.ecosystem-link{left:88px;right:88px}.visual-web,.visual-production,.visual-infrastructure{width:min(100%,280px);margin-inline:auto}}
@media(prefers-reduced-motion:reduce){.crm-ecosystem,.product-node,.web-route,.web-nodes circle,.service-capabilities li,.service-capabilities li:before,.service-capabilities li:after,.flow-echo,.infra-link,.infra-point{transition:none}.service-capabilities li{opacity:1;transform:none}.visual-crm:hover .crm-ecosystem,.visual-crm:hover .product-os1,.visual-crm:hover .product-sphere,.visual-crm:hover .product-bankey{transform:none}.ecosystem-link i,.ecosystem-link span,.ecosystem-link b{animation:none}.flow-marker animateMotion{display:none}}