:root { --ink:#030914; --surface:#071326; --surface-2:#0b1930; --line:rgba(104,167,255,.22); --blue:#1689ff; --blue-light:#66b6ff; --text:#f4f7fc; --muted:#b6c2d4; --font-body:"DM Sans", sans-serif; --font-display:"Outfit", sans-serif; }
* { box-sizing:border-box; } html { scroll-behavior:smooth; } body { margin:0; color:var(--text); background:var(--ink); font-family:var(--font-body); font-size:16px; line-height:1.55; overflow-x:clip; } body::selection { background:var(--blue); color:#fff; } a { color:inherit; text-decoration:none; } button,input,textarea { font:inherit; } button { cursor:pointer; } .sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; } .skip-link { position:fixed; top:12px; left:12px; z-index:100; padding:10px 14px; color:#001124; background:#fff; transform:translateY(-160%); transition:transform .2s; } .skip-link:focus { transform:translateY(0); } .section-shell { width:min(1180px, calc(100% - 48px)); margin-inline:auto; } .site-header { position:sticky; top:0; z-index:50; display:grid; grid-template-columns:auto 1fr auto; gap:34px; align-items:center; min-height:86px; width:min(1320px, calc(100% - 48px)); margin:0 auto; background:linear-gradient(180deg, rgba(3,9,20,.98) 66%, rgba(3,9,20,.72) 100%); backdrop-filter:blur(12px); } .brand { display:flex; gap:10px; align-items:center; min-width:max-content; } .brand-symbol { position:relative; display:block; width:49px; height:48px; overflow:hidden; font:700 44px/.9 var(--font-display); letter-spacing:-.1em; transform:skew(-7deg); } .brand-symbol b,.brand-symbol i { position:absolute; top:0; font-style:normal; } .brand-symbol b { left:0; color:#fff; } .brand-symbol i { right:0; color:#1b88f5; } .brand-copy { display:flex; flex-direction:column; line-height:1; } .brand-copy strong { font:600 20px var(--font-display); letter-spacing:-.03em; } .brand-copy em { color:var(--blue-light); font-style:normal; font-weight:500; } .brand-copy small { margin-top:6px; color:#afbdd3; font-size:7px; font-weight:700; letter-spacing:.2em; text-transform:uppercase; } .nav { display:flex; justify-content:center; gap:25px; } .nav a,.header-cta { position:relative; font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.025em; } .nav a::after { position:absolute; right:0; bottom:-10px; left:0; height:2px; background:var(--blue); content:""; transform:scaleX(0); transform-origin:right; transition:transform .25s ease; } .nav a:hover::after,.nav a:focus-visible::after { transform:scaleX(1); transform-origin:left; } .header-cta { display:flex; gap:9px; align-items:center; padding:11px 15px; border:1px solid var(--blue); border-radius:7px; transition:background .2s, color .2s; } .header-cta:hover { color:#01101f; background:var(--blue-light); } .message-icon { display:inline-block; width:17px; height:13px; border:1.5px solid currentColor; border-radius:8px; position:relative; } .message-icon::after { content:""; position:absolute; width:4px; height:4px; bottom:-3px; left:3px; border-left:1.5px solid currentColor; transform:skew(-30deg); } .menu-toggle { display:none; }
.hero { position:relative; display:grid; grid-template-columns:1.05fr 1.05fr .9fr; align-items:center; min-height:calc(100vh - 86px); padding-block:58px 55px; isolation:isolate; } .hero::before { position:absolute; z-index:-2; inset:0 calc((1180px - 100vw)/2); content:""; background:radial-gradient(circle at 58% 48%, rgba(18,128,255,.18), transparent 31%), linear-gradient(115deg, transparent 30%, rgba(17,90,180,.08) 60%, transparent); } .hero::after { position:absolute; z-index:-1; inset:10% -13% 8% 20%; content:""; opacity:.43; background-image:linear-gradient(105deg, transparent 0 42%, rgba(53,141,244,.33) 42.1% 42.3%, transparent 42.4% 47%, rgba(53,141,244,.23) 47.1% 47.25%, transparent 47.4%), radial-gradient(circle, rgba(23,139,255,.85) 0 1px, transparent 1.6px); background-size:100% 100%, 36px 36px; mask-image:linear-gradient(90deg, transparent, #000 35%, transparent 95%); } .hero-copy { position:relative; z-index:2; } .service-line,.overline { margin:0 0 14px; color:var(--blue-light); font-size:11px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; } .service-line { display:flex; flex-wrap:wrap; gap:6px; max-width:250px; color:#a9cbe9; font-size:10px; line-height:1.7; } .service-line::first-letter { color:var(--blue); } h1,h2,h3,p { margin-top:0; } h1,h2,h3 { font-family:var(--font-display); line-height:1.04; letter-spacing:-.035em; } h1 { max-width:560px; margin-block:22px; font-size:clamp(2.9rem,4.7vw,5rem); } h1::after { color:var(--blue); content:""; } .hero-lede { max-width:490px; color:#e3eaf5; font-size:18px; } .hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:30px; } .button { display:inline-flex; gap:18px; align-items:center; justify-content:center; min-height:52px; padding:0 20px; border:1px solid transparent; border-radius:8px; font-size:13px; font-weight:700; text-transform:uppercase; letter-spacing:.02em; transition:transform .2s, background .2s, border-color .2s; } .button:hover { transform:translateY(-2px); } .button-primary { color:#fff; background:linear-gradient(120deg, #0873e9, #318eff); box-shadow:0 9px 24px rgba(10,107,230,.25); } .button-primary:hover { background:#318eff; } .button-secondary { border-color:#227edc; background:rgba(3,16,35,.6); } .button-secondary:hover { border-color:#76bbff; background:#0b1d36; }
.orbit-stage { position:relative; z-index:1; width:100%; min-height:510px; perspective:900px; } .globe { position:absolute; top:50%; left:50%; width:280px; height:280px; border:1px solid rgba(96,181,255,.62); border-radius:50%; transform:translate(-50%,-55%); background:radial-gradient(circle at 35% 32%, rgba(145,214,255,.7) 0 1px, transparent 2px), radial-gradient(circle at 63% 58%, rgba(87,175,255,.76) 0 1px, transparent 2px), radial-gradient(circle at 55% 36%, rgba(20,115,244,.4), transparent 45%), radial-gradient(circle, rgba(14,84,197,.25), rgba(3,15,37,.2) 64%, transparent 65%); box-shadow:inset 14px -17px 44px rgba(5,24,71,.8), 0 0 32px rgba(15,133,255,.4); animation:globe-breathe 6s ease-in-out infinite; } .globe::before,.globe::after { position:absolute; inset:18px 0; content:""; border:1px solid rgba(91,182,255,.38); border-radius:50%; } .globe::after { inset:0 35px; } .globe-grid { position:absolute; inset:0; border:1px solid rgba(97,183,255,.25); border-radius:50%; } .grid-a { transform:scaleX(.47); }.grid-b { transform:scaleX(.76) rotate(35deg); }.grid-c { transform:scaleY(.5) rotate(-25deg); }.globe-core { position:absolute; top:45%; left:52%; width:8px; height:8px; background:#bfe4ff; border-radius:50%; box-shadow:0 0 16px 7px #147df7; } .orbit { position:absolute; top:50%; left:50%; border:1px solid rgba(52,164,255,.65); border-radius:50%; transform:translate(-50%,-50%) rotateX(70deg); } .orbit-one { width:420px; height:170px; animation:spin 12s linear infinite; }.orbit-two { width:370px; height:125px; transform:translate(-50%,-50%) rotateX(72deg) rotateY(25deg); animation:spin 18s linear reverse infinite; }.orbit-three { width:310px; height:250px; transform:translate(-50%,-50%) rotateY(65deg) rotateX(66deg); opacity:.6; animation:spin 20s linear infinite; } .signal { position:absolute; width:5px; height:5px; border-radius:50%; background:#a7dbff; box-shadow:0 0 14px 4px #0e81fd; animation:blink 2.2s ease-in-out infinite; }.signal-a { top:27%; left:22%;}.signal-b { top:35%; right:20%; animation-delay:.7s;}.signal-c { bottom:28%; right:31%; animation-delay:1.3s;}.base-ring { position:absolute; bottom:15%; left:50%; border:1px solid rgba(52,169,255,.55); border-radius:50%; transform:translateX(-50%) rotateX(68deg); }.ring-1 { width:300px; height:83px; box-shadow:0 10px 25px rgba(0,118,255,.25); }.ring-2 { width:360px; height:109px; opacity:.55; }.ring-3 { width:440px; height:140px; opacity:.24; }.stage-label { position:absolute; bottom:11%; left:50%; margin:0; color:#a5cdf2; font-size:10px; letter-spacing:.16em; text-transform:uppercase; transform:translateX(-50%); white-space:nowrap; }
.capability-list { display:grid; grid-template-columns:1fr 1fr; gap:10px; } .capability { display:grid; grid-template-columns:34px 1fr auto; gap:9px; align-items:start; min-height:134px; padding:18px 14px; border:1px solid rgba(50,136,230,.52); border-radius:10px; background:linear-gradient(145deg, rgba(10,29,57,.82), rgba(5,16,33,.85)); transition:transform .2s, border-color .2s, background .2s; } .capability:hover { border-color:var(--blue-light); background:#0b2040; transform:translateY(-3px); }.capability b { display:block; font-size:13px; line-height:1.3; text-transform:uppercase; }.capability small { display:block; margin-top:9px; color:var(--muted); font-size:11px; line-height:1.4; }.capability i { color:var(--blue-light); font-style:normal; }.capability-icon { position:relative; display:block; width:29px; height:29px; color:var(--blue-light); border:1px solid currentColor; border-radius:6px; }.icon-code::after { position:absolute; top:3px; left:7px; content:"</>"; font-size:10px; font-weight:700; }.icon-flow::before,.icon-flow::after { position:absolute; content:""; border:2px solid currentColor; border-radius:50%; }.icon-flow::before { width:8px; height:8px; top:5px; left:5px; }.icon-flow::after { width:8px; height:8px; right:4px; bottom:4px; }.icon-link::after { position:absolute; top:11px; left:3px; width:20px; height:4px; content:""; border-block:2px solid currentColor; transform:rotate(-35deg); }.icon-spark::after { position:absolute; inset:7px; content:""; border:1.5px solid currentColor; transform:rotate(45deg); }
.difference { padding-block:115px; } .section-intro { max-width:730px; margin-bottom:50px; }.section-intro.narrow { max-width:800px; margin-inline:auto; text-align:center; }.section-intro h2,.technology h2,.about h2,.contact h2 { margin-bottom:18px; font-size:clamp(2.25rem,4vw,4rem); }.section-intro p:not(.overline),.technology-copy>p:not(.overline),.contact-copy>p:not(.overline) { max-width:620px; color:var(--muted); font-size:17px; }.section-intro.narrow p:not(.overline) { margin-inline:auto; }.transformation { display:grid; grid-template-columns:1fr 180px 1fr; align-items:center; gap:24px; padding:28px; border-block:1px solid var(--line); }.state p { margin-bottom:4px; font-size:11px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }.state h3 { margin-bottom:18px; font-size:24px; }.state ul { display:grid; gap:10px; padding:0; margin:0; list-style:none; }.state li { position:relative; padding-left:18px; color:var(--muted); font-size:14px; }.state li::before { position:absolute; top:.6em; left:0; width:5px; height:5px; border-radius:50%; background:currentColor; content:""; }.state-before { color:#e57b88; }.state-after { color:#68d7be; text-align:right; }.state-after li { padding-right:18px; padding-left:0; }.state-after li::before { right:0; left:auto; }.transform-core { position:relative; display:grid; place-items:center; height:160px; }.transform-core::before { position:absolute; width:120px; height:120px; border:1px solid var(--blue); border-radius:50%; content:""; box-shadow:0 0 28px rgba(16,133,255,.33); }.transform-core::after { position:absolute; width:154px; height:1px; background:linear-gradient(90deg, #da6e78, var(--blue), #51d4bd); content:""; }.core-mark { position:relative; z-index:1; display:grid; place-items:center; width:85px; height:85px; border-radius:50%; color:#fff; background:#071225; font:700 29px var(--font-display); letter-spacing:-.1em; }.outcomes { display:grid; grid-template-columns:repeat(4,1fr); gap:10px; margin-top:24px; }.outcomes span { padding:13px 0; border-top:1px solid rgba(91,159,228,.3); color:#d9e8fa; font-size:13px; text-align:center; }
.solutions { padding-block:100px; }.solution-list { display:grid; gap:16px; }.solution { position:relative; display:grid; grid-template-columns:76px minmax(0, .88fr) minmax(320px,1.12fr); gap:30px; align-items:center; min-height:345px; padding:32px; overflow:hidden; border:1px solid var(--line); border-radius:14px; background:linear-gradient(105deg, rgba(7,19,38,.96), rgba(7,26,54,.82)); }.solution-reverse { grid-template-columns:76px minmax(320px,1.12fr) minmax(0,.88fr); }.solution-reverse .solution-content { grid-column:3; }.solution-reverse .solution-visual { grid-column:2; grid-row:1; }.solution-number { align-self:start; color:var(--blue); font:600 29px var(--font-display); }.solution-content h3 { margin-bottom:12px; font-size:clamp(1.8rem,3vw,2.6rem); }.solution-content>p { max-width:460px; color:var(--muted); }.solution-content ul { display:grid; grid-template-columns:1fr 1fr; gap:9px 20px; padding:0; margin:20px 0 0; list-style:none; }.solution-content li { position:relative; padding-left:17px; color:#dce8f7; font-size:13px; }.solution-content li::before { position:absolute; top:7px; left:0; width:6px; height:6px; border:1px solid var(--blue-light); border-radius:50%; content:""; }.text-link { display:inline-flex; gap:10px; margin-top:25px; color:var(--blue-light); font-size:12px; font-weight:700; text-transform:uppercase; }.solution-visual { position:relative; min-height:230px; overflow:hidden; border-radius:10px; background:#071326; }.solution-visual::before { position:absolute; inset:0; background:radial-gradient(circle at 54% 45%, rgba(21,133,255,.23), transparent 35%); content:""; }.visual-dashboard { margin:10px; border:1px solid rgba(78,155,238,.62); transform:perspective(700px) rotateY(-9deg) rotateX(2deg); }.screen-top { position:absolute; top:14px; right:16px; left:16px; height:11px; border-bottom:1px solid rgba(115,180,246,.5); }.screen-nav { position:absolute; top:38px; bottom:15px; left:15px; width:54px; border-right:1px solid rgba(115,180,246,.3); background:linear-gradient(#1e6fba 0 9px,transparent 9px 22px, #175f9e 22px 28px,transparent 28px 41px,#175f9e 41px 48px,transparent 48px); }.chart-line { position:absolute; right:30px; bottom:46px; left:95px; height:70px; border-bottom:2px solid #55adff; clip-path:polygon(0 85%,17% 55%,34% 66%,47% 19%,63% 38%,80% 7%,100% 34%,100% 37%,80% 10%,63% 41%,47% 22%,34% 69%,17% 58%,0 88%); background:#65b6ff; }.chart-bars { position:absolute; right:35px; bottom:22px; left:95px; display:flex; gap:10px; align-items:end; height:20px; }.chart-bars i { width:18%; background:#176fd2; }.chart-bars i:nth-child(1){height:45%}.chart-bars i:nth-child(2){height:100%}.chart-bars i:nth-child(3){height:65%}.chart-bars i:nth-child(4){height:80%}.visual-flow { display:grid; grid-template-columns:repeat(3,1fr); place-items:center; padding:20px; }.visual-flow span,.visual-flow b { position:relative; z-index:1; display:grid; place-items:center; width:80px; height:57px; border:1px solid rgba(74,164,242,.64); border-radius:8px; color:#dff0ff; font-size:10px; text-align:center; }.visual-flow b { grid-column:2; grid-row:1 / span 2; width:104px; height:104px; color:#fff; background:#0d4d9b; box-shadow:0 10px 26px rgba(4,105,242,.35); }.visual-flow::after { position:absolute; width:70%; height:1px; background:linear-gradient(90deg, transparent, var(--blue), transparent); content:""; }.visual-network { display:grid; place-items:center; }.visual-network b { position:relative; z-index:1; display:grid; place-items:center; width:88px; height:88px; border:1px solid #378fe3; border-radius:50%; color:#d9eeff; font:600 20px var(--font-display); background:#0a2549; box-shadow:0 0 28px rgba(14,127,255,.32); }.visual-network span { position:absolute; display:grid; place-items:center; width:65px; height:42px; border:1px solid rgba(86,163,239,.55); border-radius:6px; color:#bcddfb; font-size:10px; }.visual-network span:nth-of-type(1){top:28px;left:18%}.visual-network span:nth-of-type(2){top:28px;right:18%}.visual-network span:nth-of-type(3){bottom:23px;left:18%}.visual-network span:nth-of-type(4){bottom:23px;right:18%}.visual-network span::after { position:absolute; z-index:-1; width:130px; height:1px; background:rgba(41,143,244,.55); content:""; }.visual-ai { display:grid; place-items:center; }.ai-orb { width:105px; height:105px; border:1px solid #5bb3ff; border-radius:45% 55% 51% 49% / 54% 42% 58% 46%; background:radial-gradient(circle at 38% 36%, #84caff 0 2px,transparent 3px), radial-gradient(circle at 65% 61%, #84caff 0 2px,transparent 3px), radial-gradient(circle, rgba(27,140,252,.55), rgba(5,33,74,.3) 60%); box-shadow:0 0 28px rgba(12,126,254,.46); animation:globe-breathe 5s ease-in-out infinite; }.ai-panel { position:absolute; width:106px; height:65px; border:1px solid rgba(65,158,243,.48); border-radius:7px; background:linear-gradient(180deg,rgba(22,64,112,.65),rgba(6,20,42,.72)); }.panel-one { top:34px; left:35px; }.panel-two { right:35px; bottom:34px; }.visual-puzzle { display:grid; grid-template-columns:repeat(3,62px); grid-template-rows:repeat(2,62px); place-content:center; gap:5px; }.visual-puzzle i { position:relative; border:1px solid rgba(74,150,234,.7); border-radius:7px; background:linear-gradient(135deg,#102f5a,#071426); }.visual-puzzle i:nth-child(4) { background:#146fd1; box-shadow:0 0 25px rgba(18,132,255,.46); }.visual-puzzle i:nth-child(4)::after { position:absolute; top:-7px; right:18px; width:14px; height:14px; border-radius:50%; background:#146fd1; content:""; }
.process { padding-block:110px; background:linear-gradient(180deg, transparent, rgba(9,28,56,.47), transparent); }.process-steps { position:relative; display:grid; grid-template-columns:repeat(4,1fr); gap:16px; padding:30px 0 0; margin:0; list-style:none; counter-reset:step; }.process-steps::before { position:absolute; top:43px; right:8%; left:8%; height:1px; background:linear-gradient(90deg, transparent, var(--blue), transparent); content:""; }.process-steps li { position:relative; padding:44px 22px 24px; border-top:1px solid var(--line); }.process-steps li::before { position:absolute; top:0; left:22px; width:25px; height:25px; border:4px solid var(--ink); border-radius:50%; background:var(--blue); content:""; box-shadow:0 0 0 1px var(--blue); }.process-steps span { color:var(--blue-light); font:600 17px var(--font-display); }.process-steps h3 { margin:18px 0 9px; font-size:22px; }.process-steps p { color:var(--muted); font-size:14px; }.trust-line { display:flex; flex-wrap:wrap; justify-content:space-between; gap:12px 30px; padding:25px 0 0; border-top:1px solid rgba(96,161,229,.2); color:#d9e8f9; font-size:13px; }.trust-line span::before { width:7px; height:7px; display:inline-block; margin-right:9px; border:1px solid var(--blue-light); border-radius:50%; content:""; }
.cases { padding-block:110px; }.case-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }.case-card { display:flex; flex-direction:column; min-height:425px; padding:16px; border:1px solid var(--line); border-radius:12px; background:#07152a; transition:transform .2s, border-color .2s; }.case-card:hover { border-color:#368ce0; transform:translateY(-4px); }.case-tag,.case-status { align-self:flex-start; padding:5px 8px; border:1px solid rgba(91,173,251,.4); border-radius:999px; color:var(--blue-light); font-size:9px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }.case-art { position:relative; height:155px; margin:16px 0 20px; overflow:hidden; border-radius:8px; background:#0b2345; }.case-art::after { position:absolute; content:""; }.case-art-one::after { inset:27px 18px 15px; border:1px solid #5aa8f5; background:linear-gradient(135deg,transparent 50%, rgba(51,134,228,.42) 50%); box-shadow:inset 30px 0 rgba(4,18,37,.7); }.case-art-two::after { top:38px; left:25px; width:120px; height:60px; border:1px solid #67d7c0; box-shadow:55px -25px 0 -17px #071a33, 105px 31px 0 -17px #071a33; }.case-art-three::after { top:50%; left:50%; width:48px; height:48px; border:1px solid #c080ff; border-radius:50%; box-shadow:-68px -36px 0 -8px #0d2a53, 67px -36px 0 -8px #0d2a53, -68px 36px 0 -8px #0d2a53,67px 36px 0 -8px #0d2a53; transform:translate(-50%,-50%); }.case-art-four::after { inset:38px 25px; border:1px solid #60a8ff; background:linear-gradient(115deg,transparent 47%,#348ee5 48% 50%,transparent 51%); }.case-card h3 { margin-bottom:10px; font-size:21px; }.case-card p { color:var(--muted); font-size:13px; }.case-status { margin-top:auto; color:#c3cfdd; border-color:rgba(191,208,229,.25); }
.technology { display:grid; grid-template-columns:1fr .8fr; gap:70px; align-items:center; padding-block:90px; border-block:1px solid var(--line); }.technology-copy>p:not(.overline) { margin-bottom:0; }.technology-note { display:flex; gap:17px; align-items:flex-start; padding:23px 0; border-block:1px solid rgba(80,161,242,.32); }.technology-note p { margin:0; color:var(--muted); }.technology-note strong { color:var(--text); }.note-icon { display:grid; flex:0 0 auto; place-items:center; width:28px; height:28px; border:1px solid var(--blue); color:var(--blue-light); font-size:21px; }.about { padding-block:120px; }.about-layout { display:grid; grid-template-columns:1.15fr .85fr; gap:70px; align-items:start; }.about-layout h2 { margin:0; }.about-layout p { margin:0; color:var(--muted); font-size:18px; }.contact { display:grid; grid-template-columns:1fr .83fr; gap:70px; padding-block:86px; margin-bottom:80px; border:1px solid rgba(42,126,220,.45); border-radius:14px; background:radial-gradient(circle at 18% 92%,rgba(18,126,255,.16),transparent 28%), #07162b; }.contact-copy,.contact-form { padding-inline:45px; }.contact-copy { padding-top:22px; }.contact-note { display:flex; gap:13px; align-items:flex-start; margin-top:30px; color:var(--muted); font-size:13px; }.contact-note strong { color:#e9f3ff; }.contact-form { display:grid; gap:16px; }.contact-form label { display:grid; gap:7px; color:#dceafa; font-size:12px; font-weight:700; }.contact-form input,.contact-form textarea { width:100%; padding:12px 13px; border:1px solid rgba(102,170,242,.38); border-radius:6px; outline:none; color:#fff; background:#061226; transition:border-color .2s, box-shadow .2s; }.contact-form textarea { resize:vertical; }.contact-form input:focus,.contact-form textarea:focus { border-color:var(--blue-light); box-shadow:0 0 0 3px rgba(48,139,250,.18); }.contact-form .button { width:100%; margin-top:3px; }.form-feedback { min-height:1.5em; margin:0; color:#a7dcff; font-size:13px; }.form-disclaimer { margin:0; color:#90a1b8; font-size:11px; }.site-footer { display:grid; grid-template-columns:auto 1fr; gap:20px 50px; align-items:center; padding-bottom:40px; color:#99a9be; font-size:12px; }.footer-links { display:flex; justify-content:flex-end; gap:22px; }.footer-links a:hover,.privacy-link:hover { color:var(--blue-light); }.site-footer p { grid-column:1 / -1; margin:0; padding-top:19px; border-top:1px solid rgba(101,163,225,.17); }.privacy-link { grid-column:2; justify-self:end; grid-row:2; }.floating-contact { position:fixed; right:26px; bottom:26px; z-index:20; display:grid; place-items:center; width:53px; height:53px; border-radius:50%; color:#fff; background:#0c8dff; box-shadow:0 12px 28px rgba(0,111,226,.4); transition:transform .2s; }.floating-contact:hover { transform:translateY(-3px) scale(1.04); }.floating-contact .message-icon { width:21px; height:16px; }.floating-contact:focus-visible,.button:focus-visible,.nav a:focus-visible,.header-cta:focus-visible,.brand:focus-visible,.case-card:focus-visible { outline:3px solid #a9d9ff; outline-offset:4px; }
.reveal { opacity:0; transform:translateY(18px); transition:opacity .7s cubic-bezier(.2,.75,.2,1), transform .7s cubic-bezier(.2,.75,.2,1); }.reveal.is-visible { opacity:1; transform:none; } @keyframes spin { to { transform:translate(-50%,-50%) rotateX(70deg) rotateZ(360deg); } } @keyframes globe-breathe { 50% { transform:translate(-50%,-55%) scale(1.04); box-shadow:inset 14px -17px 44px rgba(5,24,71,.8), 0 0 45px rgba(15,133,255,.58); } } @keyframes blink { 50% { opacity:.25; transform:scale(.55); } }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; }.reveal { opacity:1; transform:none; } }
@media (max-width:1120px) { .site-header { gap:20px; }.nav { gap:16px; }.hero { grid-template-columns:1fr 1fr; }.capability-list { grid-column:1/-1; grid-template-columns:repeat(4,1fr); }.capability { min-height:100px; grid-template-columns:29px 1fr; }.capability i,.capability small { display:none; }.solution,.solution-reverse { grid-template-columns:60px 1fr 1fr; gap:20px; }.solution-reverse .solution-content { grid-column:3; }.solution-reverse .solution-visual { grid-column:2; }.case-grid { grid-template-columns:repeat(2,1fr); }.case-card { min-height:360px; } }
@media (max-width:820px) { .section-shell,.site-header { width:min(100% - 32px, 1180px); }.site-header { grid-template-columns:auto auto; justify-content:space-between; min-height:74px; }.header-cta { display:none; }.menu-toggle { display:grid; gap:5px; width:44px; height:44px; padding:10px; border:1px solid var(--line); border-radius:6px; color:#fff; background:transparent; }.menu-toggle span:not(.sr-only) { display:block; height:1px; background:currentColor; transition:transform .2s,opacity .2s; }.menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(6px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.nav { position:absolute; top:74px; right:0; left:0; display:none; flex-direction:column; gap:0; padding:10px 16px 17px; border-bottom:1px solid var(--line); background:#061123; }.nav.is-open { display:flex; }.nav a { padding:14px 0; font-size:13px; }.nav a::after { display:none; }.hero { grid-template-columns:1fr; padding-block:65px 55px; }.hero-copy { text-align:center; }.service-line { justify-content:center; max-width:none; }.hero-lede { margin-inline:auto; }.hero-actions { justify-content:center; }.orbit-stage { min-height:400px; max-width:500px; margin:auto; }.capability-list { grid-column:auto; grid-template-columns:1fr 1fr; }.capability { min-height:110px; }.difference,.solutions,.process,.cases,.about { padding-block:80px; }.transformation { grid-template-columns:1fr; gap:26px; padding:23px 0; }.transform-core { height:105px; order:2; }.state-after { order:3; text-align:left; }.state-after li { padding-right:0; padding-left:18px; }.state-after li::before { right:auto; left:0; }.outcomes { grid-template-columns:1fr 1fr; }.solution,.solution-reverse { grid-template-columns:54px 1fr; padding:25px; }.solution-visual,.solution-reverse .solution-visual { grid-column:2; grid-row:2; }.solution-content,.solution-reverse .solution-content { grid-column:2; grid-row:1; }.process-steps { grid-template-columns:1fr 1fr; }.process-steps::before { display:none; }.technology,.about-layout,.contact { grid-template-columns:1fr; gap:32px; }.contact { padding-block:45px; }.contact-copy,.contact-form { padding-inline:26px; }.site-footer { grid-template-columns:1fr; }.footer-links { justify-content:flex-start; flex-wrap:wrap; }.privacy-link { grid-column:1; grid-row:auto; justify-self:start; }.site-footer p { grid-column:1; } }
@media (max-width:500px) { h1 { font-size:2.75rem; }.brand-copy strong { font-size:18px; }.brand-symbol { width:44px; height:44px; font-size:40px; }.hero-actions,.hero-actions .button { width:100%; }.orbit-stage { min-height:340px; transform:scale(.9); margin-block:-12px; }.capability-list { grid-template-columns:1fr; }.capability small { display:block; }.solution-content ul { grid-template-columns:1fr; }.solution { grid-template-columns:1fr; gap:15px; }.solution-number { grid-row:1; }.solution-content,.solution-reverse .solution-content,.solution-visual,.solution-reverse .solution-visual { grid-column:1; }.solution-content,.solution-reverse .solution-content { grid-row:2; }.solution-visual,.solution-reverse .solution-visual { grid-row:3; }.process-steps { grid-template-columns:1fr; }.case-grid { grid-template-columns:1fr; }.section-intro h2,.technology h2,.about h2,.contact h2 { font-size:2.3rem; }.outcomes { grid-template-columns:1fr; }.contact-copy,.contact-form { padding-inline:22px; }.floating-contact { right:17px; bottom:17px; }.footer-brand { margin-bottom:9px; } }

/* Hero: composition aligned to the approved reference — copy left, orbital globe right, service cards below. */
@media (min-width:821px) {
  .hero { grid-template-columns:minmax(0, .92fr) minmax(500px, 1.08fr); grid-template-rows:minmax(505px, 1fr) auto; column-gap:8px; row-gap:16px; min-height:calc(100vh - 86px); padding-top:40px; padding-bottom:46px; }
  .hero-copy { align-self:center; padding-bottom:14px; }
  .hero-copy h1 { max-width:575px; margin-top:22px; margin-bottom:22px; font-size:clamp(3.15rem, 4.5vw, 4.9rem); }
  .hero-lede { max-width:505px; font-size:17px; }
  .orbit-stage { align-self:stretch; min-height:500px; }
  .capability-list { grid-column:1 / -1; grid-template-columns:repeat(4, 1fr); gap:16px; }
  .capability { min-height:190px; padding:25px 22px 19px; grid-template-columns:70px 1fr; grid-template-rows:1fr auto; gap:15px; border-color:rgba(54,133,224,.45); border-radius:10px; }
  .capability:hover { transform:translateY(-4px); }
  .capability i { display:block; grid-column:1 / -1; color:var(--blue-light); font-size:20px; line-height:1; }
  .capability-icon { width:58px; height:58px; border-radius:10px; box-shadow:inset 0 0 18px rgba(9,126,255,.14); }
  .icon-code::after { top:14px; left:14px; font-size:17px; }
  .icon-flow::before { width:15px; height:15px; top:10px; left:10px; }.icon-flow::after { width:15px; height:15px; right:8px; bottom:8px; }
  .icon-link::after { top:21px; left:8px; width:39px; height:7px; }
  .icon-spark::after { inset:15px; }
  .capability b { padding-top:3px; font-size:15px; line-height:1.45; }
  .capability small { display:block; margin-top:10px; font-size:12px; line-height:1.5; }
}
.service-line { display:inline-flex; max-width:none; padding:7px 13px; border:1px solid rgba(32,139,248,.75); border-radius:999px; color:#33a1ff; background:rgba(4,17,37,.45); font-size:11px; letter-spacing:.025em; line-height:1.2; }
.service-line::first-letter { color:inherit; }
.hero-categories { display:flex; flex-wrap:wrap; gap:0; margin:25px 0 0; color:#e9f4ff; font-size:12px; font-weight:700; text-transform:uppercase; }
.hero-categories span { display:flex; align-items:center; }.hero-categories span:not(:last-child)::after { width:5px; height:5px; margin-inline:15px; border-radius:50%; background:var(--blue); content:""; }
.orbit-stage::before { position:absolute; z-index:-1; inset:2% -9% 4% -12%; background:radial-gradient(circle at 58% 48%,rgba(26,133,255,.2) 0 1px,transparent 2px), radial-gradient(circle at 48% 23%,rgba(26,133,255,.6) 0 1.5px,transparent 2.5px), radial-gradient(circle at 72% 33%,rgba(26,133,255,.7) 0 1px,transparent 2px); background-size:42px 42px, 67px 67px, 91px 91px; opacity:.85; content:""; mask-image:linear-gradient(90deg,transparent 0,#000 17%,#000 83%,transparent); }
.orbit-stage .globe { width:330px; height:330px; transform:translate(-50%,-56%); background:radial-gradient(circle at 21% 25%,rgba(181,227,255,.9) 0 1px,transparent 2px), radial-gradient(circle at 37% 18%,rgba(123,202,255,.85) 0 1px,transparent 2px), radial-gradient(circle at 48% 55%,rgba(85,179,255,.9) 0 1px,transparent 2px), radial-gradient(circle at 70% 39%,rgba(114,203,255,.85) 0 1px,transparent 2px), radial-gradient(circle at 55% 38%,rgba(20,115,244,.55),transparent 47%),radial-gradient(circle,rgba(11,77,183,.45),rgba(3,15,37,.22) 67%,transparent 68%); box-shadow:inset 22px -22px 55px rgba(5,24,71,.86),0 0 45px rgba(15,133,255,.48); }
.orbit-stage .globe::before { inset:28px 0; }.orbit-stage .globe::after { inset:0 43px; }.orbit-stage .orbit-one { width:485px; height:180px; }.orbit-stage .orbit-two { width:440px; height:150px; }.orbit-stage .orbit-three { width:350px; height:295px; }.orbit-stage .ring-1 { width:350px; height:94px; }.orbit-stage .ring-2 { width:425px; height:124px; }.orbit-stage .ring-3 { width:505px; height:158px; }.orbit-stage .stage-label { bottom:8%; }.orbit-stage .signal-a { top:18%; left:14%; }.orbit-stage .signal-b { top:20%; right:11%; }.orbit-stage .signal-c { bottom:21%; right:18%; }
@media (max-width:1120px) and (min-width:821px) { .site-header { grid-template-columns:auto 1fr auto; }.nav { gap:13px; }.nav a { font-size:10px; }.orbit-stage .globe { width:285px; height:285px; }.orbit-stage .orbit-one { width:410px; }.capability { padding:18px 14px; }.capability-icon { width:46px; height:46px; }.capability b { font-size:13px; }.capability small { font-size:11px; } }
@media (max-width:820px) { .service-line { font-size:10px; }.hero-categories { justify-content:center; margin-top:22px; font-size:10px; }.hero-categories span:not(:last-child)::after { margin-inline:10px; }.capability-list { margin-top:6px; }.capability { min-height:132px; padding:18px; }.capability i { display:block; grid-column:1 / -1; }.orbit-stage .globe { width:275px; height:275px; }.orbit-stage .orbit-one { width:390px; height:145px; }.orbit-stage .orbit-two { width:345px; height:115px; }.orbit-stage .ring-1 { width:290px; }.orbit-stage .ring-2 { width:345px; }.orbit-stage .ring-3 { width:415px; } }

/* Pixel-aligned hero pass from the approved 1536 × 1024 composition. */
.brand { padding:4px 7px; overflow:visible; }
.brand-image { display:block; width:315px; max-width:none; height:auto; object-fit:contain; object-position:left center; }
.site-header { width:min(1460px, calc(100% - 40px)); min-height:108px; background:linear-gradient(180deg,rgba(2,7,17,.99) 74%,rgba(2,7,17,.82)); }
.hero.section-shell { width:min(1395px, calc(100% - 60px)); }
.hero { background:#020711; }
.hero::before,.hero::after,.orbit-stage::before { display:none; }
.hero-copy h1 span { color:#147fed; }
.hero-globe-motion { position:absolute; inset:0; transform-origin:52% 54%; animation:hero-globe-drift 8s cubic-bezier(.45,.05,.55,.95) infinite; will-change:transform; }
.hero-globe-motion::after { position:absolute; top:51%; left:53%; width:54%; aspect-ratio:1; border-radius:50%; background:radial-gradient(circle,rgba(43,157,255,.16),transparent 67%); content:""; transform:translate(-50%,-50%); animation:hero-globe-energy 4.8s ease-in-out infinite; pointer-events:none; }
.hero-globe-art { position:absolute; top:50%; left:50%; width:118%; max-width:none; height:auto; transform:translate(-49%,-50%); object-fit:contain; -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 9%,#000 100%); mask-image:linear-gradient(90deg,transparent 0,#000 9%,#000 100%); animation:hero-globe-light 5.6s ease-in-out infinite; }
.hero-globe-motion.is-paused,.hero-globe-motion.is-paused::after,.hero-globe-motion.is-paused .hero-globe-art { animation-play-state:paused; }
@keyframes hero-globe-drift { 0%,100% { transform:translate3d(0,0,0) scale(1); } 35% { transform:translate3d(5px,-9px,0) scale(1.008); } 68% { transform:translate3d(-4px,5px,0) scale(.996); } }
@keyframes hero-globe-light { 0%,100% { filter:brightness(1) saturate(1); opacity:.97; } 50% { filter:brightness(1.08) saturate(1.12); opacity:1; } }
@keyframes hero-globe-energy { 0%,100% { opacity:.34; transform:translate(-50%,-50%) scale(.96); } 50% { opacity:.82; transform:translate(-50%,-50%) scale(1.06); } }
.capability-icon svg { width:100%; height:100%; padding:12px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.capability i { font-style:normal; font-size:11px; font-weight:700; letter-spacing:.025em; text-transform:uppercase; }
@media (min-width:821px) {
  .hero { grid-template-columns:minmax(600px,.9fr) minmax(650px,1.1fr); grid-template-rows:516px auto; row-gap:71px; align-content:start; min-height:calc(100vh - 108px); padding-top:15px; }
  .hero-copy { align-self:center; padding-left:4px; transform:translateY(106px); }
  .hero-copy h1 { max-width:650px; margin:22px 0 24px; font-family:var(--font-body); font-size:3.7rem; line-height:1.02; letter-spacing:-.035em; }
  .hero-lede { max-width:520px; font-size:17px; line-height:1.65; }
  .hero-actions { gap:20px; margin-top:28px; }
  .hero-actions .button { min-height:56px; }
  .hero-actions .button:first-child { min-width:303px; }
  .hero-actions .button-secondary { min-width:291px; }
  .hero-categories { margin-top:57px; }
  .hero-categories { position:relative; z-index:3; }
  .orbit-stage { min-height:545px; overflow:visible; }
  .capability-list { gap:16px; }
  .capability { min-height:190px; padding:26px 22px 18px; grid-template-columns:70px 1fr; grid-template-rows:1fr auto; }
  .capability-icon { width:62px; height:62px; }
  .capability b { font-size:15px; }
  .capability b { max-width:190px; }
  .capability small { font-size:12px; }
}
@media (max-width:1280px) and (min-width:821px) {
  .brand-image { width:245px; }
  .site-header { width:min(1220px, calc(100% - 40px)); }
  .nav { gap:12px; }
  .nav a { font-size:10px; }
  .hero { grid-template-columns:minmax(565px,.92fr) minmax(0,1.08fr); column-gap:0; }
  .hero-copy h1 { font-size:3.55rem; }
  .hero-copy .button { padding-inline:15px; }
  .hero-actions .button:first-child { min-width:285px; }
  .hero-actions .button-secondary { min-width:265px; }
  .hero-globe-art { width:123%; transform:translate(-46%,-50%); }
}
@media (max-width:820px) {
  .site-header { min-height:74px; width:min(100% - 32px,1180px); }
  .brand-image { width:235px; }
  .hero { background:#020711; }
  .hero-globe-art { width:130%; transform:translate(-47%,-50%); }
  .capability-icon svg { padding:6px; }
}
@media (max-width:500px) { .brand-image { width:205px; }.hero-copy h1 br { display:none; }.hero-copy h1 span { display:inline; }.hero-globe-art { width:155%; } }

@media (max-width:500px) {
  .orbit-stage { min-height:clamp(430px,105vw,520px); margin:0 auto 8px; transform:none; }
  .hero-globe-art { width:150%; transform:translate(-50%,-50%); }
  .capability-list { margin-top:12px; }
}

@media (max-width:600px) {
  .service-line { display:none; }
}

/* Differential section — approved before/ADFG/after visual map. */
.difference { position:relative; width:min(1400px,calc(100% - 60px)); max-width:none; padding:92px 0 88px; scroll-margin-top:108px; isolation:isolate; }
.difference::before { position:absolute; z-index:-2; top:0; bottom:0; left:50%; width:100vw; background:radial-gradient(circle at 50% 45%,rgba(9,84,180,.18),transparent 34%),linear-gradient(180deg,#030a16,#061426 58%,#030a16); content:""; transform:translateX(-50%); }
.difference::after { position:absolute; z-index:-1; top:9%; right:calc((1400px - 100vw)/2); left:calc((1400px - 100vw)/2); height:78%; background-image:linear-gradient(90deg,transparent 8%,rgba(23,103,190,.2) 8.1% 8.2%,transparent 8.3% 91%,rgba(23,103,190,.18) 91.1% 91.2%,transparent 91.3%),radial-gradient(circle,rgba(23,128,243,.55) 0 1px,transparent 1.6px); background-size:100% 100%,78px 78px; content:""; opacity:.36; mask-image:linear-gradient(90deg,#000,transparent 26%,transparent 74%,#000); }
.difference-heading { max-width:980px; margin:0 auto 24px; text-align:center; }
.difference-heading .overline { display:inline-flex; align-items:center; gap:11px; margin-bottom:18px; color:#1597ff; font-size:13px; letter-spacing:.03em; }
.difference-heading .overline::before,.difference-heading .overline::after { color:#1597ff; content:"✦"; font-size:8px; }
.difference-heading h2 { margin:0 0 17px; font-family:var(--font-body); font-size:clamp(2.45rem,3.4vw,3.25rem); line-height:1.08; letter-spacing:-.035em; }
.difference-heading h2 span { color:#167eea; }
.difference-heading>p:last-child { margin:0; color:#f0f4fb; font-size:16px; line-height:1.55; }
.comparison-map { position:relative; display:grid; grid-template-columns:400px 1fr 400px; align-items:center; min-height:560px; margin-top:22px; }
.connection-field { position:absolute; z-index:0; inset:0; width:100%; height:100%; overflow:visible; pointer-events:none; }
.compare-panel { position:relative; z-index:2; height:560px; padding:24px 28px; border:1px solid rgba(83,147,217,.34); border-radius:15px; background:linear-gradient(145deg,rgba(9,27,52,.96),rgba(5,17,34,.95)); box-shadow:0 18px 38px rgba(0,3,12,.28); }
.compare-panel header { margin-bottom:18px; text-align:center; }
.compare-panel header h3 { margin:0 0 5px; font-family:var(--font-body); font-size:16px; letter-spacing:0; text-transform:uppercase; }
.compare-panel header p { margin:0; color:#d0d9e6; font-size:12px; }
.before-panel header h3 { color:#ff5a67; }.after-panel header h3 { color:#3fdfbd; }
.compare-list { display:grid; gap:12px; padding:0; margin:0; list-style:none; }
.compare-list li { display:grid; grid-template-columns:68px 1fr; gap:18px; align-items:center; min-height:78px; }
.compare-icon { display:grid; place-items:center; width:68px; height:68px; border:1px solid currentColor; border-radius:10px; background:rgba(7,23,44,.9); }
.compare-icon svg { width:40px; height:40px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.before-panel .compare-icon { color:#ff5563; border-color:rgba(255,85,99,.42); }.after-panel .compare-icon { color:#1e9cff; border-color:rgba(30,156,255,.5); }
.compare-list b { display:block; margin-bottom:3px; color:#f4f7fb; font-size:13px; }.compare-list small { display:block; max-width:235px; color:#c3cede; font-size:11px; line-height:1.45; }
.adfg-bridge { position:relative; z-index:1; align-self:stretch; }
.bridge-copy { position:absolute; top:66px; left:50%; width:260px; text-align:center; transform:translateX(-50%); }
.bridge-copy h3 { margin:0 0 6px; color:#168cff; font-family:var(--font-body); font-size:15px; letter-spacing:0; text-transform:uppercase; }.bridge-copy p { margin:0; color:#e0e8f3; font-size:13px; }
.bridge-core { position:absolute; top:50%; left:50%; display:grid; place-items:center; width:142px; height:142px; border:2px solid #19a6ff; border-radius:50%; background:radial-gradient(circle at 50% 50%,#0a244c,#031027 67%); box-shadow:0 0 0 1px rgba(85,183,255,.32),0 0 32px rgba(7,130,255,.62); transform:translate(-50%,-38%); }
.bridge-core::before,.bridge-core::after { position:absolute; left:50%; width:2px; height:72px; background:linear-gradient(#179cff,transparent); content:""; transform:translateX(-50%); box-shadow:0 0 9px #168cff; }.bridge-core::before { bottom:100%; }.bridge-core::after { top:100%; transform:translateX(-50%) rotate(180deg); }
.bridge-core img { position:relative; z-index:2; width:104px; height:auto; mix-blend-mode:screen; }
.core-particles { position:absolute; inset:-70px; border-radius:50%; background-image:radial-gradient(circle,rgba(50,166,255,.95) 0 1px,transparent 1.7px),radial-gradient(circle,rgba(255,72,91,.85) 0 1px,transparent 1.5px); background-position:0 0,13px 9px; background-size:21px 21px,27px 27px; opacity:.34; mask-image:radial-gradient(circle,transparent 0 23%,#000 46%,transparent 72%); animation:spin-particles 22s linear infinite; }
.compare-arrow { width:20px; height:20px; margin:4px auto 27px; border-right:3px solid #fff; border-bottom:3px solid #fff; transform:rotate(45deg); }
.benefit-bar { display:grid; grid-template-columns:repeat(4,1fr); min-height:150px; padding:28px 24px; border:1px solid rgba(36,139,240,.58); border-radius:14px; background:linear-gradient(180deg,rgba(7,27,55,.96),rgba(4,17,34,.96)); box-shadow:inset 0 1px rgba(77,167,255,.14),0 -10px 30px rgba(9,108,228,.1); }
.benefit-bar>div { display:flex; gap:17px; align-items:center; justify-content:center; padding-inline:20px; }.benefit-bar>div+div { border-left:1px solid rgba(107,164,225,.18); }
.benefit-symbol { flex:0 0 auto; width:48px; height:48px; color:#287fff; }.benefit-symbol svg { width:100%; height:100%; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }.benefit-bar p { margin:0; }.benefit-bar strong { display:block; color:#3c83ff; font-family:var(--font-body); font-size:22px; line-height:1.1; }.benefit-bar small { display:block; margin-top:8px; color:#e1e8f2; font-size:11px; line-height:1.4; }
@keyframes spin-particles { to { transform:rotate(360deg); } }
@media (max-width:1180px) { .difference { width:min(100% - 40px,1100px); }.comparison-map { grid-template-columns:335px 1fr 335px; }.compare-panel { padding-inline:20px; }.compare-list li { grid-template-columns:58px 1fr; gap:12px; }.compare-icon { width:58px; height:58px; }.compare-icon svg { width:34px; height:34px; }.connection-field { opacity:.75; }.benefit-bar strong { font-size:18px; } }
@media (max-width:900px) { .difference { padding-block:76px; }.difference-heading h2 br,.difference-heading>p br { display:none; }.difference-heading h2 span { display:block; margin-top:5px; }.comparison-map { grid-template-columns:1fr; gap:24px; }.connection-field { display:none; }.compare-panel { height:auto; min-height:0; }.adfg-bridge { order:2; height:300px; }.before-panel { order:1; }.after-panel { order:3; }.bridge-copy { top:25px; }.bridge-core { top:58%; }.benefit-bar { grid-template-columns:1fr 1fr; }.benefit-bar>div { justify-content:flex-start; min-height:100px; }.benefit-bar>div+div { border-left:0; }.benefit-bar>div:nth-child(even) { border-left:1px solid rgba(107,164,225,.18); }.benefit-bar>div:nth-child(n+3) { border-top:1px solid rgba(107,164,225,.18); } }
@media (max-width:540px) { .difference { width:calc(100% - 32px); }.difference-heading h2 { font-size:2.15rem; }.difference-heading>p:last-child { font-size:14px; }.compare-panel { padding:22px 17px; }.compare-list li { grid-template-columns:54px 1fr; }.compare-icon { width:52px; height:52px; }.compare-icon svg { width:30px; height:30px; }.benefit-bar { grid-template-columns:1fr; padding:16px; }.benefit-bar>div { justify-content:flex-start; padding:20px 10px; }.benefit-bar>div:nth-child(even) { border-left:0; }.benefit-bar>div:nth-child(n+2) { border-top:1px solid rgba(107,164,225,.18); } }

/* Solutions section — horizontal alternating composition from the approved reference. */
.solutions { width:min(1400px,calc(100% - 60px)); max-width:none; padding:92px 0 100px; scroll-margin-top:108px; }
.solutions-heading { max-width:860px; margin:0 auto 35px; text-align:center; }
.solutions-heading .overline { display:inline-flex; align-items:center; gap:14px; margin-bottom:12px; color:#198fff; }
.solutions-heading .overline::before,.solutions-heading .overline::after { width:40px; height:1px; background:linear-gradient(90deg,transparent,#198fff); content:""; }.solutions-heading .overline::after { transform:rotate(180deg); }
.solutions-heading h2 { margin-bottom:14px; font-family:var(--font-body); font-size:clamp(2.35rem,3.4vw,3.35rem); line-height:1.05; }.solutions-heading h2 span { color:#1683f4; }
.solutions-heading p:not(.overline) { margin-inline:auto; font-size:14px; line-height:1.55; }
.solution-list { gap:12px; }
.solution { grid-template-columns:54px minmax(320px,.82fr) minmax(460px,1.18fr); gap:24px; min-height:280px; padding:20px 24px; border-radius:12px; background:linear-gradient(110deg,rgba(7,20,40,.98),rgba(5,17,35,.92)); }
.solution-number { padding-top:10px; font-size:27px; }
.solution-content h3 { max-width:260px; font-size:clamp(1.7rem,2.3vw,2.25rem); }.solution-content>p { max-width:410px; margin-bottom:14px; font-size:13px; line-height:1.55; }.solution-content ul { gap:8px 18px; margin-top:12px; }.solution-content li { font-size:11px; }.solution-content .text-link { margin-top:17px; }
.solution-visual { min-height:238px; }
.solution-image { display:grid; place-items:center; overflow:hidden; background:#041022; }
.solution-image::before { display:none; }
.solution-image img { display:block; width:100%; height:100%; object-fit:contain; mix-blend-mode:screen; }
.solution-reverse { grid-template-columns:minmax(460px,1.18fr) 54px minmax(320px,.82fr); }
.solution-reverse .solution-visual { grid-column:1; grid-row:1; }.solution-reverse .solution-number { grid-column:2; grid-row:1; }.solution-reverse .solution-content { grid-column:3; grid-row:1; }
.solution-final { grid-template-columns:54px minmax(300px,.9fr) minmax(300px,.95fr) minmax(230px,.65fr); }
.solution-final .solution-cta-panel { align-self:center; padding:10px 10px 10px 16px; }.solution-cta-panel h3 { max-width:210px; margin-bottom:11px; color:#1687fa; font-family:var(--font-body); font-size:23px; line-height:1.15; letter-spacing:-.025em; }.solution-cta-panel p { max-width:210px; margin-bottom:21px; color:#d6dfec; font-size:14px; }.solution-cta-panel .button { min-height:42px; padding-inline:15px; font-size:11px; }
.visual-network { min-height:238px; }
.network-lines { position:absolute; z-index:0; inset:0; width:100%; height:100%; fill:none; stroke:#1c9cff; stroke-width:1.2; stroke-dasharray:4 5; filter:drop-shadow(0 0 4px rgba(23,146,255,.7)); }.visual-network b,.visual-network span { z-index:1; }
@media (max-width:1180px) and (min-width:821px) { .solutions { width:min(100% - 40px,1100px); }.solution { grid-template-columns:50px .8fr 1.2fr; }.solution-reverse { grid-template-columns:1.15fr 50px .85fr; }.solution-reverse .solution-visual { grid-column:1; }.solution-reverse .solution-number { grid-column:2; }.solution-reverse .solution-content { grid-column:3; }.solution-final { grid-template-columns:50px .9fr .9fr .65fr; }.solution-final .solution-cta-panel { grid-column:4; grid-row:1; padding:10px 0; }.solution-final .solution-cta-panel h3,.solution-final .solution-cta-panel p { max-width:none; }.solution-final .solution-cta-panel .button { width:auto; } }
@media (max-width:820px) { .solutions { width:min(100% - 32px,720px); padding-block:76px; }.solutions-heading h2 br,.solutions-heading p br { display:none; }.solutions-heading h2 span { display:block; margin-top:5px; }.solution,.solution-reverse,.solution-final { grid-template-columns:48px 1fr; gap:15px; padding:22px 18px; }.solution-number,.solution-reverse .solution-number { grid-column:1; grid-row:1; }.solution-content,.solution-reverse .solution-content { grid-column:2; grid-row:1; }.solution-visual,.solution-reverse .solution-visual { grid-column:1 / -1; grid-row:2; }.solution-final .solution-cta-panel { grid-column:1 / -1; grid-row:3; padding:12px 0 0; }.solution-content ul { grid-template-columns:1fr 1fr; }.solution-image { min-height:220px; }.solution-cta-panel h3,.solution-cta-panel p { max-width:none; } }
@media (max-width:500px) { .solutions-heading h2 { font-size:2.1rem; }.solution,.solution-reverse,.solution-final { grid-template-columns:1fr; }.solution-number,.solution-content,.solution-reverse .solution-number,.solution-reverse .solution-content,.solution-visual,.solution-reverse .solution-visual,.solution-final .solution-cta-panel { grid-column:1; }.solution-number,.solution-reverse .solution-number { grid-row:1; }.solution-content,.solution-reverse .solution-content { grid-row:2; }.solution-visual,.solution-reverse .solution-visual { grid-row:3; }.solution-final .solution-cta-panel { grid-row:4; }.solution-content ul { grid-template-columns:1fr; }.solution-image { min-height:190px; } }
@media (max-width:1180px) and (min-width:821px) { article.solution.solution-final { grid-template-columns:50px minmax(250px,.9fr) minmax(250px,.9fr) minmax(190px,.65fr); }.solution.solution-final .solution-cta-panel { grid-column:4; grid-row:1; } }
@media (max-width:820px) { article.solution.solution-final { grid-template-columns:48px 1fr; }.solution.solution-final .solution-cta-panel { grid-column:1 / -1; grid-row:3; } }
@media (max-width:500px) { article.solution.solution-final { grid-template-columns:1fr; }.solution.solution-final .solution-cta-panel { grid-column:1; grid-row:4; } }

/* Process section — four-stage illuminated timeline from the approved reference. */
.process { position:relative; width:min(1400px,calc(100% - 60px)); max-width:none; padding:0 0 72px; scroll-margin-top:108px; background:none; isolation:isolate; }
.process::before { position:absolute; z-index:-2; top:0; bottom:0; left:50%; width:100vw; background:radial-gradient(circle at 50% 28%,rgba(11,92,192,.17),transparent 31%),linear-gradient(180deg,#030914 0%,#061328 57%,#030a16 100%); content:""; transform:translateX(-50%); }
.process::after { position:absolute; z-index:-1; top:4%; right:calc((1400px - 100vw)/2); left:calc((1400px - 100vw)/2); height:46%; background-image:linear-gradient(90deg,transparent 0 10%,rgba(24,103,193,.26) 10.1% 10.2%,transparent 10.3% 89%,rgba(24,103,193,.22) 89.1% 89.2%,transparent 89.3%),radial-gradient(circle,rgba(24,128,244,.62) 0 1.2px,transparent 1.8px); background-size:100% 100%,84px 84px; content:""; opacity:.38; mask-image:linear-gradient(90deg,#000,transparent 29%,transparent 71%,#000); }
.process-heading { position:relative; z-index:51; max-width:800px; margin:0 auto 12px; text-align:center; }
.process-heading .overline { display:inline-flex; align-items:center; gap:13px; margin-bottom:14px; color:#1597ff; font-size:13px; letter-spacing:.035em; }
.process-heading .overline::before,.process-heading .overline::after { width:20px; height:1px; background:linear-gradient(90deg,transparent,#198fff); content:""; }
.process-heading .overline::after { transform:rotate(180deg); }
.process-heading h2 { margin:0 0 13px; font-family:var(--font-body); font-size:clamp(2.5rem,3.15vw,3rem); line-height:1.03; letter-spacing:-.04em; }
.process-heading h2 span { color:#167ff0; }
.process-heading>p:last-child { margin:0; color:#e9eff8; font-size:15px; line-height:1.5; }
.process-timeline { position:relative; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:22px; padding:0; margin:0; list-style:none; }
.process-timeline::before { position:absolute; z-index:1; top:119px; right:1.1%; left:4%; height:2px; background:linear-gradient(90deg,rgba(18,134,255,.16),#1789fb 8%,#50c0ff 51%,#1687f5 94%,rgba(18,134,255,.75)); content:""; box-shadow:0 0 5px #168cff,0 0 18px rgba(22,140,255,.72); }
.process-timeline::after { position:absolute; z-index:2; top:111px; right:.4%; width:14px; height:14px; border-top:2px solid #34adff; border-right:2px solid #34adff; content:""; filter:drop-shadow(0 0 5px #168cff); transform:rotate(45deg); }
.process-timeline>li { position:relative; min-width:0; padding:0; border:0; }
.process-timeline>li::before { display:none; }
.step-marker { position:relative; z-index:2; display:flex; justify-content:center; height:139px; }
.step-icon { display:grid; place-items:center; width:94px; height:94px; border:1.5px solid #31a9ff; border-radius:50%; color:#168cff; background:radial-gradient(circle,#0a2245 0%,#06152c 68%,#061020 100%); box-shadow:inset 0 0 19px rgba(24,136,255,.23),0 0 7px #1a98ff,0 0 29px rgba(20,126,246,.58); }
.step-icon::after { position:absolute; width:118px; height:42px; background:radial-gradient(ellipse,rgba(23,143,255,.34),transparent 65%); content:""; transform:translateY(48px); }
.step-icon svg { position:relative; z-index:1; width:49px; height:49px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; filter:drop-shadow(0 0 4px rgba(22,140,255,.85)); }
.step-node { position:absolute; z-index:3; bottom:5px; display:grid; place-items:center; width:29px; height:29px; border:2px solid #84d1ff; border-radius:50%; color:#1684ed; background:#fff; box-shadow:0 0 5px #fff,0 0 16px #168cff; font:800 14px/1 var(--font-body); }
.step-card { display:flex; flex-direction:column; min-height:386px; padding:20px 23px 18px; overflow:hidden; border:1px solid rgba(63,135,213,.46); border-radius:13px; background:linear-gradient(145deg,rgba(7,23,46,.98),rgba(4,15,31,.97)); box-shadow:inset 0 1px rgba(99,174,255,.06),0 16px 32px rgba(0,3,12,.18); }
.step-number { color:#1681ef; font:500 35px/1 var(--font-body); letter-spacing:-.04em; }
.step-card h3 { min-height:46px; margin:9px 0 7px; font-family:var(--font-body); font-size:20px; line-height:1.15; letter-spacing:-.025em; }
.step-card>p { min-height:43px; margin-bottom:12px; color:#dbe4f0; font-size:12px; line-height:1.55; }
.step-card ul { display:grid; gap:5px; padding:0; margin:0 0 17px; list-style:none; }
.step-card li { position:relative; padding:0 0 0 19px; border:0; color:#dce6f3; font-size:11px; line-height:1.45; }
.step-card li::before { position:absolute; top:2px; left:0; display:grid; place-items:center; width:13px; height:13px; border:1px solid #1799ff; border-radius:50%; color:#55baff; content:"✓"; font-size:8px; line-height:1; }
.step-card figure { height:137px; margin:auto 0 0; overflow:hidden; border:1px solid rgba(43,128,217,.37); border-radius:8px; background:#061326; }
.step-card img { display:block; width:100%; height:100%; object-fit:cover; }
.trust-panel { margin-top:20px; padding:14px 22px 21px; border:1px solid rgba(45,133,224,.48); border-radius:13px; background:linear-gradient(180deg,rgba(7,24,48,.97),rgba(4,16,33,.98)); box-shadow:inset 0 1px rgba(73,163,255,.08); }
.trust-panel>h3 { margin:0 0 17px; text-align:center; font-family:var(--font-body); font-size:22px; line-height:1.2; letter-spacing:-.025em; }
.trust-panel>h3::before,.trust-panel>h3::after { display:inline-block; width:22px; height:1px; margin:0 14px 5px; background:#198fff; content:""; box-shadow:0 0 7px #168cff; }
.trust-panel>h3 span { color:#1689ff; }
.trust-points { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); }
.trust-points>div { display:grid; grid-template-columns:48px minmax(0,1fr); gap:13px; align-items:center; min-height:68px; padding:0 20px; }
.trust-points>div+div { border-left:1px solid rgba(91,155,224,.2); }
.trust-points svg { width:45px; height:45px; fill:none; stroke:#168aff; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; filter:drop-shadow(0 0 4px rgba(22,138,255,.45)); }
.trust-points p { margin:0; }
.trust-points strong { display:block; color:#f2f6fc; font-size:13px; line-height:1.25; }
.trust-points small { display:block; margin-top:5px; color:#c7d2e0; font-size:10.5px; line-height:1.42; }
@media (max-width:1180px) and (min-width:821px) { .process { width:min(100% - 40px,1100px); }.process-timeline { gap:13px; }.step-card { padding-inline:17px; }.step-card h3 { font-size:18px; }.step-card>p { font-size:11.5px; }.trust-points>div { grid-template-columns:39px 1fr; gap:9px; padding-inline:11px; }.trust-points svg { width:37px; }.trust-points strong { font-size:12px; }.trust-points small { font-size:9.5px; } }
@media (max-width:820px) { .process { width:min(100% - 32px,720px); padding-block:76px; }.process-heading { z-index:auto; }.process-heading h2 br,.process-heading>p br { display:none; }.process-heading h2 span { display:block; margin-top:5px; }.process-timeline { grid-template-columns:1fr; gap:22px; max-width:620px; margin-inline:auto; }.process-timeline::before,.process-timeline::after { display:none; }.step-marker { height:118px; }.step-icon { width:84px; height:84px; }.step-node { bottom:3px; }.step-card { min-height:0; }.step-card h3,.step-card>p { min-height:0; }.step-card figure { height:auto; aspect-ratio:2.1/1; }.trust-points { grid-template-columns:1fr 1fr; }.trust-points>div { min-height:94px; padding:13px 20px; }.trust-points>div+div { border-left:0; }.trust-points>div:nth-child(even) { border-left:1px solid rgba(91,155,224,.2); }.trust-points>div:nth-child(n+3) { border-top:1px solid rgba(91,155,224,.2); }.trust-points>div:last-child { grid-column:1/-1; }
}
@media (max-width:520px) { .process-heading h2 { font-size:2.15rem; }.process-heading>p:last-child { font-size:13px; }.step-card { padding:19px 17px 17px; }.step-card figure { aspect-ratio:1.75/1; }.trust-panel { padding-inline:15px; }.trust-panel>h3 { font-size:19px; }.trust-panel>h3::before,.trust-panel>h3::after { width:13px; margin-inline:7px; }.trust-points { grid-template-columns:1fr; }.trust-points>div,.trust-points>div:nth-child(even),.trust-points>div:last-child { grid-column:1; border-left:0; }.trust-points>div:nth-child(n+2) { border-top:1px solid rgba(91,155,224,.2); } }

/* Cases section — filterable four-column showcase from the approved reference. */
.cases { position:relative; width:min(1478px,calc(100% - 58px)); max-width:none; padding:0 0 62px; scroll-margin-top:108px; isolation:isolate; }
.cases::before { position:absolute; z-index:-2; top:0; bottom:0; left:50%; width:100vw; background:radial-gradient(circle at 50% 34%,rgba(11,80,171,.15),transparent 34%),linear-gradient(180deg,#030914 0%,#061327 64%,#030914 100%); content:""; transform:translateX(-50%); }
.cases::after { position:absolute; z-index:-1; top:1%; right:calc((1478px - 100vw)/2); left:calc((1478px - 100vw)/2); height:30%; background-image:linear-gradient(90deg,transparent 0 10%,rgba(27,108,199,.28) 10.1% 10.2%,transparent 10.3% 89%,rgba(27,108,199,.26) 89.1% 89.2%,transparent 89.3%),radial-gradient(circle,rgba(24,131,248,.74) 0 1.2px,transparent 1.8px); background-size:100% 100%,72px 72px; content:""; opacity:.4; mask-image:linear-gradient(90deg,#000,transparent 29%,transparent 71%,#000); }
.cases-heading { max-width:1120px; margin:0 auto 10px; text-align:center; }
.cases-label { margin:0 0 7px; color:#1598ff; font-size:13px; font-weight:700; letter-spacing:.035em; text-transform:uppercase; }
.cases-heading h2 { margin:0 0 11px; font-family:var(--font-body); font-size:clamp(2.45rem,2.95vw,2.8rem); line-height:1.05; letter-spacing:-.04em; }
.cases-heading h2 span { color:#167ff0; }
.cases-heading>p:last-child { margin:0; color:#edf2f9; font-size:15px; line-height:1.5; }
.case-filters { display:flex; gap:16px; align-items:center; justify-content:center; margin:0 auto 16px; }
.case-filters button { min-width:125px; height:34px; padding:0 18px; border:1px solid rgba(44,127,219,.58); border-radius:999px; color:#eef4fb; background:rgba(3,14,30,.72); font-size:11px; font-weight:700; text-transform:uppercase; transition:color .2s ease,background .2s ease,border-color .2s ease,transform .2s ease; }
.case-filters button:hover,.case-filters button:focus-visible { border-color:#45aaff; color:#7cc4ff; transform:translateY(-1px); }
.case-filters button[aria-pressed="true"] { border-color:#167ff0; color:#fff; background:linear-gradient(120deg,#126fe5,#167ff0); box-shadow:0 8px 20px rgba(16,111,231,.24); }
.case-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.case-card { --case-accent:#168cff; position:relative; display:flex; flex-direction:column; min-width:0; min-height:465px; padding:0 18px 13px; overflow:hidden; border:1px solid color-mix(in srgb,var(--case-accent) 52%,transparent); border-radius:13px; background:linear-gradient(180deg,rgba(6,23,47,.98),rgba(4,15,31,.98)); transform:none; transition:border-color .2s ease,background .2s ease,transform .2s ease; }
.case-card:hover { border-color:var(--case-accent); background:linear-gradient(180deg,rgba(8,29,58,.99),rgba(4,16,33,.99)); transform:translateY(-3px); }
.case-card-green { --case-accent:#32e0c3; }.case-card-purple { --case-accent:#b161ff; }.case-card-cyan { --case-accent:#258dff; }
.case-media { position:relative; flex:0 0 245px; height:245px; margin:0 -18px 14px; overflow:hidden; background:radial-gradient(circle at 50% 52%,color-mix(in srgb,var(--case-accent) 18%,transparent),transparent 48%),#041022; }
.case-media::after { position:absolute; right:0; bottom:0; left:0; height:54px; background:linear-gradient(transparent,#06152b); content:""; pointer-events:none; }
.case-media>img { display:block; width:100%; height:100%; object-fit:contain; mix-blend-mode:screen; }
.case-icon { position:absolute; z-index:2; top:17px; left:16px; display:grid; place-items:center; width:47px; height:47px; border:1px solid color-mix(in srgb,var(--case-accent) 72%,transparent); border-radius:9px; color:var(--case-accent); background:color-mix(in srgb,var(--case-accent) 10%,#061428); box-shadow:0 7px 20px rgba(0,3,12,.22); }
.case-icon svg { width:29px; height:29px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.case-ai-icon { font:600 20px var(--font-body); }
.case-tag { position:absolute; z-index:2; top:19px; right:14px; padding:4px 11px; border:1px solid color-mix(in srgb,var(--case-accent) 48%,transparent); border-radius:7px; color:var(--case-accent); background:rgba(6,19,39,.9); font-size:9px; font-weight:700; letter-spacing:.025em; text-transform:uppercase; }
.case-copy { min-height:98px; }
.case-demo { display:block; margin-bottom:3px; color:var(--case-accent); font-size:8px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.case-copy h3 { margin:0 0 7px; font-family:var(--font-body); font-size:16px; line-height:1.2; letter-spacing:-.025em; }
.case-copy p { margin:0; color:#d8e1ed; font-size:11.5px; line-height:1.5; }
.case-highlights { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); min-height:70px; margin:0 0 9px; padding:10px 0 6px; border:1px solid color-mix(in srgb,var(--case-accent) 30%,transparent); border-radius:8px; }
.case-highlights>div { min-width:0; padding:0 7px; text-align:center; }
.case-highlights>div+div { border-left:1px solid color-mix(in srgb,var(--case-accent) 25%,transparent); }
.case-highlights dt { color:var(--case-accent); font-size:12px; font-weight:800; line-height:1.25; }
.case-highlights dd { margin:4px 0 0; color:#d7e0ed; font-size:9.5px; line-height:1.2; }
.case-link { align-self:flex-start; margin-top:auto; color:var(--case-accent); font-size:10.5px; font-weight:800; letter-spacing:.02em; text-transform:uppercase; }
.case-link span { display:inline-block; margin-left:6px; transition:transform .2s ease; }.case-link:hover span { transform:translateX(4px); }
.case-api-media { display:grid; grid-template-columns:repeat(2,64px); grid-template-rows:repeat(2,43px); gap:29px 113px; place-content:center; }
.case-api-media::after { z-index:3; }
.case-api-lines { position:absolute; z-index:0; inset:20px 13px 9px; width:calc(100% - 26px); height:calc(100% - 29px); fill:none; stroke:var(--case-accent); stroke-width:1.3; stroke-dasharray:4 4; filter:drop-shadow(0 0 4px color-mix(in srgb,var(--case-accent) 70%,transparent)); }
.case-api-media>b { position:absolute; z-index:2; top:50%; left:50%; display:grid; place-items:center; width:69px; height:69px; border:1px solid var(--case-accent); border-radius:50%; color:#fff; background:#311360; font:600 18px var(--font-body); box-shadow:0 0 25px color-mix(in srgb,var(--case-accent) 38%,transparent); transform:translate(-50%,-50%); }
.case-api-media>span:not(.case-icon):not(.case-tag) { position:relative; z-index:1; display:grid; place-items:center; width:64px; height:43px; border:1px solid color-mix(in srgb,var(--case-accent) 43%,transparent); border-radius:7px; color:#e6d5ff; background:#101641; font-size:9px; text-align:center; }
.cases-empty { min-height:170px; margin:0; padding-top:65px; border:1px solid rgba(52,135,224,.42); border-radius:13px; color:#b9c9dc; text-align:center; }
.cases-cta { display:grid; grid-template-columns:74px 1fr auto; gap:22px; align-items:center; max-width:1060px; min-height:102px; margin:15px auto 12px; padding:14px 32px; border:1px solid rgba(48,131,222,.46); border-radius:13px; background:linear-gradient(100deg,rgba(7,27,54,.98),rgba(5,18,36,.98)); }
.cases-cta-icon { display:grid; place-items:center; width:72px; height:72px; border:1px solid #1689ff; border-radius:50%; color:#258dff; background:#071a35; }
.cases-cta-icon svg { width:43px; height:43px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.cases-cta p { margin:0; }.cases-cta strong { display:block; margin-bottom:4px; font-size:16px; }.cases-cta small { display:block; color:#d0dae7; font-size:11px; }.cases-cta .button { min-width:305px; min-height:51px; }
.cases-proof { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); min-height:118px; padding:25px max(32px,calc((100% - 1240px)/2)); border-top:1px solid rgba(42,132,226,.48); border-bottom:1px solid rgba(42,132,226,.12); background:rgba(3,12,26,.45); }
.cases-proof>div { display:grid; grid-template-columns:48px minmax(0,1fr); gap:14px; align-items:center; padding:0 38px; }
.cases-proof>div+div { border-left:1px solid rgba(83,148,218,.24); }
.cases-proof svg { width:45px; height:45px; fill:none; stroke:#2b7fff; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.cases-proof p { margin:0; }.cases-proof strong { display:block; color:#398cff; font-size:13px; }.cases-proof small { display:block; margin-top:5px; color:#c8d3e0; font-size:10px; line-height:1.45; }
[hidden] { display:none !important; }
@media (max-width:1280px) and (min-width:981px) { .cases { width:min(100% - 40px,1180px); }.case-filters { gap:9px; }.case-filters button { min-width:104px; padding-inline:12px; }.case-grid { gap:10px; }.case-card { padding-inline:14px; }.case-media { margin-inline:-14px; }.case-copy h3 { font-size:14px; }.case-copy p { font-size:10.5px; }.cases-proof>div { padding-inline:20px; } }
@media (max-width:980px) { .cases { width:min(100% - 36px,860px); padding-block:76px; }.cases-heading h2 span { display:block; margin-top:4px; }.case-filters { flex-wrap:wrap; gap:9px; }.case-filters button { min-width:auto; }.case-grid { grid-template-columns:1fr 1fr; }.cases-cta { grid-template-columns:66px 1fr; }.cases-cta .button { grid-column:1/-1; width:100%; }.cases-proof { grid-template-columns:1fr 1fr; padding:10px 20px; }.cases-proof>div { min-height:105px; padding:18px 24px; }.cases-proof>div+div { border-left:0; }.cases-proof>div:nth-child(even) { border-left:1px solid rgba(83,148,218,.24); }.cases-proof>div:nth-child(n+3) { border-top:1px solid rgba(83,148,218,.24); } }
@media (max-width:620px) { .cases { width:calc(100% - 32px); }.cases-heading h2 { font-size:2.2rem; }.cases-heading>p:last-child { font-size:13px; }.cases-heading>p br { display:none; }.case-filters { justify-content:flex-start; flex-wrap:nowrap; margin-right:-16px; padding:2px 16px 7px 0; overflow-x:auto; scrollbar-width:none; }.case-filters::-webkit-scrollbar { display:none; }.case-filters button { flex:0 0 auto; }.case-grid { grid-template-columns:1fr; }.case-card { min-height:0; }.case-media { flex-basis:auto; height:auto; aspect-ratio:1.45/1; }.case-copy { min-height:0; margin-bottom:17px; }.cases-cta { grid-template-columns:54px 1fr; gap:14px; padding:20px 17px; }.cases-cta-icon { width:52px; height:52px; }.cases-cta-icon svg { width:31px; height:31px; }.cases-cta strong { font-size:14px; }.cases-cta small { font-size:10px; }.cases-cta .button { min-width:0; }.cases-proof { grid-template-columns:1fr; }.cases-proof>div,.cases-proof>div:nth-child(even) { border-left:0; }.cases-proof>div:nth-child(n+2) { border-top:1px solid rgba(83,148,218,.24); } }

/* Direct WhatsApp contact — all communication paths use the validated number. */
.floating-whatsapp { color:#fff; background:#25d366; box-shadow:0 12px 28px rgba(22,150,73,.38); }
.floating-whatsapp:hover { background:#20bd5a; }
.floating-whatsapp svg { width:31px; height:31px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }

/* Keep oversized hero artwork from shifting the viewport and clipping the brand. */
html { overflow-x:clip; }
@media (prefers-reduced-motion:reduce) { .hero-globe-motion,.hero-globe-art,.hero-globe-motion::after { animation:none!important; will-change:auto; }.hero-globe-art { filter:none; opacity:1; } }
