:root { --bg:#080808; --surface:#101010; --line:#2a2a2a; --soft:#a5a5a5; --white:#f5f5f2; --blue:#36a8ff; } *{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;background:var(--bg);color:var(--white);font-family:Manrope,Arial,sans-serif;overflow-x:hidden}.grain{position:fixed;inset:0;pointer-events:none;z-index:4;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E")}.site-header{height:86px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(24px,5vw,78px);border-bottom:1px solid #202020;position:relative;z-index:5}.brand{display:flex;gap:10px;align-items:center;color:var(--white);font-weight:800;text-decoration:none;letter-spacing:.08em;font-size:14px}.brand-mark{position:relative;width:24px;height:18px;display:block}.brand-mark i{position:absolute;display:block;background:#fff}.brand-mark i:nth-child(1){width:8px;height:7px;left:0;top:1px;clip-path:polygon(0 0,100% 0,50% 100%)}.brand-mark i:nth-child(2){width:9px;height:18px;left:9px;top:0;transform:skewX(-27deg)}.brand-mark i:nth-child(3){width:7px;height:6px;right:0;bottom:0;clip-path:polygon(50% 0,100% 100%,0 100%)}nav{display:flex;gap:34px}nav a,.header-cta,footer{font-family:'DM Mono',monospace;font-size:11px;color:#b8b8b8;text-decoration:none;letter-spacing:.04em}.header-cta{color:#fff;border:1px solid #3a3a3a;padding:10px 14px;transition:.25s}.header-cta span{color:var(--blue);margin-left:10px}.header-cta:hover{border-color:var(--blue)}.hero{min-height:calc(100vh - 86px);display:grid;grid-template-columns:1.05fr .95fr;position:relative;padding:clamp(66px,11vh,130px) clamp(24px,9vw,148px) 80px;overflow:hidden}.hero-copy{position:relative;z-index:2}.eyebrow{font-family:'DM Mono',monospace;font-size:11px;letter-spacing:.11em;text-transform:uppercase;color:#aaa;margin:0 0 28px}.eyebrow span{display:inline-block;width:6px;height:6px;background:var(--blue);border-radius:50%;margin:0 9px 1px 0;box-shadow:0 0 12px var(--blue)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(50px,6vw,96px);letter-spacing:-.07em;line-height:.96;font-weight:700;margin-bottom:31px}em{font-family:Georgia,serif;font-weight:400;letter-spacing:-.06em}.hero-text{max-width:440px;color:#a8a8a8;line-height:1.65;font-size:15px}.hero-actions{display:flex;align-items:center;gap:31px;margin-top:40px}.button{display:inline-flex;align-items:center;gap:25px;text-decoration:none;font-size:13px;font-weight:700;padding:17px 19px}.button-primary{background:#f2f2ef;color:#111}.button-primary span{font-size:18px}.text-link{color:#ddd;text-decoration:none;font-size:13px}.text-link span{color:var(--blue);margin-left:8px}.hero-art{min-height:470px;position:relative;margin-top:-30px}.orbit{position:absolute;border:1px solid #2a2a2a;border-radius:50%;left:50%;top:47%;transform:translate(-50%,-50%) rotate(-35deg)}.orbit-one{width:460px;height:460px}.orbit-two{width:630px;height:265px}.blue-glow,.contact-glow{position:absolute;background:var(--blue);filter:blur(100px);opacity:.18;border-radius:50%;width:220px;height:220px;left:47%;top:42%}.symbol{position:absolute;width:180px;height:205px;left:50%;top:47%;transform:translate(-50%,-50%);filter:drop-shadow(0 18px 25px #000)}.symbol i{display:block;position:absolute;background:#f9f9f7}.symbol i:nth-child(1){width:43px;height:61px;left:0;top:0;clip-path:polygon(0 0,100% 0,50% 100%)}.symbol i:nth-child(2){width:65px;height:170px;left:66px;top:0;transform:skewX(-26deg)}.symbol i:nth-child(3){width:58px;height:52px;right:0;bottom:0;clip-path:polygon(50% 0,100% 100%,0 100%)}.art-caption,.art-index{position:absolute;font-family:'DM Mono',monospace;font-size:10px;line-height:1.55;letter-spacing:.1em;color:#8c8c8c}.art-caption{left:4%;bottom:12%}.art-index{right:1%;top:21%;color:var(--blue)}.scroll-hint{position:absolute;bottom:30px;left:clamp(24px,5vw,78px);font:10px 'DM Mono',monospace;color:#777;letter-spacing:.07em}.scroll-hint span{width:48px;height:1px;background:#666;display:inline-block;margin:0 12px 4px 0}.statement{padding:130px clamp(24px,9vw,148px);background:#f3f3f0;color:#111}.statement .eyebrow{color:#666}.statement-grid{display:grid;grid-template-columns:1.4fr .6fr;gap:50px;align-items:end}.statement h2,.process h2,.contact h2{font-size:clamp(38px,4.7vw,74px);letter-spacing:-.065em;line-height:1.03;margin:0}.statement-grid>p{font-size:15px;color:#666;line-height:1.7;margin-bottom:5px}.services{display:grid;grid-template-columns:repeat(3,1fr);margin-top:100px;border-top:1px solid #bfbfbc}.services article{position:relative;padding:21px 24px 20px 0;border-right:1px solid #bfbfbc;min-height:180px}.services article+article{padding-left:24px}.services article:last-child{border-right:0}.services span,.process b{font:10px 'DM Mono',monospace;color:#777}.services h3{font-size:18px;margin:41px 0 10px;letter-spacing:-.04em}.services p{font-size:13px;line-height:1.5;color:#686868;max-width:220px}.services a{position:absolute;right:20px;top:18px;color:#111;text-decoration:none;font-size:22px}.process{padding:137px clamp(24px,9vw,148px);display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}.process ol{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}.process li{display:grid;grid-template-columns:75px 1fr;gap:14px;padding:25px 0;border-bottom:1px solid var(--line)}.process h3{font-size:20px;margin:0 0 11px;letter-spacing:-.04em}.process li p{color:#858585;font-size:13px;line-height:1.6;max-width:360px;margin:0}.contact{position:relative;overflow:hidden;padding:130px clamp(24px,9vw,148px) 120px;border-top:1px solid #222}.contact-glow{left:auto;right:10%;top:18%;opacity:.12}.contact h2{position:relative;z-index:1;margin-bottom:44px}.contact-email{position:relative;z-index:1;color:#fff;text-decoration:none;border-bottom:1px solid #777;padding-bottom:10px;font-size:clamp(18px,2vw,30px);letter-spacing:-.04em}.contact-email span{color:var(--blue);margin-left:18px}.contact-note{position:absolute;right:clamp(24px,9vw,148px);bottom:125px;color:#858585;line-height:1.6;font-size:13px}footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #252525;padding:24px clamp(24px,5vw,78px);color:#777}footer a{color:#bdbdbd;text-decoration:none}.reveal{animation:rise .8s both}@keyframes rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:760px){.site-header{height:72px}nav{display:none}.header-cta{font-size:10px}.hero{min-height:auto;grid-template-columns:1fr;padding-top:76px}.hero-art{height:310px;min-height:0;margin:34px -20px 0}.orbit-one{width:330px;height:330px}.orbit-two{width:430px;height:170px}.symbol{transform:translate(-50%,-50%) scale(.76)}.art-caption{left:9%;bottom:2%}.art-index{right:7%;top:4%}.scroll-hint{display:none}.statement,.process,.contact{padding-top:85px;padding-bottom:85px}.statement-grid,.process{display:block}.statement-grid>p{margin-top:30px}.services{grid-template-columns:1fr;margin-top:55px}.services article,.services article+article{min-height:140px;padding:20px 0;border-right:0;border-bottom:1px solid #bfbfbc}.services h3{margin:28px 0 8px}.process ol{margin-top:55px}.contact-note{position:relative;right:auto;bottom:auto;margin:55px 0 0}footer{gap:15px;flex-wrap:wrap;font-size:9px}h1{font-size:56px}.hero-actions{gap:20px;flex-wrap:wrap}}
.logo-portrait{position:absolute;left:50%;top:47%;width:min(470px,100%);aspect-ratio:1;object-fit:contain;transform:translate(-50%,-50%);filter:drop-shadow(0 18px 25px #000)}
@media(max-width:760px){.logo-portrait{width:350px;transform:translate(-50%,-50%) scale(.76)}}

/* Motion system */
.site-header{animation:header-in .8s cubic-bezier(.16,1,.3,1) both}.brand{transition:color .25s ease}.brand:hover{color:var(--blue)}nav a{position:relative;transition:color .25s ease}nav a:after{content:'';position:absolute;left:0;right:0;bottom:-8px;height:1px;background:var(--blue);transform:scaleX(0);transform-origin:right;transition:transform .35s cubic-bezier(.16,1,.3,1)}nav a:hover{color:#fff}nav a:hover:after{transform:scaleX(1);transform-origin:left}.header-cta{overflow:hidden;position:relative;z-index:0}.header-cta:before{content:'';position:absolute;z-index:-1;inset:0;background:var(--blue);transform:translateX(-102%);transition:transform .35s cubic-bezier(.16,1,.3,1)}.header-cta:hover{color:#06101a;border-color:var(--blue)}.header-cta:hover:before{transform:translateX(0)}.header-cta:hover span{color:#06101a}.hero:before{content:'';position:absolute;width:45vw;height:45vw;right:-15vw;top:-24vw;background:radial-gradient(circle,rgba(54,168,255,.08),transparent 68%);animation:ambient-drift 12s ease-in-out infinite alternate}.hero-copy .eyebrow{animation:rise .8s .12s both}.hero-copy h1{animation:rise .9s .2s both}.hero-text{animation:rise .8s .34s both}.hero-actions{animation:rise .8s .46s both}.button-primary{position:relative;overflow:hidden;transition:transform .35s cubic-bezier(.16,1,.3,1),box-shadow .35s ease}.button-primary:before{content:'';position:absolute;inset:0;background:var(--blue);transform:translateX(-102%);transition:transform .38s cubic-bezier(.16,1,.3,1)}.button-primary>*{position:relative}.button-primary:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(54,168,255,.18)}.button-primary:hover:before{transform:translateX(0)}.text-link{position:relative}.text-link:after{content:'';position:absolute;height:1px;background:var(--blue);left:0;right:20px;bottom:-6px;transform:scaleX(0);transform-origin:right;transition:transform .3s ease}.text-link:hover:after{transform:scaleX(1);transform-origin:left}.hero-art{transform:translate3d(var(--pointer-x,0px),var(--pointer-y,0px),0);transition:transform .65s cubic-bezier(.16,1,.3,1)}.orbit-one{animation:orbit-turn 25s linear infinite}.orbit-two{animation:orbit-turn-reverse 18s linear infinite}.blue-glow{animation:glow-breathe 5s ease-in-out infinite}.logo-portrait{animation:logo-float 7s ease-in-out infinite}.art-caption{animation:rise .8s .65s both}.art-index{animation:pulse-index 2.5s ease-in-out infinite}.scroll-hint span{transform-origin:left;animation:scroll-line 2.4s ease-in-out infinite}.statement,.process,.contact{position:relative}.statement:after{content:'';position:absolute;width:42vw;height:42vw;right:-20vw;bottom:-30vw;border-radius:50%;background:radial-gradient(circle,rgba(54,168,255,.08),transparent 68%);pointer-events:none}.services article{transition:background .35s ease,transform .35s cubic-bezier(.16,1,.3,1),padding .35s cubic-bezier(.16,1,.3,1)}.services article:before{content:'';position:absolute;top:0;left:0;width:0;height:2px;background:var(--blue);transition:width .45s cubic-bezier(.16,1,.3,1)}.services article:hover{background:rgba(255,255,255,.54);transform:translateY(-8px);padding-top:29px}.services article:hover:before{width:100%}.services article a{transition:transform .3s ease,color .3s ease}.services article:hover a{transform:translate(4px,-4px);color:var(--blue)}.process li{transition:padding-left .35s cubic-bezier(.16,1,.3,1),border-color .35s ease}.process li:hover{padding-left:15px;border-color:#4b4b4b}.process li b{transition:color .3s ease}.process li:hover b{color:var(--blue)}.contact:before{content:'';position:absolute;inset:0;background:linear-gradient(105deg,transparent 38%,rgba(54,168,255,.045),transparent 66%);transform:translateX(-100%);animation:contact-scan 9s ease-in-out infinite}.contact-glow{animation:glow-breathe 6s ease-in-out infinite alternate}.contact-email{display:inline-block;transition:color .3s ease,border-color .3s ease,transform .3s cubic-bezier(.16,1,.3,1)}.contact-email:hover{color:var(--blue);border-color:var(--blue);transform:translateX(10px)}.contact-email span{display:inline-block;transition:transform .3s ease}.contact-email:hover span{transform:translate(5px,-5px)}.js .motion-reveal{opacity:0;transform:translateY(26px);transition:opacity .8s var(--delay,0ms) cubic-bezier(.16,1,.3,1),transform .8s var(--delay,0ms) cubic-bezier(.16,1,.3,1)}.js .motion-reveal.is-visible{opacity:1;transform:none}@keyframes header-in{from{opacity:0;transform:translateY(-15px)}to{opacity:1;transform:none}}@keyframes orbit-turn{to{transform:translate(-50%,-50%) rotate(325deg)}}@keyframes orbit-turn-reverse{to{transform:translate(-50%,-50%) rotate(-395deg)}}@keyframes logo-float{0%,100%{transform:translate(-50%,-50%)}50%{transform:translate(-50%,-53%)}}@keyframes glow-breathe{0%,100%{transform:scale(.82);opacity:.1}50%{transform:scale(1.25);opacity:.25}}@keyframes ambient-drift{to{transform:translate(-10%,14%) scale(1.15)}}@keyframes pulse-index{0%,100%{opacity:.55}50%{opacity:1;text-shadow:0 0 12px var(--blue)}}@keyframes scroll-line{0%,100%{transform:scaleX(.35);opacity:.35}50%{transform:scaleX(1);opacity:1}}@keyframes contact-scan{0%,18%{transform:translateX(-100%)}55%,100%{transform:translateX(100%)}}
.signal{position:absolute;width:5px;height:5px;border-radius:50%;background:var(--blue);box-shadow:0 0 14px 3px rgba(54,168,255,.6);z-index:2}.signal-one{left:19%;top:27%;animation:signal-one 4.8s ease-in-out infinite}.signal-two{right:12%;bottom:23%;animation:signal-two 5.8s ease-in-out infinite}.signal-three{right:28%;top:13%;animation:signal-three 4.1s ease-in-out infinite}.hero-art:after{content:'';position:absolute;left:50%;top:47%;width:540px;height:540px;border-radius:50%;border:1px solid rgba(54,168,255,.08);transform:translate(-50%,-50%) scale(.6);animation:ripple 5s ease-out infinite;pointer-events:none}.statement h2 em,.process h2 em,.contact h2 em{display:inline-block;animation:italic-glint 5s ease-in-out infinite}.services article:nth-child(2){transition-delay:.05s}.services article:nth-child(3){transition-delay:.1s}@keyframes signal-one{0%,100%{transform:translate(0,0);opacity:.2}45%{transform:translate(35px,20px);opacity:1}60%{transform:translate(27px,17px);opacity:.8}}@keyframes signal-two{0%,100%{transform:translate(0,0);opacity:.18}50%{transform:translate(-44px,-30px);opacity:1}}@keyframes signal-three{0%,100%{transform:translate(0,0) scale(.7);opacity:.2}50%{transform:translate(24px,34px) scale(1.25);opacity:1}}@keyframes ripple{0%{opacity:.65;transform:translate(-50%,-50%) scale(.35)}100%{opacity:0;transform:translate(-50%,-50%) scale(1.25)}}@keyframes italic-glint{0%,100%{text-shadow:none}50%{text-shadow:0 0 30px rgba(54,168,255,.22)}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.js .motion-reveal{opacity:1;transform:none}}
.brand{gap:11px}.brand-mark{display:block;width:29px;height:32px;object-fit:contain;flex:none}.brand-mark i{display:none}
