@font-face{font-family:Lexend;src:url('./assets/fonts/lexend-latin.woff2') format('woff2');font-weight:400 800;font-style:normal;font-display:swap}
@font-face{font-family:Inter;src:url('./assets/fonts/inter-latin.woff2') format('woff2');font-weight:400 700;font-style:normal;font-display:swap}
@font-face{font-family:'Noto Sans SC';src:url('./assets/fonts/noto-sans-sc.woff2?v=20261020-6') format('woff2');font-weight:400 700;font-style:normal;font-display:swap}
@font-face{font-family:'Noto Sans JP';src:url('./assets/fonts/noto-sans-jp.woff2?v=20261020-13') format('woff2');font-weight:400 700;font-style:normal;font-display:swap}
:root{color-scheme:dark;--red:#5a2428;--white:#f3eee8;--muted:#d1b5b3;--line:rgba(243,238,232,.25);--deep:#4b1d23;--gutter:clamp(22px,4.7vw,80px);--body:Inter,'Noto Sans SC',sans-serif;--heading:Lexend,'Noto Sans SC',sans-serif}
html[lang=ja]{--body:Inter,'Noto Sans JP','Noto Sans SC',sans-serif;--heading:Lexend,'Noto Sans JP','Noto Sans SC',sans-serif}
*{box-sizing:border-box}
html{background:var(--red);scroll-behavior:smooth;scroll-padding-top:20px}
body{margin:0;color:var(--white);background:var(--red);font-family:var(--body);font-size:16px;font-weight:400;-webkit-font-smoothing:antialiased}
body.menu-open{overflow:hidden}
button,a{-webkit-tap-highlight-color:transparent}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;border:0;background:none;cursor:pointer}
button:disabled{cursor:default}
button,a{touch-action:manipulation}
button:focus-visible,a:focus-visible{outline:2px solid var(--white);outline-offset:7px;border-radius:1px}
::selection{background:var(--white);color:var(--red)}
h1,h2,h3,p{margin:0}
h1,h2,h3{font-family:var(--heading);font-weight:700}
img{display:block;max-width:100%}
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:fixed;top:12px;left:12px;z-index:20;background:var(--white);color:var(--red);padding:14px 20px;transform:translateY(-180%)}
.skip-link:focus{transform:translateY(0)}
.site-header,.menu-header{min-height:112px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:26px var(--gutter)}
.wordmark{font-family:var(--heading);font-weight:700;font-size:27px;line-height:1;letter-spacing:-.06em;white-space:nowrap}
html[lang=zh-CN] .wordmark{letter-spacing:.04em}
.header-right{display:flex;gap:42px;align-items:center}
.quick-nav{display:flex;gap:28px;font-size:13px}
.quick-nav a{padding:10px 0}
.quick-nav a:hover,.quick-nav a[aria-current=page]{text-decoration:underline;text-underline-offset:6px}
.language-switch{display:flex;align-items:center;gap:4px;font-size:12px;flex-shrink:0;white-space:nowrap}
.language-switch [lang=ja]{font-family:Inter,'Noto Sans JP',sans-serif}
.language-switch button{min-height:44px;min-width:34px;padding:8px 5px;color:var(--muted)}
.language-switch button[aria-pressed=true]{color:var(--white);text-decoration:underline;text-underline-offset:5px}
.language-switch .slash{opacity:.5}
.menu-toggle{display:flex;align-items:center;gap:14px;font-size:13px;padding:12px 0;min-width:74px;justify-content:flex-end;min-height:44px}
.menu-icon{width:25px;height:14px;display:flex;flex-direction:column;justify-content:space-between}
.menu-icon::before,.menu-icon::after{content:'';height:1.5px;background:currentColor;width:100%;display:block}
.close-icon{position:relative;width:24px;height:20px}
.close-icon::before,.close-icon::after{position:absolute;top:9px;left:0;content:'';height:1.5px;width:25px;background:currentColor;transform:rotate(45deg)}
.close-icon::after{transform:rotate(-45deg)}
main{min-height:60vh;outline:none}
.page-shell{padding:0 var(--gutter)}
.eyebrow{font-size:11px;line-height:1.6;letter-spacing:.12em;text-transform:uppercase;font-weight:500}
.muted{color:var(--muted)}
.arrow{display:inline-block;flex-shrink:0;font:400 25px/1 var(--body);transition:transform .2s ease}
.text-link{display:inline-flex;align-items:center;gap:18px;font-size:13px;min-height:44px}
.text-link:hover .arrow{transform:translateX(5px)}
.text-link .text{border-bottom:1px solid currentColor;padding-bottom:4px}
.home-hero{padding:34px 0 55px;display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:40px;align-items:end}
.hero-meta{display:flex;gap:28px;margin-bottom:24px}
.hero-title{font-size:clamp(50px,6.4vw,106px);line-height:1.01;letter-spacing:-.06em}
.hero-note{font-size:15px;line-height:1.75;padding-bottom:8px}
.section-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid var(--line);padding:19px 0 24px}
.section-heading h2{font-family:var(--body);font-weight:400;font-size:15px}
.section-heading .text-link{min-height:28px;font-size:12px}
.films-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}
.film-card{min-width:0}
.poster-link{display:block;position:relative}
.poster-frame{aspect-ratio:2/3;display:flex;align-items:center;justify-content:center;background:var(--deep);overflow:hidden;position:relative}
.poster-frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:filter .25s ease}
.poster-link:hover img{filter:brightness(1.07)}
.poster-label{position:absolute;left:14px;top:14px;font-size:10px;letter-spacing:.12em}
.poster-placeholder{flex-direction:column;text-align:center;padding:30px;border:1px solid rgba(243,238,232,.13)}
.placeholder-title{font-family:'Noto Sans SC',sans-serif;font-weight:700;font-size:clamp(30px,4vw,58px);line-height:1.5;letter-spacing:.03em}
.placeholder-english{font-family:var(--heading);font-size:clamp(13px,1.6vw,23px);font-weight:600;line-height:1.35;letter-spacing:-.025em;margin-top:20px}
.placeholder-note{position:absolute;left:15px;right:15px;bottom:28px;color:var(--muted);font-size:10px;letter-spacing:.13em;text-transform:uppercase}
.card-heading{display:flex;align-items:flex-start;gap:14px;justify-content:space-between;padding:22px 0 15px}
.card-heading h3{font-family:var(--body);font-size:clamp(19px,1.65vw,27px);font-weight:600;line-height:1.25;letter-spacing:-.025em}
.card-heading .arrow{font-size:23px}
.card-heading:hover .arrow{transform:translate(3px,-3px)}
.card-subtitle{display:block;font-size:12px;font-weight:400;color:var(--muted);line-height:1.6;letter-spacing:0;margin-top:5px}
.card-credits{display:grid;grid-template-columns:max-content 1fr;gap:6px 12px;margin:0;font-size:11px;line-height:1.65}
.card-credits dt{color:var(--muted)}
.card-credits dd{margin:0}
.card-role{font-size:12px;line-height:1.6;padding:14px 0 17px;margin:0 0 17px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.card-role .eyebrow{font-size:9px;color:var(--muted);display:block;margin-bottom:5px}
.card-synopsis{border-top:1px solid var(--line);margin-top:23px;padding-top:18px}
.card-synopsis h4{margin:0 0 12px;font-family:var(--body);font-size:10px;font-weight:500;color:var(--muted)}
.card-synopsis>p{font-size:13px;line-height:1.8}
.film-external-links{display:flex;gap:10px 20px;flex-wrap:wrap;margin-top:16px;font-size:10px;line-height:1.6;color:var(--muted)}
.film-external-links a{padding:5px 0;text-decoration:underline;text-underline-offset:4px}
.film-external-links a:hover{color:var(--white)}
.working-title-note{display:block;color:var(--muted);font-size:9px;font-family:var(--body);font-weight:400;letter-spacing:.04em;line-height:1.6;margin-top:5px}
.statement{display:grid;grid-template-columns:1fr 1fr;gap:12%;padding:100px 0 94px;margin-top:90px;border-top:1px solid var(--line)}
.statement h2{font-size:clamp(27px,3vw,52px);line-height:1.12;letter-spacing:-.045em;margin-top:26px}
.statement-copy{padding-top:41px;max-width:510px;font-size:18px;line-height:1.8}
.statement-copy .text-link{margin-top:27px}
.collaboration{padding:65px 0 80px;border-top:1px solid var(--line);display:flex;align-items:flex-end;justify-content:space-between;gap:40px}
.collaboration h2{font-size:clamp(33px,4.3vw,70px);line-height:1.12;letter-spacing:-.045em;margin-bottom:22px}
.collaboration p{font-size:13px;color:var(--muted);line-height:1.6}
.collaboration .text-link{font-size:15px}
.site-footer{padding:46px var(--gutter) 24px;background:var(--deep)}
.footer-top{display:grid;grid-template-columns:1.7fr 1fr 1fr;gap:60px;padding-bottom:56px}
.footer-brand p{font-size:12px;line-height:1.7;color:var(--muted);margin-top:20px}
.footer-group .eyebrow{margin-bottom:18px;color:var(--muted);font-size:10px}
.footer-links{display:grid;gap:9px;font-size:14px;justify-items:start}
.footer-links a{padding:4px 0}
.footer-links a:hover{text-decoration:underline;text-underline-offset:5px}
.footer-bottom{border-top:1px solid var(--line);padding-top:22px;display:flex;justify-content:space-between;gap:24px;align-items:center;font-size:10px;color:var(--muted);line-height:1.7}
.to-top{font-size:11px;padding:8px 0;white-space:nowrap;min-height:40px}
.page-heading{padding:44px 0 48px}
.page-heading .eyebrow{margin-bottom:21px}
.page-title{font-size:clamp(52px,7.8vw,126px);line-height:1.03;letter-spacing:-.055em;text-transform:uppercase;overflow-wrap:break-word}
.page-title.long-title{font-size:clamp(48px,6.7vw,105px)}
.film-filters{display:flex;gap:32px;align-items:center;padding:0 0 25px;flex-wrap:wrap}
.film-filters a{font-size:13px;padding:10px 0;color:var(--muted);border-bottom:1px solid transparent}
.film-filters a[aria-current=page]{color:var(--white);border-color:var(--white)}
.film-filters a:hover{color:var(--white)}
.film-index{padding-bottom:96px}
.empty-state{border-top:1px solid var(--line);min-height:390px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:65px 0;gap:18px}
.empty-state h2{font-size:clamp(28px,3.4vw,48px);letter-spacing:-.04em;font-weight:500}
.empty-state p{font-size:14px;line-height:1.8;color:var(--muted)}
.empty-state .text-link{margin-top:15px}
.back-link{padding:18px 0 34px}
.back-link .text-link:hover .arrow{transform:translateX(-5px)}
.film-detail{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1fr);gap:9%;align-items:start;padding-bottom:80px}
.detail-poster{max-width:550px;width:100%;justify-self:start}
.detail-copy{padding-top:5px}
.detail-copy>.eyebrow{margin-bottom:27px}
.detail-title{font-size:clamp(34px,4.35vw,68px);line-height:1.07;letter-spacing:-.045em}
.detail-original{display:block;font-size:18px;margin-top:17px;color:var(--muted);line-height:1.5}
.detail-credits{margin-top:24px;border-top:1px solid var(--line)}
.detail-credits dl{margin:0}
.detail-credit{display:grid;grid-template-columns:150px minmax(0,1fr);gap:24px;padding:19px 0;border-bottom:1px solid var(--line);font-size:14px;line-height:1.75}
.detail-credit dt{color:var(--muted);font-size:12px}
.detail-credit dd{margin:0}
.detail-role{margin-top:35px}
.detail-role .eyebrow{color:var(--muted);margin-bottom:8px;font-size:10px}
.detail-role p{font-size:14px;line-height:1.7}
.detail-synopsis{margin-top:32px}
.detail-synopsis h2{font-family:var(--body);color:var(--muted);margin-bottom:15px;font-weight:500}
.detail-synopsis>p{font-size:15px;line-height:1.85;max-width:650px}
.detail-synopsis .film-external-links{font-size:11px;margin-top:18px}
.next-film{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:33px 0 48px;border-top:1px solid var(--line)}
.next-film .eyebrow{color:var(--muted);margin-bottom:12px}
.next-film h2{font-size:clamp(24px,3vw,44px);letter-spacing:-.04em}
.next-film .arrow{font-size:44px}
.next-film:hover .arrow{transform:translateX(7px)}
.about-intro{display:grid;grid-template-columns:.7fr 1fr;gap:12%;padding:60px 0 88px;border-top:1px solid var(--line)}
.about-intro .large-label{font-family:var(--heading);font-size:26px;line-height:1.5;letter-spacing:-.03em;font-weight:500}
.about-prose{max-width:740px;font-size:18px;line-height:1.85}
.about-prose p+p{margin-top:25px}
.practice{padding:0 0 85px;display:grid;grid-template-columns:.7fr 1fr;gap:12%}
.about-photo{aspect-ratio:3/2;align-self:start;overflow:hidden}
.about-photo-placeholder{background:var(--deep)}
.about-photo img{width:100%;height:100%;object-fit:cover}
.practice-list{list-style:none;padding:0;margin:0}
.practice-list li{padding:18px 0;border-top:1px solid var(--line);display:flex;gap:27px;align-items:center;font-size:18px;line-height:1.5}
.practice-list span{color:var(--muted);font-size:10px}
.origin{display:grid;grid-template-columns:1fr 1fr;gap:12%;padding:66px 0 90px;border-top:1px solid var(--line)}
.origin h2{font-size:clamp(27px,3vw,43px);letter-spacing:-.04em;margin-top:23px;line-height:1.3}
.origin-text{font-size:16px;line-height:1.9}
.origin-quote{font-family:'Noto Sans SC',sans-serif;font-size:19px;line-height:1.8;margin:0 0 12px}
.origin-cite{font-style:normal;color:var(--muted);font-size:11px;display:block;margin-bottom:27px}
.partnerships-content{display:grid;grid-template-columns:1fr 1fr;gap:12%;padding:60px 0 95px;border-top:1px solid var(--line)}
.partnerships-content p{font-size:22px;line-height:1.7;max-width:570px}
.contact-placeholder{border-left:1px solid var(--line);padding:15px 0 15px 35px;align-self:start}
.contact-placeholder p{font-size:15px;color:var(--muted);margin-top:16px}
.partnerships-gallery{padding:25px 0 65px;border-top:1px solid var(--line)}
.gallery-heading{display:flex;justify-content:space-between;gap:30px;align-items:baseline;padding:10px 0 30px}
.gallery-heading h2{font-size:clamp(24px,3vw,42px);letter-spacing:-.035em;line-height:1.35}
.gallery-heading>p{font-size:12px;line-height:1.8;color:var(--muted);max-width:250px}
.production-gallery-placeholder{aspect-ratio:2.25/1;position:relative;background:var(--deep);border:1px solid var(--line);display:grid;place-content:center;text-align:center;padding:40px;gap:18px}
.production-gallery-placeholder .eyebrow{color:var(--muted);font-size:10px}
.production-gallery-placeholder>p{font-size:18px;line-height:1.7}
.gallery-frame-corner{position:absolute;inset:20px;border:1px solid rgba(243,238,232,.08);pointer-events:none}
.production-gallery{display:grid;grid-template-columns:1fr 1fr;gap:30px}
.production-gallery figure{margin:0}
.production-gallery figure:first-child{grid-column:1/-1}
.production-gallery img{width:100%;height:auto}
.production-gallery figcaption{font-size:12px;line-height:1.7;margin-top:13px;color:var(--muted)}
dialog{background:var(--red);color:var(--white);border:0;padding:0;margin:0;width:100%;height:100%;max-width:none;max-height:none;inset:0;overflow-y:auto}
dialog::backdrop{background:var(--red)}
.menu-body{padding:25px var(--gutter) 35px}
.menu-nav{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:repeat(5,auto);grid-auto-flow:column;column-gap:8%;padding:14px 0 36px}
.menu-nav a{display:flex;align-items:baseline;gap:21px;border-bottom:1px solid var(--line);padding:12px 0 15px;min-width:0}
.menu-number{font-size:10px;color:var(--muted);letter-spacing:.05em;min-width:16px}
.menu-name{font-family:var(--heading);font-size:clamp(27px,3.8vw,60px);font-weight:700;letter-spacing:-.05em;line-height:1.14;transition:transform .2s ease}
.menu-nav a:hover .menu-name{transform:translateX(7px)}
.menu-nav a[aria-current=page] .menu-name{color:var(--muted)}
.menu-bottom{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding-top:9px;font-size:12px}
.menu-link-row{display:flex;gap:17px 24px;flex-wrap:wrap}
.menu-link-row a{padding:8px 0}
.menu-link-row a:hover{text-decoration:underline;text-underline-offset:5px}
.menu-caption{margin-top:34px;display:flex;justify-content:space-between;font-size:10px;color:var(--muted);letter-spacing:.07em}
html[lang=zh-CN] .hero-title{letter-spacing:-.04em;line-height:1.22;font-size:clamp(48px,6.1vw,96px)}
html[lang=zh-CN] .hero-note{line-height:1.9}
html[lang=zh-CN] .statement h2,html[lang=zh-CN] .collaboration h2{line-height:1.35}
html[lang=zh-CN] .about-prose{line-height:1.95}
html[lang=zh-CN] .page-title{letter-spacing:-.04em;line-height:1.2}
html[lang=zh-CN] .card-heading h3{font-size:25px;line-height:1.4}
html[lang=zh-CN] .card-credits{font-size:12px;gap:6px 18px}
html[lang=zh-CN] .menu-name{letter-spacing:-.025em;line-height:1.25}
@media(min-width:1700px){.page-shell,.site-header,.site-footer,.menu-header,.menu-body{padding-left:max(var(--gutter),calc((100vw - 1540px)/2));padding-right:max(var(--gutter),calc((100vw - 1540px)/2))}}
@media(max-width:1050px){.header-right{gap:26px}.quick-nav{gap:20px}.home-hero{grid-template-columns:1fr 185px;gap:25px}.hero-title{font-size:6.6vw}.hero-note{font-size:13px}.films-grid{gap:22px}.card-credits{grid-template-columns:1fr;gap:1px}.card-credits dd+dt{margin-top:5px}.card-heading h3{font-size:20px}.statement{gap:8%}.detail-credit{grid-template-columns:110px 1fr;gap:16px}.film-detail{gap:7%}.footer-top{gap:40px}}
@media(max-width:760px){.site-header,.menu-header{min-height:90px;padding-top:20px;padding-bottom:20px;gap:16px}.wordmark{font-size:23px}.header-right{gap:20px}.quick-nav{display:none}.menu-toggle{min-width:25px}.menu-toggle>span:first-child{display:none}.home-hero{padding:30px 0 38px;grid-template-columns:1fr}.hero-meta{margin-bottom:26px;gap:23px}.hero-title{font-size:clamp(42px,8vw,65px);letter-spacing:-.055em}.hero-note{font-size:13px;padding-bottom:0}.hero-note br{display:none}.hero-note br::after{content:' '}.hero-note{max-width:320px}.films-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 24px}.film-card:last-child{grid-column:1 / 2}.card-heading{padding:17px 0 12px}.card-heading h3{font-size:20px}.card-credits{font-size:11px}.card-role{font-size:10px}.placeholder-title{font-size:36px}.statement{margin-top:60px;padding:50px 0;gap:35px;grid-template-columns:1fr}.statement h2{margin-top:19px;font-size:35px}.statement-copy{padding-top:0;font-size:16px;line-height:1.85}.statement-copy .text-link{margin-top:20px}.collaboration{padding:48px 0 55px;align-items:flex-start;flex-direction:column;gap:24px}.collaboration h2{font-size:38px}.footer-top{grid-template-columns:1fr 1fr;gap:35px 25px;padding-bottom:35px}.footer-brand{grid-column:1 / -1}.footer-brand p{margin-top:13px}.footer-bottom{font-size:9px;align-items:flex-end}.page-heading{padding:32px 0 38px}.page-title{font-size:70px}.page-title.long-title{font-size:56px}.film-index{padding-bottom:60px}.film-filters{gap:24px;padding-bottom:28px}.film-detail{gap:30px;grid-template-columns:1fr 1fr;padding-bottom:55px}.detail-copy>.eyebrow{margin-bottom:18px}.detail-title{font-size:32px}.detail-original{font-size:15px}.detail-credits{margin-top:27px}.detail-credit{grid-template-columns:1fr;gap:6px;padding:13px 0;font-size:13px}.detail-credit dt{font-size:10px}.detail-role{margin-top:23px}.detail-role p{font-size:12px}.about-intro{grid-template-columns:1fr;gap:29px;padding:40px 0 50px}.about-intro .large-label{font-size:23px}.about-prose{font-size:16px}.practice{grid-template-columns:1fr;gap:27px;padding-bottom:50px}.practice-list li{font-size:16px;padding:17px 0}.origin{grid-template-columns:1fr;gap:32px;padding:45px 0 55px}.origin h2{margin-top:16px;font-size:31px}.origin-text{font-size:15px}.origin-quote{font-size:18px}.partnerships-content{grid-template-columns:1fr;gap:40px;padding:40px 0 70px}.partnerships-content p{font-size:20px}.contact-placeholder p{font-size:14px}.menu-body{padding-top:15px}.menu-nav{column-gap:7%;padding-top:0}.menu-nav a{gap:12px;padding:14px 0}.menu-name{font-size:30px}.menu-number{font-size:9px;min-width:13px}.menu-bottom{grid-template-columns:1fr;gap:12px}.menu-caption{gap:15px;font-size:9px}html[lang=zh-CN] .hero-title{font-size:64px}html[lang=zh-CN] .page-title{font-size:64px}html[lang=zh-CN] .card-heading h3{font-size:23px}}
@media(max-width:480px){.header-right{gap:16px}.wordmark{font-size:22px}.language-switch{font-size:11px;gap:1px}.language-switch button{min-width:30px}.hero-meta{font-size:9px;gap:20px}.hero-title{font-size:10.1vw}.home-hero{padding-top:27px;gap:24px}.section-heading{padding-bottom:20px}.section-heading h2{font-size:14px}.films-grid{grid-template-columns:1fr;gap:42px}.film-card:last-child{grid-column:auto}.card-heading h3{font-size:25px}.card-credits{grid-template-columns:max-content 1fr;font-size:12px;gap:6px 12px}.card-credits dd+dt{margin-top:0}.card-role{font-size:11px;margin-top:17px}.placeholder-title{font-size:48px}.statement{margin-top:55px}.statement h2{font-size:31px}.collaboration h2{font-size:32px}.footer-links{font-size:13px;gap:7px}.footer-bottom{align-items:flex-start}.page-title{font-size:59px}.page-title.long-title{font-size:46px}.page-heading{padding-top:24px}.page-heading .eyebrow{font-size:10px;margin-bottom:20px}.film-filters{gap:25px}.film-filters a{font-size:12px}.film-detail{grid-template-columns:1fr;gap:37px}.back-link{padding:9px 0 27px}.detail-copy>.eyebrow{margin-bottom:20px}.detail-title{font-size:41px}.detail-original{font-size:17px;margin-top:14px}.detail-credits{margin-top:31px}.detail-credit{grid-template-columns:116px minmax(0,1fr);gap:20px;font-size:13px;padding:18px 0}.detail-credit dt{font-size:11px}.detail-role p{font-size:13px}.detail-role{margin-top:30px}.next-film h2{font-size:25px}.next-film .arrow{font-size:32px}.next-film{padding-bottom:35px}.empty-state{min-height:340px;gap:20px}.empty-state h2{font-size:32px}.menu-nav{grid-template-columns:1fr;padding-bottom:29px}.menu-nav a{padding:12px 0;gap:18px}.menu-name{font-size:35px}.menu-number{min-width:15px}.menu-caption{flex-direction:column;gap:8px}.menu-link-row{gap:10px 20px}.menu-bottom{font-size:12px}.menu-header .header-right{gap:17px}html[lang=zh-CN] .hero-title{font-size:15vw}html[lang=zh-CN] .page-title{font-size:54px}html[lang=zh-CN] .menu-name{font-size:33px}html[lang=zh-CN] .card-heading h3{font-size:26px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
@media(max-width:760px){.gallery-heading{flex-direction:column;gap:12px}.gallery-heading>p{max-width:none}.production-gallery-placeholder{aspect-ratio:1.8/1;padding:30px}.production-gallery-placeholder>p{font-size:15px}.partnerships-gallery{padding-bottom:45px}.card-role{font-size:12px;margin-top:0}.detail-synopsis>p{font-size:14px}.placeholder-english{font-size:17px}}
@media(max-width:480px){.menu-nav{grid-template-rows:none;grid-auto-flow:row}.production-gallery{grid-template-columns:1fr}.production-gallery-placeholder{aspect-ratio:1.3/1}.card-role{font-size:12px}.placeholder-english{font-size:21px}.card-synopsis>p{font-size:14px}}
/* Japanese follows the approved bold headings and neutral body typography. */
html[lang=ja] .hero-title{font-size:clamp(38px,5.3vw,88px);line-height:1.3;letter-spacing:-.035em;word-break:keep-all;overflow-wrap:anywhere}
html[lang=ja] .hero-note,html[lang=ja] .about-prose{line-height:1.95}
html[lang=ja] .statement h2{font-size:clamp(25px,2.75vw,44px);line-height:1.55;letter-spacing:-.025em}
html[lang=ja] .collaboration h2{line-height:1.45;letter-spacing:-.025em}
html[lang=ja] .page-title{font-size:clamp(38px,6vw,96px);line-height:1.35;letter-spacing:-.03em;word-break:keep-all;overflow-wrap:anywhere}
html[lang=ja] .page-title.long-title{font-size:clamp(31px,5vw,78px)}
html[lang=ja] .menu-name{font-size:clamp(22px,3.1vw,50px);line-height:1.4;letter-spacing:-.025em;word-break:keep-all;overflow-wrap:anywhere}
html[lang=ja] .card-heading h3{font-size:25px;line-height:1.4}
html[lang=ja] .detail-title{line-height:1.35}
html[lang=ja] .card-credits{font-size:12px}
@media(max-width:760px){html[lang=ja] .hero-title{font-size:clamp(34px,7.5vw,57px)}html[lang=ja] .statement h2{font-size:clamp(24px,4.7vw,35px)}html[lang=ja] .menu-name{font-size:clamp(19px,3.6vw,27px)}html[lang=ja] .page-title{font-size:clamp(36px,7.5vw,58px)}html[lang=ja] .page-title.long-title{font-size:clamp(30px,6.3vw,46px)}html[lang=ja] .hero-note br{display:block}}
@media(max-width:480px){.site-header,.menu-header{gap:12px}.wordmark{font-size:clamp(16px,4.5vw,22px)}.header-right,.menu-header .header-right{gap:12px}.language-switch{gap:0;font-size:11px}.language-switch button{min-width:26px;padding:8px 4px}html[lang=ja] .menu-name{font-size:clamp(24px,6.8vw,33px)}html[lang=ja] .collaboration h2{font-size:29px}html[lang=ja] .detail-title{font-size:36px}}
