:root{--black:#0d0d0d;--dark:#171717;--dark2:#1f1f1f;--gold:#d4af37;--bright:#ffd700;--gold2:#b68f00;--cream:#fffdf7;--white:#fff;--muted:#7b7b7b;--line:rgba(255,255,255,.1);--lightline:rgba(0,0,0,.09);--max:1260px;--font-body:Inter,Arial,sans-serif;--button-radius:9px;--section-space:130px;--ease:cubic-bezier(.2,.75,.2,1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:#101010;font-family:var(--font-body,Inter,Arial,sans-serif);line-height:1.6;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;z-index:-2;opacity:.022;background-image:linear-gradient(#111 1px,transparent 1px),linear-gradient(90deg,#111 1px,transparent 1px);background-size:72px 72px;pointer-events:none}a{text-decoration:none;color:inherit}button,input,textarea,select{font:inherit}.container{width:min(var(--max),calc(100% - 80px));margin:auto}.mono{font-family:"IBM Plex Mono",monospace}.eyebrow{font-size:10px;letter-spacing:.2em;color:var(--gold);font-weight:600}.section{padding:var(--section-space,130px) 0}.darkSection{background:var(--black);color:#fff;position:relative;overflow:hidden}.darkSection:before{content:"";position:absolute;inset:0;opacity:.5;background-image:linear-gradient(rgba(255,255,255,.026) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.026) 1px,transparent 1px);background-size:88px 88px;mask-image:linear-gradient(to bottom,black,transparent 90%);pointer-events:none}.sectionHead{position:relative;z-index:2;display:flex;align-items:end;justify-content:space-between;gap:60px;margin-bottom:58px}.sectionHead h2{font-size:clamp(40px,5vw,68px);line-height:1.03;letter-spacing:-.055em;margin:14px 0 0}.sectionHead p{max-width:510px;color:#6f6f6f;margin:0;font-size:15px}.sectionHead.dark p{color:#888}.btn{display:inline-flex;align-items:center;gap:12px;padding:14px 23px;background:var(--gold);border:1px solid var(--gold);border-radius:var(--button-radius,9px);color:#0d0d0d;font-size:12px;font-weight:700;position:relative;overflow:hidden;transition:.35s var(--ease)}.btn svg{width:16px;height:16px}.btn:before{content:"";position:absolute;inset:0;transform:translateX(-110%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent);transition:.55s}.btn:hover:before{transform:translateX(110%)}.btn:hover{transform:translateY(-3px);box-shadow:0 15px 38px rgba(212,175,55,.18)}.btn.secondary{background:transparent;color:inherit;border-color:rgba(255,255,255,.24)}.btn.secondary:hover{border-color:var(--gold);color:var(--gold);box-shadow:none}.nav{height:76px;position:sticky;top:0;z-index:100;display:flex;align-items:center;gap:28px;padding:0 max(40px,calc((100vw - var(--max))/2));background:rgba(13,13,13,.78);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.08);color:#fff;transition:.3s}.nav.scrolled{height:68px;background:rgba(13,13,13,.96)}.brand{display:flex;align-items:center;gap:9px;color:var(--gold);letter-spacing:.2em;font-size:18px;white-space:nowrap}.brand img{width:25px;height:25px;object-fit:contain}.nav nav{display:flex;align-items:center;gap:22px;margin-left:auto}.nav nav a{position:relative;color:#bbb;font-size:12px;padding:10px 0}.nav nav a:after{content:"";position:absolute;left:0;right:100%;bottom:2px;height:1px;background:var(--gold);transition:.3s}.nav nav a:hover,.nav nav a.active{color:#fff}.nav nav a.active{color:var(--gold)}.nav nav a:hover:after,.nav nav a.active:after{right:0}.navCta{display:flex;align-items:center;gap:7px;padding:10px 14px;border:1px solid rgba(212,175,55,.65);border-radius:var(--button-radius,8px);color:var(--gold);font-size:11px;font-weight:600}.navCta:hover{background:var(--gold);color:#0d0d0d}.navCta svg{width:14px}.menu{display:none;background:none;border:0;color:#fff;width:40px;height:40px}.menu svg{width:24px}#progress{position:fixed;z-index:300;top:0;left:0;height:2px;width:0;background:var(--gold);box-shadow:0 0 15px rgba(212,175,55,.6)}#cursorDot,#cursorRing{position:fixed;left:0;top:0;pointer-events:none;z-index:1000;border-radius:50%;transform:translate(-100px,-100px)}#cursorDot{width:6px;height:6px;margin:-3px;background:var(--gold)}#cursorRing{width:34px;height:34px;margin:-17px;border:1px solid rgba(212,175,55,.5);transition:.2s}.activeCursor{width:58px!important;height:58px!important;margin:-29px!important;background:rgba(212,175,55,.06);border-color:var(--gold)!important}
.hero{min-height:calc(100vh - 76px);background:var(--black);color:#fff;position:relative;overflow:hidden;display:flex;align-items:center}.heroNoise{position:absolute;inset:0;opacity:.08;background-image:radial-gradient(rgba(212,175,55,.5) .5px,transparent .8px);background-size:7px 7px;mask-image:linear-gradient(to bottom,black,transparent 90%)}.hero:after{content:"";position:absolute;width:70vw;height:70vw;right:-35vw;top:-40vw;background:radial-gradient(circle,rgba(212,175,55,.11),transparent 65%)}.heroInner{display:grid;grid-template-columns:.86fr 1.14fr;gap:55px;align-items:center;padding:80px 0 90px;position:relative;z-index:2}.heroCopy h1{font-size:clamp(56px,6.8vw,92px);line-height:.99;letter-spacing:-.065em;margin:21px 0 25px}.heroCopy h1 em{font-style:normal;color:#c8c8c8}.heroCopy p{max-width:560px;color:#9b9b9b;font-size:17px;line-height:1.8}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.heroMeta{display:flex;gap:25px;margin-top:34px;color:#666;font:9px "IBM Plex Mono",monospace;letter-spacing:.08em}.heroMeta i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#62d38b;box-shadow:0 0 13px #62d38b;margin-right:8px}.heroBottom{position:absolute;bottom:25px;left:0;right:0;display:flex;justify-content:space-between;padding:0 max(40px,calc((100vw - var(--max))/2));color:#555;font:8px "IBM Plex Mono",monospace;letter-spacing:.18em}.heroBottom div{height:1px;background:#333;width:45%;align-self:center}
.ecosystem{height:650px;position:relative;transform:translate3d(var(--mx,0),var(--my,0),0);transition:transform .35s ease;perspective:1000px}.ecoGrid{position:absolute;inset:5% 0 0;background-image:linear-gradient(rgba(212,175,55,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(212,175,55,.09) 1px,transparent 1px);background-size:48px 48px;transform:perspective(650px) rotateX(60deg) translateY(70px);mask-image:linear-gradient(to bottom,transparent,black 15%,transparent 90%)}.ecoV{position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);width:220px;height:220px;border:1px solid rgba(212,175,55,.32);border-radius:50%;display:grid;place-items:center;background:rgba(13,13,13,.65);box-shadow:0 0 100px rgba(212,175,55,.08),inset 0 0 55px rgba(212,175,55,.05);backdrop-filter:blur(8px)}.ecoV:before,.ecoV:after{content:"";position:absolute;border:1px solid rgba(212,175,55,.16);border-radius:50%}.ecoV:before{inset:-34px}.ecoV:after{inset:-72px}.ecoV>span{font:700 105px Georgia,serif;color:var(--gold);text-shadow:0 0 35px rgba(212,175,55,.3)}.ecoV small{position:absolute;bottom:29px;color:#777;font:8px "IBM Plex Mono",monospace;letter-spacing:.2em}.ecoNode{position:absolute;z-index:5;background:rgba(23,23,23,.72);border:1px solid rgba(255,255,255,.11);color:#ddd;min-width:105px;padding:12px 13px;display:flex;align-items:center;gap:8px;text-align:left;backdrop-filter:blur(9px);cursor:pointer;transition:.35s var(--ease)}.ecoNode:hover{border-color:var(--gold);transform:translateY(-5px) scale(1.03);box-shadow:0 16px 35px rgba(0,0,0,.3)}.ecoNode i{width:6px;height:6px;border-radius:50%;background:var(--gold);box-shadow:0 0 12px var(--gold)}.ecoNode b{font:9px "IBM Plex Mono",monospace;letter-spacing:.12em}.mini{margin-left:auto;width:26px;height:18px;border:1px solid #555;position:relative}.mini.browser:after{content:"";position:absolute;inset:5px 3px 3px;background:linear-gradient(90deg,#444 30%,transparent 30%),linear-gradient(#333 1px,transparent 1px);background-size:100% 100%,100% 4px}.mini.phone{width:13px;height:21px;border-radius:3px}.mini.ai:after{content:"";position:absolute;inset:3px;background:radial-gradient(circle,#d4af37 1px,transparent 2px);background-size:5px 5px}.mini.dash:after{content:"";position:absolute;inset:4px;background:linear-gradient(90deg,#444 45%,transparent 45%),linear-gradient(0deg,#444 45%,transparent 45%)}.mini.data:after{content:"";position:absolute;left:3px;right:3px;bottom:3px;height:9px;border-top:1px solid #777;border-radius:50%}.mini.cloud{border-radius:50%}.e1{left:8%;top:20%}.e2{right:6%;top:19%}.e3{left:2%;bottom:24%}.e4{right:4%;bottom:26%}.e5{left:28%;top:7%}.e6{right:25%;bottom:8%}.ecoLine{position:absolute;height:1px;background:linear-gradient(90deg,transparent,rgba(212,175,55,.55),transparent);transform-origin:left center;opacity:.55}.l1{width:39%;left:18%;top:30%;transform:rotate(18deg)}.l2{width:39%;left:57%;top:29%;transform:rotate(-18deg)}.l3{width:40%;left:16%;top:63%;transform:rotate(-16deg)}.l4{width:40%;left:55%;top:63%;transform:rotate(16deg)}.l5{width:27%;left:38%;top:20%;transform:rotate(91deg)}.l6{width:27%;left:50%;top:65%;transform:rotate(91deg)}.ecoHud{position:absolute;z-index:4;border:1px solid rgba(255,255,255,.1);background:rgba(23,23,23,.55);padding:12px 14px;backdrop-filter:blur(10px)}.ecoHud small{display:block;color:#555;font:8px "IBM Plex Mono",monospace}.ecoHud b{display:block;color:#eee;font-size:10px;margin:4px 0}.ecoHud span{color:#666;font:8px "IBM Plex Mono",monospace}.h1{left:7%;top:42%}.h2{right:3%;top:44%}.ecoInfo{position:absolute;left:50%;bottom:8px;transform:translateX(-50%);width:270px;text-align:center;z-index:6}.ecoInfo small,.ecoInfo span{display:block;color:#666;font:8px "IBM Plex Mono",monospace}.ecoInfo b{display:block;color:#eee;margin:4px 0;font-size:11px}.ecoParticles i{position:absolute;width:3px;height:3px;border-radius:50%;background:var(--gold);box-shadow:0 0 12px var(--gold);left:calc(8% + var(--i)*6%);top:calc(12% + (var(--i)%5)*14%);animation:float 5s ease-in-out infinite;animation-delay:calc(var(--i)*-.4s)}@keyframes float{50%{transform:translateY(-14px);opacity:.35}}
.snapshot{padding-bottom:60px}.snapshotVisual{height:390px;border:1px solid var(--lightline);position:relative;overflow:hidden;background:radial-gradient(circle at 50% 50%,rgba(212,175,55,.1),transparent 35%)}.snapshotVisual:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(0,0,0,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.05) 1px,transparent 1px);background-size:48px 48px}.snapCore{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:160px;height:160px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;background:#fffdf7;box-shadow:0 0 80px rgba(212,175,55,.12)}.snapCore span{font:700 75px Georgia;color:var(--gold)}.snapCore small{position:absolute;bottom:22px;font:7px "IBM Plex Mono",monospace;color:#777}.snapItem{position:absolute;border:1px solid #d8d4c8;background:rgba(255,253,247,.86);padding:12px 14px;font:9px "IBM Plex Mono",monospace;color:#666;box-shadow:0 12px 30px rgba(0,0,0,.05)}.s1{left:9%;top:20%}.s2{right:9%;top:22%}.s3{left:12%;bottom:20%}.s4{right:11%;bottom:18%}.stats{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--lightline);margin-top:65px}.stats>div{padding:32px 0 0}.stats b{display:block;color:var(--gold2);font-size:43px;letter-spacing:-.05em}.stats small{color:#777;font:9px "IBM Plex Mono",monospace;letter-spacing:.08em}
.industries{padding-bottom:140px}.industryStage{display:grid;grid-template-columns:290px 1fr;gap:35px;position:relative;z-index:2}.industryList{border-left:1px solid rgba(255,255,255,.1)}.industryItem{width:100%;display:grid;grid-template-columns:35px 1fr;gap:8px;text-align:left;background:none;border:0;border-left:2px solid transparent;color:#666;padding:16px 18px;cursor:pointer}.industryItem span{font:9px "IBM Plex Mono"}.industryItem b{font-size:14px;color:#aaa}.industryItem small{grid-column:2;color:#555;font-size:10px}.industryItem.active{border-left-color:var(--gold);background:linear-gradient(90deg,rgba(212,175,55,.07),transparent)}.industryItem.active b{color:#fff}.industryPreview{min-height:470px;border:1px solid rgba(255,255,255,.1);background:#111;overflow:hidden}
.mockWrap{height:100%;min-height:390px;position:relative;display:grid;place-items:center;background:radial-gradient(circle at 50% 50%,rgba(212,175,55,.1),transparent 35%)}.mockBrowser{width:70%;border:1px solid rgba(255,255,255,.12);background:#0c0c0c;box-shadow:0 35px 70px rgba(0,0,0,.35);transform:perspective(1000px) rotateY(-6deg) rotateX(2deg);transition:.5s var(--ease)}.mockWrap:hover .mockBrowser{transform:perspective(1000px) rotateY(0) rotateX(0) translateY(-5px)}.mockTop{height:34px;border-bottom:1px solid rgba(255,255,255,.08);display:flex;align-items:center;gap:6px;padding:0 10px}.mockTop i{width:6px;height:6px;border-radius:50%;background:#444}.mockTop span{margin-left:8px;color:#666;font:7px "IBM Plex Mono";letter-spacing:.1em}.mockBody{display:grid;grid-template-columns:42px 1fr;min-height:280px}.mockBody aside{border-right:1px solid rgba(255,255,255,.07);display:flex;flex-direction:column;align-items:center;gap:16px;padding-top:15px;color:#555;font:8px "IBM Plex Mono"}.mockBody aside b{color:var(--gold);font-size:14px}.mockBody main{padding:22px}.mockTitle small{color:#555;font:7px "IBM Plex Mono"}.mockTitle strong{display:block;color:#eee;font-size:18px;margin-top:4px}.mockCards{display:grid;grid-template-columns:2fr 1fr 1fr;gap:8px;margin-top:20px}.mcard{min-height:60px;border:1px solid rgba(255,255,255,.08);padding:10px}.mcard span{display:block;width:24px;height:2px;background:var(--gold);opacity:.65}.mcard b{display:block;color:#eee;font-size:13px;margin-top:8px}.mcard small{color:#555;font-size:7px}.mockChart{height:80px;border:1px solid rgba(255,255,255,.08);margin-top:10px;display:flex;align-items:end;gap:8px;padding:10px}.mockChart i{flex:1;background:linear-gradient(to top,rgba(212,175,55,.15),rgba(212,175,55,.75));height:calc(18px + var(--i,1)*8px);display:block}.mockChart i:nth-child(1){height:25%}.mockChart i:nth-child(2){height:45%}.mockChart i:nth-child(3){height:35%}.mockChart i:nth-child(4){height:65%}.mockChart i:nth-child(5){height:48%}.mockChart i:nth-child(6){height:82%}.mockChart i:nth-child(7){height:68%}.floatTag{position:absolute;background:#151515;border:1px solid rgba(212,175,55,.3);padding:9px 12px;color:#aaa;font:8px "IBM Plex Mono";box-shadow:0 15px 35px rgba(0,0,0,.35)}.ft1{left:10%;top:20%}.ft2{right:9%;top:32%}.ft3{left:18%;bottom:14%}
.ideaStory{display:grid;grid-template-columns:220px 1fr;gap:45px;position:relative}.storyRail{position:absolute;left:0;top:0;bottom:0;width:1px;background:#ddd}.storyRail i{display:block;width:1px;height:0;background:var(--gold);transition:1s}.storySteps{display:flex;flex-direction:column;gap:0;padding-left:25px}.storyStep{border:0;border-top:1px solid #ddd;background:none;text-align:left;padding:20px 0;cursor:pointer;display:grid;grid-template-columns:35px 1fr;gap:5px}.storyStep span{font:9px "IBM Plex Mono";color:#aaa}.storyStep b{font-size:13px}.storyStep small{grid-column:2;color:#777;font-size:10px}.storyStep.active{color:#111}.storyStep.active b{color:var(--gold2)}.storyCanvas{min-height:530px;border:1px solid var(--lightline);position:relative;overflow:hidden;background:radial-gradient(circle at 50% 50%,rgba(212,175,55,.11),transparent 30%)}.storyCanvas:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(0,0,0,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.05) 1px,transparent 1px);background-size:60px 60px;transform:perspective(700px) rotateX(60deg) translateY(120px)}.canvasLabel{position:absolute;left:22px;top:20px;font:9px "IBM Plex Mono";color:#777}.canvasCore{position:absolute;left:50%;top:52%;transform:translate(-50%,-50%);width:210px;height:210px;display:grid;place-items:center;border:1px solid var(--gold);border-radius:50%;background:rgba(255,253,247,.78);box-shadow:0 0 70px rgba(212,175,55,.1)}.canvasCore span{font:700 38px Inter;letter-spacing:-.04em}.wireCube{position:absolute;width:120px;height:120px;border:1px solid rgba(212,175,55,.4);transform:rotate(45deg);animation:spin 18s linear infinite}.canvasBits i{position:absolute;width:8px;height:8px;border-radius:50%;background:var(--gold);box-shadow:0 0 15px var(--gold);left:calc(20% + var(--i,0)*20%);top:calc(22% + var(--i,0)*15%)}@keyframes spin{to{transform:rotate(405deg)}}
.capability{padding-bottom:150px}.capLab{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:center;position:relative;z-index:2}.capOrbit{height:570px;position:relative;border:1px solid rgba(255,255,255,.09);background:radial-gradient(circle at center,rgba(212,175,55,.07),transparent 40%);border-radius:50%}.capOrbit:before,.capOrbit:after{content:"";position:absolute;inset:17%;border:1px solid rgba(212,175,55,.12);border-radius:50%}.capOrbit:after{inset:30%}.capCenter{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:190px;height:190px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;background:#0d0d0d;box-shadow:0 0 80px rgba(212,175,55,.08)}.capCenter small,.capCenter span{font:8px "IBM Plex Mono";color:#666}.capCenter b{color:var(--gold);font-size:25px}.capNode{position:absolute;left:50%;top:50%;transform:rotate(var(--a)) translateY(-230px) rotate(calc(var(--a) * -1));background:#171717;color:#aaa;border:1px solid rgba(255,255,255,.1);padding:11px 14px;font:9px "IBM Plex Mono";cursor:pointer;white-space:nowrap}.capNode span{color:var(--gold);margin-right:7px}.capNode.active,.capNode:hover{border-color:var(--gold);color:#fff;box-shadow:0 0 25px rgba(212,175,55,.1)}.capDetail{border-left:1px solid rgba(255,255,255,.1);padding-left:50px}.capDetail small{font:9px "IBM Plex Mono";color:var(--gold)}.capDetail h3{font-size:46px;line-height:1.05;letter-spacing:-.04em;margin:15px 0}.capDetail p{color:#777;max-width:420px}.capItems{display:flex;flex-wrap:wrap;gap:7px;margin-top:25px}.capItems span{border:1px solid rgba(255,255,255,.1);padding:8px 10px;color:#aaa;font-size:9px}
.featuredProject{display:grid;grid-template-columns:.78fr 1.22fr;border:1px solid var(--lightline);min-height:620px}.featuredInfo{padding:55px;display:flex;flex-direction:column;justify-content:center}.projectTag{display:inline-flex;width:max-content;border:1px solid rgba(212,175,55,.5);padding:6px 8px;color:var(--gold2);font:8px "IBM Plex Mono";letter-spacing:.12em}.featuredInfo>small,.caseHero small,.caseCard>small,.projectTile small{display:block;color:#999;font:8px "IBM Plex Mono";margin-top:24px}.featuredInfo h3{font-size:56px;letter-spacing:-.055em;line-height:1;margin:12px 0}.featuredInfo p{color:#777;max-width:430px}.modulePills{display:flex;gap:6px;flex-wrap:wrap;margin:18px 0}.modulePills span{padding:6px 8px;border:1px solid var(--lightline);color:#777;font:8px "IBM Plex Mono"}.textLink{display:inline-flex;align-items:center;gap:9px;color:#333;font-size:10px;margin-top:20px}.textLink:hover{color:var(--gold2)}.textLink svg{width:15px}.featuredVisual{background:#111;border-left:1px solid var(--lightline);min-height:620px}.projectRail{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:18px}.projectTile{border:1px solid var(--lightline);background:#fff;padding:0 0 25px;overflow:hidden}.projectTile>div:last-child{padding:0 24px}.projectTile h3{font-size:23px;letter-spacing:-.035em;margin:8px 0}.projectTile p{color:#777;font-size:12px}.tileVisual{height:310px;background:#111}.tileVisual .mockWrap{min-height:310px}.tileVisual .mockBrowser{width:82%;}.tileVisual .floatTag{display:none}
.architecture{padding-bottom:140px}.archSystem{height:540px;position:relative;z-index:2;border:1px solid rgba(255,255,255,.09);background:radial-gradient(circle at 50% 50%,rgba(212,175,55,.08),transparent 33%);overflow:hidden}.archSystem:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:55px 55px}.archCore{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:190px;height:190px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;background:#0d0d0d;box-shadow:0 0 80px rgba(212,175,55,.08)}.archCore span{color:var(--gold);font:8px "IBM Plex Mono"}.archCore b{font-size:24px}.archCore small{font:7px "IBM Plex Mono";color:#666}.archNode{position:absolute;z-index:3;border:1px solid rgba(255,255,255,.1);background:#151515;padding:15px;width:170px;cursor:pointer;transition:.3s}.archNode:hover{border-color:var(--gold);transform:translateY(-4px)}.archNode small{font:8px "IBM Plex Mono";color:var(--gold)}.archNode b{display:block;font-size:10px;margin:6px 0;color:#eee}.archNode span{font:8px "IBM Plex Mono";color:#666}.ar1{left:8%;top:14%}.ar2{right:8%;top:14%}.ar3{left:8%;bottom:14%}.ar4{right:8%;bottom:14%}.ar5{left:50%;bottom:7%;transform:translateX(-50%)}.ar5:hover{transform:translateX(-50%) translateY(-4px)}.archLine{position:absolute;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:.5;transform-origin:left}.al1{width:32%;left:24%;top:30%;transform:rotate(25deg)}.al2{width:32%;left:60%;top:30%;transform:rotate(155deg)}.al3{width:32%;left:24%;top:70%;transform:rotate(-25deg)}.al4{width:32%;left:60%;top:70%;transform:rotate(205deg)}.al5{width:22%;left:50%;top:62%;transform:rotate(90deg)}.archReveal{margin-top:18px;border-top:1px solid rgba(255,255,255,.1);padding-top:16px;position:relative;z-index:2}.archReveal span{display:block;color:#666;font:8px "IBM Plex Mono"}.archReveal b{display:block;margin-top:5px;color:#ddd;font-size:13px}
.technologySection{background:#f7f5ee}.techConst{height:620px;position:relative;border:1px solid var(--lightline);overflow:hidden;background:radial-gradient(circle at center,rgba(212,175,55,.12),transparent 36%)}.techConst:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(0,0,0,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.045) 1px,transparent 1px);background-size:54px 54px}.techCenter{position:absolute;left:50%;top:45%;transform:translate(-50%,-50%);width:200px;height:200px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;background:rgba(255,253,247,.8);box-shadow:0 0 70px rgba(212,175,55,.1);z-index:2}.techCenter span{font:700 75px Georgia;color:var(--gold)}.techCenter b{position:absolute;bottom:42px;font-size:9px;letter-spacing:.12em}.techCenter small{position:absolute;bottom:22px;color:#888;font:7px "IBM Plex Mono"}.constNode{position:absolute;z-index:4;border:1px solid #d9d5ca;background:#fffdf7;padding:12px 14px;cursor:pointer;display:flex;align-items:center;gap:8px;transition:.3s}.constNode i{width:6px;height:6px;border-radius:50%;background:var(--gold)}.constNode b{font:9px "IBM Plex Mono"}.constNode:hover{border-color:var(--gold);transform:translateY(-4px)}.cn1{left:8%;top:18%}.cn2{right:8%;top:18%}.cn3{left:4%;top:52%}.cn4{right:4%;top:52%}.cn5{left:20%;bottom:11%}.cn6{right:20%;bottom:11%}.techLines{position:absolute;inset:0;background:radial-gradient(circle at center,transparent 0 16%,rgba(212,175,55,.16) 16.1% 16.2%,transparent 16.3% 28%,rgba(212,175,55,.08) 28.1% 28.2%,transparent 28.3%)}.techReveal{position:absolute;left:50%;bottom:20px;transform:translateX(-50%);text-align:center;z-index:5}.techReveal small{display:block;color:#888;font:8px "IBM Plex Mono"}.techReveal b{display:block;margin-top:5px;font-size:11px;color:#444}
.buildSystem{background:var(--cream)}.buildGrid{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--lightline);border-left:1px solid var(--lightline)}.buildStage{text-align:left;border:0;border-right:1px solid var(--lightline);border-bottom:1px solid var(--lightline);background:none;padding:25px;min-height:185px;cursor:pointer;transition:.35s}.buildStage span{font:9px "IBM Plex Mono";color:var(--gold2)}.buildStage b{display:block;font-size:18px;margin-top:28px}.buildStage small{display:block;color:#777;font-size:10px;margin-top:8px}.buildStage em{display:block;color:#aaa;font:8px "IBM Plex Mono";margin-top:22px;font-style:normal}.buildStage:hover,.buildStage.active{background:#fff}.buildStage.active{box-shadow:inset 0 -2px var(--gold)}.buildPreview{height:300px;border:1px solid var(--lightline);margin-top:18px;display:grid;grid-template-columns:1fr 1fr;overflow:hidden;background:#111;color:#fff}.previewCode{padding:40px;border-right:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;justify-content:center}.previewCode span{font:8px "IBM Plex Mono";color:var(--gold)}.previewCode b{font-size:42px;letter-spacing:-.05em;margin:10px 0}.previewCode p{color:#777;font:10px "IBM Plex Mono"}.previewDiagram{position:relative;display:grid;place-items:center;background:radial-gradient(circle at center,rgba(212,175,55,.08),transparent 35%)}.previewDiagram div{width:100px;height:100px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--gold);font:40px Georgia}.previewDiagram i{position:absolute;width:10px;height:10px;border-radius:50%;background:var(--gold);box-shadow:0 0 15px var(--gold)}.previewDiagram i:nth-child(1){left:25%;top:28%}.previewDiagram i:nth-child(2){right:25%;top:40%}.previewDiagram i:nth-child(3){left:42%;bottom:20%}
.labSection{padding-bottom:150px}.labGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;position:relative;z-index:2}.labCard{min-height:300px;border:1px solid rgba(255,255,255,.1);background:#111;color:#fff;text-align:left;padding:18px;cursor:pointer;transition:.35s;position:relative;overflow:hidden}.labCard:hover{border-color:rgba(212,175,55,.55);transform:translateY(-4px)}.labCard>span{font:8px "IBM Plex Mono";color:var(--gold)}.labCard>b{display:block;font-size:20px;margin-top:20px}.labCard>small{display:flex;align-items:center;gap:7px;color:#666;font:8px "IBM Plex Mono";margin-top:20px}.labCard svg{width:12px}.labArt{height:150px;margin-top:12px;position:relative;background:radial-gradient(circle at center,rgba(212,175,55,.1),transparent 40%);overflow:hidden}.labArt:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(212,175,55,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(212,175,55,.07) 1px,transparent 1px);background-size:25px 25px}.labArt i{position:absolute;width:50px;height:50px;border:1px solid rgba(212,175,55,.5);border-radius:50%;left:calc(30% + var(--i,0)*18%);top:45%;animation:float 4s ease-in-out infinite}.la1 i:nth-child(1){left:35%;top:38%}.la1 i:nth-child(2){left:55%;top:55%}.la1 i:nth-child(3){left:45%;top:25%}.la2 i{border-radius:4px}.la3 i{height:1px;width:70px;border:0;background:var(--gold);transform:rotate(calc(var(--i,0)*25deg))}.la4 i{transform:rotate(45deg)}.la5 i{height:8px;width:8px;background:var(--gold);border:0}.la6 i{border-radius:4px}
.principles{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--lightline);border-left:1px solid var(--lightline)}.principles article{padding:32px;border-right:1px solid var(--lightline);border-bottom:1px solid var(--lightline);transition:.3s}.principles article:hover{background:#fff}.principles span{font:9px "IBM Plex Mono";color:var(--gold2)}.principles h3{font-size:18px;margin:24px 0 8px}.principles p{color:#777;font-size:12px;margin:0}.finalCta{min-height:680px;background:var(--black);color:#fff;position:relative;display:flex;align-items:center;overflow:hidden}.ctaGrid{position:absolute;inset:0;background-image:linear-gradient(rgba(212,175,55,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(212,175,55,.05) 1px,transparent 1px);background-size:70px 70px;transform:perspective(750px) rotateX(60deg) translateY(32%);transform-origin:center bottom}.ctaOrb{position:absolute;width:700px;height:700px;border:1px solid rgba(212,175,55,.09);border-radius:50%;right:-250px;top:-200px;box-shadow:0 0 0 90px rgba(212,175,55,.02),0 0 0 180px rgba(212,175,55,.015)}.ctaContent{position:relative;z-index:2}.ctaContent h2{font-size:clamp(58px,8vw,108px);line-height:.95;letter-spacing:-.065em;margin:20px 0}.ctaContent h2 em{font-style:normal;color:#bcbcbc}.ctaContent p{color:#777;max-width:470px;margin-bottom:30px}
.innerHero{background:var(--black);color:#fff;padding:140px 0 120px;position:relative;overflow:hidden}.innerHero:after{content:"";position:absolute;width:520px;height:520px;right:-170px;top:-230px;border:1px solid rgba(212,175,55,.1);border-radius:50%;box-shadow:0 0 0 80px rgba(212,175,55,.02),0 0 0 160px rgba(212,175,55,.012)}.innerGrid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:90px 90px;mask-image:linear-gradient(to bottom,black,transparent)}.innerHero h1{position:relative;font-size:clamp(54px,7vw,88px);line-height:1;letter-spacing:-.06em;max-width:950px;margin:18px 0}.innerHero p{position:relative;max-width:620px;color:#888;font-size:16px}.aboutSplit{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.aboutVisual{height:520px;border:1px solid var(--lightline);position:relative;display:grid;place-items:center;background:radial-gradient(circle at center,rgba(212,175,55,.1),transparent 38%)}.aboutVisual:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(0,0,0,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.05) 1px,transparent 1px);background-size:50px 50px}.aboutCore{width:190px;height:190px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--gold);font:100px Georgia;background:rgba(255,253,247,.8)}.aboutVisual>span{position:absolute;bottom:20px;color:#888;font:8px "IBM Plex Mono"}.longCopy{color:#666;max-width:650px}.servicePageGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.servicePageCard{border:1px solid var(--lightline);padding:22px;min-height:390px;background:#fffdf7;transition:.4s;transform:perspective(900px) rotateX(var(--rx,0)) rotateY(var(--ry,0))}.servicePageCard:hover{border-color:rgba(212,175,55,.5);box-shadow:0 20px 45px rgba(0,0,0,.07)}.servicePageCard>span{font:9px "IBM Plex Mono";color:var(--gold2)}.servicePageCard>small{display:block;color:#888;font:8px "IBM Plex Mono";margin-top:15px}.servicePageCard h3{font-size:24px;letter-spacing:-.03em;margin:8px 0}.servicePageCard p{color:#777;font-size:12px}.serviceArt{height:120px;border:1px solid #e5e0d3;margin:12px 0;background:radial-gradient(circle at center,rgba(212,175,55,.12),transparent 45%);position:relative;overflow:hidden}.serviceArt i{position:absolute;border:1px solid rgba(212,175,55,.45);width:50px;height:50px;border-radius:50%;left:calc(15% + var(--i,0)*30%);top:30%;animation:float 5s infinite}.serviceArt i:nth-child(1){left:20%}.serviceArt i:nth-child(2){left:45%;top:50%}.serviceArt i:nth-child(3){left:70%;top:20%}.miniList{display:flex;gap:6px;flex-wrap:wrap;margin-top:18px}.miniList b{font:8px "IBM Plex Mono";font-weight:400;border:1px solid var(--lightline);padding:6px;color:#777}.caseHero{display:grid;grid-template-columns:.75fr 1.25fr;border:1px solid var(--lightline);min-height:650px}.caseHero>div:first-child{padding:55px}.caseHero h2{font-size:60px;line-height:1;letter-spacing:-.055em;margin:18px 0}.caseHero p{color:#777}.caseSteps{margin-top:30px;border-top:1px solid var(--lightline)}.caseSteps span{display:flex;gap:15px;padding:13px 0;border-bottom:1px solid var(--lightline);font-size:10px}.caseSteps b{color:var(--gold2);font:8px "IBM Plex Mono"}.caseHero>div:last-child{background:#111}.caseGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:18px}.caseCard{border:1px solid var(--lightline);padding:0 0 28px;background:#fff}.caseArt{height:290px;background:#111;margin-bottom:22px}.caseArt .mockWrap{min-height:290px}.caseArt .mockBrowser{width:80%}.caseCard>span,.caseCard>small,.caseCard>h3,.caseCard>p,.caseCard>.modulePills{margin-left:24px;margin-right:24px}.caseCard>span{font:8px "IBM Plex Mono";color:var(--gold2)}.caseCard h3{font-size:23px;margin:9px 24px}.caseCard p{color:#777;font-size:11px}.techRows{border-top:1px solid var(--lightline)}.techRow{display:grid;grid-template-columns:180px 1fr;gap:30px;padding:28px 0;border-bottom:1px solid var(--lightline)}.techRow>span{font:10px "IBM Plex Mono";color:var(--gold2)}.techRow div{display:flex;gap:8px;flex-wrap:wrap}.techRow b{font-size:12px;border:1px solid var(--lightline);padding:9px 11px;font-weight:500}.teamHero{display:grid;grid-template-columns:310px 1fr;gap:80px;align-items:center}.portrait{height:390px;border:1px solid var(--lightline);background:linear-gradient(145deg,#171717,#0d0d0d);display:grid;place-items:center;position:relative}.portrait span{color:var(--gold);font:100px Georgia}.portrait small{position:absolute;bottom:18px;color:#777;font:8px "IBM Plex Mono"}.tagRow{display:flex;gap:7px;flex-wrap:wrap;margin:25px 0}.tagRow span{font:8px "IBM Plex Mono";border:1px solid var(--lightline);padding:7px;color:#777}.careersLayout{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.careerVisual{height:520px;border:1px solid var(--lightline);display:grid;place-items:center;position:relative;background:radial-gradient(circle,rgba(212,175,55,.1),transparent 35%)}.careerOrbit{width:190px;height:190px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--gold);font:100px Georgia}.careerVisual>span{position:absolute;bottom:20px;font:8px "IBM Plex Mono";color:#888}.jobIntro h2{font-size:42px;letter-spacing:-.045em;margin:10px 0 35px}.job{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--lightline);padding:24px 0}.job>div{display:grid;grid-template-columns:35px 1fr;column-gap:10px}.job>div>span{grid-row:span 2;color:var(--gold2);font:9px "IBM Plex Mono"}.job h3{margin:0;font-size:16px}.job p{margin:4px 0 0;color:#888;font-size:10px}.job>a{display:flex;align-items:center;gap:7px;color:#666;font-size:10px}.insightGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.insight{border:1px solid var(--lightline);padding:18px;background:#fffdf7}.insightArt{height:250px;background:#111;position:relative;overflow:hidden;margin-bottom:20px}.insightArt:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(212,175,55,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(212,175,55,.08) 1px,transparent 1px);background-size:32px 32px;transform:perspective(500px) rotateX(55deg) translateY(50px)}.insightArt span{position:absolute;left:18px;bottom:16px;color:var(--gold);font:9px "IBM Plex Mono"}.insightArt i{position:absolute;width:70px;height:70px;border:1px solid rgba(212,175,55,.45);border-radius:50%;left:calc(25% + var(--i,0)*20%);top:35%;animation:float 5s infinite}.insightArt i:nth-child(2){left:45%;top:50%}.insightArt i:nth-child(3){left:65%;top:25%}.insight small{font:8px "IBM Plex Mono";color:#999}.insight h3{font-size:24px;line-height:1.15;letter-spacing:-.035em;margin:12px 0}.insight p{color:#777;font-size:12px}.insight>a{font-size:10px;color:#333}.contactFlow{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px}.qualify h2,.contactFlow form h2{font-size:40px;line-height:1.05;letter-spacing:-.04em;margin:12px 0 22px}.choiceGrid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:45px}.choiceGrid button{background:#fff;border:1px solid var(--lightline);padding:14px;text-align:left;color:#555;display:flex;justify-content:space-between;align-items:center;cursor:pointer;transition:.25s}.choiceGrid button svg{width:14px;color:#aaa}.choiceGrid button:hover,.choiceGrid button.selected{border-color:var(--gold);color:#111;background:#fffdf7}.contactFlow form{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-content:start}.contactFlow form>.eyebrow,.contactFlow form>h2{grid-column:span 2}.contactFlow label{display:grid;gap:7px;font-size:9px;color:#777}.contactFlow label.full{grid-column:span 2}.contactFlow input,.contactFlow textarea{border:1px solid var(--lightline);background:#fffdf7;padding:13px;border-radius:8px;outline:0}.contactFlow input:focus,.contactFlow textarea:focus{border-color:var(--gold)}.contactFlow form .btn{width:max-content;border:0;cursor:pointer}.formNote{grid-column:span 2;color:#3c7e55;font-size:10px}.legal{max-width:850px}.legal h2{font-size:40px}.legal p{color:#666}
footer{background:#0b0b0b;color:#fff;padding:85px max(40px,calc((100vw - var(--max))/2)) 25px}.footerTop{display:grid;grid-template-columns:1.7fr repeat(4,1fr);gap:40px}.footBrand p{max-width:340px;color:#777;font-size:12px;margin:20px 0}.social{display:flex;gap:7px}.social a{width:31px;height:31px;border:1px solid rgba(255,255,255,.1);display:grid;place-items:center;color:#888;font:9px "IBM Plex Mono"}.social a:hover{color:var(--gold);border-color:var(--gold)}footer h4{color:var(--gold);font:9px "IBM Plex Mono";letter-spacing:.15em}footer .footerTop>div>a:not(.brand){display:block;color:#777;font-size:10px;margin:12px 0}.footerBottom{border-top:1px solid rgba(255,255,255,.09);margin-top:65px;padding-top:18px;display:flex;justify-content:space-between;color:#555;font:8px "IBM Plex Mono"}.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s var(--ease),transform .7s var(--ease)}.reveal.visible{opacity:1;transform:none}
@media(max-width:1100px){.container{width:min(var(--max),calc(100% - 48px))}.nav{padding:0 24px}.nav nav{gap:13px}.nav nav a{font-size:10px}.heroInner{grid-template-columns:1fr}.ecosystem{max-width:760px;width:100%;margin:auto;height:560px}.industryStage,.capLab,.aboutSplit,.careersLayout,.contactFlow{grid-template-columns:1fr}.capOrbit{max-width:680px;width:100%;margin:auto}.capDetail{border-left:0;border-top:1px solid rgba(255,255,255,.1);padding:35px 0 0}.featuredProject,.caseHero{grid-template-columns:1fr}.featuredVisual,.caseHero>div:last-child{border-left:0;border-top:1px solid var(--lightline)}.projectRail{grid-template-columns:1fr 1fr}.servicePageGrid,.caseGrid,.labGrid{grid-template-columns:1fr 1fr}.buildGrid{grid-template-columns:repeat(3,1fr)}.footerTop{grid-template-columns:1.5fr 1fr 1fr 1fr}.footerTop>div:last-child{display:none}}
@media(max-width:800px){.nav{height:68px}.nav nav{position:absolute;display:none;left:0;right:0;top:68px;background:#0d0d0d;border-bottom:1px solid var(--line);padding:10px 24px;flex-direction:column;align-items:flex-start;gap:0}.nav nav.open{display:flex}.nav nav a{width:100%;padding:13px 0}.navCta{display:none}.menu{display:block;margin-left:auto}.section{padding:90px 0}.sectionHead{display:block;margin-bottom:38px}.sectionHead p{margin-top:18px}.heroCopy h1{font-size:58px}.hero{min-height:auto}.heroInner{padding:70px 0 80px}.heroBottom{display:none}.ecosystem{height:470px}.ecoHud{display:none}.ecoNode{min-width:86px;padding:9px}.ecoNode b{font-size:8px}.ecoV{width:160px;height:160px}.ecoV>span{font-size:75px}.e1{left:1%;top:18%}.e2{right:1%;top:18%}.e3{left:0;bottom:24%}.e4{right:0;bottom:25%}.e5{left:25%;top:3%}.e6{right:20%;bottom:4%}.stats{grid-template-columns:1fr 1fr;gap:30px}.snapshotVisual{height:330px}.industryStage{gap:20px}.industryPreview{min-height:400px}.storyCanvas{min-height:420px}.capOrbit{height:500px}.capNode{transform:rotate(var(--a)) translateY(-195px) rotate(calc(var(--a) * -1));font-size:8px}.capCenter{width:150px;height:150px}.capCenter b{font-size:20px}.projectRail,.servicePageGrid,.caseGrid,.labGrid,.insightGrid,.principles{grid-template-columns:1fr}.featuredInfo,.caseHero>div:first-child{padding:35px}.featuredInfo h3,.caseHero h2{font-size:46px}.featuredVisual,.caseHero>div:last-child{min-height:470px}.archSystem{height:600px}.ar1{left:4%;top:10%}.ar2{right:4%;top:10%}.ar3{left:4%;bottom:12%}.ar4{right:4%;bottom:12%}.ar5{bottom:4%}.techConst{height:500px}.techCenter{width:150px;height:150px}.techCenter span{font-size:55px}.cn1{left:2%;top:14%}.cn2{right:2%;top:14%}.cn3{left:2%;top:48%}.cn4{right:2%;top:48%}.cn5{left:10%;bottom:8%}.cn6{right:10%;bottom:8%}.buildGrid{grid-template-columns:1fr 1fr}.buildPreview{grid-template-columns:1fr}.previewDiagram{display:none}.teamHero{grid-template-columns:1fr;gap:35px}.portrait{height:330px}.contactFlow form{grid-template-columns:1fr}.contactFlow form>.eyebrow,.contactFlow form>h2,.contactFlow label.full,.formNote{grid-column:auto}.footerTop{grid-template-columns:1fr 1fr}.footerTop>div:last-child{display:block}.cursor{display:none}}
@media(max-width:560px){.container{width:calc(100% - 32px)}.brand{font-size:15px}.heroCopy h1{font-size:49px}.heroCopy p{font-size:15px}.heroMeta{display:block}.heroMeta span{display:block;margin-top:7px}.ecosystem{height:400px}.ecoV{width:125px;height:125px}.ecoV>span{font-size:58px}.ecoV small{font-size:6px}.ecoNode{min-width:72px;padding:7px}.ecoNode b{font-size:7px}.mini{display:none}.e1{left:0}.e2{right:0}.e3{left:0}.e4{right:0}.e5{left:20%;}.e6{right:15%}.sectionHead h2{font-size:40px}.snapshotVisual{height:280px}.snapCore{width:125px;height:125px}.snapCore span{font-size:58px}.snapItem{font-size:7px;padding:8px}.stats b{font-size:34px}.industryPreview{min-height:330px}.mockWrap{min-height:320px}.mockBrowser{width:82%}.mockBody{min-height:220px}.mockBody main{padding:12px}.mockCards{grid-template-columns:1fr 1fr}.mcard.wide{grid-column:span 2}.mockTitle strong{font-size:13px}.floatTag{display:none}.ideaStory{grid-template-columns:1fr;gap:20px}.storyRail{display:none}.storySteps{padding:0}.storyCanvas{min-height:360px}.capOrbit{height:390px}.capNode{transform:rotate(var(--a)) translateY(-145px) rotate(calc(var(--a) * -1));padding:7px 8px}.capCenter{width:125px;height:125px}.capCenter b{font-size:16px}.featuredVisual,.caseHero>div:last-child{min-height:360px}.featuredInfo h3,.caseHero h2{font-size:42px}.tileVisual,.caseArt{height:260px}.tileVisual .mockWrap,.caseArt .mockWrap{min-height:260px}.archSystem{height:570px}.archNode{width:125px;padding:10px}.archNode b{font-size:8px}.archNode span{font-size:7px}.archCore{width:135px;height:135px}.archCore b{font-size:18px}.techConst{height:430px}.techCenter{width:125px;height:125px}.techCenter span{font-size:45px}.constNode{padding:8px}.constNode b{font-size:7px}.buildGrid{grid-template-columns:1fr}.buildPreview{height:260px}.previewCode{padding:25px}.previewCode b{font-size:32px}.finalCta{min-height:560px}.ctaContent h2{font-size:56px}.innerHero{padding:100px 0 85px}.innerHero h1{font-size:50px}.aboutVisual{height:380px}.servicePageCard{min-height:350px}.choiceGrid{grid-template-columns:1fr}.job{align-items:flex-start;gap:20px}.footerTop{grid-template-columns:1fr}.footerTop>div:last-child{display:block}.footerBottom{display:block}.footerBottom span{display:block;margin:6px 0}#cursorDot,#cursorRing{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{transition:none}.wireCube,.ecoParticles i,.labArt i{animation:none}.btn,.ecoNode,.mockBrowser{transition:none}}

/* VAYSTA visual refresh — image-led layouts inspired by the supplied references */
.imageArt,.visualPlate{position:relative;overflow:hidden}
.imageArt img,.visualPlate img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1),filter .5s ease}
.imageArt:hover img,.visualPlate:hover img{transform:scale(1.045)}
.imageArt:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(135deg,rgba(255,255,255,.06),transparent 42%,rgba(212,175,55,.07))}
.servicePageCard{padding:18px;overflow:hidden}
.servicePageCard .imageArt{height:205px;margin:-18px -18px 0;border-bottom:1px solid var(--lightline);background:#111}
.servicePageCard .imageArt .artLabel{position:absolute;z-index:2;left:14px;bottom:12px;color:#fff;font:8px "IBM Plex Mono";letter-spacing:.1em;background:rgba(0,0,0,.58);padding:6px 8px;border:1px solid rgba(212,175,55,.35)}
.servicePageCard:hover .imageArt img{transform:scale(1.06)}
.featuredVisual{position:relative;overflow:hidden;background:#0c0c0c!important}
.featureImage{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.42;filter:saturate(.75) contrast(1.08);transition:transform 1s ease,opacity .5s ease}
.featuredProject:hover .featureImage{transform:scale(1.05);opacity:.5}
.featuredScreen{position:absolute;inset:9% 5% 7%;display:grid;place-items:center;background:linear-gradient(180deg,rgba(10,10,10,.18),rgba(10,10,10,.72));border:1px solid rgba(212,175,55,.18);box-shadow:0 35px 90px rgba(0,0,0,.5)}
.featuredScreen .mockWrap{width:100%;height:100%;min-height:0;transform:scale(.9);transform-origin:center}
.imageTile{position:relative;overflow:hidden;background:#101010!important}
.imageTile>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.78;transition:transform .9s ease,opacity .45s ease}
.projectTile:hover .imageTile>img,.caseCard:hover .imageTile>img{transform:scale(1.06);opacity:.9}
.tileScreen,.caseScreen{position:absolute;inset:18% 9% 8%;display:grid;place-items:center;background:rgba(7,7,7,.64);border:1px solid rgba(255,255,255,.13);backdrop-filter:blur(2px)}
.tileScreen .mockWrap,.caseScreen .mockWrap{width:100%;height:100%;min-height:0;transform:scale(.82);transform-origin:center}
.tileVisual{height:310px}
.caseVisualStack{position:relative;min-height:560px;overflow:hidden;background:#0c0c0c}
.caseVisualStack>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.55}
.caseVisualStack>.mockWrap{position:absolute;inset:10% 3% 4%;z-index:2;min-height:0}
.caseVisualStack:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(0,0,0,.7));z-index:1}
.caseArt{height:310px;position:relative;overflow:hidden;background:#101010}
.insightArt{height:280px;margin-bottom:20px;position:relative;background:#111;overflow:hidden}
.insightArt.imageArt:before{display:none}
.insightArt img{opacity:.8}
.insightArt span{z-index:3;background:rgba(0,0,0,.65);padding:7px 9px;border:1px solid rgba(212,175,55,.4)}
.insight>a{display:inline-flex;align-items:center;margin-top:8px;padding-bottom:4px;border-bottom:1px solid rgba(212,175,55,.5);color:#333;font-size:10px;transition:.25s}
.insight>a:hover{color:#9a7a22;border-bottom-color:#9a7a22}
/* Keep the editorial references visually spacious instead of filling every area with UI chrome. */
.projectsSection .sectionHead{margin-bottom:55px}
.projectRail{gap:22px}
.projectTile,.caseCard,.servicePageCard,.insight{transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s ease,border-color .3s ease}
.projectTile:hover,.caseCard:hover,.insight:hover{transform:translateY(-5px);box-shadow:0 28px 70px rgba(0,0,0,.08)}
.darkSection .sectionHead h2{max-width:760px}
@media(max-width:800px){
 .servicePageCard .imageArt{height:190px}
 .featuredScreen{inset:12% 3% 4%}
 .featuredScreen .mockWrap{transform:scale(.76)}
 .caseVisualStack{min-height:470px}
 .caseVisualStack>.mockWrap{inset:13% 0 3%;transform:scale(.92);transform-origin:center}
 .tileScreen,.caseScreen{inset:17% 4% 5%}
 .tileScreen .mockWrap,.caseScreen .mockWrap{transform:scale(.72)}
}
@media(max-width:560px){
 .servicePageCard .imageArt{height:175px}
 .featuredScreen{inset:16% 0 2%}
 .featuredScreen .mockWrap{transform:scale(.67)}
 .caseVisualStack{min-height:360px}
 .caseVisualStack>.mockWrap{transform:scale(.72)}
 .tileVisual,.caseArt{height:260px}
 .tileScreen,.caseScreen{inset:18% 0 3%}
 .tileScreen .mockWrap,.caseScreen .mockWrap{transform:scale(.58)}
 .insightArt{height:220px}
}
/* V5 CMS + interactive demo layer */
.teamGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.teamCard{border:1px solid var(--line);padding:22px;background:rgba(255,255,255,.018);transform-style:preserve-3d}.teamPortrait{height:280px;border:1px solid var(--line);display:grid;place-items:center;background:radial-gradient(circle at 50% 40%,rgba(255,210,26,.13),transparent 42%),#090909;overflow:hidden}.teamPortrait img{width:100%;height:100%;object-fit:cover}.teamPortrait span{font-size:52px;font-weight:700;letter-spacing:-.08em}.teamCard>small{display:block;margin-top:18px;color:var(--gold);font:10px var(--mono);text-transform:uppercase}.teamCard h3{font-size:25px;margin:7px 0}.teamCard p{color:var(--muted);line-height:1.7}.articleLayout{display:grid;grid-template-columns:.9fr 1.1fr;gap:42px;align-items:start}.articleVisual{position:sticky;top:110px;min-height:420px}.articleVisual img{width:100%;height:100%;object-fit:cover}.articleBody{max-width:760px}.articleBody>small{color:var(--muted);font:10px var(--mono);text-transform:uppercase}.articleBody p{font-size:17px;line-height:1.85;color:#b5b5b5;margin:24px 0}.articleBody .textLink{display:inline-flex;margin-top:24px}.modal{position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,.84);backdrop-filter:blur(12px);padding:24px;display:grid;place-items:center}.modalBox{width:min(1180px,100%);height:min(820px,92vh);display:grid;grid-template-columns:220px 1fr;background:#090909;border:1px solid rgba(255,255,255,.13);box-shadow:0 30px 90px rgba(0,0,0,.6);overflow:hidden}.modalSide{padding:18px;border-right:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;gap:5px;overflow:auto}.modalSide strong{font-size:12px;letter-spacing:.14em}.demoLabel{font:9px var(--mono);color:#8bdab0;margin:8px 0 14px}.modalSide button{background:transparent;border:0;border-left:1px solid transparent;color:#888;text-align:left;padding:11px 10px;cursor:pointer;font:11px var(--mono)}.modalSide button.active{color:#fff;border-left-color:#d7b33c;background:rgba(255,210,26,.05)}.modalMain{min-width:0;display:flex;flex-direction:column}.modalHead{padding:20px 24px;border-bottom:1px solid rgba(255,255,255,.08);display:flex;justify-content:space-between;gap:20px}.modalHead small,.demoSubhead{color:#777;font:9px var(--mono)}.modalHead h3{margin:5px 0;font-size:24px}.close{border:1px solid rgba(255,255,255,.12);background:transparent;color:#fff;width:36px;height:36px;cursor:pointer}.modalContent{padding:20px;overflow:auto}.demoOverview{border:1px solid rgba(255,255,255,.1);padding:18px;background:rgba(255,255,255,.02)}.demoOverviewHead h4{margin:0}.demoOverviewHead p{color:#777;font-size:11px}.demoCards{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:16px}.demoMini,.reportMetric,.settingItem{border:1px solid rgba(255,255,255,.09);padding:14px;background:rgba(255,255,255,.02)}.demoMini small{color:#777}.demoMini b{display:block;font-size:22px;margin:6px 0}.demoMini span{font-size:9px;color:#666}.demoDashboardGrid{display:grid;grid-template-columns:1.2fr .8fr;gap:14px;margin-top:14px}.activity,.insightCard{border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.018)}.activityHead,.insightHead{padding:15px;display:flex;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.07)}.activityHead small,.insightHead small{display:block;color:#666;font-size:9px;margin-top:4px}.activityRow{display:flex;gap:12px;padding:13px 15px;border-bottom:1px solid rgba(255,255,255,.06)}.activityRow i{font-style:normal;width:24px;height:24px;display:grid;place-items:center;background:rgba(255,210,26,.08);color:#d7b33c}.activityRow div{flex:1}.activityRow small{display:block;color:#777;margin-top:4px}.demoPill{color:#7ee8b1;font:9px var(--mono)}.insightList{padding:0 15px}.insightList div{display:flex;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.06);font-size:10px}.insightList span{color:#777}.demoToolbar{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:15px;margin-top:16px;border:1px solid rgba(255,255,255,.08)}.demoToolbar b{display:block}.demoToolbar small{display:block;color:#666;margin-top:4px}.demoTools input{background:#080808;color:#fff;border:1px solid rgba(255,255,255,.12);padding:10px}.demoTable{margin-top:12px;overflow:auto}.demoTable table{width:100%;min-width:700px;border-collapse:collapse}.demoTable th,.demoTable td{text-align:left;padding:12px;border-bottom:1px solid rgba(255,255,255,.06);font-size:10px;white-space:nowrap}.demoTable th{color:#777;text-transform:uppercase;letter-spacing:.08em}.demoStatus{display:inline-block;border:1px solid rgba(255,255,255,.1);padding:4px 7px;border-radius:999px;font-size:9px}.modalNote{font-size:9px;color:#666;margin-top:16px}
@media(max-width:900px){.teamGrid{grid-template-columns:1fr 1fr}.articleLayout{grid-template-columns:1fr}.articleVisual{position:relative;top:auto;min-height:300px}.demoCards{grid-template-columns:repeat(2,1fr)}.demoDashboardGrid{grid-template-columns:1fr}.modalBox{grid-template-columns:180px 1fr}}
@media(max-width:600px){.teamGrid{grid-template-columns:1fr}.demoCards{grid-template-columns:1fr 1fr}.modal{padding:8px}.modalBox{height:94vh;grid-template-columns:1fr;grid-template-rows:145px 1fr}.modalSide{border-right:0;border-bottom:1px solid rgba(255,255,255,.08);display:grid;grid-template-columns:repeat(3,1fr);gap:3px}.modalSide strong,.demoLabel{grid-column:1/-1}.modalSide button{padding:7px}.modalContent{padding:12px}.demoToolbar{align-items:stretch;flex-direction:column}.demoTools{width:100%}}
/* CMS-controlled visual system */
.innerHero.hasCmsVisual{overflow:hidden}
.innerCmsVisual{position:absolute;right:5vw;top:50%;width:min(38vw,620px);height:min(70%,420px);transform:translateY(-50%);opacity:.55;pointer-events:none;mask-image:linear-gradient(90deg,transparent,#000 18%,#000 82%,transparent)}
.innerCmsVisual picture,.innerCmsVisual img{display:block;width:100%;height:100%}
.snapshotVisual.hasCmsImage{overflow:hidden}
.snapshotCmsImage{position:absolute;inset:0;opacity:.28;pointer-events:none}
.snapshotCmsImage picture,.snapshotCmsImage img{display:block;width:100%;height:100%}
.sectionCmsBackdrop{position:absolute;inset:7% 0 0;opacity:.12;pointer-events:none;overflow:hidden;mask-image:linear-gradient(180deg,transparent,#000 20%,#000 75%,transparent)}
.sectionCmsBackdrop.light{opacity:.18}
.sectionCmsBackdrop picture,.sectionCmsBackdrop img{display:block;width:100%;height:100%}
.industryItem{position:relative;overflow:hidden}
.industryItem img{position:absolute;right:14px;top:14px;width:54px;height:54px;border-radius:50%;object-fit:cover;opacity:.55;border:1px solid rgba(255,255,255,.12)}
.industryPreview.hasCmsImage{padding:0;overflow:hidden}
.industryPreview.hasCmsImage picture,.industryPreview.hasCmsImage img{display:block;width:100%;height:100%;object-fit:cover}
.labCard.hasCmsImage .labArt{overflow:hidden}
.labCard.hasCmsImage .labArt picture,.labCard.hasCmsImage .labArt img{display:block;width:100%;height:100%;object-fit:cover}
.aboutVisual.hasCmsImage picture,.aboutVisual.hasCmsImage img,.careerVisual.hasCmsImage picture,.careerVisual.hasCmsImage img{display:block;width:100%;height:100%;object-fit:cover}
.featuredVisual picture,.featuredVisual picture img,.tileVisual picture,.tileVisual picture img,.caseArt picture,.caseArt picture img{display:block;width:100%;height:100%;object-fit:cover}
.projectGallery{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:28px 0 56px}
.projectGallery figure{margin:0;aspect-ratio:16/10;overflow:hidden;border:1px solid var(--line);background:#0c0c0c}
.projectGallery img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.projectGallery figure:hover img{transform:scale(1.035)}
.projectContentBlock{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:24px 0;margin:0 0 56px;max-width:900px}
.projectContentBlock small,.projectDetailText small{font-family:var(--mono);letter-spacing:.12em;color:var(--gold)}
.projectContentBlock p,.projectDetailText p{color:var(--muted);line-height:1.7}
.projectDetailText{margin-top:24px;max-width:720px}
.projectActions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:18px}
.movingFeatures{overflow:hidden;display:flex;flex-wrap:nowrap;mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.movingFeatures span{flex:0 0 auto}
[data-feature-motion="marquee"] .movingFeatures span{animation:vaystaFeatureMarquee var(--motion-speed,18s) linear infinite}
[data-motion="float"] .featureImage,[data-motion="float"] .caseVisualStack>picture,[data-motion="float"] .tileVisual>picture{animation:vaystaFloat var(--motion-speed,18s) ease-in-out infinite}
[data-motion="pulse"] .featuredVisual,[data-motion="pulse"] .caseVisualStack{animation:vaystaPulse 5s ease-in-out infinite}
@keyframes vaystaFeatureMarquee{from{transform:translateX(0)}to{transform:translateX(-45%)}}
@keyframes vaystaFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@keyframes vaystaPulse{0%,100%{filter:brightness(1)}50%{filter:brightness(1.12)}}
@media(max-width:900px){.innerCmsVisual{position:relative;right:auto;top:auto;transform:none;width:90%;height:240px;margin:20px auto 0;opacity:.42}.projectGallery{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.projectGallery{grid-template-columns:1fr}.industryItem img{width:42px;height:42px;right:10px;top:10px}.innerCmsVisual{height:190px}.sectionCmsBackdrop{opacity:.09}}
.hero.hasCmsHeroVisual{overflow:hidden}
.heroCmsVisual{position:absolute;inset:0;pointer-events:none;opacity:.28;mix-blend-mode:screen;mask-image:radial-gradient(circle at 72% 48%,#000 0%,#000 35%,transparent 76%)}
.heroCmsVisual picture,.heroCmsVisual img{display:block;width:100%;height:100%;object-fit:cover}
