.langs button:disabled{cursor:default;opacity:.25}

.page-head{padding-block:calc(env(safe-area-inset-top,0px) + 150px) clamp(40px,6vw,80px);display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;align-items:end}
.page-head .crumb{grid-column:1/-1;font-size:12px;color:var(--mute);display:flex;gap:8px}
.page-head .crumb a:hover{color:var(--ink)}
.page-head h1{grid-column:1/8;font-size:clamp(56px,11vw,180px);line-height:.86;font-weight:200;letter-spacing:-.035em;font-variation-settings:"wdth" 68}
.page-head .intro{grid-column:8/13;font-family:var(--f-serif);font-weight:300;font-size:clamp(20px,1.8vw,26px);line-height:1.3;margin:0}
@media (max-width:900px){.page-head h1,.page-head .intro{grid-column:1/-1}}

.filters{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;padding-block:18px;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);position:sticky;top:calc(env(safe-area-inset-top,0px) + 61px);z-index:20;background:var(--lime)}
.filters .chips button{color:var(--ink);border-color:var(--rule)}
.filters .chips button[aria-pressed="true"],.filters .chips button:hover{background:var(--ink);color:var(--lime);border-color:var(--ink)}
.filters .chips sup{font-size:9px;margin-left:3px;opacity:.6}
.views{display:flex;gap:14px;font-size:12px;letter-spacing:.1em;text-transform:uppercase}
.views button{all:unset;cursor:pointer;opacity:.4;padding:4px 0}
.views button[aria-pressed="true"]{opacity:1;border-bottom:1px solid currentColor}
.pcount{font-size:12px;color:var(--mute);font-variant-numeric:tabular-nums}

.pgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(40px,5vw,72px) clamp(14px,2vw,28px);padding-block:48px clamp(90px,10vw,140px)}
.pgrid .card .ph{aspect-ratio:4/3}
.pgrid .card:nth-child(6n+1){grid-column:span 2}
.pgrid .card:nth-child(6n+1) .ph{aspect-ratio:16/10}
.pgrid .card .meta{flex-direction:column;gap:4px}
.pgrid .card .meta span{text-align:left}
.pgrid .card h2{font-size:19px;font-weight:500;letter-spacing:-.01em}
.status{display:inline-block;font-size:10px;letter-spacing:.12em;text-transform:uppercase;padding:4px 7px;background:var(--arena);color:var(--ink);position:absolute;right:12px;top:12px;z-index:2}
.card[hidden],.row[hidden]{display:none}
.pgrid.is-list{display:none}
.plist{display:none;padding-block:24px clamp(90px,10vw,140px)}
.plist.is-on{display:block}
@media (max-width:900px){.pgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.pgrid .card:nth-child(6n+1){grid-column:1/-1}}
@media (max-width:560px){.pgrid{grid-template-columns:1fr}.views{display:none}.filters{top:calc(env(safe-area-inset-top,0px) + 55px)}.filters .chips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-inline:-4px;padding-inline:4px;max-width:100%}.filters .chips button{white-space:nowrap}}

/* project page */
.p-hero{position:relative;height:min(100svh,1000px);min-height:520px;color:var(--lime);overflow:hidden;background:var(--dusk)}
.p-hero img{position:absolute;inset:-5% 0 0 0;width:100%;height:105%;object-fit:cover}
.p-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(22,23,26,.4) 0%,rgba(22,23,26,0) 30%,rgba(22,23,26,0) 50%,rgba(22,23,26,.6) 100%)}
.p-hero .in{position:absolute;z-index:2;left:0;right:0;bottom:0;padding-block:0 clamp(28px,6vh,60px);display:flex;flex-direction:column;gap:14px}
.p-hero .crumb{font-size:12px;opacity:.85;display:flex;gap:8px}
.p-hero h1{font-family:var(--f-serif);font-weight:300;font-size:clamp(44px,8vw,128px);line-height:.95;letter-spacing:-.025em}
.facts-row{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:24px;padding-block:28px;border-bottom:1px solid var(--rule)}
.facts-row div{display:flex;flex-direction:column;gap:6px;min-width:0}
.facts-row dt{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}
.facts-row dd{margin:0;font-size:15px;font-variant-numeric:tabular-nums}
@media (max-width:900px){.facts-row{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:480px){.facts-row{grid-template-columns:repeat(2,minmax(0,1fr))}}
.p-text{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;padding-block:clamp(70px,9vw,130px)}
.p-text .label{grid-column:1/4;color:var(--mute);padding-top:10px}
.p-text .lead{grid-column:4/12;font-family:var(--f-serif);font-weight:300;font-size:clamp(22px,2.4vw,34px);line-height:1.3;margin:0}
.p-text .more{grid-column:4/10;font-size:16px;color:var(--mute);margin:0}
@media (max-width:900px){.p-text .label,.p-text .lead,.p-text .more{grid-column:1/-1}}
.gallery{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(12px,2vw,28px);row-gap:clamp(40px,6vw,90px);padding-block:0 clamp(90px,10vw,140px)}
.gallery figure{margin:0;cursor:zoom-in;overflow:hidden}
.gallery img{width:100%;height:auto}
.gallery .g-full{grid-column:1/-1}
.gallery .g-l{grid-column:1/7;align-self:start}
.gallery .g-r{grid-column:7/13;align-self:end}
.gallery .g-off{grid-column:4/13}
.gallery .g-left{grid-column:1/9}
@media (max-width:700px){.gallery figure{grid-column:1/-1!important}}
.ask{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;border-top:1px solid var(--rule);padding-block:40px}
.ask p{margin:0;font-family:var(--f-serif);font-weight:300;font-size:clamp(22px,2.4vw,32px)}
.ask a{font-size:12px;letter-spacing:.12em;text-transform:uppercase;background:var(--ink);color:var(--lime);padding:16px 22px}
.next{position:relative;display:block;height:clamp(320px,60vh,620px);overflow:hidden;color:var(--lime);background:var(--dusk)}
.next img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.7;transform:scale(1.04);transition:transform 1.6s var(--ease),opacity 1s}
.next:hover img{transform:scale(1);opacity:.85}
.next .in{position:absolute;inset:auto 0 0 0;padding-block:0 clamp(28px,6vh,56px);display:flex;flex-direction:column;gap:10px}
.next .label{opacity:.8}
.next b{font-family:var(--f-serif);font-weight:300;font-size:clamp(40px,7vw,104px);line-height:1;letter-spacing:-.02em}

/* lightbox */
.lb{position:fixed;inset:0;z-index:80;background:#121316;color:var(--lime);display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity .5s var(--ease),visibility 0s .5s}
.lb.open{opacity:1;visibility:visible;transition:opacity .5s var(--ease)}
.lb img{max-width:calc(100vw - 32px);max-height:calc(100svh - 140px);object-fit:contain}
.lb button{all:unset;cursor:pointer;position:absolute;z-index:2;font-size:12px;letter-spacing:.12em;text-transform:uppercase;padding:14px}
.lb .pv,.lb .nx{font-size:20px;background:rgba(18,19,22,.55);width:44px;height:44px;padding:0;display:flex;align-items:center;justify-content:center}
.lb .x{top:calc(env(safe-area-inset-top,0px) + 12px);right:max(12px,env(safe-area-inset-right,0px))}
.lb .pv{left:max(8px,env(safe-area-inset-left,0px));top:50%;transform:translateY(-50%)}
.lb .nx{right:max(8px,env(safe-area-inset-right,0px));top:50%;transform:translateY(-50%)}
.lb .n{position:absolute;bottom:calc(env(safe-area-inset-bottom,0px) + 20px);left:0;right:0;text-align:center;font-size:12px;letter-spacing:.12em;font-variant-numeric:tabular-nums;opacity:.7}

/* studio */
.bigimg{overflow:hidden}
.bigimg img{width:100%;aspect-ratio:21/9;object-fit:cover}
@media (max-width:700px){.bigimg img{aspect-ratio:4/3}}
.cols{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;padding-block:clamp(70px,9vw,130px)}
.cols .label{grid-column:1/4;color:var(--mute);padding-top:8px}
.cols .body{grid-column:4/12;display:grid;grid-template-columns:1fr 1fr;gap:24px 40px;font-size:16px}
.cols .body p{margin:0}
@media (max-width:900px){.cols .label,.cols .body{grid-column:1/-1}.cols .body{grid-template-columns:1fr}}
.founder{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;align-items:center;padding-block:0 clamp(70px,9vw,130px)}
.founder .ph{grid-column:1/5;overflow:hidden}
.founder .ph img{width:100%;aspect-ratio:4/5;object-fit:cover}
.founder .tx{grid-column:7/13;display:flex;flex-direction:column;gap:18px}
.founder h2{font-family:var(--f-serif);font-weight:300;font-size:clamp(36px,4.4vw,64px);line-height:1;letter-spacing:-.02em}
.founder .role{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--clay)}
.founder p{margin:0;max-width:58ch}
@media (max-width:900px){.founder .ph,.founder .tx{grid-column:1/-1}}
.team{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:32px 20px;padding-block:24px clamp(80px,10vw,140px)}
.team figure{margin:0;display:flex;flex-direction:column;gap:10px}
.team .ph{overflow:hidden;background:var(--arena)}
.team img{width:100%;aspect-ratio:4/5;object-fit:cover;filter:grayscale(1) contrast(1.02);transition:filter .8s var(--ease),transform 1.2s var(--ease)}
.team figure:hover img{filter:grayscale(0);transform:scale(1.03)}
.team figcaption{font-size:14px;display:flex;flex-direction:column}
.team figcaption span{font-size:12px;color:var(--mute)}
@media (max-width:900px){.team{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:520px){.team{grid-template-columns:repeat(2,minmax(0,1fr))}}
.sec-h{display:flex;justify-content:space-between;align-items:end;gap:20px;padding-block:clamp(60px,8vw,110px) 0}
.sec-h h2{font-size:clamp(40px,6vw,96px);line-height:.9;font-weight:200;letter-spacing:-.03em;font-variation-settings:"wdth" 70}
.services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 48px;padding-block:40px clamp(80px,10vw,140px)}
.services article{border-top:1px solid var(--ink);padding-block:22px 40px;display:flex;flex-direction:column;gap:12px}
.services h3{font-size:20px;font-weight:500}
.services p{margin:0;color:var(--mute);max-width:56ch}
@media (max-width:820px){.services{grid-template-columns:1fr}}
.logos{display:flex;flex-wrap:wrap;gap:24px 56px;align-items:center;grid-column:4/13;margin-top:36px}
.logos img{height:96px;width:auto;mix-blend-mode:multiply}

/* press */
.clips{columns:3 300px;column-gap:clamp(14px,2vw,28px);padding-block:40px clamp(90px,10vw,140px)}
.clips figure{break-inside:avoid;margin:0 0 clamp(28px,3vw,44px);cursor:zoom-in;display:flex;flex-direction:column;gap:10px}
.clips .ph{overflow:hidden;background:#fff;box-shadow:0 1px 0 var(--rule)}
.clips img{width:100%;height:auto;transition:transform 1.2s var(--ease)}
.clips figure:hover img{transform:scale(1.02)}
.clips figcaption{font-size:13px;display:flex;justify-content:space-between;gap:12px}
.clips figcaption span{color:var(--mute)}
.contact-strip{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;padding-block:clamp(60px,8vw,110px);border-top:1px solid var(--rule)}
.contact-strip .label{grid-column:1/4;color:var(--mute);padding-top:12px}
.contact-strip p:not(.label){grid-column:4/12;margin:0;font-family:var(--f-serif);font-weight:300;font-size:clamp(24px,2.6vw,38px);line-height:1.2}
.contact-strip p em{color:var(--clay)}
@media (max-width:820px){.contact-strip .label,.contact-strip p{grid-column:1/-1}}
