/* Motion comes from the films themselves. Posters remain as the fallback. */
.index-picture{position:relative}
.has-loop>img{transform:none!important}
.index-card:hover .index-picture img{scale:1}
.cover-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;transition:opacity .5s ease;pointer-events:none}
.cover-video.has-frame{opacity:1}
.project:hover .project-image,.project:focus-visible .project-image{scale:1}
.motion-toggle{display:grid;place-items:center;margin-right:12px!important;opacity:.6}
.motion-toggle svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1}
.motion-toggle .play-mark{display:none}.motion-toggle[aria-pressed=true] .pause-mark{display:none}.motion-toggle[aria-pressed=true] .play-mark{display:block}
/* An opening signal hands a continuous drawing gesture from award to award. */
.recognition{--mark-size:min(192px,calc(100svh - var(--card-height) - 210px));position:absolute;z-index:2;left:50%;top:calc((100svh - var(--card-height) - 54px)/2);width:min(1180px,calc(100% - 96px));height:var(--mark-size);transform:translate(-50%,-50%);color:#171717;pointer-events:none}
.recognition[hidden]{display:none}
.recognition-window{position:relative;width:100%;height:100%;overflow:hidden}
.recognition-slide{position:absolute;inset:0;display:flex;justify-content:center;align-items:center;gap:28px;opacity:0}
.recognition-slide.is-active{opacity:1}
.recognition-slide .award-mark{display:block;width:var(--mark-size);height:var(--mark-size);flex:none;object-fit:contain}
.recognition-slide svg path,.recognition-ink path{vector-effect:non-scaling-stroke;stroke-width:1.4px}
.recognition-name{width:160px;flex:none;font-size:15px;font-weight:400;letter-spacing:-.015em;line-height:1.3}
.recognition-ink{will-change:opacity;position:absolute;inset:0;width:100%;height:100%;opacity:0;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.opening-pending .recognition,.is-entering .recognition{visibility:hidden}
.info-dialog{position:fixed;inset:0;margin:0;width:100%;height:100dvh;overflow:auto}
.info-header{padding:20px var(--gutter);display:flex;align-items:flex-start;justify-content:space-between;min-height:74px}
.info-close{font-size:11px;text-transform:uppercase}
.info-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:70px var(--gutter) 64px}
.info-intro h2{font-size:clamp(42px,7.5vw,120px);font-weight:400;line-height:1;letter-spacing:-.065em}
.info-intro p{text-transform:uppercase;color:var(--muted);font-size:10px;padding-bottom:5px}
.awards-grid,.clients-grid{margin:0;padding:0 var(--gutter) 60px;list-style:none;display:grid}
.awards-grid{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:32px;row-gap:40px}
.award-item{position:relative;border-top:1px solid #d7d4ce;padding:24px 0 20px;min-height:220px}
.info-number{font-size:9px;font-variant-numeric:tabular-nums;color:#8a8781}
.award-item .award-mark{display:block;width:126px;height:126px;margin:3px auto 22px}
.award-item h3{font-size:11px;text-transform:uppercase;font-weight:400;margin:0 0 8px}
.award-item p{font-size:11px;line-height:1.65;color:var(--muted)}
.clients-grid{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:32px}
.clients-grid li{border-top:1px solid #d7d4ce;min-height:115px;padding:26px 0;display:grid;grid-template-columns:30px 1fr;gap:20px;align-items:baseline}
.clients-grid li>span:last-child{font-size:clamp(18px,1.8vw,28px);letter-spacing:-.035em;line-height:1.15;max-width:290px}
.menu-canvas .recognition,.menu-canvas .info-close,.menu-canvas .info-intro{visibility:hidden}
.menu-canvas .info-intro{display:none}.menu-canvas .cover-video{display:none}
.menu-canvas .awards-grid{padding-top:330px;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.menu-canvas .award-item{min-height:160px;padding-top:10px}.menu-canvas .award-item .award-mark{width:170px;margin-bottom:10px}.menu-canvas .award-item h3,.menu-canvas .award-item p,.menu-canvas .award-item>.info-number{display:none}
.menu-canvas .clients-grid{padding-top:330px;grid-template-columns:1fr;gap:0}.menu-canvas .clients-grid li{min-height:76px;padding:24px 0}.menu-canvas .clients-grid li>span:last-child{font-size:26px;max-width:none}
@media(max-width:760px){
 .recognition{--mark-size:min(144px,calc(100svh - var(--card-height) - 268px));top:calc((100svh - var(--card-height) - 62px)/2);width:calc(100% - 32px)}.recognition-slide{gap:18px}.recognition-name{font-size:13px;width:130px}
 .motion-toggle{margin-right:7px!important}.info-header>img{width:132px}.info-header{align-items:center}.info-close{font-size:9px}.info-close span{margin-left:4px}
 .info-intro{display:block;margin:46px var(--gutter) 38px}.info-intro h2{font-size:12.7vw;margin-bottom:26px}.clients-dialog .info-intro h2{font-size:20vw}.info-intro p{font-size:9px}
 .awards-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px;row-gap:16px}.award-item{padding-top:15px;min-height:220px}.award-item .award-mark{width:100%;height:86px;margin:6px auto 20px}.award-item h3,.award-item p{font-size:10px}
 .clients-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px}.clients-grid li{grid-template-columns:18px 1fr;gap:8px;min-height:122px;padding:22px 0}.clients-grid li>span:last-child{font-size:18px}
 .menu-canvas .awards-grid,.menu-canvas .clients-grid{padding-top:265px}.menu-canvas .award-item{min-height:140px}.menu-canvas .award-item .award-mark{width:100%;height:90px}.menu-canvas .clients-grid li{min-height:76px}.menu-canvas .clients-grid li>span:last-child{font-size:23px}
}
@media(max-height:700px) and (min-width:761px){.recognition{--mark-size:clamp(80px,calc(100svh - var(--card-height) - 194px),128px)}}
@media(max-width:760px) and (max-height:700px){.site-description,.site-edition{display:none}.recognition{--mark-size:clamp(78px,calc(100svh - var(--card-height) - 176px),120px);top:calc((100svh - var(--card-height) - 56px)/2)}}
@media(max-height:480px){:root{--card-height:40svh}.gallery-toolbar{bottom:calc(var(--card-height) + 62px)}.recognition{--mark-size:80px;top:88px;width:min(900px,calc(100% - 64px))}.recognition-name{font-size:11px;width:130px}}
@media(prefers-reduced-motion:reduce){.cover-video{display:none}.recognition-ink{display:none}.recognition-slide:not(.is-active){visibility:hidden}}
