:root{color-scheme:dark;--blue:#00caff;--line:#09517d;--bg:#000;--muted:#b8c8df}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#000;color:#fff;font-family:Arial,Helvetica,sans-serif;font-size:15px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.wrap{width:min(1400px,calc(100% - 9vw));margin:auto}.header{height:72px;background:#000;border-bottom:1px solid #0c3257;position:relative;z-index:10}.head-inner{height:100%;display:flex;align-items:center;gap:35px}.brand{width:255px;height:66px;display:flex;align-items:center;flex-shrink:0;overflow:hidden}.brand img{width:205px;height:150px;object-fit:contain;mix-blend-mode:screen}.nav{display:flex;align-items:center;gap:22px;margin:auto;font-size:12px;white-space:nowrap}.nav a:hover,.nav .active{color:var(--blue)}.nav .active{border-bottom:2px solid var(--blue);padding-bottom:10px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:18px;border-radius:8px;padding:15px 24px;font-size:13px;font-weight:bold;white-space:nowrap;transition:transform .2s,box-shadow .2s}.btn:hover{transform:translateY(-2px)}.btn-primary{background:linear-gradient(135deg,#00b7fa,#0057ee);box-shadow:0 0 24px #005cff45}.btn-outline{border:1px solid var(--blue);background:#000a}.header-cta{padding:14px 21px}.menu{display:none}.hero{position:relative;isolation:isolate;padding:28px 0 0;overflow:hidden;background:#000}.hero-photo{position:absolute;z-index:-1;inset:0 0 100px 0;background:linear-gradient(90deg,#000 0%,#000b 29%,#0001 52%,#0008 77%,#000 100%),linear-gradient(0deg,#000 0%,transparent 35%),url('assets/city-ambience.webp') center 48%/cover no-repeat;opacity:.86}.hero-layout{display:grid;grid-template-columns: 1fr 1fr;gap:25px;min-height:335px;align-items:center}.hero-copy{max-width:650px}.eyebrow{font-size:10px;font-weight:800;letter-spacing:3.2px;color:#a9ddff;margin:0 0 12px}.eyebrow i{display:inline-block;width:5px;height:5px;background:var(--blue);margin:0 13px 2px}.hero h1{font-size:clamp(34px,3.5vw,60px);line-height:1.04;letter-spacing:-1.8px;margin:0 0 14px;font-weight:800}.hero h1 em,h2 em{font-style:normal;color:#03c9f5}.hero-desc{font-size:17px;line-height:1.45;max-width:555px;margin:0 0 17px}.specialties{font-size:12px;letter-spacing:3px;margin:0 0 22px}.specialties b{color:var(--blue);padding:0 9px}.actions{display:flex;gap:14px}.actions .btn{min-width:194px}.tech-stage{perspective:1100px;display:flex;justify-content:flex-end}.tech-frame{width:min(100%,620px);height:285px;display:grid;grid-template-columns:53% 47%;padding:22px;align-items:center;background:linear-gradient(130deg,#04336ccf,#010917f5 58%,#000b);border:2px solid #0089fb;box-shadow:0 0 26px #007fff7a,inset 0 0 38px #0078ff2c;clip-path:polygon(14% 0,100% 0,100% 100%,0 100%);transform:rotateY(-8deg) skewX(-4deg)}.circuit{height:100%;border:1px solid #007dd1;background:radial-gradient(circle,#005e9c60,transparent 67%);display:flex;justify-content:center;align-items:center}.circuit svg{height:100%;width:100%}.tech-copy{padding:10px 4px 10px 19px;transform:skewX(4deg)}.tech-copy h2{font-size:25px;line-height:1.1;color:var(--blue);margin:0 0 13px}.tech-copy p{font-size:10px;letter-spacing:2px;line-height:1.6;color:#b8d9fa}.tech-copy ul{list-style:none;padding:0;margin:18px 0 0}.tech-copy li{font-size:11px;margin:0 0 12px}.tech-copy li:before{content:'✧';color:var(--blue);margin-right:9px}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-top:15px;margin-bottom:14px}.service{min-height:122px;display:flex;align-items:flex-start;gap:18px;padding:22px 18px;background:linear-gradient(140deg,#061f3cdd,#000d);border:1px solid #096299;border-radius:10px;box-shadow:inset 0 0 24px #003d7b1c}.service:hover{border-color:#00caff;transform:translateY(-2px)}.service-icon{font-size:51px;line-height:1;color:var(--blue);text-shadow:0 0 15px #00bfff}.ai-icon{font-size:26px;border:2px solid var(--blue);border-radius:7px;padding:8px 4px;margin-top:2px}.service strong{display:block;font-size:15px;margin:0 0 9px}.service small{display:block;color:#d1ddec;font-size:12px;line-height:1.5}.service em{display:block;font-style:normal;color:var(--blue);font-size:12px;margin-top:10px}.approach{display:grid;grid-template-columns:38% 1fr;gap:40px;align-items:center;padding-top:12px;padding-bottom:12px}.approach h2{font-size:clamp(28px,2.6vw,41px);line-height:1.08;margin:0 0 10px}.approach p:not(.eyebrow){font-size:14px;color:#d4e0f0;line-height:1.45;max-width:440px}.approach .btn{padding:12px 20px}.approach-image{height:235px;border:1px solid #0876b9;border-radius:10px;background:#00162d url('assets/ai-interface.webp') center/cover no-repeat;box-shadow:inset 0 0 40px #0007}.industries{border-top:1px solid #0b406c;border-bottom:1px solid #0b406c;background:#010a15;padding:17px 0 15px}.industry-top{display:flex;justify-content:space-between;align-items:center}.industry-top h2{margin:0;font-size:21px}.industry-top .btn{padding:10px 17px;color:var(--blue)}.industry-list{display:grid;grid-template-columns:repeat(8,1fr);margin-top:13px}.industry-list div{text-align:center;border-left:1px solid #125184;color:var(--blue);font-size:30px;line-height:1}.industry-list div:last-child{border-right:1px solid #125184}.industry-list small{display:block;color:#fff;font-size:12px;margin-top:8px}.showcase{background:linear-gradient(90deg,#031d4e,#003d9b 50%,#031b4b);border-block:1px solid #007cf6;padding:12px 0}.showcase-inner{display:flex;align-items:center;gap:15px}.showcase-title{width:185px;flex-shrink:0}.showcase-title h2{font-size:21px;line-height:1.05;margin:0}.arrow{width:35px;height:35px;border-radius:50%;background:#001536;border:1px solid #7ac7ff;color:#fff;font-size:28px;cursor:pointer;flex-shrink:0}.app-viewport{overflow:hidden;flex:1}.app-track{display:flex;gap:22px;transition:transform .35s}.app-item{min-width:95px;text-align:center;font-size:11px}.app-item img{display:block;width:66px;height:66px;object-fit:cover;border-radius:11px;margin:0 auto 6px;box-shadow:0 0 12px #04a8ff8c}.preview-note{font-size:10px;color:#b5c6df;margin-top:8px;margin-bottom:0}.cta{padding:55px 0;display:flex;align-items:center;justify-content:space-between;gap:20px}.cta h2{font-size:30px;margin:0 0 8px}.cta p:not(.eyebrow){color:#c0cddd}.footer{border-top:1px solid #143759;background:#01050b;padding-top:28px}.footer-inner{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:25px}.footer h3{font-size:14px;letter-spacing:2px;color:var(--blue)}.footer p,.footer a{display:block;color:#b6c4d8;font-size:12px;line-height:1.8}.footer strong{font-size:13px}.copyright{display:flex;justify-content:space-between;border-top:1px solid #113153;margin-top:28px;padding:13px 0;color:#9aaec7;font-size:11px}.quote-page{min-height:calc(100vh - 72px);padding:60px 0}.quote-page h1{font-size:clamp(32px,4vw,55px)}.quote-box{max-width:760px;background:#041022;border:1px solid #096299;border-radius:14px;padding:32px}.quote-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:flex;flex-direction:column;gap:8px;margin-bottom:18px}.field label{font-size:13px}.field input,.field select,.field textarea{width:100%;background:#000;color:#fff;border:1px solid #165987;border-radius:7px;padding:13px}.field textarea{min-height:130px;resize:vertical}.form-note{color:#a9bed4;font-size:12px}.message{color:#6ce5ff;font-size:13px}@media(max-width:1200px){.head-inner{gap:14px}.brand{width:195px}.brand img{width:175px}.nav{gap:11px;font-size:11px}.tech-frame{height:265px}.service{padding:16px 12px;gap:10px}.service-icon{font-size:36px}}@media(max-width:900px){.wrap{width:calc(100% - 36px)}.header{height:68px}.menu{display:block;margin-left:auto;background:transparent;color:#fff;border:1px solid #1476a8;padding:7px 12px;border-radius:6px;font-size:23px}.nav{display:none;position:absolute;top:68px;left:0;right:0;background:#010b18;padding:20px;flex-direction:column;align-items:flex-start;gap:17px}.nav.open{display:flex}.header-cta{display:none}.hero-layout{grid-template-columns:1fr;gap:25px}.hero-photo{inset:0 0 120px}.tech-stage{justify-content:center}.tech-frame{max-width:650px}.cards{grid-template-columns:repeat(2,1fr)}.approach{grid-template-columns:1fr;gap:20px}.approach-image{height:240px}.industry-list{grid-template-columns:repeat(4,1fr);gap:15px 0}.footer-inner{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.hero{padding-top:30px}.hero h1{font-size:37px}.hero-desc{font-size:15px}.specialties{font-size:10px;letter-spacing:1.3px}.actions{flex-wrap:wrap}.actions .btn{min-width:0;flex:1}.tech-frame{height:230px;padding:14px}.tech-copy h2{font-size:17px}.tech-copy p{font-size:8px}.tech-copy li{font-size:9px;margin-bottom:8px}.cards{gap:10px}.service{flex-direction:column;min-height:190px}.service strong{font-size:13px}.service small{font-size:11px}.industry-top{gap:15px}.industry-top .btn{font-size:10px}.industry-list small{font-size:10px}.showcase-title{width:110px}.showcase-title h2{font-size:16px}.showcase-inner{gap:7px}.app-item{min-width:75px}.app-item img{width:58px;height:58px}.cta{flex-direction:column;align-items:flex-start}.footer-inner{grid-template-columns:1fr 1fr}.copyright{display:block}.copyright span{display:block;margin-top:8px}.quote-grid{grid-template-columns:1fr}.quote-box{padding:18px}}

/* v2.1: one shared content grid across all sections */
:root{--site-max:1400px;--site-gutter:clamp(20px,4.5vw,72px);--site-width:min(var(--site-max),calc(100% - 2 * var(--site-gutter)))}
html,body{max-width:100%;overflow-x:clip}
.wrap{width:var(--site-width);max-width:var(--site-max);margin-inline:auto}
.header .head-inner,.hero .hero-layout,.hero .cards,.approach.wrap,.industries .wrap,.showcase .showcase-inner,.showcase .preview-note,.cta.wrap,.footer .wrap{width:var(--site-width);max-width:var(--site-max);margin-inline:auto}
.hero-layout,.cards,.approach,.industry-list,.showcase-inner,.footer-inner{min-width:0}
.hero-layout>*,.cards>*,.approach>*,.showcase-inner>*,.footer-inner>*{min-width:0}
.hero-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.service{height:100%;min-width:0}
.approach{grid-template-columns:minmax(0,38fr) minmax(0,62fr);gap:clamp(20px,3vw,44px)}
.approach-image{width:100%;min-width:0}
.industry-list{grid-template-columns:repeat(8,minmax(0,1fr))}
.showcase-inner{display:grid;grid-template-columns:minmax(155px,185px) 36px minmax(0,1fr) 36px;gap:clamp(8px,1vw,16px)}
.showcase-title{width:auto;min-width:0}
.app-viewport{min-width:0;overflow-x:auto;overflow-y:hidden;scroll-behavior:smooth;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-inline:contain}
.app-viewport::-webkit-scrollbar{display:none}
.app-track{width:max-content;min-width:100%;gap:clamp(12px,1.5vw,24px);transform:none!important;transition:none}
.app-item{flex:0 0 95px;scroll-snap-align:start;min-width:0}
.app-item span{display:block;overflow-wrap:anywhere}
.preview-note{box-sizing:border-box}
@media(max-width:1100px){.head-inner{gap:12px}.nav{gap:9px;font-size:10px}.brand{width:165px}.brand img{width:160px}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.industry-list{grid-template-columns:repeat(4,minmax(0,1fr));row-gap:16px}}
@media(max-width:900px){.wrap{width:var(--site-width)}.hero-layout{grid-template-columns:minmax(0,1fr)}.approach{grid-template-columns:minmax(0,1fr)}.showcase-inner{grid-template-columns:minmax(95px,135px) 32px minmax(0,1fr) 32px}.footer-inner{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){:root{--site-gutter:18px}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.showcase-inner{grid-template-columns:1fr 32px minmax(0,1.8fr) 32px;gap:6px}.app-item{flex-basis:76px}.industry-list{grid-template-columns:repeat(4,minmax(0,1fr))}.industry-list div{font-size:22px}.industry-list small{overflow-wrap:anywhere}.footer-inner{grid-template-columns:repeat(2,minmax(0,1fr))}.tech-frame{max-width:100%}}
@media(max-width:390px){.cards{grid-template-columns:1fr}.service{min-height:0;flex-direction:row}.showcase-inner{grid-template-columns:90px 26px minmax(0,1fr) 26px}.arrow{width:26px;height:30px}}
@media(prefers-reduced-motion:reduce){html,.app-viewport{scroll-behavior:auto}}

/* v2.2 - shared visual grid and correctly proportioned official horizontal brand */
:root{--site-max:1400px;--site-gutter:clamp(20px,4.5vw,72px);--site-width:min(var(--site-max),calc(100% - 2 * var(--site-gutter)))}
.wrap,.header .head-inner,.hero .hero-layout,.hero .cards,.approach.wrap,.industries .wrap,.showcase .showcase-inner,.showcase .preview-note,.cta.wrap,.footer .wrap{width:var(--site-width);max-width:var(--site-max);margin-left:auto;margin-right:auto}
.header{height:86px}.head-inner{gap:clamp(12px,2vw,30px)}.brand{width:clamp(210px,21vw,310px);height:76px;overflow:visible;flex:0 0 auto}.brand img{display:block;width:100%;height:100%;object-fit:contain;mix-blend-mode:normal}.nav{gap:clamp(8px,1.1vw,19px);font-size:clamp(10px,.78vw,13px)}
.hero-layout{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center}.hero-copy{min-width:0}.hero h1{font-size:clamp(34px,3.2vw,55px);letter-spacing:-1.4px}.tech-stage{min-width:0}.tech-frame{max-width:100%}
.cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;align-items:stretch}.service{height:100%;min-height:145px;align-items:flex-start}.service>span:last-child{min-width:0}.approach{grid-template-columns:minmax(0,40%) minmax(0,60%);gap:0}.approach-copy{padding-right:clamp(18px,3vw,48px)}.approach-image{width:100%;height:235px}.industry-list{grid-template-columns:repeat(8,minmax(0,1fr))}.showcase-inner{display:grid;grid-template-columns:190px 38px minmax(0,1fr) 38px;align-items:center;gap:14px}.showcase-title{width:auto}.app-viewport{width:100%;min-width:0}.app-track{width:max-content;min-width:0}.app-item{flex:0 0 95px}.footer-inner{grid-template-columns:2fr 1fr 1fr 1fr}
@media(max-width:1250px){.header{height:76px}.brand{width:220px;height:65px}.nav{gap:9px;font-size:10px}.head-inner{gap:12px}.header-cta{padding:12px}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.industry-list{grid-template-columns:repeat(4,minmax(0,1fr));row-gap:15px}}
@media(max-width:1000px){.nav{display:none;position:absolute;top:76px;left:0;right:0;background:#010b18;padding:20px;flex-direction:column;align-items:flex-start;gap:17px}.nav.open{display:flex}.menu{display:block;margin-left:auto;background:transparent;color:#fff;border:1px solid #1476a8;padding:7px 12px;border-radius:6px;font-size:23px}.header-cta{display:none}.hero-layout{grid-template-columns:1fr}.approach{grid-template-columns:1fr;gap:20px}.approach-copy{padding-right:0}.showcase-inner{grid-template-columns:150px 32px minmax(0,1fr) 32px}.footer-inner{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){:root{--site-gutter:18px}.brand{width:205px}.cards{grid-template-columns:1fr}.service{min-height:110px;flex-direction:row}.industry-list{grid-template-columns:repeat(2,minmax(0,1fr))}.showcase-inner{grid-template-columns:32px minmax(0,1fr) 32px;gap:7px}.showcase-title{grid-column:1/-1}.showcase-inner #prev{grid-column:1}.showcase-inner .app-viewport{grid-column:2}.showcase-inner #next{grid-column:3}.footer-inner{grid-template-columns:1fr 1fr}.approach-image{height:190px}}

/* v2.3: preserve exact supplied artwork; avoid distortions or generic font substitutions */
.header .brand{width:clamp(230px,23vw,345px);height:66px;overflow:visible;flex-shrink:0}
.header .brand img{width:100%;height:100%;object-fit:contain;mix-blend-mode:screen}
@media(max-width:1250px){.header .brand{width:240px;height:60px}}
@media(max-width:600px){.header .brand{width:min(240px,65vw);height:60px}}


/* v7 - approved visual composition, pure-black canvas, one exact responsive grid */
:root{--site-max:1400px;--site-gutter:clamp(20px,5.2vw,90px);--site-width:min(var(--site-max),calc(100% - 2 * var(--site-gutter)))}
html{background:#000}body{background:#000;color:#fff}
.wrap,.header .head-inner,.hero .hero-layout,.hero .cards,.approach.wrap,.industries .wrap,.showcase .showcase-inner,.showcase .preview-note,.cta.wrap,.footer .wrap{width:var(--site-width);max-width:var(--site-max);margin-left:auto;margin-right:auto}
.header{height:76px;background:#000;border-bottom:1px solid #05365c}.head-inner{gap:clamp(12px,1.4vw,23px)}
.header .brand{width:clamp(210px,20vw,290px);height:65px;overflow:visible;flex:0 0 auto}
.header .brand img{width:100%;height:100%;object-fit:contain;mix-blend-mode:normal}
.nav{gap:clamp(8px,.9vw,16px);font-size:clamp(10px,.75vw,12px)}
.hero{padding-top:28px;background:#000;overflow:hidden}.hero-photo{inset:0 0 0 0;opacity:.94;background:linear-gradient(90deg,#000 0%,#000c 19%,#0002 48%,#0007 80%,#000 100%),linear-gradient(0deg,#000 0%,transparent 24%),url('assets/city-ambience.webp') center 52%/cover no-repeat}
.hero-layout{min-height:340px;grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);gap:22px}.hero h1{font-size:clamp(37px,3.4vw,57px)}
.hero-desc{max-width:530px}.tech-frame{height:305px;background:linear-gradient(130deg,#003778e8,#00091bed 64%,#000e);border-color:#007bff;box-shadow:0 0 28px #0078ff85,inset 0 0 45px #007bff35;transform:rotateY(-7deg) skewX(-5deg)}
.cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-top:13px;margin-bottom:14px}.service{min-height:134px;height:100%;background:linear-gradient(125deg,#062142f2,#000d);border-color:#075787}.service strong{font-size:14px}.service-icon{flex:0 0 52px;text-align:center}
.approach{grid-template-columns:minmax(0,39%) minmax(0,61%);gap:0;padding-top:5px;padding-bottom:15px}.approach-image{height:230px}
.industries{background:#000;border-color:#063a67}.industry-list div{border-color:#09456c}.industry-list div:last-child{border-color:#09456c}
.showcase{background:linear-gradient(100deg,#00163d,#003d98 50%,#00143c);border-color:#087dff}.showcase-inner{grid-template-columns:175px 36px minmax(0,1fr) 36px}.app-track{gap:clamp(12px,1.4vw,22px)}
.cta{padding-top:48px;padding-bottom:48px}.footer{background:#000;border-color:#063a67}.footer-inner{grid-template-columns:2fr 1fr 1fr 1fr}
@media(max-width:1280px){.nav{gap:9px}.header .brand{width:220px}.head-inner{gap:10px}.header-cta{padding:12px 13px}.cards{grid-template-columns:repeat(4,minmax(0,1fr))}.service{padding:16px 12px;gap:10px}.service-icon{flex-basis:39px;font-size:36px}}
@media(max-width:1080px){.header{height:72px}.nav{display:none;position:absolute;top:72px;left:0;right:0;background:#000;padding:22px var(--site-gutter);flex-direction:column;align-items:flex-start;gap:18px;border-bottom:1px solid #12649c}.nav.open{display:flex}.menu{display:block;margin-left:auto;background:#000;color:#fff;border:1px solid #1476a8;padding:7px 12px;border-radius:6px;font-size:23px}.header-cta{display:inline-flex}.hero-layout{grid-template-columns:1fr;gap:28px}.hero-copy{max-width:700px}.tech-stage{justify-content:center}.tech-frame{width:min(100%,680px)}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.approach{grid-template-columns:1fr;gap:18px}.approach-image{height:250px}.industry-list{grid-template-columns:repeat(4,minmax(0,1fr));row-gap:18px}.footer-inner{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){:root{--site-gutter:18px}.header .brand{width:min(205px,55vw);height:58px}.header-cta{display:none}.hero h1{font-size:clamp(34px,8vw,48px)}.hero-desc{font-size:15px}.tech-frame{height:250px;padding:15px}.tech-copy h2{font-size:18px}.tech-copy li{font-size:10px}.cards{grid-template-columns:1fr}.service{min-height:106px;flex-direction:row}.service-icon{flex-basis:45px}.approach-image{height:190px}.industry-list{grid-template-columns:repeat(2,minmax(0,1fr))}.showcase-inner{grid-template-columns:30px minmax(0,1fr) 30px;gap:7px}.showcase-title{grid-column:1/-1}.showcase-inner #prev{grid-column:1}.showcase-inner .app-viewport{grid-column:2}.showcase-inner #next{grid-column:3}.footer-inner{grid-template-columns:repeat(2,minmax(0,1fr))}.cta{flex-direction:column;align-items:flex-start}}


/* v7.1 - uniform container edges and compact, symmetrical apps strip */
:root{--site-max:1400px;--site-gutter:clamp(20px,5.2vw,90px);--site-width:min(var(--site-max),calc(100% - 2 * var(--site-gutter)))}
.showcase{background:#000;border-block:1px solid #07538c;padding:0;overflow:hidden}
.showcase .showcase-inner{background:linear-gradient(100deg,#031331,#00377e 52%,#031331);border-inline:1px solid #07538c;padding:10px 14px;min-height:112px;display:grid;grid-template-columns:minmax(130px,172px) 34px minmax(0,1fr) 34px;gap:12px;align-items:center;width:var(--site-width);max-width:var(--site-max);margin-inline:auto;box-sizing:border-box}
.showcase-title{width:auto;min-width:0;align-self:center}.showcase-title .eyebrow{font-size:9px;letter-spacing:2px;margin-bottom:7px}.showcase-title h2{font-size:19px;line-height:1.1;margin:0}.showcase-disclaimer{display:block;color:#aac4e0;font-size:9px;line-height:1.2;margin-top:7px}
.showcase .arrow{width:32px;height:32px;display:grid;place-items:center;padding:0;font-size:25px;line-height:1;align-self:center}
.showcase .app-viewport{width:100%;min-width:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;overscroll-behavior-inline:contain;scroll-snap-type:x proximity}
.showcase .app-viewport::-webkit-scrollbar{display:none}
.showcase .app-track{display:flex;align-items:start;gap:clamp(9px,1.1vw,16px);width:max-content;min-width:100%;transition:none}
.showcase .app-item{flex:0 0 84px;width:84px;min-width:0;min-height:85px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;text-align:center;scroll-snap-align:start;font-size:10px;line-height:1.15}
.showcase .app-item img{width:58px;height:58px;aspect-ratio:1;object-fit:cover;border-radius:10px;margin:0 auto 6px;flex:0 0 58px}
.showcase .app-item span{display:block;width:100%;white-space:normal;overflow-wrap:break-word}
@media(max-width:900px){.showcase .showcase-inner{grid-template-columns:135px 30px minmax(0,1fr) 30px;gap:7px;padding:10px}.showcase-title h2{font-size:16px}.showcase .app-item{flex-basis:77px;width:77px}}
@media(max-width:600px){.showcase .showcase-inner{grid-template-columns:28px minmax(0,1fr) 28px;gap:7px;min-height:0;padding:12px 9px}.showcase .showcase-title{grid-column:1/-1}.showcase .showcase-title h2{font-size:18px}.showcase .showcase-title h2 br{display:none}.showcase .showcase-disclaimer{margin-top:3px}.showcase .showcase-inner #prev{grid-column:1}.showcase .showcase-inner .app-viewport{grid-column:2}.showcase .showcase-inner #next{grid-column:3}.showcase .arrow{width:28px;height:28px}.showcase .app-item{flex-basis:74px;width:74px}}

/* v7.2 - section separators are constrained to the SAME central grid as all content. */
:root{--site-max:1400px;--site-gutter:clamp(20px,5.2vw,90px);--site-width:min(var(--site-max),calc(100% - 2 * var(--site-gutter)))}
.header,.industries,.showcase,.footer{position:relative;border:0!important}
.header::after,.industries::before,.industries::after,.showcase::after,.footer::before{content:"";position:absolute;left:50%;transform:translateX(-50%);width:var(--site-width);max-width:var(--site-max);height:1px;background:#07538c;pointer-events:none;z-index:2}
.header::after{bottom:0}
.industries::before{top:0}
.industries::after{bottom:0}
.showcase::after{bottom:0}
.footer::before{top:0}
/* The blue showcase panel, its boundaries and its arrows stay within the same grid. */
.showcase{background:#000!important;overflow:visible;padding:0}
.showcase .showcase-inner{border:1px solid #07538c;border-top:0;border-bottom:0;overflow:hidden}
.showcase .app-viewport{min-width:0;max-width:100%}
.showcase .app-track{max-width:none}
/* A single source of truth for content alignment, including both pages. */
.wrap,.header .head-inner,.hero .hero-layout,.hero .cards,.approach.wrap,.industries>.wrap,.showcase .showcase-inner,.cta.wrap,.footer .wrap{width:var(--site-width);max-width:var(--site-max);margin-left:auto;margin-right:auto}
@media(max-width:650px){:root{--site-gutter:18px}}

/* v7.3: Pure black background, animated globe and compact continuously moving carousel */
body,html,.hero,.industries,.showcase,.footer{background:#000!important}
.hero-photo{display:none!important;background:none!important}
.hero{isolation:auto}
.hero-layout{min-height:355px}
.tech-stage{perspective:none;min-width:0;align-self:stretch;align-items:center}
.globe-stage{position:relative;width:min(100%,620px);height:345px;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 50% 62%,#002c5e55 0%,#0000 61%)}
.globe-stage canvas{position:absolute;inset:0;width:100%;height:100%;display:block;z-index:2}
.globe-aura{position:absolute;left:18%;right:18%;top:12%;bottom:6%;background:radial-gradient(ellipse,#004b9a44,transparent 67%);filter:blur(15px)}
.globe-base{position:absolute;z-index:3;left:23%;right:23%;bottom:15px;height:28px;border-radius:50%;border:2px solid #028eff;box-shadow:0 0 13px #00b7ff,0 0 30px #006fff,inset 0 0 15px #00aaff;transform:perspective(160px) rotateX(57deg)}
.globe-label{position:absolute;z-index:4;display:flex;align-items:center;gap:7px;padding:8px 10px;background:#000c;border:1px solid #0572ba;border-radius:9px;box-shadow:0 0 18px #006cce55;color:#b5eaff;font-size:10px;font-weight:800;letter-spacing:1px}
.globe-label span{color:#00caff;font-size:22px}.label-ai{top:20%;right:10%}.label-blockchain{top:46%;right:1%}.label-integrations{top:72%;right:7%}
.globe-caption{position:absolute;bottom:0;left:0;right:0;z-index:5;text-align:center;font-size:9px;letter-spacing:2px;color:#b3d8f4}.globe-caption b{color:#00caff}
.showcase .showcase-inner{background:linear-gradient(90deg,#000b19,#00173d 50%,#000b19);}
.showcase .app-viewport{scroll-behavior:auto;touch-action:pan-x}
.showcase .app-track{will-change:transform;gap:14px}
.showcase .app-item{flex:0 0 84px;width:84px}
@media(max-width:1080px){.globe-stage{height:335px}.tech-stage{justify-content:center}}
@media(max-width:650px){.globe-stage{height:260px}.globe-label{padding:5px;font-size:8px}.globe-label span{font-size:15px}.label-blockchain{right:0}.globe-caption{font-size:7px;letter-spacing:1px}}
@media(prefers-reduced-motion:reduce){.app-track{will-change:auto}}

/* v7.5: Caption below the holographic globe, not over its base or perspective. */
.tech-stage{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px}
.globe-stage{flex:none}
.tech-stage>.globe-caption{position:static!important;display:block;width:100%;margin:0 0 12px;text-align:center;z-index:5;font-size:11px;font-weight:800;letter-spacing:2px;color:#d5efff;text-shadow:0 0 12px #008dff}
@media(max-width:650px){.tech-stage>.globe-caption{font-size:9px;letter-spacing:1px;margin-bottom:10px}}

/* v7.6 orbital technologies: globe remains the original animated canvas. */
.globe-stage{overflow:visible!important}
.orbit-arc{position:absolute;z-index:1;pointer-events:none;right:3%;top:12%;width:52%;height:76%;border:1px solid #008ff75c;border-left:0;border-radius:50%;transform:rotate(-18deg);filter:drop-shadow(0 0 5px #008aff)}
.orbit-arc-two{right:8%;top:8%;width:43%;height:83%;border-style:dashed;opacity:.55;animation:arc-drift 24s linear infinite}
.orbital-node{position:absolute;z-index:5;width:106px;display:flex;flex-direction:column;align-items:center;gap:4px;color:#04cfff;text-align:center;filter:drop-shadow(0 0 9px #0079ff99);animation:orbital-float 7s ease-in-out infinite;pointer-events:none}
.orbital-node .node-ring{width:84px;height:84px;display:grid;place-items:center;border:2px solid #08baff;border-radius:50%;background:radial-gradient(circle,#002c58ee 0%,#000d1ff0 67%,#000a 100%);box-shadow:inset 0 0 16px #0879fc77,0 0 17px #008fff77}
.node-svg{width:74px;height:74px;overflow:visible}.orbital-node strong{font-size:10px;letter-spacing:1px;color:#e3f9ff;text-shadow:0 0 8px #009eff}
.node-ai{top:7%;right:11%;animation-delay:-1s}.node-chain{top:37%;right:-2%;animation-delay:-3s}.node-integration{top:68%;right:9%;animation-delay:-5s}
.node-trace{stroke-dasharray:16 65;animation:circuit-flow 2.6s linear infinite;filter:drop-shadow(0 0 4px cyan)}
.block-cubes{animation:block-pulse 3.2s ease-in-out infinite}.gear-spin{animation:gear-turn 24s linear infinite;transform-box:view-box}
@keyframes circuit-flow{to{stroke-dashoffset:-162}}
@keyframes gear-turn{to{transform:rotate(360deg)}}
@keyframes block-pulse{50%{opacity:.55;filter:drop-shadow(0 0 7px cyan)}}
@keyframes orbital-float{50%{transform:translate(-9px,8px)}}
@keyframes arc-drift{to{transform:rotate(342deg)}}
@media(max-width:650px){.orbital-node{width:69px;gap:2px}.orbital-node .node-ring{width:55px;height:55px}.node-svg{width:48px;height:48px}.orbital-node strong{font-size:7px;letter-spacing:0}.node-ai{right:10%}.node-chain{right:0}.node-integration{right:8%}}
@media(prefers-reduced-motion:reduce){.orbital-node,.node-trace,.gear-spin,.block-cubes,.orbit-arc-two{animation:none!important}}

/* v7.7: Dedicated visible caption below the entire animated globe and its projection base. */
.tech-stage{position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:0;overflow:visible;min-height:410px;padding-bottom:0}
.tech-stage .globe-stage{height:345px;max-width:100%;flex:0 0 auto}
.tech-stage .globe-caption-band{position:relative;z-index:8;display:flex;align-items:center;justify-content:center;width:min(100%,620px);min-height:46px;margin:8px 0 0;padding:10px 8px 8px;border-top:1px solid #0089e688;border-bottom:1px solid #0055a866;background:linear-gradient(90deg,transparent,#001b3660 20%,#001b3660 80%,transparent);box-shadow:0 -5px 15px -14px #00aeff,0 5px 15px -14px #00aeff}
.tech-stage .globe-caption-band .globe-caption{position:static!important;display:block!important;visibility:visible!important;opacity:1!important;transform:none!important;margin:0!important;width:100%;text-align:center;color:#e4f5ff;font-size:clamp(9px,0.85vw,12px);font-weight:800;letter-spacing:clamp(1px,0.18vw,2.5px);line-height:1.5;text-shadow:0 0 9px #008cff;white-space:normal}
.tech-stage .globe-caption-band .globe-caption b{color:#00dfff;margin:0 6px}
@media(max-width:650px){.tech-stage{min-height:0}.tech-stage .globe-stage{height:260px}.tech-stage .globe-caption-band{min-height:42px;margin-top:8px}.tech-stage .globe-caption-band .globe-caption{font-size:9px;letter-spacing:.7px}}

/* v7.8: keep the tagline visibly BELOW the globe, never behind the canvas. */
.hero .hero-layout { overflow:visible; align-items:center; }
.hero .tech-stage { min-height:440px; height:auto; overflow:visible; isolation:isolate; padding:0 0 8px; }
.hero .tech-stage .globe-stage { height:345px; position:relative; flex-shrink:0; }
.hero .tech-stage .globe-caption-band {
  position:relative !important; inset:auto !important; z-index:20 !important;
  flex:0 0 auto; width:100%; min-height:52px; margin:12px 0 0;
  padding:14px 8px; overflow:visible; background:#000;
  border-top:1px solid #00baff; border-bottom:1px solid #00518c;
}
.hero .tech-stage .globe-caption-band .globe-caption {
  display:block !important; position:relative !important;
  opacity:1 !important; visibility:visible !important; color:#fff !important;
  font-size:clamp(11px,1vw,15px) !important; line-height:1.5;
  font-weight:800; letter-spacing:1.7px; text-align:center;
}
@media(max-width:650px){
  .hero .tech-stage { min-height:345px; }
  .hero .tech-stage .globe-stage { height:260px; }
  .hero .tech-stage .globe-caption-band .globe-caption {
    font-size:10px !important; letter-spacing:.5px;
  }
}

/* v7.9: tagline positioned immediately after the globe, within the visible hero. */
.hero .hero-layout{min-height:370px!important;align-items:center!important}
.hero .tech-stage{height:370px!important;min-height:0!important;padding:0!important;justify-content:flex-start!important;gap:0!important;overflow:visible!important}
.hero .tech-stage .globe-stage{height:310px!important;max-height:310px!important;width:100%!important;flex:0 0 310px!important}
.hero .tech-stage .globe-caption-band{display:flex!important;position:relative!important;inset:auto!important;z-index:100!important;width:100%!important;min-height:44px!important;margin:0!important;padding:8px 5px!important;background:#000!important;align-items:center!important;justify-content:center!important;border-top:1px solid #008dd4!important;border-bottom:1px solid #004c81!important}
.hero .tech-stage .globe-caption-band .globe-caption{position:static!important;display:block!important;opacity:1!important;visibility:visible!important;color:#fff!important;font-size:clamp(10px,0.85vw,13px)!important;letter-spacing:1.3px!important;line-height:1.4!important;text-align:center!important;text-shadow:0 0 8px #008cff!important}
@media(max-width:900px){.hero .tech-stage{height:340px!important}.hero .tech-stage .globe-stage{height:280px!important;max-height:280px!important;flex-basis:280px!important}}
@media(max-width:560px){.hero .tech-stage{height:300px!important}.hero .tech-stage .globe-stage{height:245px!important;max-height:245px!important;flex-basis:245px!important}.hero .tech-stage .globe-caption-band .globe-caption{font-size:9px!important;letter-spacing:.4px!important}}

/* v8.0: caption INSIDE the visible globe stage, rather than below the hero fold. */
.hero .tech-stage { height:370px!important; min-height:370px!important; padding:0!important; overflow:visible!important; }
.hero .tech-stage .globe-stage { position:relative!important; height:370px!important; max-height:none!important; flex:0 0 370px!important; overflow:visible!important; }
.hero .tech-stage .globe-stage canvas { height:315px!important; bottom:auto!important; }
.hero .tech-stage .globe-base { bottom:58px!important; }
.hero .tech-stage .globe-caption-band {
  position:absolute!important; top:auto!important; bottom:0!important; left:0!important; right:0!important;
  z-index:999!important; height:46px!important; min-height:46px!important; margin:0!important;
  display:flex!important; align-items:center!important; justify-content:center!important;
  padding:7px 5px!important; background:#000!important; border-top:1px solid #0479bf!important;
  border-bottom:1px solid #043b66!important; box-sizing:border-box!important;
}
.hero .tech-stage .globe-caption-band .globe-caption {
  position:static!important; display:block!important; opacity:1!important; visibility:visible!important;
  width:100%!important; color:#fff!important; text-align:center!important;
  font-size:clamp(10px,0.9vw,14px)!important; letter-spacing:1.4px!important;
  font-weight:800!important; line-height:1.4!important; white-space:normal!important;
}
@media(max-width:900px){
  .hero .tech-stage {height:340px!important;min-height:340px!important}
  .hero .tech-stage .globe-stage {height:340px!important;flex-basis:340px!important}
  .hero .tech-stage .globe-stage canvas {height:280px!important}
}
@media(max-width:560px){
  .hero .tech-stage {height:300px!important;min-height:300px!important}
  .hero .tech-stage .globe-stage {height:300px!important;flex-basis:300px!important}
  .hero .tech-stage .globe-stage canvas {height:245px!important}
  .hero .tech-stage .globe-caption-band .globe-caption {font-size:9px!important;letter-spacing:.5px!important}
}
/* v8.1: clean unobstructed tagline, pure black, aligned site sections */
.hero-photo{display:none!important}
.tech-stage .globe-caption-band{border:0!important;background:transparent!important;box-shadow:none!important;min-height:30px!important;padding:0!important;margin:4px 0 0!important;pointer-events:none}
.tech-stage .globe-caption-band .globe-caption{font-weight:600!important;letter-spacing:2.2px!important;text-shadow:0 0 12px #007bff66!important}
.tech-stage .globe-stage{overflow:visible!important}
body,.hero,.footer{background:#000!important}

/* v8.2: approved visual treatment: free-floating caption, no bars or obstruction. */
.hero .tech-stage{height:425px!important;min-height:425px!important;justify-content:flex-start!important;overflow:visible!important}
.hero .tech-stage .globe-stage{height:365px!important;max-height:none!important;flex:0 0 365px!important;overflow:visible!important}
.hero .tech-stage .globe-stage canvas{height:345px!important;bottom:auto!important}
.hero .tech-stage .globe-base{bottom:18px!important}
.hero .tech-stage .globe-caption-band{position:absolute!important;top:365px!important;bottom:auto!important;left:0!important;right:0!important;z-index:20!important;display:flex!important;min-height:34px!important;height:auto!important;margin:0!important;padding:5px 0!important;background:transparent!important;border:0!important;border-top:0!important;border-bottom:0!important;box-shadow:none!important;pointer-events:none!important}
.hero .tech-stage .globe-caption-band .globe-caption{color:#e6f7ff!important;font-size:clamp(10px,.88vw,13px)!important;letter-spacing:2px!important;font-weight:500!important;line-height:1.5!important;text-shadow:0 0 9px #007dff66!important}
@media(max-width:900px){.hero .tech-stage{height:380px!important;min-height:380px!important}.hero .tech-stage .globe-stage{height:325px!important;flex-basis:325px!important}.hero .tech-stage .globe-stage canvas{height:305px!important}.hero .tech-stage .globe-caption-band{top:325px!important}}
@media(max-width:560px){.hero .tech-stage{height:315px!important;min-height:315px!important}.hero .tech-stage .globe-stage{height:265px!important;flex-basis:265px!important}.hero .tech-stage .globe-stage canvas{height:245px!important}.hero .tech-stage .globe-caption-band{top:265px!important}.hero .tech-stage .globe-caption-band .globe-caption{font-size:9px!important;letter-spacing:.6px!important}}

/* v8.3: keep the cyan hero heading on a single line at desktop widths. */
@media (min-width:1081px){
  .hero h1{font-size:clamp(31px,3.0vw,49px);letter-spacing:-1.4px}
  .hero-title-second{display:inline-block;white-space:nowrap;letter-spacing:-1.8px}
}
@media (min-width:651px) and (max-width:1080px){
  .hero-title-second{display:inline-block;white-space:nowrap}
}
@media (max-width:650px){.hero-title-second{white-space:normal}}

/* v8.4: consistent luminous service icons */
.service-icon.svg-icon{display:flex;align-items:center;justify-content:center;flex:0 0 58px;color:#00c9ff;text-shadow:none;border:0;background:none;box-shadow:none}
.service-icon.svg-icon svg{width:49px;height:49px;overflow:visible;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 7px rgba(0,190,255,.85))}
