:root{--paper:#f4f2ec;--ink:#171713;--muted:#66645d;--line:#cbc8bd;--coral:#e86148;--coral-text:#a94a39;--panel:#e5e1d8;--project-panel:#efede7;--dark:#1b1b17;--serif:"Instrument Serif", Georgia, serif;--sans:"DM Sans", Arial, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0}body,button,a{letter-spacing:0}a{color:inherit;text-decoration:none}button{color:inherit;font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:3px solid var(--coral);outline-offset:4px}main{overflow:clip}.topbar{border-bottom:1px solid var(--line);z-index:50;background:#f4f2ecf5;justify-content:space-between;align-items:center;height:76px;padding:0 3vw;display:flex;position:sticky;top:0}.brand{align-items:center;gap:11px;font-size:14px;font-weight:600;display:flex}.brand-mark{font-family:var(--serif);border:1px solid;border-radius:50%;flex:none;justify-content:center;align-items:center;width:34px;height:34px;font-size:18px;font-style:italic;display:inline-flex}.nav{align-items:center;gap:27px;font-size:13px;display:flex}.nav>a:not(.nav-cta){transition:opacity .18s}.nav>a:not(.nav-cta):hover{opacity:.55}.nav-cta,.text-link,.contact-email{align-items:center;gap:8px;display:inline-flex}.nav-cta{border-bottom:1px solid var(--ink);padding:7px 0;font-weight:600}.language-switch{border:1px solid var(--line);grid-template-columns:1fr 1fr;width:78px;height:34px;padding:3px;display:grid}.language-switch button{cursor:pointer;background:0 0;border:0;font-size:11px;font-weight:600}.language-switch button.active{background:var(--ink);color:var(--paper)}.icon-button{background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex}.menu-button{width:42px;height:42px;display:none}.hero{min-height:calc(100svh - 76px);padding:58px 3vw 0}.hero-copy{max-width:1500px;margin:0 auto}.hero-kicker,.label,.eyebrow{text-transform:uppercase;font-size:11px;font-weight:600}.hero-kicker{align-items:center;gap:10px;display:flex}.hero-kicker span{background:var(--coral);border-radius:50%;width:7px;height:7px;animation:1.8s infinite pulse}@keyframes pulse{50%{opacity:.35;transform:scale(.75)}}.hero h1{font-family:var(--serif);max-width:1320px;margin:50px 0 42px;font-size:108px;font-weight:400;line-height:.91}.hero h1 em{color:var(--coral);font-weight:400}.hero-bottom{grid-template-columns:minmax(260px,560px) 1fr;align-items:end;gap:38px;max-width:850px;margin-left:42%;display:grid}.hero-bottom p{margin:0;font-size:18px;line-height:1.5}.hero-actions{flex-wrap:wrap;align-items:center;gap:24px;display:flex}.button{border:1px solid #0000;justify-content:center;align-items:center;gap:11px;min-height:48px;padding:0 19px;font-size:13px;font-weight:600;transition:background .18s,color .18s,transform .18s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-dark{background:var(--ink);color:var(--paper)}.button-light{background:var(--paper);color:var(--ink)}.button-coral{background:var(--coral);color:var(--ink)}.text-link{border-bottom:1px solid var(--ink);padding-bottom:6px;font-size:13px;font-weight:600}.hero-work{margin:64px -3vw 0}.hero-work-label{border-bottom:1px solid var(--line);border-top:1px solid var(--line);text-transform:uppercase;padding:12px 3vw;font-size:11px;font-weight:600}.hero-stage{max-width:1480px;height:344px;margin:0 auto;position:relative;overflow:hidden}.hero-shot{background:#fff;border:1px solid #17171347;border-radius:6px 6px 0 0;transition:transform .22s;display:block;position:absolute;overflow:hidden;box-shadow:0 28px 70px #17171333}.hero-shot-left{aspect-ratio:1728/859;z-index:1;width:43%;top:80px;left:-4%;transform:rotate(-4deg)}.hero-shot-main{aspect-ratio:1265/712;z-index:3;width:58%;top:0;left:21%}.hero-shot-right{aspect-ratio:1728/859;z-index:2;width:43%;top:80px;right:-4%;transform:rotate(4deg)}.hero-shot-left:hover{transform:translateY(-10px)rotate(-4deg)}.hero-shot-main:hover{transform:translateY(-10px)}.hero-shot-right:hover{transform:translateY(-10px)rotate(4deg)}.hero-shot img{object-fit:contain;object-position:top center;width:100%;height:100%;display:block}.discipline-strip{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:66px;margin:0 -3vw;padding:0 3vw;display:flex}.discipline-strip span{font-family:var(--serif);font-size:22px}.service-model{background:var(--panel);border-bottom:1px solid var(--line);border-top:1px solid var(--line);grid-template-columns:1.35fr .65fr;gap:7vw;padding:112px 3vw;display:grid}.service-heading h2,.section-intro h2,.studio h2,.index-head h2,.contact h2{font-family:var(--serif);margin:34px 0 0;font-size:78px;font-weight:400;line-height:.96}.service-heading h2 em{color:var(--coral);font-weight:400}.service-details{align-self:end}.service-details>p{font-family:var(--serif);margin:0 0 34px;font-size:27px;line-height:1.15}.service-details ul{border-top:1px solid #1717134d;margin:0 0 34px;padding:0;list-style:none}.service-details li{border-bottom:1px solid #1717134d;align-items:center;gap:11px;min-height:48px;font-size:13px;display:flex}.service-details small{max-width:440px;margin-top:22px;font-size:11px;line-height:1.5;display:block}.selected{background:var(--ink);color:var(--paper);padding:118px 3vw}.section-intro{grid-template-columns:.7fr 1.3fr;align-items:start;margin-bottom:76px;display:grid}.section-intro h2{max-width:900px;margin:0}.label-light{color:#ffffffa1}.feature-list{flex-direction:column;gap:2px;display:flex}.feature{grid-template-columns:38% 62%;min-height:570px;display:grid;position:relative;overflow:hidden}.feature-copy{background:var(--project-panel);color:var(--ink);grid-template-rows:1fr auto;grid-template-columns:44px 1fr;padding:42px;transition:background .22s;display:grid}.feature:hover .feature-copy{background:#e4e0d7}.feature-number{color:var(--coral-text);font-size:11px}.feature-copy h3{font-family:var(--serif);margin:21px 0;font-size:72px;font-weight:400;line-height:.95}.feature-copy p{max-width:430px;margin:0;font-size:15px;line-height:1.55}.visit{grid-column:2;align-items:center;gap:8px;font-size:12px;font-weight:600;display:flex}.feature-visual{background:#ddd;position:relative;overflow:hidden}.feature-visual img{object-fit:cover;object-position:top;width:100%;height:100%;transition:transform .6s cubic-bezier(.2,.7,.2,1);display:block}.feature:hover .feature-visual img{transform:scale(1.02)}.mobile-showcase{border-bottom:1px solid var(--line);padding:120px 3vw}.mobile-showcase-head{grid-template-columns:1.1fr .9fr;align-items:end;gap:8vw;margin-bottom:70px;display:grid}.mobile-showcase h2{font-family:var(--serif);max-width:870px;margin:34px 0 0;font-size:78px;font-weight:400;line-height:.96}.mobile-showcase-summary>p{color:var(--muted);max-width:520px;margin:0 0 35px;font-size:16px;line-height:1.55}.app-stats{border-top:1px solid var(--ink);grid-template-columns:1fr 1fr;display:grid}.app-stats span{color:var(--muted);flex-direction:column;gap:7px;padding:18px 0;font-size:11px;display:flex}.app-stats span+span{border-left:1px solid var(--line);padding-left:22px}.app-stats strong{color:var(--ink);font-family:var(--serif);font-size:42px;font-weight:400;line-height:1}.app-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;margin-bottom:80px;display:grid}.app-showcase-card{background:var(--project-panel);flex-direction:column;min-height:570px;display:flex;overflow:hidden}.app-card-meta{grid-template-columns:54px 1fr 20px;align-items:center;gap:15px;min-height:108px;padding:20px 22px;display:grid}.app-card-meta>img,.app-index-icon img{object-fit:cover;width:100%;height:100%;display:block}.app-card-meta>img{border-radius:12px;width:54px;height:54px}.app-card-meta span{color:var(--muted);text-transform:uppercase;margin-bottom:5px;font-size:10px;display:block}.app-card-meta h3{font-family:var(--serif);margin:0;font-size:25px;font-weight:400;line-height:1.05}.app-screen{border-bottom:1px solid var(--line);border-top:1px solid var(--line);background:#dedbd3;flex:1;justify-content:center;align-items:flex-end;height:390px;padding:28px 24px 0;display:flex;overflow:hidden}.app-screen img{object-fit:contain;object-position:bottom;width:auto;max-width:100%;height:390px;transition:transform .24s;display:block;box-shadow:0 24px 55px #17171333}.app-showcase-card:hover .app-screen img{transform:translateY(-8px)}.app-download{align-items:center;gap:9px;min-height:58px;padding:0 22px;font-size:12px;font-weight:600;display:flex}.mobile-index{border-top:1px solid var(--ink)}.mobile-index-title{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:68px;display:flex}.mobile-index-title>span:last-child{color:var(--muted);font-family:var(--serif);font-size:25px}.mobile-index>a,.mobile-index>div:not(.mobile-index-title){border-bottom:1px solid var(--line);grid-template-columns:38px 46px 1.3fr 1fr 120px 22px;align-items:center;gap:16px;min-height:78px;display:grid}.mobile-index>a{transition:background .18s,padding .18s}.mobile-index>a:hover{background:#e8e5dc;padding:0 12px}.app-index-icon{background:var(--panel);border:1px solid var(--line);font-family:var(--serif);border-radius:10px;justify-content:center;align-items:center;width:42px;height:42px;font-size:21px;display:inline-flex;overflow:hidden}.mobile-index strong{font-family:var(--serif);font-size:22px;font-weight:400}.mobile-index>a>span:nth-of-type(3),.mobile-index>div:not(.mobile-index-title)>span:nth-of-type(3){color:var(--muted);font-size:12px}.app-status{border:1px solid var(--line);border-radius:999px;justify-content:center;justify-self:start;align-items:center;min-height:27px;padding:0 10px;font-size:10px;display:inline-flex}.app-status.live{color:var(--ink);border-color:#1717138c}.app-status.review,.app-status.preparing{color:var(--muted)}.browser-bar{color:var(--ink);z-index:2;background:#f4f2ecf0;align-items:center;gap:5px;max-width:calc(100% - 36px);padding:8px 11px;font-size:10px;display:flex;position:absolute;top:18px;left:18px}.browser-bar i{background:var(--ink);opacity:.32;border-radius:50%;width:5px;height:5px}.browser-bar span{text-overflow:ellipsis;white-space:nowrap;margin-left:6px;overflow:hidden}.studio{background:var(--panel);border-bottom:1px solid var(--line);color:var(--ink);grid-template-columns:.9fr 1.1fr;gap:7vw;padding:120px 3vw;display:grid}.studio h2 em{color:var(--coral);font-weight:400}.studio .label-light{color:var(--muted)}.studio-copy{padding-top:58px}.lead{font-family:var(--serif);margin:0 0 72px;font-size:38px;line-height:1.13}.services{border-top:1px solid #17171347;grid-template-columns:repeat(3,1fr);gap:24px;padding-top:25px;display:grid}.services span{opacity:.6;font-size:10px}.services h3{font-family:var(--serif);margin:21px 0 10px;font-size:29px;font-weight:400}.services p{color:var(--muted);margin:0;font-size:12px;line-height:1.6}.index-section{padding:120px 3vw}.index-head{grid-template-columns:1.4fr .6fr;align-items:end;margin-bottom:70px;display:grid}.index-head h2{max-width:850px}.index-head>p{color:var(--muted);justify-self:end;max-width:430px;margin:0;font-size:16px;line-height:1.55}.filters{flex-wrap:wrap;gap:7px;margin-bottom:34px;display:flex}.filters button{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:999px;min-height:38px;padding:0 16px;font-size:12px}.filters button:hover,.filters button.active{background:var(--ink);border-color:var(--ink);color:var(--paper)}.project-index{border-top:1px solid var(--ink)}.project-index>a{border-bottom:1px solid var(--line);grid-template-columns:48px 1.25fr 1fr 140px 24px;align-items:center;gap:18px;min-height:72px;transition:background .18s,padding .18s;display:grid}.project-index>a:hover{background:#e8e5dc;padding:0 13px}.project-no{color:var(--muted);font-size:10px}.project-index strong{font-family:var(--serif);font-size:23px;font-weight:400}.project-index span:not(.project-no){color:var(--muted);font-size:12px}.contact{background:var(--dark);color:var(--paper);min-height:720px;padding:105px 3vw}.contact h2{max-width:1100px;margin:48px 0 55px;font-size:96px}.contact h2 em{color:var(--coral);font-weight:400}.contact-bottom{grid-template-columns:1fr auto;align-items:end;gap:40px;max-width:800px;margin-left:42%;display:grid}.contact-bottom p{color:#ffffffb8;margin:0;font-size:17px;line-height:1.55}.contact-email{font-family:var(--serif);border-bottom:1px solid #ffffff73;margin-top:90px;padding-bottom:9px;font-size:30px}footer{grid-template-columns:1fr 1fr 1fr;align-items:center;min-height:105px;padding:0 3vw;font-size:11px;display:grid}footer>span:last-child{text-align:right}.footer-brand{font-size:12px}@media (width<=1100px){.hero h1{font-size:82px}.hero-bottom{margin-left:30%}.service-heading h2,.section-intro h2,.mobile-showcase h2,.studio h2,.index-head h2{font-size:62px}.contact h2{font-size:78px}.feature{min-height:500px}.feature-copy{padding:34px}.feature-copy h3{font-size:56px}}@media (width<=900px){.topbar{height:68px;padding:0 20px}.menu-button{display:inline-flex}.nav{background:var(--paper);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:22px;padding:28px 20px;display:none;position:absolute;top:68px;left:0;right:0}.nav.open{display:flex}.nav-cta{align-self:flex-start}.language-switch{width:84px}.hero{min-height:auto;padding:48px 20px 0}.hero h1{margin:44px 0 34px;font-size:66px}.hero-bottom{grid-template-columns:1fr;gap:30px;margin-left:22%}.hero-work{margin:54px -20px 0}.hero-work-label{padding:11px 20px}.discipline-strip{white-space:nowrap;justify-content:flex-start;gap:32px;margin:0 -20px;padding:0 20px;overflow:hidden}.service-model,.studio{grid-template-columns:1fr}.service-model,.selected,.mobile-showcase,.studio,.index-section,.contact{padding:84px 20px}.service-details{max-width:620px}.section-intro,.mobile-showcase-head,.index-head{grid-template-columns:1fr;gap:28px}.section-intro,.mobile-showcase-head{margin-bottom:55px}.app-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.mobile-index>a,.mobile-index>div:not(.mobile-index-title){grid-template-columns:34px 46px 1.3fr .8fr 110px 20px}.feature{grid-template-columns:1fr;min-height:0}.feature-copy{min-height:370px}.feature-visual{height:420px}.studio-copy{padding-top:0}.index-head>p{justify-self:start}.contact{min-height:660px}.contact-bottom{margin-left:25%}.hero-stage{height:254px}.hero-shot{top:76px}.hero-shot-left{width:74%;left:-36%}.hero-shot-main{width:86%;top:18px;left:7%}.hero-shot-right{width:74%;right:-36%}}@media (width<=640px){.brand-name{font-size:13px}.hero{padding-top:38px}.hero h1{margin:38px 0 28px;font-size:52px;line-height:.95}.hero-bottom{margin-left:0}.hero-bottom p{font-size:16px}.hero-actions{flex-direction:column;align-items:flex-start;gap:18px}.discipline-strip span{font-size:19px}.hero-stage{height:224px}.service-model,.selected,.mobile-showcase,.studio,.index-section,.contact{padding:70px 20px}.service-heading h2,.section-intro h2,.mobile-showcase h2,.studio h2,.index-head h2{font-size:48px}.service-details>p{font-size:24px}.feature-copy{grid-template-columns:34px 1fr;min-height:350px;padding:28px 22px}.feature-copy h3{font-size:50px}.feature-copy p{font-size:14px}.feature-visual{height:270px}.app-gallery{grid-template-columns:1fr;margin-bottom:62px}.app-showcase-card{min-height:540px}.app-screen,.app-screen img{height:360px}.mobile-index>a,.mobile-index>div:not(.mobile-index-title){grid-template-columns:28px 42px 1fr auto 18px;gap:11px;min-height:76px}.mobile-index>a>span:nth-of-type(3),.mobile-index>div:not(.mobile-index-title)>span:nth-of-type(3){display:none}.app-status{padding:0 8px;font-size:9px}.browser-bar{max-width:calc(100% - 24px);top:12px;left:12px}.lead{margin-bottom:55px;font-size:30px}.services{grid-template-columns:1fr}.services>div{border-bottom:1px solid #17171333;padding-bottom:22px}.project-index>a{grid-template-columns:32px 1fr 22px;gap:11px;padding:14px 0}.project-index>a>span:nth-of-type(2),.project-category{display:none}.project-index strong{font-size:21px}.contact{min-height:590px}.contact h2{font-size:58px}.contact-bottom{grid-template-columns:1fr;align-items:start;margin-left:0}.contact-email{overflow-wrap:anywhere;max-width:100%;margin-top:70px;font-size:23px}footer{grid-template-columns:1fr;gap:18px;padding:32px 20px}footer>span:last-child{text-align:left}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
