*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#090909;color:#e7e7e5;font:300 16px/1.7 Inter,Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:1px solid #eee;outline-offset:6px}header{display:flex;align-items:center;gap:32px;padding:30px 5%;border-bottom:1px solid #ffffff20}.brand{font:300 17px Unbounded,sans-serif;letter-spacing:.04em;white-space:nowrap}.brand sup{font-size:8px;vertical-align:top}nav{margin-left:auto;display:flex;gap:25px;font:11px IBM Plex Mono,monospace}nav a{color:#aaa;padding:10px 0}nav a[aria-current=page],nav a:hover{color:#fff}.langs{display:flex;gap:9px;font:10px IBM Plex Mono,monospace}.langs a{color:#777}.langs a[aria-current=page]{color:#fff}main{max-width:1440px;margin:auto;padding:90px 8% 110px}.eyebrow,.index,.tag{font:10px IBM Plex Mono,monospace;text-transform:uppercase;letter-spacing:.18em;color:#929292}h1,h2,h3{font-family:Unbounded,Arial,sans-serif;font-weight:200;letter-spacing:-.055em;line-height:1.2}h1{font-size:clamp(39px,6.6vw,92px);max-width:1000px;margin:32px 0}h2{font-size:clamp(27px,3.5vw,48px);margin:20px 0}h3{font-size:clamp(22px,2.7vw,34px)}.lead{font-size:clamp(17px,1.6vw,22px);max-width:690px;color:#aaa;line-height:1.8}.hero{padding-bottom:90px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:35px;border:1px solid #555;padding:17px 23px;margin-top:25px;font:11px IBM Plex Mono,monospace;text-transform:uppercase;letter-spacing:.06em;transition:background .2s}.button:hover{background:#e7e7e5;color:#090909}.split{display:grid;grid-template-columns:1fr 1fr;gap:9%;padding:65px 0;border-top:1px solid #ffffff25}.split p{color:#aaa;max-width:600px}.symbol{width:65%;max-height:350px;display:block;margin:35px auto;filter:invert(1);opacity:.75}.service{display:grid;grid-template-columns:55px 1fr 1fr;gap:35px;padding:65px 0;border-top:1px solid #ffffff25}.service h2{font-size:clamp(25px,3vw,39px);margin:0 0 24px}.service p{color:#a1a1a1;margin:0 0 20px}.service ul{list-style:none;padding:0;margin:15px 0}.service li{border-bottom:1px solid #ffffff15;padding:12px 0;font-size:14px;color:#b9b9b9}.text-link{display:inline-block;border-bottom:1px solid #666;margin-top:15px;font-size:13px}.process{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin:45px 0}.process h3{font-size:22px}.process p{color:#999;font-size:14px}.cta{border-top:1px solid #ffffff25;padding-top:70px;margin-top:50px}.project-image{width:100%;display:block;border:1px solid #ffffff20;margin:25px 0 35px}.project-meta{display:flex;gap:30px;flex-wrap:wrap}.project-meta span{font:10px IBM Plex Mono,monospace;color:#aaa}.contact-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:12%;border-top:1px solid #ffffff20;padding-top:55px}form{display:grid;gap:25px}label{display:grid;gap:9px;font-size:12px;color:#bbb}input,select,textarea{width:100%;color:#eee;background:#111;border:1px solid #444;border-radius:0;padding:13px 15px}textarea{min-height:140px;resize:vertical}button{cursor:pointer;color:inherit;background:none}.notice{font-size:12px;color:#999;margin:0}footer{border-top:1px solid #ffffff20;padding:30px 5%;display:flex;justify-content:space-between;gap:20px;font:10px IBM Plex Mono,monospace;color:#999}.skip{position:absolute;left:10px;top:-100px;background:#fff;color:#000;padding:12px;z-index:100}.skip:focus{top:10px}@media(max-width:850px){header{flex-wrap:wrap;gap:18px}.langs{margin-left:auto}nav{order:3;width:100%;margin:0;justify-content:space-between;gap:12px}main{padding:55px 7% 75px}.hero{padding-bottom:50px}.split,.contact-grid{grid-template-columns:1fr;gap:25px}.service{grid-template-columns:25px 1fr;gap:18px;padding:40px 0}.service>div:last-child{grid-column:2}.process{grid-template-columns:1fr;gap:10px}.symbol{max-height:230px}.lead{font-size:17px}footer{flex-wrap:wrap}h1{overflow-wrap:break-word}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}.interactive-symbol{width:100%;height:440px;position:relative;outline-offset:5px;touch-action:pan-y}.interactive-symbol canvas{display:block;width:100%;height:100%}.interactive-symbol img[hidden]{display:none}@media(max-width:850px){.interactive-symbol{height:350px}}.contact-details{display:grid;gap:15px;margin-top:30px;font-size:14px}.contact-details a{width:fit-content;border-bottom:1px solid #444}.contact-details a:hover{color:#fff}.interactive-symbol{cursor:grab}.interactive-symbol.dragging{cursor:grabbing}.interactive-symbol:focus:not(:focus-visible){outline:none}.portfolio-nav{display:flex;gap:35px;flex-wrap:wrap;margin:0 0 80px;border-top:1px solid #333;padding-top:25px}.portfolio-section{scroll-margin-top:30px;border-top:1px solid #333;padding-top:55px;margin:80px 0}.case-grid{display:grid;grid-template-columns:1fr 1fr;gap:75px 35px;margin-top:45px}.portfolio-card p,.case-heading p{color:#aaa;max-width:650px}.portfolio-card h3{font-size:25px}.case-media{background:#121212;margin-bottom:23px;aspect-ratio:4/3;overflow:hidden}.case-media img,.case-media video{width:100%;height:100%;object-fit:contain;display:block}.case-media img{object-fit:cover}.case-gallery{display:grid;gap:15px;margin-top:20px}.case-gallery img{width:100%;height:auto}summary{cursor:pointer;font:11px IBM Plex Mono;padding:15px 0;border-bottom:1px solid #444}.case-heading{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}.system-case{margin-top:65px}.system-links{display:flex;justify-content:space-between;align-items:center;gap:20px;font:10px IBM Plex Mono;color:#999}.system-links a{margin:0}.laptop-stage{perspective:1400px;padding:60px 5% 20px;overflow:hidden}.laptop{max-width:940px;margin:auto;padding-bottom:30px}.laptop-lid{background:linear-gradient(135deg,#555,#171717 25%,#303030);border:1px solid #777;border-radius:20px 20px 8px 8px;padding:20px 15px 25px;position:relative;transform-origin:50% 100%;transform:rotateX(var(--lid-angle,-68deg));transition:transform .15s linear;box-shadow:0 15px 60px #0008;backface-visibility:hidden}.webcam{position:absolute;top:8px;left:50%;width:5px;height:5px;background:#080808;border:1px solid #666;border-radius:50%}.laptop-screen{aspect-ratio:16/10;position:relative;overflow:hidden;background:#050505;border:1px solid #111}.laptop-screen>img{width:100%;height:100%;display:block}.laptop-screen iframe{position:absolute;top:0;left:0;width:1280px;height:800px;border:0;transform:scale(var(--screen-scale,1));transform-origin:0 0;background:#090909}.activate-screen{position:absolute;bottom:15px;left:50%;transform:translate(-50%);padding:12px 18px;background:#e8e8e8;color:#111;border:1px solid #fff;white-space:nowrap;font:10px IBM Plex Mono}.laptop-brand{position:absolute;bottom:7px;left:50%;transform:translate(-50%);font:7px IBM Plex Mono;color:#999;letter-spacing:.13em}.laptop-base{height:18px;background:linear-gradient(#a5a5a5,#484848 50%,#151515);border-radius:2px 2px 50% 50%;margin:0 -5%;border:1px solid #666;box-shadow:0 24px 35px #0008}.laptop-base span{display:block;width:13%;height:6px;margin:auto;background:#333;border-radius:0 0 8px 8px}.laptop-stage.active .laptop-lid,.laptop-stage:hover .laptop-lid,.laptop-stage:focus-within .laptop-lid{transform:rotateX(0)}@media(max-width:850px){.case-grid,.case-heading{grid-template-columns:1fr;gap:30px}.portfolio-nav{gap:18px;margin-bottom:45px}.laptop-stage{padding:30px 3% 10px}.laptop-lid{padding:14px 7px 18px;border-radius:10px 10px 4px 4px}.webcam{top:4px}.laptop-brand{font-size:5px;bottom:5px}.system-links{align-items:start;flex-direction:column;gap:12px}.portfolio-card h3{font-size:23px}.activate-screen{font-size:8px;padding:9px}.laptop-base{height:11px}.portfolio-section{margin:55px 0}.laptop-stage.active{padding-left:0;padding-right:0}}@media(prefers-reduced-motion:reduce){.laptop-lid{transition:none}}@media(pointer:coarse){nav a,.langs a,.contact-details a,footer a,.text-link{min-height:44px;display:inline-flex;align-items:center;touch-action:manipulation}.langs a{min-width:32px;justify-content:center}}@media(max-width:650px){input,select,textarea{font-size:16px}}.founder-portrait{display:block;width:100%;height:auto;max-width:480px;margin:0;filter:none;border:0}.split:has(.founder-portrait){align-items:center}.split:has(.founder-portrait) p{text-wrap:pretty}@media(max-width:850px){.founder-portrait{max-width:420px;margin:0 auto}}
