:root{--ink:#171715;--black:#111110;--paper:#fff;--soft:#f5f5f2;--gold:#bca16b;--gold-dark:#826b3c;--muted:#696961;--line:#deded7;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 var(--sans)}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}button:disabled{cursor:wait}button{color:inherit}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--gold-dark);outline-offset:5px}img{display:block;max-width:100%}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400}em{font-weight:400;color:var(--gold);font-style:italic}.header{height:100px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;gap:25px;background:white;position:relative;z-index:5}.wordmark{font:30px/1 var(--serif);letter-spacing:.13em;display:inline-block;white-space:nowrap}.wordmark span{display:block;text-align:center;font:10px/1.5 var(--sans);letter-spacing:.4em;margin-top:9px;color:var(--gold-dark)}.header nav{display:flex;align-items:center;gap:36px;font-size:14px}.header nav a:hover{color:var(--gold-dark)}.nav-contact{border-left:1px solid var(--line);padding-left:36px}.nav-contact span{padding-left:15px}.menu-toggle{display:none}.hero{background:var(--black);color:#fff;min-height:720px;display:grid;grid-template-columns:1fr 46%;position:relative;overflow:hidden}.hero-copy{padding:85px 6% 95px 9.4%;position:relative;z-index:2}.eyebrow{font:12px/1.6 var(--sans);letter-spacing:.18em;font-weight:600;color:var(--gold-dark);margin-bottom:30px}.hero .eyebrow{color:var(--gold)}h1{font-size:clamp(65px,6.4vw,100px);line-height:1.03;letter-spacing:-.055em;margin-bottom:32px}h1 em{letter-spacing:-.05em}.hero-description{font-size:17px;line-height:1.75;color:#d0d0c9}.hero-actions{display:flex;gap:26px;align-items:center;margin-top:35px;flex-wrap:wrap}.button{display:inline-flex;gap:28px;justify-content:space-between;align-items:center;padding:16px 22px;border:1px solid transparent;font-size:14px;font-weight:600;min-height:54px;transition:background .2s,transform .2s}.gold{background:var(--gold);color:#171715}.gold:hover{background:#d1bb8f;transform:translateY(-2px)}.text-button{border:0;background:none;padding:6px 0;display:flex;align-items:center;gap:10px;font-size:14px}.text-button small{color:#bdbdb6;font-size:12px}.circle-play{font-size:9px;border:1px solid #66665b;width:34px;height:34px;border-radius:50%;display:grid;place-items:center}.hero-footnote{color:#898980;margin-top:42px;font-size:13px}.hero-visual{position:relative;min-height:720px;overflow:hidden;background:#24231f}.hero-visual>img,.hero-visual>video{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;object-position:center 40%}.hero-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#111110 0,transparent 22%),linear-gradient(0deg,rgba(0,0,0,.6),transparent 30%);pointer-events:none}.hero-visual>video{opacity:0;transition:opacity .5s}.hero-visual>video.playing{opacity:1}.visual-note{position:absolute;right:30px;bottom:28px;z-index:2;font-size:10px;letter-spacing:.16em;color:#fff}.motion-toggle{position:absolute;top:25px;right:25px;z-index:3;border:1px solid #aaa;background:#111a;color:white;border-radius:50%;width:44px;height:44px}.scroll-hint{position:absolute;bottom:26px;left:5%;font-size:10px;letter-spacing:.18em;color:#c8c8bf;z-index:3}.scroll-hint span{padding-left:22px;font-size:20px}.intro-strip{display:flex;justify-content:center;align-items:center;gap:30px;padding:30px 5%;border-bottom:1px solid var(--line);font-family:var(--serif);font-size:18px}.gold-line{height:1px;width:80px;background:var(--gold)}.section{padding:100px 7%;max-width:1600px;margin:auto}h2{font-size:clamp(40px,4.1vw,64px);line-height:1.12;letter-spacing:-.045em}.concept{display:grid;grid-template-columns:1fr 1fr;gap:12%;padding-bottom:65px}.concept-copy{padding-top:42px}.lead{font-size:21px;line-height:1.65}.concept-copy>p+p,.vision-copy>p+p{margin-top:22px}.concept-copy>p:not(.lead){color:var(--muted)}.underlined{display:inline-block;padding-bottom:7px;border-bottom:1px solid var(--gold);font-size:14px;margin-top:28px}.underlined span{padding-left:30px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;padding-top:0;padding-bottom:100px}.steps article{border-top:1px solid var(--line);padding-top:25px}.step-number{color:var(--gold-dark);font-family:var(--serif);font-size:25px}.steps h3{font-size:25px;margin:14px 0}.steps p{font-size:15px;color:var(--muted)}.stories-section{background:var(--soft);max-width:none}.stories-heading{display:flex;align-items:end;justify-content:space-between;gap:40px}.stories-heading>p{font-size:16px;color:var(--muted);padding-bottom:6px}.city-tabs{display:flex;gap:35px;border-bottom:1px solid #ccc;margin:50px 0 35px}.city-tabs button{background:none;border:0;border-bottom:2px solid transparent;padding:16px 8px 20px 0;font-family:var(--serif);font-size:27px;min-width:150px;text-align:left;color:#74746d}.city-tabs button span{font:11px var(--sans);letter-spacing:.1em;margin-left:20px}.city-tabs button[aria-selected=true]{color:var(--ink);border-bottom-color:var(--gold-dark)}.story-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.story-grid[hidden]{display:none}.story-art{height:390px;background:#171715;overflow:hidden;position:relative}.story-art img{width:100%;height:100%;object-fit:contain;transition:transform .7s}.story-card:hover .story-art img{transform:scale(1.025)}.story-number{position:absolute;top:15px;left:15px;color:white;background:#111b;padding:4px 9px;font-size:11px;letter-spacing:.12em}.story-info{padding-top:22px}.story-meta{font-size:11px;color:var(--gold-dark);letter-spacing:.13em;margin-bottom:8px}.story-info h3{font-size:28px;line-height:1.2}.story-info>p:not(.story-meta){font-size:14px;color:var(--muted);margin:12px 0 18px;min-height:46px}.story-play{display:flex;align-items:center;justify-content:space-between;border:0;border-top:1px solid #ccc;width:100%;background:none;padding:16px 0 5px;font-size:14px;text-align:left}.story-play .play-icon{border:1px solid var(--gold-dark);border-radius:50%;width:35px;height:35px;display:grid;place-items:center;font-size:10px}.story-disclaimer{font-size:12px;line-height:1.7;max-width:750px;color:var(--muted);margin-top:35px}.story-disclaimer a{text-decoration:underline;text-underline-offset:3px}.vision{display:grid;grid-template-columns:46% 54%;background:#171715;color:white;overflow:hidden}.vision-image{height:730px;overflow:hidden;background:#111}.vision-image img{height:100%;width:100%;object-fit:contain}.vision-copy{padding:90px 12% 75px 12%}.vision-copy .eyebrow{color:var(--gold)}.vision-copy h2{margin-bottom:30px}.vision-copy>p:not(.eyebrow):not(.lead){color:#babab1;font-size:16px}.light{color:white}.transparency{display:grid;grid-template-columns:1fr 1fr;gap:12%;border-bottom:1px solid var(--line)}.transparency-items article{margin-bottom:26px;padding-bottom:26px;border-bottom:1px solid var(--line)}.transparency-items h3{font-size:24px;margin-bottom:10px}.transparency-items p{font-size:15px;color:var(--muted)}.faq{display:grid;grid-template-columns:1fr 1fr;gap:12%}.faq details{border-bottom:1px solid var(--line)}.faq summary{list-style:none;position:relative;padding:23px 38px 23px 0;font-size:16px;cursor:pointer}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';position:absolute;right:5px;top:18px;font-size:25px;font-weight:300;color:var(--gold-dark)}.faq details[open] summary:after{content:'−'}.faq details p{font-size:15px;color:var(--muted);padding:0 25px 25px 0}.contact{background:var(--soft);max-width:none;display:grid;grid-template-columns:1.2fr 1fr;gap:12%}.contact h2{margin-bottom:25px}.contact>div>p:not(.eyebrow){color:var(--muted);font-size:16px}.contact-email{display:inline-block;border-bottom:1px solid var(--gold);font:clamp(20px,2.2vw,34px)/1.6 var(--serif);margin:25px 0}.contact-email span{padding-left:20px}.contact-person{font-size:14px!important}.contact-person a{display:inline-block;margin-top:8px}form label{display:block;font-size:12px;font-weight:600;margin-bottom:7px}input,select,textarea{display:block;width:100%;border:0;border-bottom:1px solid #bcbcb2;border-radius:0;background:transparent;padding:8px 0 13px;color:var(--ink);margin-bottom:22px;font-size:16px}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#76766d}.form-note{font-size:12px;color:var(--muted);margin-bottom:18px}.form-note a{text-decoration:underline}.contact-status{font-size:13px}.footer{background:#111110;color:#bdbdb5;padding:60px 5% 25px}.footer .wordmark{color:var(--gold)}.footer .wordmark span{color:var(--gold)}.footer-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:50px;gap:30px}.footer-top>p{font:22px var(--serif)}.footer-top>a:last-child{font-size:12px}.footer-bottom{border-top:1px solid #373731;padding-top:25px;display:flex;justify-content:space-between;gap:25px;font-size:11px;flex-wrap:wrap}.footer-bottom nav{display:flex;gap:25px;flex-wrap:wrap}.cookie-open{background:none;border:0;padding:0;color:inherit;font:inherit}.skip{position:fixed;left:15px;top:-100px;background:white;color:black;padding:15px;z-index:100}.skip:focus{top:10px}dialog{border:1px solid #57574d;padding:30px;background:#171715;color:white;max-width:min(980px,92vw);width:980px;max-height:90dvh;overflow:auto}dialog::backdrop{background:#000c;backdrop-filter:blur(8px)}dialog h2{font-size:35px;letter-spacing:-.03em}dialog p{color:#bdbdb5;font-size:14px;margin-top:18px}dialog video{width:100%;max-height:65dvh;display:block;background:black}dialog small{display:block;font:12px var(--sans);color:#bdbdb5;margin:12px 0}.dialog-top{display:flex;justify-content:space-between;align-items:start;gap:20px;margin-bottom:20px}.dialog-close{background:none;border:1px solid #76766b;width:42px;height:42px;color:white;flex:none}.dialog-close:hover{border-color:var(--gold)}#cookie-dialog{max-width:620px;padding:45px}#cookie-dialog>.dialog-close{float:right}#cookie-dialog h2{font-size:38px}.audio-dialog{width:min(820px,92vw);max-width:92vw;min-width:0}.audio-dialog .dialog-top>*{min-width:0}.audio-content>*{min-width:0;max-width:100%}.audio-content>div{overflow-wrap:anywhere}.audio-content{display:grid;grid-template-columns:220px minmax(0,1fr);gap:30px;min-width:0}.audio-content img{width:100%;height:340px;object-fit:contain;background:black}.audio-content h3{font-size:30px}.audio-content select{color:white;border-color:#777;margin:20px 0}.audio-content option{background:#171715}.audio-content label{font-size:12px;color:var(--gold)}.audio-content audio{width:100%;margin-top:15px}.audio-content .source-link{font-size:12px;text-decoration:underline}.legal{max-width:850px;padding:80px 25px 100px;margin:auto;min-height:65vh}.legal h1{font-size:60px}.legal h2{font-size:28px;margin:35px 0 15px}.legal p{margin:15px 0}.legal a{text-decoration:underline;text-underline-offset:3px}.legal .notice{border-left:3px solid var(--gold);padding:15px 20px;background:var(--soft);font-size:15px}.legal ul{padding-left:22px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:1600px){.hero-copy{padding-left:max(8%,calc((100vw - 1400px)/2))}}@media(max-width:1100px){.header nav{gap:20px}.nav-contact{padding-left:20px}.hero{grid-template-columns:54% 46%;min-height:650px}.hero-copy{padding-top:70px}.hero-visual{min-height:650px}h1{font-size:70px}.hero-actions{gap:18px}.section{padding:75px 5%}.steps{padding-top:0;gap:25px}.concept,.transparency,.faq,.contact{gap:7%}.story-art{height:340px}.vision-copy{padding:70px 9%}.vision-image{height:700px}.city-tabs button{min-width:120px}.lead{font-size:19px}}
@media(max-width:760px){html{scroll-padding-top:25px}.header{height:80px;padding:0 6%}.wordmark{font-size:25px}.wordmark span{font-size:9px}.menu-toggle{display:flex;gap:12px;background:none;border:0;font-size:14px;padding:12px 0}.header nav{display:none;position:absolute;top:80px;left:0;right:0;background:white;padding:25px 6% 35px;box-shadow:0 12px 15px #0001}.header nav.open{display:flex;flex-direction:column;align-items:start;gap:22px}.nav-contact{padding:0;border:0}.hero{display:flex;flex-direction:column;min-height:0}.hero-copy{padding:55px 6% 40px}.hero .eyebrow{font-size:10px;margin-bottom:25px}h1{font-size:clamp(40px,11.7vw,80px)}.hero-description{font-size:16px}.hero-actions{margin-top:28px;gap:24px}.hero-footnote{display:none}.hero-visual{height:460px;min-height:0;margin-left:12%}.hero-visual>img{object-position:center 47%}.hero-visual:after{background:linear-gradient(0deg,#111110,transparent 25%),linear-gradient(90deg,#111110,transparent 12%)}.visual-note{right:20px;bottom:45px;font-size:9px}.scroll-hint{bottom:15px;left:6%}.intro-strip{flex-direction:column;gap:12px;font-size:17px;padding:30px 6%}.gold-line{width:35px}.section{padding:65px 6%}h2{font-size:43px}.eyebrow{margin-bottom:23px;font-size:11px}.concept,.transparency,.faq,.contact{grid-template-columns:1fr;gap:35px}.concept-copy{padding-top:0}.lead{font-size:20px}.steps{grid-template-columns:1fr;gap:30px;padding-top:0}.steps h3{font-size:25px;margin:8px 0}.steps article{position:relative;padding-left:45px}.step-number{position:absolute;left:0;top:27px;font-size:22px}.stories-heading{display:block}.stories-heading>p{margin-top:25px}.city-tabs{gap:25px;margin-top:30px}.city-tabs button{min-width:0;font-size:25px;flex:1}.city-tabs button span{display:block;margin:9px 0 0;font-size:10px}.story-grid{grid-template-columns:1fr;gap:40px}.story-art{height:460px}.story-info>p:not(.story-meta){min-height:0}.story-info h3{font-size:29px}.story-play{padding-top:13px}.vision{grid-template-columns:1fr}.vision-image{height:500px}.vision-copy{padding:55px 6% 65px}.transparency-items article:last-of-type{margin-bottom:0}.faq-list{margin-top:0}.contact-email{font-size:29px}.contact{gap:45px}.footer{padding:45px 6% 30px}.footer-top{align-items:start;flex-wrap:wrap;gap:25px;padding-bottom:35px}.footer-top>p{font-size:19px;flex-basis:100%;order:2}.footer-bottom{flex-direction:column;gap:20px}.footer-bottom nav{gap:18px}dialog{padding:20px}.audio-content{grid-template-columns:minmax(0,1fr);gap:20px}.audio-content img{height:230px}dialog h2{font-size:28px}#cookie-dialog{padding:28px}#cookie-dialog h2{font-size:32px}.legal h1{font-size:43px}.legal{padding-top:50px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important;transform:none!important}.hero-visual video{display:none}}

@media(prefers-reduced-motion:reduce){*{translate:none!important}}

/* Preserve the complete supplied portrait-format film. */
.hero-visual>video,.hero-visual>img{object-fit:contain;background:var(--black)}
#film-video{height:65dvh;width:auto;max-width:100%;object-fit:contain;margin-inline:auto}

/* Finished motifs and visible multilingual storytelling. */
.hero-languages{display:block;margin-top:12px;color:var(--gold);font-size:14px}
.language-band{display:flex;justify-content:space-between;align-items:center;gap:32px;padding:25px 0;margin-top:35px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.language-band h3{font-size:27px;margin-bottom:8px}.language-band p{font-size:14px;color:var(--muted)}.language-band .language-note{max-width:320px;font-size:12px}.language-band+.city-tabs{margin-top:20px}
.partner-languages{margin-top:20px;max-width:540px}
.story-qr{position:absolute;top:55px;right:12px;display:block;width:76px;height:76px;background:#fff;box-shadow:0 1px 12px #0003}
.story-qr img{width:100%;height:100%;object-fit:contain;transform:none!important}.story-qr:hover{outline:2px solid var(--gold);outline-offset:3px}
@media(max-width:760px){.language-band{display:block;margin-top:25px}.language-band .language-note{margin-top:15px;max-width:none}.story-qr{width:88px;height:88px}}

/* Persistent, immediately visible page-language control. */
.site-language{position:relative;flex:none}.language-button{display:flex;align-items:center;gap:8px;min-width:70px;min-height:42px;padding:9px 12px;border:1px solid var(--line);background:#fff;font-size:12px;letter-spacing:.08em}.language-button>span{font-size:17px;color:var(--gold-dark)}.language-menu{position:absolute;right:0;top:calc(100% + 9px);width:190px;padding:7px;background:#fff;border:1px solid var(--line);box-shadow:0 14px 36px #0002;z-index:30}.language-menu button{display:flex;align-items:center;gap:14px;width:100%;border:0;background:transparent;padding:10px 11px;text-align:left;font-size:14px}.language-menu button span{width:26px;color:var(--gold-dark);font-size:11px;letter-spacing:.08em}.language-menu button:hover,.language-menu button:focus-visible,.language-menu button[aria-current=true]{background:var(--soft)}.floating-language{position:fixed;right:20px;top:20px;z-index:20}.floating-language .language-menu{right:0}[lang="ja"] body,[lang="zh-CN"] body{word-break:normal;line-break:strict}[lang="ja"] h1,[lang="ja"] h2,[lang="ja"] h3,[lang="zh-CN"] h1,[lang="zh-CN"] h2,[lang="zh-CN"] h3{letter-spacing:-.02em}
@media(max-width:1100px) and (min-width:761px){.header{gap:14px}.header nav{gap:14px}.nav-contact{padding-left:14px}.language-button{min-width:60px;padding-inline:10px}}
@media(max-width:760px){.header{gap:10px}.header>.wordmark{font-size:23px;margin-right:auto}.header>.wordmark span{font-size:8px}.site-language{order:2}.menu-toggle{order:3;gap:8px;font-size:13px}.language-button{min-width:58px;padding:8px 9px}.language-button>span{font-size:15px}.language-menu{position:fixed;top:70px;right:6%;width:185px}}

/* News navigation */
.header nav a[aria-current="page"]{color:var(--gold-dark);text-decoration:underline;text-underline-offset:7px}
@media (min-width:761px) and (max-width:1050px){.header>.wordmark{margin-right:auto}.menu-toggle{display:flex;order:3;gap:8px;background:none;border:0;font-size:14px;padding:12px 0}.site-language{order:2}.header nav{display:none;position:absolute;top:100px;left:0;right:0;background:white;padding:25px 5% 35px;box-shadow:0 12px 15px #0001}.header nav.open{display:flex;flex-direction:column;align-items:start;gap:22px}.nav-contact{padding:0;border:0}}
