/* Shared Work, Clients and deliverable presentation. */
.site-header nav a[aria-current]{color:var(--ink);font-weight:650;text-decoration:underline;text-underline-offset:7px}
.portfolio-heading{padding-block:72px 44px}.portfolio-heading .eyebrow{font-size:.875rem;color:var(--muted);margin-bottom:18px}.portfolio-heading h1{font-size:clamp(2.6rem,5vw,4.25rem);line-height:1.08;letter-spacing:-.045em;max-width:18ch;text-wrap:balance}.heading-bottom{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-top:24px}.heading-bottom p{max-width:530px;color:var(--muted);font-size:1.0625rem}.heading-bottom a{flex-shrink:0;font-size:.875rem;min-height:44px;display:inline-flex;align-items:center}.collection-count{color:var(--muted);font-size:.875rem;white-space:nowrap}.collection-count span{padding:0 8px;color:var(--control)}
.portfolio-collection{padding-block:36px 80px;border-top:1px solid var(--line)}.deliverable-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:44px 28px}.video-card{min-width:0;scroll-margin-top:24px}.video-stage{aspect-ratio:16/10;position:relative;overflow:hidden;border:1px solid var(--line);border-radius:10px;background:linear-gradient(145deg,#fafbfc,#eef0f3)}.video-launch{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-decoration:none;color:var(--ink)}/* Size the screen from the film, not the dimensions of a padded source poster. */
.poster-device{display:block;position:relative;flex-shrink:0;box-sizing:content-box;overflow:hidden;aspect-ratio:var(--video-aspect);background:#24272d;box-shadow:0 8px 24px #191b2015}
.poster-device img{display:block;width:100%;height:100%;max-height:none;object-fit:cover}
.window-poster{width:88%;border:1px solid #d9dce2;border-radius:6px;padding-top:14px;background:#fff}
.window-poster:before{content:"";position:absolute;top:0;left:0;right:0;height:13px;border-bottom:1px solid var(--line);background:#fff}
.window-poster img{height:auto;aspect-ratio:var(--video-aspect)}
.phone-poster,.tablet-poster,.square-poster{height:calc(86% - 12px);border:6px solid #24272d;border-radius:16px}
.phone-poster{border-width:5px;border-radius:16px}
.phone-poster img{border-radius:10px}
.tablet-poster img{border-radius:9px}
.square-poster{border:1px solid #d9dce2;border-radius:6px}
.play-badge{position:absolute;left:16px;bottom:16px;display:flex;align-items:center;gap:8px;background:white;border:1px solid var(--control);border-radius:6px;padding:8px 12px;font-size:.875rem;box-shadow:0 2px 8px #191b2012;transition:background .15s}.video-launch:hover .play-badge{background:var(--ink);color:#fff}.video-launch:focus-visible{outline-offset:-5px;outline-width:3px;z-index:1}.video-stage video,.video-stage iframe{width:100%;height:100%;position:absolute;inset:0;object-fit:contain;border:0;background:#111}.video-stage video:focus-visible,.video-stage iframe:focus-visible{outline:3px solid #fff;outline-offset:-5px}.video-caption{padding-top:16px}.video-caption h3,.work .video-caption h3{font-size:1.125rem;letter-spacing:-.02em;font-weight:550}.video-type{margin-top:5px;font-size:.875rem;color:var(--muted)}.video-client{display:inline-flex;align-items:center;gap:14px;min-height:44px;font-size:.875rem;color:var(--muted);text-decoration:none}.video-client:hover{text-decoration:underline;color:var(--ink)}.reset-video{position:absolute;top:8px;right:8px;z-index:2;display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid var(--control);border-radius:50%;background:#fff;color:var(--ink);box-shadow:0 2px 8px #191b2012;cursor:pointer}.reset-video:hover{background:var(--surface)}.reset-video:focus-visible{outline-offset:2px}.playback-error{margin-top:8px;font-size:.875rem;color:var(--muted)}
.client-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 24px}.client-card{min-width:0;text-decoration:none}.client-cover{position:relative;aspect-ratio:4/3;overflow:hidden;border-radius:8px;background:var(--surface);border:1px solid var(--line)}.client-cover>img{height:100%;width:100%;object-fit:cover;transition:transform .2s}.client-card:hover .client-cover>img{transform:scale(1.025)}.client-logo{position:absolute;left:12px;bottom:12px;width:112px;height:52px;background:#fff;border-radius:5px;padding:7px;overflow:hidden;display:flex;align-items:center;justify-content:center}.client-logo img{width:100%;height:100%;object-fit:contain;transform:translate(var(--logo-x,0px),var(--logo-y,0px)) scale(var(--logo-scale,1))}.client-logo--monochrome img{filter:brightness(0)}.client-logo--text{font-size:10px;font-weight:700;letter-spacing:.04em;white-space:nowrap;color:#191b20}.client-caption{padding-top:15px}.client-caption h2{font-size:1rem;font-weight:550;line-height:1.4}.client-caption h2 span{float:right;padding-left:8px}.client-caption p{color:var(--muted);font-size:.875rem;margin-top:5px}.client-heading .back-link{margin-bottom:28px}.client-project{padding-block:32px 56px;border-top:1px solid var(--line)}.client-project .section-heading h2{font-size:1.375rem}.client-project:last-of-type{padding-bottom:80px}.home-deliverables{margin-top:48px}.client-carousel{margin-bottom:0}.client-directory-link{display:flex;justify-content:flex-end;margin-top:8px}.all-clients-link{font-size:.875rem;display:inline-flex;align-items:center;min-height:44px;text-decoration:none}.all-clients-link:hover{text-decoration:underline}.logo-group li>a{display:block}.logo-group li>a:focus-visible{outline-offset:-2px}.logo-group li>a img{width:100%}footer>div{display:flex;gap:24px}
@media(max-width:900px){.site-header nav{gap:18px}.client-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.deliverable-grid{grid-template-columns:1fr;gap:32px}.portfolio-heading{padding-block:44px 28px}.heading-bottom{align-items:start;flex-direction:column;gap:16px}.portfolio-collection{padding-block:24px 48px}.portfolio-heading h1{font-size:clamp(2.25rem,8vw,3.5rem)}.client-project{padding-bottom:40px}.site-header{gap:16px}.site-header nav{gap:12px}.site-header nav a{font-size:.875rem}.brand{font-size:1rem}.home-deliverables{margin-top:32px}}
/* Four destinations collapse before they collide with the wordmark. */
@media(min-width:541px) and (max-width:760px){.js .menu-toggle{display:block}.js .site-header nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);border:1px solid var(--control);z-index:5;flex-direction:column;align-items:stretch;padding:12px 20px;gap:0}.js .site-header nav[data-open]{display:flex}.site-header nav a{padding:10px 0}}
@media(max-width:540px){.client-grid{grid-template-columns:1fr}.client-cover{aspect-ratio:16/10}.play-badge{left:12px;bottom:12px;padding:7px 10px}.portfolio-heading h1{overflow-wrap:anywhere}.brand{font-size:1rem}.site-header nav{align-items:stretch}footer>div{gap:18px;flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.client-cover>img,.play-badge{transition:none}}

html:not(.js) .site-header{flex-wrap:wrap}

/* Shared navigation now includes About; allow footer links to wrap. */
footer>div{flex-wrap:wrap;justify-content:flex-end}
@media(max-width:640px){footer{flex-direction:column;gap:12px}footer>div{justify-content:flex-start;gap:12px 24px}footer>span{align-self:flex-start}}
.video-description{margin-top:14px;max-width:60ch;font-size:.9375rem;line-height:1.65;color:var(--muted)}
