@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@300;400;500&family=Manrope:wght@400;500;600;700&display=swap";:root{--paper:#f4f2ec;--ink:#111b3b;--blue:#1746e0;--acid:#d7ff52;--muted:#5f6373;--line:#c9c7c0;--white:#fff;--orange:#ff6746;--font-sans:"Manrope",Arial,sans-serif;--font-mono:"DM Mono",monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--font-sans);margin:0;overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit}svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:1em;height:1em}.site-header{z-index:20;grid-template-columns:1fr auto 1fr;align-items:center;height:82px;padding:0 clamp(24px,5vw,76px);transition:background .25s,border .25s;display:grid;position:fixed;inset:0 0 auto}.site-header.scrolled{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);background:#f4f2ece6}.monogram{letter-spacing:-.08em;font-size:21px;font-weight:800}.monogram span{color:var(--blue)}nav{font:500 11px var(--font-mono);text-transform:uppercase;letter-spacing:.06em;gap:34px;display:flex}nav a{position:relative}nav a:after{content:"";background:var(--blue);height:1px;transition:right .2s;position:absolute;bottom:-5px;left:0;right:100%}nav a:hover:after{right:0}.header-cta{font:500 11px var(--font-mono);text-transform:uppercase;border-bottom:1px solid var(--ink);justify-self:end;align-items:center;gap:9px;padding-bottom:5px;display:flex}.header-cta:hover{color:var(--blue);border-color:var(--blue)}.menu-toggle{background:0 0;border:0;padding:8px;display:none}.menu-toggle i{background:var(--ink);width:24px;height:1px;margin:6px;display:block}.hero{flex-direction:column;min-height:100vh;padding:150px clamp(24px,5vw,76px) 0;display:flex;position:relative}.hero:before{content:"";aspect-ratio:1;background:radial-gradient(circle at center,var(--acid) 0 1px,transparent 2px);opacity:.68;z-index:-1;background-size:15px 15px;width:min(42vw,610px);position:absolute;top:8vh;right:-8vw;-webkit-mask-image:radial-gradient(circle,#000 25%,#0000 70%);mask-image:radial-gradient(circle,#000 25%,#0000 70%)}.hero-label{border-top:1px solid var(--ink);font:400 10px var(--font-mono);text-transform:uppercase;letter-spacing:.08em;justify-content:space-between;padding-top:13px;display:flex}.hero h1{letter-spacing:-.075em;max-width:1420px;margin:clamp(65px,9vh,100px) 0 52px;font-size:clamp(4rem,9.5vw,10.5rem);font-weight:600;line-height:.82}.hero h1 em,.section-head h2 em,.about-main h2 em{color:var(--blue);font-style:normal}.hero-bottom{grid-template-columns:1fr 1fr;align-items:end;gap:60px;margin-top:auto;padding-bottom:76px;display:grid}.hero-bottom>p{letter-spacing:-.025em;grid-column:2;max-width:650px;margin:0;font-size:clamp(18px,1.6vw,25px);line-height:1.5}.hero-actions{grid-column:2;align-items:center;gap:26px;margin-top:28px;display:flex}.button{font:500 11px var(--font-mono);text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:15px;display:inline-flex}.button.primary{background:var(--ink);color:var(--white);padding:17px 21px;transition:background .2s,color .2s,transform .2s}.button.primary:hover{background:var(--blue);transform:translateY(-2px)}.text-button{border-bottom:1px solid var(--ink);padding-bottom:5px}.hero-marquee{background:var(--blue);color:#fff;white-space:nowrap;height:42px;font:400 10px var(--font-mono);letter-spacing:.08em;align-items:center;margin:0 calc(-1*clamp(24px,5vw,76px));display:flex;overflow:hidden}.hero-marquee div{align-items:center;gap:18px;min-width:max-content;animation:28s linear infinite marquee;display:flex}.hero-marquee i{background:var(--acid);border-radius:50%;width:6px;height:6px}@keyframes marquee{to{transform:translate(-50%)}}.intro-band{border-bottom:1px solid var(--line);grid-template-columns:1fr 2.2fr 1fr;gap:60px;padding:100px clamp(24px,5vw,76px);display:grid}.intro-number,.section-head>span,.section-label>span,.about-main>span,.footer-top>span{font:400 10px var(--font-mono);letter-spacing:.08em}.intro-band>p{letter-spacing:-.055em;margin:0;font-size:clamp(26px,3.1vw,48px);line-height:1.15}.intro-band strong{color:var(--blue);font-weight:600}.availability{font:400 10px/1.5 var(--font-mono);text-transform:uppercase;align-items:flex-start;gap:10px;display:flex}.availability i{background:#2ecb76;border-radius:50%;flex:none;width:8px;height:8px;margin-top:3px;box-shadow:0 0 0 5px #2ecb761f}.section{padding:140px clamp(24px,5vw,76px)}.section-head{grid-template-columns:1fr 2.2fr 1fr;align-items:end;gap:60px;margin-bottom:80px;display:grid}.section-head h2{letter-spacing:-.068em;margin:0;font-size:clamp(3rem,6.2vw,7rem);font-weight:600;line-height:.93}.section-head>p{color:var(--muted);margin:0;font-size:15px;line-height:1.65}.work{background:var(--ink);color:#fff}.work .section-head>span,.work .section-head h2 em{color:var(--acid)}.work .section-head>p{color:#aeb4c7}.project{border-top:1px solid #ffffff35;grid-template-columns:.88fr 1.12fr;min-height:620px;display:grid}.project:last-child{border-bottom:1px solid #ffffff35}.project-copy{flex-direction:column;padding:54px 7vw 54px 0;display:flex}.project-index{font:400 10px var(--font-mono);text-transform:uppercase;color:#aeb4c7;gap:28px;display:flex}.project-index span:first-child{color:var(--acid)}.project h3{letter-spacing:-.065em;margin:70px 0 22px;font-size:clamp(3.2rem,5vw,6rem);line-height:1}.project-copy>p{color:#c6cada;max-width:630px;font-size:16px;line-height:1.7}.proof-row{flex-wrap:wrap;margin-top:28px;display:flex}.proof-row span{font:400 10px var(--font-mono);color:var(--acid);border:1px solid #ffffff2b;padding:12px 15px}.proof-row span+span{border-left:0}.stack-row{flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:36px;display:flex}.stack-row span{font:400 9px var(--font-mono);text-transform:uppercase;color:#aeb4c7}.stack-row span:not(:last-child):after{content:" /";color:#66708e}.project-actions{gap:24px;margin-top:24px;display:flex}.project-actions a{font:500 10px var(--font-mono);text-transform:uppercase;border-bottom:1px solid #ffffff60;align-items:center;gap:9px;padding-bottom:5px;display:flex}.project-actions a:hover{color:var(--acid);border-color:var(--acid)}.project-art{min-height:500px;color:var(--ink);background:#e7e8ea;margin:48px 0 48px 4vw;position:relative;overflow:hidden}.pulse-art{background:#e8ecf5;padding:9%}.monitor-top{font:500 9px var(--font-mono);text-transform:uppercase;border-bottom:1px solid #b8bed0;justify-content:space-between;padding-bottom:16px;display:flex}.monitor-top i{color:#138951;font-style:normal}.metrics{grid-template-columns:repeat(3,1fr);gap:10px;margin:9% 0;display:grid}.metrics span{background:#fff;flex-direction:column;gap:8px;padding:18px;display:flex;box-shadow:0 10px 30px #10235710}.metrics small,.fall-stats small{font:400 8px var(--font-mono);color:#777f98}.metrics b{font-size:clamp(18px,2.2vw,32px)}.chart{background:repeating-linear-gradient(#0000 0 24%,#c9ceda 25%);border-bottom:1px solid #9ca5bd;align-items:end;gap:2.5%;height:38%;display:flex}.chart i{background:var(--blue);height:var(--h);flex:1;min-height:15%}.chart i:first-child{height:48%}.chart i:nth-child(2){height:66%}.chart i:nth-child(3){height:54%}.chart i:nth-child(4){height:80%}.chart i:nth-child(5){height:74%}.chart i:nth-child(6){height:91%}.chart i:nth-child(7){height:64%}.chart i:nth-child(8){height:85%}.chart i:nth-child(9){height:72%}.chart i:nth-child(10){height:94%}.chart i:nth-child(11){height:82%}.chart i:nth-child(12){height:97%}.incident-row{font:400 9px var(--font-mono);background:#fff;align-items:center;gap:10px;margin-top:5%;padding:14px 18px;display:flex}.incident-row b{color:#138951;margin-left:auto}.pulse-dot{background:#2ecb76;border-radius:50%;width:7px;height:7px}.crown-art{background:#d7ff52;grid-template-columns:1fr .55fr;align-items:center;gap:8%;padding:8%;display:grid}.board{aspect-ratio:1;box-shadow:16px 16px 0 var(--blue);grid-template-columns:repeat(8,1fr);display:grid}.board i{background:#ece9dd;position:relative}.board i.dark{background:var(--ink)}.board i.piece:after{content:"";background:var(--orange);border-radius:50%;width:65%;height:65%;position:absolute;inset:17%;box-shadow:inset 0 0 0 5px #fff2}.board i.piece.cream:after{background:#f9f5e8}.game-status{align-self:end;padding-bottom:10%}.game-status small{font:400 8px var(--font-mono)}.game-status b{letter-spacing:-.05em;margin:12px 0;font-size:clamp(20px,2.5vw,38px);display:block}.game-status span{font:500 12px var(--font-mono);color:var(--blue)}.fallline-art{background:#ff6b4a}.device{aspect-ratio:.62;background:var(--ink);color:#fff;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;width:38%;display:flex;position:absolute;top:12%;left:13%;box-shadow:12px 16px #fff5}.device i{aspect-ratio:1;border:2px solid var(--acid);border-radius:50%;width:30%;margin-bottom:18px;box-shadow:0 0 0 12px #d7ff5214}.device span{font:500 clamp(16px,2vw,30px)/.9 var(--font-sans);letter-spacing:-.05em;text-align:center}.device b{font:400 8px var(--font-mono);color:var(--acid);margin-top:15px}.signal{aspect-ratio:1;border:1px solid #111b3b66;border-radius:50%;position:absolute;top:42%;left:30%;transform:translate(-50%,-50%)}.signal-one{width:60%}.signal-two{width:82%}.signal-three{width:110%}.fall-stats{flex-direction:column;justify-content:space-between;width:32%;display:flex;position:absolute;top:17%;bottom:17%;right:8%}.fall-stats span{font:500 12px var(--font-mono);border-top:1px solid #111b3b66;flex-direction:column;gap:7px;padding-top:10px;display:flex}.fall-stats small{color:#111b3b99}.more-work{background:var(--acid)}.section-label{grid-template-columns:1fr 2fr;gap:60px;margin-bottom:70px;display:grid}.section-label p{letter-spacing:-.05em;margin:0;font-size:clamp(25px,3vw,46px);line-height:1.1}.more-list{border-top:1px solid var(--ink)}.more-row{border-bottom:1px solid #111b3b66;grid-template-columns:60px 1.25fr .6fr 1.2fr 30px;align-items:center;gap:24px;padding:30px 0;transition:padding .2s,background .2s;display:grid}.more-row:hover{background:#ffffff2b;padding-left:16px}.more-row>span,.more-row>i{font:400 9px var(--font-mono);text-transform:uppercase;font-style:normal}.more-row h3{letter-spacing:-.035em;margin:0;font-size:25px}.more-row p{color:#30384e;margin:0;font-size:13px;line-height:1.55}.more-row svg{font-size:21px}.experience{background:var(--paper)}.timeline{border-top:1px solid var(--ink)}.timeline-item{border-bottom:1px solid var(--line);grid-template-columns:.6fr 1.2fr 1.4fr;gap:50px;padding:40px 0;display:grid}.timeline-item>span{font:400 10px var(--font-mono)}.timeline-item h3{letter-spacing:-.025em;margin:0 0 8px;font-size:21px}.timeline-item strong{color:var(--blue);font-size:13px}.timeline-item p{color:var(--muted);margin:0;font-size:14px;line-height:1.7}.about{background:var(--blue);color:#fff;grid-template-columns:1.4fr 1fr;gap:10vw;display:grid}.about-main h2{letter-spacing:-.07em;margin:65px 0 48px;font-size:clamp(3.5rem,6.5vw,7.5rem);line-height:.9}.about-main h2 em{color:var(--acid)}.about-main>p{color:#d5dbf0;max-width:760px;font-size:16px;line-height:1.75}.capabilities{border-top:1px solid #fff5;align-self:end}.capabilities div{border-bottom:1px solid #fff5;grid-template-columns:120px 1fr;gap:20px;padding:22px 0;display:grid}.capabilities span{font:400 9px var(--font-mono);text-transform:uppercase;color:var(--acid)}.capabilities p{margin:0;font-size:13px;line-height:1.55}.recognition{background:var(--ink);color:#fff;grid-template-columns:repeat(3,1fr);display:grid}.recognition span{font:400 10px/1.5 var(--font-mono);text-transform:uppercase;text-align:center;padding:28px clamp(24px,5vw,76px)}.recognition span+span{border-left:1px solid #ffffff38}footer{background:var(--paper);padding:95px clamp(24px,5vw,76px) 35px}.footer-top{justify-content:space-between;align-items:start;margin-bottom:64px;display:flex}.footer-top p{letter-spacing:-.035em;text-align:right;margin:0;font-size:clamp(20px,2vw,30px);line-height:1.25}.footer-top strong{color:var(--blue);font-weight:600}.contact-grid{border-top:1px solid var(--ink);border-left:1px solid var(--ink);grid-template-columns:repeat(3,1fr);display:grid}.contact-card{border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);flex-direction:column;justify-content:space-between;min-height:330px;padding:26px;transition:color .25s,background .25s,transform .25s;display:flex;position:relative;overflow:hidden}.contact-card:before{content:"";background:var(--card-accent);transform-origin:0;height:7px;transition:transform .35s cubic-bezier(.2,.8,.2,1);position:absolute;inset:auto 0 0;transform:scaleX(0)}.contact-card:hover{background:#fff;transform:translateY(-5px)}.contact-card:hover:before{transform:scaleX(1)}.contact-card:hover .contact-card-top svg{transform:translate(4px,-4px)}.email-card{--card-accent:var(--blue)}.linkedin-card{--card-accent:var(--acid)}.github-card{--card-accent:var(--orange)}.contact-card-top{font:400 10px var(--font-mono);justify-content:space-between;align-items:start;display:flex}.contact-card-top svg{font-size:28px;transition:transform .25s}.contact-card small{font:500 10px var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--blue)}.contact-card h3{letter-spacing:-.05em;max-width:290px;margin:13px 0 28px;font-size:clamp(24px,2.2vw,38px);line-height:1.08}.contact-card p{font:400 11px var(--font-mono);overflow-wrap:anywhere;margin:0}.footer-bottom{font:400 9px var(--font-mono);text-transform:uppercase;justify-content:space-between;margin-top:34px;display:flex}.footer-bottom div{gap:28px;display:flex}.footer-bottom a{align-items:center;gap:7px;display:flex}.footer-bottom a:hover{color:var(--blue)}.reveal{opacity:0;transition:opacity .7s,transform .7s cubic-bezier(.2,.8,.2,1);transform:translateY(24px)}.revealed{opacity:1;transform:none}@media (width<=960px){.site-header{grid-template-columns:1fr auto}.site-header nav,.header-cta{display:none}.menu-toggle{display:block}.site-header nav.open{background:var(--paper);border-bottom:1px solid var(--ink);flex-direction:column;padding:30px;font-size:14px;display:flex;position:fixed;inset:82px 0 auto}.hero-bottom{grid-template-columns:1fr}.hero-bottom>p,.hero-actions{grid-column:1}.intro-band,.section-head{grid-template-columns:1fr 2fr}.intro-band .availability,.section-head>p{grid-column:2}.project{grid-template-columns:1fr}.project-copy{padding-right:0}.project-art{min-height:520px;margin:0 0 50px}.section-label{grid-template-columns:1fr 2fr}.more-row{grid-template-columns:45px 1fr .5fr 25px}.more-row p{grid-column:2/4}.about{grid-template-columns:1fr}.capabilities{margin-top:30px}}@media (width<=640px){.site-header{grid-template-columns:1fr 48px;height:68px;padding:0 20px}.site-header nav.open{top:68px}.menu-toggle{z-index:22;flex-direction:column;justify-self:end;align-items:flex-end;display:flex;position:relative}.hero{min-height:790px;padding:115px 20px 0}.hero-label span:last-child{display:none}.hero h1{margin-top:78px;font-size:clamp(3rem,12.5vw,4.8rem);line-height:.86}.hero-bottom{gap:0}.hero-bottom>p{font-size:17px}.hero-actions{flex-direction:column;align-items:flex-start;gap:18px}.hero-marquee{margin:60px -20px 0}.intro-band{grid-template-columns:1fr;gap:36px;padding:75px 20px}.intro-band>p,.intro-band .availability{grid-column:1}.section{padding:95px 20px}.section-head{grid-template-columns:1fr;gap:35px;margin-bottom:55px}.section-head>p{grid-column:1}.section-head h2{font-size:3.6rem}.project{min-height:0}.project-copy{padding:40px 0}.project h3{margin-top:50px;font-size:3.3rem}.proof-row{grid-template-columns:1fr;display:grid}.proof-row span+span{border-top:0;border-left:1px solid #ffffff2b}.project-art{min-height:410px}.pulse-art{padding:7%}.crown-art{grid-template-columns:1fr;padding:10%}.board{width:88%}.game-status{display:none}.device{width:44%;left:8%}.fall-stats{width:36%;right:5%}.section-label{grid-template-columns:1fr;gap:28px}.more-row{grid-template-columns:35px 1fr 25px;gap:15px;padding:25px 0}.more-row>i{grid-column:2}.more-row p{grid-column:2/4}.more-row>svg{grid-area:1/3}.timeline-item{grid-template-columns:1fr;gap:13px}.about{gap:35px}.about-main h2{font-size:3.9rem}.capabilities div{grid-template-columns:1fr;gap:8px}.recognition{grid-template-columns:1fr}.recognition span+span{border-top:1px solid #ffffff38;border-left:0}footer{padding-top:75px}.footer-top{margin-bottom:42px;display:block}.footer-top p{text-align:left;margin-top:24px}.contact-grid{grid-template-columns:1fr}.contact-card{min-height:235px}.footer-bottom{flex-direction:column;gap:24px}.footer-bottom div{flex-wrap:wrap}.reveal{transform:translateY(14px)}.hero h1 em{display:block}}html,body{max-width:100%;overflow-x:hidden}footer{width:100%;max-width:100%;overflow:hidden}.contact-grid{grid-template-columns:repeat(3,minmax(0,1fr));width:100%;min-width:0}.contact-card{min-width:0}@media (width<=640px){footer{padding:64px 20px 28px}.footer-top{margin-bottom:32px}.footer-top p{font-size:21px}.contact-grid{grid-template-columns:minmax(0,1fr)}.contact-card{width:100%;min-height:210px;padding:20px}.contact-card h3{max-width:100%;margin:10px 0 22px;font-size:clamp(25px,8vw,34px)}.contact-card p{max-width:100%;font-size:10px}.contact-card-top svg{font-size:23px}.footer-bottom{width:100%;margin-top:26px}.footer-bottom>span,.footer-bottom div{max-width:100%}.footer-bottom div>span{display:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transition:none;transform:none}.hero-marquee div{animation:none}*{transition-duration:.01ms!important}}
