@font-face{font-family:Favorit;src:local('Favorit Pro Medium'),local('FavoritPro-Medium');font-weight:500;font-display:swap}
@font-face{font-family:Favorit;src:local('Favorit Pro Light'),local('FavoritPro-Light');font-weight:300;font-display:swap}
:root{--ink:#141414;--paper:#fff;--accent:#c0fffd;--line:#d4d4d4;--muted:#535353;--gutter:clamp(22px,4.3vw,84px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;color:var(--ink);background:var(--paper);font-family:Favorit,Arial,Helvetica,sans-serif;font-weight:300;font-size:17px;line-height:1.45}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid #087c79;outline-offset:5px}img{display:block;max-width:100%;height:auto}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:500}::selection{background:var(--accent);color:var(--ink)}.wrap{width:100%;max-width:1800px;padding-inline:var(--gutter);margin-inline:auto}.skip{position:absolute;left:20px;top:-80px;z-index:10;background:var(--accent);padding:12px}.skip:focus{top:10px}.header{display:flex;align-items:center;justify-content:space-between;min-height:108px;gap:32px}.brand{width:190px;flex-shrink:0}.header nav{display:flex;gap:38px;align-items:center;font-size:16px;font-weight:500}.contact-link{border-bottom:1px solid;padding-bottom:5px}.contact-link span{margin-left:20px}.header nav a:hover,.footer a:hover{text-decoration:underline;text-underline-offset:6px}.hero{padding-top:60px;padding-bottom:78px}.eyebrow,.section-label{font-size:14px;font-weight:500;letter-spacing:.02em}.hero .eyebrow{display:flex;justify-content:space-between;border-top:1px solid var(--ink);padding-top:17px;margin-bottom:37px}.hero h1{font-size:clamp(56px,8.7vw,151px);letter-spacing:-.065em;line-height:1.04;margin-left:-.055em}.plus{color:var(--ink);background:var(--accent);display:inline-block;line-height:.78;padding:0 .05em .055em;vertical-align:baseline;letter-spacing:0;margin-right:.035em}.hero-bottom{display:flex;justify-content:space-between;align-items:end;margin-top:36px;gap:30px}.hero-bottom p{font-size:clamp(17px,1.55vw,23px);line-height:1.4;max-width:475px}.underlined{display:inline-flex;align-items:center;justify-content:space-between;gap:50px;border-bottom:1px solid;padding-bottom:9px;font-weight:500;font-size:16px}.work{padding-bottom:110px}.section-label{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--ink);padding-top:17px;margin-bottom:30px}.section-label h2{font-size:inherit}.case-grid{display:grid;grid-template-columns:1fr 1fr;gap:52px 26px}.case.featured{grid-column:1/-1}.case-open{display:block;width:100%;text-align:left;border:0;padding:0;background:none}.case-image{aspect-ratio:1.48;overflow:hidden;position:relative;background:#efefef}.case-image img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease}.featured .case-image{aspect-ratio:2.15}.featured .case-image img{object-position:50% 49%}.case-open:hover .case-image img{transform:scale(1.025)}.case-action{position:absolute;bottom:20px;right:20px;display:inline-flex;gap:28px;align-items:center;background:#fff;padding:12px 18px;font-size:14px;font-weight:500}.case-open:hover .case-action{background:var(--accent)}.case-heading{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-top:18px}.case h3{font-size:clamp(24px,2.2vw,35px);letter-spacing:-.04em}.case-heading>span{font-size:13px;color:var(--muted);text-align:right}.case>p{font-size:16px;margin-top:5px;color:var(--muted)}.about{padding-block:72px 70px;background:var(--accent)}.about h2{font-size:clamp(43px,5.5vw,86px);line-height:1.04;letter-spacing:-.055em;margin-top:42px}.about-intro{font-size:clamp(19px,2vw,27px);max-width:750px;margin:28px 0 55px}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:42px}.services>div{border-top:1px solid #6eacab;padding-top:18px}.service-number{font-size:14px}.services h3{font-size:28px;letter-spacing:-.04em;margin:20px 0 12px}.services p{max-width:330px;font-size:17px}.partners{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:65px;border-top:1px solid #6eacab;padding-top:24px}.partners>span{font-size:14px}.partners>div{display:flex;gap:35px;flex-wrap:wrap}.partners a{font-size:21px;font-weight:500}.partners a:hover{text-decoration:underline;text-underline-offset:5px}.clients{padding-top:78px;padding-bottom:60px}.logos{display:grid;grid-template-columns:repeat(6,1fr);gap:30px;align-items:center}.logos img{width:100%;height:100px;object-fit:contain}.contact{background:var(--ink);color:#fff;padding-block:66px 52px}.contact .eyebrow{color:var(--accent)}.contact h2{font-size:clamp(64px,12.8vw,205px);line-height:1.13;letter-spacing:-.065em;margin:14px 0 32px}.contact h2 a{display:flex;justify-content:space-between;align-items:center}.contact h2 span{font-size:.7em;color:var(--accent);font-weight:300}.contact h2 a:hover{color:var(--accent)}.contact-bottom{display:flex;justify-content:space-between;gap:24px;align-items:start;border-top:1px solid #666;padding-top:26px;font-size:18px}.contact-bottom a:hover{text-decoration:underline}.contact-bottom p{font-size:15px;color:#ccc}.footer{display:flex;justify-content:space-between;gap:24px;padding-block:29px;font-size:14px;flex-wrap:wrap}.footer>div{display:flex;gap:22px}.legal-links{color:var(--muted)}dialog{width:min(1080px,calc(100% - 36px));max-height:calc(100dvh - 36px);border:0;padding:0;color:var(--ink);background:#fff}dialog::backdrop{background:#000b;backdrop-filter:blur(5px)}.dialog-toolbar{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;align-items:center;background:#fff;border-bottom:1px solid var(--line);padding:15px 26px;font-size:14px}.close-dialog{border:0;background:var(--accent);padding:10px 15px;font-size:15px}.close-dialog span{font-size:22px;line-height:.5;margin-left:14px}.dialog-content{padding:36px clamp(22px,5vw,60px) 50px}.dialog-content h2{font-size:clamp(35px,5vw,65px);letter-spacing:-.05em;line-height:1.1;margin:12px 0 20px}.dialog-content>p:not(.eyebrow){font-size:19px;max-width:800px}.dialog-content .underlined{margin-top:32px}#project-media{margin-top:30px}#project-media img,#project-media video{width:100%;height:auto;max-height:65vh;object-fit:contain;background:#151515}#video-message{margin-top:15px;font-size:15px}.locked{overflow:hidden}
@media(min-width:1500px){.featured .case-image{aspect-ratio:2.4}}@media(max-width:950px){.header{min-height:90px}.header nav{gap:22px}.hero{padding-top:34px;padding-bottom:55px}.hero h1{font-size:clamp(53px,9vw,85px)}.hero-bottom p{font-size:18px}.case-heading{display:block}.case-heading>span{display:block;text-align:left;margin-top:5px}.services{gap:24px}.partners{align-items:start}.partners>div{gap:22px}.logos{grid-template-columns:repeat(3,1fr)}.contact-bottom{flex-wrap:wrap}}@media(max-width:600px){body{font-size:16px}.header{gap:12px;min-height:84px;flex-wrap:wrap;padding-top:20px;padding-bottom:20px}.brand{width:145px}.header nav{gap:18px;font-size:14px}.header nav a:nth-child(2){display:none}.contact-link span{margin-left:5px}.hero{padding-top:20px;padding-bottom:45px}.hero .eyebrow{font-size:12px;margin-bottom:30px;gap:20px}.hero h1{font-size:clamp(43px,10.8vw,65px);letter-spacing:-.07em;line-height:1.1}.hero-bottom{flex-direction:column-reverse;align-items:start;margin-top:25px;gap:25px}.hero-bottom p{font-size:17px}.section-label{font-size:13px;margin-bottom:22px}.case-grid{grid-template-columns:1fr;gap:33px}.featured .case-image{aspect-ratio:1.08}.case-image{aspect-ratio:1.25}.case-action{right:13px;bottom:13px;padding:10px 13px;font-size:13px;gap:22px}.case h3{font-size:27px}.case-heading{margin-top:13px}.case>p{font-size:15px}.work{padding-bottom:58px}.about{padding-block:42px}.about .section-label span:last-child{max-width:125px;text-align:right}.about h2{font-size:43px;margin-top:30px}.about-intro{font-size:19px;margin-bottom:36px}.services{grid-template-columns:1fr;gap:26px}.services h3{margin:10px 0;font-size:27px}.services p{max-width:100%}.partners{display:block;margin-top:38px}.partners>div{margin-top:20px;gap:20px}.partners a{font-size:20px}.clients{padding-block:45px 38px}.logos{gap:18px}.logos img{height:70px}.contact{padding-block:40px}.contact h2{font-size:clamp(58px,14vw,84px);margin:20px 0}.contact-bottom{display:grid;gap:17px;font-size:18px}.footer{font-size:13px;padding-block:25px;gap:20px}.footer>div{gap:17px}.dialog-toolbar{padding:12px 16px}.dialog-content>p:not(.eyebrow){font-size:17px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.case-image img{transition:none}}
