.galaxy-container{width:100%;height:100%;position:relative;overflow:hidden}.galaxy-canvas{width:100%;height:100%;display:block;position:absolute;inset:0}
.electric-logo{width:100%;height:100%;position:relative;overflow:hidden}
:root{font-family:var(--font-dm-sans),sans-serif;color:#edf3ff;font-synthesis:none;--bg:#080d20;--text:#edf3ff;--muted:#a3afc7;--cyan:#70edf2;--violet:#bd9bff;--line:#253047;--display:var(--font-space-grotesk),sans-serif;background:#080d20}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid var(--cyan);outline-offset:6px}::selection{color:#080d20;background:#70edf2}.section-shell{max-width:1320px;margin:0 auto;padding-left:60px;padding-right:60px}.header{border-bottom:1px solid #ffffff0d;justify-content:space-between;align-items:center;max-width:1440px;margin:auto;padding:30px 60px;display:flex}.identity{font:600 18px var(--display);letter-spacing:-.5px;align-items:center;gap:13px;display:flex}.brand-symbol{color:var(--cyan);font-size:44px;line-height:1}.identity small{font:9px var(--font-dm-sans),sans-serif;letter-spacing:1.9px;color:var(--muted);margin-top:6px;display:block}nav{align-items:center;gap:32px;font-size:13px;display:flex}.nav-contact{border:1px solid #526073;border-radius:4px;padding:12px 18px}.nav-contact span{margin-left:16px}.menu-toggle{display:none}.hero{grid-template-columns:1.12fr 1fr;align-items:center;gap:30px;min-height:710px;padding-top:72px;padding-bottom:76px;display:grid;position:relative}.eyebrow{letter-spacing:1.9px;color:var(--cyan);align-items:center;gap:10px;margin:0 0 26px;font-size:10px;font-weight:500;display:flex}.status-dot{background:var(--cyan);border-radius:50%;width:5px;height:5px;display:inline-block;box-shadow:0 0 12px #70edf280}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--display);font-weight:500}h1{letter-spacing:-5px;margin-bottom:30px;font-size:clamp(52.2px,5.94vw,79.2px);line-height:1.04}h1>span{color:var(--cyan)}.hero-intro{color:var(--muted);max-width:440px;font-size:16px;line-height:1.85}.hero-actions{align-items:center;gap:28px;margin-top:32px;display:flex}.button{border-radius:4px;justify-content:center;align-items:center;gap:28px;padding:15px 21px;font-size:12px;font-weight:700;transition:background .2s,transform .2s;display:inline-flex}.primary{background:var(--cyan);color:var(--bg)}.text-link{align-items:center;gap:18px;font-size:12px;transition:color .2s;display:inline-flex}.location{color:var(--muted);letter-spacing:.2px;align-items:center;gap:9px;margin-top:48px;font-size:9px;display:flex}.location>span:first-child{color:var(--cyan)}.location-line{background:#526073;width:20px;height:1px}.hero-visual{isolation:isolate;padding:40px 10px 25px 22px;position:relative}.hero-visual:before{content:"";z-index:-1;background:radial-gradient(#6d25ba29,#0000 65%);position:absolute;inset:15% -6% 0}.avatar-frame{aspect-ratio:1;border:1px solid #70edf236;border-radius:50%;max-width:420px;margin:auto;padding:10px;position:relative}.avatar-frame:after{content:"";border:1px solid #bd9bff30;border-radius:50%;position:absolute;inset:0;transform:scale(1.045)}.avatar-frame img{object-fit:cover;border-radius:50%;width:100%;height:100%;display:block}.orbit{pointer-events:none;border:1px solid #bd9bff26;border-radius:50%;position:absolute;inset:2% -5% 8%;transform:rotate(-30deg)scaleY(.85)}.orbit-two{border-color:#70edf230;inset:12% -10%;transform:rotate(40deg)scaleY(.6)}.star{color:var(--cyan);z-index:2;position:absolute}.s1{font-size:28px;top:3%;right:14%}.s2{color:var(--violet);font-size:38px;bottom:20%;left:0}.visual-label{letter-spacing:2px;color:var(--muted);font-size:8px;position:absolute;top:0;left:30px}.avatar-caption{font:10px var(--display);letter-spacing:1px;align-items:center;gap:12px;margin:26px 0 0 45px;display:flex;position:relative}.tiny-cross{color:var(--cyan);font-size:27px}.avatar-caption small{font:11px var(--font-dm-sans),sans-serif;letter-spacing:0;color:var(--muted);margin-top:5px;display:block}.caption-line{background:var(--line);width:90px;height:1px;margin-left:12px}.visual-index{letter-spacing:1.6px;color:#8291af;text-align:right;margin-top:25px;font-size:7px;display:block}.proof-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:1.4fr repeat(3,1fr) 1.3fr;align-items:center;gap:25px;padding-top:28px;padding-bottom:28px;display:grid}.proof-strip p{color:var(--muted);margin:0;font-size:12px;line-height:1.7}.proof-strip p strong{color:var(--text);font-weight:400}.proof-strip>div{flex-direction:column;gap:5px;display:flex}.proof-strip b{font:500 32px var(--display);letter-spacing:-1.5px}.proof-strip span{color:var(--muted);font-size:10px}.proof-strip .proof-last{border-left:1px solid var(--line);flex-direction:row;align-items:center;gap:15px;padding-left:26px}.proof-strip .mini-orb{color:var(--violet);font-size:38px}.proof-last span:last-child{line-height:1.8}.work,.approach{padding-top:110px;padding-bottom:100px}.section-heading{justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:50px;display:flex}.section-heading .eyebrow{margin-bottom:20px}h2{letter-spacing:-2px;margin-bottom:0;font-size:46px;line-height:1.16}h2 span{color:var(--muted)}.section-heading>p{color:var(--muted);margin-bottom:4px;font-size:13px;line-height:1.8}.projects{flex-direction:column;gap:28px;display:flex}.project{border:1px solid var(--line);background:#0c1227;border-radius:8px;grid-template-columns:1fr 1fr;display:grid;overflow:hidden}.project-art{background:#10142e;min-height:360px;position:relative;overflow:hidden}.project:nth-child(2) .project-art{background:#0a202c}.project:nth-child(3) .project-art{background:#0d1c2b}.project-copy{padding:32px 36px}.project-meta{letter-spacing:1.6px;color:var(--violet);justify-content:space-between;gap:10px;margin-bottom:22px;font-size:8px;display:flex}.project-meta span:last-child{color:var(--muted)}h3{letter-spacing:-.9px;margin-bottom:18px;font-size:26px;line-height:1.2}.project-name{align-items:center;gap:15px;margin-bottom:16px;font-size:11px;font-weight:500;display:flex}.project-name>span{letter-spacing:1px;color:var(--muted);border-left:1px solid #526073;padding-left:15px;font-size:8px}.project-copy>p{color:var(--muted);margin-bottom:18px;font-size:12px;line-height:1.9}.tags{flex-wrap:wrap;gap:6px;display:flex}.tags span{color:#b8c3d8;border:1px solid #2b354b;border-radius:3px;padding:5px 8px;font-size:8px}.project-bottom{border-top:1px solid var(--line);justify-content:space-between;align-items:flex-end;margin-top:24px;padding-top:20px;display:flex}.project-bottom strong{font:500 24px var(--display);letter-spacing:-.6px;color:var(--cyan)}.project-bottom small{color:var(--muted);margin-top:4px;font-size:9px;display:block}.project-open{color:var(--text);background:0 0;border:1px solid #40516a;border-radius:50%;width:36px;height:36px;transition:background .2s,color .2s}.illustration-label{letter-spacing:1.5px;color:#9cadd0;background:#080d2070;padding:5px 7px;font-size:7px;position:absolute;top:18px;left:20px}.game-art,.hardware-art,.network-art{place-items:center;width:100%;height:100%;min-height:360px;display:grid;position:relative}.game-art{background:radial-gradient(#6f3f9e50,#0000 70%)}.game-product,.hardware-product,.network-product{z-index:1;aspect-ratio:934/553;object-fit:cover;border-radius:8px;width:auto;max-width:calc(100% - 44px);height:auto;max-height:calc(100% - 72px);position:absolute;top:50%;left:50%;translate:-50% -50%;box-shadow:0 10px 36px #050b1466}.game-grid{background-image:linear-gradient(#bd9bff09 1px,#0000 1px),linear-gradient(90deg,#bd9bff09 1px,#0000 1px);background-size:36px 36px;position:absolute;inset:0;transform:perspective(500px)rotateX(38deg)scale(1.3)}.game-ring{border:1px solid #b994ff60;border-radius:50%;width:210px;height:210px;position:absolute;transform:rotateX(55deg)rotate(-25deg);box-shadow:0 0 25px #bd9bff0d}.r2{border-color:#70edf23b;width:320px;height:320px;transform:rotateX(55deg)rotate(25deg)}.game-cube{background:linear-gradient(135deg,#7457b3,#251a4f);border:1px solid #ccacff;border-radius:24px;place-items:center;width:116px;height:116px;display:grid;transform:rotate(-12deg);box-shadow:15px 24px 0 -2px #0a1023,16px 25px #70edf25e,0 0 70px #9056df40}.game-cube span{color:#d2fbff;font-size:40px;transform:rotate(12deg)}.art-note{color:#9dadcb;letter-spacing:1.3px;font-size:7px;position:absolute;bottom:22px;left:24px;right:24px}.coordinates{letter-spacing:1px;color:#b09acc;font-size:7px;line-height:1.8;position:absolute;top:72px;right:20px}.hardware-art{background:radial-gradient(#12666c35,#0000 65%)}.circuit-lines{clip-path:polygon(0 0,100% 20%,85% 100%,10% 80%);background:repeating-linear-gradient(0deg,#0000 0 30px,#70edf215 30px 31px,#0000 31px 60px);position:absolute;inset:40px;transform:rotate(-16deg)}.device{background:#131b25;border:1px solid #546370;border-radius:17px;width:185px;padding:18px;transform:rotate(-12deg);box-shadow:12px 16px #050b14,13px 17px #314d59,0 0 70px #70edf215}.device-top{text-align:center;letter-spacing:1px;color:#c0d1d7;margin-bottom:16px;font-size:7px}.device-screen{color:var(--cyan);background:#142e32;border:1px solid #3b6468;border-radius:4px;padding:16px 12px 6px}.device-screen small{letter-spacing:1px;font-size:7px}.device-screen b{font:32px var(--display);margin-top:5px;display:block}.device-screen i{font-size:11px;font-style:normal}.wave{letter-spacing:-2px;margin-top:12px;font-size:14px;overflow:hidden}.device-buttons{justify-content:center;gap:17px;margin:22px 0 4px;display:flex}.device-buttons i{background:#263345;border:1px solid #4e6070;border-radius:50%;width:13px;height:13px}.network-art svg{width:90%;max-height:300px}.network-art{background:radial-gradient(#12666c28,#0000 65%)}.evidence-note{color:var(--muted);max-width:700px;margin:calc(20px - 2lh) 0 0;font-size:10px;line-height:1.8}.focus-band{background:#11152d;border-top:1px solid #bd9bff25;border-bottom:1px solid #bd9bff25;position:relative;overflow:hidden}.focus-band:after{content:"";pointer-events:none;border:1px solid #bd9bff13;border-radius:50%;width:320px;height:320px;position:absolute;top:-100px;right:4%}.focus-inner{align-items:center;gap:30px;padding-top:44px;padding-bottom:44px;display:flex}.focus-icon{color:var(--violet);font-size:70px}.focus-inner .eyebrow{color:var(--violet);margin-bottom:11px;font-size:8px}.focus-inner h2{letter-spacing:-1px;font-size:30px}.focus-inner p:not(.eyebrow){color:var(--muted);margin:12px 0 0;font-size:12px;line-height:1.8}.focus-inner>.text-link{color:var(--violet);z-index:1;margin-left:auto;position:relative}.approach-grid{grid-template-columns:repeat(3,1fr);gap:40px;display:grid}.approach-grid article{border-top:1px solid var(--line);padding-top:22px}.approach-number{color:var(--muted);justify-content:space-between;margin-bottom:35px;font-size:10px;display:flex}.approach-number i{color:var(--violet);font-size:20px;font-style:normal}.approach-grid h3{font-size:22px}.approach-grid p{color:var(--muted);margin-bottom:25px;font-size:13px;line-height:1.9}.approach-label{letter-spacing:1.5px;color:#94a6c4;font-size:8px}.about{grid-template-columns:1fr 1fr;align-items:center;gap:75px;padding-top:40px;padding-bottom:110px;display:grid}.about-image{border:1px solid var(--line);border-radius:8px;height:410px;position:relative;overflow:hidden}.about-image img{object-fit:cover;object-position:60% center;width:100%;height:100%}.about-image:after{content:"";background:linear-gradient(#0000 50%,#080d20e6);position:absolute;inset:0}.about-image-caption{z-index:1;font:12px/1.8 var(--display);letter-spacing:2px;flex-direction:column;display:flex;position:absolute;bottom:28px;left:28px}.about-image-caption span:last-child{color:var(--cyan)}.about-copy .eyebrow{margin-bottom:18px;font-size:9px}.about-copy h2{margin-bottom:26px;font-size:38px}.about-copy>p:not(.eyebrow){color:var(--muted);font-size:13px;line-height:1.9}.about-copy .text-link{margin-top:12px}.contact{background:radial-gradient(at 90% 0,#50279525,#0000 65%);border-radius:8px;max-width:1200px;margin-left:auto;margin-right:auto;padding-top:55px;padding-bottom:60px}.contact-top{justify-content:space-between;align-items:center;display:flex}.contact-top .eyebrow{margin:0}.contact-spark{color:var(--violet);font-size:50px;line-height:1}.contact h2{letter-spacing:-3px;margin-top:20px;font-size:62px}.contact h2 span{color:var(--cyan)}.contact-bottom{justify-content:space-between;align-items:flex-end;margin-top:28px;display:flex}.contact-bottom p{color:var(--muted);margin-bottom:0;font-size:13px;line-height:1.8}.footer{border-top:1px solid var(--line);color:var(--muted);align-items:center;gap:30px;margin-top:70px;padding-top:28px;padding-bottom:28px;font-size:10px;display:flex}.footer-name{font:500 14px var(--display);color:var(--text)}.footer-name span{color:var(--cyan);margin-left:10px}.footer p{margin:0}.footer>a:nth-last-child(2){margin-left:auto}.footer>span:last-child{font-size:9px}.skip-link{z-index:20;background:var(--cyan);color:var(--bg);padding:12px;position:fixed;top:-100px;left:20px}.skip-link:focus{top:15px}dialog{color:var(--text);background:#0e162d;border:1px solid #526073;border-radius:12px;width:calc(100% - 32px);max-width:720px;max-height:90vh;padding:35px 40px}dialog::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#030713d9}.dialog-close{color:var(--muted);background:0 0;border:0;align-items:center;gap:18px;margin-bottom:35px;margin-left:auto;font-size:12px;display:flex}.dialog-close span{font-size:24px}.dialog-content h2{margin-bottom:24px;font-size:36px}.dialog-content p{color:var(--muted);font-size:15px;line-height:1.9}.dialog-content h3{margin-top:30px;font-size:22px}.dialog-metric{border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex-direction:column;gap:8px;padding:20px 0;display:flex}.dialog-metric strong{font:32px var(--display);color:var(--cyan)}.dialog-metric span{color:var(--muted);font-size:12px}@media (min-width:1500px){.hero{min-height:780px}.hero-visual{padding-left:0}.avatar-frame{max-width:450px}}@media (max-width:1100px){.section-shell{padding-left:35px;padding-right:35px}.header{padding:25px 35px}.hero{gap:25px;min-height:640px}h1{letter-spacing:-3px;font-size:61.2px}.hero-actions{flex-wrap:wrap;gap:18px}.hero .eyebrow{font-size:8px}.location{flex-wrap:wrap}.proof-strip{grid-template-columns:1.2fr repeat(3,1fr)}.proof-strip .proof-last{display:none}.project-copy{padding:26px}.project-copy h3{font-size:23px}.contact{margin:0 35px}.about{gap:40px}.focus-icon{font-size:55px}.hero-visual{padding-left:0}.caption-line{width:40px}nav{gap:24px}}@media (max-width:760px){.section-shell{padding-left:24px;padding-right:24px}.header{flex-wrap:wrap;padding:20px 24px;position:relative}.identity{font-size:16px}.identity small{letter-spacing:1.4px;font-size:7px}.brand-symbol{font-size:36px}.menu-toggle{color:var(--text);background:0 0;border:1px solid #40516b;border-radius:4px;align-items:center;gap:10px;padding:9px 12px;font-size:11px;display:flex}nav{gap:0;width:100%;padding-top:24px;display:none}.menu-open nav{flex-direction:column;align-items:stretch;display:flex}.menu-open nav a{border-bottom:1px solid var(--line);padding:15px 0}.menu-open nav .nav-contact{border:0;border-bottom:1px solid var(--line);border-radius:0}.hero{grid-template-columns:1fr;gap:36px;padding-top:45px;padding-bottom:40px}.hero .eyebrow{letter-spacing:1px;font-size:8px}h1{letter-spacing:-3px;font-size:clamp(48.6px,10.8vw,72px)}.hero-intro{max-width:460px;font-size:14px}.hero-actions{gap:24px}.button{padding:15px 18px}.location{margin-top:28px;font-size:8px}.hero-visual{width:100%;max-width:420px;margin:auto;padding:30px 15px 20px}.avatar-frame{max-width:320px}.orbit{inset:6% 3% 12%}.orbit-two{inset:16% 0 15%}.visual-label{font-size:7px;left:30px}.s2{left:9px}.avatar-caption{margin-left:32px}.proof-strip{grid-template-columns:repeat(3,1fr);gap:15px;padding-top:24px;padding-bottom:24px}.proof-strip>p{grid-column:1/-1;margin-bottom:8px}.proof-strip>p br{display:none}.proof-strip>p strong{margin-left:4px}.proof-strip b{font-size:28px}.proof-strip span{font-size:8px}.work,.approach{padding-top:65px;padding-bottom:65px}.section-heading{margin-bottom:32px;display:block}.section-heading>p{margin-top:22px;font-size:12px}h2{letter-spacing:-1.5px;font-size:36px}.eyebrow{font-size:9px}.project{grid-template-columns:1fr}.project-art,.game-art,.hardware-art,.network-art{min-height:290px}.project-copy{padding:28px 24px}.project-copy h3{font-size:26px}.project-copy>p{font-size:13px}.project-meta{font-size:8px}.project-name{flex-wrap:wrap;font-size:11px}.project-bottom small{font-size:9px}.focus-inner{flex-wrap:wrap;gap:20px;padding-top:32px;padding-bottom:32px}.focus-icon{font-size:45px}.focus-inner h2{font-size:26px}.focus-inner>.text-link{margin-left:65px}.focus-inner p:not(.eyebrow){font-size:11px}.approach-grid{grid-template-columns:1fr;gap:32px}.approach-number{margin-bottom:20px}.approach-grid p{max-width:500px}.about{grid-template-columns:1fr;gap:32px;padding-top:0;padding-bottom:65px}.about-image{height:250px}.about-copy h2{font-size:36px}.contact{margin:0 20px;padding:32px 24px}.contact h2{letter-spacing:-2px;font-size:42px}.contact-bottom{flex-direction:column;align-items:flex-start;gap:26px}.contact-top .eyebrow{font-size:8px}.contact-spark{font-size:38px}.footer{flex-wrap:wrap;gap:20px;margin-top:42px;font-size:10px}.footer p{order:4;width:100%;font-size:10px}.footer>a:nth-last-child(2){margin-left:auto}.footer>span:last-child{font-size:8px}dialog{padding:24px}.dialog-content h2{font-size:28px}.dialog-content .eyebrow{font-size:8px}.coordinates{top:54px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}.hero{overflow:clip}.portfolio-heading{max-width:620px;margin-top:76px}.portfolio-heading .eyebrow{margin-bottom:18px}.portfolio-heading h3{letter-spacing:-1.2px;font-size:34px}.portfolio-heading>p:last-child{color:var(--muted);margin-bottom:30px;font-size:14px;line-height:1.85}.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:48px 32px;display:grid}.portfolio-card{min-width:0;color:var(--text)}.portfolio-card .tilted-card__front{background:#0c1227;position:relative;inset:auto}.portfolio-image{aspect-ratio:16/10;background:#11182c;position:relative;overflow:hidden}.portfolio-image .tilted-card__img{width:calc(100% + 16px);height:calc(100% + 16px);top:-8px;left:-8px}.portfolio-chip-layer{pointer-events:none}.portfolio-chip{color:var(--cyan);letter-spacing:1.6px;background:#080d20c7;border-radius:4px;padding:6px 8px;font-size:9px;font-weight:500;position:absolute;top:14px;left:14px}.portfolio-copy{z-index:4;padding:22px 22px 24px;position:relative}.portfolio-copy h3{letter-spacing:-.8px;margin-bottom:10px;font-size:25px}.portfolio-copy>p{color:var(--muted);margin-bottom:16px;font-size:13px;line-height:1.7}.portfolio-link{color:var(--cyan);font-size:12px}.portfolio-dialog-image{border-radius:6px;margin-bottom:24px;overflow:hidden}.portfolio-dialog-image img{width:100%;height:auto;display:block}@media (max-width:760px){.portfolio-heading{margin-top:52px}.portfolio-heading h3{font-size:29px}.portfolio-grid{grid-template-columns:1fr;gap:36px}.portfolio-copy h3{font-size:25px}}.hero-swirls{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.swirl{fill:none;stroke-width:1.25px;stroke-linecap:round;stroke-linejoin:round;opacity:.45}.swirl-cyan{stroke:var(--cyan)}.swirl-violet{stroke:var(--violet)}.swirl-magenta{stroke:#ed91f5}.hero-visual .star,.spell-sparks,.visual-label,.visual-index{pointer-events:none}.hero-visual[data-entered] .orbit{animation:.6s ease-out both orbit-establish}.hero-visual[data-entered] .swirl{animation:.52s cubic-bezier(.22,1,.36,1) .1s both spell-draw}.hero-visual[data-entered] .swirl-violet{animation-delay:.18s}.hero-visual[data-entered] .swirl-magenta{animation-duration:.38s;animation-delay:.36s}.hero-visual[data-entered] .star{animation:.4s ease-out .32s both star-arrive}.hero-visual[data-entered] .s2{animation-delay:.4s}.caption-line{position:relative;overflow:hidden}.caption-line:after{content:"";background:var(--cyan);opacity:0;position:absolute;inset:0;transform:translate(-101%)}.hero-visual[data-entered] .caption-line:after{animation:.35s ease-out .45s both caption-glint}.spell-sparks{z-index:2;position:absolute;inset:0}.spell-sparks i{color:#ed91f5;opacity:0;font-size:18px;font-style:normal;position:absolute}.spell-sparks i:first-child{top:18%;left:12%}.spell-sparks i:nth-child(2){color:var(--cyan);top:11%;right:28%}.spell-sparks i:nth-child(3){top:45%;right:2%}.spell-sparks i:nth-child(4){color:var(--violet);bottom:26%;right:13%}.spell-sparks i:nth-child(5){font-size:32px;bottom:35%;left:3%}.hero-visual[data-entered] .spell-sparks i{animation:.38s ease-out .38s both spark-burst}.hero-visual[data-entered] .spell-sparks i:nth-child(2n){animation-delay:.42s}.hero-visual.hero-accent .tiny-cross{animation:.5s ease-out accent-turn}.project[data-entered] .game-ring{animation:.6s ease-out both ring-assemble}.project[data-entered] .r2{animation-delay:.1s}.project[data-entered] .circuit-lines{animation:.55s ease-out both circuit-assemble}.project[data-entered] .device-screen{animation:.5s ease-out .3s both screen-illuminate}.focus-border,.contact-region{overflow-x:clip}.focus-band[data-entered] .focus-icon{animation:.7s cubic-bezier(.22,1,.36,1) accent-turn}.focus-band[data-entered]:after{animation:.7s ease-out ring-assemble}.contact[data-entered] .contact-spark{animation:.7s cubic-bezier(.22,1,.36,1) accent-turn}.project{transition:translate .22s ease-out,border-color .22s ease-out}.button,.project-open,.nav-contact{transition:background .22s,color .22s,transform .22s}.button span,.project-open span,.text-link>span{transition:transform .22s ease-out;display:inline-block}.project:focus-within{border-color:var(--cyan);translate:0 -3px}.project-open:focus-visible{background:var(--cyan);color:var(--bg)}:is(.project-open,.text-link):focus-visible>span{transform:translate(3px,-2px)}.button:active,.project-open:active{transform:scale(.97)}nav a:focus-visible,.text-link:focus-visible{color:var(--cyan)}.menu-toggle span{transition:transform .22s ease-out}.menu-open .menu-toggle span{transform:rotate(45deg)}@media (hover:hover) and (pointer:fine){nav a:hover,.text-link:hover{color:var(--cyan)}.project:hover{border-color:#70edf280;translate:0 -3px}.project-open:hover{background:var(--cyan);color:var(--bg)}:is(.project-open,.text-link):hover>span{transform:translate(3px,-2px)}}@media (max-width:760px){.menu-open nav{animation:.22s cubic-bezier(.22,1,.36,1) both menu-appear}}@keyframes avatar-establish{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}@keyframes orbit-establish{0%{opacity:0}to{opacity:1}}@keyframes spell-draw{0%{stroke-dasharray:100;stroke-dashoffset:100px;opacity:0}to{stroke-dasharray:100;stroke-dashoffset:0;opacity:.6}}@keyframes star-arrive{0%{opacity:0;transform:scale(.3)rotate(-35deg)}to{opacity:1;transform:scale(1)rotate(0)}}@keyframes spark-burst{0%{opacity:0;transform:translateY(8px)scale(.4)}40%{opacity:.9}to{opacity:0;transform:translateY(-10px)scale(1.1)}}@keyframes caption-glint{0%{opacity:0;transform:translate(-101%)}30%{opacity:1}to{opacity:0;transform:translate(101%)}}@keyframes accent-turn{0%{opacity:.3;transform:rotate(-45deg)scale(.7)}65%{opacity:1;transform:rotate(8deg)scale(1.08)}to{opacity:1;transform:rotate(0)scale(1)}}@keyframes ring-assemble{0%{opacity:0;scale:.8}to{opacity:1;scale:1}}@keyframes cube-assemble{0%{opacity:0;transform:translateY(20px)rotate(-24deg)scale(.85)}to{opacity:1;transform:translateY(0)rotate(-12deg)scale(1)}}@keyframes circuit-assemble{0%{opacity:0;scale:.1 1}to{opacity:1;scale:1}}@keyframes device-assemble{0%{opacity:0;transform:translateY(14px)rotate(-16deg)}to{opacity:1;transform:translateY(0)rotate(-12deg)}}@keyframes screen-illuminate{0%{opacity:.2}55%{opacity:1;background:#205158}to{opacity:1;background:#142e32}}@keyframes network-draw{0%{stroke-dasharray:1;stroke-dashoffset:1px;opacity:0}to{stroke-dasharray:1;stroke-dashoffset:0;opacity:1}}@keyframes nodes-appear{0%{opacity:0}to{opacity:1}}@keyframes menu-appear{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}[data-reveal]{opacity:1!important;transform:none!important}.spell-sparks{display:none}.project{translate:none!important}.button,.electric-button,.project-open,.button span,.project-open span,.text-link>span{transform:none!important}}[data-static] *,[data-static]:after{animation:none!important}body{background:radial-gradient(1100px 720px at 82% -10%,#6d25ba26,#0000 65%),radial-gradient(900px 640px at 8% 22%,#ed91f512,#0000 60%),radial-gradient(1000px 800px at 55% 110%,#12666c1c,#0000 65%)}.galaxy-container.site-galaxy{z-index:-1;pointer-events:none;width:100%;height:100%;position:fixed;inset:0}.hero-copy{isolation:isolate;position:relative}.hero-copy:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(at 42% 45%,#080d20d9,#0000 70%);position:absolute;inset:-10% -14%}h1>span{background:linear-gradient(105deg, var(--cyan) 25%, var(--violet) 50%, var(--cyan) 75%);color:#0000;background-position:0%;background-size:220% 100%;-webkit-background-clip:text;background-clip:text;transition:background-position .6s cubic-bezier(.22,1,.36,1)}@media (hover:hover) and (pointer:fine){.hero-copy:hover h1>span{background-position:100%}}.hero-copy:focus-within h1>span{background-position:100%}h1>span.text-rotate-highlight,.hero-copy:hover h1>span.text-rotate-highlight,.hero-copy:focus-within h1>span.text-rotate-highlight,h1>span.gradient-text,.hero-copy:hover h1>span.gradient-text,.hero-copy:focus-within h1>span.gradient-text{-webkit-text-fill-color:currentColor;color:inherit;background-image:none;background-position:0 0;background-size:auto;-webkit-background-clip:border-box;background-clip:border-box;transition:none}h1>.gradient-text{vertical-align:baseline}.section-heading{position:relative}.section-heading:after{content:"";background:linear-gradient(90deg, var(--cyan), var(--violet) 55%, transparent);opacity:.55;transform-origin:0;pointer-events:none;height:1px;position:absolute;bottom:-18px;left:0;right:0;transform:scaleX(1)}.section-heading[data-entered]:after{animation:.7s cubic-bezier(.22,1,.36,1) .2s both divider-draw}@keyframes divider-draw{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.button.primary{transition:background .22s,color .22s,transform .22s,box-shadow .22s;box-shadow:0 0 18px #70edf240,0 0 52px #70edf21f}.electric-button,.electric-button>.electric-border{width:fit-content;max-width:100%;display:inline-flex}.electric-border>:not(.electric-border__canvas){z-index:2;position:relative}.contact-frame{max-width:1200px;margin-left:auto;margin-right:auto}.contact-frame>.contact{width:100%;max-width:none;margin:0}@media (max-width:1100px){.contact-frame{margin:0 35px}}@media (max-width:760px){.contact-frame{margin:0 20px}}.electric-button:active{transform:scale(.97)}.electric-button .button:active{transform:none}.project-bottom .electric-button{margin-right:16px}.swirl{opacity:.6;stroke-width:1.5px}.swirl-cyan{filter:drop-shadow(0 0 4px #70edf240)}.swirl-violet{filter:drop-shadow(0 0 4px #bd9bff40)}.swirl-magenta{filter:drop-shadow(0 0 4px #ed91f540)}.hero-visual[data-entered] .avatar-frame{animation:.48s cubic-bezier(.22,1,.36,1) both avatar-establish,.6s ease-out .1s both sigil-flare}@keyframes sigil-flare{0%{box-shadow:0 0 #70edf200}35%{box-shadow:0 0 34px 6px #70edf252,0 0 72px 18px #bd9bff2e}to{box-shadow:0 0 #70edf200}}.hero-visual:before{background:radial-gradient(#70edf21c,#6d25ba29 45%,#0000 68%)}.work-carousel .carousel-card.is-custom{box-shadow:none;background:0 0;overflow:visible}.work-carousel .carousel-card-rim{display:none}.work-carousel .carousel-card.is-custom>.project{height:100%}.work-carousel .carousel-slide:hover .carousel-card{filter:none}.work-carousel .carousel-controls{margin-top:4px}.carousel-measure{position:relative}.carousel-measurer{visibility:hidden;pointer-events:none;z-index:-1;position:absolute;inset:0 0 auto}.carousel-measurer article{border:1px solid var(--line);border-radius:8px;grid-template-columns:1fr 1fr;display:grid;overflow:hidden}@media (max-width:760px){.carousel-measurer article{grid-template-columns:1fr}}.work{padding-bottom:0;overflow-x:clip}.experiences{padding-bottom:100px;overflow-x:clip}@media (max-width:760px){.experiences{padding-bottom:65px}}.work-carousel .project:hover,.work-carousel .project:focus-within{translate:none}.project-explore{cursor:pointer;border:0}.avatar-orb{z-index:0;pointer-events:none;width:150%;height:150%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.avatar-frame img{z-index:1;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;-webkit-mask-mode:alpha;position:relative;-webkit-mask-image:radial-gradient(closest-side,#000 68%,#0000 100%);mask-image:radial-gradient(closest-side,#000 68%,#0000 100%);-webkit-mask-source-type:alpha;mask-mode:alpha}.avatar-magnet{width:100%;max-width:420px;margin-inline:auto}.avatar-magnet .avatar-frame{width:100%;max-width:none;margin:0}@media (min-width:1500px){.avatar-magnet{max-width:450px}}@media (max-width:760px){.avatar-magnet{max-width:320px}}.header{padding-top:10px;padding-bottom:10px}a.identity{flex-direction:column;align-items:flex-start;gap:0}.brand-logo{flex:none;width:248px;height:92px;display:block}.identity small{margin-top:0;padding-left:46px}@media (max-width:760px){.brand-logo{width:176px;height:68px}.identity small{padding-left:32px}}html.modal-open{overflow:hidden}html.modal-open body{padding-right:var(--scrollbar-gap,0px)}.project-dialog{box-shadow:none;background:0 0;border:0;max-height:none;padding:0;overflow:visible}.project-dialog .dialog-spotlight.spotlight-card{border-radius:12px;width:100%;max-height:90vh;padding:0}.dialog-body{z-index:1;overscroll-behavior:contain;max-height:90vh;padding:35px 40px;position:relative;overflow:auto}@media (max-width:760px){.dialog-body{padding:24px}}.contact-dialog{width:min(560px,100% - 32px);max-width:560px}.contact-form{flex-direction:column;gap:14px;min-width:0;margin-top:22px;display:flex;position:relative}.contact-field{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;flex-direction:column;gap:8px;font-size:11px;font-weight:500;display:flex}.contact-field-name{align-items:baseline;gap:8px;display:flex}.contact-optional{letter-spacing:.08em;opacity:.7;font-weight:400}.contact-field input,.contact-field textarea{width:100%;color:var(--text);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;text-transform:none;letter-spacing:0;font:400 15px/1.5 var(--font-dm-sans), sans-serif;background:#080d20;border:1px solid #35405b;border-radius:4px;padding:12px 14px}.contact-field textarea{resize:vertical;min-height:140px}.contact-field input::placeholder{color:color-mix(in srgb, var(--muted) 75%, transparent)}.contact-field input[aria-invalid=true],.contact-field textarea[aria-invalid=true]{border-color:#ff6d8a}.field-alert{text-transform:none;letter-spacing:0;font:400 13px/1.45 var(--font-dm-sans), sans-serif;color:#ff6d8a}.contact-field input:focus-visible,.contact-field textarea:focus-visible,.robot-check input:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}.robot-check{background:#080d20;border:1px solid #35405b;border-radius:4px;justify-content:space-between;align-items:center;gap:16px;margin:2px 0 0;padding:14px 16px;display:flex}.robot-check label{color:var(--text);letter-spacing:0;text-transform:none;align-items:center;gap:12px;font-size:14px;font-weight:500;display:flex}.robot-check input{width:18px;height:18px;accent-color:var(--cyan);margin:0}.robot-check[data-state=passed]{border-color:#70edf273}.robot-mark{color:var(--violet);font-size:22px;line-height:1}.robot-check[data-state=passed] .robot-mark{color:var(--cyan)}.dialog-content .robot-status,.dialog-content .form-alert{margin:0;font-size:13px;line-height:1.5}.dialog-content .form-alert{color:#ff6d8a}.contact-retry{color:var(--cyan);background:0 0;border:0;align-self:flex-start;padding:0;font-size:13px}.contact-submit{justify-content:flex-end;margin-top:4px;display:flex}.contact-submit .button:disabled{opacity:.6;cursor:wait}.contact-dialog .dialog-body{overflow-x:hidden}.contact-honey{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.focus-band .focus-inner{padding-bottom:10px}.focus-logos{z-index:1;color:var(--text);padding-bottom:26px;position:relative}@media (max-width:760px){.focus-logos{padding-bottom:18px}}nav a[aria-current=page]{color:var(--cyan)}.blog{min-height:60vh;padding-top:80px;padding-bottom:40px}.blog-heading{max-width:720px;margin-bottom:56px}.blog-heading h1{letter-spacing:-3px;margin-bottom:22px;font-size:clamp(42px,5vw,64px)}.blog-heading>p:not(.eyebrow){color:var(--muted);margin-bottom:0;font-size:15px;line-height:1.85}.blog-heading .text-link{color:var(--cyan);margin-top:24px}.blog-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;margin:0;padding:0;list-style:none;display:grid}.blog-card{border:1px solid var(--line);background:#0c1227;border-radius:8px;flex-direction:column;height:100%;transition:border-color .2s,transform .2s;display:flex;overflow:hidden}.blog-card-image{aspect-ratio:16/9;background:#11182c;display:block;position:relative}.blog-card-image img{object-fit:cover}.blog-card-copy{flex-direction:column;flex:1;padding:26px 28px 28px;display:flex}.blog-date{letter-spacing:1.6px;color:var(--violet);text-transform:uppercase;margin-bottom:14px;font-size:10px}.blog-card h2{letter-spacing:-.9px;margin-bottom:14px;font-size:26px;line-height:1.2}.blog-card-copy>p{color:var(--muted);margin-bottom:20px;font-size:13px;line-height:1.8}.blog-read{color:var(--cyan);margin-top:auto}@media (hover:hover) and (pointer:fine){.blog-card:hover{border-color:#70edf266;transform:translateY(-2px)}}.blog-empty{color:var(--muted);border:1px dashed var(--line);background:#0c1227;border-radius:8px;padding:32px;font-size:14px}.blog-post{border:1px solid var(--line);background:#0c1227;border-radius:12px;max-width:820px;margin:0 auto;padding:44px 52px 56px}.blog-back{color:var(--muted);margin-bottom:36px}.blog-post h1{letter-spacing:-2.5px;margin-bottom:22px;font-size:clamp(38px,4.6vw,58px);line-height:1.08}.blog-post-excerpt{color:var(--muted);margin-bottom:32px;font-size:17px;line-height:1.8}.blog-post-cover{border-radius:8px;margin:0 0 36px;overflow:hidden}.blog-post-cover img{width:100%;height:auto;display:block}.blog-prose{color:#d3dcef;font-size:16px;line-height:1.9}.blog-prose>*+*{margin-top:1.2em}.blog-prose p{margin-bottom:0}.blog-prose h2{letter-spacing:-1.2px;margin:1.8em 0 .2em;font-size:32px}.blog-prose h3{letter-spacing:-.6px;margin:1.6em 0 .2em;font-size:24px}.blog-prose h4{font:500 19px var(--display);margin:1.4em 0 .2em}.blog-prose a{color:var(--cyan);text-underline-offset:3px;text-decoration:underline}.blog-prose strong{color:var(--text)}.blog-prose ul,.blog-prose ol{padding-left:1.4em}.blog-prose li+li{margin-top:.4em}.blog-prose blockquote{border-left:2px solid var(--violet);color:var(--muted);margin-left:0;padding:4px 0 4px 22px}.blog-prose code{background:#16203a;border-radius:4px;padding:2px 6px;font-size:.9em}.blog-prose pre{border:1px solid var(--line);background:#080d20;border-radius:8px;padding:18px 20px;overflow-x:auto}.blog-prose pre code{background:0 0;padding:0}.blog-prose img{border-radius:8px;max-width:100%;height:auto;display:block}.blog-prose hr{border:0;border-top:1px solid var(--line);margin:2.4em 0}@media (max-width:1100px){.blog-post{padding:40px}}@media (max-width:760px){.blog{padding-top:48px}.blog-heading{margin-bottom:36px}.blog-heading h1{letter-spacing:-2px}.blog-list{grid-template-columns:1fr;gap:24px}.blog-card-copy{padding:22px 22px 24px}.blog-card h2{font-size:23px}.blog-post{border-radius:8px;padding:28px 22px 36px}.blog-post h1{letter-spacing:-1.5px}.blog-prose{font-size:15px}.blog-prose h2{font-size:26px}}
