@font-face{font-family:'Noto Sans';src:url('../assets/fonts/NotoSans-Regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:'Noto Sans';src:url('../assets/fonts/NotoSans-Medium.ttf') format('truetype');font-weight:500;font-display:swap}
@font-face{font-family:'LT Wave';src:url('../assets/fonts/LTWave-Regular.otf') format('opentype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Archivo;src:url('../assets/fonts/Archivo-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Archivo;src:url('../assets/fonts/Archivo-Medium.ttf') format('truetype');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:Inter;src:url('../assets/fonts/Inter-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
:root{--page:#f5f3ef;--ink:#1c1b1b;--muted:#948c7e;--accent:#f8d185;--link-hover:#cf8900;--white:#fff;--radius:20px;--width:1216px;--section-gap:140px;--motion-duration:300ms;--motion-easing:cubic-bezier(.42,0,.58,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--page);color:var(--ink);font-family:Archivo,'Noto Sans',sans-serif;font-size:18px;font-weight:400;font-synthesis:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.2;font-variation-settings:'wdth' 100}h1,h2,h3,p{margin:0}h2{font-size:36px;font-weight:500;line-height:1.2}h3{font-size:24px;font-weight:500;line-height:1.2}a{color:inherit;text-decoration:none}button{color:inherit;font:inherit;cursor:pointer}img{display:block}button,a{-webkit-tap-highlight-color:transparent}button{border:0}a:focus-visible,button:focus-visible{outline:3px solid #9e772b;outline-offset:5px}.container{width:min(var(--width),calc(100% - 64px));margin-inline:auto}.muted{color:var(--muted)}.button{display:inline-flex;align-items:center;justify-content:center;background:var(--accent);padding:11px 32px 12px;border-radius:12px;line-height:1.3;font-family:Inter,Archivo,sans-serif;font-weight:400;transition:background .2s}.button:hover{background:#f1c572}.header{height:70px;display:flex;justify-content:space-between;align-items:center;padding-block:12px;min-height:70px}.navigation{display:flex;gap:40px;align-items:center}.navigation a,.footer a{transition:color .2s}.navigation a:hover,.footer a:hover{color:var(--link-hover)}.header-actions{display:flex;gap:50px;align-items:center}.languages{display:flex;gap:8px}.languages button{background:transparent;padding:12px 10px;border-radius:12px;border-bottom:2px solid transparent;transition:color .2s}.languages button:not([aria-pressed=true]):hover{color:var(--link-hover)}.languages button[aria-pressed=true]{border-bottom-color:var(--accent);cursor:default}
.hero{height:632px;position:relative;padding-top:60px}.hero h1{font-family:'LT Wave',Archivo,Inter,sans-serif;font-size:150px;line-height:1.2;font-weight:400;white-space:nowrap}.introduction{display:flex;gap:20px;width:690px;margin-top:32px;margin-left:515px}.portrait{width:170px;height:220px;border-radius:19.13px;position:relative;overflow:hidden;flex:none}.portrait-image{position:absolute;width:185.767px;height:248.927px;left:-12.96px;top:-24.92px;object-position:bottom}.portrait-detail{position:absolute;left:160.88px;top:188.91px;transform:scaleX(-1)}.introduction-copy{display:flex;flex-direction:column;gap:20px;flex:1;min-width:0}.intro-footer{display:flex;align-items:last baseline}.intro-footer>.muted{flex:1;min-width:0;width:100%}.local-time{position:relative;left:0;top:0;order:-1;flex:none;width:0;min-width:0;display:flex;align-items:baseline;gap:8px;white-space:nowrap;transform:translateX(var(--clock-offset,-705px))}.local-time time{color:var(--muted);flex:none}.section>h2,.section>.container>h2{margin-bottom:50px}.case-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.case-card{height:650px;position:relative;overflow:hidden;border-radius:var(--radius);background:var(--white);text-align:left;width:100%;padding:0;display:block;--phone-right:40px;--phone-top:230px;--phone-scale:1.18864;transition:background-color var(--motion-duration) var(--motion-easing)}.phone{position:absolute;top:50%;left:50%;width:235.563px;height:480px;transform:translate(-50%,-50%);transform-origin:top right;transition:transform var(--motion-duration) var(--motion-easing)}.phone-screen{position:absolute;width:213.17px;height:463.504px;left:10.88px;top:9.16px}.phone-frame{position:absolute;width:235.563px;height:480px;left:0;top:0}.phone-island{position:absolute;left:83.29px;top:15.46px;width:68.122px;height:19.75px;background:#000;border-radius:28.623px}.phone-island img{position:absolute;left:52.95px;top:4.87px;width:9.732px;height:9.732px;opacity:.6;border-radius:8.587px}.phone-dashboard .phone-screen{width:212.956px;height:461.88px;left:9.78px;top:8.38px}.phone-dashboard .phone-island{width:67.94px;height:19.697px;left:83.54px;top:15.37px}.case-copy{position:absolute;left:40px;top:40px;width:439px;max-width:calc(100% - 80px);display:flex;flex-direction:column;gap:24px;opacity:0;transition:opacity var(--motion-duration) var(--motion-easing);pointer-events:none}.case-voa .case-copy{width:368px}.case-dashboard .case-copy{width:350px}.chips{padding:0;margin:0;list-style:none;display:flex;flex-wrap:wrap;gap:16px;width:262px}.chips li,.chip{background:rgba(255,255,255,.5);border-radius:32px;padding:7px 16px 8px;line-height:1.2;white-space:nowrap}.case-note{position:absolute;left:40px;bottom:40.4px;opacity:0;transition:opacity var(--motion-duration) var(--motion-easing);color:var(--note)}.case-xorder{--hover:#f8e9c9;--note:#9c8d68}.case-mbulak{--hover:#e7ede2;--note:#7e9176}.case-voa{--hover:#eae7ef;--note:#8b7f9e}.case-dashboard{--hover:#e5ebed;--note:#73878e}.case-card:hover,.case-card:focus-visible{background:var(--hover)}.case-card:hover .phone,.case-card:focus-visible .phone{transform:translate(calc(var(--phone-shift-x) - 100%),calc(var(--phone-shift-y) - var(--phone-hover-lift, 0px))) scale(var(--phone-scale))}.case-card:hover .case-copy,.case-card:focus-visible .case-copy{opacity:1;transform:none}.case-card:hover .case-note,.case-card:focus-visible .case-note{opacity:1}
.projects{margin-top:var(--section-gap)}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.project-card{height:270px;border:4px solid white;position:relative;background:white;border-radius:20px;overflow:hidden}.project-card>img{position:absolute;width:100%;aspect-ratio:384/238;object-fit:cover;bottom:-4px;left:0;transition:transform var(--motion-duration) var(--motion-easing);will-change:transform}.project-caption{position:absolute;top:26px;left:0;width:100%;display:flex;align-items:center;flex-direction:column;gap:14px;opacity:0;transition:opacity var(--motion-duration) var(--motion-easing)}.project-caption .chip{background:var(--chip)}.project-russianlab{--chip:#f5f6f7}.project-luma{--chip:#faf5f5}.project-waymark{--chip:#f6f4ef}.project-card:hover .project-caption,.project-card:focus-visible .project-caption{opacity:1;transform:none}.project-card:hover>img,.project-card:focus-visible>img{transform:translateY(97px)}
.experience{background:var(--accent);padding-block:140px;margin-top:140px}.experience-list{display:flex;flex-direction:column;gap:40px}.experience-row{display:flex;justify-content:space-between;gap:60px}.experience-meta{width:334px;flex:none;display:flex;flex-direction:column;gap:15px}.experience-meta>p:first-child{color:#9e772b}.experience-copy{width:690px;display:flex;flex-direction:column;gap:8px}.experience-divider{height:0;position:relative}.experience-divider img{position:absolute;top:0;left:0;transform:rotate(-90deg);transform-origin:.75px .75px}.about{margin-top:140px}.about-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;align-items:start}.about-card{background:#fff;border:4px solid #fff;border-radius:20px;overflow:hidden}.about-photo{display:block;position:relative;width:100%;height:281px;border-radius:16px;overflow:hidden}.about-card>div{padding:20px 16px;display:flex;flex-direction:column;gap:12px}.contact{width:min(1496px,calc(100% - 64px));margin:140px auto 0;padding:140px;background:#fff;border-radius:20px;position:relative}.contact-copy{display:flex;flex-direction:column;align-items:flex-start;gap:20px}.contact-arrow{position:absolute;left:1002.5px;top:45.5px;pointer-events:none}.footer{margin-top:140px;padding-bottom:70px;display:flex;flex-direction:column;gap:20px}.footer-row{display:flex;align-items:end;justify-content:space-between;gap:20px}.footer nav{display:flex;gap:32px}.text-button{padding:0;background:none}.text-button:hover{color:var(--link-hover)}.back-top{position:fixed;right:50px;bottom:50px;width:60px;height:60px;border-radius:100px;background:rgba(255,255,255,.8);backdrop-filter:blur(15px);display:flex;align-items:center;justify-content:center;z-index:5}.back-top:hover{background:#fff}.back-top img{flex:none}dialog{border:0;border-radius:20px;background:var(--page);color:var(--ink);padding:60px;max-width:650px;width:calc(100% - 40px)}dialog::backdrop{background:rgba(28,27,27,.3);backdrop-filter:blur(6px)}dialog h2{margin-bottom:24px}dialog p{margin-bottom:24px}.dialog-close{position:absolute;right:20px;top:14px;font-size:32px;background:none}
@media(max-width:1600px){.contact-arrow{left:auto;right:11%;}.experience-divider{overflow:hidden;height:1.5px}}
@media(max-width:1279px){:root{--section-gap:100px}.introduction{margin-left:auto;width:min(690px,75%)}.hero{height:580px}.hero h1{font-size:clamp(64px,calc(12.4vw - 8px),150px)}.case-card{height:580px;--phone-right:28px;--phone-top:240px;--phone-scale:1.05}.case-copy{left:28px;top:28px;max-width:calc(100% - 56px)}.case-note{left:28px;bottom:28px}.case-copy h3{font-size:22px}.projects,.experience,.about,.contact,.footer{margin-top:100px}.experience{padding-block:100px}.experience-meta{width:30%}.experience-copy{width:60%}.about-grid{gap:16px}.about-photo{height:auto;aspect-ratio:1}.about-card>div{padding:20px 12px}.about-card h3{font-size:22px}.contact{padding:100px 64px}.contact-arrow{right:5%;transform:scale(.8);transform-origin:top right}.back-top{right:24px;bottom:24px}}
@media(max-width:900px){.navigation{gap:20px}.header-actions{gap:50px}.header .button{padding-inline:20px}.hero{height:auto;padding:60px 0 100px}.hero h1{font-size:clamp(58px,9.5vw,85px)}.introduction{width:100%;max-width:690px;margin-top:36px}.introduction h2{font-size:30px}.local-time{position:static;margin-top:32px}.case-card{height:540px;--phone-top:265px;--phone-scale:1}.case-copy h3{font-size:20px}.chips{gap:10px;width:100%}.chips li{font-size:16px;padding-inline:12px}.project-grid{gap:16px}.project-card{height:220px}.project-caption{top:20px}.project-caption h3{font-size:21px}.project-caption .chip{font-size:14px;padding-inline:10px}.project-card:hover>img,.project-card:focus-visible>img{transform:translateY(75px)}.about-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.about-photo{height:281px;aspect-ratio:auto}.about-card h3{font-size:24px}.about-card>div{padding:20px 16px}.contact{padding:90px 40px}.contact-arrow{top:20px;transform:scale(.5)}.contact-copy h2{max-width:70%}.footer-row{font-size:16px}.footer nav{gap:20px}}
@media(max-width:600px){:root{--section-gap:64px}.container{width:calc(100% - 40px)}body{font-size:16px}.header{gap:16px;flex-wrap:wrap;padding-top:16px}.navigation{gap:18px;font-size:14px}.header-actions{margin-left:auto;gap:50px}.header .button{font-size:14px;padding:10px 16px}.languages button{font-size:14px;padding:10px 8px}.hero{padding-top:40px;padding-bottom:64px}.hero h1{font-size:clamp(40px,10vw,60px);white-space:normal}.introduction{flex-direction:column;margin-top:32px;gap:24px}.portrait{width:170px;height:220px}.introduction-copy{gap:16px}.introduction h2{font-size:28px}.local-time{margin-top:24px;font-size:16px}h2{font-size:28px}h3{font-size:22px}.section>h2,.section>.container>h2{margin-bottom:28px}.case-grid{grid-template-columns:1fr;gap:16px}.case-card{height:540px;--phone-top:265px;--phone-scale:1}.case-copy{left:24px;top:24px;max-width:calc(100% - 48px)}.case-note{left:24px;bottom:24px}.project-grid{grid-template-columns:1fr;gap:16px}.project-card{height:auto;aspect-ratio:392/270}.project-card>img{aspect-ratio:384/238}.project-caption{top:26px}.project-caption h3{font-size:24px}.project-caption .chip{font-size:16px}.project-card:hover>img,.project-card:focus-visible>img{transform:translateY(97px)}.projects,.experience,.about,.contact,.footer{margin-top:64px}.experience{padding-block:64px}.experience-list{gap:28px}.experience-row{flex-direction:column;gap:24px}.experience-meta,.experience-copy{width:100%}.experience-meta{gap:8px}.experience-copy{gap:12px}.about-grid{grid-template-columns:1fr;gap:20px}.about-photo{height:auto;aspect-ratio:1}.about-card>div{padding:20px 16px}.about-card h3{font-size:24px}.contact{width:calc(100% - 40px);padding:64px 24px}.contact-arrow{right:20px;top:16px;transform:scale(.3)}.contact-copy h2{max-width:100%;font-size:28px}.contact-copy{gap:20px}.contact-copy p{line-height:1.4}.footer{gap:24px;padding-bottom:100px}.footer-row{align-items:start;flex-direction:column;gap:16px;font-size:14px}.footer nav{gap:24px}.back-top{right:20px;bottom:20px;width:48px;height:48px}dialog{padding:48px 24px}dialog h2{font-size:28px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

.phone-hover{opacity:0}.phone-default,.phone-hover{transition:opacity var(--motion-duration) var(--motion-easing)}.case-card:hover .phone-hover,.case-card:focus-visible .phone-hover{opacity:1}.case-card:hover .phone-default,.case-card:focus-visible .phone-default{opacity:0}
@media(max-width:600px){.header{height:auto}}
@media(min-width:1280px){.about{min-height:558px}}
@media(max-width:600px){.case-card{--phone-right:24px;--phone-scale:.85}html{scroll-padding-top:140px}}

.header-shell{position:sticky;top:0;z-index:20;background:var(--page)}
.phone-artwork{display:block;width:100%;height:100%}

.back-top[hidden]{display:none}

.about-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.about-photo-color{opacity:0;transition:opacity var(--motion-duration) var(--motion-easing)}
@media(hover:hover){.about-card:hover .about-photo-color.is-ready{opacity:1}}
.about-card:focus-visible .about-photo-color.is-ready,.about-card.is-colored .about-photo-color.is-ready{opacity:1}
.about-card:focus-visible{outline:3px solid #9e772b;outline-offset:5px}

@media(max-width:900px){.intro-footer{flex-direction:column;align-items:flex-start}.local-time{position:static;width:auto;order:1;transform:none;margin-top:32px}}
@media(max-width:600px){.local-time{margin-top:24px}}

.contact-copy>.button{margin-top:4px}
