
:root{--paper:#f1eee7;--ink:#242822;--line:#c9c9bd}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,'Hiragino Kaku Gothic ProN',Meiryo,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid #a2b6a7;outline-offset:6px}header{position:fixed;z-index:20;inset:0 0 auto;height:94px;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;padding:0 45px;color:#fff;transition:background .4s,color .4s}header.scrolled{background:var(--paper);color:var(--ink);border-bottom:1px solid #24282215}.logo{justify-self:center;width:122px;line-height:0}.logo img{width:100%;height:auto}header.scrolled .logo img{filter:brightness(0)}.menu-toggle{display:flex;align-items:center;gap:13px;border:0;background:none;color:inherit;padding:12px 0;width:max-content;font-size:10px;letter-spacing:1.8px}.bars{width:22px;display:grid;gap:6px}.bars i{height:1px;background:currentColor;display:block}.top-contact{justify-self:end;font-size:10px;letter-spacing:1.8px}.top-contact span{margin-left:18px}.hero{height:100svh;min-height:600px;position:relative;overflow:hidden;background:#202b29}.hero video,.hero>.poster{position:absolute;width:100%;height:100%;object-fit:cover}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(#0004,transparent 40%,#0005);pointer-events:none}.hero-bottom{position:absolute;z-index:2;bottom:40px;left:45px;right:45px;color:#fff;display:flex;align-items:end;justify-content:space-between}.eyebrow{font-size:10px;letter-spacing:2px;line-height:1.7;text-transform:uppercase}.hero-bottom p{margin:0}.hero-bottom .reel{background:none;border:0;color:white;border-bottom:1px solid #ffffff80;padding:0 0 12px;font-size:10px;letter-spacing:1.6px}.reel span{padding-right:16px}.scroll-cue{position:absolute;bottom:40px;left:50%;z-index:3;color:white;font:24px Georgia}.intro{padding:145px 25px 140px;text-align:center}.intro .eyebrow{margin:0 0 40px;color:#687063}.intro h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(36px,4.3vw,62px);line-height:1.2;font-weight:400;letter-spacing:-1.6px;margin:0 auto;max-width:950px}.intro em{font-weight:400}.intro .body-copy{font-size:13px;letter-spacing:.6px;margin-top:36px;line-height:2}.work-section{display:grid;grid-template-columns:26% 1fr;gap:6%;padding:15px 45px 130px}.section-aside{align-self:start;position:sticky;top:135px}.section-aside h2{font-size:12px;font-weight:400;letter-spacing:2px;margin:0 0 30px}.section-aside p{font-size:13px;line-height:1.9;max-width:220px;color:#60665c}.text-link{display:inline-flex;gap:40px;align-items:center;font-size:10px;letter-spacing:1.1px;border-bottom:1px solid #999f91;padding:14px 0;margin-top:20px}.projects{display:grid;grid-template-columns:1fr 1fr;gap:55px 25px}.project{margin:0}.project.wide{grid-column:1/-1}.project a{display:block}.project .frame{overflow:hidden;background:#d0cdbf;aspect-ratio:16/9;position:relative}.project img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1s}.project a:hover img{transform:scale(1.035)}.project .number{position:absolute;left:15px;top:15px;background:#f1eee7e6;padding:7px 9px;font-size:9px;letter-spacing:1px}.project figcaption{display:flex;justify-content:space-between;align-items:center;padding-top:15px;gap:10px}.project h3{font-size:11px;font-weight:400;letter-spacing:1.3px;margin:0}.project figcaption span{font-size:9px;letter-spacing:1px;color:#707468}.interlude{position:relative;height:65vw;max-height:680px;min-height:360px;overflow:hidden;background:#25372f}.interlude img{width:100%;height:100%;object-fit:cover;object-position:center 55%}.interlude:after{content:'';position:absolute;inset:0;background:#0002}.interlude p{position:absolute;z-index:1;bottom:40px;left:45px;color:white;font-family:Georgia,serif;font-size:clamp(30px,5vw,65px);margin:0;line-height:1.1}.about{padding:140px 45px;display:grid;grid-template-columns:32% 1fr;gap:0}.about h2{font-size:12px;letter-spacing:2px;font-weight:400}.about h3{font-family:Georgia,serif;font-weight:400;font-size:clamp(36px,4.4vw,62px);line-height:1.15;margin:0 0 35px;letter-spacing:-1px}.about .body-copy{max-width:510px;line-height:1.9;font-size:14px;color:#60665c}.about-links{display:flex;gap:35px;flex-wrap:wrap}.contact{background:#dfe2d8;padding:85px 45px 35px}.contact .eyebrow{margin:0 0 30px}.contact .big-contact{font-family:Georgia,serif;font-size:clamp(48px,8vw,110px);letter-spacing:-2px;display:flex;justify-content:space-between;align-items:center;line-height:1.2;padding-bottom:65px}.contact .big-contact span{font-family:Arial;font-size:.5em;font-weight:200}.footer{border-top:1px solid #a5ac9c;padding-top:25px;display:flex;align-items:start;justify-content:space-between;gap:30px;font-size:10px;line-height:2;letter-spacing:.4px}.footer p{margin:0}.footer-nav{display:flex;gap:25px}.menu{border:0;inset:0;padding:130px 10vw 60px;background:var(--paper);color:var(--ink);width:100%;height:100%;max-width:none;max-height:none;margin:0}.menu::backdrop{background:#f1eee7}.menu-close{position:absolute;right:45px;top:35px;background:none;border:0;font-size:11px;letter-spacing:2px}.menu nav{display:flex;flex-direction:column;align-items:start;gap:15px}.menu nav a{font:clamp(38px,6vw,75px) Georgia,serif}.menu nav a:hover{font-style:italic}.menu p{margin-top:45px;font-size:11px;letter-spacing:2px}.film-dialog{border:0;padding:0;width:min(1200px,95vw);background:#101411;color:#fff;max-width:none}.film-dialog::backdrop{background:#000d}.film-dialog video{display:block;width:100%;max-height:80vh}.film-close{display:block;margin-left:auto;padding:17px 22px;background:none;border:0;color:#fff;font-size:11px;letter-spacing:2px}.reveal{animation:appear .9s both}@keyframes appear{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:700px){header{height:74px;padding:0 22px}.logo{width:95px}.menu-toggle{font-size:0}.top-contact{font-size:9px;letter-spacing:1px}.top-contact span{display:none}.hero{min-height:550px}.hero-bottom{left:22px;right:22px;bottom:30px}.hero-bottom .eyebrow{font-size:8px;letter-spacing:1px}.scroll-cue{bottom:80px}.intro{padding:90px 23px}.intro h1{letter-spacing:-.9px}.intro .body-copy{font-size:11px;letter-spacing:1px}.work-section{padding:0 22px 80px;grid-template-columns:1fr;gap:40px}.section-aside{position:static}.section-aside h2{margin-bottom:20px}.section-aside p{max-width:100%}.projects{gap:35px 15px}.project figcaption{display:block}.project h3{font-size:10px}.project figcaption span{display:block;margin-top:6px;font-size:8px}.interlude{height:75vh;min-height:420px}.interlude p{left:22px;bottom:30px}.about{padding:80px 22px;grid-template-columns:1fr;gap:35px}.about h2{margin:0}.about .body-copy{font-size:12px}.contact{padding:60px 22px 25px}.contact .big-contact{letter-spacing:-1px;padding-bottom:45px}.footer{flex-direction:column;gap:25px}.menu-close{right:22px}.menu{padding:110px 28px 40px}.menu nav{gap:22px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}

[hidden]{display:none!important}.skip-link{position:fixed;left:20px;top:-80px;z-index:100;background:var(--paper);padding:15px}.skip-link:focus{top:10px}.inner header{color:var(--ink);background:var(--paper);border-bottom:1px solid #24282215}.inner header .logo img{filter:brightness(0)}.page-heading{padding:175px 45px 75px}.page-heading>.eyebrow{margin-bottom:40px}.page-heading h1{font:400 clamp(48px,6.5vw,96px)/1.05 Georgia,serif;letter-spacing:-2.5px;margin:0}.heading-bottom{display:flex;justify-content:space-between;align-items:end;margin-top:45px;gap:35px}.heading-bottom p{font-size:14px;line-height:1.9;color:#60665c;margin:0}.portfolio{padding:0 45px 110px}.portfolio-toolbar{display:flex;align-items:end;justify-content:space-between;border-top:1px solid var(--line);padding:25px 0 35px;gap:25px}.search-label{font-size:9px;letter-spacing:1.4px;display:flex;flex-direction:column;gap:10px;width:260px}.search-label input{background:none;border:0;border-bottom:1px solid var(--line);padding:10px 0;font:13px Arial;color:var(--ink);border-radius:0}.film-grid{display:grid;grid-template-columns:1fr 1fr;gap:45px 25px}.film-card{min-width:0}.film-image{aspect-ratio:16/9;overflow:hidden;position:relative;background:#d2d1c7}.film-image img{width:100%;height:100%;object-fit:cover;transition:transform .7s}.film-card a:hover img{transform:scale(1.025)}.card-play{position:absolute;bottom:16px;right:16px;border:1px solid #fffa;color:white;background:#0004;display:grid;place-items:center;width:37px;height:37px;border-radius:50%;font-size:18px}.film-caption{display:flex;justify-content:space-between;align-items:start;gap:20px;padding-top:15px}.film-caption h2{font-size:11px;line-height:1.6;letter-spacing:.7px;font-weight:400;margin:0;max-width:80%}.film-caption>span{white-space:nowrap;font-size:8px;letter-spacing:1px;line-height:2;color:#62685d}.archive{margin-top:75px;border-top:1px solid var(--line)}.archive summary{cursor:pointer;display:flex;justify-content:space-between;align-items:center;font:30px Georgia;padding:30px 0}.archive summary span{font:10px Arial;letter-spacing:1px}.archive .film-grid{padding-top:20px}.film-heading{padding:150px 45px 45px;display:grid;grid-template-columns:26% 1fr;gap:6%}.film-heading h1{font:400 clamp(32px,4vw,65px)/1.15 Georgia,serif;letter-spacing:-.8px;margin:0 0 30px}.film-heading .back{align-self:start;padding-top:10px}.film-player{padding:0 45px}.project-video{display:block;background:#111713;width:100%;max-height:78svh;object-fit:contain}.embed-frame{position:relative;aspect-ratio:16/9;background:#111713}.embed-frame iframe{width:100%;height:100%;border:0}.player-help{font-size:10px;letter-spacing:.8px;text-align:right;padding:8px 0}.project-pagination{padding:55px 45px 110px;display:flex;justify-content:space-between;gap:25px;font-size:10px;letter-spacing:1px}.project-pagination a:last-child{text-align:right;max-width:65%}.project-pagination span{display:block;font:24px/1.3 Georgia;letter-spacing:0;margin-top:12px}.company-image{height:56vw;max-height:700px;margin:0 45px;overflow:hidden}.company-image img{height:100%;width:100%;object-fit:cover}.editorial-section{display:grid;grid-template-columns:26% 1fr;gap:6%;padding:110px 45px 0}.editorial-section h2{font-weight:400}.editorial-section h3{font:400 clamp(35px,4vw,60px)/1.15 Georgia;margin:0 0 32px;letter-spacing:-1px}.reading-copy{font-size:14px;line-height:1.9;max-width:570px;color:#60665c}.company-profile{padding-bottom:110px}.company-profile dl{margin:0}.company-profile dl>div{display:grid;grid-template-columns:32% 1fr;border-top:1px solid var(--line);padding:25px 0;gap:25px}.company-profile dt{font-size:10px;letter-spacing:1px;line-height:2}.company-profile dd{font:18px/1.8 Georgia;margin:0}.company-profile dd small{font:12px Arial;color:#60665c}.team-grid{padding:0 45px 120px;display:grid;grid-template-columns:repeat(3,1fr);gap:55px 28px}.portrait{aspect-ratio:4/5;background:#ddddd4;overflow:hidden}.portrait img{width:100%;height:100%;object-fit:cover;filter:grayscale(1);transition:filter .6s,transform .6s}.person:hover img{filter:grayscale(0);transform:scale(1.02)}.person h2{font:28px/1.2 Georgia;font-weight:400;margin:20px 0 8px}.person p{font-size:10px;line-height:1.7;letter-spacing:.8px;margin:0;color:#60665c}.contact-layout{padding:15px 45px 120px;display:grid;grid-template-columns:32% 1fr;gap:8%}.contact-layout h2{font-weight:400}.contact-layout aside>.small-copy{margin-top:50px}.contact-email{display:inline-block;font:clamp(16px,1.8vw,24px) Georgia;border-bottom:1px solid var(--line);padding:12px 0;overflow-wrap:anywhere}.small-copy{font-size:11px;line-height:1.9;color:#60665c}.contact-layout form label{display:block;font-size:11px;line-height:1.5;letter-spacing:.4px;margin-bottom:28px}.contact-layout label span{color:#62685d}.contact-layout input,.contact-layout textarea,.contact-layout select{display:block;width:100%;font:14px/1.6 Arial;color:var(--ink);padding:13px 0;border:0;border-bottom:1px solid #9ca28f;background:none;border-radius:0;margin-top:8px}.contact-layout textarea{resize:vertical;min-height:140px}.contact-layout input:focus,.contact-layout textarea:focus,.contact-layout select:focus{outline:0;border-bottom-color:#242822;box-shadow:0 1px #242822}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:25px}.primary-button{border:1px solid var(--ink);display:inline-flex;align-items:center;justify-content:space-between;gap:40px;color:var(--paper);background:var(--ink);font:10px Arial;letter-spacing:1px;padding:19px 25px;min-height:48px;margin-top:20px;cursor:pointer}.primary-button:hover{background:#3c4437}.copy-button{background:none;border:0;border-bottom:1px solid var(--line);font-size:10px;letter-spacing:1px;padding:15px;margin-left:15px}.email-preview{border-top:1px solid var(--line);margin-top:45px;padding-top:30px}.email-preview pre{font:13px/1.8 Arial;white-space:pre-wrap;overflow-wrap:anywhere;background:#e6e5dd;padding:25px;max-height:420px;overflow:auto}.menu{overflow:auto}.footer-nav{flex-wrap:wrap}.project h3{line-height:1.6}.project figcaption{align-items:start}.project h3{max-width:75%}.project figcaption>span{white-space:nowrap}.hero-pause{border:0;background:#0003;color:white;position:absolute;right:45px;top:110px;z-index:3;font-size:10px;letter-spacing:1px;padding:10px 15px}
@media(max-width:800px){.team-grid{grid-template-columns:1fr 1fr}.contact-layout{gap:5%;grid-template-columns:1fr 1.5fr}.contact-email{font-size:18px}.field-row{grid-template-columns:1fr;gap:0}}
@media(max-width:600px){.page-heading{padding:130px 22px 55px}.page-heading h1{font-size:clamp(40px,10vw,60px);letter-spacing:-1.5px}.page-heading>.eyebrow{margin-bottom:30px}.heading-bottom{margin-top:30px;align-items:start;gap:20px}.heading-bottom p{font-size:12px}.heading-bottom>.eyebrow{font-size:8px;white-space:nowrap}.portfolio{padding:0 22px 75px}.portfolio-toolbar{align-items:start}.search-label{width:160px;font-size:8px}.film-grid{grid-template-columns:1fr;gap:30px}.film-caption h2{font-size:11px}.archive{margin-top:45px}.archive summary{font-size:24px;gap:15px}.film-heading{padding:120px 22px 30px;grid-template-columns:1fr;gap:28px}.film-heading h1{font-size:36px}.film-player{padding:0 15px}.project-video{max-height:70svh}.project-pagination{padding:35px 22px 70px}.project-pagination span{font-size:20px}.company-image{height:75vw;margin:0 22px}.editorial-section{grid-template-columns:1fr;gap:30px;padding:65px 22px 0}.editorial-section h2{margin:0}.company-profile{padding-bottom:75px}.company-profile dl>div{grid-template-columns:30% 1fr;gap:20px;padding:20px 0}.company-profile dd{font-size:16px}.team-grid{padding:0 22px 75px;gap:32px 15px}.person h2{font-size:22px;overflow-wrap:anywhere}.person p{font-size:9px}.portrait{aspect-ratio:3/4}.contact-layout{padding:0 22px 75px;grid-template-columns:1fr;gap:45px}.contact-layout aside>.small-copy{margin-top:25px}.contact-email{font-size:24px}.contact-layout input,.contact-layout textarea,.contact-layout select{font-size:16px}.contact-layout .primary-button{width:100%}.copy-button{margin-left:0}.hero-pause{right:22px;top:90px}.project figcaption{flex-wrap:wrap}.project h3{max-width:100%}}
/* Language navigation stays visible on small screens. */
header{grid-template-columns:1fr auto 1fr;column-gap:24px}.language-switch{justify-self:end;grid-column:3;grid-row:1;display:flex;gap:0;margin-right:155px;font:10px/1.4 Arial,sans-serif;letter-spacing:.2px;white-space:nowrap}.language-switch a{display:block;padding:8px 10px;border-bottom:1px solid transparent;opacity:.6}.language-switch a[aria-current]{border-color:currentColor;opacity:1}.language-switch a:hover{opacity:1}.top-contact{grid-column:3;grid-row:1}.logo{grid-column:2;grid-row:1}.menu-toggle{grid-column:1;grid-row:1}
html[lang=ja] .page-heading h1,html[lang=ja] .intro h1,html[lang=ja] .about h3,html[lang=ja] .editorial-section h3,html[lang=ja] .film-heading h1,html[lang=ja] .interlude p{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;line-height:1.5;letter-spacing:.02em}html[lang=ja] .page-heading h1{font-size:clamp(36px,5vw,74px)}html[lang=ja] .intro h1{font-size:clamp(32px,4vw,58px)}html[lang=ja] em{font-style:normal}html[lang=ja] .contact .big-contact{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-size:clamp(38px,7vw,90px);letter-spacing:0}html[lang=ja] .menu nav a{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-size:clamp(28px,4vw,58px);line-height:1.6}html[lang=ja] .body-copy,html[lang=ja] .reading-copy{line-height:2.1}html[lang=ja] .project figcaption>span{font-size:9px}html[lang=ja] .language-switch{font-family:Arial,sans-serif}
@media(max-width:950px){.top-contact{display:none}.language-switch{margin-right:0}header{column-gap:12px}.language-switch a{padding:8px}}
@media(max-width:600px){header{grid-template-columns:1fr auto 1fr;padding:0 16px;column-gap:10px}.logo{width:80px}.language-switch{font-size:9px}.language-switch a{padding:7px 5px}.menu-toggle{width:24px}.bars{width:20px}html[lang=ja] .page-heading h1{font-size:clamp(30px,8vw,44px)}html[lang=ja] .intro h1{font-size:30px}html[lang=ja] .film-heading h1{font-size:29px;overflow-wrap:anywhere}html[lang=ja] .interlude p{font-size:29px}html[lang=ja] .heading-bottom{flex-wrap:wrap}html[lang=ja] .archive summary{font-size:20px}html[lang=ja] .contact .big-contact{font-size:38px}html[lang=ja] .hero-bottom .eyebrow{font-size:9px}}
.language-switch{font-size:11px}.language-switch a{min-height:40px;display:flex;align-items:center}
@media(max-width:600px){.language-switch{font-size:10px}.language-switch a{min-height:44px;padding:8px 5px}.menu-toggle{min-height:44px;width:44px;gap:0}.bars{flex-shrink:0;width:20px}}

/* The supplied brand artwork is preserved in both languages. */
.intro{padding:115px 45px 125px}.intro .eyebrow{margin-bottom:45px}.intro h1.brand-statement{max-width:none;width:100%;margin:0;line-height:1}.brand-statement img{display:block;width:100%;height:auto}.intro-message{font:400 clamp(30px,3.2vw,48px)/1.2 Georgia,'Times New Roman',serif;letter-spacing:-1px;margin:65px auto 0}.intro .body-copy{margin-top:25px}html[lang=ja] .intro-message{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;line-height:1.5;letter-spacing:.02em}@media(max-width:700px){.intro{padding:75px 22px 80px}.intro .eyebrow{font-size:8px;margin-bottom:32px}.intro-message{font-size:30px;margin-top:38px}.intro .body-copy{margin-top:22px}}

.intro-message{font-size:clamp(16px,2.2vw,30px);letter-spacing:-.4px}html[lang=en] .intro-message{white-space:nowrap}@media(max-width:700px){.intro-message{font-size:clamp(14px,4.1vw,24px);letter-spacing:-.3px}}
