@charset "UTF-8";
:root{color-scheme:dark;--bg:#111313;--panel:#191c1c;--ink:#f3f0e9;--muted:#abb2af;--line:#353b39;--red:#ea5048;--serif:Georgia,'Yu Mincho','Hiragino Mincho ProN','Songti SC','Noto Serif CJK SC',serif;--sans:Arial,'Hiragino Kaku Gothic ProN','Microsoft YaHei',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.75 var(--sans)}[hidden]{display:none!important}a{color:inherit;text-decoration:none}button,input,summary{font:inherit}button,summary{cursor:pointer}button,a,input,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--red);outline-offset:5px}a:hover{color:var(--red)}button{color:var(--ink)}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.3}h1,h2{font-family:var(--serif)}.wrap{width:min(1240px,calc(100% - 80px));margin-inline:auto}.section{padding-block:78px}.accent{color:var(--red)}.eyebrow{font-size:.8rem;font-weight:700;letter-spacing:.14em;color:var(--muted);text-transform:uppercase;margin-bottom:14px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.skip{position:fixed;inset-block-start:-100px;inset-inline-start:20px;background:var(--red);color:#fff;padding:12px;z-index:50}.skip:focus{inset-block-start:12px}
.site-header{height:92px;display:flex;align-items:center;gap:32px;padding-inline:40px;border-bottom:1px solid var(--line);position:relative;background:#111313;z-index:20}.brand{display:flex;gap:14px;align-items:center;flex-shrink:0;font:700 1.2rem/1.25 var(--serif)}.brand small{display:block;letter-spacing:.18em;font:500 .65rem/2 var(--sans);color:var(--muted)}.seal{display:inline-grid;place-items:center;width:43px;height:49px;background:#b73531;color:#fff;font:30px/1 var(--serif)}.desktop-nav{display:flex;gap:28px;align-items:center;margin-inline:auto;font-size:.9rem;white-space:nowrap}.desktop-nav a:hover{color:var(--red)}.header-actions{display:flex;align-items:center;gap:18px}.languages{position:relative;min-width:96px}.languages summary{list-style:none;font-size:.9rem;padding:10px;border:1px solid var(--line)}.languages summary::-webkit-details-marker{display:none}.languages summary span{float:inline-end;margin-inline-start:12px}.languages nav{position:absolute;inset-inline-end:0;inset-block-start:100%;background:#202524;min-width:160px;border:1px solid var(--line);padding:8px;box-shadow:0 12px 24px #0008}.languages nav a{display:block;padding:7px 12px}.languages [aria-current]{color:var(--red)}.menu-toggle{display:none;background:transparent;border:1px solid var(--line);padding:7px 12px}#mobile-nav{position:absolute;z-index:19;inset-inline:0;background:#1a1f1d;padding:16px 30px;border-bottom:1px solid var(--line)}#mobile-nav a{display:block;padding:12px}
.hero{position:relative;min-height:610px;display:flex;align-items:center;overflow:hidden}.hero>img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center 30%;filter:saturate(.7) brightness(.76)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#111313 0%,#111313e0 26%,#11131340 70%),linear-gradient(0deg,#111313,transparent 35%)}.hero-copy{position:relative;padding-block:64px}.hero .eyebrow{color:#d0c9bc;letter-spacing:.22em}.hero-display{font-family:var(--serif);font-size:clamp(3.4rem,6.7vw,6.4rem);font-weight:700;line-height:1.13;letter-spacing:-.045em;margin-block:18px 27px;max-width:800px}.hero h1{font:500 1.1rem/1.6 var(--sans);max-width:570px;color:#ddd9cf;margin-bottom:12px}.hero-intro{color:var(--muted);max-width:560px}.hero-actions{display:flex;align-items:center;gap:32px;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:center;gap:30px;padding:13px 23px;background:transparent;border:1px solid var(--line);font-weight:700;font-size:.95rem}.primary{background:#b73531;border-color:#b73531;color:#fff}.primary:hover{background:#d44039;color:#fff}.text-link{text-decoration:underline;text-underline-offset:5px;font-size:.95rem}.dispatch{border-block:1px solid var(--line);background:#191c1b}.dispatch>.wrap{display:flex;justify-content:space-between;gap:20px;padding-block:20px;color:var(--muted);font-size:.9rem;flex-wrap:wrap}.dispatch a{color:var(--ink);margin-inline-start:15px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:25px;margin-bottom:32px}.section-heading h2{font-size:clamp(1.9rem,3vw,2.65rem);margin-bottom:0}.section-heading>p{color:var(--muted);font-size:.95rem;margin:0}.quick-links{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);margin-bottom:35px}.quick-links a{padding:21px;display:flex;gap:16px;justify-content:space-between;border-inline-end:1px solid var(--line);font-weight:700}.quick-links a:last-child{border-inline-end:0}.quick-links span{color:var(--red)}.tools{display:flex;gap:22px;justify-content:space-between;align-items:center;flex-wrap:wrap}.filters{display:flex;gap:5px;flex-wrap:wrap}.filters button{border:0;background:none;color:var(--muted);padding:10px 13px;font-size:.9rem;min-height:44px}.filters button[aria-pressed=true]{background:#b73531;color:#fff}.search input{background:#191d1b;color:var(--ink);border:1px solid var(--line);padding:10px 15px;max-width:100%;width:240px;border-radius:0}.search input::placeholder{color:var(--muted)}.result-count{color:var(--muted);font-size:.8rem;margin-block:16px}.topic-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.topic-card{border:1px solid var(--line);background:#171b19;min-width:0;transition:border-color .2s,transform .2s}.topic-card>a{display:flex;height:100%;flex-direction:column}.topic-card:hover{border-color:#a04d44;transform:translateY(-3px)}.topic-card a:hover{color:var(--ink)}.card-body{padding:25px;display:flex;flex-direction:column;flex:1}.card-number{float:inline-end;color:#636d67;letter-spacing:0}.topic-card h3{font:600 1.45rem/1.3 var(--serif);margin-bottom:13px}.topic-card p{color:var(--muted);font-size:.95rem;line-height:1.75;flex:1}.card-cta{display:flex;justify-content:space-between;color:#e6ddd1;font-size:.9rem}.card-cta>span{color:var(--red)}.guide-note{border-inline-start:2px solid #86574d;padding-inline-start:16px;color:var(--muted);margin:30px 0 0;font-size:.9rem}.news-section{background:#161918;border-block:1px solid var(--line)}.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.image-card{background:none}.image-card img{aspect-ratio:16/9;object-fit:cover;filter:saturate(.75)}.about-strip{display:flex;align-items:center;gap:40px;padding-block:70px}.about-mark{font:5rem/1 var(--serif);color:#ad3d34}.about-strip p{color:var(--muted);max-width:880px}.site-footer{border-top:1px solid var(--line);padding-block:32px 35px;font-size:.9rem;color:var(--muted)}.footer-brand{color:var(--ink);font-weight:700}.site-footer nav{display:flex;flex-wrap:wrap;gap:24px;margin-block:20px}.site-footer p{max-width:850px}.site-footer small{font-size:.8rem}.preview-note{color:#d9af86}
.article-layout{display:grid;grid-template-columns:minmax(0,830px) 260px;gap:70px;padding-block:35px 85px}.breadcrumbs{display:flex;gap:12px;align-items:baseline;color:var(--muted);font-size:.85rem;margin-bottom:46px;flex-wrap:wrap}.article-header h1{font-size:clamp(2rem,3.8vw,3.4rem);letter-spacing:-.025em;margin-block:16px 24px;overflow-wrap:anywhere}.article-meta{color:var(--muted);font-size:.85rem;margin-bottom:28px}.answer{font-size:1.2rem;line-height:1.75;border-inline-start:3px solid var(--red);padding:17px 23px;background:#1c211e;margin-bottom:34px}.article-body{font-size:1.05rem;line-height:1.95;color:#d7dcd6}.article-body section{padding-block:14px}.article-body h2{font-size:1.7rem;color:var(--ink);margin-bottom:17px}.article-body h3{font-size:1.1rem;color:var(--ink);margin-bottom:10px}.article-body a,.legal p a{color:#eca99c;text-decoration:underline;text-underline-offset:4px}.sources{border-top:1px solid var(--line);margin-top:25px}.sources ul{padding-inline-start:20px;font-size:.9rem;overflow-wrap:anywhere}.sources li{margin-block:8px}.article-aside{padding-top:84px}.article-aside h2{font:600 1rem var(--sans);margin-bottom:20px}.toc{border-top:2px solid var(--red);padding-top:22px}.toc a{display:block;margin-bottom:15px;color:var(--muted);font-size:.9rem;line-height:1.6}.toc a:hover{color:var(--red)}.related{margin-top:40px;border-top:1px solid var(--line);padding-top:23px}.related a{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid var(--line);padding-block:14px;font-size:.95rem}.related span{color:var(--red)}.back-hub{display:block;margin-top:30px;color:var(--red)}.table-wrap{overflow-x:auto;margin-block:23px;border:1px solid var(--line)}table{border-collapse:collapse;min-width:440px;width:100%;font-size:.9rem;line-height:1.6}th,td{text-align:start;padding:16px;border-bottom:1px solid var(--line);vertical-align:top}thead{background:#242b26;color:var(--ink)}tbody th{font-weight:500;color:var(--ink)}tbody tr:last-child>*{border-bottom:0}.table-note{font-size:.9rem;color:var(--muted)}.legal{padding-block:75px 110px;max-width:880px;min-height:55vh}.legal h1{font-size:2.8rem}.legal h2{margin-top:34px}.legal p{font-size:1.1rem;color:#c5ccc5;line-height:1.9}.notice{padding:20px;border:1px solid var(--line);background:var(--panel)}
.portal main{min-height:100vh;display:flex;align-items:center;position:relative}.portal-art{position:absolute;inset:0;background:linear-gradient(90deg,#111313f7 20%,#11131370),url('/assets/kyoto.jpg') center/cover no-repeat}.portal-content{position:relative;width:min(760px,calc(100% - 64px));margin:60px auto}.portal-content .eyebrow{margin-top:25px}.portal h1{font-size:clamp(3rem,7vw,6rem);line-height:1.1;margin-bottom:25px}.portal-content nav{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-block:25px}.portal-content nav a{border:1px solid #60635c;padding:16px 22px;background:#171b19c0;display:flex;justify-content:space-between;gap:15px}.portal-disclaimer{font-size:.8rem;color:var(--muted)}
[dir=rtl]{font-family:Tahoma,Arial,sans-serif}[dir=rtl] .eyebrow{letter-spacing:0}[dir=rtl] .hero-shade{background:linear-gradient(270deg,#111313 0%,#111313e0 26%,#11131340 70%),linear-gradient(0deg,#111313,transparent 35%)}[dir=rtl] h1,[dir=rtl] h2,[dir=rtl] h3,[dir=rtl] .hero-display{font-family:Tahoma,Arial,sans-serif;letter-spacing:0;line-height:1.55}[dir=rtl] .hero-display{font-size:clamp(3rem,5.5vw,5.3rem)}[dir=rtl] .brand{font-family:Tahoma,Arial,sans-serif}[dir=rtl] .brand small{letter-spacing:.08em}
@media(min-width:1500px){.hero>img{object-position:center 36%}.hero{min-height:680px}}
@media(max-width:1100px){.site-header{padding-inline:25px;gap:20px}.desktop-nav{gap:17px;font-size:.85rem}.brand{font-size:1rem}.brand small{font-size:.6rem}.article-layout{gap:36px;grid-template-columns:minmax(0,1fr) 220px}.quick-links a{padding:17px}.wrap{width:calc(100% - 50px)}}
@media(max-width:860px){.desktop-nav{display:none}.header-actions{margin-inline-start:auto}.menu-toggle{display:block}.site-header{height:78px}.hero{min-height:550px}.hero-shade{background:linear-gradient(90deg,#111313ed,#11131366),linear-gradient(0deg,#111313,transparent)}.hero h1{max-width:480px}.topic-grid{grid-template-columns:repeat(2,1fr)}.news-grid{gap:15px}.card-body{padding:20px}.article-layout{display:flex;flex-direction:column}.article-aside{padding-top:0;display:grid;grid-template-columns:1fr 1fr;gap:30px}.related{margin-top:0}.back-hub{grid-column:1/-1;margin-top:0}.section-heading{align-items:flex-start;flex-direction:column}.section-heading>p{margin-top:-12px}.quick-links{grid-template-columns:1fr 1fr}.quick-links a:nth-child(2){border-inline-end:0}.quick-links a:nth-child(-n+2){border-bottom:1px solid var(--line)}.news-grid{grid-template-columns:1fr}.image-card>a{display:grid;grid-template-columns:1fr 1.4fr}.image-card img{height:100%;object-fit:cover}.section{padding-block:55px}}
@media(max-width:520px){.wrap{width:calc(100% - 36px)}.site-header{padding-inline:18px;gap:10px}.brand{font-size:.95rem;gap:9px}.brand small{font-size:.5rem;letter-spacing:.12em}.seal{width:33px;height:40px;font-size:25px}.header-actions{gap:8px}.languages{min-width:74px}.languages summary{padding:8px;font-size:.8rem}.menu-toggle{padding:6px 9px}.hero{min-height:560px}.hero>img{object-position:64% center}.hero-display{font-size:3.4rem}.hero-copy{padding-block:40px}.hero-actions{flex-wrap:wrap;gap:20px}.hero .eyebrow{font-size:.73rem;letter-spacing:.1em}.hero h1{font-size:1rem}.hero-intro{font-size:.95rem}.dispatch>.wrap{gap:10px}.dispatch span{display:block}.dispatch a{display:block;margin-inline-start:0}.quick-links a{font-size:.9rem;padding:15px 12px}.topic-grid{grid-template-columns:1fr}.tools{display:block}.search{display:block;margin-top:15px}.search input{width:100%}.filters button{padding-inline:10px;font-size:.85rem}.image-card>a{display:flex}.image-card img{height:auto}.section-heading h2{font-size:1.85rem}.about-strip{gap:20px;align-items:flex-start}.about-mark{font-size:3rem}.article-header h1{font-size:2.15rem}.article-layout{padding-top:25px;gap:40px}.breadcrumbs{margin-bottom:30px}.answer{font-size:1.07rem;padding:15px}.article-body{font-size:1rem}.article-body h2{font-size:1.4rem}.article-aside{grid-template-columns:1fr}.site-footer nav{gap:15px}.legal h1{font-size:2.2rem}.portal-content nav{grid-template-columns:1fr}.portal-content{margin-block:35px}.portal h1{font-size:3.2rem}[dir=rtl] .hero-display{font-size:2.8rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.topic-card{transition:none}.topic-card:hover{transform:none}}
.trailer-link{margin-block:28px 0}

/* Locale-first families keep Han, Latin letters and digits in one font's metrics.
   Keep the display serif for the hero; use a consistent UI face elsewhere. */
html:lang(zh){--sans:'PingFang SC','Microsoft YaHei','Noto Sans CJK SC','Source Han Sans SC',sans-serif;--serif:'Songti SC','Noto Serif CJK SC','Source Han Serif SC',serif}
html:lang(ja){--sans:'Hiragino Kaku Gothic ProN','Yu Gothic','Noto Sans CJK JP',sans-serif;--serif:'Hiragino Mincho ProN','Yu Mincho','Noto Serif CJK JP',serif}
:lang(zh) :is(h1,h2,h3,.topic-card h3,.article-aside h2){font-family:var(--sans);line-height:1.5;letter-spacing:normal}
:lang(zh) :is(.desktop-nav,.filters,.quick-links,.languages,.dispatch,.card-cta,.article-meta,.breadcrumbs){line-height:1.6;letter-spacing:normal}
:lang(zh) .hero-display{line-height:1.28;letter-spacing:0}
:lang(zh) .eyebrow{letter-spacing:.04em}
:lang(zh) :is(.hero>.hero-copy>.eyebrow,.section-heading .eyebrow){letter-spacing:.12em}
:lang(zh) .brand{font-family:var(--sans);line-height:1.4}
:lang(zh) .brand small{font-family:var(--sans);line-height:1.5}
.languages summary{display:flex;align-items:baseline;justify-content:space-between;gap:10px;line-height:1.6}
.languages summary span{float:none;margin:0;font-size:1em;line-height:inherit}
.card-body>.eyebrow{display:flex;justify-content:space-between;align-items:baseline;gap:12px;line-height:1.6}
.card-number{float:none;font:inherit;letter-spacing:0;font-variant-numeric:tabular-nums}
:is(.quick-links a,.card-cta,.related a,.button){align-items:baseline}
:is(.quick-links a,.card-cta,.related a,.button)>span[aria-hidden],.quick-links a>span{flex-shrink:0;font:inherit;line-height:inherit}
.filters{align-items:baseline}
.filters button{line-height:1.6;display:inline-flex;align-items:baseline;justify-content:center}
.article-meta time{font:inherit;font-variant-numeric:tabular-nums;vertical-align:baseline}
.section-heading{align-items:last baseline}
@media(max-width:860px){.section-heading{align-items:flex-start}}
