@font-face{font-family:Inter;src:url(/fonts/inter-latin.woff2)format("woff2");font-weight:100 900;font-display:swap}@font-face{font-family:Space Grotesk;src:url(/fonts/space-grotesk-latin.woff2)format("woff2");font-weight:300 700;font-display:swap}:root{--bg:#0c1119;--panel:#121a25;--text:#f2f5fa;--muted:#a6b2c4;--blue:#9ac5ff;--mint:#9ce0cf;--line:#d2e2ff1a;--max:1240px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:108px}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,Arial,sans-serif;font-size:16px;line-height:1.75}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,input,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a,button,summary{transition:color .2s,background .2s,border-color .2s,transform .25s}a:hover{color:var(--blue)}:focus-visible{outline:2px solid var(--blue);outline-offset:5px}::selection{color:#fff;background:#50759e}.container{width:min(var(--max), calc(100% - 96px));margin-inline:auto}h1,h2,h3{margin:0;font-family:Space Grotesk,Arial,sans-serif;font-weight:500}h2{letter-spacing:-1.8px;white-space:pre-line;font-size:clamp(34px,3.7vw,48px);line-height:1.16}.eyebrow{text-transform:uppercase;letter-spacing:1.8px;color:var(--muted);align-items:center;gap:12px;margin:0 0 24px;font-size:11px;font-weight:500;display:flex}.status-dot{background:var(--mint);border-radius:50%;flex-shrink:0;width:7px;height:7px;display:inline-block;box-shadow:0 0 14px #9ce0cf38}.header{z-index:30;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0c1119e8;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:26px;min-height:90px;display:flex}.scroll-progress{background:linear-gradient(90deg, var(--blue), var(--mint));width:100%;height:2px;transform:scaleX(var(--scroll-progress,0));transform-origin:0;position:absolute;bottom:-1px;left:0}.brand{flex-shrink:0;align-items:center;gap:16px;display:inline-flex}.wordmark{letter-spacing:-2.8px;font-family:Space Grotesk,Arial,sans-serif;font-size:36px;font-weight:700;line-height:1}.wordmark>span{color:var(--blue)}.brand-name{letter-spacing:-.15px;font-size:13px;font-weight:600;line-height:1.5}.brand-name>span{color:var(--muted);letter-spacing:.2px;margin-top:3px;font-size:10px;font-weight:400;display:block}.nav{color:#b7c1d0;gap:28px;font-size:13px;display:flex}.nav a{padding-block:8px;position:relative}.nav a:after{content:"";background:var(--blue);transform-origin:0;width:100%;height:1px;transition:transform .25s;position:absolute;bottom:2px;left:0;transform:scaleX(0)}.nav a:hover:after{transform:scaleX(1)}.nav a:focus-visible:after{transform:scaleX(1)}.nav-actions{align-items:center;gap:24px;display:flex}.language{letter-spacing:1px;color:var(--muted);padding:6px;font-size:12px}.nav-contact{border:1px solid #c6dfff33;border-radius:8px;align-items:center;gap:12px;padding:11px 17px;font-size:12px;display:inline-flex}.nav-contact:hover{background:#9ac5ff0c;border-color:#9ac5ff80}.menu-toggle{display:none}.hero-shell{background:radial-gradient(at 75% 37%,#1b35522a 0,#0000 58%);position:relative;overflow:clip}.hero{grid-template-columns:1.12fr 1fr;align-items:center;gap:70px;padding-block:54px 58px;display:grid}.hero-copy{z-index:2;animation:.85s cubic-bezier(.2,.7,.2,1) both intro-rise;position:relative}.hero-role{letter-spacing:1.5px;margin-bottom:28px;font-size:10px}h1{letter-spacing:-5px;font-size:clamp(66px,6.6vw,94px);line-height:.99}h1>span{color:#e0eaf7}.name-dot{color:var(--blue)}.hero-statement{letter-spacing:-.8px;margin:29px 0 19px;font-family:Space Grotesk,Arial,sans-serif;font-size:clamp(22px,2.25vw,29px);line-height:1.45}.hero-statement>span{color:var(--blue)}.hero-intro{color:var(--muted);max-width:455px;margin:0 0 30px;font-size:15px;line-height:1.95}.hero-buttons{flex-wrap:wrap;align-items:center;gap:25px;display:flex}.button{border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:24px;padding:15px 21px;font-size:13px;font-weight:600;line-height:1.5;display:inline-flex}.primary{color:#102039;background:linear-gradient(115deg,#aacfff,#89b8f8);box-shadow:0 6px 28px #649efa12}.primary:hover{color:#102039;background:#bedaff;transform:translateY(-2px);box-shadow:0 10px 30px #649efa25}.button>svg,.text-link>svg{transition:transform .25s}.button:hover>svg,.text-link:hover>svg{transform:translate(2px,-2px)}.button:disabled{opacity:.5;cursor:not-allowed;transform:none}.text-link{align-items:center;gap:12px;font-size:13px;display:inline-flex}.link-arrow{border:1px solid #c6dfff2a;border-radius:50%;place-items:center;width:30px;height:30px;transition:border-color .25s,transform .25s;display:grid}.text-link:hover .link-arrow{border-color:var(--blue);transform:translateY(3px)}.hero-footnote{color:#7f91aa;letter-spacing:.4px;align-items:center;gap:12px;margin:34px 0 0;font-size:11px;display:flex}.footnote-line{background:#617691;width:26px;height:1px;display:inline-block}.hero-portrait{min-width:0;margin:0;animation:1.15s cubic-bezier(.2,.7,.2,1) .12s both portrait-enter;position:relative}.portrait-stage{isolation:isolate;height:625px;position:relative}.portrait-halo{z-index:-2;background:radial-gradient(at 52% 46%,#549dcc35 0%,#45769b22 29%,#2239530a 56%,#0000 72%);width:112%;height:86%;position:absolute;top:5%;left:-6%}.portrait-orbit{z-index:-1;aspect-ratio:1;border:1px solid #aacbfc19;border-radius:50%;width:100%;position:absolute;top:12%;left:0}.orbit-one:after{content:"";background:#85b6ef;border-radius:50%;width:6px;height:6px;position:absolute;top:14%;left:12%;box-shadow:0 0 14px #8bbdff60}.orbit-two{border-style:dashed;border-color:#b8d6ff10;width:79%;top:21%;left:11%}.portrait-stage>img{z-index:1;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 18px 30px #02081233);width:100%;height:100%;position:absolute;-webkit-mask-image:linear-gradient(#000 0% 84%,#0009 93%,#0000 100%),linear-gradient(90deg,#0000 0%,#000 12% 88%,#0000 100%);mask-image:linear-gradient(#000 0% 84%,#0009 93%,#0000 100%),linear-gradient(90deg,#0000 0%,#000 12% 88%,#0000 100%);-webkit-mask-composite:source-in;mask-composite:intersect}.portrait-coordinate{letter-spacing:1.5px;color:#7188a6;font-size:9px;position:absolute;top:25px;right:0}.portrait-note{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:3;background:#142235d9;border:1px solid #bddbff26;border-radius:12px;align-items:center;gap:12px;padding:13px 16px;font-size:11px;display:flex;position:absolute;box-shadow:0 15px 38px #00000026}.portrait-note>span{width:34px;height:34px;color:var(--blue);background:#9ac5ff14;border-radius:8px;flex-shrink:0;place-items:center;display:grid}.portrait-note small{color:#8fa7c4;margin-top:2px;font-size:9px;display:block}.note-code{animation:.7s .55s both note-enter;top:70%;left:-30px}.note-ai{animation:.7s .8s both note-enter;top:84%;right:-18px}.note-ai>span{color:var(--mint);background:#9ce0cf12}.portrait-caption{letter-spacing:.4px;color:#a6bcd5;justify-content:center;align-items:center;gap:12px;width:fit-content;margin:-8px auto 0;font-size:10px;display:flex;position:relative}.portrait-caption>svg{color:var(--blue)}.focus-strip{border-block:1px solid var(--line);background:#0b10182e}.focus-inner{color:#b5c4d8;justify-content:space-between;gap:24px;padding-block:24px;font-size:12px;display:flex}.focus-inner>span{align-items:center;gap:17px;display:flex}.focus-index{color:#6987ae;font-family:Space Grotesk,Arial,sans-serif;font-size:10px}.section{padding-block:116px}.section-heading{margin-bottom:40px}.section-header-row{justify-content:space-between;align-items:end;gap:40px;margin-bottom:46px;display:flex}.section-header-row .section-heading{margin-bottom:0}.section-side-note{color:#7f94ae;text-align:right;max-width:260px;margin:0 0 5px;font-size:13px;line-height:1.7}.section-tinted{border-block:1px solid var(--line);background:linear-gradient(135deg,#101824,#0f1721)}.about-grid{grid-template-columns:1fr 1.06fr;gap:94px;display:grid}.about-grid .section-heading{margin-bottom:31px}.section-note{color:#8295b0;align-items:center;gap:13px;margin:0;font-size:12px;display:flex}.section-note>span{background:#527aa4;flex-shrink:0;width:20px;height:1px}.about-copy{padding-top:3px}.about-copy p{color:var(--muted);margin:0 0 24px;font-size:15px;line-height:1.95}.about-copy .lead{color:#d8e1ef;letter-spacing:-.15px;font-size:19px;line-height:1.8}.toolkit{border-top:1px solid var(--line);margin-top:32px;padding-top:25px}.toolkit .eyebrow{color:#7d93af;margin-bottom:17px;font-size:10px}.technology-tags{flex-wrap:wrap;gap:9px;display:flex}.technology-tags>span{color:#b9cce5;background:#152132;border:1px solid #a9c9f21c;border-radius:7px;padding:6px 12px;font-size:12px}.services-grid{grid-template-columns:repeat(4,1fr);gap:18px;display:grid}.service{background:linear-gradient(145deg,#172334,#121b28);border:1px solid #b6d0f21c;border-radius:15px;padding:27px 24px 32px;transition:border-color .3s,transform .3s,box-shadow .3s;position:relative;overflow:hidden}.service:hover{border-color:#a2c6f64d;transform:translateY(-5px);box-shadow:0 18px 40px #03060a30}.service-top{justify-content:space-between;align-items:center;margin-bottom:34px;display:flex}.service-icon{color:var(--blue);background:#9ac5ff0e;border:1px solid #9ac5ff14;border-radius:11px;place-items:center;width:49px;height:49px;display:grid}.service-number{color:#687f9e;font-family:Space Grotesk,Arial,sans-serif;font-size:11px}.service h3{letter-spacing:-.6px;margin-bottom:15px;font-size:20px;line-height:1.35}.service p{color:var(--muted);margin:0;font-size:13px;line-height:1.85}.service-line{transform-origin:0;background:linear-gradient(90deg,#97c3fa75,#0000);height:2px;transition:transform .3s;position:absolute;bottom:0;left:24px;right:24px;transform:scaleX(.4)}.service:hover .service-line{transform:scaleX(1)}.project-list{gap:28px;display:grid}.project{background:linear-gradient(120deg,#131d2b,#101925);border:1px solid #b6d0f224;border-radius:19px;grid-template-columns:1.05fr 1fr;gap:32px;min-width:0;padding:18px 18px 18px 42px;transition:border-color .3s,box-shadow .3s;display:grid}.project:hover{border-color:#9ac5ff48;box-shadow:0 16px 45px #04060b26}.project-body{align-self:center;min-width:0;padding-block:28px}.project-meta{align-items:center;gap:20px;margin-bottom:19px;display:flex}.project-number{color:#6c87ab;font-family:Space Grotesk,Arial,sans-serif;font-size:11px}.project .eyebrow{letter-spacing:1.2px;color:#9ab0ce;margin:0;font-size:10px}.project h3{letter-spacing:-1.3px;font-size:34px;line-height:1.18}.project-description{color:#aebdd0;max-width:395px;margin:17px 0 24px;font-size:15px;line-height:1.8}.project-tags{flex-wrap:wrap;gap:8px;display:flex}.project-tags>span{color:#a5bcda;background:#8eafe80b;border:1px solid #a4c5f01c;border-radius:5px;padding:4px 9px;font-size:10px}.project details{margin-top:28px}.project summary{width:fit-content;color:var(--blue);cursor:pointer;align-items:center;gap:20px;font-size:12px;list-style:none;display:flex}.project summary::-webkit-details-marker{display:none}.project summary svg{transition:transform .25s}.project details[open] summary svg{transform:rotate(45deg)}.project-details{border-top:1px solid var(--line);gap:23px;margin-top:27px;padding-top:25px;display:grid}.project-details h4{color:#c3d9f5;margin:0 0 7px;font-size:12px;font-weight:500}.project-details p{color:var(--muted);margin:0;font-size:13px;line-height:1.9}.project-visual{isolation:isolate;background:radial-gradient(at 50% 48%,#2845604d,#0000 75%),#0e1723;border:1px solid #9ac5ff13;border-radius:12px;justify-content:center;align-self:stretch;align-items:center;min-width:0;min-height:360px;display:flex;position:relative;overflow:hidden}.visual-grid{z-index:-1;background-image:linear-gradient(#9ac5ff07 1px,#0000 1px),linear-gradient(90deg,#9ac5ff07 1px,#0000 1px);background-size:28px 28px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(#000 30%,#0000 90%);mask-image:radial-gradient(#000 30%,#0000 90%)}.booking-preview,.workbench-preview{background:#121e2ddd;border:1px solid #aacdf238;border-radius:11px;width:min(340px,100% - 48px);padding:16px;transition:transform .6s cubic-bezier(.2,.7,.2,1);transform:perspective(900px)rotateY(-7deg)rotateX(3deg);box-shadow:0 16px 45px #00000035}.project:hover .booking-preview,.project:hover .workbench-preview{transform:perspective(900px)rotateY(0)rotateX(0)translateY(-3px)}.preview-header{border-bottom:1px solid #abc5e51c;align-items:center;gap:9px;padding-bottom:13px;display:flex}.preview-icon{color:#add3ff;background:#91bff31a;border-radius:6px;place-items:center;width:28px;height:28px;display:grid}.preview-header>strong{letter-spacing:-.2px;font-family:Space Grotesk,Arial,sans-serif;font-size:12px;font-weight:500}.preview-dots{gap:3px;margin-left:auto;display:flex}.preview-dots>i{background:#516986;border-radius:50%;width:3px;height:3px}.booking-toolbar{color:#9db4d0;justify-content:space-between;align-items:center;margin:15px 0;font-size:9px;display:flex}.preview-badge{color:#778fac;border:1px solid #adc7e522;border-radius:4px;padding:2px 7px;font-size:8px}.calendar-days,.calendar-cells{grid-template-columns:repeat(5,1fr);gap:5px;display:grid}.calendar-days{color:#6e87a6;text-align:center;margin-bottom:8px;font-size:7px}.calendar-cells>span{background:#283b541f;border:1px solid #95bdf219;border-radius:3px;height:21px}.calendar-cells>.booked{background:linear-gradient(135deg,#89b5f0,#4e7cbe);border-color:#a9caff;box-shadow:0 3px 10px #80b4ef15}.booking-reservation{border-top:1px solid #adc7e51c;align-items:center;gap:10px;margin-top:15px;padding:11px 0 0;display:flex}.reservation-check{width:29px;height:29px;color:var(--mint);background:#9ce0cf09;border:1px solid #9ce0cf22;border-radius:50%;place-items:center;display:grid}.booking-reservation strong{font-size:9px;font-weight:500;line-height:1.4;display:block}.booking-reservation div>span{color:#718da9;font-size:8px;display:block}.reservation-state{color:#a4dacc;background:#9ce0cf0c;border-radius:4px;margin-left:auto;padding:3px 8px;font-size:8px}.visual-caption{text-align:center;letter-spacing:1.5px;color:#5e789a;font-size:8px;position:absolute;bottom:18px;left:20px;right:20px}.workbench-preview{padding-bottom:10px;transform:perspective(900px)rotateY(7deg)rotateX(3deg)}.graph-diagram{aspect-ratio:340/220;width:100%;position:relative}.graph-diagram>svg{width:100%;height:100%;position:absolute;inset:0}.graph-diagram path{fill:none;stroke:#72a3d6;stroke-width:1px;stroke-dasharray:3 5;opacity:.6}.graph-core{color:#162b49;background:linear-gradient(140deg,#aacfff,#72a6e9);border:1px solid #b8d9ff;border-radius:15px;flex-direction:column;justify-content:center;align-items:center;gap:3px;width:60px;height:60px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 7px #91baff0c,0 0 30px #7fb1ee26}.graph-core>span{letter-spacing:1px;font-size:7px}.graph-node{letter-spacing:.3px;color:#b1caeb;background:#1a2b41;border:1px solid #8bafd239;border-radius:5px;justify-content:center;align-items:center;gap:6px;height:29px;padding-inline:9px;font-size:7px;display:flex;position:absolute;transform:translate(-50%,-50%)}.graph-node-0{top:20.4%;left:19.1%}.graph-node-1{top:20.4%;left:80.9%}.graph-node-2{top:79.5%;left:19.1%}.graph-node-3{top:79.5%;left:80.9%}.workbench-flow{color:#7e9cbe;border-top:1px solid #abc5e51c;justify-content:center;align-items:center;gap:11px;padding-top:12px;font-size:8px;display:flex}.workbench-flow>svg{color:#486d99}.github-link{color:#adc1da;border-bottom:1px solid #aecbf12b;margin-top:30px;padding-bottom:8px}.experience-grid{grid-template-columns:1fr 1.1fr;gap:100px;display:grid}.practice-intro,.contact-intro{max-width:420px;color:var(--muted);font-size:15px;line-height:1.95}.practice-list{gap:18px;display:grid}.practice-list article{background:#15202e;border:1px solid #b6d0f21c;border-radius:13px;align-items:start;gap:23px;padding:28px;display:flex}.practice-icon{color:#aacdff;background:#9ac5ff0c;border:1px solid #aacdff12;border-radius:10px;flex-shrink:0;place-items:center;width:45px;height:45px;display:grid}.practice-category{letter-spacing:.8px;text-transform:uppercase;color:#8094ae!important;margin:0 0 8px!important;font-size:9px!important}.practice-list h3{letter-spacing:-.7px;font-size:24px;line-height:1.3}.practice-list p{color:var(--muted);margin:12px 0 0;font-size:13px;line-height:1.9}.contact-grid{grid-template-columns:1fr 1.05fr;gap:90px;display:grid}.contact-direct{margin-top:39px}.contact-direct .eyebrow{color:#8094ae;margin-bottom:10px;font-size:10px}.contact-direct>a{letter-spacing:-.5px;align-items:center;gap:18px;width:fit-content;font-family:Space Grotesk,Arial,sans-serif;font-size:20px;display:flex}.contact-direct>a>svg{color:var(--blue)}.contact-note{color:#6e829f;margin:31px 0 0;font-size:12px}.contact-card{min-width:0;position:relative}.contact-card:before{content:"";pointer-events:none;z-index:-1;background:radial-gradient(#619edf14,#0000 70%);width:100%;height:80%;position:absolute;top:0;right:0}.contact-form{background:linear-gradient(145deg,#172334,#131c29);border:1px solid #a9c8f22b;border-radius:18px;min-width:0;padding:34px;position:relative}.form-required{color:#8ea0b9;margin:0 0 24px;font-size:11px}.contact-form fieldset{border:0;min-width:0;margin:0;padding:0}.form-row{grid-template-columns:1fr 1fr;gap:18px;display:grid}label{color:#c9d5e6;font-size:12px;display:block}input,textarea{width:100%;color:var(--text);background:#0e1622;border:1px solid #9ab6de30;border-radius:7px;margin-top:9px;padding:12px 14px;font-size:14px;line-height:1.6;transition:border-color .2s,box-shadow .2s;display:block}input:hover,textarea:hover{border-color:#a6c5f04d}input:focus,textarea:focus{border-color:#9ac5ff80;box-shadow:0 0 0 3px #9ac5ff0a}textarea{resize:vertical;min-height:150px}textarea::placeholder{color:#657c9a}.form-row+label{margin-top:22px}.form-privacy{color:#8ea0b9;margin:20px 0;font-size:10px;line-height:1.9}.form-privacy a{color:#b5c8e2;text-underline-offset:3px;text-decoration:underline}.challenge{max-width:100%;min-height:0;margin-bottom:20px;overflow:hidden}.form-note,.form-status{color:#bbcbe0;font-size:12px;line-height:1.8}.form-status{margin:17px 0 0}.form-status:empty{display:none}.success{color:#aae0ce}.honeypot{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.contact-form .button{justify-content:space-between;width:100%}.footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:30px;padding-block:34px;display:flex}.footer .wordmark{font-size:31px}.footer .brand-name{font-size:12px}.footer-links{color:#8a9cb5;align-items:center;gap:24px;font-size:11px;display:flex}.back-top{color:#a7c4e8;border:1px solid #adc9eb26;border-radius:8px;place-items:center;width:33px;height:33px;display:grid}.skip-link{z-index:100;background:var(--blue);color:#102039;border-radius:8px;padding:12px 20px;position:fixed;top:-100px;left:20px}.skip-link:focus{top:15px}.legal-page{max-width:800px;padding-block:80px 100px}.legal-page h1{letter-spacing:-2px;overflow-wrap:anywhere;margin:25px 0 45px;font-size:52px;line-height:1.2}.legal-page h2{letter-spacing:-.7px;margin:35px 0 12px;font-size:25px;line-height:1.4}.legal-page p,.legal-page li{color:#adbed4;font-size:15px;line-height:1.9}.legal-page a{color:var(--blue);text-underline-offset:4px;text-decoration:underline}.legal-page address{font-style:normal}.legal-page .eyebrow{font-size:10px}.spin{animation:1s linear infinite spin}[data-reveal]{transition:opacity .75s,transform .75s cubic-bezier(.2,.7,.2,1)}[data-reveal].reveal-pending{opacity:0;transform:translateY(24px)}[data-reveal].reveal-pending:focus-within{opacity:1;transform:none}@keyframes intro-rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes portrait-enter{0%{opacity:0;transform:translateY(20px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes note-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}@media (min-width:1500px){.hero{padding-block:70px 74px}.portrait-stage{height:655px}}@media (max-width:1180px){.container{width:calc(100% - 64px)}.hero{gap:35px}h1{letter-spacing:-4px;font-size:78px}.portrait-stage{height:585px}.brand-name{display:none}.nav{gap:26px}.hero-buttons{gap:20px}.hero-buttons .text-link{font-size:12px}.note-code{left:-10px}.note-ai{right:-5px}.about-grid,.experience-grid{gap:65px}.contact-grid{gap:60px}.service{padding-inline:20px}.service h3{font-size:19px}.project{gap:23px;padding-left:31px}}@media (max-width:960px){.header-inner{gap:22px;min-height:80px}.nav{gap:22px;font-size:12px}.nav-actions{gap:17px}.nav-contact{padding:10px 13px;font-size:11px}.hero{gap:25px;padding-block:48px}h1{letter-spacing:-3.5px;font-size:clamp(58px,8vw,76px)}.hero-role{letter-spacing:1px;font-size:8px}.hero-statement{margin-top:24px;font-size:24px}.hero-intro{font-size:14px}.portrait-stage{aspect-ratio:4/5;height:auto}.portrait-note{gap:9px;padding:11px;font-size:9px}.portrait-note small{font-size:8px}.portrait-note>span{width:29px;height:29px}.note-code{top:70%;left:-3px}.note-ai{top:84%;right:-8px}.portrait-coordinate{font-size:8px}.focus-inner{gap:18px;font-size:10px}.focus-inner>span{gap:11px}.section{padding-block:90px}.about-grid,.experience-grid,.contact-grid{gap:42px}.services-grid{grid-template-columns:repeat(2,1fr);gap:21px}.service{padding:29px}.service h3{font-size:23px}.service p{font-size:14px}.service-top{margin-bottom:29px}.project h3{font-size:29px}.project-description{font-size:14px}.project-visual{min-height:325px}.booking-preview,.workbench-preview{width:calc(100% - 28px);padding:12px}.graph-node{gap:4px;padding-inline:5px;font-size:6px}.graph-node>svg{width:11px}.practice-list article{gap:17px;padding:25px 21px}.contact-form{padding:27px}.form-row{grid-template-columns:1fr;gap:18px}.contact-direct>a{font-size:17px}.footer-brand .brand-name{display:block}}@media (max-width:760px){.container{width:calc(100% - 48px)}.header-inner{min-height:74px}.nav-contact{display:none}.nav{gap:20px;font-size:12px}.hero{grid-template-columns:1fr .9fr;gap:30px}h1{letter-spacing:-2.7px;font-size:clamp(50px,8.5vw,65px)}.hero-statement{letter-spacing:-.5px;font-size:21px}.hero-intro{font-size:13px}.hero-buttons{gap:17px}.hero-buttons .button{gap:15px;padding:14px 17px;font-size:12px}.portrait-stage{height:auto}.portrait-note{border-radius:8px}.portrait-note small,.portrait-coordinate{display:none}.portrait-caption{gap:8px;font-size:8px}.hero-footnote{gap:9px;margin-top:25px;font-size:9px}.focus-inner{gap:15px;font-size:9px}.focus-inner>span{gap:8px}.focus-index{font-size:8px}.section{padding-block:80px}.section-side-note{max-width:190px;font-size:11px}.about-grid{gap:32px}.about-copy .lead{font-size:17px}.about-copy p{font-size:14px}.project{grid-template-columns:1fr 1fr;gap:22px;padding-left:25px}.project-meta{gap:12px}.project .eyebrow{letter-spacing:.7px;font-size:8px}.project-visual{min-height:310px}.calendar-cells>span{height:19px}.preview-header{gap:6px}.preview-header>strong{font-size:10px}.booking-toolbar{font-size:8px}.preview-badge{padding-inline:5px;font-size:7px}.graph-core{border-radius:12px;width:48px;height:48px}.workbench-flow{gap:7px;font-size:7px}.visual-caption{letter-spacing:1px;font-size:6px}.experience-grid,.contact-grid{grid-template-columns:1fr;gap:38px}.practice-intro{max-width:540px;margin-bottom:0}.practice-list article{padding:27px}.contact-form{padding:32px}.form-row{grid-template-columns:1fr 1fr}.contact-intro{max-width:500px}.contact-note{display:none}.footer{align-items:start}.footer-links{flex-wrap:wrap;justify-content:end;gap:17px}.footer-links>span{text-align:right;flex-basis:100%}}@media (max-width:600px){html{scroll-padding-top:90px}.container{width:calc(100% - 40px)}.header-inner{gap:20px;min-height:72px}.wordmark{font-size:32px}.header .brand-name{font-size:11px;display:block}.header .brand-name>span{font-size:8px}.header .brand{gap:12px}.nav-actions{gap:17px}.menu-toggle{color:#d6e6fb;background:#9ac5ff07;border:1px solid #adc9eb26;border-radius:7px;place-items:center;width:34px;height:34px;padding:4px;display:grid}.menu-toggle>svg{width:20px}.nav{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#121c2bf7;border-bottom:1px solid #b7cffa24;flex-direction:column;gap:5px;padding:17px 20px 24px;font-size:15px;display:none;position:absolute;top:72px;left:0;right:0}.nav.is-open{animation:.2s both intro-rise;display:flex}.nav a{padding:10px 8px}.nav a:after{display:none}.hero-shell{background:radial-gradient(at 60% 64%,#25486628,#0000 55%)}.hero{grid-template-columns:1fr;gap:22px;padding-block:43px 30px}.hero-role{letter-spacing:1.2px;margin-bottom:25px;font-size:9px}h1{letter-spacing:-3.7px;font-size:clamp(60px,13.5vw,82px)}.hero-statement{margin-block:23px 18px;font-size:24px}.hero-intro{max-width:410px;margin-bottom:26px;font-size:14px;line-height:1.85}.hero-buttons{gap:22px}.hero-buttons .button{gap:19px;padding:15px 18px;font-size:12px}.hero-buttons .text-link{font-size:12px}.hero-footnote{margin-top:24px;font-size:10px}.hero-portrait{justify-self:center;width:100%;max-width:440px}.portrait-stage{aspect-ratio:4/4.8;height:auto}.portrait-orbit{width:91%;top:12%;left:4%}.orbit-two{width:72%;top:21%;left:14%}.portrait-halo{height:97%;top:0}.portrait-stage>img{-webkit-mask-image:linear-gradient(#000 0% 82%,#0000 100%),linear-gradient(90deg,#0000 0%,#000 12% 88%,#0000 100%);mask-image:linear-gradient(#000 0% 82%,#0000 100%),linear-gradient(90deg,#0000 0%,#000 12% 88%,#0000 100%)}.portrait-note{gap:9px;padding:11px 12px;font-size:10px}.portrait-note>span{width:29px;height:29px}.portrait-note small{font-size:8px;display:block}.note-code{top:70%;left:-3px}.note-ai{top:84%;right:-2px}.portrait-caption{gap:10px;margin-top:-10px;font-size:10px}.focus-inner{grid-template-columns:1fr 1fr;gap:16px 14px;padding-block:23px;font-size:10px;display:grid}.focus-inner>span{gap:11px}.focus-index{font-size:9px}.section{padding-block:68px}h2{letter-spacing:-1.4px;font-size:34px}.eyebrow{margin-bottom:20px;font-size:10px}.section-heading{margin-bottom:28px}.section-header-row{margin-bottom:31px;display:block}.section-side-note{text-align:left;max-width:none;margin:18px 0 0;font-size:12px}.about-grid{grid-template-columns:1fr;gap:31px}.about-grid .section-heading{margin-bottom:24px}.about-copy .lead{font-size:18px}.about-copy p{font-size:14px}.services-grid{grid-template-columns:1fr 1fr;gap:13px}.service{border-radius:12px;padding:23px 18px 27px}.service-top{margin-bottom:27px}.service-icon{width:42px;height:42px}.service-icon>svg{width:23px}.service h3{letter-spacing:-.6px;font-size:19px}.service p{font-size:12px;line-height:1.85}.service-number{font-size:9px}.project-list{gap:23px}.project{border-radius:16px;grid-template-columns:1fr;gap:8px;padding:24px 15px 15px}.project-body{padding:5px 10px 24px}.project-meta{gap:17px;margin-bottom:17px}.project .eyebrow{letter-spacing:.9px;font-size:9px}.project h3{font-size:30px}.project-description{margin-bottom:22px;font-size:14px}.project-tags>span{font-size:10px}.project-visual{min-height:335px}.booking-preview,.workbench-preview{width:min(320px,100% - 28px);padding:16px}.preview-header>strong{font-size:12px}.booking-toolbar{font-size:9px}.preview-badge{font-size:8px}.calendar-cells>span{height:21px}.graph-core{border-radius:15px;width:60px;height:60px}.graph-node{gap:5px;padding-inline:7px;font-size:7px}.graph-node>svg{width:13px}.workbench-flow{gap:10px;font-size:8px}.visual-caption{letter-spacing:1.2px;font-size:7px}.github-link{font-size:12px}.practice-list article{gap:18px;padding:25px 20px}.practice-icon{width:39px;height:39px}.practice-icon>svg{width:21px}.practice-list h3{font-size:23px}.practice-list p{font-size:13px}.practice-category{font-size:8px!important}.contact-grid{gap:34px}.contact-intro{font-size:14px}.contact-direct{margin-top:29px}.contact-direct>a{overflow-wrap:anywhere;gap:14px;font-size:19px}.contact-form{border-radius:14px;padding:26px 21px}.form-row{grid-template-columns:1fr;gap:20px}.contact-form label{font-size:12px}.contact-form input,.contact-form textarea{font-size:16px}textarea::placeholder{font-size:13px}.form-required{font-size:10px}.footer{padding-block:29px;display:block}.footer-brand .brand-name{font-size:12px}.footer-links{justify-content:start;gap:24px;margin-top:25px;font-size:11px}.footer-links>span{text-align:left}.back-top{margin-left:auto}.legal-page{padding-block:45px 65px}.legal-page h1{letter-spacing:-1.5px;font-size:38px}.legal-page h2{font-size:23px}.legal-page p{overflow-wrap:anywhere;font-size:14px}.legal-page address{font-size:14px}}@media (max-width:380px){.container{width:calc(100% - 32px)}.header .brand-name>span{display:none}.header .brand{gap:10px}.nav-actions{gap:12px}h1{letter-spacing:-3px;font-size:58px}.hero-statement{font-size:22px}.hero-buttons{gap:15px}.hero-buttons .button{padding-inline:15px}.hero-buttons .text-link{font-size:11px}.portrait-note{gap:7px;padding:9px;font-size:9px}.portrait-note small{display:none}.services-grid{grid-template-columns:1fr}.service{padding:27px}.service h3{font-size:22px}.service p{font-size:14px}.service-top{margin-bottom:24px}.project h3{font-size:27px}.project-visual{min-height:310px}.booking-preview,.workbench-preview{width:calc(100% - 24px);padding:12px}.contact-card{margin-inline:-8px}.contact-form{padding-inline:10px}.contact-direct>a{font-size:17px}.practice-list article{gap:13px;padding:22px 16px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}[data-reveal].reveal-pending{opacity:1;transform:none}.service:hover,.primary:hover,.booking-preview,.workbench-preview,.project:hover .booking-preview,.project:hover .workbench-preview{transform:none}}
