/* Presentation is consistent; playback always respects the original frame. */
#hero-title.production-system{font-size:clamp(32px,5.7vw,92px);font-weight:600;line-height:1.12;letter-spacing:-.04em;white-space:normal;margin-top:42px;margin-bottom:30px}
.brand-ci img,.contact-ci-brand img,.about-mark img{filter:none;mix-blend-mode:normal}
.news-section .news-grid{align-items:stretch}
.news-card .recent-image{aspect-ratio:16/9;width:100%;flex:none;overflow:hidden}
.news-card .recent-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 50%}
.news-card .scene-window img{position:absolute;max-width:none;width:var(--scene-width);height:auto;left:var(--scene-left);top:var(--scene-top);object-fit:initial;transform:none}
.news-card:hover .scene-window img{transform:none;filter:brightness(1.04)}
.news-card-copy{display:flex;flex-direction:column;flex:1;padding:24px}
.news-card h3{font-size:23px;line-height:1.4;margin-bottom:14px}
.news-card-copy>p{font-size:16px;line-height:1.65}
.news-card .work-meta{font-size:12px;flex-wrap:wrap;gap:8px 12px}
.news-year{font-size:14px;line-height:1.2}
.video-thumb{aspect-ratio:16/9}
.video-thumb img{object-fit:cover}
.video-card h3{font-size:23px;line-height:1.4}
.video-card>p{font-size:16px;line-height:1.65}
.video-production-year{font-size:13px}
.section-divider{border-top:1px solid var(--line);height:0}
.about-layout>div>p:not(.eyebrow),.company-opening p:not(.eyebrow),.service-card-copy>p,.service-story-copy>p:not(.eyebrow),.service-gallery-grid p,.service-scope p,.service-steps p,.service-inquiry p:not(.eyebrow),.project-notes p,.archive-story>p:not(.eyebrow),.entry-detail,.project-intro>p:not(.eyebrow){font-size:17px;line-height:1.65}
.project-notes h3,.service-card-copy .eyebrow,.service-story-copy>.eyebrow,.service-card-copy .service-arrow,.service-tags li,.service-photo figcaption,.archive-story>p.archive-caption{font-size:13px;line-height:1.6}
.company-opening .eyebrow,.about-layout .eyebrow{font-size:13px;line-height:1.6}
.service-card-copy .eyebrow{min-height:0}
.history-entry-action{width:100%;text-align:left;color:inherit;font:inherit;background:transparent;border-right:0;border-left:0;border-bottom:0;cursor:pointer;text-decoration:none;min-width:0}
.history-entry-action:hover{background:#20271b}
.history-entry-action:hover h3{color:var(--lime)}
.history-entry-action:focus-visible{outline:2px solid var(--lime);outline-offset:6px}
.history-entry-action .entry-link{display:inline-block;min-height:0}
.history-entry-copy,.history-entry-copy h3{min-width:0;overflow-wrap:anywhere}
.history-entry-copy .entry-detail{line-height:1.85;word-break:keep-all;overflow-wrap:anywhere}
.history-entry-copy .entry-detail+.entry-detail{margin-top:1em}
.history-entry-copy .entry-title-en:empty,.history-entry-copy .en:empty{display:none}
.filter,.load-more,.pill-link,.close-dialog,.collection-arrow,.year-label select,.search-label input,.service-jump a{min-height:44px;min-width:44px}
.filter,.load-more,.pill-link,.service-jump a{display:inline-flex;align-items:center;justify-content:center}
.filter-bar{flex-wrap:wrap}
#video-dialog{padding:24px;width:min(1100px,calc(100% - 24px));max-height:94svh;overflow-y:auto;overscroll-behavior:contain}
#video-dialog .dialog-top{position:sticky;top:-24px;background:var(--bg,#101210);z-index:3;padding:8px 0;margin-top:-8px}
#close-video{width:44px;height:44px;flex:0 0 44px}
#video-title{font-size:clamp(22px,3vw,32px);overflow-wrap:anywhere}
#video-role,.video-description,.video-help{font-size:16px;line-height:1.65}
#video-player{--media-ratio:1.777777778;aspect-ratio:var(--media-ratio);width:min(100%,calc(68svh * var(--media-ratio)));height:auto;max-height:none;margin:0 auto 24px;background:#080a07}
#video-player iframe{display:block;width:100%;height:100%;aspect-ratio:var(--media-ratio);border:0}
#video-player.still-view{width:100%;aspect-ratio:auto}
#video-player.still-view img{width:auto;max-width:100%;height:auto;max-height:68svh}
#video-playlist{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 26px}
#video-playlist[hidden]{display:none}
.playlist-track{display:flex;flex-direction:column;text-align:left;border:1px solid #415035;background:#192016;padding:0;color:var(--text);font:inherit;min-width:0;cursor:pointer}
.playlist-track img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}
.playlist-track span{display:block;padding:13px 12px;font-size:14px;line-height:1.5}
.playlist-track[aria-current=true]{border-color:var(--lime);color:var(--lime)}
.playlist-track:focus-visible{outline:2px solid var(--lime);outline-offset:3px}
.essay-section{margin:44px 0}
.essay-section h2{font-size:clamp(24px,3vw,32px);line-height:1.4;letter-spacing:-.035em;margin:12px 0 24px}
.essay-section p{font-size:18px;line-height:1.7;word-break:keep-all;overflow-wrap:anywhere;margin:0 0 24px}
.essay-section .eyebrow{font-size:14px;color:var(--lime);margin-bottom:12px}
.archive-story-images{grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),320px))}
.archive-story-images img{max-height:400px}
.history-entry[data-photo-story]{display:block}
.history-photo-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),320px));align-items:start;gap:24px;margin:24px 0 8px}
.history-entry .history-photo-gallery figure,.archive-story-images figure{display:block;width:100%;max-width:var(--photo-width,320px);margin:0;background:transparent}
.history-photo-gallery img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain;border-radius:2px}
.history-photo-gallery figcaption,.archive-story-images figcaption{display:block;font-size:12px;line-height:1.7;color:var(--muted,#b0b6a8);margin-top:10px;word-break:keep-all;overflow-wrap:anywhere}
.archive-story-images.reference-small:has(figure:nth-child(2)){max-width:none}
@media(max-width:760px){
 #hero-title.production-system{font-size:clamp(26px,7.3vw,52px);font-weight:600;line-height:1.16;letter-spacing:-.035em;margin-top:32px}
 .news-section .news-grid,.video-grid,.project-catalog-grid,.journal-index{grid-template-columns:1fr;gap:30px}
 .news-card h3,.video-card h3{font-size:24px}
 .news-card-copy{padding:22px}
 .news-card-copy>p,.service-card-copy>p,.service-story-copy>p:not(.eyebrow),.service-gallery-grid p,.service-scope p,.service-steps p,.project-notes p,.archive-story>p:not(.eyebrow){font-size:16px;line-height:1.65}
 .news-card .work-meta{font-size:12px}.news-year{font-size:13px}
 .about-layout>div>p:not(.eyebrow){font-size:17px}
 .project-notes,.service-steps{grid-template-columns:1fr}
 .history-entry{grid-template-columns:1fr}.history-entry figure{width:min(100%,320px)}
 #video-dialog{padding:16px;width:calc(100% - 16px);max-height:96svh}
 #video-dialog .dialog-top{top:-16px}
 #video-player{width:min(100%,calc(70svh * var(--media-ratio)))}
 #video-playlist{grid-template-columns:repeat(2,minmax(0,1fr))}
 .essay-section p{font-size:17px}.essay-section h2{font-size:26px}
 .service-card-copy .eyebrow{font-size:12px}
}
@media(prefers-reduced-motion:reduce){.news-card img,.video-thumb img{transition:none;transform:none}}
/* Original vector CI and restrained typography, owner review 18 October. */
#hero-title.production-system{font-size:clamp(30px,4.5vw,72px);font-weight:500;line-height:1.14;letter-spacing:-.035em}
.header .brand-ci img{width:clamp(190px,18vw,270px);height:auto;max-height:none;display:block;padding:0;background:none}
.brand-ci,.contact-ci-brand a,.about-mark{background:none;padding:0}
.contact-ci-brand img{width:clamp(250px,28vw,400px);height:auto;max-height:none;padding:0}
.about-mark img{width:clamp(280px,32vw,480px);max-width:100%;height:auto;padding:0}
.footer .brand-ci img{width:190px;height:auto}
.collection-arrow{width:auto;height:auto;border:0;border-radius:0;font-size:14px;white-space:nowrap;text-decoration:underline;text-underline-offset:6px;padding:8px 0}
.service-arrow{font-weight:400}.status-dot{display:none}
.video-card{content-visibility:auto;contain-intrinsic-size:auto 310px}
#video-player video{display:block;width:100%;height:100%;object-fit:contain}
.video-card h3,.news-card h3{font-size:21px;font-weight:500}
.section-heading h2,.minimal-collection-heading h2,#about-title{font-weight:500}
@media(max-width:760px){
 #hero-title.production-system{font-size:clamp(25px,6.1vw,45px);font-weight:500}
 .header .brand-ci img{width:180px}
 .about-mark img{width:min(340px,100%)}
 .contact-ci-brand img{width:260px;max-width:100%}
 .video-card h3,.news-card h3{font-size:21px}
}
.case-study .project-intro h1{font-size:clamp(32px,4.4vw,62px);font-weight:500;line-height:1.25}
.case-lead{font-size:clamp(20px,2.1vw,28px);line-height:1.5;max-width:840px}
.case-role{font-size:15px;color:var(--muted);margin-top:24px}
.case-hero img{width:100%;max-height:620px;aspect-ratio:16/9;object-fit:cover}
.case-hero figcaption,.case-support figcaption,.case-caption{font-size:13px;color:var(--muted);line-height:1.6;margin:14px 0 0}
.case-copy{display:grid;grid-template-columns:120px minmax(0,800px);gap:40px;padding-top:84px;padding-bottom:50px}
.case-copy h2{font-size:clamp(26px,3vw,36px);line-height:1.4;font-weight:500;margin:0 0 28px}
.case-copy p:not(.eyebrow){font-size:18px;line-height:1.8;color:var(--muted);word-break:keep-all;overflow-wrap:anywhere;margin-bottom:24px}
.case-flow{padding-top:24px;padding-bottom:32px}.case-flow ol{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;padding:0;margin:24px 0;gap:24px}.case-flow li{border-top:1px solid var(--line);padding-top:24px}.case-flow li>span{font-size:13px;color:var(--lime)}.case-flow h3{font-size:24px;font-weight:500;margin:18px 0}.case-flow li p{font-size:16px;color:var(--muted);line-height:1.6}
.case-support img{display:block;width:min(100%,900px);max-height:520px;object-fit:cover}
.case-end{padding-top:30px;padding-bottom:100px}.case-end p{color:var(--muted);font-size:15px;line-height:1.7}.case-end a{margin:24px 28px 0 0}
.case-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;margin-top:30px}
@media(max-width:760px){.case-copy{grid-template-columns:1fr;gap:8px;padding-top:48px;padding-bottom:20px}.case-copy p:not(.eyebrow){font-size:17px}.case-flow ol{grid-template-columns:repeat(2,minmax(0,1fr))}.case-grid{grid-template-columns:1fr}}
.archive-mosaic{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:min(100%,480px);background:transparent;align-self:center}
.archive-mosaic>div{min-width:0;background:#181d16}
.archive-mosaic img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;max-height:none}
.archive-mosaic span{display:block;padding:8px 10px;color:var(--muted);font-size:12px;line-height:1.5}
.essay-cover .archive-mosaic{margin:auto}
.essay-cover:has(.archive-mosaic) figcaption{text-align:center;font-size:13px}
@media(max-width:760px){.archive-mosaic{gap:8px}.archive-mosaic span{font-size:11px}}
.brand.brand-ci{width:clamp(190px,18vw,270px);min-width:0}
.contact-ci-brand>a{max-width:400px;margin-left:0}
.footer .brand.brand-ci{width:190px}
@media(max-width:760px){.brand.brand-ci{width:180px}.contact-ci-brand>a{max-width:100%;margin-left:0}}
@media(max-width:520px){.header-contact{display:none}}
