@font-face{font-family:Fakt;src:url('../assets/fonts/gqNgXeH5pq4DlU1BDD1RxK9AT8s.woff2') format('woff2');font-display:swap;font-weight:400}
@font-face{font-family:Fakt;src:url('../assets/fonts/584NBGt7FpgHJmx7MBUCtwIbj6w.woff2') format('woff2');font-display:swap;font-weight:500}
@font-face{font-family:Fakt;src:url('../assets/fonts/fQ6yNpiqFcy1N1ReDYdlHAYWcI.woff2') format('woff2');font-display:swap;font-weight:600}
@font-face{font-family:Beni;src:url('../assets/fonts/JtdxfnHB4RrYNy3Mfx5JgZoILE8.woff2') format('woff2');font-display:swap}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#080808;color:white;font-family:Fakt,sans-serif;font-size:18px;line-height:1.6}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}h1,h2,h3,h4,p,figure,dl,dd{margin:0}h1,h2,h3,h4{font-weight:500;line-height:1.16}h1{font-size:80px;line-height:1.1;font-weight:600;letter-spacing:-2.4px}h2{font-size:48px;letter-spacing:-1.2px}h2 span{color:#999}h3{font-size:32px;letter-spacing:-.6px}h4{font-size:23px}p,li{color:#999}p+p{margin-top:22px}a:focus-visible{outline:2px solid #72caff;outline-offset:6px}.glass{border:1px solid #ffffff29;background:linear-gradient(155deg,#ffffff21,#ffffff04 70%);box-shadow:inset 0 1px 5px #ffffff40,0 1px 4px #0006;border-radius:100px;backdrop-filter:blur(8px)}.site-header{display:flex;align-items:center;justify-content:space-between;max-width:1280px;margin:0 auto;padding:12px 0;position:relative;z-index:2}.brand{display:inline-flex;align-items:center;gap:0;padding:0 15px 0 4px;white-space:nowrap}.brand span{font:24px/1 Beni,sans-serif;letter-spacing:2px;text-transform:uppercase}.brand img{width:44px;height:44px}.site-header nav{display:flex;align-items:center;gap:26px;padding:5px 6px 5px 24px;font-size:16px;line-height:1.2}.call-link{padding:7px 14px;background:radial-gradient(ellipse at bottom right,#0877b78a,transparent 75%),#ffffff0a}.site-header nav a:hover{color:#c6eaff}.case-hero{max-width:1120px;margin:134px auto 100px;text-align:center}.eyebrow{display:inline-block;font-size:15px;padding:3px 16px;color:#ddd}.case-hero h1{margin:32px auto;max-width:1120px}.case-hero .intro{max-width:700px;margin:0 auto;font-size:18px;line-height:1.6}.case-hero .intro p{color:#999}.meta{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:40px;font-size:15px}.meta>*{padding:4px 16px}.hero-images{max-width:1120px;margin:0 auto 120px}.hero-images>img{width:100%;aspect-ratio:1.4;object-fit:cover;border-radius:32px}.hero-images .case-figure{margin:0}.hero-images>.case-figure{max-width:none}.hero-images .desktop .image-window{aspect-ratio:1.75}.case-section{max-width:1120px;margin:0 auto 64px}.prose{max-width:840px;margin:0 auto}.prose h2,.prose h3{margin-bottom:24px}.prose p{line-height:1.65}.prose ul{padding-left:23px;margin:0}.prose li+li{margin-top:8px}.objectives,.role{margin-top:48px}.process-title{margin:90px auto 48px}.case-figure{position:relative;background:linear-gradient(145deg,#292929,#121212);border-radius:32px;padding:24px;margin-top:40px;overflow:hidden}.case-figure a{display:block;border-radius:18px;overflow:hidden}.image-window{aspect-ratio:672/447;overflow:hidden;border-radius:18px;background:#171717}.image-window img{width:100%;height:auto}.case-figure a:hover{outline:1px solid #ffffff3b;outline-offset:4px}.case-figure.uncropped{padding:0}.uncropped .image-window{aspect-ratio:auto}.image-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.image-grid .case-figure{min-width:0}.phones{grid-template-columns:repeat(3,1fr)}.phone{padding:20px;border-radius:40px}.phone .image-window{aspect-ratio:307/658;border-radius:28px}.research .image-window{aspect-ratio:auto;max-height:620px;background:#f9f9f9}.research img{object-fit:contain}.testing{max-width:600px;margin-left:auto;margin-right:auto}.testing .image-window{aspect-ratio:422/402}.accessibility .image-window{aspect-ratio:672/447}.contrast-sample{position:absolute;left:50%;top:43%;width:37%;display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:20px;border-radius:8px;background:#1b1b1b;color:#fff;font-size:clamp(10px,1.1vw,16px);line-height:1.5;pointer-events:none;box-shadow:0 8px 24px #0005}.contrast-sample b,.contrast-sample span{display:block}.contrast-sample i{display:inline-block;width:14px;height:14px;border-radius:3px;border:1px solid #fff;margin-right:5px;vertical-align:middle}.cancel-art{height:400px;max-width:470px;margin-left:auto;margin-right:auto;display:grid;place-items:center;background:linear-gradient(#657183,#202631 60%,#030405);border:20px solid #222}.cancel-art span{color:#f65161;border:1px solid #f651613d;border-radius:99px;padding:18px 42px;background:#f6516114;font-size:15px}.results{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:40px}.results article{border:1px solid #ffffff1c;border-radius:24px;padding:24px;background:#111}.results article>p{font-size:16px;margin-top:12px;min-height:78px}.results dl{margin-top:28px;display:grid;gap:16px}.results dl>div{padding:16px;background:#ffffff05;border:1px solid #ffffff0d;border-radius:16px}.results dt{font-size:15px;color:#999}.results dd{font-size:54px;letter-spacing:-2px;font-weight:500;line-height:1.2;color:#999}.results dl>div:last-child dd{color:#55cc88}.next-project{max-width:1120px;margin:144px auto 100px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:80px}.next-project a{display:block}.next-image{height:320px;border:1px solid #ffffff1c;background:#101010;border-radius:28px;overflow:hidden}.next-image img{width:100%;height:100%;object-fit:cover;object-position:top}.case-uniswap .next-image img{object-fit:contain;padding:80px}.next-project h3{font-size:25px;margin-top:20px;display:flex;justify-content:space-between;gap:20px}.next-project a:hover h3{color:#a3ddff}.contact{position:relative;isolation:isolate;max-width:1120px;padding:110px 20px 130px;text-align:center;margin:0 auto;overflow:hidden}.contact:before{content:'';position:absolute;z-index:-1;inset:10% 4%;background:radial-gradient(ellipse at 33% 55%,#1d0fd34f,transparent 46%),radial-gradient(ellipse at 62% 63%,#0099ee69,transparent 40%);filter:blur(40px);transform:rotate(-7deg)}.contact h2{margin:32px 0 20px}.contact p{max-width:560px;margin:auto}.contact-actions{display:flex;justify-content:center;gap:16px;margin-top:32px;font-size:16px}.contact-actions a{padding:10px 24px}.site-footer{max-width:1120px;margin:80px auto 0;display:grid;grid-template-columns:1fr 1fr;gap:70px;padding-bottom:36px;font-size:16px;color:#999}.site-footer .brand{color:white;padding:0}.site-footer p{max-width:240px;margin-top:20px;line-height:1.5}.site-footer nav{display:grid;grid-template-columns:1fr 1fr;gap:20px;justify-self:end;min-width:340px}.site-footer a:hover{color:#fff}.footer-bottom{grid-column:1/-1;display:flex;justify-content:space-between;border-top:1px solid #252525;padding-top:30px;font-size:14px}.skip-link{position:fixed;top:-80px;left:20px;z-index:99;background:white;color:black;padding:10px}.skip-link:focus{top:10px}
@media(max-width:1340px){.site-header{margin-left:5%;margin-right:5%}.case-hero,.hero-images,.case-section,.next-project,.site-footer{max-width:calc(100% - 10%)}.prose{max-width:min(840px,85%)}.case-hero h1{font-size:clamp(50px,5.55vw,80px)}}
@media(max-width:700px){body{font-size:16px}.site-header{margin:0 16px;padding:14px 0;flex-wrap:wrap;gap:12px}.brand span{font-size:22px}.brand img{width:36px;height:36px}.site-header nav{gap:18px;padding:8px 12px;font-size:14px}.site-header .call-link{padding:5px 9px}.case-hero{margin:70px 20px 56px;max-width:none;text-align:left}.case-hero h1{font-size:40px;line-height:1.12;letter-spacing:-1px;margin:24px 0}.case-hero .intro{font-size:16px}.meta{justify-content:flex-start;margin-top:28px;font-size:12px;gap:8px}.meta>*{padding:5px 12px}.hero-images,.case-section,.next-project,.site-footer{max-width:none;margin-left:20px;margin-right:20px}.hero-images{margin-bottom:64px}.hero-images>img{border-radius:20px}.prose{max-width:none;margin-left:0;margin-right:0}h2{font-size:32px;letter-spacing:-.6px}h3{font-size:25px;letter-spacing:-.4px}.case-section{margin-bottom:48px}.prose h2,.prose h3{margin-bottom:20px}.process-title{margin:64px 20px 32px}.image-grid{grid-template-columns:1fr;gap:0}.hero-images.image-grid{gap:16px}.case-figure{border-radius:20px;padding:12px;margin-top:26px}.case-figure a,.image-window{border-radius:12px}.phones{grid-template-columns:repeat(3,1fr);gap:8px}.phone{padding:5px;border-radius:14px}.phone .image-window{border-radius:10px}.research .image-window{max-height:none}.results{grid-template-columns:1fr;gap:16px}.results article>p{min-height:0}.results dl{grid-template-columns:1fr 1fr;gap:10px}.results dd{font-size:44px}.contrast-sample{padding:8px;gap:7px;font-size:9px;width:44%;left:46%}.contrast-sample i{width:9px;height:9px}.cancel-art{height:300px;border-width:12px}.cancel-art span{padding:14px 25px}.next-project{grid-template-columns:1fr;gap:32px;margin-top:80px;margin-bottom:50px}.next-image{height:240px}.next-project h3{font-size:22px}.contact{padding:70px 20px 80px}.contact h2{text-wrap:balance}.contact-actions{flex-direction:column;max-width:340px;margin-left:auto;margin-right:auto}.site-footer{margin-top:50px;grid-template-columns:1fr;gap:40px}.site-footer nav{justify-self:stretch;min-width:0}.footer-bottom{gap:20px;font-size:12px;padding-top:24px}.case-uniswap .next-image img{padding:60px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.mobile-menu{display:none}
.hero-images>img{object-position:top}
@media(max-width:700px){.site-header{border:1px solid #ffffff29;border-radius:100px;padding:5px 12px 5px 4px;background:linear-gradient(160deg,#ffffff16,#ffffff03);box-shadow:inset 0 1px 4px #ffffff24;flex-wrap:nowrap}.site-header>.brand{border:0;background:none;box-shadow:none;padding:0;backdrop-filter:none}.site-header>nav{display:none}.mobile-menu{display:block}.mobile-menu summary{cursor:pointer;list-style:none;padding:6px 10px;font-size:21px;line-height:1}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu nav{position:absolute;right:0;top:62px;display:flex;flex-direction:column;align-items:stretch;background:#151515;border:1px solid #333;border-radius:20px;padding:16px;min-width:180px;box-shadow:0 14px 40px #0009}.mobile-menu nav a{padding:8px}.mobile-menu[open] summary{color:#83d0ff}}
