:root{--green:#b795ff;--purple:#d0b3ff;--bg:#080610;--muted:#a39caf;--line:#c7abff24}body{background:#080610;overflow-x:clip}.wrap{position:relative}#cosmos{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:-2}.nebula{position:fixed;inset:-25%;pointer-events:none;z-index:-1;background:radial-gradient(ellipse at 72% 24%,#792bed24,transparent 35%),radial-gradient(ellipse at 14% 65%,#2c4acb18,transparent 30%),radial-gradient(ellipse at 87% 85%,#ce48ed12,transparent 30%);animation:nebula-drift 24s ease-in-out infinite alternate}.scroll-progress{position:fixed;top:0;left:0;height:2px;z-index:30;background:linear-gradient(90deg,#6944ef,#df9bff);box-shadow:0 0 15px #b795ff;width:var(--progress,0%)}header{backdrop-filter:blur(12px)}.brand span{color:var(--green)}.navcta,.btn{border-radius:100px}.navcta{border-color:#b795ff66}.btn{background:linear-gradient(115deg,#d1adff,#a77bff);box-shadow:0 4px 24px #8144ef25;transition:transform .25s,box-shadow .25s;position:relative;overflow:hidden}.btn:before{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent 25%,#ffffff55 50%,transparent 75%);transform:translateX(-150%);transition:transform .65s}.btn:hover:before{transform:translateX(150%)}.btn:hover{box-shadow:0 8px 35px #a87aff66}.dot{background:#c4a0ff;box-shadow:0 0 15px #b47aff}.hero:before{background:radial-gradient(ellipse at 76% 45%,#7d37df25,transparent 49%)}h1 em{background:linear-gradient(90deg,#e6ccff,#ad7aff,#d6acff);background-size:200%;background-clip:text;-webkit-background-clip:text;color:transparent;animation:hue-flow 6s ease-in-out infinite}.hero-copy{pointer-events:none}.hero-copy a{pointer-events:auto}.hero-copy .eyebrow{animation:rise-in .8s both}.hero h1{animation:rise-in 1s .12s both}.hero-copy>p{animation:rise-in 1s .25s both}.hero-copy .buttons{animation:rise-in 1s .4s both}.art{pointer-events:auto;z-index:1;width:56%;right:-3%;top:8%;height:80%;transform:translate3d(0,var(--hero-shift,0px),0);will-change:transform;opacity:1}#network-globe{position:absolute;inset:0;width:100%;height:100%;cursor:grab;touch-action:pan-y;border-radius:50%;outline-offset:-25px}#network-globe:active{cursor:grabbing}.coord{pointer-events:none;color:#9784b2;z-index:2;top:9%;right:5%}.artlabel{pointer-events:none;color:#b0a0c4;bottom:5%}.globe-controls{position:absolute;bottom:11%;left:20%;display:flex;align-items:center;gap:12px;color:#b3a0c9;pointer-events:none}.globe-controls .mono{font-size:8px;letter-spacing:1.2px}.globe-controls button{pointer-events:auto;border:1px solid #c7abff44;border-radius:50%;background:#1a1129;color:#d6c0ff;width:28px;height:28px;cursor:pointer}#stars{display:none}.strip{border-radius:22px;background:#b795ff04;padding:24px 22px;border:1px solid var(--line)}.strip b{color:#b6acc3}.services{border:0;gap:18px;perspective:1000px}.service{border:1px solid var(--line);border-radius:26px;background:linear-gradient(145deg,#bd97ff09,#0b071080);overflow:hidden;transform-style:preserve-3d;transition:transform .4s,border-color .4s,box-shadow .4s}.service:before,.project:before{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(300px circle at var(--mx,50%) var(--my,0%),#ae76ff19,transparent 70%);opacity:0;transition:opacity .4s}.service:hover:before,.project:hover:before{opacity:1}.service:hover{background:#b795ff09;border-color:#b795ff88;box-shadow:0 15px 60px #602bbf16}.num{color:#8c73aa}.icon{color:#bd98ff;text-shadow:0 0 28px #af72ff77;transition:transform .5s}.service:hover .icon{transform:translateY(-5px) rotate(-8deg)}.tags span{border-radius:20px;background:#b795ff05}.future{border-radius:36px;border-color:#a474ff55;background:radial-gradient(ellipse at 90% 20%,#8b4cf12a,transparent 60%),#100a1bcc;box-shadow:0 0 100px #7734d90a;isolation:isolate}.future:before{content:'';position:absolute;inset:0;z-index:-1;background:repeating-linear-gradient(90deg,transparent 0 79px,#b795ff05 80px),repeating-linear-gradient(0deg,transparent 0 79px,#b795ff05 80px);transform:perspective(600px) rotateX(40deg) scale(1.5);animation:grid-drift 25s linear infinite}.future-note{color:#9a89ae!important}.future p{color:#b1a4c0}.future-list article{transition:transform .35s,background .35s;padding:20px 12px;border-radius:14px}.future-list article:hover{transform:translateX(8px);background:#b795ff0a}.project{border-radius:27px;position:relative;background:#100b1688;transition:transform .5s,border-color .4s}.project:hover{transform:translateY(-8px);border-color:#b795ff77}.project-art{background:radial-gradient(ellipse at 50% 70%,#7b39cb33,transparent 70%),#110b1d}.project-art .browser{border-color:#ad7aff55;background:#130c20;border-radius:14px;box-shadow:25px 25px 0 #b795ff08}.browser strong{color:#cbaaff}.browser i{background:#9b72c4}.browser .bars{background:repeating-linear-gradient(90deg,#b795ff33 0 25%,transparent 25% 28%)}.status{color:#ae97c4}.portrait{border-radius:35px;background:radial-gradient(ellipse at center,#8644d929,transparent 70%),linear-gradient(45deg,transparent 49.8%,#b795ff15 50%,transparent 50.2%);overflow:hidden}.portrait:before,.portrait:after{content:'';position:absolute;width:270px;height:270px;border:1px solid #b795ff30;border-radius:50%;animation:portrait-orbit 18s linear infinite}.portrait:before{transform:rotateX(65deg)}.portrait:after{width:340px;height:340px;animation-direction:reverse}.monogram{-webkit-text-stroke-color:#b795ff99;filter:drop-shadow(0 0 18px #b795ff33);animation:float 7s ease-in-out infinite}.portrait .mono{color:#ac94c4}.process article{transition:transform .4s}.process article:hover{transform:translateY(-7px)}input,select,textarea{border:1px solid #c4a4ef33;background:#120d1b;border-radius:13px;transition:border-color .2s,box-shadow .2s}input:focus,textarea:focus,select:focus{border-color:#c09aff;box-shadow:0 0 25px #a968ff14}label{color:#b7a8c8}.reveal{opacity:0;transform:perspective(1200px) translateY(65px) rotateX(4deg);filter:blur(7px);transition:opacity .9s,transform 1.1s cubic-bezier(.16,1,.3,1),filter 1s}.reveal.visible{filter:blur(0);transform:none;opacity:1}.reveal.visible .service,.reveal.visible .project,.reveal.visible .process article{animation:card-in .9s both}.reveal.visible :is(.service,.project,.process article):nth-child(2){animation-delay:.12s}.reveal.visible :is(.service,.process article):nth-child(3){animation-delay:.24s}.reveal.visible .process article:nth-child(4){animation-delay:.36s}.diagnostic-fab{position:fixed;bottom:24px;right:24px;display:flex;align-items:center;gap:12px;background:#1c112de8;backdrop-filter:blur(18px);border:1px solid #bb86ff88;color:#eadbff;border-radius:100px;padding:16px 21px;font-size:12px;z-index:20;box-shadow:0 0 25px #8240dc25;cursor:pointer;transition:transform .3s}.diagnostic-fab:hover{transform:translateY(-4px)}dialog{color:var(--ink);border:1px solid #c49aff66;background:radial-gradient(ellipse at 50% 0%,#7436b93b,transparent 65%),#100a1b;border-radius:30px;max-width:570px;width:calc(100% - 32px);padding:44px;box-shadow:0 0 120px #8c3cff44;max-height:90svh;overflow-y:auto}dialog::backdrop{background:#06030cd9;backdrop-filter:blur(12px)}dialog[open]{animation:modal-in .45s cubic-bezier(.16,1,.3,1)}dialog h2{font-size:37px;letter-spacing:-1.8px;margin-top:20px}dialog p{font-size:13px;line-height:1.85;color:#b4a6c4}.dialog-close{position:absolute;top:16px;right:18px;color:#c9b4df;border:1px solid #b795ff33;background:#b795ff0b;width:32px;height:32px;border-radius:50%;font-size:22px;cursor:pointer}.modal-orb{width:64px;height:64px;border-radius:20px;border:1px solid #b795ff77;background:radial-gradient(circle,#9664df55,transparent);display:grid;place-items:center;font-size:44px;color:#cca8ff;margin-bottom:24px;animation:float 6s ease-in-out infinite}.diagnostic-pills{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0}.diagnostic-pills span{font-size:10px;border:1px solid #b795ff44;border-radius:30px;padding:8px 11px;color:#cfb3ed}.modal-note{font-size:10px!important;line-height:1.7!important;margin-bottom:0}#diagnostic-form .btn{width:100%}@keyframes nebula-drift{to{transform:translate3d(5%,-4%,0) rotate(9deg) scale(1.1)}}@keyframes hue-flow{50%{background-position:100%}}@keyframes grid-drift{to{background-position:80px 80px}}@keyframes rise-in{from{opacity:0;transform:translateY(30px);filter:blur(8px)}to{opacity:1;transform:none;filter:blur(0)}}@keyframes card-in{from{opacity:0;translate:0 30px}to{opacity:1;translate:0 0}}@keyframes portrait-orbit{to{rotate:360deg}}@keyframes modal-in{from{opacity:0;transform:translateY(30px) scale(.94)}to{opacity:1;transform:none}}@media(max-width:900px){.art{width:63%;right:-7%;opacity:.85}.hero-copy{z-index:2}.future{border-radius:28px}}@media(max-width:600px){.art{width:98%;height:340px;right:-3%;top:auto;bottom:25px;opacity:1}.globe-controls{bottom:11%;left:13%}.artlabel{right:6%;bottom:9%;font-size:8px}.hero-copy{width:100%}.hero{min-height:880px}.hero-bottom span{font-size:7px}.hero-bottom{bottom:10px}.strip{padding:20px 15px;border-radius:18px}.diagnostic-fab{bottom:14px;right:14px;font-size:10px;padding:12px 16px}dialog{padding:32px 24px}dialog h2{font-size:32px}.menu{border-radius:10px}nav{border-radius:18px;background:#160f23f5;backdrop-filter:blur(20px)}.future{padding:25px}.portrait:after{width:260px;height:260px}}
@media(prefers-reduced-motion:reduce){.nebula{animation:none}.art{transform:none}.reveal{filter:none;transform:none;opacity:1}*,*:before,*:after{animation:none!important;transition:none!important}}
