@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(../media/manrope-cyrillic-ext-wght-normal.0x_0bevfais8f.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(../media/manrope-cyrillic-wght-normal.283rlcw9kygwg.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(../media/manrope-greek-wght-normal.1z2_6pqe9b797.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(../media/manrope-vietnamese-wght-normal.3f-auarlwu459.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(../media/manrope-latin-ext-wght-normal.2rod0ve_3h_te.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(../media/manrope-latin-wght-normal.2xs28az5j2efm.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:500;src:url(../media/cormorant-garamond-latin-500-italic.3jacp__n7pxby.woff2)format("woff2"),url(../media/cormorant-garamond-latin-500-italic.3p83cq08hs72m.woff)format("woff")}
:root{--paper:#f2efe7;--ink:#171717;--cobalt:#2448ff;--blue-pale:#c8d2ff;--muted:#9b9b94;--line:#17171733;--sans:"Manrope Variable",Arial,sans-serif;--serif:"Cormorant Garamond",Georgia,serif;--gutter:60px;--gutter-fluid:clamp(22px,4.2vw,82px);--page-content:min(1650px, calc(100vw - 2 * var(--gutter)));--col:calc((var(--page-content) - 11 * var(--gutter)) / 12)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{background:var(--ink);color:var(--paper);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:15px;line-height:1.6}button,input,select,textarea{font:inherit}button,a,input,textarea,select,summary{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}button{cursor:pointer}button:disabled{cursor:wait;opacity:.5}img,video{max-width:100%;display:block}button,summary,a,input,textarea,select{outline-offset:6px}:focus-visible{outline:2px solid var(--cobalt)}::selection{color:var(--paper);background:var(--cobalt)}h1,h2,h3,h4,p,figure{margin:0}h1,h2,h3,h4{letter-spacing:-.045em;font-weight:500;line-height:1.05}em{font-family:var(--serif);font-weight:500}p{max-width:66ch}button{border:0}.skip-link{z-index:100;background:var(--paper);color:var(--ink);padding:12px 24px;position:fixed;top:-90px;left:20px}.skip-link:focus{top:16px}.site-header{z-index:20;padding:28px var(--gutter);background:var(--ink);height:116px;color:var(--paper);align-items:center;gap:38px;display:flex;position:relative}.brand{letter-spacing:-.02em;align-items:center;gap:13px;min-width:270px;font-size:15px;line-height:1.3;display:flex}.brand svg{flex-shrink:0;width:43px;height:43px}.brand>span>span{color:#aaa9a2;letter-spacing:0;margin-top:5px;font-size:11px;display:block}.header-location{color:#aaa9a2;margin-left:auto;font-size:11px;line-height:1.6}.header-location span{color:var(--paper);font-variant-numeric:tabular-nums;display:block}.site-header nav{align-items:center;gap:32px;margin-left:6vw;font-size:13px;display:flex}.site-header nav a{white-space:nowrap;position:relative}.site-header nav a:after{content:"";transform-origin:0;background:currentColor;width:100%;height:1px;transition:transform .22s;position:absolute;bottom:-6px;left:0;transform:scaleX(0)}.site-header nav a:hover:after{transform:scaleX(1)}sup{letter-spacing:0;vertical-align:super;margin-left:4px;font-size:10px}.effects{position:relative}.effects summary{cursor:pointer;align-items:center;gap:7px;font-size:11px;list-style:none;display:flex}.effects summary::-webkit-details-marker{display:none}.effects-icon{font-size:27px;line-height:1;transition:transform .4s;display:block}.effects[open] .effects-icon{transform:rotate(90deg)}.effects-panel{background:var(--paper);width:260px;color:var(--ink);border-radius:4px;padding:16px;position:absolute;top:40px;right:0;box-shadow:0 15px 40px #0004}.effects-panel button{border-bottom:1px solid var(--line);text-align:left;width:100%;color:inherit;background:0 0;justify-content:space-between;align-items:center;gap:15px;padding:14px 5px;font-size:13px;display:flex}.effects-panel button span{color:var(--cobalt)}.effects-panel p{color:#666;margin-top:12px;font-size:11px}.hero{min-height:calc(100svh - 116px);padding:16px var(--gutter) 30px;position:relative;overflow:hidden}.hero-intro{z-index:2;color:#aaa9a2;justify-content:space-between;font-size:12px;line-height:1.6;display:flex;position:relative}.hero-intro p:last-child{text-align:right}.hero-stage-wrap{height:clamp(280px,43svh,510px);margin:-25px -3vw -62px;position:relative}.project-stage{contain:layout paint;width:100%;height:100%;position:relative;overflow:hidden}.spatial-canvas{z-index:2;position:absolute;inset:0}.spatial-canvas>div{width:100%!important;height:100%!important}.stage-orbit{border:1px solid #ffffff0d;border-radius:50%;width:74%;height:53%;position:absolute;top:28%;left:13%;transform:rotate(-13deg)}.stage-orbit:after{content:"";border:1px solid #ffffff06;border-radius:50%;position:absolute;inset:22px -30px}.stage-fallback{perspective:1200px;transition:opacity .5s;position:absolute;inset:0}.scene-ready .stage-fallback{opacity:0}.fallback-browser{width:29%;transform:translateX(calc((var(--i) - 2)*49%)) translateY(calc((var(--i) - 2)*(var(--i) - 2)*9px)) rotate(calc((var(--i) - 2)*4deg));background:#383936;border:1px solid #53534b;border-radius:3px;position:absolute;top:20%;left:35.5%;overflow:hidden;box-shadow:0 20px 70px #0006}.fallback-browser:first-child,.fallback-browser:nth-child(5){z-index:0;scale:.82}.fallback-browser:nth-child(2),.fallback-browser:nth-child(4){z-index:1;scale:.94}.fallback-browser:nth-child(3){z-index:2}.fallback-browser img{aspect-ratio:1.397;object-fit:cover;object-position:top;width:100%;height:auto}.browser-chrome{color:#bcbdb8;background:#383936;align-items:center;gap:4px;height:25px;padding:0 9px;font-size:8px;line-height:1;display:flex}.browser-chrome i{background:#85877e;border-radius:50%;width:4px;height:4px}.browser-chrome span{opacity:.9;margin:auto}.explore-button{z-index:5;color:var(--paper);white-space:nowrap;background:#171717e8;border:1px solid #77796a;border-radius:30px;align-items:center;gap:12px;padding:11px 17px;font-size:11px;transition:border-color .2s,background .2s;display:flex;position:absolute;bottom:45px;left:50%;transform:translate(-50%)}.explore-button:hover{border-color:var(--paper);background:var(--cobalt)}.orbit-icon{font-size:20px;line-height:1}.hero-name{z-index:4;font-family:var(--serif);letter-spacing:-.065em;white-space:nowrap;text-align:center;pointer-events:none;margin-top:0;padding-bottom:.12em;font-size:clamp(92px,min(20.4vw,29svh),350px);font-style:italic;font-weight:500;line-height:.95;position:relative;overflow:hidden}.hero-name span{display:inline-block}.hero-name sup{font-family:var(--sans);letter-spacing:0;font-size:10px;font-style:normal;position:absolute;top:17%;right:0}.hero-foot{grid-template-columns:calc(4 * var(--col) + 3 * var(--gutter)) calc(4 * var(--col) + 3 * var(--gutter)) calc(4 * var(--col) + 3 * var(--gutter));gap:var(--gutter);align-items:end;padding-top:12px;font-size:12px;line-height:1.5;display:grid}.hero-foot>p:first-child{letter-spacing:-.035em;font-size:19px}.hero-foot>p:last-child{text-align:right;color:#aaa9a2}.scroll-link{color:#b6b6ae;justify-self:center;align-items:center;gap:26px;font-size:11px;display:flex}.scroll-link span{color:var(--paper);font-size:25px}.section-kicker{letter-spacing:0;color:inherit;opacity:.7;margin-bottom:30px;font-size:12px;line-height:1.5}.work-section{padding:120px var(--gutter) 70px;background:var(--paper);color:var(--ink)}.work-head{justify-content:space-between;align-items:end;gap:50px;margin-bottom:60px;display:flex}.work-head h2{letter-spacing:-.06em;font-size:clamp(48px,6.2vw,105px);line-height:.98}.work-head h2 em{font-size:1.22em;line-height:1}.work-head>p{color:#62635e;max-width:350px;padding-bottom:8px;font-size:13px}.work-toolbar{justify-content:space-between;align-items:center;gap:20px;margin-bottom:48px;display:flex}.work-filters{flex-wrap:wrap;gap:8px;display:flex}.work-filters button{color:#676861;background:0 0;border-radius:25px;padding:10px 17px;font-size:12px;transition:color .2s,background .2s}.work-filters button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.work-filters button:not([aria-pressed=true]):hover{color:var(--ink);background:#1717170c}.work-filters sup{font-size:8px}.project-count{color:#666;font-size:11px}.work-grid{grid-template-columns:1fr 1fr;align-items:start;gap:85px 5.5vw;display:grid}.work-card-1{padding-top:145px}.work-card-2{grid-column:1/-1;width:83%;margin:0 auto}.work-card-4{padding-top:125px}.work-image{background:var(--project-color);aspect-ratio:1.16;isolation:isolate;border-radius:3px;display:block;position:relative;overflow:hidden}.work-card-2 .work-image{aspect-ratio:1.7}.work-image:before{content:"";background:#0002;position:absolute;inset:0}.work-browser{border-radius:3px;width:87%;transition:transform .65s cubic-bezier(.2,.7,.2,1);position:absolute;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)rotate(-3deg);box-shadow:0 12px 30px #0003}.work-card:nth-child(2n) .work-browser{transform:translate(-50%,-50%)rotate(3deg)}.work-card-2 .work-browser{width:77%;top:62%;transform:translate(-50%,-50%)rotate(-3deg)}.work-image:hover .work-browser{transform:translate(-50%,-50%)rotate(0)scale(1.035)}.work-browser img{aspect-ratio:1.398;object-fit:cover;object-position:top;width:100%;height:auto}.project-kind{background:var(--paper);color:var(--ink);border-radius:2px;padding:5px 9px;font-size:10px;position:absolute;bottom:19px;left:22px}.open-project{background:var(--paper);color:var(--ink);opacity:0;border-radius:50%;justify-content:center;align-items:center;width:88px;height:88px;font-size:10px;transition:opacity .2s,transform .3s;display:flex;position:absolute;top:18px;right:18px;transform:scale(.7)}.work-image:hover .open-project,.work-image:focus-visible .open-project{opacity:1;transform:scale(1)}.work-caption{justify-content:space-between;gap:20px;margin-top:20px;display:flex}.work-caption h3{letter-spacing:-.04em;margin-bottom:8px;font-size:24px}.work-caption p,.work-caption>span{color:#696a62;font-size:11px}.work-description{color:#585953;max-width:44ch;margin-top:15px;font-size:13px}.work-note{color:#68695f;max-width:72ch;margin-top:70px;font-size:11px}.supporting-section{padding:110px var(--gutter);background:var(--paper);color:var(--ink)}.section-heading h2{letter-spacing:-.06em;margin-bottom:28px;font-size:clamp(44px,5.4vw,88px);line-height:1.05}.section-heading>p:not(.section-kicker){color:#686962;max-width:48ch;font-size:14px}#services{border-top:1px solid var(--line);grid-template-columns:1fr 1.1fr;gap:8vw;padding-top:120px;display:grid}#services .section-heading{align-self:start;position:sticky;top:50px}.services-list{border-top:1px solid var(--line)}.service-row{border-bottom:1px solid var(--line);grid-template-columns:1fr;gap:24px;padding:36px 0;display:grid}.service-row h3{letter-spacing:-.045em;font-size:29px}.service-row p{color:#62635d;font-size:14px}.service-row ul{color:#45463e;margin:14px 0 20px;padding:0;font-size:12px;line-height:1.9;list-style:none}.service-row li:before{content:"+";color:var(--cobalt);margin-right:10px}.service-row a{color:var(--cobalt);text-underline-offset:6px;margin-top:20px;font-size:12px;text-decoration:underline;display:inline-block}.service-demo-link{margin-left:20px}.service-extras{margin-top:22px;font-size:11px}summary{cursor:pointer}.service-extras p{margin-top:15px;font-size:12px}.seo-preview{background:#fff;margin:20px 0 0;padding:20px}.seo-preview h4{color:#2348a1;letter-spacing:-.025em;margin-top:15px;font-size:20px}.seo-preview figcaption{opacity:.6;margin-bottom:15px;font-size:10px}.cms-section{padding-top:55px}.cms-section .section-heading{grid-template-columns:1fr 1fr;align-items:end;column-gap:8vw;display:grid}.cms-section .section-heading .section-kicker{grid-column:1/-1}.cms-section .section-heading>p:last-child{padding-bottom:30px}.cms-workspace{background:#e5e2d9;border-radius:5px;grid-template-columns:1fr 1fr;gap:6vw;margin-top:35px;padding:40px;display:grid}.cms-editor{padding:10px 0}.field{min-width:0;margin-bottom:24px;font-size:12px;line-height:1.5;display:block}.field input,.field textarea,.field select{width:100%;color:inherit;background:0 0;border:0;border-bottom:1px solid #74746b;border-radius:0;min-height:44px;margin-top:10px;padding:12px 0;font-size:14px;display:block}.field textarea{resize:vertical;line-height:1.65}.field input::placeholder,.field textarea::placeholder{color:#94958e;opacity:1}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--cobalt)}.form-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.button,.button-secondary{background:var(--cobalt);color:#fff;border-radius:30px;justify-content:center;align-items:center;gap:20px;min-height:46px;padding:14px 23px;font-size:12px;line-height:1.5;transition:background .2s,color .2s;display:inline-flex}.button:hover{background:#1836d6}.button-secondary{color:inherit;background:0 0;border:1px solid #8e8e85;padding:13px 22px}.button-secondary:hover{background:#1717170b}.form-note{max-width:65ch;margin-top:18px;line-height:1.7;color:#76766d!important;font-size:11px!important}.form-status{min-height:20px;color:var(--cobalt);margin-top:12px;font-size:12px;line-height:1.6}.cms-preview{background:#faf7ee;align-self:start;padding:22px;box-shadow:0 5px 20px #1717170a}.cms-preview-meta{color:#696655;justify-content:space-between;gap:15px;margin-bottom:20px;font-size:9px;display:flex}.cms-preview img{aspect-ratio:1.65;object-fit:cover;width:100%}.cms-preview h3{font-family:var(--serif);letter-spacing:-.025em;margin:22px 0 16px;font-size:38px;font-style:italic}.cms-preview p{color:#67665c;font-size:12px}.intro-section{grid-template-columns:.7fr 1.3fr;align-items:center;gap:7vw;padding-top:70px;display:grid}.video-frame video{background:var(--ink);aspect-ratio:16/9;border-radius:3px;width:100%}.video-frame details{color:#66675e;margin-top:16px;font-size:11px}.video-frame details p{margin-top:14px;font-size:13px}.process-section{background:var(--cobalt);color:#fff;grid-template-columns:1fr 1fr;gap:8vw;display:grid}.process-section .section-heading h2{font-family:var(--serif);letter-spacing:-.055em;font-size:clamp(60px,7.2vw,125px);font-style:italic;font-weight:500;line-height:.94}.process-section .section-heading>p:not(.section-kicker){color:#d6dcff}.process-list{align-self:center;margin:0;padding:0;list-style:none}.process-list li{border-top:1px solid #fff4;gap:30px;padding:30px 0;display:flex}.process-list li>span{opacity:.65;font-size:12px}.process-list h3{letter-spacing:-.035em;margin-bottom:16px;font-size:26px}.process-list p{color:#d6dcff;font-size:13px}.about-section{background:var(--ink);color:var(--paper);grid-template-columns:1fr 1fr;align-items:center;gap:9vw;padding-top:130px;padding-bottom:130px;display:grid}.about-portrait{padding:0 12% 0 0;position:relative}.about-portrait img{aspect-ratio:.82;object-fit:cover;object-position:center;filter:grayscale();border-radius:180px 180px 4px 4px;width:100%}.about-portrait:after{content:"Hello.";font-family:var(--serif);color:var(--blue-pale);font-size:clamp(65px,8vw,130px);font-style:italic;position:absolute;bottom:9%;right:0;transform:rotate(-13deg)}.about-portrait figcaption{color:#98998f;margin-top:20px;font-size:10px}.about-copy h2{font-family:var(--serif);letter-spacing:-.045em;margin-bottom:24px;font-size:clamp(55px,6.4vw,100px);font-style:italic}.about-copy h3{letter-spacing:-.03em;max-width:34ch;margin-bottom:25px;font-size:23px;line-height:1.35}.about-copy>p:not(.section-kicker):not(.form-note){color:#aaa9a2;margin-top:18px;font-size:13px}.experience-list{border-top:1px solid #fff3;gap:60px;margin:38px 0 0;padding-top:28px;display:flex}.experience-list dt{font-family:var(--serif);font-size:58px;font-style:italic;line-height:1}.experience-list dd{color:#aaa9a2;max-width:20ch;margin:12px 0 0;font-size:10px}.about-copy .form-note{color:#aaa9a2!important}.about-copy>a{text-underline-offset:7px;margin-top:28px;font-size:12px;text-decoration:underline;display:inline-block}.faq-section{grid-template-columns:.7fr 1.3fr;gap:8vw;display:grid}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{justify-content:space-between;gap:20px;padding:24px 0;font-size:15px;line-height:1.5;list-style:none;display:flex}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{font-size:23px;font-weight:300;transition:transform .2s}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details>p{color:#62635c;max-width:70ch;padding:0 28px 28px 0;font-size:13px;line-height:1.9}.contact-section{background:var(--ink);color:var(--paper);grid-template-columns:1.1fr 1fr;gap:9vw;display:grid}.contact-heading h2{font-family:var(--serif);letter-spacing:-.065em;margin-bottom:45px;font-size:clamp(95px,13vw,200px);font-style:italic;line-height:.88}.contact-heading>p:not(.section-kicker){color:#aaa9a2;max-width:35ch;font-size:13px}.contact-email{letter-spacing:-.03em;overflow-wrap:anywhere;margin-top:35px;font-size:clamp(17px,1.7vw,26px);display:block}.contact-email span{margin-left:10px;display:inline-block}.copy-email-control{margin-top:18px}.copy-email-control .button-secondary{text-underline-offset:5px;border:0;justify-content:start;padding:8px 0;font-size:11px;text-decoration:underline}.contact-section .field{color:#aaa9a2}.contact-section .field input,.contact-section .field textarea,.contact-section .field select{color:var(--paper);border-color:#62635b;padding:15px 0}.contact-section option{background:var(--ink);color:var(--paper)}.contact-section .field input:focus,.contact-section .field textarea:focus,.contact-section .field select:focus{border-color:var(--blue-pale)}.cms-choice{align-items:start;gap:12px;margin:10px 0 35px;font-size:12px;display:flex}.cms-choice input{width:17px;height:17px;accent-color:var(--cobalt);margin-top:2px}.cms-choice small{color:#96978e;margin-top:5px;font-size:10px;display:block}.contact-section .form-status{color:var(--blue-pale)}.contact-section .form-note{color:#aaa9a2!important}.contact-section .button-secondary:hover{background:#ffffff0c}.footer-meta{padding:30px var(--gutter);background:var(--ink);color:#96978e;border-top:1px solid #ffffff2a;justify-content:space-between;gap:25px;font-size:10px;display:flex}.footer-meta>a:first-child{color:var(--paper);font-size:13px}.footer-meta>a:first-child span{margin-left:10px}.gallery-dialog{padding:30px var(--gutter) 20px;background:var(--ink);width:100%;max-width:none;height:100dvh;max-height:none;color:var(--paper);border:0;margin:0;position:fixed;inset:0;overflow:auto}.gallery-dialog::backdrop{background:var(--ink)}.gallery-top{z-index:3;justify-content:space-between;align-items:start;display:flex;position:relative}.gallery-top .section-kicker{margin-bottom:8px;font-size:10px}.gallery-top h2{font-family:var(--serif);letter-spacing:-.03em;font-size:42px;font-style:italic}.close-gallery{color:var(--paper);background:0 0;border:1px solid #73746b;border-radius:30px;align-items:center;gap:20px;padding:10px 18px;font-size:12px;display:flex}.close-gallery span{font-size:24px;line-height:1}.gallery-viewport{height:calc(100dvh - 330px);min-height:200px;margin:0 calc(var(--gutter)*-1);touch-action:pan-y}.stage-gallery .stage-orbit{height:60%;top:25%}.stage-gallery .fallback-browser:nth-child(n){width:min(600px,84%);top:50%;left:50%;transform:translate(-50%,-50%)scale(1);box-shadow:0 20px 70px #0008}.gallery-bottom{grid-template-columns:1fr auto 1fr;align-items:center;gap:30px;display:grid}.gallery-project>span{color:#a1a294;font-size:10px}.gallery-project h3{margin-top:10px;font-size:clamp(25px,3vw,42px)}.gallery-project h3 span{color:var(--blue-pale);margin-left:8px;font-size:24px}.gallery-project p{color:#aaa9a2;margin-top:10px;font-size:11px}.gallery-controls{gap:10px;display:flex}.gallery-controls button{width:50px;height:50px;color:var(--paper);background:0 0;border:1px solid #77796c;border-radius:50%;font-size:20px}.gallery-controls button:hover{background:var(--cobalt);border-color:var(--cobalt)}.gallery-jump{color:#aaa9a2;justify-self:end;max-width:250px;font-size:10px}.gallery-jump select{width:100%;color:var(--paper);background:0 0;border:0;border-bottom:1px solid #77796c;margin-top:5px;padding:10px 20px 10px 0;font-size:13px;display:block}.gallery-jump select option{background:var(--ink)}.gallery-help{color:#95968a;margin-top:25px;font-size:10px}.gallery-help a{text-underline-offset:3px;text-decoration:underline}.case-header{padding:20px var(--gutter);background:var(--paper);color:var(--ink);justify-content:space-between;font-size:12px;display:flex}.case-study{background:var(--paper);color:var(--ink);padding:60px var(--gutter) 110px}.case-hero{max-width:1250px;margin:auto;padding:15px 0 0}.case-hero h1{letter-spacing:-.075em;max-width:12ch;font-size:clamp(60px,9vw,150px);line-height:.98}.case-subtitle{letter-spacing:-.04em;max-width:24ch;margin:30px 0 45px;font-size:clamp(24px,3vw,44px);line-height:1.3}.case-info{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:25px;padding:20px 0;font-size:12px;display:flex}.case-info dt{opacity:.6;margin-bottom:12px;font-size:10px}.case-info dd{margin:0}.case-tags{flex-wrap:wrap;gap:10px;margin:15px 0;padding:0;list-style:none;display:flex}.case-tags li{border:1px solid var(--line);border-radius:20px;padding:6px 12px;font-size:10px}.case-summary{border-top:1px solid var(--line);grid-template-columns:repeat(4,1fr);gap:30px;max-width:none;margin:35px 0;padding:30px 0;font-size:13px;display:grid}.case-summary dt{opacity:.65;margin-bottom:15px;font-size:10px}.case-summary dd{margin:0}.case-cover{margin:60px 0}.case-cover img{border-radius:4px;width:100%;height:auto}.case-cover figcaption{opacity:.65;margin-top:15px;font-size:11px}.case-body{grid-template-columns:.7fr 1fr;gap:7vw;max-width:1150px;margin:auto;padding:30px 0;display:grid}.case-body h2{margin:50px 0 30px;font-size:clamp(35px,4vw,60px)}.case-body p{margin-bottom:20px;font-size:15px;line-height:1.9}.case-prose,.case-evidence{max-width:800px}.case-decisions{grid-template-columns:1fr;gap:10px;padding:0;list-style:none;display:grid}.case-decisions article,.case-decisions li{border-top:1px solid var(--line);padding:25px 0}.case-decisions h4{margin-bottom:20px;font-size:23px}.case-prose>h3{margin:40px 0 22px;font-size:24px}.case-prose ul{padding-left:20px;font-size:13px;line-height:2}.case-evidence{margin:35px 0}.case-evidence figcaption{color:#777;margin-top:12px;font-size:11px}.case-decisions p{font-size:13px}.case-status{background:#e6e4db;margin:55px 0;padding:25px;font-size:13px}.case-cta{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:30px;margin-top:45px;padding:55px 0 0;display:flex}.case-cta h2{font-size:clamp(35px,4vw,65px)}.not-found{min-height:calc(100svh - 116px);padding:30px var(--gutter) 75px;text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex;overflow:hidden}.lost-window{aspect-ratio:1.4;background:var(--paper);width:220px;color:var(--cobalt);border-radius:4px;margin-bottom:35px;position:relative;transform:rotate(-9deg);box-shadow:14px 14px #2448ff}.lost-window>span{letter-spacing:-.09em;font-size:85px;line-height:1.4}.lost-cursor{color:#fff;text-shadow:1px 1px #171717;font-size:55px;position:absolute;bottom:-25px;right:-20px}.not-found .section-kicker{margin-bottom:15px}.not-found h1{font-size:clamp(45px,6vw,75px);line-height:.95}.not-found h1 em{font-size:1.25em}.not-found>p:not(.section-kicker){color:#aaa9a2;margin:25px 0 30px;font-size:13px}html[data-motion=paused],[data-motion=paused] *{scroll-behavior:auto!important}[data-motion=paused] .work-browser,[data-motion=paused] .open-project,[data-motion=paused] .effects-icon{transition:none!important;transform:none!important}[data-motion=paused] .work-browser{transform:translate(-50%,-50%)!important}@media (min-width:1800px){.site-header,.hero,.work-section,.supporting-section,.footer-meta{padding-left:max(var(--gutter),calc((100vw - 1650px)/2));padding-right:max(var(--gutter),calc((100vw - 1650px)/2))}.hero-name{font-size:350px}.hero-stage-wrap{max-width:1800px;margin-left:auto;margin-right:auto}}@media (max-width:1100px){.site-header{gap:20px}.header-location{display:none}.site-header nav{gap:25px;margin-left:auto}.brand{min-width:230px}.effects-label{display:none}.hero-stage-wrap{margin-bottom:-55px}.hero-name{font-size:20vw}.work-head>p{max-width:260px}.work-card-1,.work-card-4{padding-top:90px}.cms-workspace{gap:35px;padding:25px}.intro-section{grid-template-columns:.8fr 1.2fr;gap:4vw}.service-row h3{font-size:25px}.contact-section{gap:6vw}.case-info{grid-template-columns:1fr 1fr}}@media (max-width:760px){html{scroll-padding-top:30px}.site-header{gap:16px;height:92px;padding-top:20px;padding-bottom:20px}.brand{gap:8px;min-width:0;font-size:12px}.brand svg{width:30px;height:30px}.brand>span>span{max-width:120px;font-size:8px;line-height:1.4}.site-header nav{gap:18px;font-size:11px}.site-header nav a:nth-child(2){display:none}.site-header nav sup{margin-left:2px;font-size:7px}.effects-icon{font-size:23px}.hero{min-height:auto;padding-top:15px;padding-bottom:30px}.hero-intro{font-size:10px}.hero-intro p:last-child{max-width:17ch}.hero-stage-wrap{height:370px;margin:-10px -30px -40px}.hero-name{letter-spacing:-.065em;margin:0;font-size:20vw}.hero-name sup{display:none}.explore-button{padding:10px 14px;font-size:10px;bottom:23px}.hero-foot{grid-template-columns:1fr 1fr;gap:20px;padding-top:25px}.hero-foot>p:first-child{font-size:15px}.hero-foot>p:last-child{display:none}.scroll-link{justify-self:end;gap:16px;font-size:10px}.fallback-browser{width:55%;top:21%;left:22.5%}.work-section{padding-top:75px;padding-bottom:55px}.work-head{margin-bottom:35px;display:block}.work-head h2{font-size:57px}.work-head>p{max-width:none;margin-top:28px;font-size:12px}.section-kicker{margin-bottom:24px;font-size:11px}.work-toolbar{margin-bottom:30px;display:block}.work-filters{gap:3px}.work-filters button{padding:10px 12px;font-size:11px}.project-count{margin-top:18px;font-size:10px}.work-grid{grid-template-columns:1fr;row-gap:45px}.work-card-1,.work-card-4{padding:0}.work-card-2{grid-column:auto;width:100%;margin:0}.work-card-2 .work-image{aspect-ratio:1.16}.work-card-2 .work-browser{width:87%;top:50%}.work-caption{margin-top:17px}.work-caption h3{font-size:23px}.work-image{aspect-ratio:1.17}.project-kind{font-size:9px;bottom:14px;left:15px}.work-note{margin-top:45px}.supporting-section{padding-top:70px;padding-bottom:70px}.section-heading h2{margin-bottom:25px;font-size:47px}.section-heading>p:not(.section-kicker){font-size:13px}#services{grid-template-columns:1fr;gap:40px;padding-top:75px}#services .section-heading{position:static}.service-row{gap:18px;padding:30px 0}.service-row p{font-size:13px}.service-demo-link{margin-left:0;display:block!important}.cms-section .section-heading{display:block}.cms-section .section-heading>p:last-child{padding:0}.cms-workspace{grid-template-columns:1fr;gap:35px;margin-top:30px;padding:22px 18px}.cms-preview{padding:18px}.cms-preview h3{font-size:34px}.cms-preview-meta{font-size:8px}.cms-editor .form-actions{gap:10px}.cms-editor .button,.cms-editor .button-secondary{min-height:42px;padding:11px 17px;font-size:10px}.intro-section,.process-section,.about-section,.faq-section,.contact-section{grid-template-columns:1fr;gap:40px}.intro-section{padding-top:35px}.process-section .section-heading h2{font-size:79px}.process-list li{gap:22px}.process-list h3{font-size:24px}.about-section{gap:55px}.about-portrait{max-width:460px;padding-right:10%}.about-portrait img{aspect-ratio:.92;border-radius:140px 140px 4px 4px}.about-portrait:after{font-size:95px}.about-copy h2{font-size:69px}.experience-list{gap:55px}.faq-section{gap:20px}.faq-list summary{padding:21px 0;font-size:14px}.contact-heading h2{font-size:120px}.contact-heading>p:not(.section-kicker){max-width:39ch}.contact-email{font-size:22px}.inquiry-form{margin-top:15px}.footer-meta{grid-template-columns:1fr 1fr;gap:16px;font-size:9px;display:grid}.footer-meta>span:nth-child(2){grid-area:2/1}.footer-meta>a:nth-child(3){text-align:right;grid-area:1/2}.footer-meta>span:last-child{text-align:right}.gallery-dialog{padding-top:24px}.gallery-top h2{font-size:30px}.gallery-top .section-kicker{font-size:9px}.close-gallery{gap:12px;padding:8px 13px;font-size:10px}.gallery-viewport{height:calc(100dvh - 380px);min-height:240px}.gallery-bottom{grid-template-columns:1fr auto;gap:20px}.gallery-project h3{font-size:26px}.gallery-project>span{font-size:9px}.gallery-controls{gap:8px}.gallery-controls button{width:40px;height:40px}.gallery-jump{grid-column:1/-1;justify-self:stretch;align-items:center;gap:20px;max-width:none;display:flex}.gallery-jump select{flex:1;max-width:65%;margin-top:0}.gallery-help{margin-top:18px;font-size:9px}.stage-gallery .fallback-browser{width:84%}.case-study{padding-top:40px;padding-bottom:70px}.case-hero h1{font-size:65px}.case-subtitle{font-size:28px}.case-info{gap:25px}.case-info dd{font-size:11px}.case-summary{font-size:15px}.case-cover{margin:35px 0}.case-body h2{font-size:40px}.case-body p{font-size:13px}.case-decisions{grid-template-columns:1fr;gap:10px}.case-cta{gap:12px}.not-found{min-height:calc(100svh - 92px)}.lost-window{width:180px}.lost-window>span{font-size:70px}}@media (max-width:380px){.site-header{gap:10px}.brand>span{font-size:11px}.brand>span>span{font-size:7px}.site-header nav{gap:12px;font-size:10px}.effects-icon{font-size:20px}.hero-stage-wrap{height:310px}.hero-intro{font-size:9px}.work-filters button{padding:9px 10px}.work-head h2{font-size:50px}.section-heading h2{font-size:41px}.gallery-top h2{font-size:26px}.contact-heading h2{font-size:104px}}@media (max-height:600px) and (min-width:761px){.site-header{height:85px;padding-top:15px;padding-bottom:15px}.hero-stage-wrap{height:290px;margin-bottom:-80px}.hero-name{font-size:17vw}.hero-intro{font-size:10px}.gallery-viewport{height:230px}.gallery-dialog{overflow:auto}.gallery-top h2{font-size:30px}}@media (max-width:1100px){.case-info{flex-wrap:wrap}.case-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.case-body{grid-template-columns:1fr;gap:10px;padding-left:0;padding-right:0}.case-summary{padding-left:0;padding-right:0;font-size:13px}.case-hero,.case-cta{padding-left:0;padding-right:0}.case-info .button{flex-shrink:0}.case-body h2{margin-top:0}}@media (max-width:380px){.case-summary{grid-template-columns:1fr;gap:22px}.case-summary dt{margin-bottom:6px}.case-hero h1{font-size:54px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}.visually-hidden{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.cms-preview{overflow-wrap:anywhere;min-width:0}.portrait-hero{background:#171717;flex-direction:column;min-height:calc(100svh - 116px);padding-top:12px;padding-bottom:30px;display:flex}.portrait-hero .hero-intro{flex-shrink:0;font-size:11px}.hero-composition{flex:1;align-items:center;min-height:570px;display:flex;position:relative}.hero-copy{z-index:3;pointer-events:none;width:52%;padding:35px 0 45px;position:relative}.hero-copy a{pointer-events:auto}.hero-role{color:#a9aaa2;margin-bottom:30px;font-size:11px}.portrait-hero .hero-name{letter-spacing:-.065em;text-align:left;white-space:normal;margin:0 0 26px;padding:0 0 .1em;font-size:clamp(110px,13.2vw,240px);line-height:.77;overflow:visible}.portrait-hero .hero-name>span{display:block}.portrait-hero .hero-name .hero-period{color:var(--cobalt);display:inline}.hero-promise{letter-spacing:-.035em;font-size:20px;line-height:1.4}.hero-actions{flex-wrap:wrap;align-items:center;gap:28px;margin-top:30px;font-size:11px;display:flex}.hero-work-link{align-items:center;gap:18px;display:flex}.hero-work-link>span{background:var(--cobalt);color:#fff;border-radius:50%;place-items:center;width:46px;height:46px;font-size:22px;transition:transform .4s cubic-bezier(.2,.75,.2,1),background .3s;display:grid}.hero-work-link:hover>span,.hero-work-link:focus-visible>span{background:#395cff;transform:rotate(45deg)}.hero-contact-link{color:#b1b2a8;text-underline-offset:6px;-webkit-text-decoration:underline #65665d;text-decoration:underline #65665d}.portrait-stage-wrap{isolation:isolate;width:61%;position:absolute;top:-15px;bottom:5px;right:-3vw}.portrait-stage{touch-action:pan-y;cursor:default;position:absolute;inset:0 0 40px;overflow:hidden}.portrait-stage:before{content:"";pointer-events:none;background:radial-gradient(at 50% 55%,#2448ff0c,#0000 65%);position:absolute;inset:14% 7% 0}.portrait-poster{object-fit:contain;width:100%;height:100%;transition:opacity .45s;position:absolute;inset:0}.portrait-ready .portrait-poster{opacity:0}.portrait-preparing .portrait-poster{opacity:0;transition:none}.portrait-loader{z-index:3;pointer-events:none;position:absolute;inset:0}.portrait-loader svg{width:100%;height:100%;display:block}.portrait-loader-label{text-align:center;color:#c4c6cb;font-variant-numeric:tabular-nums;gap:8px;font-size:13px;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.portrait-loader-label small{color:#8d919a;white-space:nowrap;font-size:9px}.portrait-download-arc{opacity:.75;transition:stroke-dashoffset .12s linear}.portrait-stage:after{content:"";z-index:2;pointer-events:none;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.88' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23n)' opacity='.7' d='M0 0h160v160H0z'/%3E%3C/svg%3E");background-size:160px 160px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(#000,#0000 75%);mask-image:radial-gradient(#000,#0000 75%)}.portrait-air{pointer-events:none;opacity:.2;background-image:radial-gradient(circle at 12% 27%,#bbc3dd 0 .65px,#0000 1.3px),radial-gradient(circle at 83% 44%,#d0d4df 0 .55px,#0000 1.2px),radial-gradient(circle at 28% 72%,#a4acc7 0 .65px,#0000 1.3px),radial-gradient(circle at 91% 18%,#c0c8dc 0 .6px,#0000 1.2px),radial-gradient(circle at 7% 88%,#d0d4df 0 .65px,#0000 1.3px),radial-gradient(circle at 76% 84%,#a4acc7 0 .6px,#0000 1.2px);animation:28s ease-in-out infinite alternate portrait-air-drift;position:absolute;inset:0}.portrait-asleep .portrait-air{animation-play-state:paused}@keyframes portrait-air-drift{0%{transform:translate(-4px,8px)}to{transform:translate(7px,-11px)}}.portrait-canvas{opacity:1;position:absolute;inset:0}.portrait-canvas>div{width:100%!important;height:100%!important}.portrait-caption{color:#9a9c95;z-index:4;justify-content:space-between;align-items:center;gap:16px;font-size:9px;display:flex;position:absolute;bottom:0;left:24%;right:15%}.portrait-controls{gap:4px;display:flex}.portrait-controls button{color:#b9bdb5;background:0 0;border:0;border-radius:50%;place-items:center;width:44px;height:44px;font-size:12px;line-height:1;transition:color .25s;display:grid;position:relative}.portrait-controls button:before{content:"";background:0 0;border:1px solid #ffffff25;border-radius:50%;width:29px;height:29px;transition:background .25s,border-color .25s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.portrait-controls button:hover,.portrait-controls button:focus-visible{color:#fff}.portrait-controls button:hover:before,.portrait-controls button:focus-visible:before{background:var(--cobalt);border-color:var(--cobalt)}.portrait-loading{color:#a7a9a0;font-size:9px;position:absolute;bottom:45px;left:50%;transform:translate(-50%)}.touch-hint{display:none}.portrait-hero .hero-foot{z-index:5;border-top:1px solid #ffffff1a;flex-shrink:0;padding-top:22px;position:relative}.portrait-hero .hero-foot>p:first-child{letter-spacing:0;color:#a9aaa2;font-size:11px}.portrait-hero .hero-foot>p:last-child{font-size:10px}.work-showcase{padding:80px var(--gutter) 45px;background:var(--ink);border-top:1px solid #ffffff1a;position:relative;overflow:hidden}.work-showcase-heading{z-index:3;justify-content:space-between;align-items:end;gap:35px;display:flex;position:relative}.work-showcase-heading h2{font-family:var(--serif);letter-spacing:-.04em;font-size:clamp(42px,5.5vw,88px);font-style:italic}.work-showcase-heading p{color:#a9aaa2;max-width:30ch;font-size:12px}.work-showcase-stage{height:clamp(400px,59svh,720px);margin:0 calc(var(--gutter)*-1) 8px;position:relative}.work-showcase-stage .explore-button{bottom:35px}.work-showcase-list-link{color:#b1b2a8;border-top:1px solid #ffffff24;justify-content:space-between;align-items:center;padding-top:23px;font-size:11px;display:flex}.work-showcase-list-link span{color:var(--paper);font-size:22px}.work-showcase .stage-orbit{border-color:#ffffff09}.site-header nav a{padding:7px 0;position:relative}.site-header nav a:after{content:"";background:var(--paper);transform-origin:0;width:100%;height:1px;transition:transform .3s cubic-bezier(.2,.75,.2,1);position:absolute;bottom:0;left:0;transform:scaleX(0)}.site-header nav a:hover:after,.site-header nav a:focus-visible:after{transform:scaleX(1)}.button,.button-secondary,.gallery-controls button{transition:background .25s,color .25s,transform .2s}.button:active,.button-secondary:active,.gallery-controls button:active{transform:scale(.97)}.work-caption h3 a{background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;transition:background-size .35s}.work-caption h3 a:hover,.work-caption h3 a:focus-visible{background-size:100% 1px}[data-motion=paused] *,[data-motion=paused] :before,[data-motion=paused] :after{transition:none!important;animation:none!important}@media (min-width:1800px){.portrait-hero .hero-name{font-size:240px}.hero-composition{min-height:680px}.portrait-stage-wrap{right:0}}@media (max-width:1100px){.hero-composition{min-height:570px}.portrait-hero .hero-name{font-size:15vw}.portrait-stage-wrap{width:64%;right:-6vw}.hero-copy{width:55%}.hero-actions{gap:20px}.portrait-caption{left:26%;right:12%}.work-showcase-heading p{max-width:25ch}}@media (max-width:760px){.portrait-hero{min-height:0;padding-top:5px;padding-bottom:25px}.portrait-hero .hero-intro{font-size:9px}.hero-composition{align-items:flex-start;min-height:750px;display:block}.hero-copy{z-index:3;width:100%;padding:38px 0 0}.hero-role{margin-bottom:19px;font-size:9px}.portrait-hero .hero-name{letter-spacing:-.055em;white-space:nowrap;margin:0;font-size:20vw;line-height:.95}.portrait-hero .hero-name>span{display:inline}.portrait-hero .hero-name .hero-period{display:none}.hero-promise{max-width:13ch;font-size:15px;line-height:1.45;position:absolute;top:190px}.hero-actions{justify-content:space-between;gap:24px;width:100%;margin:0;position:absolute;top:650px}.hero-work-link{gap:14px;font-size:11px}.hero-work-link>span{width:42px;height:42px}.hero-contact-link{font-size:10px}.portrait-stage-wrap{width:103%;height:450px;top:140px;bottom:auto;right:-16%}.portrait-stage{inset:0 0 43px}.portrait-caption{font-size:8px;bottom:0;left:18%;right:12%}.portrait-controls button{width:44px;height:44px}.portrait-controls button:before{width:30px;height:30px}.portrait-hero .hero-foot{grid-template-columns:1fr 1fr;gap:20px;padding-top:20px}.portrait-hero .hero-foot>p:first-child{font-size:10px}.portrait-hero .hero-foot>p:last-child{display:none}.work-showcase{padding-top:55px;padding-bottom:30px}.work-showcase-heading{display:block}.work-showcase-heading h2{font-size:49px}.work-showcase-heading p{max-width:33ch;margin-top:20px;font-size:11px}.work-showcase-stage{height:400px;margin-top:-12px}.work-showcase-stage .explore-button{bottom:18px}.work-showcase-list-link{padding-top:18px;font-size:10px}}@media (max-width:380px){.hero-composition{min-height:700px}.portrait-hero .hero-name{font-size:20vw}.hero-promise{font-size:13px;top:170px}.portrait-stage-wrap{height:410px;top:130px}.hero-actions{gap:12px;top:600px}.hero-work-link{font-size:10px}.hero-contact-link{font-size:9px}.portrait-caption{left:12%;right:14%}.portrait-hint{max-width:14ch}.work-showcase-heading h2{font-size:42px}.work-showcase-stage{height:350px}}@media (max-height:600px) and (min-width:761px){.portrait-hero{min-height:0}.hero-composition{min-height:470px}.portrait-hero .hero-name{font-size:145px}.hero-role{margin-bottom:20px}.hero-promise{font-size:16px}.hero-actions{margin-top:24px}.portrait-stage-wrap{top:-20px;bottom:10px}.work-showcase-stage{height:390px}}@media (pointer:coarse){.pointer-hint{display:none}.touch-hint{display:inline}.portrait-controls button{width:44px;height:44px}}@media (max-width:540px){:root{--gutter:22px}}@media (min-width:541px) and (max-width:900px){:root{--gutter:34px}}@media (min-width:901px) and (max-width:1280px){:root{--gutter:46px}}@media (min-width:1281px) and (max-width:1680px){:root{--gutter:60px}}@media (min-width:1681px){:root{--gutter:82px}}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:not([tabindex="-1"]):focus-visible{outline-offset:4px;outline:2px solid #38bdf8!important}.immersive-portfolio :is(button,a,input,select,textarea,summary):focus-visible,.upgrade-work-intro :is(button,a,input,select,textarea,summary):focus-visible,.concept-carousel :is(button,a,input,select,textarea,summary):focus-visible{outline-offset:6px;outline:2px solid #38bdf8}
