/* Local posters; the Vimeo player is created only after explicit activation. */
.im-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.im-work-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:48px}
.im-work-tabs button{display:flex;align-items:center;justify-content:space-between;gap:20px;text-align:left;padding:25px 30px;border:1px solid #2c1e4633;background:#fff;color:#2c1e46;cursor:pointer;font:inherit;transition:background .2s,color .2s}
.im-work-tabs b{font-family:Arial,sans-serif;font-size:36px;letter-spacing:-.04em}
.im-work-tabs span{font-size:13px}
.im-work-tabs button[aria-selected=true]{background:#2c1e46;color:#fff;border-color:#2c1e46}
.im-work-tabs button:focus-visible,.im-web-card a:focus-visible{outline:3px solid #9162a8;outline-offset:5px}
[role=tabpanel][hidden]{display:none!important}
.im-web-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:54px 30px}
.im-web-card{min-width:0}
.im-web-preview{display:block;color:inherit;text-decoration:none}
.im-web-screen{background:#eae6ee;padding:18px;border:1px solid #2c1e461c;overflow:hidden}
.im-web-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;height:32px;color:#6f6379;font:10px Arial,sans-serif;letter-spacing:.04em}
.im-web-toolbar i{width:5px;height:5px;background:#aa9db3;border-radius:50%;box-shadow:9px 0 #aa9db3,18px 0 #aa9db3;margin-right:18px}
.im-web-toolbar .im-arrow{font-size:20px}
.im-web-screen img{display:block;width:100%;height:auto;aspect-ratio:1512/823;object-fit:cover;object-position:top;transition:filter .35s;filter:saturate(.92)}
.im-web-preview:hover img{filter:saturate(1.08)}
.im-web-card-copy{padding-top:23px}
.im-web-card-copy .im-eyebrow{color:#9162a8;font-size:10px}
.im-web-card-copy h3{margin:13px 0 12px;font:600 clamp(18px,1.8vw,25px)/1.55 var(--font-ja-sans,'Zen Kaku Gothic New',sans-serif);letter-spacing:0}
.im-web-card-copy h3 a{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;text-decoration:none;color:inherit}
.im-web-card-copy h3 .im-arrow{flex:none;font-size:27px}
.im-web-card-copy p{margin:0 0 18px;font-size:13px;line-height:2;color:#706777;max-width:55ch}
.im-web-card-copy .im-inline-link{font-size:12px;display:inline-flex;gap:22px;align-items:center;color:#2c1e46}
.im-web-grid>.im-web-card:first-child{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:40px;align-items:center;background:#f3f0f6;padding:30px}
.im-web-grid>.im-web-card:first-child .im-web-screen{background:#e5deec;border:0}
.im-web-grid>.im-web-card:first-child .im-web-card-copy{padding:0 10px 0 0}
.im-web-related>.im-web-card:first-child{grid-column:auto;display:block;background:none;padding:0}
.im-web-related>.im-web-card:first-child .im-web-card-copy{padding:23px 0 0}
.im-home-web-works{margin-top:85px;padding-top:65px;border-top:1px solid #2c1e4626}
.im-web-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:35px}
.im-web-intro h3{font-size:clamp(35px,4vw,60px);line-height:1;letter-spacing:-.055em;margin:15px 0}
.im-web-intro p{font-family:var(--font-ja-serif,'Shippori Mincho',serif);font-size:18px;margin:0}
.im-web-intro .im-eyebrow{font-size:10px;color:#9162a8}
.im-web-detail{display:grid;grid-template-columns:1.3fr 1fr;gap:70px;margin:60px 0}
.im-web-detail h2{font-family:var(--font-ja-serif,'Shippori Mincho',serif);font-size:clamp(24px,2.5vw,36px);font-weight:500;line-height:1.6;margin:20px 0}
.im-web-detail p{font-size:14px;line-height:2.1;max-width:50ch;margin:0 0 25px}
.im-web-detail dl{margin:0}
.im-web-detail dl>div{padding:20px 0;border-bottom:1px solid #2c1e4626;display:grid;grid-template-columns:95px 1fr;gap:20px}
.im-web-detail dt{font:10px Arial,sans-serif;color:#9162a8;letter-spacing:.08em;padding-top:5px}
.im-web-detail dd{margin:0;font-size:13px;line-height:1.8}
@media(max-width:1024px){.im-web-grid>.im-web-card:first-child{gap:25px;padding:24px;grid-template-columns:1.2fr 1fr}.im-web-screen{padding:12px}.im-web-card-copy p{font-size:12px}}
@media(max-width:700px){.im-work-tabs{gap:10px;margin-bottom:30px}.im-work-tabs button{display:block;padding:20px}.im-work-tabs b{display:block;font-size:30px;margin-bottom:7px}.im-work-tabs span{font-size:11px}.im-web-grid{grid-template-columns:1fr;gap:38px}.im-web-grid>.im-web-card:first-child{display:block;padding:15px}.im-web-grid>.im-web-card:first-child .im-web-card-copy{padding:23px 5px 5px}.im-web-card-copy h3{font-size:19px}.im-web-grid>.im-web-card:first-child .im-web-screen{padding:8px}.im-web-related>.im-web-card:first-child{padding:0}.im-web-related>.im-web-card:first-child .im-web-card-copy{padding:23px 0 0}.im-web-intro{display:block}.im-web-intro .im-button{margin-top:25px}.im-home-web-works{margin-top:50px;padding-top:45px}.im-web-detail{grid-template-columns:1fr;gap:30px;margin:35px 0}.im-web-detail p{font-size:13px}.im-web-toolbar{font-size:8px}.im-web-toolbar i{width:4px;height:4px}.im-web-detail dl>div{grid-template-columns:80px 1fr}}
.im-portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:52px 28px}
.im-portfolio-card{min-width:0;color:inherit}
.im-portfolio-card[hidden]{display:none!important}
.im-film-poster{display:block;position:relative;width:100%;aspect-ratio:16/9;padding:0;border:0;overflow:hidden;background:#100b19;color:#fff;cursor:pointer;isolation:isolate;text-align:center;border-radius:2px}
.im-home-continuation .im-film-poster{color:#fff;background:#100b19}
.im-work-track{scroll-padding-inline:var(--im-pad)}
.im-film-poster img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .65s cubic-bezier(.2,.7,.2,1),filter .4s;filter:saturate(.83)}
.im-film-poster:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 50%,#0f091c80);pointer-events:none}
.im-film-play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;font-family:Arial,sans-serif;z-index:1;font-size:20px;text-shadow:0 2px 12px #0008;opacity:.92;transition:transform .3s}
.im-film-play:before{content:"";position:absolute;width:70px;height:70px;top:calc(50% - 47px);border:1px solid #ffffff9c;border-radius:50%;background:#2c1e4640;z-index:-1;backdrop-filter:blur(3px);transition:background .3s,transform .3s}
.im-film-play small{font-size:9px;font-weight:700;letter-spacing:.12em;margin-top:24px}
.im-film-poster:hover img{transform:scale(1.035);filter:saturate(1)}
.im-film-poster:hover .im-film-play:before{background:#9162a8a0;transform:scale(1.08)}
.im-film-poster:focus-visible{outline:3px solid #9162a8;outline-offset:5px}
.im-film-runtime{position:absolute;right:13px;bottom:12px;font:11px Arial,sans-serif;letter-spacing:.05em;background:#0009;padding:5px 7px;border-radius:3px;z-index:2}
.im-portfolio-meta{padding:20px 0 0}
.im-film-category{color:#9162a8;font-size:10px;font-weight:600;letter-spacing:.04em;margin-bottom:9px}
.im-portfolio-meta h3{font-size:17px;line-height:1.65;font-weight:600;margin:0;letter-spacing:.01em}
.im-portfolio-meta h3 a{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;color:inherit;text-decoration:none}
.im-portfolio-meta h3 .im-arrow{font-size:23px;flex:none}
.im-portfolio-meta p{font-size:12px;line-height:1.8;margin:5px 0 0;opacity:.67}
.im-work-track .im-portfolio-card{flex:0 0 min(38vw,560px);scroll-snap-align:start}
.im-work-track .im-portfolio-meta{padding:22px 2px 0}
.im-work-track .im-portfolio-meta h3{font-size:22px}
.im-work-track .im-portfolio-meta p{font-size:13px}
.im-portfolio-tools{margin-bottom:48px}
.im-film-filters{display:flex;gap:10px;flex-wrap:wrap;padding-bottom:28px;border-bottom:1px solid #2c1e4626}
.im-film-filters button{font:inherit;font-size:12px;color:#2c1e46;padding:11px 19px;border:1px solid #2c1e462b;border-radius:40px;background:transparent;cursor:pointer;transition:background .2s,color .2s}
.im-film-filters button[aria-pressed=true],.im-film-filters button:hover{color:#fff;background:#2c1e46}
.im-portfolio-search{display:flex;align-items:center;gap:22px;padding-top:26px}
.im-portfolio-search label{font-size:12px;white-space:nowrap}
.im-portfolio-search input{width:min(100%,370px);min-width:0;border:0;border-bottom:1px solid #2c1e4655;padding:10px 4px;background:transparent;color:#2c1e46;font:inherit;font-size:13px;border-radius:0}
.im-portfolio-search [data-film-count]{font-size:11px;white-space:nowrap;margin-left:auto;color:#79717f}
.im-portfolio-more{text-align:center;margin-top:46px}
.im-portfolio-more .im-button{display:inline-flex}
.im-film-empty{padding:60px 0;text-align:center;font-size:14px}
.im-film-large{width:100%;aspect-ratio:16/9;margin:0 auto;max-width:1100px}
.im-film-portrait{aspect-ratio:var(--poster-ratio,9/16);text-decoration:none}
.im-film-large.im-film-portrait{max-width:420px}
.im-film-large .im-film-play{font-size:30px}
.im-film-large .im-film-play:before{width:100px;height:100px;top:calc(50% - 60px)}
.im-film-large .im-film-play small{font-size:11px;margin-top:35px}
.im-film-facts{display:flex;justify-content:space-between;gap:25px;font-size:12px;margin:24px auto 50px;max-width:1100px;color:#7a6d82}
.im-origin-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:center}
.im-origin-grid h3,.im-film-origin h2{font-family:var(--font-ja-serif,'Shippori Mincho',serif);font-size:clamp(27px,3vw,44px);line-height:1.6;font-weight:500;margin:22px 0}
.im-origin-grid p,.im-film-origin p{font-size:14px;line-height:2.1;max-width:720px}
.im-origin-grid .im-button{margin-top:20px}
.im-film-origin{padding:25px 0 45px;max-width:900px;margin:auto}
body.im-film-open{overflow:hidden}
.im-vimeo-dialog{--film-ratio:1.7777778;padding:0;border:1px solid #ffffff22;border-radius:5px;width:min(1100px,94vw,calc((100dvh - 170px)*var(--film-ratio)));max-width:94vw;max-height:94dvh;margin:auto;background:#100b19;color:#fff;overflow:auto;box-shadow:0 20px 90px #0009}
.im-vimeo-dialog::backdrop{background:#08050de8;backdrop-filter:blur(7px)}
.im-vimeo-head{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;gap:25px;border-bottom:1px solid #ffffff19;font:10px Arial,sans-serif;letter-spacing:.06em}
.im-vimeo-head button{background:none;border:0;color:#fff;font:inherit;font-size:12px;padding:10px;cursor:pointer;white-space:nowrap}
.im-vimeo-frame{position:relative;aspect-ratio:var(--film-ratio);width:100%;background:#000}
.im-vimeo-frame [data-vimeo-mount],.im-vimeo-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.im-vimeo-frame [data-vimeo-loading]{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:13px;color:#c4b3d1;margin:0}
.im-vimeo-frame [hidden]{display:none!important}
.im-vimeo-foot{padding:16px 22px;display:flex;justify-content:space-between;align-items:center;gap:25px}
.im-vimeo-foot h2{font:inherit;font-size:13px;line-height:1.7;margin:0;max-width:80%}
.im-vimeo-foot a{font-size:11px;white-space:nowrap;color:#ceb3dd;text-decoration:none;display:inline-flex;align-items:center;gap:8px}
.im-vimeo-foot .im-arrow{font-size:19px}
@media(max-width:1024px){.im-portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.im-origin-grid{grid-template-columns:1fr;gap:35px}.im-work-track .im-portfolio-card{flex-basis:49vw}}
@media(max-width:600px){.im-portfolio-grid{grid-template-columns:1fr;gap:36px}.im-work-track .im-portfolio-card{flex-basis:80vw}.im-work-track .im-portfolio-meta h3{font-size:17px}.im-work-track .im-portfolio-meta p{font-size:12px}.im-portfolio-meta{padding-top:17px}.im-film-category{font-size:10px}.im-portfolio-meta h3{font-size:17px}.im-portfolio-tools{margin-bottom:33px}.im-film-filters{gap:7px;padding-bottom:22px}.im-film-filters button{font-size:10px;padding:10px 13px;min-height:40px}.im-portfolio-search{display:grid;grid-template-columns:1fr auto;gap:14px}.im-portfolio-search label{grid-column:1}.im-portfolio-search input{grid-column:1/-1;grid-row:2;width:100%;font-size:16px}.im-portfolio-search [data-film-count]{grid-column:2;grid-row:1;font-size:10px}.im-origin-grid{gap:25px}.im-origin-grid p,.im-film-origin p{font-size:13px}.im-film-large .im-film-play{font-size:22px}.im-film-large .im-film-play:before{width:70px;height:70px;top:calc(50% - 47px)}.im-film-large .im-film-play small{font-size:9px;margin-top:24px}.im-vimeo-head{padding:8px 10px;gap:10px;font-size:8px}.im-vimeo-foot{display:block;padding:13px 15px}.im-vimeo-foot h2{font-size:11px;max-width:100%;margin-bottom:8px}.im-vimeo-foot a{font-size:10px}.im-film-facts{font-size:10px}}
@media(prefers-reduced-motion:reduce){.im-film-poster img,.im-film-play:before{transition:none}.im-film-poster:hover img{transform:none}}
/* Print cases share the same unaltered front/back artwork and white studio setting. */
.im-print-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 26px}
.im-print-card{min-width:0}
.im-print-preview{display:block;background:#fff;border:1px solid #2c1e461c;overflow:hidden}
.im-print-preview img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;transition:transform .45s}
.im-print-preview:hover img{transform:scale(1.025)}
.im-print-copy{padding-top:22px}
.im-print-copy .im-eyebrow{font-size:10px;line-height:1.7;color:#9162a8}
.im-print-copy h3{font:600 clamp(17px,1.5vw,22px)/1.6 var(--font-ja-sans,'Zen Kaku Gothic New',sans-serif);letter-spacing:0;margin:12px 0 10px}
.im-print-copy h3 a{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;color:inherit;text-decoration:none}
.im-print-copy .im-arrow{flex:none;font-size:24px}
.im-print-copy p{font-size:12px;line-height:1.8;color:#706777;margin:0}
.im-print-card a:focus-visible,.im-print-figure a:focus-visible{outline:3px solid #9162a8;outline-offset:5px}
.im-home-print-works{margin-top:85px;padding-top:65px;border-top:1px solid #2c1e4626}
.im-print-figure{margin:0}
.im-print-figure>a{display:block;background:#fff;border:1px solid #2c1e461c}
.im-print-large{display:block;width:100%;height:auto}
.im-print-figure figcaption{display:flex;justify-content:space-between;gap:20px;font-size:11px;color:#706777;line-height:1.8;margin-top:18px}
.im-print-figure figcaption span{display:inline-flex;align-items:center;gap:12px}
@media(max-width:1024px){.im-work-tabs button{display:block;padding:22px}.im-work-tabs b{display:block;margin-bottom:6px;font-size:30px}.im-print-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.im-work-tabs{gap:7px}.im-work-tabs button{padding:16px 10px}.im-work-tabs b{font-size:clamp(20px,5.7vw,28px)}.im-work-tabs span{font-size:10px}.im-print-grid{grid-template-columns:1fr;gap:36px}.im-print-copy{padding-top:18px}.im-print-copy h3{font-size:20px}.im-home-print-works{margin-top:50px;padding-top:45px}.im-print-figure figcaption{display:block;font-size:10px}.im-print-figure figcaption span{display:flex;margin-top:5px}}
@media(prefers-reduced-motion:reduce){.im-print-preview img{transition:none}}

/* Small production credit on the works it applies to. */
.im-portfolio-card .im-portfolio-meta p.im-film-credit{margin:4px 0 0;font-size:11px;line-height:1.7;opacity:.6}
.im-film-credit-detail{display:block;margin-top:2px;font-size:11px;line-height:1.7;opacity:.65}
