@font-face{font-family:'Noto Sans JP';font-style:normal;font-weight:100 900;font-display:swap;src:url("/immersive/media/noto-sans-jp.woff") format('woff')}
@font-face{font-family:'Noto Serif JP';font-style:normal;font-weight:500 700;font-display:swap;src:url("/immersive/media/noto-serif-jp.woff") format('woff')}
/* style.css */
:root{font-family:Arial,'Noto Sans JP','Noto Sans Thai',Tahoma,sans-serif;color:#102426;background:#f4f6f3;--ink:#102426;--paper:#f4f6f3;--blue:#225ee8;--acid:#d7fa64;--line:#c4ceca;--muted:#526366;font-size:16px;line-height:1.65}*{box-sizing:border-box}body{margin:0}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.4;cursor:not-allowed}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid #e35121;outline-offset:5px}p,h1,h2,h3{margin:0}button{color:inherit}button,a{transition:background .22s,color .22s,transform .22s}button:active,.primary:active{transform:scale(.98)}.skip{position:fixed;top:-100px;padding:16px;background:white;z-index:20}.skip:focus{top:10px}.demo-banner{position:sticky;top:0;z-index:8;display:flex;gap:16px;align-items:center;background:#d7fa64;min-height:42px;padding:8px 4vw;font-size:.875rem;color:#172818}.demo-banner b{font-size:.75rem;letter-spacing:.1em;background:#182c25;color:white;padding:0 7px}.banner-tail{margin-left:auto}header{display:flex;align-items:center;justify-content:space-between;padding:22px 4vw;border-bottom:1px solid var(--line);gap:20px}.identity{display:flex;align-items:center;gap:16px;font-weight:700;letter-spacing:-.02em}.mark{font-size:42px;line-height:1;font-weight:900;letter-spacing:-7px;padding-right:6px}.mark span{color:var(--blue)}.languages{display:flex;border:1px solid var(--line);border-radius:30px;padding:3px}.languages button{border:0;border-radius:22px;background:none;min-height:44px;min-width:68px;font-size:.875rem}.languages button[aria-pressed=true]{color:white;background:var(--ink)}.navigation{display:grid;grid-template-columns:repeat(3,1fr);padding:0 4vw;border-bottom:1px solid var(--line);background:var(--paper)}.navigation a{display:flex;align-items:center;gap:16px;min-height:72px;position:relative;font-size:1.05rem}.navigation a span{font-size:.75rem;font-weight:400;color:var(--muted)}.navigation a:after{content:'';height:3px;position:absolute;bottom:0;left:0;right:30px;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform .35s}.navigation a[aria-current=page]:after,.navigation a:hover:after{transform:scaleX(1)}.navigation a[aria-current=page]{color:var(--blue)}main{min-height:70vh}.page{padding:42px 4vw 70px;animation:page-in .5s cubic-bezier(.2,.8,.2,1)}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:30px}.eyebrow{font-size:.75rem;letter-spacing:.14em;font-weight:700;margin-bottom:12px}.page-heading h1{font-size:clamp(2rem,4vw,4.6rem);letter-spacing:-.05em;line-height:1.2;font-weight:800}.page-heading .sub{max-width:330px;color:var(--muted);font-size:.9375rem}.workspace{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,1fr);min-height:500px;border:1px solid var(--line);background:white}.map{min-width:0;position:relative;overflow:hidden;background:#e4eae4;isolation:isolate}.map-toolbar{position:absolute;top:22px;left:24px;right:24px;display:flex;justify-content:space-between;z-index:1;gap:10px;font-size:.875rem}.map-label{background:white;padding:7px 12px;box-shadow:0 4px 15px #1326260a}.map-svg{position:absolute;width:100%;height:100%;inset:0}.map svg .block{fill:#d4ddd1;stroke:#c2cebd;stroke-width:1}.map svg .road{fill:none;stroke:#f8faf6;stroke-width:13}.map svg .minor{stroke-width:6}.map svg .river{fill:none;stroke:#adcfdf;stroke-width:36}.map svg .moat{fill:none;stroke:#9dbbbb;stroke-width:7}.map-grid{position:absolute;inset:0;background-image:linear-gradient(#7892800c 1px,transparent 1px),linear-gradient(90deg,#7892800c 1px,transparent 1px);background-size:32px 32px;pointer-events:none}.map-watermark{position:absolute;bottom:22px;left:24px;font-size:.875rem;background:#fffE;padding:8px 12px}.pin{position:absolute;width:48px;height:48px;border:2px solid white;border-radius:50%;background:var(--ink);color:white;box-shadow:0 5px 18px #132c3030;z-index:2;font-weight:700;transition:transform .25s,background .25s}.pin:hover,.pin[aria-pressed=true]{transform:translateY(-4px);background:var(--blue)}.pin[aria-pressed=true]:before{content:'';position:absolute;inset:-8px;border:1px solid var(--blue);border-radius:50%;animation:pulse 2.4s ease-out 2}.pin-one{left:32%;top:34%}.pin-two{left:57%;top:57%}.pin-three{left:71%;top:30%}.map-selection{position:absolute;bottom:75px;left:24px;right:24px;padding:14px 18px;background:white;box-shadow:0 8px 24px #12313012;z-index:3;font-size:.875rem;animation:page-in .3s ease}.map-selection b{display:block}.request-pane{padding:32px;display:flex;flex-direction:column;justify-content:space-between;background:var(--ink);color:white}.request-pane .eyebrow{color:#acc1b9}.request-pane h2{font-size:clamp(1.7rem,2.5vw,2.6rem);line-height:1.4;letter-spacing:-.025em}.request-pane p{color:#ccdad6;margin:20px 0;font-size:1rem}.primary{display:flex;justify-content:center;align-items:center;border:0;background:var(--acid);color:var(--ink);padding:17px 22px;min-height:58px;font-weight:700;width:100%;border-radius:3px}.primary:hover{background:#e5ff97}.pane-bottom{border-top:1px solid #ffffff28;padding-top:22px;margin-top:24px;font-size:.875rem;color:#ccdad6}.pane-bottom strong{display:block;color:white;margin-bottom:7px}.map-caption{display:flex;justify-content:space-between;gap:16px;padding:14px 0;color:var(--muted);font-size:.875rem}.section-heading{display:flex;align-items:center;gap:24px;margin:56px 0 24px}.section-heading h2{font-size:1.6rem;letter-spacing:-.03em}.section-heading:after{content:'';height:1px;background:var(--line);flex:1}.notice{display:grid;grid-template-columns:minmax(230px,.65fr) 1.35fr;gap:32px;border-left:3px solid #dd7027;background:#eeeee4;padding:22px 26px;margin-bottom:30px}.notice strong{font-size:1rem}.notice p{font-size:.9375rem;color:#455153}.resource{display:grid;grid-template-columns:70px minmax(0,1.2fr) minmax(0,1fr) 190px;align-items:start;gap:22px;border-bottom:1px solid var(--line);padding:30px 0}.resource-number{font-size:2rem;line-height:1;color:#859995;font-weight:300}.resource h3{font-size:1.2rem;line-height:1.55}.resource p{font-size:.9375rem;color:var(--muted)}.resource small{display:block;font-size:.75rem;color:var(--muted);margin-top:10px}.official{border:1px solid var(--ink);padding:12px 16px;min-height:50px;text-align:center;font-size:.875rem;font-weight:700;border-radius:30px}.official:hover{background:var(--ink);color:white}.fineprint{font-size:.875rem;color:var(--muted);margin-top:25px}.feature-band{background:var(--blue);color:white;padding:38px;margin-bottom:36px;display:flex;justify-content:space-between;align-items:end;gap:30px;overflow:hidden}.feature-band .big-word{font-weight:900;font-size:clamp(3.5rem,8vw,8rem);letter-spacing:-.07em;line-height:1}.feature-band .band-copy{max-width:420px;font-size:1rem}.senior .feature-band{background:#234e42}.senior .resource{grid-template-columns:70px 1fr 1.2fr 210px}.senior .resource p{font-size:1.0625rem}footer{background:#0e2426;color:#d5dfdb;padding:46px 4vw 22px}.footer-top{display:grid;grid-template-columns:1fr 1.2fr;gap:60px}.footer-word{font-size:clamp(3rem,7vw,7rem);font-weight:900;line-height:.92;letter-spacing:-.07em;color:#d7fa64}.footer-top p{font-size:.875rem;margin:0 0 16px;max-width:720px}.footer-top small{font-size:.75rem;color:#a6bab4}.footer-bottom{display:flex;justify-content:space-between;font-size:.75rem;letter-spacing:.12em;border-top:1px solid #ffffff30;margin-top:45px;padding-top:20px}dialog{border:0;border-radius:8px;padding:0;width:min(580px,calc(100% - 28px));max-height:calc(100dvh - 32px);color:var(--ink);background:var(--paper);box-shadow:0 30px 100px #0005}dialog[open]{animation:dialog-in .3s ease}dialog::backdrop{background:#082427ac;backdrop-filter:blur(5px)}.dialog-top{display:flex;align-items:center;justify-content:space-between;padding:12px 24px;background:var(--acid);font-size:.75rem;font-weight:700;letter-spacing:.1em}.close{border:0;background:none;font-size:30px;width:44px;height:44px;line-height:1}#flow{padding:28px}.flow-step{color:var(--blue);font-size:.875rem;margin-bottom:14px;font-weight:700}.flow-title{font-size:1.7rem;line-height:1.4;margin-bottom:16px}.flow-body{color:var(--muted);margin-bottom:22px}.flow-warning{border-left:3px solid #d5752e;padding:12px 16px;background:#eeeee4;margin:18px 0;font-size:.875rem}.field{display:block;margin:22px 0}.field input[type=checkbox]{height:22px;width:22px;vertical-align:middle;margin-right:10px}.field select{display:block;width:100%;padding:14px;border:1px solid #91a9a0;background:white;margin-top:8px}.flow-actions{display:flex;gap:12px;margin-top:24px}.secondary{border:1px solid #97aaa4;background:transparent;padding:13px 20px;min-height:52px;border-radius:3px}.flow-actions .primary{flex:1}.summary{background:white;padding:18px;margin:20px 0}.summary dt{font-size:.75rem;color:var(--muted)}.summary dd{margin:3px 0 14px;font-weight:700}.timeline{list-style:none;margin:20px 0;padding:0}.timeline li{border-left:2px solid #b9cec3;margin-left:8px;padding:4px 0 20px 22px;color:var(--muted);position:relative}.timeline li:before{content:'';position:absolute;width:12px;height:12px;left:-7px;top:10px;border-radius:50%;background:#bacac0;border:2px solid var(--paper)}.timeline li.active{color:var(--ink);font-weight:700}.timeline li.active:before{background:var(--blue)}[hidden]{display:none!important}@keyframes page-in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes dialog-in{from{opacity:0;transform:translateY(25px) scale(.98)}to{opacity:1;transform:none}}@keyframes pulse{0%{opacity:.7;transform:scale(.8)}100%{opacity:0;transform:scale(1.6)}}@media(max-width:1000px){.resource{grid-template-columns:44px 1fr 1fr}.official{grid-column:2;justify-self:start}.resource p{grid-column:3;grid-row:1/3}.senior .resource{grid-template-columns:44px 1fr 1fr}.workspace{grid-template-columns:1.15fr 1fr}.request-pane{padding:25px}.page-heading .sub{max-width:280px}}@media(max-width:700px){.demo-banner{gap:9px;font-size:.8125rem;padding:8px 5vw}.banner-tail{display:none}header{padding:17px 5vw}.identity{gap:10px;font-size:.875rem}.mark{font-size:34px}.languages button{min-width:52px}.navigation{padding:0 5vw}.navigation a{gap:8px;min-height:66px;font-size:.875rem}.navigation a span{display:none}.navigation a:after{right:18px}.page{padding:30px 5vw 45px}.page-heading{display:block;margin-bottom:24px}.page-heading h1{font-size:2.2rem}.page-heading .sub{margin-top:16px;max-width:100%}.workspace{grid-template-columns:1fr}.map{min-height:370px}.map-toolbar{left:16px;right:16px;top:16px;font-size:.75rem}.map-watermark{left:16px;font-size:.75rem}.request-pane{padding:26px}.request-pane h2{font-size:1.75rem}.pane-bottom{margin-top:22px}.map-caption{display:block;font-size:.8125rem}.map-caption span{display:block;margin-top:4px}.notice{grid-template-columns:1fr;gap:9px;padding:18px}.resource,.senior .resource{grid-template-columns:32px 1fr;gap:14px;padding:26px 0}.resource-number{font-size:1.6rem}.resource p{grid-column:2;grid-row:auto}.official{grid-column:2;justify-self:stretch}.feature-band{padding:28px;display:block}.feature-band .big-word{font-size:4rem;margin-bottom:20px}.footer-top{grid-template-columns:1fr;gap:30px}.footer-word{font-size:4.8rem}.footer-bottom{letter-spacing:.05em}.flow-actions{flex-wrap:wrap}.flow-actions .primary{min-width:180px}#flow{padding:24px}.section-heading{margin-top:36px}.pin-one{left:27%}.pin-three{left:73%}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media(forced-colors:active){.pin[aria-pressed=true],.navigation a[aria-current=page]{outline:3px solid Highlight}.primary{border:2px solid ButtonText}}
.request-pane h2{white-space:pre-line}h1,h2,h3,p,a,span,small{overflow-wrap:anywhere}.identity{min-width:0}.languages{flex-shrink:0}.flow-warning{position:relative}.workspace .request-pane{animation:page-in .52s .06s both}.map-svg{animation:page-in .52s both}@media(min-width:701px){.resource{transition:padding-left .24s}.resource:hover{padding-left:8px}}@media(max-width:420px){header{gap:10px}.identity{max-width:58%}.identity>span:last-child{font-size:.8125rem}.mark{flex-shrink:0}.navigation a{font-size:.8125rem}}@media(prefers-reduced-motion:reduce){.workspace .request-pane,.map-svg{animation:none}.resource{transition:none}}

.dialog-top{position:sticky;top:0;z-index:2;letter-spacing:0;font-size:.875rem}
#flow>div{animation:flow-in .22s ease-out}@keyframes flow-in{from{opacity:.3;transform:translateY(6px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){#flow>div{animation:none}}

/* v3.2: selection never overlays map pins at any viewport. */
.map-wrap{min-width:0;display:flex;flex-direction:column;background:#e4eae4}.map-wrap .map{min-height:370px;flex:1}.map-selection{position:static;margin:0;box-shadow:none;border-top:1px solid var(--line);min-height:1px;animation:none}.map-selection:empty{padding:0;border:0}.emergency-number{font-weight:700;color:white!important;margin:14px 0 4px!important}.emergency-source{display:block;text-decoration:underline;min-height:44px;padding:8px 0}.feature-band .big-word{min-width:0;overflow-wrap:anywhere}.demo-banner{flex-wrap:wrap}#flow-title{scroll-margin-top:100px}.close{flex-shrink:0}.flow-title:focus{outline:3px solid #e35121;outline-offset:5px}
@media(max-width:700px){.banner-tail{display:block;width:100%;margin-left:0}.map-wrap .map{flex:none;height:370px}.feature-band .big-word{font-size:clamp(2rem,12vw,4rem)}}

/* directory.css */
.directory{margin:2rem 0;padding:1.25rem;border:2px solid #173b57;border-radius:12px;background:#fff;color:#142b3d;font-size:1rem;line-height:1.65}.directory h2{font-size:1.65rem}.directory h3{font-size:1.3rem;margin:.6rem 0}.directory-filters{display:flex;flex-wrap:wrap;gap:1rem;margin:1rem 0}.directory-filters label{display:grid;gap:.4rem;flex:1;min-width:160px;font-size:1rem;font-weight:700}.directory select{font:inherit;max-width:100%;padding:.7rem;border:1px solid #637c8e;background:white;border-radius:6px;color:#142b3d;min-height:48px}.directory-results{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:1rem}.directory-card{border:1px solid #8ca1b0;border-radius:8px;padding:1rem;min-width:0;overflow-wrap:anywhere}.directory-card a{display:block;padding:.6rem 0;min-height:44px;color:#005798;text-decoration:underline}.directory-card p{margin:.6rem 0}.directory-badge{display:inline-block;background:#e7eef6;padding:.2rem .6rem;font-weight:700}.directory-note,.directory-empty{grid-column:1/-1}.directory summary{cursor:pointer;min-height:44px;padding:.6rem 0}.directory :focus-visible{outline:3px solid #ad4c00;outline-offset:3px}

.page.festival .feature-band,.page.senior .feature-band{display:none}

/* i18n.css */
/* Additive multilingual candidate styles. Base audit stylesheet is untouched. */
:root{font-family:Arial,"Noto Sans",system-ui,sans-serif}
html{overflow-wrap:break-word;text-size-adjust:100%}
body{overflow-wrap:anywhere}
header{gap:1rem;flex-wrap:wrap}
.identity{min-width:0;flex:1 1 18rem}
.languages{display:flex;align-items:center;gap:.5rem;border-radius:10px;padding:.3rem .6rem;max-width:100%;flex-shrink:1}
.languages label{font-size:.85rem;font-weight:700}
.languages select{font:inherit;min-height:44px;max-width:min(16rem,55vw);padding:.45rem;border:1px solid #637c8e;border-radius:6px;background:white;color:#142b3d}
.page-heading{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:end;gap:1.5rem}
.page-heading>div,.page-heading .sub{min-width:0;max-width:100%}
.page-heading h1{font-size:clamp(1.9rem,3.5vw,3.8rem);line-height:1.35;letter-spacing:normal;overflow-wrap:anywhere}
.page-heading .sub{line-height:1.7}
.translation-note{border-inline-start:3px solid #687f90;padding:.65rem .9rem;margin:0 0 1.25rem;color:#344e62;font-size:.875rem;line-height:1.7}
.navigation a{min-width:0;gap:.6rem;overflow-wrap:anywhere}
.navigation b{font-size:clamp(.85rem,1.8vw,1.1rem)}
.request-pane,.request-pane>div,.resource>*{min-width:0}
.request-pane h2{font-size:clamp(1.8rem,3vw,3.1rem);line-height:1.4;letter-spacing:normal}
.request-pane p,.request-pane span{line-height:1.65}
.primary,.secondary,.flow-actions button{white-space:normal;overflow-wrap:anywhere;height:auto;min-height:48px;line-height:1.5}
.directory-filters label{min-width:min(12rem,100%)}
.directory select{min-width:0;width:100%}
.directory-card h3{unicode-bidi:plaintext}
bdi{unicode-bidi:isolate}
.flow-step,.map-toolbar,.emergency-number{unicode-bidi:plaintext}
.summary{text-align:start}
[dir=rtl] .timeline{padding-inline-start:1.6rem;padding-inline-end:0}
[dir=rtl] .close{margin-inline-start:auto;margin-inline-end:0}
[dir=rtl] .navigation,[dir=rtl] .page-heading,[dir=rtl] .directory{text-align:start}
[dir=rtl] .map{direction:ltr}
[dir=rtl] .flow-actions{direction:rtl}
:lang(th),:lang(lo),:lang(my),:lang(hi){letter-spacing:normal;line-height:1.75;word-break:normal}
:lang(zh-Hans),:lang(zh-Hant),:lang(ja),:lang(ko){line-break:auto;word-break:normal}
@media(max-width:800px){.page-heading{grid-template-columns:minmax(0,1fr)}.page-heading .sub{margin-top:0}.languages{margin-inline-start:auto}.resource{min-width:0}}
@media(max-width:480px){header{align-items:stretch}.identity{flex-basis:100%}.languages{width:100%;margin:0;justify-content:space-between}.languages select{max-width:72%;width:72%}.navigation{gap:0}.navigation a{padding:.7rem .5rem}.navigation a span{display:none}.directory{padding:.8rem}.flow-actions{flex-wrap:wrap}.flow-actions button{flex:1 1 100%}.demo-banner{flex-wrap:wrap}.banner-tail{display:block;width:100%;margin-inline-start:0}}

[hidden]{display:none!important}
/* Header, safety entries and menu keep their space before scripts are ready. */
.load-fallback{padding:1.5rem;border:2px solid #173b57;border-radius:10px;margin:1rem 0;line-height:1.8}
.fallback-picker{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;padding:1rem 0}
.fallback-picker select{font:inherit;max-width:100%;min-height:48px;background:white;color:#142b3d}

@media(max-width:480px){.identity{max-width:100%}}

/* External audit N3/N6/N9: stable pins, skip visibility and user font preferences. */
:root{font-size:100%}
.map-wrap .map{flex:none;height:clamp(23.125rem,35vw,31.25rem);min-height:0}
main{scroll-margin-block-start:5rem;scroll-margin-top:80px}

/* portal.css */
/* PORTAL: a city atlas in cobalt, paper and ink. Geometry is interface, artwork is one labelled asset. */
:root{--ink:#172822;--paper:#fbfaf6;--blue:#244dca;--acid:#e3edb6;--line:#c9cfc6;--muted:#57635b;color:var(--ink);background:var(--paper);line-height:1.7}
html{scroll-behavior:smooth}body{background:var(--paper)}::selection{background:#d8e5a4;color:#142a20}
.visually-hidden{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.demo-banner{min-height:36px;padding:6px 4vw;background:#f0eee5;border-bottom:1px solid #ddd8c6;color:#4d493a;gap:10px;font-size:.875rem;z-index:20}.demo-banner b{color:#faf9f4;background:#6a563c;letter-spacing:.08em}.banner-tail{margin-inline-start:auto;margin-left:0;font-size:.8125rem}
header{padding:20px 4vw;min-height:100px;border-color:var(--line)}.identity{flex:1 1 20rem;gap:18px;max-width:none}.mark{font-size:28px;letter-spacing:-.08em;background:var(--blue);color:white!important;border-radius:50%;display:flex;align-items:center;justify-content:center;width:54px;height:54px;padding:0;flex:0 0 auto}.mark span{color:white}.brand-stack{display:flex;flex-direction:column;gap:0;line-height:1.2}.brand-title{font-weight:900;letter-spacing:.01em;font-size:1.125rem}.brand-subtitle{margin-top:6px;font-size:.875rem;color:var(--muted);font-weight:400;letter-spacing:0}
.languages{border:0;padding:0;gap:10px;flex:0 1 auto}.languages label{font-size:.875rem}.languages select{border:1px solid var(--line);background:var(--paper);border-radius:0;min-height:48px;padding-inline:12px;font-size:.9375rem;max-width:15rem}
.navigation{display:flex;justify-content:flex-start;gap:clamp(18px,4vw,62px);border-color:var(--line)}.navigation a{flex:0 1 auto;min-height:60px;line-height:1.45;font-size:1rem;padding:12px 0;gap:10px}.navigation b{font-size:.9375rem}.navigation a span{font-size:.75rem;display:inline}.navigation a:after{inset-inline:0;transform-origin:center;height:2px;right:0}.navigation a:last-child{margin-inline-start:auto}.navigation a:focus-visible{outline-offset:1px}
.portal-page{padding-top:0;padding-bottom:64px;max-width:1600px;margin:auto;animation:portal-in .35s ease-out}.portal-page h1,.portal-page h2,.portal-page h3{letter-spacing:-.025em}.portal-page h1:focus{outline:0}.portal-page a:focus-visible,.portal-page button:focus-visible,.portal-page input:focus-visible,.portal-page summary:focus-visible{outline:3px solid #a84614;outline-offset:5px}
.city-hero{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:4vw;padding:40px 0 42px;border-bottom:1px solid var(--ink);align-items:stretch}.city-intro{display:flex;flex-direction:column;justify-content:center;min-width:0}.city-intro .eyebrow{font-size:.75rem;letter-spacing:.16em;margin-bottom:18px;color:var(--muted)}
.city-masthead{font-family:Arial,Helvetica,sans-serif;font-weight:900;font-size:clamp(4.5rem,7.8vw,8.5rem);letter-spacing:-.09em;line-height:.8;direction:ltr;color:var(--blue);margin-inline-start:-.04em;display:flex;flex-direction:column;align-items:flex-start;gap:9px}.city-masthead span{overflow-wrap:normal;word-break:keep-all}.discovery-title{font-size:clamp(1.45rem,2.2vw,2.3rem);font-weight:500;line-height:1.45;margin:26px 0 20px;max-width:22em;overflow-wrap:anywhere}
.discovery-search{display:flex;min-height:58px;max-width:40rem;background:white;border:1px solid var(--ink)}.discovery-search input{width:100%;min-width:0;border:0;border-radius:0;padding:14px 16px;background:transparent;font-size:1rem;color:var(--ink)}.discovery-search input::placeholder{color:#626c65}.search-button{border:0;border-inline-start:1px solid var(--ink);background:var(--ink);color:var(--paper);padding:12px 20px;font-weight:700;min-height:56px;min-width:80px;flex:0 1 auto}.search-button:hover{background:var(--blue)}.hero-shortcuts{display:flex;flex-wrap:wrap;column-gap:22px;row-gap:0;margin-top:8px}.hero-shortcuts a{display:flex;align-items:center;min-height:44px;font-size:.9375rem;text-decoration:underline;text-underline-offset:5px;text-decoration-color:#a8b0a6}.hero-shortcuts a:hover{color:var(--blue)}
.city-art{margin:0;position:relative;align-self:stretch;min-width:0;display:flex;flex-direction:column;justify-content:center}.city-art img{width:100%;height:100%;max-height:500px;min-height:360px;aspect-ratio:1.2;object-fit:cover;object-position:66% center;display:block}.city-art figcaption{margin-top:10px;font-size:.75rem;color:var(--muted);line-height:1.45;text-align:end}
.portal-section-title{display:flex;align-items:baseline;gap:22px;margin:40px 0 22px}.portal-section-title h2{font-size:clamp(1.5rem,2.5vw,2rem);font-weight:500;line-height:1.5;flex:1}.section-number{font-size:.8125rem;font-weight:700;letter-spacing:.05em;color:var(--blue);min-width:24px}.category-index{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);border-inline-start:1px solid var(--line)}.category-tile{min-height:100px;border-inline-end:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;align-items:center;gap:18px;padding:18px 22px;position:relative;background:var(--paper);transition:background .22s ease,color .22s ease}.category-no{font-size:.75rem;color:var(--muted);align-self:flex-start;margin-top:4px}.category-name{font-size:1.125rem;font-weight:500;line-height:1.5;min-width:0}.category-tile:hover,.category-tile[aria-current=page]{background:var(--blue);color:white}.category-tile:hover .category-no,.category-tile[aria-current=page] .category-no{color:#dce4ff}.category-tile:active{background:#183a9b}.category-hospital,.category-gathering{background:#edf0e5}.category-transport,.category-essentials{background:#f4f1e8}
.place-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.place-card{border-top:2px solid var(--ink);background:transparent;min-width:0;display:flex;flex-direction:column;transition:background .2s ease}.place-card-link{position:relative;display:flex;flex-direction:column;min-height:245px;padding:22px 20px 22px 0;align-items:flex-start;gap:10px}.place-card:hover{background:#f0f1e8}.place-card-link h3{font-size:clamp(1.4rem,2.2vw,2rem);font-weight:500;line-height:1.5;max-width:15em;margin-top:12px}.place-card-link>bdi{color:var(--muted);font-size:.9375rem}.card-kicker{color:var(--blue);font-size:.875rem;font-weight:700;max-width:80%}.card-index{position:absolute;inset-inline-end:2px;top:22px;font-size:.8125rem;color:var(--muted)}.card-action{margin-top:auto;padding-top:16px;font-size:.9375rem;text-decoration:underline;text-underline-offset:5px;font-weight:700}.place-card-meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;padding:12px 0;border-top:1px solid var(--line);font-size:.75rem;color:var(--muted);margin-top:auto}.place-card-meta span:last-child{direction:ltr;unicode-bidi:isolate}.portal-trust{font-size:.875rem;max-width:70em;color:var(--muted);margin-top:18px;line-height:1.8}.source-pending{border:1px solid var(--line);padding:26px;grid-column:1/-1;font-size:1rem}.source-pending h2{font-size:1.25rem;margin-bottom:12px}.portal-search-results{padding-top:28px;scroll-margin-top:80px}.portal-search-results h2{font-size:1.35rem;margin-bottom:22px}.legacy-search-card{border:1px solid var(--line);padding:22px}.legacy-search-card a{font-size:1.25rem;display:block;min-height:48px;text-decoration:underline;text-underline-offset:5px}.legacy-search-card p{font-size:.875rem;color:var(--muted)}
.everyday-panel{border-top:1px solid var(--ink);margin-top:50px}.everyday-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.everyday-links a{display:flex;align-items:center;min-height:84px;border-bottom:1px solid var(--line);padding:14px 0;font-size:1.0625rem;font-weight:500}.everyday-links a:hover{color:var(--blue)}.portal-safety{display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid #c9bfaa;background:#f3f0e7;padding:18px 22px;margin-top:30px;font-size:.9375rem}.portal-safety strong{font-weight:500}.safety-demo-link{min-height:48px;display:flex;align-items:center;border-bottom:1px solid #796745;font-weight:700}
.portal-heading{margin:20px 0 24px;max-width:65rem}.portal-heading h1{font-size:clamp(2rem,4.6vw,4.5rem);font-weight:500;line-height:1.4}.portal-heading .eyebrow{color:var(--blue)}.back-link{display:inline-flex;align-items:center;min-height:48px;font-size:.9375rem;text-decoration:underline;text-underline-offset:5px;margin-top:24px}.category-pills{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:32px;border-bottom:1px solid var(--line);padding-bottom:25px}.category-pills a{display:flex;align-items:center;padding:8px 16px;min-height:48px;border:1px solid var(--line);font-size:.9375rem}.category-pills a[aria-current=page]{background:var(--blue);color:white;border-color:var(--blue)}.category-pills a:hover{border-color:var(--blue)}.portal-browse>.portal-trust{margin:0 0 24px}.portal-browse .directory{margin-top:0;padding:0;border:0;background:transparent}.portal-browse .directory>h2{display:none}.directory-note{font-size:1rem}.directory-filters{background:#eff1e8;border:1px solid var(--line);padding:18px;gap:18px}.directory-filters label{font-size:.9375rem}.directory-filters select{margin-top:7px;border:1px solid #87958a;border-radius:0;background:var(--paper);min-height:48px;padding:8px 12px}.directory-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.directory-results>.directory-note,.directory-results>.directory-empty{grid-column:1/-1}.directory-card{margin:0!important;border-radius:0!important;border:1px solid var(--line)!important;background:transparent!important;padding:24px!important;min-width:0}.directory-card h3{font-size:1.5rem;font-weight:500;line-height:1.5;margin:12px 0 14px}.directory-card p{font-size:1rem;line-height:1.8}.directory-card .directory-badge{background:#e9eddf;color:#3c4c38;border-radius:0;font-size:.875rem;padding:4px 8px}.legacy-record-details{margin-top:14px;border-top:1px solid var(--line)}.legacy-record-details>summary{min-height:48px;display:list-item;font-weight:700;padding:14px 0;cursor:pointer;font-size:.9375rem}.legacy-record-details[open]>summary{margin-bottom:12px}.directory-card a{display:inline-flex;align-items:center;min-height:44px;text-decoration-thickness:1px;text-underline-offset:4px}.directory-card details:not(.legacy-record-details){border-top:1px solid var(--line);padding-top:8px;margin-top:18px}.directory-card summary{cursor:pointer;min-height:44px;padding:8px 0}.directory-card details a{display:flex}.directory-card details p{font-size:.875rem}.directory-card strong{display:block;margin-top:12px}
.detail-title-block{margin:28px 0 40px;border-bottom:1px solid var(--ink);padding-bottom:32px;max-width:100%}.detail-title-block>.eyebrow{color:var(--blue)}.detail-title-block h1{font-size:clamp(2rem,4.2vw,4.5rem);font-weight:500;line-height:1.4;max-width:20em}.detail-area{font-size:1rem;color:var(--muted);margin-top:18px}.detail-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:6vw;align-items:start}.detail-lead{font-size:clamp(1.4rem,2.4vw,2rem);line-height:1.7;font-weight:400;margin-bottom:30px}.detail-body{min-width:0}.source-language-note{font-size:.875rem;color:var(--muted);margin-bottom:18px}.verified-facts{padding-inline-start:22px;margin:0}.verified-facts li{padding-inline-start:8px;margin:18px 0;font-size:1.0625rem;line-height:1.85}.detail-facts{border:1px solid var(--line);padding:28px;background:#f1f2e9;min-width:0}.detail-facts h2{font-size:1.125rem;font-weight:600}.detail-facts dl{margin:12px 0}.detail-facts dt{font-size:.875rem;color:var(--muted);margin-top:22px}.detail-facts dd{font-size:1rem;margin:6px 0 0}.detail-checked{font-size:.875rem;color:var(--muted);border-top:1px solid var(--line);padding-top:18px;margin-top:24px}.detail-official{display:flex;align-items:center;justify-content:center;min-height:52px;background:var(--ink);color:white;padding:12px 18px;margin-top:20px;font-weight:600}.detail-official:hover{background:var(--blue)}.source-disclosure{border-top:1px solid var(--line);margin-top:22px;padding-top:8px}.source-disclosure summary{min-height:48px;padding:10px 0;cursor:pointer;font-size:.9375rem}.source-disclosure a{display:block;text-decoration:underline;min-height:44px;padding:8px 0;text-underline-offset:4px}.source-disclosure p{font-size:.875rem;color:var(--muted);margin-bottom:14px}
footer{background:var(--ink);padding-top:48px;color:#e5eadb}.footer-word{font-size:clamp(4rem,8vw,8rem);color:#e3edb6}.footer-top{grid-template-columns:1fr 1fr;gap:50px}.footer-top p{font-size:.875rem}.footer-top small{font-size:.8125rem}.footer-bottom{font-size:.75rem;letter-spacing:.04em}.translation-note{font-size:.875rem;background:transparent;border-color:var(--line);margin-top:10px}.portal-translation{margin-top:45px}.page:not(.portal-page){padding-top:36px}.page:not(.portal-page) .page-heading h1{font-weight:500;letter-spacing:-.025em}.feature-band{background:var(--blue)}.feature-band .big-word{font-weight:600}.request-pane{background:var(--ink)}.notice{background:#efede3;border-color:#8c7344}.flow-warning{background:#efede3;border-color:#8c7344}.dialog-top{background:#e9eddb}.primary{background:#e3edb6;border-radius:0}.primary:hover{background:#eff6d8}.secondary{border-radius:0}.navigation a:hover{background:transparent}.resource:hover{padding-left:0}
[dir=rtl] .city-intro{text-align:start}[dir=rtl] .city-masthead{align-items:flex-start;text-align:left}[dir=rtl] .city-art figcaption{text-align:start}[dir=rtl] .place-card-link{padding-inline-start:0;padding-inline-end:20px}[dir=rtl] .banner-tail{margin-inline-start:auto}[dir=rtl] .source-disclosure{text-align:start}.time-range{white-space:nowrap}
@keyframes portal-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media(min-width:1600px){header,.navigation,.demo-banner{padding-inline:max(4vw,calc((100vw - 1472px)/2))}.portal-page{padding-inline:64px}}
@media(max-width:1050px){.city-hero{gap:28px}.city-masthead{font-size:clamp(4.6rem,8.3vw,7rem)}.city-art img{min-height:365px}.category-index{grid-template-columns:repeat(3,minmax(0,1fr))}.place-card-link h3{font-size:1.5rem}.detail-layout{gap:32px}.everyday-links{grid-template-columns:repeat(2,minmax(0,1fr))}.navigation{gap:24px}.navigation a span{display:none}}
@media(max-width:760px){header{padding-block:16px;min-height:84px}.identity{flex-basis:17rem;gap:12px}.mark{width:46px;height:46px;font-size:25px}.brand-title{font-size:1rem}.brand-subtitle{font-size:.8125rem}.navigation{gap:18px;flex-wrap:wrap;padding-block:0}.navigation a{flex:1 1 20%;min-height:58px;justify-content:center;text-align:center;padding:10px 0}.navigation a:last-child{margin-inline-start:0}.navigation b{font-size:.875rem}.city-hero{grid-template-columns:minmax(0,1fr) minmax(0,.85fr);gap:20px;padding-top:28px;padding-bottom:26px}.city-masthead{font-size:clamp(3.8rem,8.8vw,5.2rem)}.city-intro .eyebrow{font-size:.75rem;margin-bottom:15px}.discovery-title{font-size:1.45rem;margin:24px 0 16px}.city-art img{min-height:345px;max-height:420px;aspect-ratio:1;object-position:73%}.city-art figcaption{font-size:.75rem}.hero-shortcuts{gap:0 16px}.hero-shortcuts a{font-size:.875rem}.discovery-search{min-height:54px;flex-wrap:wrap}.search-button{padding-inline:14px;min-height:48px}.discovery-search input{padding:10px;flex:1 1 8rem}.category-tile{padding:18px 14px;gap:10px;min-height:92px}.category-name{font-size:1rem}.place-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.featured-places .place-card:last-child{grid-column:1/-1}.place-card-link{min-height:220px}.featured-places .place-card:last-child .place-card-link{min-height:180px}.detail-layout{grid-template-columns:1fr;gap:28px}.detail-facts{padding:24px}.directory-results{grid-template-columns:1fr}.footer-top{grid-template-columns:1fr;gap:28px}.portal-section-title{margin-top:30px}.portal-safety{align-items:flex-start;flex-direction:column;gap:4px}}
@media(max-width:520px){.demo-banner{padding:6px 5vw;font-size:.8125rem;gap:6px 9px}.banner-tail{display:none}.identity{flex-basis:100%;max-width:100%}.identity>span:last-child{font-size:1rem}.languages{width:100%;justify-content:space-between;gap:12px}.languages select{width:65%;max-width:65%;font-size:.9375rem}.languages label{font-size:.875rem}.navigation{padding-inline:5vw;gap:12px}.navigation a{flex-basis:40%;justify-content:flex-start;min-height:48px;text-align:start;padding:10px 0}.navigation b{font-size:.875rem}.city-hero{grid-template-columns:1fr;padding-top:28px;gap:24px}.city-masthead{flex-direction:row;flex-wrap:wrap;gap:0 .13em;font-size:clamp(3.4rem,13vw,4.8rem);line-height:.92}.city-intro .eyebrow{margin-bottom:12px}.discovery-title{font-size:1.5rem;margin:20px 0 16px}.discovery-search{flex-wrap:nowrap;min-height:54px}.search-button{min-height:52px;padding:12px 16px}.city-art img{height:220px;min-height:0;aspect-ratio:1.5;object-position:50% 65%}.city-art figcaption{margin-top:8px;text-align:start}.category-index{grid-template-columns:repeat(2,minmax(0,1fr))}.category-tile{min-height:88px;gap:10px;padding:15px 12px}.category-name{font-size:1rem}.category-no{font-size:.75rem}.portal-section-title{gap:16px;margin-top:28px;margin-bottom:16px}.portal-section-title h2{font-size:1.45rem}.place-grid{grid-template-columns:1fr;gap:24px}.place-card-link,.featured-places .place-card:last-child .place-card-link{min-height:210px;padding-top:18px}.place-card-link h3{font-size:1.75rem}.place-card-meta{font-size:.8125rem}.everyday-links{grid-template-columns:1fr;gap:0}.everyday-links a{min-height:64px}.portal-safety{padding:16px}.category-pills{gap:6px}.category-pills a{padding:8px 12px;font-size:.875rem;min-height:46px}.portal-heading h1{font-size:2.25rem}.directory-card{padding:20px!important}.directory-filters{padding:14px}.detail-title-block{margin-top:20px;margin-bottom:28px}.detail-title-block h1{font-size:2.2rem}.detail-lead{font-size:1.4rem}.detail-facts{padding:20px}.verified-facts li{font-size:1rem}.footer-bottom{gap:20px}.portal-translation{margin-top:32px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(forced-colors:active){.category-tile[aria-current=page],.category-pills a[aria-current=page]{outline:3px solid Highlight}.search-button,.detail-official{border:2px solid ButtonText}.city-masthead{color:CanvasText}}
.header-emergency{min-height:48px;display:flex;align-items:center;text-decoration:underline;text-underline-offset:5px;text-decoration-color:#aa8c73;font-size:.875rem;color:#764221;padding:8px 10px;text-align:center;max-width:15em}.header-emergency:hover{color:#9c3d11}.emergency-index-link{display:inline-flex;align-items:center;min-height:52px;margin-top:10px;text-decoration:underline;text-underline-offset:5px;font-size:1rem}.emergency-reference-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.emergency-reference{border:1px solid #bfa68e;padding:32px;background:#f6f1e7}.emergency-reference h2{font-size:1.4rem;font-weight:500;line-height:1.5}.reference-number{display:block;font-size:clamp(3.5rem,7vw,6rem);font-weight:700;line-height:1.5;direction:ltr;unicode-bidi:isolate;letter-spacing:-.04em;color:#81390f}.emergency-reference-source{display:block;min-height:48px;text-decoration:underline;text-underline-offset:5px;font-size:.9375rem}.search-record-status{margin-top:10px;font-size:.875rem;color:#695836}@media(max-width:760px){.header-emergency{margin-inline-start:auto;max-width:100%;text-align:start}.languages{flex-basis:100%;justify-content:space-between;max-width:100%}.emergency-reference-grid{grid-template-columns:1fr}.emergency-reference{padding:24px}}@media(max-width:520px){header{column-gap:12px;row-gap:8px}.identity{flex-basis:calc(100% - 130px);max-width:100%;min-width:180px}.header-emergency{font-size:.8125rem;max-width:110px;padding:8px 0}.languages{flex-basis:100%}}
/* Preserve the mobile fiction warning and ensure the keyboard skip link clears sticky chrome. */
.skip{z-index:40}.skip:focus{top:8px}.banner-tail{display:block}@media(max-width:520px){.banner-tail{display:block;width:100%;margin-inline-start:0;font-size:.8125rem}}
.category-local_news{grid-column:1/-1;min-height:92px;background:#e9eddf}.category-local_news .category-name{flex:1}.news-brand{font-family:Georgia,serif;font-style:italic;font-size:2.2rem;line-height:1;font-weight:700;letter-spacing:-.06em;color:var(--blue)}.category-local_news:hover .news-brand{color:white}.ping-card{border:1px solid var(--line);padding:clamp(28px,5vw,64px);background:#e9eddf;max-width:900px;position:relative}.ping-card .eyebrow{color:#516246}.ping-word{font-family:Georgia,serif;font-size:clamp(5rem,12vw,9rem);font-style:italic;color:var(--blue);line-height:1.15;letter-spacing:-.065em!important;font-weight:500}.ping-languages{font-size:1rem;margin-top:18px}.ping-link{display:inline-flex;min-height:54px;align-items:center;justify-content:center;background:var(--ink);color:white;padding:12px 22px;margin-top:30px;font-size:1rem}.ping-link:hover{background:var(--blue)}.ping-checked{font-size:.875rem;color:var(--muted);margin-top:20px}
.header-emergency[data-active]{font-weight:700;text-decoration-thickness:2px}.unknown-title{font-size:.9375rem;margin:18px 0 8px;font-weight:700}
/* Keep index numerals atomic: shared span wrapping must not shrink 11 into two lines. */
.category-no,.section-number{flex:0 0 2ch;min-inline-size:2ch;white-space:nowrap;overflow-wrap:normal;word-break:normal;font-variant-numeric:tabular-nums;direction:ltr;unicode-bidi:isolate}
.category-name{flex:1 1 0;min-inline-size:0}.news-brand{flex-shrink:0}
/* Short labels still have a comfortable pointer/touch target. */
.hero-shortcuts{column-gap:8px}.hero-shortcuts a{min-width:44px;padding-inline:8px;justify-content:center}
.back-link{min-width:44px;padding-inline:8px}.navigation a{min-width:44px;padding-inline:8px}
.safety-demo-link,.emergency-index-link,.directory-card a,.source-disclosure a{min-width:44px}
/* Category navigation stays a working control, leaving room for the actual places. */
.portal-browse>.portal-heading{margin-top:12px;margin-bottom:18px}.category-pills{gap:6px;margin-bottom:22px;padding-bottom:16px}.category-pills a{padding:7px 12px;min-height:44px}
.category-chooser{display:none}.category-chooser-controls{display:flex;gap:8px;min-width:0}
.category-chooser label{font-size:.875rem;color:var(--muted)}
.category-chooser select{flex:1 1 auto;width:100%;min-width:0;max-width:100%;min-height:48px;padding:10px 12px;border:1px solid var(--line);border-radius:0;background:var(--paper);color:var(--ink);font-size:1rem}
.category-open{flex:0 0 48px;min-width:48px;min-height:48px;border:1px solid var(--ink);background:var(--ink);color:var(--paper);font-size:1.5rem;line-height:1;padding:10px}.category-open:hover{background:var(--blue)}.category-open span{display:block;overflow-wrap:normal}[dir=rtl] .category-open span{transform:scaleX(-1)}
.category-chooser select:focus-visible{outline:3px solid #a84614;outline-offset:3px}
@media(max-width:760px){.portal-browse>.category-pills{display:none}.category-chooser{display:grid;gap:6px;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--line)}.portal-browse>.portal-heading{margin-top:8px;margin-bottom:16px}.portal-browse>.portal-heading .eyebrow{display:none}.portal-browse>.portal-trust{margin-bottom:18px}}
@media(forced-colors:active){.category-open{border:2px solid ButtonText}}

/* Main portal release: food entry and explicit separated disaster route. */
.food-market-link{display:inline-flex;align-items:center;min-height:48px;margin-top:20px;color:var(--blue);font-weight:700;text-decoration:underline;text-underline-offset:5px}.release-label{direction:ltr;unicode-bidi:isolate}

/* Discovery categories immediately follow the city desk, before editorial blocks. */
.city-desk+.city-index-section{margin-block:0 26px}.city-desk+.city-index-section>.portal-section-title{margin-top:0}.city-index-section+.guide-gateway{margin-top:28px}

/* participation.css */
/* Community contribution: an editorial invitation, with proposals clearly marked. */
.join-home{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,.35fr);gap:32px;align-items:center;margin:28px 0;padding:32px 36px;border:1px solid var(--blue);background:var(--blue);color:white}
.join-home h2{font-size:clamp(1.6rem,2.5vw,2.35rem);line-height:1.45;font-weight:600;margin:8px 0 14px;max-width:24em}.join-home-body>p:last-child{max-width:65ch;font-size:1rem;line-height:1.85}.join-eyebrow{font-size:.875rem;font-weight:600;letter-spacing:.06em;line-height:1.7;margin:0 0 10px}.join-home .join-eyebrow{color:#fff}.join-home-action{display:flex;flex-direction:column;gap:14px;align-items:flex-start}.join-status{display:inline-flex;align-items:center;border:1px solid currentColor;padding:4px 10px;font-size:.875rem;font-weight:600;line-height:1.6;max-width:100%}.join-primary{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:52px;padding:12px 18px;border:1px solid white;color:var(--blue);background:white;font-size:1rem;font-weight:650;line-height:1.6;text-align:center}.join-primary:hover{background:#e3edb6;border-color:#e3edb6;color:#172822}
.ping-strip{display:flex;align-items:center;flex-wrap:wrap;gap:8px 24px;padding:14px 0;border-bottom:1px solid var(--line)}.ping-strip-name{display:inline-flex;align-items:center;min-height:44px;min-width:44px;color:var(--blue);font-family:Georgia,serif;font-size:1.7rem;font-style:italic;font-weight:700}.ping-strip p{font-size:.875rem;flex:1 1 15rem;color:var(--muted)}.ping-strip-external{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;padding:8px 12px;border:1px solid var(--line);font-size:.875rem;text-decoration:underline;text-underline-offset:4px}.ping-context{max-width:58ch;font-size:1rem;line-height:1.85;margin-top:20px}.ping-context p+p{margin-top:12px}.ping-connection-status{font-size:.875rem;font-weight:650;color:#334927}.ping-context .ping-connection-status{padding-block:10px;border-block:1px solid #adb9a1}
.portal-participate{padding-top:22px}.join-intro{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:6vw;align-items:start;margin:30px 0 44px}.join-title{font-size:clamp(2rem,4.4vw,4rem);font-weight:500;line-height:1.4;max-width:18em;margin:12px 0 22px}.join-lead{font-size:1.125rem;line-height:1.9;max-width:70ch;margin-bottom:30px}.join-intro .join-lead{margin-bottom:0}.join-availability{padding:22px 24px;background:#edf0e5;border-inline-start:3px solid #4f6250}.join-availability p{font-size:.9375rem;line-height:1.85;margin-top:14px}.join-availability .join-status{color:#334b2e}.join-availability.compact{max-width:85ch;margin:28px 0 36px}.join-section-title{font-size:clamp(1.5rem,2.5vw,2rem);font-weight:500;line-height:1.5;margin-bottom:18px}.join-section-intro{max-width:72ch;margin-bottom:24px;font-size:1rem;line-height:1.85}.join-option-grid,.join-support-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-block:1px solid var(--ink)}.join-option{display:flex;flex-direction:column;align-items:flex-start;padding:26px 28px;gap:16px;min-width:0;background:transparent;border-inline-end:1px solid var(--line);transition:background .18s,color .18s}.join-option:first-child{padding-inline-start:0}.join-option:last-child{border-inline-end:0}.join-option:hover{background:#e9eddf}.join-number{font-size:.875rem;line-height:1.4;font-variant-numeric:tabular-nums;white-space:nowrap;overflow-wrap:normal;direction:ltr;unicode-bidi:isolate;color:var(--blue);font-weight:700}.join-option h3,.join-support-card h3{font-size:1.3rem;font-weight:550;line-height:1.5;margin:0}.join-option p{font-size:1rem;line-height:1.85;flex:1}.join-option-action{font-size:.9375rem;line-height:1.65;text-decoration:underline;text-underline-offset:5px;min-height:44px;display:flex;align-items:center;margin-top:8px}.join-flow,.join-policies,.join-support{margin-top:56px}.join-flow-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px;list-style:none;margin:0;padding:0}.join-flow-list li{border-top:2px solid var(--blue);padding-top:18px;min-width:0}.join-flow-list h3{font-size:1.125rem;line-height:1.5;margin:12px 0}.join-flow-list p{font-size:1rem;line-height:1.85}.join-policy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.join-policy{padding:26px;border:1px solid var(--line);background:#f1f2e9;min-width:0}.join-policy.paid{background:#f6f0e7;border-color:#bdac94}.join-policy h3{display:inline-block;padding-bottom:8px;margin-bottom:14px;border-bottom:2px solid currentColor;font-size:1.1rem;line-height:1.6}.join-policy p{font-size:1rem;line-height:1.85}.join-boundary{max-width:90ch;border-inline-start:2px solid var(--line);padding-inline-start:18px;margin:22px 0;font-size:.9375rem;line-height:1.85;color:var(--muted)}.join-support-card{padding:26px 28px;border-inline-end:1px solid var(--line);min-width:0}.join-support-card:first-child{padding-inline-start:0}.join-support-card:last-child{border-inline-end:0}.join-support-card h3{margin:14px 0}.join-support-card p{font-size:1rem;line-height:1.85}.join-text-link{display:inline-flex;align-items:center;min-height:48px;min-width:44px;padding:8px 10px;text-decoration:underline;text-underline-offset:5px;line-height:1.65;font-size:1rem;color:var(--blue)}.join-text-link:hover{color:#142822;background:#e9eddf}.join-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:5vw;align-items:start;margin-top:38px}.join-value{border-top:3px solid var(--blue);padding-top:24px}.join-value p{font-size:1.25rem;line-height:1.85}.join-value .join-text-link{margin-top:16px}.join-before{padding:24px;border:1px solid var(--line)}.join-before .join-section-title{font-size:1.25rem}.join-before li{font-size:1rem;line-height:1.85;margin:14px 0;padding-inline-start:3px}.join-before ul{margin:0;padding-inline-start:20px}.join-before>p{font-size:1rem;line-height:1.85}.join-bottom-nav{display:flex;flex-wrap:wrap;gap:12px 24px;border-top:1px solid var(--line);padding-top:22px;margin-top:44px}.join-return-nav{border-top:1px solid var(--line);padding-top:16px;margin-top:40px}.join-translation{font-size:.875rem;line-height:1.85;color:var(--muted);margin-top:28px}.join-home a:focus-visible{outline-color:#fff}.join-option:focus-visible{outline-offset:-3px!important}.join-home :is(p,h2),.portal-participate :is(p,h1,h2,h3,li,a),.ping-context p{overflow-wrap:anywhere}.join-home-action,.join-home-body{min-width:0}
@media(max-width:1000px){.join-intro{gap:32px}.join-flow-list{grid-template-columns:repeat(2,minmax(0,1fr))}.join-home{padding:28px;gap:26px}.join-option,.join-support-card{padding:24px 18px}}
@media(max-width:760px){.join-home{grid-template-columns:1fr;gap:22px;padding:24px}.join-home-action{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.join-intro{grid-template-columns:1fr;gap:22px;margin-top:22px}.join-title{font-size:clamp(2rem,6.2vw,3rem)}.join-option-grid,.join-support-grid{grid-template-columns:1fr}.join-option,.join-option:first-child,.join-support-card,.join-support-card:first-child{padding:24px 8px;border-inline-end:0;border-bottom:1px solid var(--line)}.join-option:last-child,.join-support-card:last-child{border-bottom:0}.join-option{gap:10px}.join-option-action{margin-top:0}.join-policy-grid{grid-template-columns:1fr;gap:16px}.join-policy{padding:22px}.join-detail-layout{grid-template-columns:1fr;gap:24px}.join-flow,.join-policies,.join-support{margin-top:40px}.join-availability{padding:20px}.join-before{padding:20px}.join-flow-list{gap:24px}.join-option h3,.join-support-card h3{font-size:1.35rem}}
@media(max-width:420px){.join-flow-list{grid-template-columns:1fr}.join-home{padding:22px 20px}.join-home-action{align-items:flex-start;flex-direction:column}.join-home h2{font-size:1.55rem}.join-title{font-size:2rem}.join-primary{width:100%}.ping-strip{gap:8px 14px}.ping-strip p{flex-basis:65%}.join-lead{font-size:1.0625rem}}
@media(prefers-reduced-motion:reduce){.join-option{transition:none}}
@media(forced-colors:active){.join-primary,.join-status,.join-availability,.join-option,.join-policy,.join-support-card{border:1px solid CanvasText}.join-option:focus-visible{outline:3px solid Highlight!important}.join-home a:focus-visible{outline-color:Highlight}}

/* Balance the support heading without changing its text or preventing zoom reflow. */
.join-support-title{text-wrap:balance}

/* editorial.css */
/* A source-backed city magazine: cobalt, warm paper, green and apricot. */
:root{--apricot:#f2c396;--pine:#25483d}.demo-banner{position:relative;top:auto;flex-wrap:wrap;isolation:isolate}.demo-banner+header{position:relative;margin-top:0}.navigation{gap:clamp(12px,2.3vw,36px)}.navigation a{min-width:0;max-width:100%;overflow-wrap:anywhere}.navigation a:last-child{margin-inline-start:0}
.city-hero{padding-block:44px 36px;gap:3.2vw}.city-masthead{font-size:clamp(4.5rem,8.6vw,9rem);color:#244dca}.city-art{background:#e7efce;padding:14px 14px 10px;transform:rotate(1deg);margin:4px 4px 10px 0}.city-art img{min-height:380px;max-height:460px;aspect-ratio:1.2}.city-art figcaption{text-align:start;padding:3px 5px 0}.hero-shortcuts a{border-bottom:1px solid #a1ad8d;text-decoration:none}.discovery-search{border:2px solid var(--ink)}
.editorial-banners{display:grid;grid-template-columns:.75fr 1.1fr 1.15fr;gap:16px;margin-block:26px}.editorial-banner{padding:26px;min-height:240px;display:flex;flex-direction:column;align-items:flex-start;gap:13px;position:relative;isolation:isolate;overflow:hidden;border:1px solid transparent}.banner-news{background:var(--apricot);color:#452817}.banner-voices{background:var(--blue);color:white}.banner-organizations{background:var(--acid);color:#253c26}.banner-kicker{font-size:.6875rem;line-height:1.5;font-weight:700;letter-spacing:.14em;direction:ltr;unicode-bidi:isolate}.editorial-banner h2{font-size:clamp(1.5rem,2.3vw,2.35rem);font-weight:600;line-height:1.35;letter-spacing:-.025em;padding-inline-end:15px}.banner-news h2{font-family:Georgia,serif;font-style:italic;font-size:3.1rem;line-height:1.1}.editorial-banner p{font-size:.9375rem;line-height:1.8;max-width:35ch;padding-inline-end:20px}.banner-go{align-self:flex-end;font-size:1.7rem;line-height:1;margin-top:auto;min-height:28px;direction:ltr}.editorial-banner:hover{filter:brightness(.97)}.editorial-banner:focus-visible{outline-offset:-5px;outline-color:currentColor}.editorial-banner :is(h2,p){overflow-wrap:anywhere;min-width:0}
.city-index-section{margin-top:42px}.category-index{grid-template-columns:repeat(5,minmax(0,1fr));border-color:#9da991}.category-tile{background:#f5f6ec;min-height:106px;border-color:#bbc5b1;transition:background .2s,color .2s}.category-food,.category-cafes,.category-market{background:#f8ecdd}.category-music,.category-temples,.category-learn{background:#eaf0dc}.category-name{font-size:1.025rem}.category-no{font-size:.6875rem}.featured-places{margin-top:42px}.featured-places .place-card{padding:0 20px 0;background:#f1f2e7;border-top:3px solid #627543}.featured-places .place-card:first-child{background:#f5ecdf;border-color:#b67b44}.featured-places .place-card:last-child{background:#e8eef4;border-color:#335fc0}.featured-places .place-card-link{min-height:230px}.featured-places .place-card-link h3{font-size:1.7rem;line-height:1.5}
.organization-preview{padding-block:45px 10px;margin-top:55px;border-top:1px solid var(--ink)}.editorial-section-head .eyebrow{color:var(--blue);margin-bottom:12px}.editorial-section-head h2{font-size:clamp(1.7rem,3.3vw,3rem);font-weight:500;line-height:1.4}.org-intro{font-size:1rem;line-height:1.9;max-width:75ch;margin-block:18px 22px}.organization-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.organization-card{border:1px solid var(--line);border-top:3px solid var(--pine);padding:24px;display:flex;flex-direction:column;min-width:0;background:#fffefa}.organization-card-link{display:block;position:relative;padding-inline-end:20px;min-height:110px}.org-category{display:block;font-size:.8125rem;color:#4e614e;margin-bottom:14px;line-height:1.6}.organization-card h3{font-size:1.3rem;font-weight:600;line-height:1.55;overflow-wrap:anywhere;min-width:0}.org-arrow{position:absolute;inset-inline-end:0;top:0;line-height:1;font-size:1.35rem;direction:ltr}.organization-card-link:hover h3{text-decoration:underline;text-underline-offset:5px}.org-summary{font-size:.9375rem;line-height:1.9;margin-block:15px 20px}.org-meta{margin-top:auto;border-top:1px solid #d7ddd1;padding-top:14px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;font-size:.75rem;color:var(--muted)}.org-meta time{unicode-bidi:isolate;white-space:nowrap}.org-independence{font-size:.875rem;line-height:1.85;max-width:90ch;padding-inline-start:16px;border-inline-start:2px solid #889b79;margin-block:20px;color:#52614d}.org-unconfirmed{padding:10px 12px;border:1px solid #c39462;background:#fff0d7;color:#68411d;font-size:.8125rem;line-height:1.8;margin-block:12px}.editorial-cta{min-height:50px;min-width:44px;display:inline-flex;align-items:center;gap:18px;border-bottom:1px solid currentColor;font-size:1rem;font-weight:600;line-height:1.7;padding-block:10px;margin-top:12px;overflow-wrap:anywhere;max-width:100%}.editorial-cta:after{content:'↗';direction:ltr;font-size:1.3rem;flex:0 0 auto}
.community-story{margin-block:56px 42px;border-top:1px solid var(--ink)}.community-story-image{margin:0}.community-story-image img{display:block;width:100%;height:auto;aspect-ratio:3/1;object-fit:cover;object-position:center}.community-story-image figcaption{font-size:.75rem;color:var(--muted);line-height:1.7;margin-block:8px 0}.community-story-body{padding:36px 32px 32px;background:#ecefdc;margin-top:18px;position:relative}.community-story-body>.eyebrow{color:#5e7149}.community-story-body h2{font-size:clamp(1.8rem,3.4vw,3rem);font-weight:500;line-height:1.45;max-width:26em;margin-block:8px 16px}.community-story-body>p:not(.eyebrow){font-size:1rem;line-height:1.9;max-width:85ch}.story-steps{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;padding:0;margin:30px 0 14px}.story-steps li{border-top:1px solid #93a276;padding-top:16px;display:flex;gap:12px;align-items:baseline;min-width:0}.story-steps li>span{font-size:.75rem;color:#5c7143;direction:ltr;flex:0 0 auto}.story-steps strong{font-size:1rem;font-weight:500;line-height:1.6}.support-banner{margin-top:20px;padding:32px 36px;background:#213e36;color:#fffdf2;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:10px 36px;align-items:start}.support-banner .join-status{justify-self:start;grid-column:1}.support-banner h3{font-size:clamp(1.6rem,2.5vw,2.3rem);font-weight:500;line-height:1.5;grid-column:1}.support-banner p{font-size:.9375rem;line-height:1.9;grid-column:2;grid-row:1/span 2}.support-banner .editorial-cta{grid-column:2;justify-self:start}.support-banner a:focus-visible{outline-color:#e3edb6}.join-home{background:#f7f1e6;color:var(--ink);border-color:#b7a992}.join-home .join-eyebrow{color:#796544}.join-home .join-primary{background:var(--blue);color:#fff;border-color:var(--blue)}.join-home a:focus-visible{outline-color:var(--blue)}
.organization-page{padding-top:20px}.organization-title{font-size:clamp(2.3rem,5vw,4.6rem);font-weight:500;line-height:1.3;margin-block:20px;max-width:24em;overflow-wrap:anywhere}.organization-filter{margin-block:30px 18px;padding:22px;background:#edf0e1;border:1px solid #bdc8ab}.organization-filter>label{font-size:.9375rem;display:block;margin-bottom:12px;font-weight:600}.organization-filter-controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.5fr) auto;gap:12px}.organization-filter :is(input,select,button){min-width:0;min-height:50px;border:1px solid #89987a;border-radius:0;background:#fffefa;padding:12px;font-size:1rem;max-width:100%}.organization-filter button{background:var(--pine);color:white;border-color:var(--pine);padding-inline:24px}.org-count{font-size:.875rem;margin-block:20px}.org-native{font-size:1.2rem;line-height:1.8;color:var(--muted);margin-bottom:22px}.org-detail-summary{font-size:clamp(1.2rem,2.3vw,1.7rem);line-height:1.9;max-width:65ch}.organization-source{padding:26px;margin-top:30px;border:1px solid var(--line);background:#f0f2e6;max-width:85ch}.organization-source p{font-size:.9375rem;line-height:1.9}.org-evidence-link{display:flex;align-items:center;min-height:48px;text-decoration:underline;text-underline-offset:5px;margin-top:10px}.org-caveat{border-top:1px solid var(--line);padding-top:16px;margin-top:20px}.organization-page :is(p,h1,h2,h3,a){overflow-wrap:anywhere}.organization-grid>.source-pending{grid-column:1/-1}
@media(max-width:1050px){.category-index{grid-template-columns:repeat(4,minmax(0,1fr))}.editorial-banner{padding:22px}.editorial-banners{grid-template-columns:repeat(3,minmax(0,1fr))}.organization-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.city-art img{min-height:340px}.category-tile{padding-inline:16px}}
@media(max-width:760px){.navigation{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 20px}.navigation a{justify-content:flex-start;text-align:start;min-height:50px;width:100%;padding-block:10px}.navigation a:last-child{margin:0}.city-hero{padding-top:28px;gap:26px}.city-art{transform:none;margin:0}.city-art img{min-height:300px}.editorial-banners{grid-template-columns:1fr 1fr;gap:12px}.banner-news{grid-column:1/-1;min-height:120px;display:grid;grid-template-columns:minmax(90px,.6fr) minmax(0,1.4fr) 28px;gap:5px 18px;align-items:center}.banner-news .banner-kicker{grid-column:1;grid-row:1}.banner-news h2{grid-column:1;grid-row:2}.banner-news p{grid-column:2;grid-row:1/span 2;padding-inline-end:0}.banner-news .banner-go{grid-column:3;grid-row:1/span 2;align-self:center;margin:0}.editorial-banner:not(.banner-news){min-height:235px}.editorial-banner h2{font-size:1.6rem}.editorial-banner p{font-size:.875rem}.category-index{grid-template-columns:repeat(3,minmax(0,1fr))}.category-tile{min-height:98px}.category-name{font-size:.9375rem}.story-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.support-banner{grid-template-columns:1fr;padding:26px;gap:16px}.support-banner :is(.join-status,h3,p,.editorial-cta){grid-column:1;grid-row:auto}.organization-filter-controls{grid-template-columns:1fr auto}.organization-filter input{grid-column:1/-1}.community-story-body{padding:28px}.organization-preview{margin-top:40px;padding-top:32px}}
@media(max-width:520px){.demo-banner{min-height:42px;position:relative;top:auto;padding-block:9px}.demo-banner+header{padding-top:22px}.navigation{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:14px}.navigation a{flex-basis:auto}.city-hero{grid-template-columns:1fr}.city-masthead{font-size:clamp(3.5rem,13vw,4.8rem)}.city-art img{height:215px;min-height:0}.editorial-banners{grid-template-columns:1fr}.editorial-banner:not(.banner-news){min-height:188px}.editorial-banner h2{font-size:1.75rem}.editorial-banner p{max-width:100%;padding-inline-end:24px}.banner-go{position:absolute;inset-inline-end:20px;bottom:20px}.banner-news .banner-go{position:static}.banner-news{grid-template-columns:minmax(75px,.5fr) minmax(0,1.5fr) 20px;padding:22px 20px}.banner-news h2{font-size:2.7rem}.banner-news .banner-kicker{font-size:.6rem;letter-spacing:.07em}.category-index{grid-template-columns:repeat(2,minmax(0,1fr))}.category-tile{min-height:92px;padding:15px 13px}.organization-grid{grid-template-columns:1fr}.organization-card{padding:22px}.organization-card.compact .organization-card-link{min-height:90px}.community-story-image img{aspect-ratio:1.8;min-height:205px;object-position:center}.community-story-body{padding:24px 22px}.community-story-body h2{font-size:1.8rem}.organization-filter{padding:18px}.organization-filter-controls{grid-template-columns:minmax(0,1fr) auto;gap:10px}.organization-filter select{font-size:.875rem}.organization-filter button{padding-inline:16px}.organization-source{padding:22px}.org-detail-summary{font-size:1.2rem}.organization-title{font-size:2.2rem}}
@media(prefers-reduced-motion:reduce){.editorial-banner,.category-tile,.city-art{transition:none;animation:none;transform:none}.portal-page{animation:none}html{scroll-behavior:auto}}
@media(forced-colors:active){.editorial-banner,.organization-card,.support-banner,.community-story-body,.organization-filter{border:1px solid CanvasText}.editorial-banner:focus-visible,.support-banner a:focus-visible{outline-color:Highlight}.org-unconfirmed{border:2px solid CanvasText}}
.org-evidence-note{font-size:.8125rem;line-height:1.8;color:#566347;margin-block:10px;overflow-wrap:anywhere}.organization-source .org-evidence-note{font-size:.875rem}

/* Preserve the Ping wordmark as one readable word in the small news banner. */
.editorial-banner.banner-news h2{white-space:nowrap;overflow-wrap:normal;word-break:normal;hyphens:none}
@media(max-width:520px){.editorial-banners .banner-news{grid-template-columns:minmax(96px,.65fr) minmax(0,1.35fr) 20px}}

/* guide.css */
/* Evidence-first evergreen guides; the reporting program remains visibly in preparation. */
.guide-gateway{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:28px;margin-block:32px;border-top:2px solid var(--ink);padding-top:28px}.guide-gateway-body{min-width:0}.guide-gateway .eyebrow{color:var(--blue)}.guide-gateway h2{font-size:clamp(1.7rem,2.5vw,2.4rem);font-weight:500;line-height:1.45;margin-block:8px 14px}.guide-gateway-body>p:not(.eyebrow){font-size:1rem;line-height:1.85;max-width:70ch}.guide-filters{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:12px;margin-top:22px;padding:20px;background:#edf0e3;border:1px solid #bfc9ae}.guide-filters label{display:flex;flex-direction:column;gap:8px;min-width:0;font-size:.875rem;font-weight:600;line-height:1.6}.guide-filters select{min-width:0;max-width:100%;width:100%;border:1px solid #879778;background:#fffef7;border-radius:0;min-height:50px;padding:10px 12px;font-size:1rem}.guide-submit{border:1px solid var(--pine);background:var(--pine);color:white;min-height:50px;padding:12px 22px;font-size:1rem;font-weight:600}.guide-source-tag{display:inline-flex;font-size:.75rem!important;font-weight:600;letter-spacing:.02em;line-height:1.8!important;color:#495c38;border-bottom:1px solid #a5b78a;padding-block:8px;margin-top:9px}.guide-reporting{padding:28px;background:#f7eee3;border-inline-start:3px solid #b0834b;min-width:0}.guide-reporting h2{font-size:clamp(1.5rem,2.1vw,2rem);line-height:1.5;font-weight:500;margin-block:15px}.guide-reporting p{font-size:.9375rem;line-height:1.9;max-width:75ch}.guide-reporting .guide-no-byline{font-size:.8125rem;color:#786247;margin-top:12px}.guide-reporting .join-status{font-size:.75rem;color:#705028}.guide-editorial-links{display:flex;gap:16px;flex-wrap:wrap;margin-top:15px}.guide-editorial-links a{display:inline-flex;align-items:center;min-height:44px;min-width:44px;text-decoration:underline;text-underline-offset:5px;font-size:.9375rem;line-height:1.7;padding-block:7px}.guide-reporting.compact{padding:24px}.guide-reporting.compact h2{font-size:1.5rem}.evergreen-guide{padding-top:20px}.evergreen-guide>.eyebrow{color:var(--blue);margin-top:24px}.guide-title{font-size:clamp(2rem,4.5vw,4.4rem);font-weight:500;line-height:1.4;max-width:24em;margin-block:15px}.guide-intro{font-size:1.125rem;line-height:1.9;max-width:70ch}.guide-truth{display:flex;flex-wrap:wrap;align-items:center;gap:10px 24px;margin-block:18px;font-size:.875rem;line-height:1.8;color:#526247}.guide-truth .guide-source-tag{margin:0}.evergreen-guide>.guide-filters{max-width:100%;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}.guide-clear{display:inline-flex;align-items:center;min-height:44px;min-width:44px;padding:8px 0;text-decoration:underline;text-underline-offset:5px;font-size:.875rem;margin-top:8px}.guide-scope{font-size:.875rem;line-height:1.9;max-width:85ch;color:var(--muted);margin-top:12px}.guide-summary{font-size:1.25rem;line-height:1.8;font-weight:500;border-top:1px solid var(--ink);padding-top:25px;margin-block:30px 22px}.guide-results .place-card{background:#f3f4e9;padding-inline:22px}.guide-results .place-card-link{min-height:240px}.guide-results .place-card-link h3{font-size:1.5rem}.guide-card-area{font-size:.9375rem;color:var(--muted);line-height:1.8}.guide-results time{white-space:nowrap;unicode-bidi:isolate}.guide-more{display:flex;flex-wrap:wrap;gap:12px 25px;border-block:1px solid var(--line);padding:15px 0;margin-block:35px}.guide-more a{display:inline-flex;min-height:44px;min-width:44px;align-items:center;line-height:1.7;font-size:1rem;text-decoration:underline;text-underline-offset:5px}.guide-policy{margin-top:35px;padding:26px;border:1px solid var(--line)}.guide-policy h2{font-size:1.5rem;font-weight:500;line-height:1.5}.guide-policy p{font-size:.9375rem;line-height:1.9;max-width:90ch;margin-top:18px}.guide-gateway :is(p,h2,a),.evergreen-guide :is(h1,h2,h3,p,a){overflow-wrap:anywhere;min-width:0}.guide-filters select:focus-visible,.guide-submit:focus-visible{outline:3px solid #a84614;outline-offset:3px}
@media(max-width:1100px){.guide-gateway{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:20px}.guide-gateway .guide-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.guide-gateway .guide-submit{grid-column:1/-1}.guide-reporting.compact{padding:22px}}
@media(max-width:760px){.guide-gateway{grid-template-columns:1fr;gap:22px;margin-block:28px}.guide-gateway .guide-filters{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}.guide-gateway .guide-submit{grid-column:auto}.guide-reporting.compact{border-inline-start:0;border-top:2px solid #b0834b}.guide-reporting.compact h2{font-size:1.7rem}.evergreen-guide>.guide-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.evergreen-guide>.guide-filters .guide-submit{grid-column:1/-1}.guide-results .place-card-link{min-height:220px}}
@media(max-width:520px){.guide-gateway .guide-filters,.evergreen-guide>.guide-filters{grid-template-columns:1fr;padding:18px;gap:15px}.guide-gateway .guide-submit,.evergreen-guide>.guide-filters .guide-submit{grid-column:1}.guide-gateway h2{font-size:1.8rem}.guide-reporting.compact h2{font-size:1.6rem}.guide-reporting,.guide-policy{padding:22px}.guide-results .place-card{padding-inline:20px}.guide-title{font-size:2.3rem}.guide-summary{font-size:1.1rem}.guide-intro{font-size:1rem}.guide-truth{align-items:flex-start;flex-direction:column;gap:10px}.guide-more{gap:10px 18px}.guide-gateway{padding-top:23px}.guide-filters :is(select,button){width:100%}}
@media(forced-colors:active){.guide-reporting,.guide-filters,.guide-policy{border:1px solid CanvasText}.guide-source-tag{border-bottom:1px solid CanvasText}}
@media(prefers-reduced-motion:reduce){.guide-submit{transition:none}}

/* completion.css */
/* Tactile controls: visible edges, soft elevation and an unmistakable pressed state. */
:root{--control-face:#f5f5ed;--control-edge:#819184;--control-shadow:4px 5px 11px #18362623,-3px -3px 9px #ffffffdd;--control-pressed:inset 3px 3px 7px #18362626,inset -3px -3px 7px #ffffffcc;--control-radius:12px;--control-focus:#a43f09}
:is(.raised-link,.raised-button,.guide-submit,.search-button,.category-open,.join-primary,.editorial-cta,.detail-official,.ping-link,.ping-desk-button,.organization-filter-button,.organization-filter button,.directory-filters button){display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:44px;min-height:48px;padding:12px 20px;border:1px solid var(--control-edge);border-radius:var(--control-radius);box-shadow:var(--control-shadow);background:var(--control-face);color:var(--ink);font:inherit;font-weight:600;line-height:1.6;text-align:center;text-decoration:none;cursor:pointer;transition:box-shadow .16s ease,transform .16s ease,background-color .16s ease;max-width:100%;overflow-wrap:anywhere}
:is(.primary-link,.guide-submit,.search-button,.category-open,.join-primary,.detail-official,.ping-link){background:#193e31;color:#fff;border-color:#193e31;box-shadow:4px 5px 10px #11291f32,inset 0 1px 0 #ffffff35}
:is(.raised-link,.raised-button,.guide-submit,.search-button,.category-open,.join-primary,.editorial-cta,.detail-official,.ping-link,.ping-desk-button,.organization-filter button,.directory-filters button):not(:disabled):not([aria-disabled=true]):hover{transform:translateY(-2px);box-shadow:5px 7px 14px #18362630,-3px -3px 9px #ffffffdd}
:is(.raised-link,.raised-button,.guide-submit,.search-button,.category-open,.join-primary,.editorial-cta,.detail-official,.ping-link,.ping-desk-button,.organization-filter button,.directory-filters button):not(:disabled):not([aria-disabled=true]):active{transform:translateY(1px);box-shadow:var(--control-pressed)}
:is(.primary-link,.guide-submit,.search-button,.category-open,.join-primary,.detail-official,.ping-link):not(:disabled):not([aria-disabled=true]):active{box-shadow:inset 3px 4px 8px #071e18aa,inset -2px -2px 5px #ffffff19}
:is(button,a,select,input,summary):focus-visible{outline:3px solid var(--control-focus)!important;outline-offset:4px!important}
button:disabled,button[aria-disabled=true]{cursor:not-allowed;opacity:.65;box-shadow:none;transform:none;border-style:dashed}
.service-banner{position:relative;min-height:40px;justify-content:space-between;font-weight:500}.header-ping-link{display:inline-flex;align-items:center;min-height:44px;color:#244dca;text-decoration:underline;text-underline-offset:4px;white-space:nowrap;direction:ltr}.service-banner+header{padding-top:20px}
.ping-news-desk{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;margin:0 4vw 14px;padding:8px 14px;background:#193e31;color:#f9f8ec;border:1px solid #122e24;border-radius:10px;box-shadow:none}.ping-desk-brand{font-family:Georgia,serif;font-style:italic;font-size:2.5rem;color:#e3edb6;white-space:nowrap;line-height:1.1;min-width:44px;min-height:44px;display:flex;align-items:center}.ping-desk-body{min-width:0}.ping-desk-story{font-size:.9375rem;color:white;display:inline-flex;align-items:center;min-height:44px;line-height:1.6;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}.ping-desk-date{font-size:.75rem;line-height:1.5;color:#d2dece;margin-top:3px}.ping-desk-controls{display:flex;gap:9px;align-items:center}.ping-desk-button{padding:8px;min-width:44px;min-height:44px;color:#182f25;box-shadow:none}.ping-desk-count{font-size:.75rem;white-space:nowrap;min-width:4ch}.ping-news-desk :focus-visible{outline-color:#ffe295!important}
.editorial-studio{margin-block:32px;padding:clamp(24px,4vw,50px);border:1px solid #b6c7aa;border-radius:20px;background:linear-gradient(130deg,#edf0df,#f8f6ee);box-shadow:0 8px 28px #243d2110}.editorial-studio h2{font-size:clamp(1.9rem,3vw,3rem);font-weight:500;line-height:1.45;margin-block:12px 20px}.studio-lead{max-width:82ch;line-height:1.9;font-size:1.0625rem}.studio-cycle{list-style:none;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;margin-block:30px}.studio-cycle li{min-width:0;border-top:1px solid #889f7c;padding-top:14px;line-height:1.8;font-size:.9375rem}.studio-number{display:block;font-size:.75rem;color:#526949;letter-spacing:.12em;margin-bottom:8px;direction:ltr}.studio-actions,.official-action-links,.proposal-actions{display:flex;flex-wrap:wrap;gap:14px}.studio-scope,.completion-language-note{font-size:.8125rem;color:#53604c;line-height:1.8;margin-block:18px 0}.completion-language-note{border-bottom:1px solid var(--line);padding-bottom:10px;margin-bottom:15px}
.planner-entry{background:#ecf0e5;border:1px solid #becbb3;padding:28px;margin-top:35px;border-radius:18px}.planner-entry h2,.planner-policies h2{font-size:1.6rem;line-height:1.6;font-weight:500}.planner-entry p{max-width:80ch;line-height:1.9;margin:16px 0 22px}.proposal-planner{padding-block:25px}.proposal-planner h1,.restaurant-detail h1{font-size:clamp(2rem,4vw,3.5rem);line-height:1.45;font-weight:500;max-width:24em}.planner-boundary{background:#f4ecd9;border-inline-start:4px solid #8c693b;padding:18px 22px;margin-block:24px;font-size:.9375rem;line-height:1.9;max-width:95ch}.planner-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:18px;align-items:end;padding:28px;background:#edf0e4;border:1px solid #b0c1a5;border-radius:18px}.planner-form label{display:flex;flex-direction:column;gap:8px;min-width:0;font-weight:600;line-height:1.6}.planner-form select{min-width:0;width:100%;min-height:52px;padding:12px;background:#fffef8;border:1px solid #899d7c;border-radius:10px;font:inherit}.proposal-preview{margin-block:28px;padding:28px;border:2px solid #476341;border-radius:18px;background:#fffef8}.proposal-preview[hidden]{display:none}.proposal-preview h2{font-size:1.6rem;line-height:1.7;margin-bottom:20px}.proposal-text p{margin-bottom:18px;line-height:1.9;max-width:90ch}.proposal-actions{margin-top:25px}.planner-policies{margin-top:35px;border-top:1px solid var(--line);padding-top:28px}.planner-policies p{font-size:.9375rem;line-height:1.9;max-width:90ch;margin-block:18px}.relationship-policy{background:#f3f1e8;padding:18px}
.guide-references,.restaurant-list{border-top:1px solid var(--line);margin-top:35px;padding-top:25px}.guide-references>h2,.restaurant-list>h2{font-size:1.6rem;font-weight:500;line-height:1.7}.guide-references>p{max-width:90ch;font-size:.875rem;line-height:1.9;margin-block:12px}.guide-references .place-grid,.restaurant-list .place-grid{margin-top:25px}.reference-status{display:inline-block;align-self:flex-start;font-size:.8125rem;border:1px solid #788969;border-radius:6px;background:#f2f4e5;padding:5px 9px;line-height:1.6;margin-bottom:12px}.status-candidate,.status-past{background:#f4eddf;border-color:#b89863}.reference-place{line-height:1.8;font-size:.875rem;color:var(--muted)}.official-actions{margin-top:28px;padding:28px;border:1px solid var(--line);border-radius:16px;background:#f4f4e9}.official-actions h2{font-size:1.5rem;font-weight:500;line-height:1.6}.official-actions p{line-height:1.9;max-width:90ch;margin-block:16px}.official-action-links{margin-block:20px}.practical-steps{padding-inline-start:24px;line-height:1.9;margin-top:15px}.practical-steps li{padding-bottom:10px}.restaurant-detail-body{max-width:85ch;margin-top:25px}.restaurant-facts{display:grid;grid-template-columns:minmax(100px,.4fr) minmax(0,1fr);gap:12px 24px;margin-block:25px;font-size:.9375rem;line-height:1.9}.restaurant-facts dt{font-weight:700}.restaurant-facts dd{margin:0}.hours-caveat{font-size:.875rem;color:var(--muted);line-height:1.9}
:is(.editorial-studio,.planner-entry,.proposal-planner,.official-actions,.restaurant-detail,.restaurant-list,.guide-references) :is(p,h1,h2,h3,a,li){overflow-wrap:anywhere;min-width:0}
@media(max-width:1000px){.planner-form{grid-template-columns:repeat(2,minmax(0,1fr))}.planner-form button{grid-column:1/-1}.studio-cycle{grid-template-columns:repeat(3,minmax(0,1fr))}.ping-news-desk{gap:16px}}
@media(max-width:600px){.studio-cycle{grid-template-columns:1fr;gap:14px}.studio-cycle li{display:flex;align-items:baseline;gap:20px}.studio-number{flex:0 0 3ch;margin:0}.planner-form{grid-template-columns:1fr;padding:20px}.planner-form button{grid-column:1}.editorial-studio{padding:24px}.studio-actions,.proposal-actions{flex-direction:column;align-items:stretch}.proposal-preview,.planner-entry,.official-actions{padding:22px}.ping-news-desk{grid-template-columns:minmax(0,1fr);padding:8px 12px;gap:4px 12px}.ping-desk-controls{grid-column:1/-1;justify-content:flex-end}.ping-desk-brand{font-size:2rem}.restaurant-facts{grid-template-columns:1fr;gap:5px}.restaurant-facts dd{margin-bottom:15px}.official-action-links a{flex:1 1 100%}}
@media(prefers-reduced-motion:reduce){:is(.raised-link,.raised-button,.guide-submit,.search-button,.category-open,.join-primary,.editorial-cta,.detail-official,.ping-link,.ping-desk-button){transition:none;transform:none!important}}
@media(forced-colors:active){:is(.raised-link,.raised-button,.guide-submit,.search-button,.category-open,.join-primary,.editorial-cta,.detail-official,.ping-link,.ping-desk-button){border:2px solid ButtonText;box-shadow:none}.ping-news-desk{border:2px solid CanvasText}.reference-status{border:1px solid CanvasText}}

.portal-page :is(select,input[type=search]){box-shadow:inset 2px 2px 5px #193e3110;border-color:#84977c}
@media(prefers-reduced-motion:reduce){.organization-filter button,.directory-filters button{transition:none;transform:none!important}}

.ping-desk-source{color:inherit;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
/* Single-copy ticker: links stay keyboard reachable; no cloned text is announced. */
.ping-ticker-viewport{overflow-x:auto;overflow-y:hidden;max-width:100%;min-width:0;scrollbar-width:none;scroll-behavior:auto;overscroll-behavior-inline:contain}.ping-ticker-track{display:flex;align-items:center;column-gap:34px;width:max-content;padding-inline-end:100%}.ping-ticker-track .ping-desk-story{flex:0 0 auto;max-width:none;white-space:nowrap;overflow-wrap:normal;position:relative}.ping-ticker-track .ping-desk-story:after{content:'·';margin-inline-start:34px;color:#c9d9b8;text-decoration:none}.ping-motion-toggle{min-width:62px}.ping-desk-controls{flex-wrap:wrap}.ping-ticker-viewport:focus-visible{outline-offset:2px}.ping-desk-button:disabled{cursor:default;opacity:.7;transform:none;box-shadow:none}@media(prefers-reduced-motion:reduce){.ping-ticker-viewport{scroll-behavior:auto}}

.ping-ticker-viewport::-webkit-scrollbar{display:none}

/* One continuous reading line; no page counter or next/previous controls. */
.ping-ticker-track .ping-desk-story{font-family:Arial,"Noto Sans JP","Noto Sans Thai",sans-serif;font-size:clamp(.9375rem,1.15vw,1rem);font-weight:500;letter-spacing:.015em;line-height:1.6;gap:12px;text-decoration:none}.ping-ticker-track .ping-desk-story:hover{text-decoration:underline;text-underline-offset:5px}.ping-headline-date{font-size:.75rem;font-weight:400;letter-spacing:.02em;color:#cbd7c8;white-space:nowrap}.ping-motion-toggle{min-width:44px;min-height:44px;padding:6px 10px;font-size:.8125rem;font-weight:600;box-shadow:none}.ping-desk-controls{gap:0}.ping-desk-controls .ping-motion-toggle:not(:disabled):hover{transform:none;box-shadow:none}.ping-desk-date{margin-top:0;line-height:1.5}.ping-news-desk{grid-template-columns:minmax(0,1fr) auto;column-gap:12px;align-items:start}.ping-desk-controls{grid-column:auto;margin-top:0}@media(max-width:600px){.ping-news-desk{grid-template-columns:minmax(0,1fr) auto;gap:8px}.ping-desk-controls{grid-column:auto}.ping-desk-date{font-size:.6875rem}}

/* city-desk.css */
/* An original tabbed city desk, inspired by the requested single-panel interaction. */
.city-desk{margin-block:30px 44px;padding-top:26px;border-top:2px solid var(--ink);min-width:0}.city-desk>.eyebrow{color:var(--blue)}.city-desk>h2{font-size:clamp(1.7rem,2.6vw,2.6rem);font-weight:500;line-height:1.5;margin:12px 0 26px}.city-desk-tabs{display:flex;gap:8px;align-items:stretch;padding-inline:12px;border-bottom:1px solid #8b9d7a}.desk-tab{flex:0 1 190px;min-width:44px;min-height:52px;max-width:100%;padding:13px 20px;border:1px solid #aebca3;border-bottom:0;border-radius:14px 14px 0 0;background:linear-gradient(145deg,#f8faef,#e4ebd9);color:#30462a;box-shadow:3px 5px 10px #243d212b,-3px -3px 7px #ffffffcc,inset 0 1px 1px #ffffff;font:inherit;font-size:1rem;font-weight:700;line-height:1.7;cursor:pointer;overflow-wrap:anywhere;position:relative;transition:background-color .15s ease,box-shadow .15s ease,transform .15s ease}.desk-tab[aria-selected=true]{background:#fffef9;color:#173d2b;border-color:#8b9d7a;box-shadow:3px 5px 10px #243d212b,-3px -3px 7px #ffffffcc,inset 0 4px 0 #31593a;z-index:1}.desk-tab[aria-selected=true]:after{content:'';position:absolute;bottom:-2px;inset-inline:0;height:3px;background:#fffef9}.desk-tab:not(:disabled):hover{background:#f9faef;color:#182d20;transform:translateY(-3px);box-shadow:5px 8px 14px #243d213b,-3px -3px 8px #ffffffdd}.desk-tab:not(:disabled):active{transform:translateY(1px);box-shadow:inset 3px 3px 7px #193e3140,inset -2px -2px 5px #ffffffbb}.desk-tab:disabled{cursor:not-allowed;opacity:.6;box-shadow:none;transform:none}.desk-tab:focus-visible{outline-offset:-5px!important}.city-desk-panel{background:#fffef9;border:1px solid #8b9d7a;border-top:0;padding:clamp(22px,3vw,38px);border-radius:0 0 18px 18px;min-width:0;min-height:310px}.city-desk-note{font-size:.9375rem;line-height:1.85;max-width:90ch;margin-bottom:12px}.desk-news-meta{font-size:.8125rem;color:#52654b;line-height:1.8;margin-block:12px}.desk-news-meta time{white-space:nowrap;unicode-bidi:isolate}.desk-freshness{border-inline-start:3px solid #9c5d1f;background:#faf0db;padding:12px 16px;line-height:1.8;font-size:.875rem;margin-block:14px}.desk-date-heading{font-size:.75rem;color:var(--muted);margin-top:22px}.desk-news-list{list-style:none;margin:8px 0 24px;padding:0;max-height:430px;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;border-block:1px solid #d0d8c8}.desk-news-row{display:grid;grid-template-columns:95px minmax(0,1fr);gap:20px;align-items:start;border-bottom:1px solid #e0e5d9;padding:7px 10px 7px 0}.desk-news-row:last-child{border-bottom:0}.desk-publication-date{font-size:.875rem;padding-block:13px;white-space:nowrap;color:#56634f;line-height:1.7}.desk-news-link{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:48px;min-width:0;font-size:1rem;line-height:1.75;text-decoration:underline;text-decoration-color:#b5c3a8;text-underline-offset:5px;padding-block:10px;color:var(--ink);overflow-wrap:anywhere}.desk-news-link:hover{color:var(--blue);text-decoration-color:var(--blue)}.desk-external-arrow{flex:0 0 auto;font-size:.9375rem;color:#42633d}.desk-source-link{margin-top:10px}.city-desk-panel>.guide-filters{margin-bottom:24px}.desk-event-links{display:flex;flex-wrap:wrap;gap:14px;margin-block:25px}.city-desk-panel>.restaurant-list{border-top:0;margin-top:18px;padding-top:0}.city-desk-panel>.restaurant-list+.raised-link{margin-top:26px}.city-desk :is(p,h2,a){min-width:0;overflow-wrap:anywhere}
@media(max-width:700px){.city-desk-tabs{gap:5px;padding-inline:4px}.desk-tab{flex:1 1 0;padding:12px 9px;font-size:.9375rem}.city-desk-panel{padding:22px}.desk-news-row{grid-template-columns:68px minmax(0,1fr);gap:12px}.desk-news-link{font-size:.9375rem}.desk-publication-date{font-size:.8125rem}.desk-news-list{max-height:460px}.city-desk-panel>.guide-filters{grid-template-columns:1fr}.city-desk-panel>.guide-filters button{grid-column:1}}
@media(max-width:380px){.desk-tab{padding-inline:6px;font-size:.875rem}.city-desk-panel{padding:18px}.desk-news-row{grid-template-columns:1fr;gap:0}.desk-publication-date{padding-block:8px 0}.desk-news-link{padding-block:7px 12px}.desk-news-list{max-height:420px}}
@media(prefers-reduced-motion:reduce){.desk-tab{transition:none;transform:none!important}}
@media(forced-colors:active){.desk-tab,.city-desk-panel,.desk-news-list{border:1px solid CanvasText}.desk-tab[aria-selected=true]{outline:2px solid Highlight;outline-offset:-3px;box-shadow:none}.desk-tab[aria-selected=true]:after{display:none}}

.desk-news-information{border-top:1px solid #d0d8c8;margin-top:12px;padding-top:4px}.desk-news-information>summary{min-height:44px;padding:10px 0;font-size:.875rem;line-height:1.75;cursor:pointer;color:#405439}.desk-news-information>summary:focus-visible{outline-offset:3px}.desk-news-information[open]>summary{margin-bottom:10px}.desk-news-list:first-child{margin-top:0}

/* language-flags.css */
/* A compact wrapping flag cluster: every language stays within the header. */
.header-language-cluster{flex:0 1 392px;width:392px;max-width:100%;min-width:0;margin-inline-start:auto}.language-select-control[hidden]{display:none!important}.language-flags{display:grid;grid-template-columns:repeat(auto-fit,40px);gap:4px;justify-content:end;position:relative;width:100%;max-width:392px;min-width:0;padding:0;margin:0;overflow:visible}.language-flag-button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;min-width:40px;min-height:40px;padding:5px;border:1px solid #b7c1ac;border-radius:8px;background:#f8f9f0;color:#203829;box-shadow:1px 2px 4px #243d2114,inset 0 1px 0 #fff;cursor:pointer;font:inherit}.language-flag{width:26px;height:18px;object-fit:cover;display:block;flex:0 0 26px;border:1px solid #17282230;border-radius:1px}.language-flag-button[aria-pressed=true]{border:2px solid #31593a;background:#e8efda;padding:4px;box-shadow:inset 0 1px 0 #ffffffc9}.language-flag-button:hover{background:#edf3e0}.language-flag-button:active{box-shadow:inset 2px 2px 5px #193e3130}.language-flag-button:focus-visible{outline-offset:2px!important}.language-flag-hint{position:absolute;inset-inline-end:0;top:calc(100% + 5px);z-index:12;max-width:100%;padding:5px 10px;border:1px solid #aab9a1;border-radius:7px;background:#fffef9;color:#203829;font-size:.8125rem;line-height:1.5;box-shadow:0 3px 10px #17332624;pointer-events:none;overflow-wrap:anywhere}.language-flag-hint[hidden]{display:none}@media(max-width:760px){.header-language-cluster{flex-basis:100%;width:100%;max-width:392px}.language-flags{justify-content:start}}@media(prefers-reduced-motion:reduce){.language-flag-button{transition:none;transform:none!important}}@media(forced-colors:active){.language-flag-button{border:1px solid ButtonText;box-shadow:none}.language-flag-button[aria-pressed=true]{outline:2px solid Highlight;outline-offset:-3px}.language-flag-hint{border:1px solid CanvasText}}

/* emergency-contacts.css */
.emergency-contact-directory{min-width:0}.emergency-contact-directory h1{font-size:clamp(1.8rem,4vw,3rem);line-height:1.5}.emergency-intro{max-width:80ch;margin-block:18px;line-height:1.9}.emergency-boundary{border:1px solid #d6bc84;border-inline-start:5px solid #956014;background:#fff5dc;padding:20px 24px;margin-block:24px;line-height:1.8}.emergency-contact-group{margin-block:36px}.emergency-contact-group>h2{font-size:1.6rem;margin-bottom:20px}.emergency-contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.emergency-contact-card{min-width:0;border:1px solid #bac9b4;border-radius:16px;background:#fffef9;padding:26px;line-height:1.8}.emergency-contact-card h3{font-size:1.25rem;line-height:1.6;margin-bottom:12px}.emergency-contact-card h4{font-size:.875rem;margin-top:22px}.emergency-phone-list{display:flex;flex-wrap:wrap;gap:18px;margin-block:20px}.emergency-phone{display:flex;flex-direction:column;align-items:flex-start;min-width:0}.emergency-phone-label{font-size:.8125rem}.emergency-tel{display:inline-flex;align-items:center;min-height:48px;max-width:100%;padding:8px 15px;border:1px solid #143125;border-radius:11px;background:#193e31;color:white;box-shadow:3px 4px 8px #1233222b,inset 0 1px 0 #ffffff38;font-size:clamp(1rem,2vw,1.3rem);font-weight:700;letter-spacing:.02em;white-space:nowrap;text-decoration:none}.emergency-tel:hover{background:#28543d}.emergency-tel:active{box-shadow:inset 2px 3px 6px #061f1da6}.emergency-domestic,.emergency-small,.emergency-checked{font-size:.8125rem;line-height:1.8}.emergency-domestic{margin-top:5px}.emergency-small{margin-block:12px}.emergency-unverified{display:block;background:#fff0d6;border-inline-start:3px solid #94611e;padding:12px 16px;margin-block:16px}.emergency-address{overflow-wrap:anywhere}.emergency-checked{color:#56634f;margin-top:22px}.emergency-sources{border-top:1px solid #d8dfcf;margin-top:12px;padding-top:6px}.emergency-sources summary{min-height:44px;padding:10px 0;cursor:pointer;font-weight:600;font-size:.875rem}.emergency-source{display:block;min-height:44px;padding-block:10px;font-size:.8125rem;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:3px}.emergency-official-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}.emergency-official-links .raised-link{font-size:.8125rem}.emergency-disaster-reference{padding:24px;border:1px solid #bac9b4;max-width:720px}.emergency-disaster-reference .reference-number{display:block}.emergency-contact-directory :is(p,h1,h2,h3,h4){overflow-wrap:anywhere}.emergency-hours{unicode-bidi:plaintext}@media(max-width:780px){.emergency-contact-grid{grid-template-columns:1fr}.emergency-contact-card{padding:22px}.emergency-boundary{padding:18px}.emergency-tel{font-size:1.05rem}}@media(forced-colors:active){.emergency-tel{border:2px solid ButtonText;box-shadow:none}.emergency-boundary,.emergency-unverified{border:2px solid CanvasText}}

/* v25.css */
:root{--c-paper:#FBF6EC;--c-ink:#2B2522;--c-night:#1B2440;--c-lantern:#F2A33A;--c-sos:#C62828;--c-temple:#A8321E;--c-teak:#6B4226;--c-forest:#2E6B4F;--c-sky:#2F6E96;--c-amber-text:#8A5A00;--c-gold:#C9A227}
.v25-header-safety{display:flex;gap:12px;flex:1;justify-content:center;min-width:0}.v25-header-safety .header-emergency,.v25-header-disaster,.v25-mobile-safety a{display:flex;align-items:center;justify-content:center;gap:10px;min-height:64px;padding:12px 22px;border:2px solid var(--c-sos);border-radius:12px;background:var(--c-sos);color:#fff;font-size:22px;font-weight:800;line-height:1.3;text-decoration:none;overflow-wrap:anywhere}.v25-header-disaster,.v25-mobile-safety .v25-disaster-link{background:var(--c-night);border-color:var(--c-lantern);color:#fff}.v25-header-safety svg,.v25-mobile-safety svg{flex:none;width:26px;height:26px}.v25-mobile-safety{display:none}.v25-phone-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-block:18px}.v25-phone-tile{display:grid;grid-template-columns:28px auto;align-content:center;align-items:center;gap:4px 14px;min-height:104px;padding:18px;border:2px solid var(--c-sos);border-radius:14px;background:#fff;color:var(--c-sos);text-decoration:none}.v25-phone-number{font-size:38px;font-weight:900;line-height:1.1;letter-spacing:.03em}.v25-phone-label{grid-column:2;font-size:18px;font-weight:700;line-height:1.5}.v25-emergency-top{border-block-end:2px solid var(--c-night);padding-block:8px 28px;margin-block-end:28px}.v25-consular-line{display:block;color:var(--c-night);font-size:18px;font-weight:700;padding:14px;background:#fff;border-radius:10px}.v25-call-note{font-size:18px;line-height:1.7}.v25-call-first{font-size:22px;font-weight:800}.v25-light-link{display:inline-block;padding:14px 0;color:var(--c-night);font-weight:700}.v25-disaster{max-width:980px;margin-inline:auto}.v25-disaster-info{padding-block:28px}.v25-disaster-info h2{font-size:26px}.v25-official-card{padding:20px;border:1px solid #c2bdb5;border-radius:12px;background:#fff;margin-block:16px}.v25-official-card small{display:block;margin-block:12px}.v25-official-warning{font-size:20px}.safety-view{background:var(--c-paper);color:var(--c-ink)}.safety-view .page{font-size:18px;line-height:1.8}.v25-footer-links{display:flex;flex-wrap:wrap;gap:12px 24px;padding-block:20px}.v25-footer-links a{padding:8px 0;font-weight:700}.v25-practice-entry{display:block;margin-block:22px;padding:24px;background:var(--c-night);color:#fff;border:2px solid var(--c-lantern);border-radius:14px;text-decoration:none;font-size:22px;font-weight:800}.v25-practice-entry small{display:block;margin-block-start:8px;font-weight:400;font-size:17px}
@media(min-width:1024px){header{gap:20px}.v25-header-safety{max-width:520px}.v25-header-safety>a{flex:1}}
@media(max-width:1023px){.v25-header-safety{display:none}body{padding-bottom:calc(var(--safety-dock-height,104px) + 16px)}.v25-mobile-safety{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;position:fixed;z-index:110;bottom:0;inset-inline:0;padding:8px 10px max(8px,env(safe-area-inset-bottom));background:var(--c-paper);border-top:1px solid #c2bdb5;box-shadow:0 -4px 20px #1b244026}.v25-mobile-safety a{min-width:0;padding:10px;font-size:22px}.v25-mobile-safety a:focus-visible{outline:3px solid var(--c-night);outline-offset:2px}}
@media(max-width:480px){.v25-phone-tiles{gap:10px}.v25-phone-tile{padding:14px 10px;grid-template-columns:24px auto;gap:5px 8px}.v25-phone-number{font-size:34px}.v25-phone-label{font-size:16px}.v25-mobile-safety a{font-size:22px;gap:6px}.v25-mobile-safety svg{width:22px;height:22px}}

/* Stable, one-line news with separate capture and event dates. */
.v25-news-skip{position:absolute;inset-inline-start:4vw;transform:translateY(-160vh);z-index:130;padding:12px;background:var(--c-paper);color:var(--c-night)}.v25-news-skip:focus{transform:none}
.language-flags{min-height:84px}.ping-news-desk{box-sizing:border-box;min-height:56px;height:56px;padding:0 10px;align-items:center;background:var(--c-night);border-color:var(--c-night);gap:8px}.ping-desk-body{align-self:stretch;display:grid;grid-template-rows:36px 18px;min-width:0}.ping-desk-story{min-height:36px}.ping-desk-date{font-size:10px!important;line-height:16px;margin:0;white-space:nowrap;text-align:end;overflow:hidden;text-overflow:ellipsis}.ping-desk-controls{align-self:center}.ping-motion-toggle{width:44px;height:44px;min-height:44px;min-width:44px;padding:10px;line-height:1;flex:none}.ping-motion-toggle svg{width:24px;height:24px}.v25-news-date{display:inline-block;white-space:normal;line-height:1.5;font-size:12px}.ping-ticker-track .v25-news-date{white-space:nowrap}.v25-news-event{background:var(--c-lantern);color:var(--c-night);padding:2px 7px;border-radius:5px;font-weight:700}.v25-news-ended{background:#e6e3df;color:#4b4744;padding:2px 7px;border-radius:5px}.v25-news-posted{color:#5b5650}.ping-ticker-track .v25-news-posted{color:#d6d9e1}.desk-news-row{grid-template-columns:minmax(110px,180px) minmax(0,1fr);gap:14px}.desk-publication-date{white-space:normal}.search-button{white-space:nowrap;overflow-wrap:normal;flex:none}
@media(max-width:480px){.language-flags{min-height:128px}.desk-news-row{grid-template-columns:minmax(0,1fr);gap:0}.desk-publication-date{justify-self:start;padding:3px 8px}.desk-news-link{padding-top:4px}.ping-news-desk{margin-inline:3vw}.discovery-search{display:flex}.discovery-search input{min-width:0;flex:1}.search-button{padding-inline:14px}}

.v25-photo{margin:0;min-width:0}.v25-photo img{display:block;width:100%;height:auto;border-radius:12px}.v25-photo figcaption{font-size:12px;line-height:1.6;padding:6px 0;display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 12px}.v25-photo-credit{color:var(--c-night);text-decoration:underline}.v25-credits-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.v25-credit-card{min-width:0;background:var(--c-paper);border:1px solid #d5cdbd;padding:18px;border-radius:14px}.v25-license{font-size:14px}@media(max-width:700px){.v25-credits-grid{grid-template-columns:1fr}}

.v25-video-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-block:24px}.v25-video-card{display:flex;flex-direction:column;min-width:0;padding:16px;border:1px solid #d5cdbd;border-radius:14px;background:var(--c-paper)}.v25-video-card img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:8px}.v25-video-card h3{font-size:19px;margin-block:18px 6px;line-height:1.6}.v25-video-channel{font-size:14px;color:var(--c-teak)}.v25-video-kind{font-size:12px;line-height:1.7;padding:6px 10px;border:1px solid var(--c-sky);border-radius:6px;color:var(--c-sky)}.v25-video-blurb{font-size:16px;line-height:1.8}.v25-video-watch{display:flex;align-items:center;min-height:48px;margin-top:auto;font-weight:700;color:var(--c-night)}.v25-home-videos{padding-block:32px}.v25-home-videos .v25-video-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.v25-video-note{font-size:14px}@media(max-width:1000px){.v25-video-grid,.v25-home-videos .v25-video-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.v25-video-grid,.v25-home-videos .v25-video-grid{grid-template-columns:1fr}}

.v25-sponsor-page{max-width:900px;margin-inline:auto}.v25-sponsor-page h1{max-width:22ch;line-height:1.5}.v25-sponsor-page h2{font-size:24px;margin-block:36px 16px}.v25-sponsor-page p,.v25-sponsor-page li{font-size:18px;line-height:1.9}.v25-sponsor-page li{padding-block:6px}.v25-sponsor-intro{font-size:20px!important}

/* v25-official.css */
.v25-official{color:var(--c-ink,#2B2522);font-size:1rem;line-height:1.8;min-width:0;background:var(--c-paper,#FBF6EC)}
.v25-official *{box-sizing:border-box}
.v25-official h1{font-size:clamp(1.65rem,3.8vw,2.65rem);line-height:1.4;margin:0 0 1.2rem}
.v25-official h2{font-size:clamp(1.3rem,2.8vw,1.75rem);line-height:1.5;margin:0 0 1rem}
.v25-official h3{font-size:1.2rem;line-height:1.55;margin:0 0 .75rem}
.v25-official h4{font-size:1rem;margin:1rem 0 .25rem}
.v25-official p{margin:.6rem 0}
.v25-official-body,.v25-official-section,.v25-official .v25-official-card{min-width:0}
.v25-official-body{overflow-wrap:anywhere}
.v25-official-section{margin:1.5rem 0;padding:clamp(1rem,3vw,1.7rem);border:1px solid #CBBFAE;border-radius:14px;background:#fffdf8}
.v25-official-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.v25-official .v25-official-card{padding:1.15rem;border:1px solid #CBBFAE;border-radius:10px;background:var(--c-paper,#FBF6EC)}
.v25-official-intro{display:flex;align-items:center;gap:1.5rem}
.v25-official-illustration{flex:0 0 140px;max-width:140px;height:auto}
.v25-official-unverified{padding:.85rem 1rem;border-inline-start:4px solid var(--c-sky,#2F6E96);background:#EEF4F7;font-weight:650;color:var(--c-ink,#2B2522)}
.v25-official-phone-list{display:flex;flex-wrap:wrap;gap:.75rem;margin:1rem 0}
.v25-official-phone{border:1px solid #CBBFAE;border-radius:8px;padding:.75rem;flex:1 1 230px;min-width:0;max-width:100%;background:#fffdf8}
.v25-official-phone-label{display:block;font-weight:650}
.v25-official-call{display:inline-flex;align-items:center;gap:.7rem;min-height:48px;padding:.4rem .8rem;margin:.25rem 0;font-size:1.4rem;font-weight:800;line-height:1.4;border:2px solid var(--c-sky,#2F6E96);border-radius:7px;text-decoration:none;color:var(--c-ink,#2B2522);background:#fff;max-width:100%}
.v25-official-call svg{flex:0 0 24px}
.v25-official-call-primary{font-size:2.1rem}
.v25-official a:focus-visible,.v25-official input:focus-visible{outline:3px solid var(--c-sky,#2F6E96);outline-offset:3px}
.v25-official a:hover{text-decoration:underline}
.v25-official-links{display:flex;flex-wrap:wrap;gap:.65rem}
.v25-official .raised-link{display:inline-flex;align-items:center;min-height:44px;max-width:100%;white-space:normal;margin:.35rem .35rem .35rem 0}
.v25-official-list{padding-inline-start:1.3rem;margin:.5rem 0}
.v25-official-list>li{margin:.8rem 0}
.v25-official-sources{display:grid;gap:.3rem;margin-top:.8rem}
.v25-official-source{display:flex;flex-wrap:wrap;gap:.2rem .65rem;line-height:1.65;font-size:.84rem}
.v25-official-source-link{color:#365269;text-underline-offset:.16em}
.v25-official-checked,.v25-official-small{font-size:.88rem;color:#534B42}
.v25-official-hours{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.5rem .8rem}
.v25-official-hours dt{font-weight:650}
.v25-official-hours dd{margin:0;overflow-wrap:anywhere}
.v25-official-search{display:grid;gap:.4rem;max-width:32rem;margin:1.25rem 0}
.v25-official-search label{font-weight:700}
.v25-official-search input{width:100%;min-width:0;min-height:48px;font:inherit;font-size:1rem;border:2px solid #8B8174;border-radius:8px;padding:.6rem .8rem;background:#fff;color:var(--c-ink,#2B2522)}
.v25-official-result-count{font-size:.95rem;font-weight:650}
.v25-consulate-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:1rem;text-align:start}
.v25-consulate-table caption{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.v25-consulate-table th,.v25-consulate-table td{padding:.85rem;vertical-align:top;border:1px solid #CBBFAE;overflow-wrap:anywhere}
.v25-consulate-table thead th{background:#EFE8DC;color:var(--c-ink,#2B2522)}
.v25-consulate-table thead th:first-child{width:16%}
.v25-consulate-table thead th:nth-child(2){width:34%}
.v25-consulate-table tbody th{font-weight:750;background:#F7F0E5}
.v25-consulate-type{display:block;margin-top:.3rem;color:#534B42}
.v25-consulate-phone{font-weight:650}
.v25-official [hidden]{display:none!important}
@media(max-width:700px){
  .v25-official-grid{grid-template-columns:minmax(0,1fr)}
  .v25-official-section{padding:.95rem;border-radius:10px}
  .v25-official .v25-official-card{padding:.85rem}
  .v25-official-intro{gap:1rem;align-items:flex-start}
  .v25-official-illustration{flex-basis:82px;max-width:82px}
  .v25-official-hours{grid-template-columns:minmax(0,1fr);gap:0}
  .v25-official-hours dd{margin:0 0 .8rem}
  .v25-consulate-table,.v25-consulate-table tbody,.v25-consulate-table tr,.v25-consulate-table tbody th,.v25-consulate-table td{display:block;width:100%}
  .v25-consulate-table thead{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
  .v25-consulate-table tr{margin:.8rem 0;border:1px solid #CBBFAE;border-radius:8px;overflow:hidden;background:#fff}
  .v25-consulate-table tbody th,.v25-consulate-table td{border:0;padding:.7rem .8rem}
  .v25-consulate-table td+td{border-top:1px solid #DDD2C2}
  .v25-consulate-table td:before{content:attr(data-cell-label);display:block;font-weight:750;font-size:.9rem;margin-bottom:.35rem;color:#534B42}
}

/* v25-scene.css */
/* Load after the existing portal styles. The fixed scene is outside #panels. */
:root {
  --c-paper:#FBF6EC;--c-ink:#2B2522;--c-night:#1B2440;--c-lantern:#F2A33A;
  --c-sos:#C62828;--c-temple:#A8321E;--c-teak:#6B4226;--c-forest:#2E6B4F;
  --c-sky:#2F6E96;--c-amber-text:#8A5A00;--c-gold:#C9A227;
  --v25-paper-surface:rgba(251,246,236,.97);
  --v25-heading-font:'Hiragino Maru Gothic ProN','Hiragino Sans','Noto Sans JP','Yu Gothic','Noto Sans Thai',system-ui,sans-serif;
}
body.v25-themed {
  --ink:var(--c-ink);--paper:var(--c-paper);--blue:var(--c-temple);--acid:var(--c-lantern);
  --line:#d2c5b1;--muted:#65564c;
  color:var(--c-ink);background:var(--c-night);
  font-family:'Hiragino Sans','Noto Sans JP','Yu Gothic','Noto Sans Thai',system-ui,sans-serif;
  font-size:16px;line-height:1.8;isolation:isolate;
}
.v25-themed main,.v25-themed header,.v25-themed .navigation,.v25-themed footer {position:relative;z-index:1}
.v25-themed header,.v25-themed .navigation,.v25-themed .demo-banner {background:var(--v25-paper-surface)}
.v25-themed header {border-block-end:1px solid var(--line)}
.v25-themed .mark {background:var(--c-night)}
.v25-themed .brand-title,.v25-themed h1,.v25-themed h2,.v25-themed h3 {font-family:var(--v25-heading-font)}
.v25-themed .navigation a[aria-current=page] {color:var(--c-temple)}
.v25-themed .navigation a:after {background:var(--c-temple)}
.v25-themed .navigation a {font-size:1rem}
.v25-scene {
  position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none;
  background:linear-gradient(#141d36 0%,#2f2f45 58%,#764241 100%);
  contain:strict;
}
.v25-scene * {pointer-events:none}
.v25-scene-canvas {position:absolute;inset:0;display:block;width:100%;height:100%}
.v25-scene-silhouette {position:absolute;inset-inline:0;inset-block-end:0;width:100%;height:clamp(150px,28vh,320px)}
.v25-motion-toggle {
  position:fixed;z-index:105;inset-inline-end:18px;inset-block-end:max(20px,env(safe-area-inset-bottom));
  width:44px;height:44px;min-width:44px;min-height:44px;padding:0;display:grid;place-items:center;
  border:2px solid var(--c-lantern);border-radius:50%;background:var(--c-night);color:var(--c-paper);
  box-shadow:0 4px 16px #10192f40;line-height:1;cursor:pointer;
}
.v25-motion-toggle:hover {background:#293552}
.v25-motion-toggle:focus-visible {outline:3px solid var(--c-lantern);outline-offset:4px}
.v25-motion-toggle:disabled {opacity:.8;cursor:default}
.v25-motion-icon {display:block;width:22px;height:22px}
.v25-scene-enabled .page {
  width:min(1440px,calc(100% - 40px));max-width:1440px;margin:26px auto 48px;
  padding:clamp(24px,4vw,56px);background:var(--v25-paper-surface);
  border:1px solid #eadcc7;border-radius:18px;box-shadow:0 14px 60px #11192b1a;
}
.v25-scene-enabled main :is(p,li,dd,dt,label,input,select,button,summary) {font-size:max(1rem,1em);line-height:1.8}
.v25-scene-enabled .portal-heading h1,.v25-scene-enabled .page-heading h1 {
  font-weight:750;font-size:clamp(2rem,4.2vw,4.4rem);letter-spacing:-.035em;line-height:1.35;
}
.v25-scene-enabled :is(.portal-section-title h2,.section-heading h2) {font-weight:750;letter-spacing:-.025em}
.v25-scene-enabled .portal-home {background:transparent;border:0;box-shadow:none;padding:0}
.v25-scene-enabled .portal-home>section:not(.city-hero) {
  background:var(--v25-paper-surface);border:1px solid #eadcc7;border-radius:18px;
  padding:clamp(20px,3vw,40px);margin-block:26px;
}
.v25-scene-enabled .portal-home>section>.portal-section-title:first-child {margin-block-start:0}
.v25-scene-enabled .portal-home>.portal-translation {
  background:var(--v25-paper-surface);padding:18px 22px;border-radius:12px;
}
.v25-scene-enabled .city-index-section {background:var(--v25-paper-surface)}
.v25-themed :is(.place-card,.detail-facts,.source-pending,.legacy-search-card) {background:var(--c-paper)}
.v25-themed .place-card {border-block-start:3px solid var(--c-forest);border-radius:4px 4px 10px 10px}
.v25-themed .place-card-link {padding-inline:20px}
.v25-themed .place-card-meta {padding-inline:20px}
.v25-themed .place-card:hover {background:#f3eadb}
.v25-themed .card-kicker,.v25-themed .section-number {color:var(--c-amber-text)}
.v25-themed .detail-facts {border-radius:14px}
.v25-themed .portal-trust,.v25-themed .fineprint {color:#65564c}
.v25-themed .directory-card {background:var(--c-paper)!important;border-radius:12px!important}
.v25-themed .category-pills a[aria-current=page] {background:var(--c-night);border-color:var(--c-night)}
.v25-themed .search-button,.v25-themed .detail-official,.v25-themed .category-open {background:var(--c-night)}
.v25-themed .search-button:hover,.v25-themed .detail-official:hover,.v25-themed .category-open:hover {background:#2c3b5e}
.v25-themed .discovery-search input {color:var(--c-ink)}
.v25-themed .discovery-search {background:var(--c-paper);border-color:var(--c-ink);border-radius:10px;overflow:hidden}
.v25-themed .hero-shortcuts a {color:var(--c-teak);text-decoration-color:#b49c78}
.v25-themed .city-masthead {color:var(--c-temple)}
.v25-themed .city-hero {border:0;border-radius:20px;background:var(--v25-paper-surface);overflow:hidden}
.v25-hero {position:relative;min-height:420px;isolation:isolate;background:var(--c-night);overflow:hidden}
.v25-hero-frame {
  position:absolute;inset:0;margin:0;opacity:0;pointer-events:none;
  transition:opacity 1800ms ease;z-index:0;
}
.v25-hero-frame.is-current {opacity:1;z-index:1;pointer-events:auto}
.v25-hero-photo {display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.v25-hero-frame:after {
  content:'';position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(0deg,rgba(17,26,43,.5),transparent 45%);
}
.v25-hero-credit {
  position:absolute;inset-inline-end:20px;inset-block-end:16px;z-index:2;
  display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:0 12px;
  max-width:calc(100% - 40px);padding:4px 12px;background:var(--v25-paper-surface);
  color:var(--c-ink);border-radius:8px;font-size:.8125rem;line-height:1.5;text-align:end;
}
.v25-hero-source {
  display:inline-flex;align-items:center;min-height:44px;min-width:44px;
  font-size:.8125rem;text-decoration:underline;text-underline-offset:4px;
}
.v25-hero-photo-title {font-size:.875rem}
.v25-photo-unavailable .v25-hero-photo,.v25-photo-unavailable .v25-hero-credit {visibility:hidden}
.v25-has-photo {position:relative;isolation:isolate;grid-template-columns:minmax(0,1fr);min-height:590px;padding:46px 46px 92px}
.v25-has-photo>.v25-hero {position:absolute;inset:0;z-index:0;min-height:0}
.v25-has-photo>.city-intro {
  position:relative;z-index:2;align-self:center;width:min(690px,65%);max-width:100%;
  padding:clamp(22px,3vw,38px);border:1px solid #efe2cc;border-radius:14px;
  background:var(--v25-paper-surface);box-shadow:0 12px 36px #10192f1c;
}
.v25-has-photo .city-masthead {font-size:clamp(3.3rem,6.2vw,6.8rem);flex-direction:row;flex-wrap:wrap;gap:0 .13em;line-height:.94}
.v25-has-photo .discovery-title {font-size:clamp(1.5rem,2.3vw,2.2rem);font-weight:700;line-height:1.6;max-width:100%}
.v25-has-photo .city-intro .eyebrow {font-size:.8125rem;color:var(--c-amber-text)}
.v25-has-photo .discovery-search {max-width:100%;min-width:0}
.v25-has-photo .city-art {display:none}
.v25-themed .category-index {border:0;gap:18px}
.v25-themed .category-tile {
  --v25-category-color:var(--c-teak);
  border:1px solid #d8ccb8;border-block-start:4px solid var(--v25-category-color);
  border-radius:12px;background:var(--c-paper);color:var(--c-ink);overflow:hidden;
  display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;
  min-width:0;min-height:150px;padding:18px;gap:10px;
}
.v25-themed .category-tile:hover,.v25-themed .category-tile[aria-current=page] {background:#f1e6d2;color:var(--c-ink)}
.v25-themed .category-tile .category-name {
  flex:0 1 auto;max-width:100%;padding:5px 10px;border-radius:6px;
  background:var(--v25-category-color);color:#fff;line-height:1.5;font-size:1rem;font-weight:700;
}
.v25-themed .category-no,.v25-themed .category-tile:hover .category-no {color:var(--c-amber-text);align-self:flex-start}
.v25-themed .category-temples {--v25-category-color:var(--c-temple)}
.v25-themed .category-food,.v25-themed .category-market,.v25-themed .category-gathering {--v25-category-color:var(--c-teak)}
.v25-themed .category-cafes,.v25-themed .category-stays,.v25-themed .category-local_news {--v25-category-color:var(--c-forest)}
.v25-themed .category-transport,.v25-themed .category-essentials,.v25-themed .category-massage {--v25-category-color:var(--c-sky)}
.v25-themed .category-music,.v25-themed .category-festival {--v25-category-color:var(--c-night)}
.v25-themed .category-hospital {--v25-category-color:var(--c-sos)}
.v25-category-photo {display:block;width:100%;aspect-ratio:4/3;height:auto;object-fit:cover;border:2px solid var(--v25-category-color);border-radius:8px}
.v25-quip {display:flex;align-items:center;gap:14px;max-width:100%;margin-block-start:18px;color:var(--c-teak)}
.v25-doodle {flex:0 0 84px;width:84px;height:64px;overflow:visible}
.v25-quip-text {font-size:1rem!important;line-height:1.8;margin:0;min-width:0;overflow-wrap:anywhere}
.category-tile .v25-quip {gap:8px;margin-block-start:auto;align-items:flex-start}
.category-tile .v25-doodle {flex-basis:42px;width:42px;height:36px}
.category-tile .v25-quip-text {font-size:1rem!important}
.v25-themed footer {background:var(--c-night);color:var(--c-paper);border-block-start:1px solid var(--c-gold)}
.v25-themed .footer-word {color:var(--c-lantern)}
.v25-themed .footer-top small {color:#dfd3be}
.v25-themed a:focus-visible,.v25-themed button:focus-visible,.v25-themed input:focus-visible,.v25-themed select:focus-visible {
  outline:3px solid var(--c-sky);outline-offset:4px;
}
.v25-themed .v25-motion-toggle:focus-visible {outline-color:var(--c-lantern)}
.v25-scene-safety {background:var(--c-paper)!important}
.v25-scene-safety .v25-scene,.v25-scene-safety .v25-motion-toggle,.v25-scene-safety .v25-quip,.v25-scene-safety .v25-hero {display:none!important}
.v25-scene-safety .page {background:var(--c-paper);font-size:18px;line-height:1.8}
.v25-motion-paused .v25-hero-frame {transition:none}
[dir=rtl] .v25-has-photo>.city-intro,[dir=rtl] .v25-hero-credit {text-align:start}
[dir=rtl] .v25-quip {text-align:start}
@media(max-width:1023px) {
  .v25-motion-toggle {inset-block-end:calc(var(--safety-dock-height,104px) + 14px);inset-inline-end:14px}
  .v25-scene-enabled .page {width:calc(100% - 28px);margin-block:18px 28px}
  .v25-has-photo {min-height:560px;padding:32px 28px 104px}
  .v25-has-photo>.city-intro {width:min(670px,82%)}
  .v25-themed .category-index {gap:14px}
}
@media(max-width:767px) {
  .v25-scene-enabled .page {width:calc(100% - 20px);padding:22px 18px;border-radius:14px}
  .v25-scene-enabled .portal-home {padding:0}
  .v25-has-photo {min-height:630px;padding:120px 16px 110px;align-items:end}
  .v25-has-photo>.city-intro {width:100%;padding:22px 20px}
  .v25-has-photo .city-masthead {font-size:clamp(2.8rem,11vw,4.5rem)}
  .v25-has-photo .discovery-title {font-size:1.5rem;margin-block:18px 16px}
  .v25-hero-credit {inset-inline:12px;inset-block-end:12px;max-width:none;justify-content:flex-start;text-align:start;padding:5px 10px;gap:0 10px}
  .v25-hero-photo-title {flex:1 1 100%}
  .v25-hero-source {min-height:44px}
  .v25-themed .category-index {grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .v25-themed .category-tile {padding:14px 12px;min-height:145px}
  .category-tile .v25-quip {flex-direction:column}
  .v25-themed .category-local_news {grid-column:1/-1}
  .v25-doodle {flex-basis:64px;width:64px;height:50px}
  .v25-scene-silhouette {height:190px}
}
@media(max-width:389px) {
  .v25-has-photo {padding-inline:12px}
  .v25-has-photo>.city-intro {padding-inline:16px}
  .v25-has-photo .city-masthead {font-size:2.6rem}
  .v25-themed .category-index {gap:10px}
}
@media(prefers-reduced-motion:reduce) {
  .v25-hero-frame {transition:none}
  .v25-scene-enabled .page {animation:none}
}
@media(forced-colors:active) {
  .v25-scene {display:none}
  .v25-motion-toggle {border-color:ButtonText}
  .v25-hero-credit,.v25-has-photo>.city-intro {background:Canvas;color:CanvasText;border-color:CanvasText}
  .v25-themed .category-tile .category-name {border:1px solid CanvasText}
}
@media print {
  .v25-scene,.v25-motion-toggle,.v25-hero,.v25-quip {display:none!important}
  body.v25-themed,.v25-themed .page {background:#fff;box-shadow:none;color:#000}
  .v25-scene-enabled .page {width:100%;margin:0;border:0}
}

/* v25-home.css */
.v25-themed .search-button,.v25-themed .detail-official,.v25-themed .category-open{color:var(--c-paper)}
.v25-themed .category-index{align-items:stretch;grid-template-columns:repeat(4,minmax(0,1fr))}
.v25-themed .category-tile{position:relative;gap:12px;padding:16px}
.v25-category-art{display:flex;align-items:center;justify-content:center;width:100%;min-height:140px;background:#f0e7d5;border-radius:8px;color:var(--v25-category-color);overflow:hidden}
.v25-category-art>svg{width:100%;height:145px;padding:20px;max-width:220px}
.v25-category-art .v25-photo{width:100%}.v25-category-art .v25-photo img{aspect-ratio:16/10;object-fit:cover;border-radius:8px 8px 0 0}
.v25-category-art .v25-photo figcaption{padding:4px 7px;background:var(--c-paper);font-size:10px;line-height:1.6}
.v25-category-art .v25-photo-caption{display:none}.v25-category-art .v25-photo-credit{font-size:10px;color:var(--c-teak);text-decoration:none}
.v25-themed .category-no{position:absolute;top:24px;inset-inline-start:24px;font-size:11px;padding:0 7px;border-radius:20px;background:var(--c-paper);color:var(--c-ink)}
.v25-category-caption{font-size:16px;line-height:1.8;margin:0}.v25-themed .category-tile>.v25-quip{margin:0}
.v25-home-safety-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:20px}.v25-home-safety-links a{display:flex;align-items:center;justify-content:center;min-height:88px;padding:16px;font-size:20px;font-weight:750;line-height:1.6;text-decoration:none;border:2px solid var(--c-lantern);border-radius:12px;background:var(--c-night);color:#fff}.v25-home-safety-links a[href="#emergency"]{background:var(--c-sos);border-color:var(--c-sos)}
.v25-themed .featured-places .place-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.v25-themed .place-card>.v25-photo{padding:14px 14px 0}.v25-themed .featured-places .guide-gateway{grid-template-columns:1fr;margin-bottom:0}.v25-themed .featured-places .guide-gateway-body{max-width:100%}
.v25-themed .organization-preview .organization-grid{gap:20px}.v25-themed .join-status,.v25-themed .studio-scope{line-height:1.8}
.v25-themed .portal-home>section.v25-home-safety{border:2px solid var(--c-night);background:var(--c-paper)}
.v25-themed .portal-home>.editorial-studio{margin-block:36px;background:var(--v25-paper-surface);border-radius:18px;padding:clamp(20px,3vw,40px)}
.v25-themed .portal-home>.organization-preview{background:var(--v25-paper-surface);border-radius:18px;padding:clamp(20px,3vw,40px);margin-block:26px}
@media(max-width:1180px){.v25-themed .category-index{grid-template-columns:repeat(3,minmax(0,1fr))}.v25-home-safety-links{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.v25-themed .category-index{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.v25-themed .category-tile{padding:10px}.v25-themed .category-local_news{grid-column:auto}.v25-category-art{min-height:100px}.v25-category-art>svg{height:115px;padding:15px}.v25-themed .category-no{top:15px;inset-inline-start:15px}.v25-themed .category-tile .category-name{font-size:16px;padding:4px 7px}.v25-themed .featured-places .place-grid{grid-template-columns:1fr}.v25-home-safety-links a{font-size:18px;padding:12px}.v25-home-safety-links{gap:10px}.v25-scene-enabled .portal-home>section:not(.city-hero){padding:18px 14px}.v25-has-photo .discovery-search{flex-wrap:nowrap}.v25-has-photo .discovery-search input{width:0;flex:1;min-width:0}.v25-has-photo .search-button{padding-inline:12px}}
@media(prefers-reduced-motion:reduce){.v25-themed .page{animation:none}.v25-themed .category-tile{transition:none}}

/* v25-maps.css */
.v25-map {
  container: v25map / inline-size;
  width: 100%;
  min-width: 0;
  margin-block: 2rem;
  padding: clamp(12px, 2vw, 24px);
  border: 1px solid #d8c6b0;
  border-radius: 20px;
  background: #fbf6ec;
  color: #1b2440;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 16px;
  line-height: 1.8;
  box-sizing: border-box;
}
.v25-map *, .v25-map-drafts-header * { box-sizing: border-box; }
.v25-map-title {
  margin: 0 0 .35em;
  font-size: clamp(24px, 2.3vw, 32px);
  font-weight: 800;
  line-height: 1.55;
  overflow-wrap: anywhere;
}
.v25-map-intro { margin: 0 0 1rem; font-size: 16px; line-height: 1.8; overflow-wrap: anywhere; }
.v25-map-language-note { margin: .6rem 0 1rem; border-inline-start: 3px solid #8d6745; padding-inline-start: .7rem; font-size: 16px; line-height: 1.7; color: #49556a; }
.v25-map-figure { margin: 0; width: 100%; }
.v25-map-image-box { position: relative; width: 100%; aspect-ratio: 3 / 2; overflow: hidden; border: 1px solid #d7cbb6; border-radius: 12px; background: #fbf6ec; }
.v25-map-image { display: block; width: 100%; max-width: none; height: 100%; object-fit: contain; aspect-ratio: 3 / 2; }
.v25-map-overlay { display: none; position: absolute; inset: 0; pointer-events: none; }
.v25-map-label {
  position: absolute;
  transform: translate(-50%, -50%);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 2px;
  width: 14%;
  min-height: 44px;
  padding: 5px 6px;
  color: #1b2440;
  background: #fffaf0;
  border: 1px solid #8b7257;
  border-radius: 7px;
  box-shadow: 0 2px 5px #1b244022;
  text-align: center;
  text-decoration: none;
  font-size: 16px;
  line-height: 1.3;
  pointer-events: auto;
  overflow-wrap: anywhere;
}
.v25-map-local { display: block; font-size: 16px; line-height: 1.4; font-weight: 800; overflow-wrap: anywhere; max-width: 100%; }
.v25-map-roman { display: block; font-size: 16px; line-height: 1.35; font-weight: 450; overflow-wrap: anywhere; max-width: 100%; color: #4c535d; }
.v25-map-label:hover, .v25-map-place-card:hover { background: #fff; border-color: #a74724; box-shadow: 0 0 0 2px #a74724; }
.v25-map a:focus-visible, .v25-map-drafts-header a:focus-visible { outline: 4px solid #176f9d; outline-offset: 4px; }
.v25-map-note { margin: .7rem 0 1rem; padding-inline-start: .75rem; border-inline-start: 3px solid #9d7042; font-size: 16px; line-height: 1.8; overflow-wrap: anywhere; }
.v25-map-place-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.v25-map-place-card {
  display: flex;
  justify-content: center;
  flex-direction: column;
  gap: 3px;
  min-height: 64px;
  min-width: 0;
  padding: 10px 12px;
  border: 1px solid #aa947c;
  border-radius: 8px;
  background: #fffdf6;
  color: #1b2440;
  text-decoration: none;
  text-align: start;
  line-height: 1.6;
  overflow-wrap: anywhere;
}
.v25-map-compare-link, .v25-map-home-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  margin-block-start: 1rem;
  padding: 9px 16px;
  border: 1px solid #1b2440;
  border-radius: 8px;
  background: #1b2440;
  color: #fff;
  font-size: 16px;
  font-weight: 750;
  line-height: 1.6;
  text-align: center;
  text-decoration: none;
  overflow-wrap: anywhere;
}
.v25-map-compare-link:hover, .v25-map-home-link:hover { background: #324061; }
.v25-map-image-error .v25-map-overlay { display: none; }
.v25-map-image-error .v25-map-image { height: auto; }
.v25-map-image-error-note { position: absolute; inset: 20% 10% auto; padding: 1rem; background: #fffaf0; border: 1px solid #aa947c; border-radius: 8px; font-size: 16px; line-height: 1.8; }
.v25-map-drafts-body { margin: 0; background: #fbf6ec; color: #1b2440; font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-size: 18px; line-height: 1.8; }
.v25-map-drafts-main { width: min(1392px, 100%); margin-inline: auto; padding: 16px 24px 40px; box-sizing: border-box; }
.v25-map-drafts-header { margin-block: 0 2rem; }
.v25-map-drafts-title { margin: 1.2rem 0 .5rem; font-size: clamp(28px, 3.8vw, 46px); line-height: 1.45; overflow-wrap: anywhere; }
.v25-map-drafts-intro { margin-block: .5rem 1rem; font-size: 18px; line-height: 1.8; overflow-wrap: anywhere; }
.v25-map-home-link { margin-block-start: 0; background: transparent; color: #1b2440; }
.v25-map-home-link:hover { color: #fff; }
.v25-map-fallback { padding: 1rem; border: 1px solid #8b7257; background: #fff; }
.v25-map-fallback a { color: #1b2440; display: inline-flex; align-items: center; min-height: 48px; padding: .25rem .5rem; }
@container v25map (min-width: 1050px) {
  .v25-map-overlay { display: block; }
  .v25-map-place-list { display: none; }
  .v25-map-list-required .v25-map-place-list { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
  .v25-map { border-radius: 12px; padding: 12px; }
  .v25-map-drafts-main { padding: 12px 12px 24px; }
  .v25-map-place-card { padding: 8px 10px; }
  .v25-map-image-error-note { inset: 4% 4% auto; padding: .5rem; }
}
@media (max-width: 350px) {
  .v25-map-place-list { grid-template-columns: 1fr; }
}
@media print {
  .v25-map { break-inside: avoid; border-radius: 0; }
  .v25-map-overlay { display: none; }
  .v25-map-place-list { display: grid; }
  .v25-map-compare-link, .v25-map-home-link { display: none; }
}

/* v26-content.css */
/* Readable city stories and practical, source-linked everyday guidance. */
.v26-section-lead,.v26-story-lead{font-size:clamp(1.1rem,2vw,1.35rem);line-height:1.9;max-width:70ch}
.v26-news-compact{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px}
.v26-news-card{min-width:0;position:relative;padding:22px 0;border-block-end:1px solid #d8d0c0;display:flex;flex-direction:column;align-items:flex-start;gap:9px}
.v26-news-card h3{font-size:1.15rem;line-height:1.65;margin:0}.v26-news-title{color:var(--c-night);text-decoration:none}.v26-news-title:hover{text-decoration:underline;text-underline-offset:5px}
.v26-news-summary{font-size:1rem;line-height:1.9;margin:0}.v26-news-original{display:inline-flex;align-items:center;min-height:44px;font-size:.9rem;color:var(--c-forest);margin-block-start:auto;font-weight:700}
.v26-news-date{display:inline-block;font-size:.85rem;line-height:1.5;color:#5e574e;font-variant-numeric:tabular-nums}.v26-event-date{background:#f8db9e;color:#3b2d19;padding:5px 9px;border-radius:6px}.v26-ended{color:#625e57;background:#eae5db;padding:5px 9px;border-radius:6px}
.ping-ticker-track .v26-news-date{color:#d6d9e1;white-space:nowrap;margin-inline-start:14px;font-size:.8rem}.ping-ticker-track .v26-event-date,.ping-ticker-track .v26-ended{color:var(--c-night)}
.v26-news-venue{font-size:.9rem;line-height:1.6;margin:0}.v26-see-all{margin-block-start:22px}.v26-news-grid,.v26-event-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.v26-news-grid .v26-news-card,.v26-event-grid .v26-news-card{border:1px solid #d8d0c0;border-radius:16px;padding:22px;background:#fffdf7;box-shadow:0 4px 16px #36251405}
.v26-news-filter{display:grid;grid-template-columns:minmax(0,1fr) minmax(160px,.5fr) auto;gap:12px;margin-block:28px 16px}.v26-news-filter label{grid-column:1/-1;font-weight:700}.v26-news-filter input,.v26-news-filter select{min-width:0;width:100%;min-height:48px;padding:12px;border:1px solid #9d9586;border-radius:8px;background:#fff;font:inherit;color:var(--c-ink)}
.v26-news-filter button{min-height:48px;white-space:nowrap}.v26-result-count,.v26-news-footnote{font-size:.9rem;color:#655d52;line-height:1.8}.v26-news-footnote{padding-block:24px}.v26-empty{padding:24px;grid-column:1/-1;border:1px dashed #aaa095;border-radius:12px}.v26-story-body{max-width:800px;margin-block:28px 40px}.v26-news-page>h1{max-width:30ch;line-height:1.5}.v26-home-map{padding-block:40px}
.v26-living-home{margin-block:32px;padding:clamp(20px,4vw,44px);border:1px solid #cfc5b3;border-radius:18px;background:linear-gradient(120deg,#f7eacc,#fffcf6)}
[class^=v26-living-],[class*=" v26-living-"]{min-width:0;box-sizing:border-box}
.v26-living-page{max-width:1080px;margin-inline:auto}.v26-living-page h1{font-size:clamp(2rem,4vw,3rem);line-height:1.45}.v26-living-page p,.v26-living-page li{line-height:1.9}.v26-living-lead,.v26-living-intro{font-size:1.18rem;max-width:68ch}
.v26-living-nav,.v26-living-index,.v26-living-topics,.v26-living-home-grid,.v26-living-home-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-block:22px}
.v26-living-nav button,.v26-living-index button,.v26-living-home a{min-height:48px;white-space:normal;line-height:1.65;border:1px solid #c7bea9;border-radius:10px;padding:14px 16px;background:#fffdf6;color:var(--c-night);font:inherit;font-weight:700;text-align:start;text-decoration:none}
.v26-living-group{margin-block:36px}.v26-living-topic{margin-block:18px;padding:clamp(20px,3vw,32px);border:1px solid #d7cdba;border-radius:16px;background:#fffdf8;scroll-margin-top:24px}.v26-living-topic h2,.v26-living-topic h3{line-height:1.6;color:var(--c-forest)}.v26-living-topic li{padding-block:5px}.v26-living-topic ul,.v26-living-topic ol{padding-inline-start:24px}.v26-living-links{display:flex;flex-wrap:wrap;gap:12px}.v26-living-links a{display:inline-flex;align-items:center;min-height:44px;padding:8px 14px;border-radius:8px;background:#ecefdf;color:#244b37;font-weight:700}.v26-living-callout,.v26-living-first{border-inline-start:4px solid var(--c-lantern);padding:14px 20px;background:#faf0d9}
.v26-ask-index{margin-block:36px;border-block-start:1px solid #cfc5b3;padding-block:28px}.v26-ask-list{columns:2;column-gap:32px;padding-inline-start:22px}.v26-ask-list li{break-inside:avoid;padding-block:8px;line-height:1.7}.v26-ask-index summary{cursor:pointer;min-height:44px;padding-block:12px;font-weight:700}.v26-home-quicklinks{display:flex;flex-wrap:wrap;gap:12px;margin-block:24px}.v26-home-quicklinks a{display:inline-flex;align-items:center;gap:8px;min-height:48px;padding:12px 20px;border:1px solid #c7bda9;border-radius:999px;background:#fffaf0;color:var(--c-night);font-weight:700;text-decoration:none}
@media(max-width:1000px){.v26-news-grid,.v26-event-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v26-living-nav,.v26-living-index,.v26-living-topics,.v26-living-home-grid,.v26-living-home-links{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.v26-news-grid,.v26-event-grid,.v26-news-compact{grid-template-columns:minmax(0,1fr)}.v26-news-filter{grid-template-columns:minmax(0,1fr) auto}.v26-news-filter input{grid-column:1/-1}.v26-ask-list{columns:1}.v26-living-nav,.v26-living-index,.v26-living-topics,.v26-living-home-grid,.v26-living-home-links{grid-template-columns:minmax(0,1fr)}.v26-news-page>h1{font-size:1.75rem}.v26-story-body .raised-link{white-space:normal;line-height:1.7}}

.v26-living-city-photo{max-width:780px;margin:28px auto}.v26-living-details>.v25-photo{max-width:660px;margin:24px auto}.v26-living-details>[data-v26-map]{margin-block:24px}

/* v26-layout.css */
/* v26: unobstructed city photographs, resilient chrome and readable small screens.
   This sheet follows all v25 styles. No image, caption or control is clipped to
   disguise overflow. The slideshow's frames share one intrinsic grid cell. */

body.v25-themed > header {
  display:grid;
  grid-template-columns:minmax(180px,1fr) minmax(360px,1.5fr) minmax(236px,428px);
  gap:16px;
  padding-block:20px;
  align-items:center;
}
body.v25-themed > header .identity {
  min-width:0;max-width:100%;width:100%;gap:12px;
}
.v25-themed .brand-stack {min-width:0}
.v25-themed .brand-title {white-space:nowrap;overflow-wrap:normal;font-size:1.125rem}
.v25-themed .brand-subtitle {line-height:1.65;overflow-wrap:normal;word-break:normal}
.v25-themed .header-language-cluster {
  width:100%;max-width:none;min-width:0;margin-inline-start:0;
}
.v25-themed .language-flags {
  grid-template-columns:repeat(auto-fit,44px);max-width:none;min-height:0;gap:4px;
}
.v25-themed .language-flag-button {
  width:44px;height:44px;min-width:44px;min-height:44px;
}
.v25-themed .v25-header-safety {
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  width:100%;max-width:none;min-width:0;gap:10px;
}
.v25-themed .v25-header-safety > a,
.v25-mobile-safety a {
  min-width:0;max-width:none;min-height:64px;
  padding:12px;gap:8px;font-size:1.25rem;line-height:1.45;
  text-align:center;text-decoration:none;white-space:normal;
  overflow-wrap:normal;word-break:normal;
}
.v25-themed .v25-header-safety > a > span,
.v25-mobile-safety a > span {
  min-width:0;overflow-wrap:normal;word-break:normal;line-height:1.45;
}
.v25-themed .v25-header-safety svg,
.v25-mobile-safety svg {flex:0 0 24px;width:24px;height:24px}
html:lang(ja) :is(.v25-header-safety,.v25-mobile-safety) a > span,
html:lang(zh) :is(.v25-header-safety,.v25-mobile-safety) a > span,
html:lang(ko) :is(.v25-header-safety,.v25-mobile-safety) a > span {
  white-space:nowrap;
}
.v25-themed .v25-header-safety > a:focus-visible,
.v25-mobile-safety a:focus-visible {outline:3px solid var(--c-sky);outline-offset:3px}

/* The shared raised-button selector has greater specificity than a single
   ticker class. Reserve the complete 44px target for its icon, and keep the
   target still while the surrounding headlines move. */
#ping-news-desk {position:relative;z-index:1}
#ping-news-desk .ping-motion-toggle {
  display:grid;place-items:center;flex:none;
  width:44px;height:44px;min-width:44px;min-height:44px;
  padding:0;gap:0;line-height:1;
  color:var(--c-night);background:var(--c-paper);
  border:1px solid #d9cbb6;border-radius:10px;
  box-shadow:none;transform:none;transition:none;
}
#ping-news-desk .ping-motion-toggle svg {
  display:block;flex:none;width:24px;height:24px;max-width:none;
  pointer-events:none;
}
#ping-news-desk .ping-motion-toggle:not(:disabled):hover {background:#f3e7d2}
#ping-news-desk .ping-motion-toggle:focus-visible {
  outline:3px solid var(--c-lantern);outline-offset:3px;
}
#ping-news-desk .ping-motion-toggle:disabled {opacity:.65;cursor:default}

.v25-themed .navigation {
  display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:0 16px;
}
.v25-themed .navigation a {
  min-width:0;min-height:60px;width:100%;margin:0;
  padding:12px 4px;gap:8px;align-items:center;justify-content:flex-start;
  text-align:start;overflow-wrap:normal;word-break:normal;
}
.v25-themed .navigation b {min-width:0;line-height:1.55;overflow-wrap:normal}
.v25-themed .navigation a > span {flex:none}

/* A separate reading panel and photograph: neither is a background layer. */
.v25-themed .city-hero.v25-has-photo {
  display:grid;grid-template-columns:minmax(280px,.9fr) minmax(0,1.3fr);
  align-items:center;gap:clamp(24px,3vw,44px);
  min-height:0;padding:clamp(24px,3vw,42px);
  border:1px solid #eadcc7;border-radius:20px;
  background:var(--c-paper);overflow:visible;
}
.v25-has-photo > .city-intro {
  grid-column:1;grid-row:1;position:relative;inset:auto;z-index:auto;
  width:100%;max-width:none;min-width:0;align-self:center;
  margin:0;padding:0;border:0;border-radius:0;box-shadow:none;
  background:transparent;
}
.v25-has-photo .city-masthead {
  display:flex;flex-direction:column;align-items:flex-start;gap:0;
  font-family:Arial,Helvetica,sans-serif;font-size:clamp(3.2rem,5.2vw,5.6rem);
  line-height:.96;letter-spacing:-.075em;margin-inline-start:0;
  color:var(--c-temple);
}
.v25-has-photo .city-masthead span {overflow-wrap:normal;word-break:keep-all}
.v25-has-photo .city-intro .eyebrow {
  margin-block:0 18px;font-size:.8125rem;line-height:1.7;letter-spacing:.12em;
}
.v25-has-photo .discovery-title {
  max-width:100%;margin-block:22px 18px;
  font-size:clamp(1.45rem,2.1vw,1.9rem);line-height:1.55;
  text-wrap:balance;overflow-wrap:normal;word-break:normal;
}
.v25-has-photo .discovery-search {width:100%;min-width:0;max-width:none;flex-wrap:nowrap}
.v25-has-photo .discovery-search input {width:0;min-width:0;flex:1 1 0;padding-inline:12px}
.v25-has-photo .search-button {min-width:64px;flex:0 0 auto;padding-inline:16px}
.v25-has-photo .hero-shortcuts {gap:0 8px;margin-block-start:10px}
.v25-has-photo .hero-shortcuts a {min-height:44px;padding-inline:6px;line-height:1.6}
.v25-has-photo > .v25-hero {
  grid-column:2;grid-row:1;display:grid;position:relative;inset:auto;z-index:auto;
  width:100%;min-width:0;min-height:0;align-self:center;
  border:1px solid #d9cbb6;border-radius:12px;background:#f4ecdf;
  overflow:hidden;box-shadow:0 8px 28px #6b422615;
}
.v25-has-photo .v25-hero-frame {
  display:grid;grid-template-rows:auto 1fr;grid-area:1 / 1;
  position:relative;inset:auto;min-width:0;min-height:0;width:100%;margin:0;
  align-self:stretch;background:#f4ecdf;
}
.v25-has-photo .v25-hero-photo {
  display:block;width:100%;max-width:100%;height:auto;aspect-ratio:16 / 9;
  min-height:0;object-fit:contain;object-position:center;
  background:var(--c-night);
}
.v25-has-photo .v25-hero-frame::after {display:none;content:none}
.v25-has-photo .v25-hero-credit {
  position:static;inset:auto;z-index:auto;width:100%;max-width:none;
  display:flex;align-content:center;align-items:center;justify-content:space-between;
  gap:0 12px;min-height:68px;padding:10px 16px;margin:0;border-radius:0;
  border-block-start:1px solid #d9cbb6;background:#f4ecdf;color:var(--c-ink);
  text-align:start;line-height:1.6;
}
/* Retain the height of every translated caption while slides cross-fade.
   Inactive figures still have aria-hidden=true and non-tabbable credit links. */
.v25-has-photo .v25-hero-credit[hidden] {display:flex!important;visibility:hidden}
.v25-has-photo .v25-hero-photo-title {
  flex:1 1 140px;min-width:0;font-size:.875rem;line-height:1.6;overflow-wrap:normal;
}
.v25-has-photo .v25-hero-source {
  min-height:44px;min-width:44px;max-width:100%;padding-block:4px;
  font-size:.8125rem;line-height:1.6;color:var(--c-teak);
  overflow-wrap:normal;word-break:normal;
}

/* Shared content safeguards. Long URLs may wrap; short control labels do not
   inherit the original arbitrary-character wrapping rule. */
.v25-themed :is(.page,.page-heading,.portal-heading,.portal-section-title,.section-heading,
  .detail-layout,.detail-body,.detail-facts,.place-card,.directory-card,.guide-gateway,
  .guide-gateway-body,.organization-grid,.v25-video-card,.v25-official-section) {min-width:0}
.v25-themed .page :is(h1,h2,h3) {text-wrap:balance}
.v25-themed :is(.portal-section-title,.section-heading) {align-items:flex-start}
.v25-themed :is(.portal-section-title,.section-heading) h2 {min-width:0;line-height:1.55}
.v25-themed .page :is(button,summary,select) {min-height:44px}
.v25-themed .page :is(button,select) {max-width:100%}
.v25-themed .page button {overflow-wrap:normal;word-break:normal}
.v25-themed .page summary {padding-block:10px;cursor:pointer;line-height:1.7}
.v25-themed .page summary:focus-visible {outline:3px solid var(--c-sky);outline-offset:4px}
.v25-themed .v25-photo-credit {display:inline-flex;align-items:center;min-height:44px;min-width:44px}
.v25-themed :is(.place-card-link,.directory-card) h3 {line-height:1.55}
.v25-themed :is(.category-tile,.place-card,.directory-card) p {line-height:1.85}
.v25-themed .v25-home-safety-links a {overflow-wrap:normal;word-break:normal}
.v25-themed .v26-news-title {display:inline-flex;align-items:center;min-height:44px;min-width:44px}
.v25-themed .v26-living-home a {display:inline-flex;align-items:center;min-height:48px;min-width:44px}
.v25-themed .v26-living-page > .v26-living-header {
  display:block;position:static;z-index:auto;min-height:0;width:100%;max-width:none;
  margin:0 0 28px;padding:0;border:0;background:transparent;box-shadow:none;
}
.v25-themed .v26-living-header h1 {margin-block:10px 16px;line-height:1.5}
.v25-themed .v26-living-header .eyebrow {margin:0;color:var(--c-amber-text)}
.v25-themed .v26-living-intro {margin:0;max-width:68ch;line-height:1.9}
.v25-themed .v26-living-home .v26-living-home-card {
  display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:8px;
}
.v25-themed .v26-living-home-card strong {font-size:1.125rem;line-height:1.65}
.v25-themed .v26-living-home-card p {font-size:1rem;font-weight:400;line-height:1.85;margin:0}
.v25-themed .v26-living-nav {grid-template-columns:repeat(5,minmax(0,1fr))}
.v25-themed .v26-living-directory {
  border-block:1px solid #d7cdba;padding-block:8px;margin-block:24px;
}
.v25-themed .v26-living-directory > summary {font-size:1.125rem;font-weight:700;color:var(--c-night)}
.v25-themed .v26-living-group > h2 {font-size:clamp(1.5rem,2.5vw,2rem);line-height:1.55;margin-block:8px}
.v25-themed .v26-living-group-intro {color:#62584c;max-width:70ch;margin-block:8px 22px}
.v25-themed .v26-living-topic h3 {font-size:1.3rem;line-height:1.65;margin-block:0 12px}
.v25-themed .v26-living-topic .v26-living-lead {font-size:1.0625rem;margin-block:0 20px}
.v25-themed .v26-living-first {margin-block:20px}
.v25-themed .v26-living-first strong {display:block;margin-block-end:6px;color:var(--c-teak)}
.v25-themed .v26-living-details {border-block-start:1px solid #d7cdba;padding-block-start:6px}
.v25-themed .v26-living-details > summary {font-weight:700;color:var(--c-night)}
.v25-themed .v26-living-details h4 {font-size:1rem;line-height:1.7;margin-block:16px 8px}
.v25-themed .v26-living-steps > li {padding-inline-start:4px;margin-block:18px}
.v25-themed .v26-living-preparation {margin-block:22px}
.v25-themed .v26-living-links {margin-block:12px 4px}
.v25-themed .v26-living-related {
  min-height:44px;min-width:44px;max-width:100%;padding:8px 14px;
  border:1px solid #a0b399;border-radius:8px;background:#ecefdf;color:#244b37;
  font:inherit;font-weight:700;line-height:1.65;text-align:start;white-space:normal;
}
.v25-themed .page img {max-width:100%}
.v25-themed .page table {max-width:100%}
.v25-themed .table-scroll {max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain}
.v25-themed .footer-bottom {flex-wrap:wrap;gap:14px 28px;line-height:1.7}
.v25-themed .v25-footer-links {gap:4px 20px}
.v25-themed .v25-footer-links a {display:inline-flex;align-items:center;min-height:44px;max-width:100%}

@media(min-width:1024px) and (max-width:1179px) {
  body.v25-themed > header {grid-template-columns:minmax(200px,1fr) minmax(380px,1.4fr);gap:14px 24px}
  .v25-themed .header-language-cluster {grid-column:1 / -1}
  .v25-themed .language-flags {justify-content:end}
}
@media(max-width:1023px) {
  body.v25-themed > header {grid-template-columns:minmax(0,1fr);gap:16px;padding-block:18px}
  .v25-themed .v25-header-safety {display:none}
  .v25-themed .language-flags {justify-content:start}
  .v25-themed .navigation {grid-template-columns:repeat(4,minmax(0,1fr));gap:0 20px}
  .v25-themed .navigation a {min-height:54px}
  .v25-themed .navigation a > span {display:none}
  .v25-themed .navigation a:last-child {grid-column:span 2}
  .v25-themed .city-hero.v25-has-photo {
    grid-template-columns:minmax(0,1fr);gap:24px;padding:clamp(20px,4vw,36px);
  }
  .v25-has-photo > .city-intro {grid-column:1;grid-row:1;width:100%;padding:0}
  .v25-has-photo > .v25-hero {grid-column:1;grid-row:2;align-self:start}
  .v25-has-photo .city-masthead {flex-direction:row;flex-wrap:wrap;gap:0 .14em;font-size:clamp(3rem,8vw,5.6rem)}
  .v25-has-photo .discovery-title {margin-block:20px 16px;font-size:clamp(1.5rem,3vw,2rem)}
  .v25-has-photo .discovery-search {max-width:740px}
  .v25-mobile-safety a {font-size:1.25rem;padding:10px;gap:8px}
  .v25-themed .v26-living-nav {grid-template-columns:repeat(2,minmax(0,1fr))}
  .v25-themed .v26-living-nav > :last-child {grid-column:1 / -1}
}
@media(max-width:600px) {
  body.v25-themed > header {padding-inline:5vw;gap:14px}
  .v25-themed .brand-title {font-size:1.0625rem}
  .v25-themed .brand-subtitle {font-size:.875rem}
  .v25-themed .navigation {grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px;padding-inline:5vw}
  .v25-themed .navigation a {min-height:52px;padding-inline:0}
  .v25-themed .navigation a:last-child {grid-column:1 / -1}
  .v25-themed .navigation b {font-size:.9375rem}
  .v25-themed .city-hero.v25-has-photo {padding:22px 18px;gap:22px;border-radius:14px}
  .v25-has-photo .city-masthead {font-size:clamp(2.8rem,12vw,4.4rem)}
  .v25-has-photo .city-intro .eyebrow {margin-block-end:14px}
  .v25-has-photo .discovery-title {font-size:1.5rem;margin-block:18px 16px}
  .v25-has-photo .search-button {padding-inline:12px;font-size:1rem}
  .v25-has-photo .v25-hero-credit {padding:8px 12px;gap:0 10px}
  .v25-has-photo .v25-hero-photo-title {flex-basis:100%}
  .v25-themed .portal-home > section:not(.city-hero) {padding:22px 16px}
  .v25-themed .v25-home-safety-links {grid-template-columns:minmax(0,1fr)}
  .v25-themed .v25-home-safety-links a {min-height:64px;padding:12px 16px;font-size:1.125rem}
  .v25-themed .page-heading {display:block}
  .v25-themed .page-heading .sub {max-width:100%;margin-block-start:14px}
  .v25-themed .portal-section-title {gap:12px}
  .v25-themed .city-desk-tabs {
    display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;
    padding:0 0 12px;border-block-end:0;
  }
  .v25-themed .desk-tab {
    min-width:0;min-height:52px;padding:10px 8px;border:1px solid #b9ad97;
    border-radius:8px;font-size:1rem;line-height:1.55;hyphens:auto;
  }
  .v25-themed .desk-tab[aria-selected=true] {border:2px solid var(--c-forest)}
  .v25-themed .desk-tab[aria-selected=true]::after {display:none}
  .v25-themed .city-desk-panel {border:1px solid #b9ad97;border-radius:12px;padding:18px 14px}
  .v25-themed .v25-official-intro {flex-wrap:wrap}
  .v25-themed .v26-living-nav {grid-template-columns:minmax(0,1fr)}
  html:lang(ru) .v25-mobile-safety a {flex-direction:column;gap:2px;font-size:1.125rem}
}
@media(max-width:389px) {
  .v25-themed .city-hero.v25-has-photo {padding-inline:14px}
  .v25-has-photo .city-masthead {font-size:2.8rem}
  .v25-themed .v25-phone-tiles {grid-template-columns:minmax(0,1fr)}
  .v25-mobile-safety {gap:6px;padding-inline:8px}
  .v25-mobile-safety a {padding:10px 6px;gap:6px;font-size:1.125rem}
  .v25-mobile-safety svg {flex-basis:22px;width:22px;height:22px}
  .v25-themed .v25-official-call {font-size:1.2rem;padding-inline:.5rem}
  .v25-themed .v25-official-call-primary {font-size:1.65rem}
}
@media(prefers-reduced-motion:reduce) {
  .v25-themed .page,.v25-themed .v25-hero-frame {animation:none;transition:none}
}
@media(forced-colors:active) {
  .v25-has-photo > .v25-hero,.v25-has-photo .v25-hero-credit {border-color:CanvasText;background:Canvas;color:CanvasText}
  .v25-has-photo .v25-hero-source {color:LinkText}
  .v25-themed .v25-header-safety > a,.v25-mobile-safety a {border-color:ButtonText}
  #ping-news-desk .ping-motion-toggle {color:ButtonText;background:ButtonFace;border-color:ButtonText}
  #ping-news-desk .ping-motion-toggle:focus-visible {outline-color:Highlight!important}
}
@media print {
  body.v25-themed > header,.v25-themed .navigation,.v25-mobile-safety {display:none!important}
  .v25-themed .city-hero.v25-has-photo {display:block;padding:0;border:0}
  .v25-has-photo > .city-intro {display:block}
  .v25-themed .page {max-width:100%;width:100%;margin:0;padding:0;box-shadow:none}
}

/* v28-polish.css */
/* A single quiet headline strip, above the identity and navigation. */
#ping-news-desk {
  display:grid;grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;gap:14px;margin:0;padding:0 4vw;
  height:44px;min-height:44px;border:0;border-radius:0;box-shadow:none;
  background:#202c3b;color:#f4f6fa;
  font-family:system-ui,-apple-system,"Segoe UI","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;
}
#ping-news-desk .ping-desk-brand {
  display:flex;align-items:center;min-height:44px;padding:0;
  font:700 12px/1.2 system-ui,sans-serif;letter-spacing:.12em;
  color:#f4f6fa;text-decoration:none;white-space:nowrap;
}
#ping-news-desk .ping-desk-brand::before {
  content:"";width:5px;height:5px;border-radius:50%;background:#aac9b8;margin-inline-end:9px;
}
#ping-news-desk .ping-desk-body {
  display:block;align-self:center;min-width:0;border-inline-start:1px solid #647080;
  padding-inline-start:14px;
}
#ping-news-desk .ping-ticker-viewport {height:44px;max-width:100%}
#ping-news-desk .ping-ticker-track {gap:24px}
#ping-news-desk .ping-desk-story {
  min-height:44px;height:44px;gap:12px;
  font:500 14px/1.5 system-ui,-apple-system,"Segoe UI","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;
  color:#f4f6fa;letter-spacing:0;text-decoration:none;
}
#ping-news-desk .ping-desk-story::after {content:"·";margin-inline-start:24px;color:#91a0b3}
#ping-news-desk .ping-headline-date {
  padding:0;border:0;border-radius:0;background:none;box-shadow:none;
  color:#b8c4d3;font-size:12px;font-weight:400;line-height:1.5;
  letter-spacing:0;font-variant-numeric:tabular-nums;
}
#ping-news-desk .ping-desk-controls {align-self:center;grid-column:auto;flex-wrap:nowrap;margin:0}
#ping-news-desk .ping-motion-toggle {
  padding:0;width:44px;height:44px;min-width:44px;min-height:44px;
  color:#d5deea;background:transparent;border:0;border-radius:0;box-shadow:none;
  transform:none;transition:none;
}
#ping-news-desk .ping-motion-toggle svg {width:18px;height:18px;display:block}
#ping-news-desk .ping-motion-toggle:not(:disabled):hover {background:#334253;color:white;transform:none;box-shadow:none}
#ping-news-desk .ping-desk-story:hover,#ping-news-desk .ping-desk-brand:hover {text-decoration:underline;text-underline-offset:4px}
@media(max-width:600px) {
  #ping-news-desk {padding-inline:3vw;gap:8px}
  #ping-news-desk .ping-desk-body {padding-inline-start:8px}
  #ping-news-desk .ping-desk-brand {font-size:11px;letter-spacing:.07em}
  #ping-news-desk .ping-desk-brand::before {display:none}
  #ping-news-desk .ping-desk-story {font-size:13px}
}
@media(forced-colors:active) {
  #ping-news-desk {background:Canvas;color:CanvasText;border-bottom:1px solid CanvasText}
  #ping-news-desk :is(.ping-desk-brand,.ping-desk-story,.ping-headline-date,.ping-motion-toggle) {color:CanvasText}
}

/* Make the first view immediately readable while the decorative scene starts. */
.portal-home {animation:none}


/* The photographic scene belongs to the opening chapter and scrolls away with it. */
.v34-hero-scene {
  position: absolute;
  inset: 0;
  overflow: hidden;
  z-index: 0;
  pointer-events: none;
  user-select: none;
  background: #0a1628;
  contain: layout paint;
  isolation: isolate;
}
#immersive-scene {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  pointer-events: none;
  user-select: none;
  background: #0a1628;
  contain: strict;
}
#immersive-scene[hidden] { display: none; }
html[data-ui-theme="day"] .v34-hero-scene,
html[data-ui-theme="warm"] .v34-hero-scene,
html[data-ui-theme="day"] #immersive-scene,
html[data-ui-theme="warm"] #immersive-scene { background: #b89459; }
html[data-ui-theme="white"] .v34-hero-scene,
html[data-ui-theme="white"] #immersive-scene { background: #f6f1df; }

@media print {
  .v34-hero-scene, #immersive-scene { display: none !important; }
}

@media (forced-colors: active) {
  .v34-hero-scene, #immersive-scene { display: none !important; }
}

/* Chiang Mai / blue hour. The city remains visible between the stories. */
:root {color-scheme:dark;--night:#0a1628;--gold:#d4af37;--flame:#ff6b35;--teal:#90c4b5;--white:#f6f1e8;--glass:rgba(10,22,40,.58)}
html {scroll-behavior:smooth;background:#0a1628}
body.immersive {isolation:isolate;background:transparent;color:var(--white);font-family:'Noto Sans JP',system-ui,sans-serif;--c-paper:#0a1628;--c-ink:#f6f1e8;--ink:#f6f1e8;--paper:#102234;--muted:#bdc7ce;--line:rgba(255,255,255,.16);--v25-paper-surface:rgba(10,22,40,.58);--c-night:#f6f1e8;--c-temple:#ebc988;--c-forest:#91c6b6;--c-teak:#d2c4ac;--c-sky:#9dccdc}
body.immersive :is(h1,h2,h3) {font-family:'Noto Serif JP',Georgia,serif;font-weight:600;letter-spacing:.025em;color:var(--white)}
.immersive a:focus-visible,.immersive button:focus-visible,.immersive input:focus-visible,.immersive select:focus-visible,.immersive summary:focus-visible {outline:3px solid #ffd982!important;outline-offset:5px}
.immersive .skip {background:#f6f1e8;color:#0a1628}
body.immersive > header {position:relative;z-index:5;display:grid;grid-template-columns:1fr auto auto;gap:28px;min-height:90px;padding:18px 5vw;border-bottom:1px solid #ffffff1c;background:rgba(10,22,40,.55);backdrop-filter:blur(20px)}
.immersive .mark {background:transparent;border:1px solid #d4af3766;color:#e9ce99;font-family:Georgia,serif;font-weight:400;font-size:29px;letter-spacing:-3px;width:48px;height:48px;min-width:48px;line-height:46px;border-radius:50%;text-align:center;padding:0}
.immersive .mark span {color:#e9ce99}
.immersive .brand-title {font-family:Georgia,serif;font-size:18px;letter-spacing:.16em;color:#f7ecdb;font-weight:400}
.immersive .brand-subtitle {font-size:10px;letter-spacing:.15em;color:#b7c4cb;margin-top:3px}
.immersive .header-language-cluster {width:auto;max-width:none;margin:0}
.immersive #language-flags {display:none}
.immersive .language-select-control {display:flex!important;align-items:center;gap:8px;border:0;background:none;padding:0}
.immersive .language-select-control label {font-size:0}
.immersive .language-select-control label::after {content:'◎';font-size:22px;color:#d6ba80}
.immersive .language-select-control select {width:132px;max-width:132px;min-height:44px;color:#f6f1e8;background:#142839;border:1px solid #ffffff26;border-radius:22px;padding:8px 12px;font-size:12px}
.immersive .v25-header-safety {display:flex!important;gap:9px;width:auto}
.immersive .v25-header-safety > a {min-height:44px;font-size:12px;padding:8px 12px;gap:6px;border-radius:24px;background:#1a2e3f;color:#f6f1e8;border:1px solid #ffffff26;box-shadow:none;white-space:nowrap}
.immersive .v25-header-safety > a.header-emergency {background:#6d242a;border-color:#c85c5c;color:#fff1ec}
.immersive .v25-header-safety svg {width:17px;height:17px;flex-basis:17px}
.immersive #ping-news-desk {height:40px;min-height:40px;background:#06101d;color:#f6f1e8;padding-inline:5vw;border-bottom:1px solid #ffffff12}
.immersive #ping-news-desk :is(.ping-ticker-viewport,.ping-desk-story,.ping-desk-brand) {min-height:40px;height:40px}
.immersive #ping-news-desk .ping-desk-story {font-size:12px}
.immersive #ping-news-desk .ping-headline-date {font-size:10px}
.immersive #site-navigation {position:relative;z-index:3;background:rgba(10,22,40,.34);backdrop-filter:blur(12px);display:flex;justify-content:center;gap:30px;padding:0 5vw;border-bottom:1px solid #ffffff18}
.immersive #site-navigation a {min-height:54px;width:auto;padding:10px 0;font-size:12px;color:#ccd2d7;letter-spacing:.05em}
.immersive #site-navigation a span {display:none}
.immersive #site-navigation a b {font-weight:400}
.immersive #site-navigation a:after {right:0;background:#d4af37;height:1px}
.immersive #site-navigation a[aria-current=page] {color:#f2d89f}
.immersive #content {position:relative;z-index:1}
.immersive .page {animation:none;padding:50px 5vw 100px;color:#f6f1e8;background:transparent}
/* Inner-page reading stays legible as lanterns and the golden temple pass behind it. */
.immersive .page:not(.portal-home) {background:rgba(10,22,40,.70);backdrop-filter:blur(12px)}
.immersive .portal-home {padding:0 5vw 100px}
.immersive .city-hero {position:relative;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);align-items:center;gap:8vw;min-height:660px;padding:64px 0 90px;margin:0;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}
.immersive .city-hero::before,.immersive .city-hero::after {display:none}
.immersive .city-intro {position:relative;z-index:1;max-width:720px;background:rgba(10,22,40,.40);backdrop-filter:blur(20px);border:1px solid #ffffff18;border-radius:3px 48px 3px 3px;padding:38px 36px 30px;box-shadow:0 24px 80px #00000015}
.immersive .city-intro .eyebrow {color:#d8b878;font:500 10px/1.5 'Noto Sans JP',sans-serif;letter-spacing:.24em;margin:0 0 22px}
.immersive .city-masthead {display:flex;flex-direction:row;gap:.3em;font:400 19px/1.3 Georgia,serif;letter-spacing:.24em;color:#c6a36a;margin:0 0 12px}
.immersive .city-masthead span {color:inherit}
.immersive .discovery-title {font-family:'Noto Serif JP',Georgia,serif;font-size:clamp(38px,4.6vw,72px);font-weight:600;letter-spacing:.035em;line-height:1.5;color:#fff5e5;margin:0 0 20px;white-space:normal;overflow-wrap:normal}
.immersive .hero-title-line {display:block}
.immersive .cinematic-deck {color:#c4ced5;font-size:13px;line-height:2.1;letter-spacing:.07em;margin:0 0 24px;max-width:38em}
.immersive .discovery-search {display:flex;background:rgba(6,14,25,.55);border:1px solid #a7b8bd6b;border-radius:4px;box-shadow:none;min-height:55px;width:100%;margin:0;padding:4px}
.immersive .discovery-search input {width:100%;min-width:0;background:none;border:0;color:#f6f1e8;font-size:13px;padding:12px}
.immersive input::placeholder {color:#a6b4bc;opacity:1}
.immersive .search-button {background:#ddbd80;color:#122333;border:0;border-radius:2px;box-shadow:none;min-height:46px;padding:10px 18px;font-size:12px;white-space:nowrap}
.immersive .hero-shortcuts {gap:18px;margin:18px 0 0;display:flex;flex-wrap:wrap}
.immersive .hero-shortcuts a {font-size:11px;min-height:38px;border-bottom:1px solid #aab8c043;color:#d8e0e0;padding:8px 0;white-space:nowrap}
.immersive .cinematic-postcard {align-self:end;position:relative;transform:rotate(2deg);margin:0 0 30px;max-width:340px;justify-self:end;padding:10px 10px 0;background:rgba(13,30,43,.60);border:1px solid #ffffff22;border-radius:2px;backdrop-filter:blur(20px);box-shadow:0 28px 65px #0005}
.immersive .cinematic-postcard .v25-photo {margin:0;border:0;border-radius:0;background:transparent;box-shadow:none;padding:0}
.immersive .cinematic-postcard img {width:100%;height:auto;aspect-ratio:1.52;object-fit:cover;border-radius:1px}
.immersive .cinematic-postcard figcaption {padding:12px 3px;color:#d8cbb7;display:flex;gap:7px;font-size:9px;background:none;line-height:1.7}
.immersive .cinematic-postcard .v25-photo-caption {font-family:'Noto Serif JP',serif;font-size:12px}
.immersive .cinematic-postcard .v25-photo-credit {font-size:8px;color:#bbc6cc}
.immersive .scene-tools {display:flex;flex-wrap:wrap;align-items:center;gap:8px;position:absolute;inset-inline-end:0;bottom:27px;z-index:2}
.immersive .scene-tools button {min-width:44px;min-height:44px;border:1px solid #c5cfca38;border-radius:24px;background:rgba(10,22,40,.5);backdrop-filter:blur(12px);color:#d9e2e4;font-size:11px;padding:8px 16px;box-shadow:none}
.immersive .scene-tools button[aria-pressed=true] {color:#f7d999;border-color:#d4af37a3}
.immersive .scene-tools .scene-motion {min-width:44px;padding:8px 12px}
.immersive .scene-photo-credit {font-size:10px;line-height:1.7;max-width:26em;padding:8px 10px;color:#f2ddac;background:rgba(10,22,40,.86);border-radius:4px;text-decoration:underline;text-underline-offset:3px}
html[data-ui-theme="night"] .immersive .cinematic-postcard {visibility:hidden;pointer-events:none}
html:is([data-ui-theme="white"],[data-ui-theme="warm"]) .immersive .scene-photo-credit {display:none}
.immersive .hero-scroll-note {position:absolute;bottom:35px;inset-inline-start:0;font:10px/1.5 'Noto Sans JP',sans-serif;letter-spacing:.23em;color:#a4b9c5;display:flex;align-items:center;gap:16px}
.immersive .hero-scroll-note::before {content:'';width:44px;height:1px;background:#9eb8c2}
.immersive .v26-home-quicklinks {display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin:0 0 100px;border-block:1px solid #ffffff25;background:rgba(10,22,40,.32);backdrop-filter:blur(20px);padding:0}
.immersive .v26-home-quicklinks a {background:transparent;color:#e9e2d5;border:0;border-radius:0;box-shadow:none;padding:22px 24px;min-height:76px;border-inline-end:1px solid #ffffff20;display:flex;justify-content:space-between;align-items:center;font-family:'Noto Serif JP',serif;font-size:15px}
.immersive .v26-home-quicklinks a:last-child {border-inline-end:0}
.immersive .v26-home-quicklinks a::after {content:'↗';color:#c9ac74;font-family:Arial,sans-serif}
.immersive .v26-home-quicklinks a:hover {background:#b4c8bb12}
.immersive .portal-home > section {margin-top:100px;background:transparent;border:0;box-shadow:none;padding:0;color:#f6f1e8;overflow:visible}
.immersive .portal-home > .city-hero {margin-top:0;padding:64px 0 90px}
.immersive .portal-section-title {align-items:start;gap:28px;margin:0 0 30px;border-top:1px solid #ffffff24;padding-top:25px}
.immersive .section-number {color:#c1a267;font:italic 20px Georgia,serif}
.immersive .portal-section-title h2 {color:#fff0d9;font-size:clamp(25px,3vw,42px);font-weight:500;line-height:1.5}
.immersive .category-index {display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:235px;gap:20px;padding:0;margin:0;background:none;border:0}
.immersive .category-tile {isolation:isolate;position:relative;display:flex;flex-direction:column;justify-content:end;align-items:start;grid-column:span 3;min-height:0;height:100%;padding:25px;gap:8px;border:1px solid #ffffff29;border-radius:3px;background:#142838;box-shadow:none;overflow:hidden;transition:transform .3s,border-color .3s,box-shadow .3s}
.immersive .category-tile:first-child {grid-column:span 6;grid-row:span 2}
.immersive .category-tile:nth-child(n+6):nth-child(-n+8) {grid-column:span 4}
.immersive .category-tile:last-child {grid-column:span 12}
.immersive .category-tile::after {content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#07152205 15%,#0715223d 45%,#071522f0 100%);pointer-events:none}
.immersive .category-tile .v25-category-art {position:absolute;inset:0;z-index:-2;width:100%;height:100%;margin:0;background:none;aspect-ratio:auto;border-radius:0}
.immersive .category-tile .v25-category-art img {width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.2,.6,.3,1);filter:saturate(.88)}
.immersive .category-tile:first-child .category-name {font-size:38px}
.immersive .category-tile .category-name {background:none!important;color:#fff2da;font-family:'Noto Serif JP',serif;font-size:23px;font-weight:500;padding:0;line-height:1.45;max-width:100%;text-shadow:0 2px 14px #0008}
.immersive .category-no {position:absolute;top:20px;inset-inline-start:22px;color:#f3e5cd;background:#07152255;border:1px solid #ffffff40;padding:4px 9px;border-radius:20px;font:11px/1.3 Georgia,serif;min-width:0}
.immersive .category-tile:hover .category-no {color:#f3e5cd}
.immersive .category-tile :is(.v25-category-caption,[data-v25-quip]) {font-size:11px;line-height:1.8;color:#d3dadb;margin:0;padding:0;background:none;border:0;min-height:0;text-shadow:0 2px 14px #0008}
.immersive .category-tile .v25-quip-text {font-size:11px!important;line-height:1.8;color:inherit;margin:0}
.immersive .category-tile:hover {transform:translateY(-5px);border-color:#e3b96788;box-shadow:0 15px 42px #f8b45313}
.immersive .category-tile:hover img {transform:scale(1.055)}
.immersive .category-tile:last-child img {object-position:50% 40%}
.immersive .image-credit-drawer {margin-top:20px;color:#aebdc6;font-size:11px}
.immersive .image-credit-drawer summary {cursor:pointer;min-height:44px;padding:12px 0;color:#c3cfd5}
.immersive .image-credit-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:18px;background:#0b1d2be6;border:1px solid #ffffff24}
.immersive .image-credit-grid p {font-size:10px;line-height:1.8}
.immersive .image-credit-grid a {text-decoration:underline;text-underline-offset:3px;color:#ddc593}
.immersive :is(.city-desk,.v26-living-home,.v25-home-videos,.v26-home-map,.organization-preview,.editorial-studio,.featured-places) > h2 {font-size:clamp(25px,3vw,40px);margin-bottom:25px}
.immersive :is(.city-desk-head,.city-desk-header) {color:#f6f1e8;background:transparent;border-color:#ffffff24}
.immersive :is(.city-desk-grid,.v26-news-grid,.organization-preview-grid) {gap:22px}
.immersive :is(.city-desk-card,.v26-news-card,.place-card,.organization-preview article,.organization-card,.legacy-search-card,.v25-video-card) {background:rgba(10,22,40,.58);backdrop-filter:blur(20px);border:1px solid #ffffff20;border-radius:3px;box-shadow:0 14px 45px #0002;color:#e9e8e3;overflow:hidden;padding:24px;transition:transform .25s,border-color .25s}
.immersive :is(.city-desk-card,.v26-news-card,.place-card,.organization-preview article,.v25-video-card):hover {transform:translateY(-4px);border-color:#d4af376b}
.immersive :is(.city-desk-card,.v26-news-card,.place-card,.organization-preview article) :is(p,time,small,.eyebrow,.card-kicker,.card-index) {color:#becbd0}
.immersive :is(.city-desk-card,.v26-news-card,.place-card,.organization-preview article) :is(h2,h3) {color:#f5ecdd;font-weight:500}
.immersive :is(.place-card,.v26-news-card) .place-card-link {background:none;color:#f2e8da;border:0;padding:10px 0 0;min-height:150px;box-shadow:none}
.immersive .place-card .place-card-link h3 {font-size:22px}
.immersive .place-card-meta {background:none;border-color:#ffffff20;color:#b4c2c7;margin-top:14px;font-size:10px}
.immersive .media-banner {position:relative;margin:-24px -24px 24px;overflow:hidden;min-height:185px;background:#1b3041;border-bottom:1px solid #ffffff20}
.immersive .media-banner img {display:block;width:100%;height:240px;object-fit:cover}
.immersive .media-banner figcaption {padding:10px 15px;background:#0d1d2f;color:#bbc9cf;font-size:10px;line-height:1.8}
.immersive .media-banner figcaption a {color:#ddc18b;text-decoration:underline;text-underline-offset:3px}
.immersive .media-banner .illustrative-note {color:#cbd5d9}
.immersive .venue-social {margin:18px 0 24px}
.immersive .venue-social-link {display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 18px;border:1px solid #c8a86e;border-radius:3px;background:#173848;color:#ffe5b4;font-size:13px;text-decoration:none;line-height:1.6}
.immersive .venue-social-link:is(:hover,:focus-visible) {background:#e4c993;color:#102333;border-color:#ecd9ad}
.immersive .venue-gallery {margin:30px 0 44px}
.immersive .venue-gallery h2 {font-size:24px;margin:0 0 20px}
.immersive .venue-gallery-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.immersive .venue-gallery-grid .media-banner {margin:0;border:1px solid #ffffff26}
.immersive .venue-gallery-grid .media-banner img {height:auto;aspect-ratio:4/3;object-fit:contain;background:#081624}
@media(max-width:600px){.immersive .venue-gallery-grid {grid-template-columns:1fr}}
.immersive .page > .media-banner {margin:20px 0 45px;border:1px solid #ffffff26;border-radius:3px}
.immersive .page > .media-banner img {height:auto;max-height:540px;object-fit:contain;background:#081624}
.immersive .service-art svg {display:block;width:100%;height:auto;aspect-ratio:600/260}
.immersive .route-photo-banner,.immersive .page > .route-photo-banner {width:100%;min-height:0;margin:24px 0 40px;border:1px solid #ffffff26;border-radius:3px;box-shadow:0 22px 60px #0003;background:#102638}
.immersive .route-photo-banner img,.immersive .page > .route-photo-banner img {width:100%;height:clamp(230px,30vw,410px);max-height:none;object-fit:cover;aspect-ratio:auto}
.immersive .route-photo-banner figcaption {position:relative;padding:12px 20px;background:rgba(10,22,40,.84);backdrop-filter:blur(20px);color:#c3d0d5;line-height:1.8}
.immersive .guide-results {grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.immersive .guide-results .place-card {padding:24px}
.immersive .guide-results .media-banner img {height:205px}
.immersive :is(.guide-filters,.directory-filters,.v26-news-filter,.guide-gateway,.detail-facts,.guide-policy,.source-disclosure,.guide-reporting,.join-support,.join-policies,.v26-living-topic,.v26-map,.editorial-studio,.organization-detail,.directory-card,.restaurant-detail-body,.restaurant-facts,.v25-map,.v26-ask-index) {background:rgba(10,22,40,.64);backdrop-filter:blur(20px);border:1px solid #ffffff22;border-radius:3px;color:#e8e9e5;box-shadow:none}
.immersive :is(.guide-intro,.guide-scope,.guide-truth,.detail-lead,.detail-area,.v26-news-intro,.v26-news-date,.portal-trust,.directory-intro,.v26-map-note,.v26-living-intro) {color:#c6d1d7}
.immersive :is(.guide-title,.portal-heading h1,.detail-title-block h1,.page > h1) {font-size:clamp(30px,4.6vw,60px);line-height:1.5;max-width:100%;overflow-wrap:anywhere}
.immersive :is(.guide-source-tag,.join-status,.v26-story-tag,.v26-news-category,.directory-chip,.status,.record-status) {background:#23434b;color:#dbeee7;border:1px solid #9ab7bd4d}
.immersive :is(.v26-news-date,.v25-news-date,.v25-news-event,.v25-news-ended) {background:none;color:#c9bb9d}
.immersive :is(input,select,textarea) {background:#0c2131;color:#f5f0e7;border:1px solid #778f9c;border-radius:3px;min-height:44px}
.immersive option {background:#102637;color:#f6f1e8}
.immersive :is(.raised-link,.raised-button,.guide-submit,.category-open,.primary-link,.join-primary,.editorial-cta,.detail-official,.v26-map button,.v26-news-filter button,.directory-filters button) {background:#d8ba82;color:#102333;border:1px solid #e5ce9c;border-radius:3px;box-shadow:none;min-height:44px;transform:none}
.immersive :is(.v26-map button,.directory-filters button)[aria-pressed=true] {background:#185251;color:#e9f3e6;border-color:#95c9b7}
.immersive :is(.guide-more a,.category-pills a,.back-link,.v26-news-actions a,.completion-link) {color:#ecd4a1;border-color:#b8bda345;background:transparent}
.immersive .detail-facts :is(dt,dd),.immersive .restaurant-facts :is(dt,dd) {color:#d0dbde;background:none;border-color:#ffffff24}
.immersive .verified-facts {color:#d1dadf}
.immersive .v26-living-grid {gap:18px}
.immersive .v26-living-topic {padding:24px}
.immersive .v26-living-topic summary {color:#f0e4cf}
.immersive .v26-living-topic :is(li,p) {color:#c3d0d5}
.immersive .v26-map :is(p,label,h2,h3,legend) {color:inherit}
.immersive .v26-map :is(.v26-map-viewport,.v26-map-canvas) {background:#efeee5;color:#173f39}
.immersive .v26-map-item {background:#102b3b;color:#e9f0eb;border-color:#516d78}
.immersive .v26-map .v26-map-note {background:rgba(13,37,51,.84);color:#d2dedf;border-inline-start:5px solid #7aa699}
.immersive .v26-map a {color:#e5cd9c}
.immersive .v26-map .v26-map-item[data-selected=true] {background:#173841;border-color:#d7bb82}
.immersive .v26-map .v26-map-attribution {color:#c5d4d8;border-color:#52707b}
.immersive .v26-map .v26-map-frame {border-color:#708b91}
.immersive .v25-home-safety {background:rgba(11,32,44,.82)!important;padding:35px!important;border:1px solid #86b4ac4d!important;border-radius:3px!important}
.immersive .v25-home-safety h2 {color:#e4ebdf;font-size:26px}
.immersive .v25-home-safety-links a {background:#123845;color:#f1eddf;border:1px solid #92b7b545;border-radius:3px;box-shadow:none}
.immersive .v25-home-videos .v25-video-card {padding:0}
.immersive .v25-video-card :is(h3,p) {padding-inline:20px}
.immersive .v25-video-card h3 {font-size:18px}
.immersive .editorial-studio {padding:40px!important}
.immersive .editorial-studio :is(li,p) {background:transparent;color:#c5d2d7;border-color:#ffffff22}
.immersive .editorial-studio .editorial-loop {gap:16px}
.immersive .portal-home > .organization-preview {padding-bottom:30px}
.immersive .v25-photo {background:#102638;border-color:#ffffff24}
.immersive .v25-photo figcaption {background:#0b2132;color:#bbc9cf}
.immersive .v25-photo-credit {color:#dfc393}
.immersive footer {position:relative;z-index:1;background:#071421e8;color:#acbdc8;border-color:#ffffff20;padding:60px 5vw 35px}
.immersive footer .footer-brand {color:#d9c596}
.immersive footer a {color:#d9cbb0}
.immersive .portal-translation,.immersive .translation-note {color:#9aaebd;background:none;border-color:#ffffff20;font-size:11px}
.immersive .compare-link {position:fixed;z-index:12;inset-inline-end:20px;bottom:20px;min-height:44px;border:1px solid #d4bd8970;border-radius:26px;padding:12px 18px;background:#0a192ce8;color:#ddc491;font:11px/1.5 'Noto Sans JP',sans-serif;backdrop-filter:blur(15px);box-shadow:0 5px 25px #0004}
.immersive .compare-link::before {content:'↔';margin-inline-end:8px}
.immersive .scene-motion-global {position:fixed;z-index:12;inset-inline-start:20px;bottom:20px;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:44px;min-height:44px;max-width:calc(50vw - 28px);padding:11px 16px;border:1px solid #d4bd8970;border-radius:26px;background:#0a192ce8;color:#e5d3ad;font:11px/1.5 'Noto Sans JP',sans-serif;backdrop-filter:blur(15px);box-shadow:0 5px 25px #0004;cursor:pointer;white-space:normal;overflow-wrap:anywhere}
.immersive .scene-motion-global:hover {background:#173043;border-color:#dcc38a}
.immersive .scene-motion-global[aria-pressed=true] {background:#193b43;color:#f3e0b6;border-color:#91b9ad}
.immersive .scene-motion-global svg {flex:none;width:18px;height:18px}
.immersive .scene-motion-global:disabled {cursor:default;color:#b7c8cb;border-color:#738b92}
.immersive .safety-view,.immersive.safety-view {background:#0c1c2d}
.immersive.safety-view #immersive-scene {opacity:.1}
.immersive.safety-view .page {background:#0c1c2df5;color:#f0f1e9}
.immersive.safety-view :is(.emergency-contact,.emergency-reference,.emergency-number-card) {background:#172d3e;color:#fff2e9;border-color:#e39180}
.immersive.safety-view :is(a[href^='tel:'],.reference-number) {color:#fff1e1}
/* Preserve contrast in the practical pages whose original surfaces were white. */
.immersive .v25-phone-tile {background:#57262d;color:#fff3e8;border-color:#ce857b}
.immersive .v25-phone-tile:hover {background:#6b3036;color:#fff8ee}
.immersive .v25-phone-tile :is(.v25-phone-number,.v25-phone-label) {color:#fff3e8}
.immersive .v25-consular-line {background:#163c45;color:#f2eee0;border:1px solid #729b9c}
.immersive .v25-consular-line:hover {background:#20505a;color:#fff7e6}
.immersive .v25-practice-entry,.immersive .v25-mobile-safety .v25-disaster-link {background:#173e4b;color:#fff3df;border-color:#a7bba8}
.immersive .emergency-contact-card,.immersive .emergency-disaster-reference {background:#142d3e;color:#ecf0eb;border-color:#64828b}
.immersive .emergency-boundary,.immersive .emergency-unverified {background:#323329;color:#f1e7cf;border-color:#c1a56d}
.immersive .emergency-checked,.immersive .emergency-domestic,.immersive .emergency-small {color:#c1d0d5}
.immersive .emergency-tel {background:#1d4a43;color:#fff5e7;border-color:#81aaa0}
.immersive .emergency-source {color:#e6ce9f}
.immersive .v25-official {background:transparent;color:#e8efed}
.immersive .v25-official-section,.immersive .v25-official .v25-official-card,.immersive .v25-official-phone {background:#142c3d;color:#e8efed;border-color:#617d88}
.immersive .v25-official-unverified {background:#203c48;color:#dbe8e7;border-color:#9dbfb7}
.immersive .v25-official-call {background:#19474a;color:#fff2dc;border-color:#95bbae}
.immersive .v25-official-search input {background:#0c2131;color:#f5f0e7;border-color:#839aa5}
.immersive .v25-official-source-link {color:#e1c996}
.immersive :is(.v25-official-checked,.v25-official-small,.v25-consulate-type) {color:#bfd0d4}
.immersive .v25-consulate-table tr {background:#142c3d;color:#e8efed;border-color:#617d88}
.immersive .v25-consulate-table :is(th,td) {border-color:#617d88}
.immersive .v25-consulate-table thead th,.immersive .v25-consulate-table tbody th {background:#1e3e49;color:#f4ecda}
.immersive .v25-consulate-table td:before {color:#c5d6d8}
.immersive .v26-living-nav button,.immersive .v26-living-index button,.immersive .v26-living-home a {background:#173543;color:#f2ebdd;border-color:#698991}
.immersive .v26-living-nav button:hover,.immersive .v26-living-index button:hover,.immersive .v26-living-home a:hover {background:#234b55;color:#fff3da}
.immersive .v26-living-links a,.immersive .v26-living-related {background:#244b4e;color:#e9f0e4;border-color:#7eaaa1}
.immersive .v26-living-callout,.immersive .v26-living-first {background:#2a342f;color:#e8ead9;border-color:#d0b37d}
.immersive .v26-living-group-intro {color:#c6d3d8}
.immersive .v26-living-first strong {color:#eed5a6}
.immersive .guide-reporting .guide-no-byline {color:#bfced2}
.immersive .guide-reporting .join-status {color:#e6ce9e}
.immersive .reference-status {background:#223f45;color:#e5ecdf;border-color:#8da69a}
.immersive .status-candidate,.immersive .status-past {background:#3b382e;color:#ede1c5;border-color:#a99a77}
.immersive .notice {background:#243b43;color:#edf0e5;border-color:#d0aa72}
.immersive .notice p {color:#cdd9dc}
.immersive .official {background:#153b47;color:#f2e7ce;border-color:#82a39e}
.immersive .official:hover {background:#24555b;color:#fff3dc}
.immersive :is(.disaster,.senior) .primary,.immersive dialog .primary {background:#d8ba82;color:#102333}
.immersive :is(.disaster,.senior) .primary:hover,.immersive dialog .primary:hover {background:#e4c993;color:#102333}
.immersive .workspace,.immersive .request-pane {background:#122b3b;color:#eef1e8;border-color:#58737c}
.immersive :is(.map-label,.map-watermark,.map-selection) {background:#142f3eeF;color:#f0ecdf;border:1px solid #729399}
.immersive .map .pin {background:#153d4a;color:#fff3df;border-color:#e9ddc5}
.immersive .map .pin:hover,.immersive .map .pin[aria-pressed=true] {background:#6e482f;color:#fff7e5}
.immersive .dialog-top {background:#244a4d;color:#f2e6cf}
.immersive .flow-warning,.immersive .summary {background:#203d48;color:#e6eeea;border-color:#a58e65}
.immersive .field select {background:#0c2131;color:#f5f0e7;border-color:#839aa5}
/* Interactive states must not restore the former cream surfaces. */
.immersive :is(.place-card,.guide-card,.directory-card,.reference-card,.restaurant-card,.legacy-search-card,.v26-news-card,.city-desk-card,.organization-card,.organization-preview article,.v25-video-card,.join-option):is(:hover,:focus-within) {background:rgba(18,44,57,.96)!important;color:#edf0e8;border-color:#ad986b}
.immersive .category-tile:is(:hover,:focus-within) {background:#142838;color:#fff2da;border-color:#e3b96788}
.immersive :is(.raised-link,.raised-button,.guide-submit,.search-button,.category-open,.primary-link,.join-primary,.editorial-cta,.detail-official,.ping-link,.primary,.v26-map button,.v26-news-filter button,.directory-filters button):not(:disabled):is(:hover,:focus-visible) {background:#e4c993;color:#102333;border-color:#ecd9ad}
.immersive :is(.v26-map button,.directory-filters button)[aria-pressed=true]:is(:hover,:focus-visible) {background:#246465;color:#fff0d5;border-color:#b6d4bd}
.immersive .v26-living-nav button:is(:hover,:focus-visible),.immersive .v26-living-index button:is(:hover,:focus-visible),.immersive .v26-living-home a:is(:hover,:focus-visible),.immersive .v26-living-related:is(:hover,:focus-visible),.immersive .v26-living-links a:is(:hover,:focus-visible) {background:#234b55;color:#fff3da;border-color:#abc4b2}
.immersive .v25-phone-tile:is(:hover,:focus-visible) {background:#6b3036;color:#fff3e8;border-color:#e0a295}
.immersive .v25-consular-line:is(:hover,:focus-visible),.immersive .v25-official-call:is(:hover,:focus-visible),.immersive .emergency-tel:is(:hover,:focus-visible) {background:#24545b;color:#fff2dc;border-color:#a4c6b8}
.immersive .v25-header-safety > a.header-emergency:is(:hover,:focus-visible),.immersive .v25-mobile-safety a[href='#emergency']:is(:hover,:focus-visible) {background:#81373f;color:#fff3e8;border-color:#e1a395}
.immersive .v25-header-disaster:is(:hover,:focus-visible),.immersive .v25-mobile-safety .v25-disaster-link:is(:hover,:focus-visible),.immersive .v25-practice-entry:is(:hover,:focus-visible) {background:#24545b;color:#fff2dc;border-color:#a4c6b8}
.immersive .desk-tab:not(:disabled):is(:hover,:focus-visible) {background:#21444e;color:#f5e6c8;border-color:#92aca6;box-shadow:none}
.immersive :is(.join-text-link,.language-flag-button,.v25-map-label,.v25-map-place-card,.v25-map-compare-link,.v25-map-home-link):is(:hover,:focus-visible) {background:#21444e;color:#f5e6c8;border-color:#a2bcb1;box-shadow:none}
.immersive .hero-shortcuts a:is(:hover,:focus-visible),.immersive .everyday-links a:is(:hover,:focus-visible),.immersive .desk-news-link:is(:hover,:focus-visible) {color:#f2d699;text-decoration-color:#f2d699}
@media(min-width:1600px) {.immersive .page,.immersive .portal-home {max-width:1560px;margin-inline:auto}.immersive .city-hero{min-height:740px}}
@media(max-width:1050px) {
  body.immersive > header {gap:15px;padding-inline:4vw;grid-template-columns:1fr auto auto}
  .immersive #site-navigation {gap:18px;padding-inline:4vw}
  .immersive .page,.immersive .portal-home {padding-inline:4vw}
  .immersive .city-hero {gap:4vw;grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);min-height:600px}
  .immersive .city-intro {padding:30px 24px}
  .immersive .cinematic-postcard {max-width:255px}
  .immersive .discovery-title {font-size:42px}
  .immersive .category-index {grid-auto-rows:210px;gap:15px}
  .immersive .category-tile {padding:20px}
  .immersive .category-tile .category-name {font-size:20px}
  .immersive .guide-results {grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:1023px) {
  .immersive .compare-link,.immersive .scene-motion-global {bottom:calc(var(--safety-dock-height,104px) + 14px)}
}
@media(max-width:760px) {
  body.immersive > header {grid-template-columns:1fr auto;min-height:80px;padding:14px 5vw;gap:10px}
  .immersive .v25-header-safety {display:none!important}
  .immersive .brand-title {font-size:15px;letter-spacing:.13em}
  .immersive .brand-subtitle {font-size:9px;letter-spacing:.06em}
  .immersive .mark {width:42px;height:42px;min-width:42px;font-size:26px;line-height:40px}
  .immersive .language-select-control select {width:103px;max-width:103px;font-size:11px}
  .immersive .language-select-control label {display:none}
  .immersive #site-navigation {justify-content:start;gap:22px;overflow-x:auto;scrollbar-width:thin;white-space:nowrap;padding:0 5vw}
  .immersive #site-navigation a {flex:none;min-height:48px;font-size:11px}
  .immersive #site-navigation a b {white-space:nowrap}
  .immersive .portal-home,.immersive .page {padding-inline:5vw;padding-bottom:130px}
  .immersive .city-hero {display:block;min-height:0;padding:45px 0 90px!important}
  .immersive .city-intro {max-width:none;padding:28px 24px 25px;background:rgba(10,22,40,.42);border-radius:3px 32px 3px 3px}
  .immersive .city-masthead {font-size:15px;letter-spacing:.18em}
  .immersive .discovery-title {font-size:clamp(30px,7.5vw,48px);line-height:1.55}
  .immersive .cinematic-deck {font-size:12px}
  .immersive .hero-shortcuts {gap:12px}
  .immersive .cinematic-postcard {display:none}
  .immersive .scene-tools {bottom:22px;inset-inline-end:0;gap:5px}
  .immersive .scene-tools button {font-size:10px;padding-inline:12px}
  .immersive .hero-scroll-note {display:none}
  .immersive .v26-home-quicklinks {grid-template-columns:repeat(2,1fr);margin-bottom:65px}
  .immersive .v26-home-quicklinks a {font-size:13px;padding:18px 15px;min-height:65px}
  .immersive .v26-home-quicklinks a:nth-child(-n+2) {border-bottom:1px solid #ffffff20}
  .immersive .v26-home-quicklinks a:nth-child(2n) {border-inline-end:0}
  .immersive .portal-home > section {margin-top:65px}
  .immersive .portal-section-title {gap:17px;padding-top:20px}
  .immersive .portal-section-title h2 {font-size:28px}
  .immersive .category-index {grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:220px;gap:13px}
  .immersive .category-tile,.immersive .category-tile:nth-child(n+6):nth-child(-n+8) {grid-column:span 1;grid-row:span 1;padding:18px 15px}
  .immersive .category-tile:first-child {grid-column:span 2;grid-row:span 1}
  .immersive .category-tile:last-child {grid-column:span 2}
  .immersive .category-tile:first-child .category-name {font-size:30px}
  .immersive .category-tile .category-name {font-size:21px}
  .immersive .category-no {top:14px;inset-inline-start:15px}
  .immersive .category-tile :is(.v25-category-caption,[data-v25-quip]) {font-size:10px}
  .immersive .category-tile .v25-quip-text {font-size:10px!important}
  .immersive .image-credit-grid {grid-template-columns:1fr}
  .immersive .guide-results,.immersive .place-grid,.immersive .v26-news-grid {grid-template-columns:1fr}
  .immersive .guide-results .media-banner img {height:220px}
  .immersive .page > .media-banner img {max-height:none;aspect-ratio:4/3;object-fit:contain}
  .immersive .route-photo-banner,.immersive .page > .route-photo-banner {margin:22px 0 30px}
  .immersive .route-photo-banner img,.immersive .page > .route-photo-banner img {height:240px;max-height:none;aspect-ratio:auto;object-fit:cover}
  .immersive .route-photo-banner figcaption {padding:11px 15px}
  .immersive .page > h1,.immersive .guide-title,.immersive .detail-title-block h1 {font-size:31px}
  .immersive .detail-layout {grid-template-columns:1fr}
  .immersive .guide-filters {padding:18px}
  .immersive .editorial-studio {padding:24px!important}
  .immersive .compare-link {inset-inline-end:12px;max-width:calc(50vw - 22px);font-size:10px;padding:11px 14px}
  .immersive .scene-motion-global {inset-inline-start:12px;max-width:calc(50vw - 22px);font-size:10px;padding:11px 13px}
  .immersive .v25-mobile-safety {background:#071624f5;border-color:#6b8b91;backdrop-filter:blur(20px)}
  .immersive .v25-mobile-safety a {min-height:52px;font-size:16px;border-radius:3px}
}
@media(max-width:380px) {.immersive .city-intro{padding:24px 18px}.immersive .category-tile .category-name{font-size:18px}.immersive .category-index{grid-auto-rows:205px}.immersive .brand-subtitle{font-size:8px}}
@media(prefers-reduced-motion:reduce) {html{scroll-behavior:auto}.immersive *{transition:none!important;animation:none!important}.immersive .category-tile:hover,.immersive .category-tile:hover img{transform:none}}
@media(forced-colors:active) {.immersive :is(.category-tile,.city-intro,.city-desk-card,.place-card,.v26-news-card){border:1px solid CanvasText;background:Canvas;color:CanvasText}.immersive .category-tile::after{background:Canvas;opacity:.8}}
@media(forced-colors:active) {.immersive .scene-motion-global,.immersive .compare-link {background:ButtonFace;color:ButtonText;border-color:ButtonText}}
@media print {.immersive .scene-motion-global,.immersive .compare-link {display:none!important}}
/* Verified in a native browser at 360px and 390px embedded viewport widths. */
.immersive .v25-mobile-safety a.v25-disaster-link {background:#213d4e;color:#fff3db;border-color:#91bdc9}
@media(max-width:760px) {.immersive #site-navigation{flex-wrap:nowrap;align-items:center;min-height:48px}}
@media(max-width:760px) {
  .immersive .compare-link {position:relative;inset:auto;display:table;max-width:none;margin:0 auto calc(var(--safety-dock-height,90px) + 24px)}
}
.immersive.safety-view .compare-link {display:none}
.immersive footer > .compare-link {position:static;display:inline-flex;align-items:center;max-width:none;margin:24px 0 0;inset:auto;box-shadow:none}
.immersive .cinematic-deck {white-space:pre-line;text-wrap:pretty}

/* Keep the dawn scenery behind readable light text on every route. */
body.immersive[data-atmosphere="dawn"] #immersive-scene {filter:brightness(.70)}

/* Keep the pause control with navigation, clear of forms and reading content. */
.immersive #site-navigation .scene-motion-global {position:static;flex:none;align-self:center;min-width:44px;min-height:44px;max-width:none;width:44px;padding:8px;margin:0;border-radius:50%;box-shadow:none;backdrop-filter:none;background:#102536}
.immersive #site-navigation .scene-motion-global[hidden] {display:none}
html[data-ui-theme] body.immersive .appearance-bar .today-jump {margin-inline-end:auto;min-height:44px;padding:8px 0;border:0;background:none;color:var(--ui-link);font:500 12px/1.6 'Noto Sans JP',sans-serif;text-decoration:underline;text-underline-offset:4px;cursor:pointer;box-shadow:none}
html[data-ui-theme] body.immersive .appearance-bar .today-jump[hidden] {display:none}
@media(max-width:760px){html[data-ui-theme] body.immersive .appearance-bar{flex-wrap:wrap}html[data-ui-theme] body.immersive .appearance-bar .today-jump:not([hidden]){flex-basis:100%;text-align:start;margin-bottom:-6px}}

/* v31: complete the dark reading surfaces in inherited route templates.
   Place after immersive.css. Every light/dark pair is declared together. */
html.immersive-root {background:#0a1628!important;color-scheme:dark}
body.immersive :is(.organization-filter,.organization-source,.join-availability,.join-policy,.join-policy.paid,.planner-entry,.planner-form,.proposal-preview,.relationship-policy,.official-actions,.community-story-body,.directory,.city-desk-panel) {
  background:rgba(12,30,46,.96);color:#edf0e8;border-color:#718791;
}
body.immersive :is(.planner-boundary,.org-unconfirmed,.desk-freshness) {
  background:#343629;color:#f4e5c8;border-color:#bca574;
}
body.immersive :is(.org-category,.org-independence,.org-disclaimer,.org-evidence-note,.ping-connection-status,.studio-number,.studio-scope,.completion-language-note,.v26-result-count,.v26-news-footnote,.desk-news-meta,.desk-publication-date,.desk-external-arrow,.desk-news-information>summary,.fineprint) {
  color:#c6d6dc;
}
body.immersive :is(.join-availability .join-status,.community-story-body>.eyebrow,.story-steps li>span) {color:#e3ca94}
body.immersive :is(.join-number,.join-text-link,.join-eyebrow,.ping-strip-name,.flow-step,.guide-gateway .eyebrow,.evergreen-guide>.eyebrow,.city-desk>.eyebrow,.editorial-section-head .eyebrow) {color:#e5c68b}
body.immersive .v26-living-header .eyebrow {color:#e5c68b}
body.immersive .category-pills a[aria-current=page] {background:#28545b;color:#fff0ce;border-color:#a3c6bb}
body.immersive :is(.organization-filter,.planner-form,.directory) :is(input,select,textarea) {
  background:#0c2131;color:#f5f0e7;border-color:#839aa5;
}
body.immersive :is(.organization-filter button,.organization-filter-button,.proposal-actions .raised-button) {
  background:#d8ba82;color:#102333;border-color:#e5ce9c;
}
body.immersive :is(.organization-filter button,.organization-filter-button,.proposal-actions .raised-button):is(:hover,:focus-visible) {
  background:#e4c993;color:#102333;border-color:#ecd9ad;
}
body.immersive .directory-card a {color:#e6cea0}
body.immersive .directory-badge {background:#23434b;color:#e3ece7}
body.immersive .featured-places .place-card {background:rgba(10,22,40,.74);color:#edf0e8}
body.immersive .desk-tab {background:#193644;color:#dfebeb;border-color:#72929a;box-shadow:none}
body.immersive .desk-tab[aria-selected=true] {background:#28545b;color:#fff0ce;border-color:#a3c6bb;box-shadow:inset 0 3px 0 #d8ba82}
body.immersive .desk-tab[aria-selected=true]::after {background:#28545b}
body.immersive .v25-disaster-info .v25-official-card {background:#142c3d;color:#e8efed;border-color:#617d88}
body.immersive :is(.v25-map-image-error-note,.v25-map-fallback) {background:#142c3d;color:#e8efed;border-color:#82999d}
body.immersive .v25-map-fallback a {color:#e6cea0}
body.immersive .v25-map-language-note {color:#c6d6dc}
body.immersive :is(.v25-map-label,.v25-map-place-card):is(:hover,:focus-visible) .v25-map-roman {color:#d0dedc}
/* Protect intrinsic controls and long translated labels on narrow viewports. */
body.immersive :is(.organization-filter,.planner-form,.directory-filters,.guide-filters) :is(input,select,button) {max-width:100%;min-width:0}
body.immersive :is(.organization-source,.join-policy,.proposal-preview,.official-actions,.directory) {min-width:0;overflow-wrap:anywhere}
@media(max-width:600px) {
  body.immersive .organization-filter-controls,body.immersive .planner-form {grid-template-columns:minmax(0,1fr)}
  body.immersive :is(.organization-filter,.planner-form,.proposal-preview,.official-actions) {padding:20px}
}
@media(forced-colors:active) {
  html.immersive-root {background:Canvas!important;color-scheme:light dark}
  body.immersive :is(.organization-filter,.organization-source,.join-availability,.join-policy,.planner-entry,.planner-form,.proposal-preview,.relationship-policy,.official-actions,.community-story-body,.directory,.city-desk-panel,.desk-tab) {background:Canvas;color:CanvasText;border-color:CanvasText}
}

/* Map controls follow the chosen reading theme; geography remains light and clear. */
.immersive .cm-map-explorer{margin:2.5rem 0;padding:clamp(16px,3vw,32px);color:var(--cm-text,#243e36);background:var(--cm-surface,#fffdf8);border:1px solid var(--cm-border,#c8d5cd);border-radius:24px;min-width:0;isolation:isolate}
.immersive .cm-map-explorer *{box-sizing:border-box}
.immersive .cm-map-explorer h2,.immersive .cm-map-explorer h3{color:var(--cm-text,#243e36);line-height:1.4;margin:0 0 .75rem}
.immersive .cm-map-explorer h2{font-size:clamp(25px,3.2vw,38px);letter-spacing:.02em}
.immersive .cm-map-explorer h3{font-size:clamp(21px,2vw,26px)}
.immersive .cm-map-explorer p{color:var(--cm-text,#243e36);line-height:1.75;margin:.6rem 0}
.immersive .cm-map-explorer .cm-map-eyebrow{font:600 11px/1.4 'Noto Sans JP',sans-serif;letter-spacing:.2em;color:var(--cm-muted,#53655c);margin:0 0 12px}
.immersive .cm-map-explorer .cm-map-lead{font-size:15px;color:var(--cm-muted,#53655c);margin:0 0 20px}
.immersive .cm-map-filters{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(0,1fr);gap:12px;margin:0;padding:0;background:none;border:0;min-width:0}
.immersive .cm-map-filters label{display:grid;gap:6px;min-width:0;font-size:12px;font-weight:600;color:var(--cm-muted,#53655c)}
.immersive .cm-map-filters input,.immersive .cm-map-filters select{width:100%;min-width:0;min-height:48px;padding:10px 13px;font:inherit;font-size:15px;background:var(--cm-surface,#fffdf8);color:var(--cm-text,#243e36);border:1px solid var(--cm-border,#9aaea2);border-radius:10px}
.immersive .cm-map-filters input::placeholder{color:var(--cm-muted,#53655c);opacity:1}
.immersive .cm-map-explorer .cm-map-status{font-size:13px;margin:15px 0;color:var(--cm-muted,#53655c);font-variant-numeric:tabular-nums}
.immersive .cm-map-workspace{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(250px,1fr);gap:22px;align-items:start;min-width:0}
.immersive .cm-map-column{min-width:0}
.immersive .cm-map-controls{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 10px}
.immersive .cm-map-explorer button{font:inherit;font-size:14px;letter-spacing:normal;text-transform:none;cursor:pointer}
.immersive .cm-map-controls button,.immersive .cm-map-pan button,.immersive .cm-map-empty button{min-height:44px;min-width:44px;padding:8px 12px;border:1px solid var(--cm-border,#9aaea2);border-radius:9px;background:var(--cm-surface-soft,#f2f6f0);color:var(--cm-text,#243e36);line-height:1.3}
.immersive .cm-map-controls button:disabled{opacity:.45;cursor:default}
.immersive .cm-map-controls [data-map-action="zoom-in"],.immersive .cm-map-controls [data-map-action="zoom-out"]{font-size:22px;padding:2px}
.immersive .cm-map-frame{height:440px;min-width:0;width:100%;position:relative;overflow:hidden;border:1px solid #bdcec3;border-radius:14px;background:#eef3e9;touch-action:none;cursor:grab;color:#274b42;direction:ltr}
.immersive .cm-map-frame.is-dragging{cursor:grabbing}
.immersive .cm-map-canvas{position:absolute;inset:0;width:100%;height:100%;max-width:none;display:block;pointer-events:none}
.immersive .cm-map-markers{position:absolute;inset:0;pointer-events:none}
.immersive .cm-map-explorer .cm-map-marker{position:absolute;display:grid;place-items:center;transform:translate(-50%,-50%);width:44px;height:44px;min-width:44px;min-height:44px;padding:0;border:2px solid #fffdf6!important;border-radius:50%;background:var(--pin-color,#245c52)!important;color:#fffdf6!important;box-shadow:0 2px 7px #18352d30;font:700 14px/1 'Noto Sans JP',sans-serif;pointer-events:auto;z-index:2;transition:box-shadow .15s,border-color .15s}
.immersive .cm-map-explorer .cm-map-marker[hidden]{display:none!important}
.immersive .cm-map-explorer .cm-map-marker:hover,.immersive .cm-map-explorer .cm-map-marker[aria-pressed="true"]{border:3px solid #e7b954!important;box-shadow:0 0 0 3px #18352d55,0 4px 9px #18352d25;z-index:3}
.immersive .cm-map-north{position:absolute;top:9px;right:10px;padding:5px 8px;border-radius:7px;background:#fffdf6;color:#24473f;font:700 13px/1.5 sans-serif;pointer-events:none}
.immersive .cm-map-scale{position:absolute;left:14px;bottom:14px;min-width:30px;padding:0 5px 4px;border-bottom:3px solid #24473f;border-left:2px solid #24473f;border-right:2px solid #24473f;background:#fffdf6d9;color:#24473f;font:600 11px/1.5 sans-serif;pointer-events:none;text-align:center}
.immersive .cm-map-pan{display:flex;gap:6px;margin:9px 0 3px}
.immersive .cm-map-pan button{font-size:19px;min-height:44px;height:44px;min-width:44px;padding:2px 8px}
.immersive .cm-map-explorer .cm-map-hint{color:var(--cm-muted,#53655c);font-size:12px;line-height:1.6;margin:8px 0}
.immersive .cm-map-attribution{font-size:11px;line-height:1.8;color:var(--cm-muted,#53655c)}
.immersive .cm-map-attribution a,.immersive .cm-map-notes a,.immersive .cm-map-source{color:var(--cm-link,#245c52);text-decoration:underline;text-underline-offset:3px}
.immersive .cm-map-selected{min-width:0;background:var(--cm-surface-soft,#f4f5ed);border:1px solid var(--cm-border,#c8d5cd);border-radius:16px;padding:20px;overflow-wrap:anywhere}
.immersive .cm-map-card-number{display:block;color:var(--cm-accent,#245c52);font:500 44px/1.2 'Noto Serif JP',serif;margin:0 0 16px}
.immersive .cm-map-explorer .cm-map-card-meta{color:var(--cm-muted,#53655c);font-size:12px;margin:0 0 8px}
.immersive .cm-map-explorer .cm-map-summary{font-size:14px;line-height:1.85}
.immersive .cm-map-explorer .cm-map-address{font-size:12px;line-height:1.6;padding:10px 0;border-top:1px solid var(--cm-border,#c8d5cd);border-bottom:1px solid var(--cm-border,#c8d5cd)}
.immersive .cm-map-explorer .cm-map-position-note{font-size:12px;color:var(--cm-muted,#53655c)}
.immersive .cm-map-explorer .cm-map-muted{font-size:12px;line-height:1.65;color:var(--cm-muted,#53655c)}
.immersive .cm-map-card-actions{display:flex;flex-wrap:wrap;gap:8px;margin:15px 0 8px}
.immersive .cm-map-card-actions a,.immersive .cm-map-full-link,.immersive .cm-map-location a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 14px;border:1px solid var(--cm-border,#8fa797);border-radius:9px;text-decoration:none;color:var(--cm-text,#243e36);background:var(--cm-surface,#fffdf8);font-size:13px;font-weight:600;line-height:1.5;text-align:center}
.immersive .cm-map-card-actions .cm-map-primary,.immersive .cm-map-location .cm-map-primary{background:var(--cm-accent,#245c52);color:var(--cm-accent-ink,#fffdf8);border-color:var(--cm-accent,#245c52)}
.immersive .cm-map-source{display:inline-flex;align-items:center;min-height:36px;font-size:11px}
.immersive .cm-map-photo{margin:0 0 16px;overflow:hidden;border-radius:10px;background:var(--cm-surface,#fffdf8)}
.immersive .cm-map-photo img{display:block;width:100%;height:170px;object-fit:cover}
.immersive .cm-map-photo figcaption{display:block;padding:6px 8px;font-size:10px;line-height:1.5;color:var(--cm-muted,#53655c);background:var(--cm-surface,#fffdf8)}
.immersive .cm-map-photo figcaption a{color:var(--cm-link,#245c52)}
.immersive .cm-map-results-section{margin-top:28px}
.immersive .cm-map-list-more{display:block;min-height:48px;margin:24px auto 0;padding:12px 24px;border:1px solid var(--cm-border,#9aaea2);border-radius:9px;background:var(--cm-surface-soft,#f2f6f0);color:var(--cm-text,#243e36);line-height:1.5}
.immersive .cm-map-results{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.immersive .cm-map-result{min-width:0;border:1px solid var(--cm-border,#c8d5cd);border-radius:12px;background:var(--cm-surface,#fffdf8);overflow:hidden}
.immersive .cm-map-result-button{display:flex;align-items:center;gap:10px;min-height:76px;width:100%;padding:13px;text-align:start;border:0;border-radius:10px;background:transparent;color:var(--cm-text,#243e36)}
.immersive .cm-map-result-button[aria-pressed="true"]{box-shadow:inset 0 0 0 2px var(--cm-accent,#245c52);background:var(--cm-hover,#edf4ed)}
.immersive .cm-map-result-number{display:grid;place-items:center;flex:0 0 30px;height:30px;border:1px solid var(--cm-border,#9baea2);border-radius:50%;font-size:12px;font-weight:600;color:var(--cm-accent,#245c52)}
.immersive .cm-map-result-body{display:grid;gap:5px;min-width:0}
.immersive .cm-map-result-body strong{font-size:13px;line-height:1.55;font-weight:600;overflow-wrap:anywhere;color:var(--cm-text,#243e36)}
.immersive .cm-map-result-meta,.immersive .cm-map-result-note{font-size:11px;line-height:1.45;color:var(--cm-muted,#53655c)}
.immersive .cm-map-result-note{display:block;padding:0 13px 9px 53px}
.immersive .cm-map-explorer .cm-map-unlocated-note{font-size:12px;color:var(--cm-muted,#53655c);margin:14px 0}
.immersive .cm-map-empty{grid-column:1/-1;padding:22px;border:1px dashed var(--cm-border,#9baea2);border-radius:12px}
.immersive .cm-map-notes{margin-top:15px;border-top:1px solid var(--cm-border,#c8d5cd);padding-top:8px;font-size:12px;color:var(--cm-muted,#53655c)}
.immersive .cm-map-notes summary{display:list-item;min-height:44px;padding:12px 0;cursor:pointer;font-size:13px;color:var(--cm-text,#243e36)}
.immersive .cm-map-explorer .cm-map-notes p{font-size:12px;color:var(--cm-muted,#53655c)}
.immersive .cm-map-full-link{margin-top:16px}
.immersive .cm-map-compact .cm-map-frame{height:340px}
.immersive .cm-map-detail .cm-map-filters,.immersive .cm-map-compact .cm-map-pan,.immersive .cm-map-compact .cm-map-notes{display:none}
.immersive .cm-map-home .cm-map-filters{grid-template-columns:minmax(0,1fr);max-width:520px}
.immersive .cm-map-home .cm-map-filters label:not(:first-child){display:none}
.immersive .cm-map-home .cm-map-results{max-height:260px;overflow-y:auto;overscroll-behavior:contain}
.immersive .cm-map-results-section[hidden]{display:none!important}
.immersive .cm-map-compact .cm-map-intro h2{font-size:clamp(24px,3vw,34px)}
.immersive .cm-map-location{padding:22px;margin:20px 0;border:1px solid var(--cm-border,#c8d5cd);border-radius:16px;background:var(--cm-surface,#fffdf8);color:var(--cm-text,#243e36)}
.immersive .cm-map-location h2,.immersive .cm-map-location p{color:var(--cm-text,#243e36)}
.immersive .cm-map-explorer :is(a,button,input,select,summary,.cm-map-frame):focus-visible{outline:3px solid var(--cm-focus,#ad652f);outline-offset:3px}
.immersive .cm-map-explorer .cm-map-marker:focus-visible{outline:3px solid #57351b;outline-offset:3px}
@media(max-width:1000px){.immersive .cm-map-workspace{grid-template-columns:minmax(0,1.4fr) minmax(220px,1fr);gap:14px}.immersive .cm-map-results{grid-template-columns:repeat(2,minmax(0,1fr))}.immersive .cm-map-selected{padding:16px}}
@media(max-width:740px){.immersive .cm-map-workspace{grid-template-columns:minmax(0,1fr)}.immersive .cm-map-frame{height:410px}.immersive .cm-map-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.immersive .cm-map-filters label:first-child{grid-column:1/-1}.immersive .cm-map-selected{display:block}.immersive .cm-map-photo{max-width:100%}.immersive .cm-map-photo img{height:190px}.immersive .cm-map-explorer{margin:1.5rem 0;padding:16px;border-radius:18px}.immersive .cm-map-compact .cm-map-frame{height:330px}}
@media(max-width:420px){.immersive .cm-map-results{grid-template-columns:minmax(0,1fr)}.immersive .cm-map-controls{gap:6px}.immersive .cm-map-controls button{padding:8px 10px;font-size:12px}.immersive .cm-map-controls [data-map-action="zoom-in"],.immersive .cm-map-controls [data-map-action="zoom-out"]{font-size:22px}.immersive .cm-map-frame{height:390px}.immersive .cm-map-card-actions a{flex:1 1 auto}.immersive .cm-map-filters input,.immersive .cm-map-filters select{font-size:16px}.immersive .cm-map-explorer .cm-map-status{font-size:12px}}
@media(prefers-reduced-motion:reduce){.immersive .cm-map-explorer *{transition:none!important;scroll-behavior:auto!important}}
@media(forced-colors:active){.immersive .cm-map-explorer .cm-map-marker{forced-color-adjust:none}.immersive .cm-map-frame{forced-color-adjust:none}.immersive .cm-map-explorer :is(button,a,input,select){border:1px solid ButtonText}}

/* v36: preserve all map geometry and colour families, but make the faint
   source roads legible. Filtering only the image leaves pins and labels crisp. */
html[data-ui-theme] body.immersive .cm-map-frame {
  background:#f7faf4;color:#173e35;border:1px solid #8b9e93;
  opacity:1;filter:none;box-shadow:inset 0 0 0 1px #fff9;
}
html[data-ui-theme] body.immersive .cm-map-canvas {opacity:1;filter:none}
html[data-ui-theme] body.immersive .cm-map-canvas > image {
  opacity:1;filter:brightness(.60) saturate(1.38) contrast(1.12);
}
html[data-ui-theme] body.immersive .cm-map-canvas > line {stroke:#294c40;stroke-width:1.8;opacity:1}
html[data-ui-theme] body.immersive .cm-map-canvas > circle {fill:#183e31;stroke:#fff;stroke-width:1.4;opacity:1}
html[data-ui-theme] body.immersive .cm-map-explorer .cm-map-marker {
  opacity:1;filter:none;border:2px solid #fff!important;box-shadow:0 0 0 1px #18352d65,0 2px 5px #153e3a35;
  color:#fff!important;font-weight:700;font-size:15px;text-shadow:0 1px 1px #0005;
}
html[data-ui-theme] body.immersive .cm-map-explorer .cm-map-marker:is(:hover,[aria-pressed="true"]) {
  border:3px solid #ffde77!important;box-shadow:0 0 0 3px #1c4939,0 4px 9px #18352d38;
}
html[data-ui-theme] body.immersive .cm-map-north,
html[data-ui-theme] body.immersive .cm-map-scale {background:#fffffff0;color:#193f32;border-color:#193f32;opacity:1}
html[data-ui-theme] body.immersive .cm-map-north {border:1px solid #a2b2a7}
html[data-ui-theme] body.immersive .cm-map-result-body strong {font-size:14px;font-weight:600}
html[data-ui-theme] body.immersive .cm-map-result-meta,
html[data-ui-theme] body.immersive .cm-map-result-note {font-size:12px}
@media(forced-colors:active) {
  html[data-ui-theme] body.immersive .cm-map-frame {forced-color-adjust:none}
}

.immersive .cm-today{margin:clamp(1.5rem,3vw,2.5rem) 0;color:var(--cm-text,#f3f2e9);font-family:inherit;scroll-margin-top:1.5rem}
.immersive .cm-today-heading{display:flex;justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1.15rem}
.immersive .cm-today-heading h2{margin:.35rem 0 0;font-size:clamp(1.35rem,2.5vw,2rem);line-height:1.5;color:var(--cm-text,#f3f2e9)}
.immersive .cm-today-strap{margin:0;font-size:.68rem;letter-spacing:.2em;color:var(--cm-accent,#e8c77d);font-weight:700}
.immersive .cm-today-date{font-size:.76rem;white-space:nowrap;color:var(--cm-muted,#c4d2d9);padding-bottom:.25rem}
.immersive .cm-today-grid{display:grid;grid-template-columns:1.07fr 1fr 1.15fr;gap:1rem;align-items:stretch}
.immersive .cm-today-panel{min-width:0;display:flex;flex-direction:column;background:var(--cm-surface,rgba(13,32,49,.93));border:1px solid var(--cm-border,rgba(220,232,240,.18));border-radius:22px;padding:1.25rem;box-shadow:0 12px 35px rgba(0,0,0,.08);backdrop-filter:blur(20px);color:var(--cm-text,#f3f2e9)}
.immersive .cm-today-panel h3{font-family:inherit;font-size:1.05rem;line-height:1.6;font-weight:700;margin:0;color:var(--cm-text,#f3f2e9)}
.immersive .cm-today-panel-heading{display:flex;justify-content:space-between;align-items:center;gap:.65rem}
.immersive .cm-today button.cm-weather-refresh{padding:.4rem .6rem;min-height:44px;min-width:44px;font-size:.72rem;font-family:inherit;background:transparent;border:1px solid var(--cm-border,rgba(220,232,240,.25));border-radius:999px;color:var(--cm-text,#f3f2e9);cursor:pointer;white-space:nowrap}
.immersive .cm-today button.cm-weather-refresh:hover{background:color-mix(in srgb,var(--cm-accent,#e8c77d) 12%,transparent)}
.immersive .cm-today button.cm-weather-refresh:disabled{opacity:.65;cursor:wait}
.immersive .cm-today :is(a,button):focus-visible{outline:3px solid var(--cm-accent,#e8c77d);outline-offset:4px}
.immersive .cm-today-place{font-size:.76rem;margin:.25rem 0 .75rem;color:var(--cm-muted,#c4d2d9)}
.immersive .cm-weather-current{display:flex;align-items:center;gap:.7rem;margin:.25rem 0 1.2rem}
.immersive .cm-weather-icon{width:32px;height:32px;display:block;color:var(--cm-accent,#e8c77d);flex-shrink:0}
.immersive .cm-weather-current>.cm-weather-icon{width:42px;height:42px}
.immersive .cm-weather-temperature{font-size:2.45rem;line-height:1;letter-spacing:-.075em;font-weight:500;font-variant-numeric:tabular-nums;color:var(--cm-text,#f3f2e9)}
.immersive .cm-weather-current-copy{display:grid;gap:.3rem;font-size:.72rem;color:var(--cm-muted,#c4d2d9)}
.immersive .cm-weather-current-copy b{font-weight:500;font-size:.82rem;color:var(--cm-text,#f3f2e9)}
.immersive .cm-weather-days{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem .25rem}
.immersive .cm-weather-day{min-width:0;display:flex;align-items:center;flex-direction:column;gap:.25rem;padding:.7rem .1rem;border-radius:10px;background:color-mix(in srgb,var(--cm-text,#fff) 4%,transparent);text-align:center}
.immersive .cm-weather-day-date{display:grid;gap:.16rem;font-size:.74rem;line-height:1.3;color:var(--cm-text,#f3f2e9);font-weight:600}
.immersive .cm-weather-calendar{font-size:.7rem;font-weight:400;color:var(--cm-muted,#c4d2d9)}
.immersive .cm-weather-day .cm-weather-icon{margin:.25rem 0;width:27px;height:27px}
.immersive .cm-weather-condition{font-size:.7rem;line-height:1.4;min-height:1.4em;color:var(--cm-muted,#c4d2d9);overflow-wrap:anywhere}
.immersive .cm-weather-range{display:flex;gap:.35rem;font-size:.83rem;font-variant-numeric:tabular-nums;color:var(--cm-text,#f3f2e9)}
.immersive .cm-weather-range span{color:var(--cm-muted,#c4d2d9)}
.immersive .cm-weather-rain{font-size:.7rem;line-height:1.5;color:var(--cm-muted,#c4d2d9);font-variant-numeric:tabular-nums}
.immersive :is(.cm-weather-observed,.cm-weather-status){font-size:.72rem;line-height:1.7;margin:.7rem 0 0;color:var(--cm-muted,#c4d2d9)}
.immersive .cm-weather-status:empty{display:none}
.immersive .cm-weather-attention{padding:.6rem .7rem;border:1px solid var(--cm-border,rgba(220,232,240,.18));border-radius:9px}
.immersive .cm-weather-empty{padding:1.5rem 0;line-height:1.8;color:var(--cm-text,#f3f2e9)}
.immersive .cm-today-headlines{margin-top:.9rem}
.immersive .cm-today-headline{background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:1rem 0!important;margin:0!important}
.immersive .cm-today-headline:first-child{padding-top:0!important}
.immersive .cm-today-headline+.cm-today-headline{border-top:1px solid var(--cm-border,rgba(220,232,240,.18))!important}
.immersive .cm-today-meta{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.25rem .75rem;font-size:.71rem;line-height:1.4;margin:0 0 .4rem;color:var(--cm-muted,#c4d2d9)}
.immersive .cm-today-meta span{letter-spacing:.07em;color:var(--cm-accent,#e8c77d)}
.immersive .cm-today :is(.cm-today-headline,.cm-today-event) h4{margin:0;font-family:inherit;font-size:.88rem;line-height:1.75;color:var(--cm-text,#f3f2e9)}
.immersive .cm-today a.cm-today-story-link{color:var(--cm-text,#f3f2e9);text-decoration:none;font-weight:600}
.immersive .cm-today a.cm-today-story-link:hover{text-decoration:underline;text-underline-offset:.2em}
.immersive .cm-today-story-summary{font-size:.74rem;line-height:1.85;margin:.3rem 0 0;color:var(--cm-muted,#c4d2d9)}
.immersive .cm-today-panel-footer{margin-top:auto;padding-top:1rem;display:flex;align-items:flex-start;flex-direction:column;gap:.45rem}
.immersive .cm-today-note{font-size:.72rem;line-height:1.75;margin:0;color:var(--cm-muted,#c4d2d9)}
.immersive .cm-today a.cm-today-link{font-size:.75rem;line-height:1.7;color:var(--cm-accent,#e8c77d);text-decoration:none;display:inline-flex;align-items:center;min-height:34px}
.immersive .cm-today a.cm-today-source{font-size:.7rem;line-height:1.8;color:var(--cm-muted,#c4d2d9);text-decoration:underline;text-underline-offset:3px}
.immersive .cm-today-event-list{margin-top:.2rem}
.immersive .cm-today-event{display:grid;grid-template-columns:38px minmax(0,1fr);gap:.65rem;background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:.8rem 0!important;margin:0!important}
.immersive .cm-today-event+.cm-today-event{border-top:1px solid var(--cm-border,rgba(220,232,240,.18))!important}
.immersive .cm-today-event-date{display:flex;flex-direction:column;align-items:center;gap:.15rem;padding-top:.25rem;color:var(--cm-accent,#e8c77d)}
.immersive .cm-today-event-date strong{font-size:1.65rem;line-height:1;letter-spacing:-.04em;font-weight:400;font-variant-numeric:tabular-nums}
.immersive .cm-today-event-date span{font-size:.7rem}
.immersive .cm-today-event-info{min-width:0}
.immersive :is(.cm-today-event-time,.cm-today-venue,.cm-today-event-note){font-size:.72rem;line-height:1.6;margin:.2rem 0;color:var(--cm-muted,#c4d2d9);overflow-wrap:anywhere}
.immersive .cm-today-event-actions{display:flex;flex-wrap:wrap;gap:0 1rem}
.immersive .cm-today-event-actions a.cm-today-link{font-size:.73rem}
.immersive .cm-today-empty{font-size:.82rem;line-height:1.9;color:var(--cm-muted,#c4d2d9)}
@media(min-width:760px) and (max-width:1120px){.immersive .cm-today-grid{grid-template-columns:1fr 1fr}.immersive .cm-today-weather{grid-column:1/-1}.immersive .cm-weather-days{grid-template-columns:repeat(8,minmax(0,1fr))}.immersive .cm-weather-current{margin:.3rem 0 1rem}.immersive .cm-today-weather .cm-today-panel-footer{display:grid;grid-template-columns:1fr auto;align-items:center}.immersive .cm-today-weather .cm-today-note{grid-column:1/-1}}
@media(max-width:759px){.immersive .cm-today-grid{grid-template-columns:1fr;gap:.85rem}.immersive .cm-today-heading{align-items:flex-start;flex-direction:column;gap:.45rem}.immersive .cm-today-panel{padding:1.1rem;border-radius:18px}.immersive .cm-weather-days{gap:.65rem .4rem}.immersive .cm-weather-day{padding:.7rem .3rem}.immersive .cm-weather-condition{font-size:.7rem}.immersive .cm-weather-rain{font-size:.65rem}.immersive .cm-today-note{font-size:.71rem}.immersive .cm-today-event-actions a.cm-today-link{min-height:44px;font-size:.76rem}.immersive .cm-today-meta{font-size:.71rem}.immersive .cm-today-story-summary{font-size:.8rem}.immersive .cm-today :is(.cm-today-headline,.cm-today-event) h4{font-size:.95rem}.immersive .cm-today-event-time,.immersive .cm-today-venue{font-size:.74rem}.immersive .cm-today-panel-footer a.cm-today-link{min-height:44px}}
@media(prefers-reduced-transparency:reduce){.immersive .cm-today-panel{backdrop-filter:none;background:var(--cm-bg,#0a1628)}}
@media(forced-colors:active){.immersive .cm-today-panel{background:Canvas;color:CanvasText;border:1px solid CanvasText}.immersive .cm-today :is(a,button){forced-color-adjust:auto}.immersive .cm-weather-icon{color:CanvasText}}

.immersive .cm-completion{color:var(--ui-ink,#f2eee5);background:var(--ui-surface,#102b40);border:1px solid var(--ui-line,#446075);border-radius:18px;padding:clamp(18px,3vw,30px);margin:24px 0;min-width:0;overflow-wrap:anywhere}
.immersive .cm-completion h2{color:inherit!important;font-size:clamp(20px,2.3vw,28px);margin:0 0 18px;line-height:1.5}
.immersive .cm-completion h3{color:inherit!important;font-size:18px;line-height:1.5;margin:0 0 12px}
.immersive .cm-completion p,.immersive .cm-completion li{color:inherit;line-height:1.85}
.immersive .cm-completion p{margin:10px 0}
.immersive .cm-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px;min-width:0}
.immersive .cm-completion .cm-action,.immersive .cm-extra-index{display:inline-flex;justify-content:center;align-items:center;min-height:44px;min-width:0;max-width:100%;padding:10px 15px;border:1px solid var(--ui-line,#446075);border-radius:12px;background:var(--ui-surface-soft,#19384d);color:var(--ui-ink,#f2eee5)!important;text-decoration:none;font:inherit;font-weight:600;line-height:1.5;text-align:start;white-space:normal;overflow-wrap:anywhere;cursor:pointer}
.immersive .cm-completion .cm-action:hover,.immersive .cm-extra-index:hover{background:var(--ui-hover,#294b60);transform:translateY(-1px)}
.immersive .cm-completion .cm-action:focus-visible,.immersive .cm-completion input:focus-visible,.immersive .cm-extra-index:focus-visible{outline:3px solid var(--ui-focus,#f4d387);outline-offset:3px}
.immersive .cm-completion .cm-small,.immersive .cm-completion .cm-status{color:var(--ui-muted,#c8c7c4);font-size:14px;margin-bottom:0}
.immersive .cm-status:empty{display:none}
.immersive .cm-option-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.immersive .cm-option{border-inline-start:2px solid var(--ui-accent,#e2be6a);padding-inline-start:18px;min-width:0}
.immersive .cm-option .cm-actions{display:flex;flex-direction:column;align-items:flex-start}
.immersive .cm-option p{font-size:15px}
.immersive .cm-practical-steps{padding-inline-start:1.5em;margin:12px 0 22px}
.immersive .cm-practical-steps li+li{margin-top:14px}
.immersive .cm-destination-text{background:var(--ui-surface-soft,#19384d);border-radius:12px;padding:18px;user-select:text;overflow-wrap:anywhere;line-height:1.65}
.immersive .cm-destination-text strong{display:block;font-size:18px}
.immersive .cm-destination.is-presenting .cm-destination-text{font-size:clamp(22px,3.5vw,34px);padding:clamp(20px,4vw,40px)}
.immersive .cm-destination.is-presenting .cm-destination-text strong{font-size:inherit}
.immersive .cm-search-form>label{display:block;margin-bottom:8px;font-weight:600}
.immersive .cm-search-controls{display:flex;gap:10px;align-items:stretch}
.immersive .cm-search-controls input{flex:1 1 240px;min-width:0;width:100%;min-height:46px;background:var(--ui-surface-soft,#19384d);color:var(--ui-ink,#f2eee5);border:1px solid var(--ui-line,#446075);border-radius:10px;padding:11px 13px;font:inherit}
.immersive .cm-search-controls input::placeholder{color:var(--ui-muted,#c8c7c4);opacity:1}
.immersive .v26-living-topic[hidden],.immersive .v26-living-group[hidden],.immersive .cm-search-empty[hidden]{display:none!important}
.immersive .cm-extra-topic .cm-actions{padding-top:5px;padding-bottom:5px}
.immersive .cm-extra-topic .cm-action{display:inline-flex;align-items:center;min-height:44px;padding:10px 14px;border:1px solid var(--ui-line,#446075);border-radius:10px;color:var(--ui-ink,#f2eee5);background:var(--ui-surface-soft,#19384d);text-decoration:none;font-weight:600;white-space:normal}
.immersive .cm-extra-topic .cm-action:hover{background:var(--ui-hover,#294b60)}
.immersive .cm-proposal-brief{padding:16px;margin:18px 0}
@media(max-width:850px){.immersive .cm-option-grid{grid-template-columns:1fr}.immersive .cm-option{padding:0 0 18px;border-inline-start:0;border-bottom:1px solid var(--ui-line,#446075)}.immersive .cm-option:last-child{padding-bottom:0;border-bottom:0}.immersive .cm-option .cm-actions{flex-direction:row}}
@media(max-width:460px){.immersive .cm-search-controls{flex-wrap:wrap}.immersive .cm-search-controls input{flex-basis:100%}.immersive .cm-completion .cm-action{font-size:15px;padding:10px 12px}.immersive .cm-completion{padding:18px;margin:20px 0}.immersive .cm-actions{gap:8px}}
@media(prefers-reduced-motion:reduce){.immersive .cm-completion .cm-action:hover,.immersive .cm-extra-index:hover{transform:none}}
@media(forced-colors:active){.immersive .cm-completion,.immersive .cm-destination-text,.immersive .cm-completion .cm-action,.immersive .cm-search-controls input,.immersive .cm-extra-topic .cm-action{background:Canvas;color:CanvasText!important;border-color:CanvasText}.immersive .cm-option{border-color:CanvasText}}

/* Appearance tokens. Keep this sheet after inherited templates and visibility.css. */
html[data-ui-theme] {
  --ui-bg:#0a1628;--ui-surface:#102637;--ui-surface-soft:#193544;
  --ui-surface-glass:rgba(12,30,46,.94);--ui-ink:#f2f0e8;--ui-muted:#c1d1d5;
  --ui-line:#667f87;--ui-accent:#d8ba82;--ui-accent-ink:#102333;
  --ui-link:#efd49f;--ui-gold:#e2c68e;--ui-hover:#21444e;--ui-focus:#ffcf71;
  --ui-warning-bg:#343629;--ui-warning-ink:#f4e5c8;
  --ui-danger-bg:#602a31;--ui-danger-ink:#fff3ed;--ui-shadow:0 12px 40px #00000020;
  --ui-scene-opacity:1;--ui-header:rgba(10,22,40,.86);--ui-reading:rgba(10,22,40,.92);
  --ui-hero:rgba(10,22,40,.78);--ui-ticker:#06101d;--ui-ticker-ink:#f3eee2;
  --cm-bg:var(--ui-bg);--cm-surface:var(--ui-surface);--cm-text:var(--ui-ink);
  --cm-muted:var(--ui-muted);--cm-border:var(--ui-line);--cm-accent:var(--ui-accent);
  --cm-surface-soft:var(--ui-surface-soft);--cm-accent-ink:var(--ui-accent-ink);
  --cm-link:var(--ui-link);--cm-hover:var(--ui-hover);--cm-focus:var(--ui-focus);
  background:var(--ui-bg)!important;color-scheme:dark;
}
html[data-ui-theme="white"] {
  --ui-bg:#faf9f5;--ui-surface:#fffefa;--ui-surface-soft:#eef2eb;
  --ui-surface-glass:rgba(255,254,250,.96);--ui-ink:#203a35;--ui-muted:#56655b;
  --ui-line:#adbeb1;--ui-accent:#1d6157;--ui-accent-ink:#ffffff;
  --ui-link:#1b6056;--ui-gold:#80601e;--ui-hover:#e4eee6;--ui-focus:#a04920;
  --ui-warning-bg:#f8efd9;--ui-warning-ink:#685018;
  --ui-danger-bg:#fae9e4;--ui-danger-ink:#8b342c;--ui-shadow:0 12px 36px #2a463012;
  --ui-header:rgba(255,254,250,.94);--ui-reading:rgba(255,254,250,.96);
  --ui-hero:rgba(255,254,250,.93);--ui-ticker:#e9eee6;--ui-ticker-ink:#243e35;
  color-scheme:light;
}
html[data-ui-theme="day"] {
  --ui-bg:#f3dfb9;--ui-surface:#fff9ed;--ui-surface-soft:#f0dfbe;
  --ui-surface-glass:rgba(255,247,230,.84);--ui-control-glass:rgba(255,247,230,.86);
  --ui-ink:#372c22;--ui-muted:#685642;--ui-line:#bfa77a;
  --ui-accent:#9a491e;--ui-accent-ink:#fffaf0;--ui-link:#843b18;
  --ui-gold:#85611c;--ui-hover:#edcf94;--ui-focus:#823712;
  --ui-warning-bg:#f5e3b6;--ui-warning-ink:#654615;
  --ui-danger-bg:#f8e3d9;--ui-danger-ink:#882f22;--ui-shadow:0 14px 44px #6c451b18;
  --ui-header:rgba(255,247,228,.82);--ui-reading:rgba(255,247,230,.86);
  --ui-hero:rgba(255,247,230,.72);--ui-ticker:#f1dfbc;--ui-ticker-ink:#473322;
  color-scheme:light;
}
html[data-ui-theme="warm"] {
  --ui-bg:#f5ecda;--ui-surface:#fff7e8;--ui-surface-soft:#efe0c5;
  --ui-surface-glass:rgba(255,247,232,.97);--ui-ink:#3e3426;--ui-muted:#685a46;
  --ui-line:#baaa8d;--ui-accent:#745135;--ui-accent-ink:#fff8e9;
  --ui-link:#73502d;--ui-gold:#785119;--ui-hover:#ead9ba;--ui-focus:#96441f;
  --ui-warning-bg:#eee0bd;--ui-warning-ink:#614716;
  --ui-danger-bg:#f8e4d6;--ui-danger-ink:#8c3828;--ui-shadow:0 12px 36px #68432016;
  --ui-header:rgba(255,247,232,.96);--ui-reading:rgba(255,247,232,.97);
  --ui-hero:rgba(255,247,232,.95);--ui-ticker:#e9d9ba;--ui-ticker-ink:#4c3e2b;
  color-scheme:light;
}
html[data-ui-theme] body.immersive {
  background:transparent;color:var(--ui-ink);--white:var(--ui-ink);--gold:var(--ui-gold);
  --glass:var(--ui-surface-glass);--c-paper:var(--ui-bg);--c-ink:var(--ui-ink);
  --ink:var(--ui-ink);--paper:var(--ui-surface);--muted:var(--ui-muted);--line:var(--ui-line);
  --v25-paper-surface:var(--ui-surface-glass);--c-night:var(--ui-ink);--c-temple:var(--ui-gold);
  --c-forest:var(--ui-link);--c-teak:var(--ui-muted);--c-sky:var(--ui-link);--blue:var(--ui-link);
}
html[data-ui-theme] body.immersive #immersive-scene {opacity:var(--ui-scene-opacity);filter:none}
html[data-ui-theme] body.immersive :is(h1,h2,h3,h4,h5,h6) {color:var(--ui-ink)}
html[data-ui-theme] body.immersive ::selection {background:var(--ui-accent);color:var(--ui-accent-ink)}
html[data-ui-theme] body.immersive :is(a,button,input,select,textarea,summary):focus-visible {outline-color:var(--ui-focus)!important}
html[data-ui-theme] body.immersive > header {background:var(--ui-header);border-color:var(--ui-line)}
html[data-ui-theme] body.immersive :is(.mark,.mark span,.brand-title) {color:var(--ui-ink)!important}
html[data-ui-theme] body.immersive .mark {border-color:var(--ui-gold)}
html[data-ui-theme] body.immersive .brand-subtitle {color:var(--ui-muted)}
html[data-ui-theme] body.immersive .language-select-control label::after {color:var(--ui-gold)}
html[data-ui-theme] body.immersive .language-select-control select {background:var(--ui-surface);color:var(--ui-ink);border-color:var(--ui-line)}
html[data-ui-theme] body.immersive #site-navigation {background:var(--ui-header);border-color:var(--ui-line)}
html[data-ui-theme] body.immersive #site-navigation a {color:var(--ui-muted)}
html[data-ui-theme] body.immersive #site-navigation a[aria-current="page"] {color:var(--ui-link)}
html[data-ui-theme] body.immersive #site-navigation a::after {background:var(--ui-accent)}
html[data-ui-theme] body.immersive #site-navigation .scene-motion-global {background:var(--ui-surface);color:var(--ui-ink);border-color:var(--ui-line)}
/* A visible control strip, never a floating obstruction over a form or map. */
html[data-ui-theme] body.immersive .appearance-bar {
  position:relative;z-index:3;display:flex;justify-content:flex-end;align-items:center;
  gap:12px;min-height:60px;padding:7px 5vw;border-bottom:1px solid var(--ui-line);
  background:var(--ui-header);color:var(--ui-muted);backdrop-filter:blur(16px);
}
html[data-ui-theme] body.immersive .appearance-label {font-size:11px;letter-spacing:.1em;white-space:nowrap}
html[data-ui-theme] body.immersive .appearance-choices {display:flex;gap:5px;flex-wrap:nowrap}
html[data-ui-theme] body.immersive .appearance-choice {
  display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;min-width:68px;
  padding:8px 13px;border:1px solid transparent;border-radius:24px;background:transparent;color:var(--ui-muted);
  font:500 12px/1.5 'Noto Sans JP',system-ui,sans-serif;cursor:pointer;box-shadow:none;
}
html[data-ui-theme] body.immersive .appearance-choice:hover {background:var(--ui-hover);color:var(--ui-ink)}
html[data-ui-theme] body.immersive .appearance-choice[aria-pressed="true"] {
  background:var(--ui-surface);border-color:var(--ui-accent);color:var(--ui-ink);box-shadow:0 2px 8px #00000008;
}
html[data-ui-theme] body.immersive .appearance-swatch {width:13px;height:13px;flex:none;border:1px solid var(--ui-line);border-radius:50%}
html[data-ui-theme] body.immersive [data-theme-choice="night"] .appearance-swatch {background:#142d42;border-color:#6c8b9c}
html[data-ui-theme] body.immersive [data-theme-choice="white"] .appearance-swatch {background:#fffefa;border-color:#a3ab9f}
html[data-ui-theme] body.immersive [data-theme-choice="warm"] .appearance-swatch {background:#e6c58c;border-color:#9e7648}
/* Ticker keeps the compact editorial rhythm in every palette. */
html[data-ui-theme] body.immersive #ping-news-desk {background:var(--ui-ticker);color:var(--ui-ticker-ink);border-color:var(--ui-line)}
html[data-ui-theme] body.immersive #ping-news-desk :is(a,b,span,time,button) {color:var(--ui-ticker-ink)}
html[data-ui-theme] body.immersive #ping-news-desk :is(.ping-desk-brand,.ping-desk-story,.ping-headline-date) {background:transparent;color:var(--ui-ticker-ink)}
html[data-ui-theme] body.immersive #ping-news-desk .ping-motion-toggle {background:var(--ui-surface);color:var(--ui-ink);border-color:var(--ui-line)}
html[data-ui-theme] body.immersive #ping-news-desk .ping-motion-toggle:hover {background:var(--ui-hover);color:var(--ui-ink)}
/* The moving view remains visible around opaque reading surfaces. */
html[data-ui-theme] body.immersive .page {color:var(--ui-ink)}
html[data-ui-theme] body.immersive .page:not(.portal-home) {background:var(--ui-reading)}
html[data-ui-theme] body.immersive .portal-home > section {color:var(--ui-ink)}
html[data-ui-theme] body.immersive .city-intro {background:var(--ui-hero);border-color:var(--ui-line);box-shadow:var(--ui-shadow)}
html[data-ui-theme] body.immersive :is(.city-intro .eyebrow,.city-masthead,.section-number,.hero-scroll-note) {color:var(--ui-gold)}
html[data-ui-theme] body.immersive .city-masthead span {color:inherit}
html[data-ui-theme] body.immersive .cinematic-deck {color:var(--ui-muted)}
html[data-ui-theme] body.immersive .discovery-search {background:var(--ui-surface);border-color:var(--ui-line)}
html[data-ui-theme] body.immersive .discovery-search input {background:transparent;color:var(--ui-ink)}
html[data-ui-theme] body.immersive .hero-shortcuts a {color:var(--ui-link);border-color:var(--ui-line)}
html[data-ui-theme] body.immersive .cinematic-postcard {background:var(--ui-surface-glass);border-color:var(--ui-line);box-shadow:var(--ui-shadow)}
html[data-ui-theme] body.immersive .cinematic-postcard figcaption {background:transparent;color:var(--ui-ink)}
html[data-ui-theme] body.immersive .cinematic-postcard .v25-photo-credit {color:var(--ui-muted)}
html[data-ui-theme] body.immersive .scene-tools button {background:var(--ui-surface-glass);color:var(--ui-ink);border-color:var(--ui-line)}
html[data-ui-theme] body.immersive .scene-tools button[aria-pressed="true"] {background:var(--ui-hover);color:var(--ui-link);border-color:var(--ui-accent)}
html[data-ui-theme] body.immersive :is(.v26-home-quicklinks,.portal-section-title) {background:var(--ui-surface-glass);border-color:var(--ui-line)}
html[data-ui-theme] body.immersive .portal-section-title {background:var(--ui-reading);padding:24px;border-radius:3px}
html[data-ui-theme] body.immersive .v26-home-quicklinks a {color:var(--ui-ink);border-color:var(--ui-line)}
html[data-ui-theme] body.immersive .v26-home-quicklinks a::after {color:var(--ui-link)}
html[data-ui-theme] body.immersive .v26-home-quicklinks a:hover {background:var(--ui-hover);color:var(--ui-ink)}
/* Photograph tiles deliberately retain their own dark gradient and light captions. */
html[data-ui-theme] body.immersive .category-tile {background:#142838;color:#fff2da;border-color:#ffffff55}
html[data-ui-theme] body.immersive .category-tile .category-name {color:#fff2da}
html[data-ui-theme] body.immersive .category-tile :is(.v25-category-caption,[data-v25-quip],.v25-quip-text) {color:#eff3ee}
html[data-ui-theme] body.immersive .category-tile .category-no {background:#07152299;color:#fff2da;border-color:#ffffff70}
html[data-ui-theme] body.immersive .category-tile:is(:hover,:focus-within) {background:#142838;color:#fff2da;border-color:#e2bb71}
/* Reusable story, directory, venue and information surfaces. */
html[data-ui-theme] body.immersive :is(
  .city-desk-card,.v26-news-card,.place-card,.organization-preview article,.organization-card,.legacy-search-card,.v25-video-card,
  .guide-card,.directory-card,.reference-card,.restaurant-card,.join-option,
  .guide-filters,.directory-filters,.v26-news-filter,.guide-gateway,.detail-facts,.guide-policy,.source-disclosure,.guide-reporting,
  .join-support,.join-policies,.v26-living-topic,.v26-map,.editorial-studio,.organization-detail,.restaurant-detail-body,.restaurant-facts,.v25-map,.v26-ask-index,
  .organization-filter,.organization-source,.join-availability,.join-policy,.join-policy.paid,.planner-entry,.planner-form,.proposal-preview,
  .relationship-policy,.official-actions,.community-story-body,.directory,.city-desk-panel,.workspace,.request-pane,
  .emergency-contact-card,.emergency-disaster-reference,.v25-official-section,.v25-official-card,.v25-official-phone,
  .image-credit-grid,.detail-body,.join-editorial,.join-flow,.guide-empty,.v26-empty,.directory-empty
) {background:var(--ui-surface-glass);color:var(--ui-ink);border-color:var(--ui-line);box-shadow:var(--ui-shadow)}
html[data-ui-theme] body.immersive .featured-places .place-card {background:var(--ui-surface-glass);color:var(--ui-ink)}
html[data-ui-theme] body.immersive :is(.place-card,.guide-card,.directory-card,.reference-card,.restaurant-card,.legacy-search-card,.v26-news-card,.city-desk-card,.organization-card,.organization-preview article,.v25-video-card,.join-option):is(:hover,:focus-within) {
  background:var(--ui-hover)!important;color:var(--ui-ink);border-color:var(--ui-accent);
}
html[data-ui-theme] body.immersive :is(.city-desk-card,.v26-news-card,.place-card,.organization-preview article,.v26-living-topic,.editorial-studio) :is(p,time,small,li,.eyebrow,.card-kicker,.card-index) {color:var(--ui-muted)}
html[data-ui-theme] body.immersive :is(.place-card,.v26-news-card) .place-card-link {background:transparent;color:var(--ui-ink)}
html[data-ui-theme] body.immersive :is(.place-card-meta,.guide-intro,.guide-scope,.guide-truth,.detail-lead,.detail-area,.v26-news-intro,.v26-news-date,.portal-trust,.directory-intro,.v26-map-note,.v26-living-intro,
  .org-category,.org-independence,.org-disclaimer,.org-evidence-note,.ping-connection-status,.studio-number,.studio-scope,.completion-language-note,.v26-result-count,.v26-news-footnote,
  .desk-news-meta,.desk-publication-date,.desk-external-arrow,.desk-news-information>summary,.fineprint,.verified-facts,.v26-living-group-intro,
  .emergency-checked,.emergency-domestic,.emergency-small,.v25-official-checked,.v25-official-small,.v25-consulate-type,
  .guide-reporting .guide-no-byline,.v25-map-language-note,.image-credit-drawer,.portal-translation,.translation-note) {color:var(--ui-muted);border-color:var(--ui-line)}
html[data-ui-theme] body.immersive :is(.join-number,.join-text-link,.join-eyebrow,.ping-strip-name,.flow-step,.guide-gateway .eyebrow,.evergreen-guide>.eyebrow,.city-desk>.eyebrow,.editorial-section-head .eyebrow,.v26-living-header .eyebrow,
  .join-availability .join-status,.community-story-body>.eyebrow,.story-steps li>span,.guide-reporting .join-status,.v26-living-first strong) {color:var(--ui-gold)}
html[data-ui-theme] body.immersive :is(.detail-facts,.restaurant-facts) :is(dt,dd) {background:transparent;color:var(--ui-ink);border-color:var(--ui-line)}
html[data-ui-theme] body.immersive :is(.image-credit-drawer summary,.v26-living-topic summary) {color:var(--ui-ink)}
html[data-ui-theme] body.immersive :is(.guide-more a,.category-pills a,.back-link,.v26-news-actions a,.completion-link,.directory-card a,.image-credit-grid a,.emergency-source,.v25-official-source-link,.everyday-links a,.desk-news-link) {color:var(--ui-link);border-color:var(--ui-line)}
html[data-ui-theme] body.immersive :is(.hero-shortcuts a,.everyday-links a,.desk-news-link):is(:hover,:focus-visible) {color:var(--ui-link);text-decoration-color:currentColor}
html[data-ui-theme] body.immersive :is(.guide-source-tag,.join-status,.v26-story-tag,.v26-news-category,.directory-chip,.status,.record-status,.directory-badge,.reference-status) {background:var(--ui-surface-soft);color:var(--ui-ink);border-color:var(--ui-line)}
html[data-ui-theme] body.immersive :is(.v26-news-date,.v25-news-date,.v25-news-event,.v25-news-ended) {background:transparent;color:var(--ui-muted)}
html[data-ui-theme] body.immersive :is(.v26-event-date,.v26-ended,.status-candidate,.status-past,.planner-boundary,.org-unconfirmed,.desk-freshness,.emergency-boundary,.emergency-unverified,.v26-living-callout,.v26-living-first,.notice,.flow-warning,.summary) {background:var(--ui-warning-bg);color:var(--ui-warning-ink);border-color:var(--ui-gold)}
html[data-ui-theme] body.immersive .notice p {color:var(--ui-warning-ink)}
/* Image captions belong to the UI, not to the photograph's dark overlay. */
html[data-ui-theme] body.immersive :is(.media-banner,.v25-photo,.route-photo-banner,.page>.route-photo-banner) {background:var(--ui-surface-soft);border-color:var(--ui-line)}
html[data-ui-theme] body.immersive :is(.media-banner,.v25-photo,.route-photo-banner) figcaption {background:var(--ui-surface);color:var(--ui-muted);border-color:var(--ui-line)}
html[data-ui-theme] body.immersive :is(.media-banner figcaption a,.v25-photo-credit) {color:var(--ui-link)}
html[data-ui-theme] body.immersive .media-banner .illustrative-note {color:var(--ui-muted)}
html[data-ui-theme] body.immersive :is(.venue-gallery-grid .media-banner,.page>.media-banner) img {background:var(--ui-surface-soft)}
/* Every text-entry control and its native option menu use an explicit pair. */
html[data-ui-theme] body.immersive :is(input,select,textarea,option),
html[data-ui-theme] body.immersive :is(.organization-filter,.planner-form,.directory,.v25-official-search,.field) :is(input,select,textarea) {background:var(--ui-surface);color:var(--ui-ink);border-color:var(--ui-line)}
html[data-ui-theme] body.immersive input::placeholder,html[data-ui-theme] body.immersive textarea::placeholder {color:var(--ui-muted);opacity:1}
html[data-ui-theme] body.immersive :is(.raised-link,.raised-button,.guide-submit,.search-button,.category-open,.primary-link,.join-primary,.editorial-cta,.detail-official,.ping-link,.primary,.v26-map button,.v26-news-filter button,.directory-filters button,.organization-filter button,.organization-filter-button,.proposal-actions .raised-button,
  .venue-social-link,.official,.v25-official-call,.emergency-tel,.v25-consular-line) {background:var(--ui-accent);color:var(--ui-accent-ink);border-color:var(--ui-accent);box-shadow:none}
html[data-ui-theme] body.immersive :is(.raised-link,.raised-button,.guide-submit,.search-button,.category-open,.primary-link,.join-primary,.editorial-cta,.detail-official,.ping-link,.primary,.v26-map button,.v26-news-filter button,.directory-filters button,.organization-filter button,.organization-filter-button,.proposal-actions .raised-button,
  .venue-social-link,.official,.v25-official-call,.emergency-tel,.v25-consular-line):not(:disabled):is(:hover,:focus-visible) {background:var(--ui-ink);color:var(--ui-bg);border-color:var(--ui-ink)}
html[data-ui-theme] body.immersive :is(.v26-living-nav button,.v26-living-index button,.v26-living-home a,.v26-living-links a,.v26-living-related,.v25-home-safety-links a,.secondary,.scene-motion-global,.compare-link) {background:var(--ui-surface);color:var(--ui-link);border-color:var(--ui-line)}
html[data-ui-theme] body.immersive :is(.v26-living-nav button,.v26-living-index button,.v26-living-home a,.v26-living-related,.v26-living-links a,.join-text-link,.language-flag-button,.v25-map-label,.v25-map-place-card,.v25-map-compare-link,.v25-map-home-link,.scene-motion-global,.secondary):is(:hover,:focus-visible) {background:var(--ui-hover);color:var(--ui-link);border-color:var(--ui-accent)}
html[data-ui-theme] body.immersive .category-pills a[aria-current="page"],
html[data-ui-theme] body.immersive :is(.v26-map button,.directory-filters button)[aria-pressed="true"] {background:var(--ui-accent);color:var(--ui-accent-ink);border-color:var(--ui-accent)}
html[data-ui-theme] body.immersive .desk-tab {background:var(--ui-surface);color:var(--ui-ink);border-color:var(--ui-line);box-shadow:none}
html[data-ui-theme] body.immersive .desk-tab[aria-selected="true"] {background:var(--ui-accent);color:var(--ui-accent-ink);border-color:var(--ui-accent);box-shadow:none}
html[data-ui-theme] body.immersive .desk-tab[aria-selected="true"]::after {background:var(--ui-accent)}
html[data-ui-theme] body.immersive .desk-tab:not(:disabled):is(:hover,:focus-visible) {background:var(--ui-hover);color:var(--ui-ink);border-color:var(--ui-accent)}
/* Maps: keep the basemap's geographic palette; theme all surrounding controls. */
html[data-ui-theme] body.immersive .v26-map a {color:var(--ui-link)}
html[data-ui-theme] body.immersive :is(.v26-map-item,.v26-map .v26-map-note,.v26-map .v26-map-item[data-selected="true"],.v25-map-image-error-note,.v25-map-fallback,.map-label,.map-watermark,.map-selection) {background:var(--ui-surface);color:var(--ui-ink);border-color:var(--ui-line)}
html[data-ui-theme] body.immersive .v26-map .v26-map-item[data-selected="true"] {background:var(--ui-hover);border-color:var(--ui-accent)}
html[data-ui-theme] body.immersive :is(.v26-map .v26-map-attribution,.v25-map-fallback a) {color:var(--ui-link);border-color:var(--ui-line)}
html[data-ui-theme] body.immersive :is(.v25-map-label,.v25-map-place-card):is(:hover,:focus-visible) .v25-map-roman {color:var(--ui-muted)}
/* Safety never depends on scenery or a color alone. */
html[data-ui-theme] body.immersive.safety-view {background:var(--ui-bg)}
html[data-ui-theme] body.immersive.safety-view .page {background:var(--ui-surface);color:var(--ui-ink)}
html[data-ui-theme] body.immersive.safety-view #immersive-scene {opacity:.06}
html[data-ui-theme] body.immersive .v25-home-safety {background:var(--ui-surface-glass)!important;color:var(--ui-ink);border-color:var(--ui-line)!important}
html[data-ui-theme] body.immersive :is(.v25-header-safety>a,.v25-header-disaster,.v25-mobile-safety .v25-disaster-link,.v25-practice-entry) {background:var(--ui-surface);color:var(--ui-link);border-color:var(--ui-line)}
html[data-ui-theme] body.immersive :is(.v25-header-safety>a.header-emergency,.v25-mobile-safety a[href="#emergency"],.v25-phone-tile,.emergency-contact,.emergency-reference,.emergency-number-card) {background:var(--ui-danger-bg);color:var(--ui-danger-ink);border-color:var(--ui-danger-ink)}
html[data-ui-theme] body.immersive .v25-phone-tile :is(.v25-phone-number,.v25-phone-label) {color:var(--ui-danger-ink)}
html[data-ui-theme] body.immersive :is(.v25-header-safety>a.header-emergency,.v25-mobile-safety a[href="#emergency"],.v25-phone-tile):is(:hover,:focus-visible) {background:var(--ui-danger-ink);color:var(--ui-danger-bg);border-color:var(--ui-danger-ink)}
html[data-ui-theme] body.immersive .v25-phone-tile:is(:hover,:focus-visible) :is(.v25-phone-number,.v25-phone-label) {color:var(--ui-danger-bg)}
html[data-ui-theme] body.immersive :is(.v25-header-disaster,.v25-mobile-safety .v25-disaster-link,.v25-practice-entry):is(:hover,:focus-visible) {background:var(--ui-hover);color:var(--ui-link);border-color:var(--ui-accent)}
html[data-ui-theme] body.immersive :is(.v25-official,.v25-official-unverified) {background:var(--ui-surface);color:var(--ui-ink);border-color:var(--ui-line)}
html[data-ui-theme] body.immersive .v25-consulate-table tr {background:var(--ui-surface);color:var(--ui-ink);border-color:var(--ui-line)}
html[data-ui-theme] body.immersive .v25-consulate-table :is(th,td) {border-color:var(--ui-line)}
html[data-ui-theme] body.immersive .v25-consulate-table :is(thead th,tbody th) {background:var(--ui-surface-soft);color:var(--ui-ink)}
html[data-ui-theme] body.immersive .v25-consulate-table td::before {color:var(--ui-muted)}
html[data-ui-theme] body.immersive .v25-mobile-safety {background:var(--ui-header);border-color:var(--ui-line)}
html[data-ui-theme] body.immersive .reference-number {color:var(--ui-ink)}
html[data-ui-theme] body.immersive .resource-number {color:var(--ui-muted)}
html[data-ui-theme] body.immersive dialog {background:var(--ui-surface);color:var(--ui-ink);border-color:var(--ui-line)}
html[data-ui-theme] body.immersive .dialog-top {background:var(--ui-surface-soft);color:var(--ui-ink)}
html[data-ui-theme] body.immersive footer {background:var(--ui-header);color:var(--ui-muted);border-color:var(--ui-line)}
html[data-ui-theme] body.immersive footer :is(.footer-brand,a) {color:var(--ui-link)}
html[data-ui-theme] body.immersive footer .footer-word {color:var(--ui-gold)}
html[data-ui-theme] body.immersive footer small {color:var(--ui-muted)}
@media(max-width:760px) {
  html[data-ui-theme] body.immersive .appearance-bar {padding:6px 5vw;min-height:56px;justify-content:space-between;gap:8px}
  html[data-ui-theme] body.immersive .appearance-choice {min-width:64px;padding:8px 12px}
  html[data-ui-theme] body.immersive .portal-section-title {padding:18px}
}
@media(forced-colors:active) {
  html[data-ui-theme] {--ui-bg:Canvas;--ui-surface:Canvas;--ui-surface-soft:Canvas;--ui-surface-glass:Canvas;--ui-ink:CanvasText;--ui-muted:CanvasText;--ui-line:CanvasText;--ui-accent:Highlight;--ui-accent-ink:HighlightText;--ui-link:LinkText;--ui-gold:CanvasText;--ui-hover:Canvas;--ui-focus:Highlight;--ui-header:Canvas;--ui-reading:Canvas;--ui-hero:Canvas;--ui-warning-bg:Canvas;--ui-warning-ink:CanvasText;--ui-danger-bg:Canvas;--ui-danger-ink:CanvasText;--ui-ticker:Canvas;--ui-ticker-ink:CanvasText;color-scheme:light dark}
  html[data-ui-theme] body.immersive .appearance-choice {border-color:ButtonText}
  html[data-ui-theme] body.immersive .appearance-choice[aria-pressed="true"] {outline:2px solid Highlight;outline-offset:-3px}
  html[data-ui-theme] body.immersive .category-tile {background:Canvas;color:CanvasText;border-color:CanvasText}
  html[data-ui-theme] body.immersive .category-tile :is(.category-name,.v25-category-caption,[data-v25-quip],.v25-quip-text,.category-no) {background:Canvas;color:CanvasText;text-shadow:none}
}
@media print {
  html[data-ui-theme] body.immersive .appearance-bar {display:none!important}
  html[data-ui-theme] {--ui-bg:white;--ui-surface:white;--ui-surface-soft:white;--ui-surface-glass:white;--ui-ink:black;--ui-muted:#333;--ui-line:#888;--ui-link:#222;--ui-gold:#333;--ui-header:white;--ui-reading:white;--ui-hero:white}
}

/* v33: day/night stays one click; established reading palettes remain in the secondary picker. */
html[data-ui-theme] body.immersive .appearance-bar {min-height:56px;padding-block:5px;gap:10px;z-index:8}
html[data-ui-theme] body.immersive .appearance-choices {gap:2px;padding:2px;border:1px solid var(--ui-line);border-radius:28px;background:var(--ui-control-glass,var(--ui-surface-glass))}
html[data-ui-theme] body.immersive .appearance-choice {min-width:75px;gap:7px;padding:8px 14px;white-space:nowrap;transition:background .18s,color .18s,border-color .18s}
html[data-ui-theme] body.immersive .appearance-choice[aria-pressed="true"] {background:var(--ui-accent);color:var(--ui-accent-ink);border-color:var(--ui-accent)}
html[data-ui-theme] body.immersive .appearance-swatch {position:relative;width:15px;height:15px;border:0}
html[data-ui-theme] body.immersive [data-theme-choice="night"] .appearance-swatch {background:transparent;box-shadow:inset -5px -2px 0 0 currentColor;transform:rotate(-20deg)}
html[data-ui-theme] body.immersive [data-theme-choice="day"] .appearance-swatch {width:12px;height:12px;margin-inline:2px;background:currentColor;box-shadow:0 -7px 0 -5px currentColor,0 7px 0 -5px currentColor,7px 0 0 -5px currentColor,-7px 0 0 -5px currentColor,5px 5px 0 -5px currentColor,-5px -5px 0 -5px currentColor,5px -5px 0 -5px currentColor,-5px 5px 0 -5px currentColor}
html[data-ui-theme] body.immersive .appearance-more {position:relative;flex:none}
html[data-ui-theme] body.immersive .appearance-more > summary {display:flex;align-items:center;justify-content:center;gap:6px;min-height:44px;min-width:66px;padding:8px 12px;border:1px solid transparent;border-radius:24px;background:transparent;color:var(--ui-muted);font:500 12px/1.5 'Noto Sans JP',system-ui,sans-serif;list-style:none;cursor:pointer;white-space:nowrap}
html[data-ui-theme] body.immersive .appearance-more > summary::-webkit-details-marker {display:none}
html[data-ui-theme] body.immersive .appearance-more > summary::marker {content:''}
html[data-ui-theme] body.immersive .appearance-more:is([open],[data-selected="true"]) > summary,
html[data-ui-theme] body.immersive .appearance-more > summary:hover {background:var(--ui-hover);color:var(--ui-ink);border-color:var(--ui-line)}
html[data-ui-theme] body.immersive .appearance-chevron {font:16px/1 system-ui,sans-serif;transform:translateY(-2px)}
html[data-ui-theme] body.immersive .appearance-more-panel {position:absolute;right:0;top:calc(100% + 8px);display:flex;gap:4px;padding:8px;border:1px solid var(--ui-line);border-radius:16px;background:var(--ui-surface);color:var(--ui-ink);box-shadow:0 14px 38px #00000030;z-index:30}
html[data-ui-theme] body.immersive .appearance-more:not([open]) .appearance-more-panel {display:none}
@media(max-width:760px) {
  html[data-ui-theme] body.immersive .appearance-bar {justify-content:flex-end;gap:8px;min-height:56px}
  html[data-ui-theme] body.immersive .appearance-label {display:none}
  html[data-ui-theme] body.immersive .appearance-choice {min-width:72px;padding-inline:12px}
}
@media(prefers-reduced-motion:reduce) {html[data-ui-theme] body.immersive .appearance-choice {transition:none}}
@media(forced-colors:active) {html[data-ui-theme] body.immersive .appearance-more-panel {background:Canvas;border-color:CanvasText}}
/* v33 browser correction: light photographs need a reading veil, not dark text over temple detail.
   The veil is local to the hero's text side; the temple and moving light remain open on the right. */
html:is([data-ui-theme="day"],[data-ui-theme="white"],[data-ui-theme="warm"]) body.immersive.immersive-v33 {--v33-reading-tint:255,249,237}
html[data-ui-theme="white"] body.immersive.immersive-v33 {--v33-reading-tint:255,254,250}
html[data-ui-theme="warm"] body.immersive.immersive-v33 {--v33-reading-tint:255,247,232}
html:is([data-ui-theme="day"],[data-ui-theme="white"],[data-ui-theme="warm"]) body.immersive.immersive-v33 .city-hero::before {
  content:'';display:block;position:absolute;inset:-56px -5vw -16px;z-index:-1;pointer-events:none;
  background:linear-gradient(90deg,rgba(var(--v33-reading-tint),.95) 0%,rgba(var(--v33-reading-tint),.92) 29%,rgba(var(--v33-reading-tint),.82) 43%,rgba(var(--v33-reading-tint),.34) 59%,rgba(var(--v33-reading-tint),0) 76%);
}
html:is([data-ui-theme="day"],[data-ui-theme="white"],[data-ui-theme="warm"]) body.immersive.immersive-v33 .city-intro {text-shadow:none}
html:is([data-ui-theme="day"],[data-ui-theme="white"],[data-ui-theme="warm"]) body.immersive.immersive-v33 .discovery-title {text-shadow:0 2px 22px rgba(var(--v33-reading-tint),.45)}
html:is([data-ui-theme="day"],[data-ui-theme="white"],[data-ui-theme="warm"]) body.immersive.immersive-v33 .cinematic-deck {color:var(--ui-ink)}
html:is([data-ui-theme="day"],[data-ui-theme="white"],[data-ui-theme="warm"]) body.immersive.immersive-v33 .hero-shortcuts {gap:8px}
html:is([data-ui-theme="day"],[data-ui-theme="white"],[data-ui-theme="warm"]) body.immersive.immersive-v33 .hero-shortcuts a {
  padding:10px 15px;border:1px solid var(--ui-line);border-radius:24px;background:rgba(var(--v33-reading-tint),.94);color:var(--ui-link);backdrop-filter:blur(20px);text-shadow:none;
}
html:is([data-ui-theme="day"],[data-ui-theme="white"],[data-ui-theme="warm"]) body.immersive.immersive-v33 .appearance-bar .today-jump,
html:is([data-ui-theme="day"],[data-ui-theme="white"],[data-ui-theme="warm"]) body.immersive.immersive-v33 .scene-discover {
  padding:9px 15px;border:1px solid var(--ui-line);border-radius:24px;background:rgba(var(--v33-reading-tint),.94);color:var(--ui-link);backdrop-filter:blur(20px);text-shadow:none;
}
html:is([data-ui-theme="day"],[data-ui-theme="white"],[data-ui-theme="warm"]) body.immersive.immersive-v33 .appearance-label {
  padding:6px 10px;border-radius:18px;background:rgba(var(--v33-reading-tint),.92);color:var(--ui-ink);backdrop-filter:blur(20px);
}
html:is([data-ui-theme="day"],[data-ui-theme="white"],[data-ui-theme="warm"]) body.immersive.immersive-v33 .appearance-more > summary {
  border-color:var(--ui-line);background:rgba(var(--v33-reading-tint),.94);color:var(--ui-ink);backdrop-filter:blur(20px);
}
html:is([data-ui-theme="day"],[data-ui-theme="white"],[data-ui-theme="warm"]) body.immersive.immersive-v33 .scene-mood {
  align-self:flex-end;width:fit-content;max-width:100%;padding:11px 16px;border:1px solid var(--ui-line);border-radius:18px;background:rgba(var(--v33-reading-tint),.94);color:var(--ui-ink);backdrop-filter:blur(20px);text-shadow:none;
}
html:is([data-ui-theme="day"],[data-ui-theme="white"],[data-ui-theme="warm"]) body.immersive.immersive-v33 .scene-edition {
  padding:9px 7px;border-radius:12px;background:rgba(var(--v33-reading-tint),.92);color:var(--ui-ink);backdrop-filter:blur(20px);text-shadow:none;
}
@media(max-width:760px) {
  html:is([data-ui-theme="day"],[data-ui-theme="white"],[data-ui-theme="warm"]) body.immersive.immersive-v33 .city-hero::before {
    inset:-61px -5vw -10px;background:linear-gradient(180deg,rgba(var(--v33-reading-tint),.82) 0%,rgba(var(--v33-reading-tint),.76) 52%,rgba(var(--v33-reading-tint),.38) 68%,rgba(var(--v33-reading-tint),0) 88%);
  }
  html:is([data-ui-theme="day"],[data-ui-theme="white"],[data-ui-theme="warm"]) body.immersive.immersive-v33 .appearance-bar .today-jump:not([hidden]) {flex-basis:auto;margin-inline-end:auto;margin-bottom:0}
  html:is([data-ui-theme="day"],[data-ui-theme="white"],[data-ui-theme="warm"]) body.immersive.immersive-v33 .hero-shortcuts a {padding-inline:12px}
}
@media(forced-colors:active) {
  html:is([data-ui-theme="day"],[data-ui-theme="white"],[data-ui-theme="warm"]) body.immersive.immersive-v33 .city-hero::before {display:none}
}

/* Primary languages are always visible; flags are vector artwork, independent of emoji fonts. */
html[data-ui-theme] body.immersive .header-language-cluster {grid-column:auto;justify-self:end;width:auto;min-width:0;max-width:100%;margin:0}
html[data-ui-theme] body.immersive .cm-language-ready :is(.language-select-control,#language-flags) {display:none!important}
html[data-ui-theme] body.immersive .cm-languages {position:relative;display:flex;align-items:center;justify-content:flex-end;gap:7px;max-width:100%;padding:0;direction:ltr}
html[data-ui-theme] body.immersive .cm-language-primary {display:flex;align-items:center;gap:3px;padding:3px;border:1px solid var(--ui-line);border-radius:30px;background:var(--ui-control-glass,var(--ui-surface-glass));backdrop-filter:blur(20px)}
html[data-ui-theme] body.immersive :is(.cm-language-button,.cm-language-option) {display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;margin:0;padding:8px 11px;border:1px solid transparent;border-radius:24px;background:transparent;color:var(--ui-muted);font:500 12px/1.3 'Noto Sans JP',system-ui,sans-serif;white-space:nowrap;cursor:pointer;box-shadow:none;transition:background .18s,color .18s,border-color .18s,transform .18s}
html[data-ui-theme] body.immersive .cm-language-button[lang="th"] {font-family:'Noto Sans Thai','Noto Sans JP',Tahoma,sans-serif}
html[data-ui-theme] body.immersive .cm-language-flag {display:block;flex:none;width:24px;height:16px;overflow:hidden;border-radius:2px;box-shadow:0 0 0 1px #ffffff28}
html[data-ui-theme] body.immersive .cm-language-name {overflow-wrap:normal;white-space:nowrap;word-break:normal}
html[data-ui-theme] body.immersive :is(.cm-language-button,.cm-language-option):hover {background:var(--ui-hover);color:var(--ui-ink)}
html[data-ui-theme] body.immersive .cm-language-button[aria-pressed="true"] {background:var(--ui-accent);color:var(--ui-accent-ink);border-color:var(--ui-accent);box-shadow:0 2px 10px #00000014}
html[data-ui-theme] body.immersive .cm-language-more {position:relative;flex:none;max-width:130px}
html[data-ui-theme] body.immersive .cm-language-more > summary {display:flex;align-items:center;justify-content:center;gap:5px;min-width:44px;min-height:44px;padding:9px 6px;border:1px solid transparent;border-radius:22px;color:var(--ui-muted);background:transparent;font:500 11px/1.3 'Noto Sans JP',system-ui,sans-serif;list-style:none;cursor:pointer}
html[data-ui-theme] body.immersive .cm-language-more > summary::-webkit-details-marker {display:none}
html[data-ui-theme] body.immersive .cm-language-more > summary::marker {content:''}
html[data-ui-theme] body.immersive .cm-language-more-icon {font:300 21px/1 system-ui,sans-serif}
html[data-ui-theme] body.immersive .cm-language-more-name {max-width:90px;overflow-wrap:anywhere}
html[data-ui-theme] body.immersive .cm-language-more:is([open],[data-selected="true"]) > summary,
html[data-ui-theme] body.immersive .cm-language-more > summary:hover {border-color:var(--ui-line);color:var(--ui-ink);background:var(--ui-hover)}
html[data-ui-theme] body.immersive .cm-language-options {position:absolute;top:calc(100% + 10px);right:0;z-index:40;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;width:min(318px,90vw);max-height:70vh;overflow:auto;overscroll-behavior:contain;padding:12px;border:1px solid var(--ui-line);border-radius:16px;background:var(--ui-surface);color:var(--ui-ink);box-shadow:0 16px 44px #00000035}
html[data-ui-theme] body.immersive .cm-language-more:not([open]) .cm-language-options {display:none}
html[data-ui-theme] body.immersive .cm-language-option {justify-content:flex-start;text-align:start;white-space:normal;overflow-wrap:anywhere;border-radius:8px;padding:10px;font-size:13px;color:var(--ui-ink)}
html[data-ui-theme] body.immersive .cm-language-option .cm-language-name {white-space:normal;overflow-wrap:anywhere}
html[data-ui-theme] body.immersive .cm-language-option[aria-pressed="true"] {background:var(--ui-accent);color:var(--ui-accent-ink)}
html[data-ui-theme] body.immersive .cm-language-status {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:1120px) and (min-width:761px) {
  html[data-ui-theme] body.immersive > header {gap:16px}
  html[data-ui-theme] body.immersive .cm-language-button {gap:5px;padding-inline:8px}
  html[data-ui-theme] body.immersive .cm-language-more:not([data-selected="true"]) .cm-language-more-name {display:none}
}
@media(max-width:760px) {
  html[data-ui-theme] body.immersive .header-language-cluster {grid-column:1 / -1;justify-self:stretch;width:100%;max-width:100%}
  html[data-ui-theme] body.immersive .cm-languages {justify-content:flex-end;gap:6px}
  html[data-ui-theme] body.immersive .cm-language-primary {flex:0 1 auto;gap:2px}
  html[data-ui-theme] body.immersive .cm-language-button {gap:6px;padding-inline:10px}
  html[data-ui-theme] body.immersive .cm-language-more:not([data-selected="true"]) .cm-language-more-name {display:none}
  html[data-ui-theme] body.immersive .cm-language-more > summary {padding-inline:6px}
  html[data-ui-theme] body.immersive .cm-language-more[data-selected="true"] {max-width:74px}
}
@media(max-width:360px) {
  html[data-ui-theme] body.immersive .cm-language-button {font-size:11px;gap:4px;padding-inline:7px}
  html[data-ui-theme] body.immersive .cm-language-flag {width:21px;height:14px}
  html[data-ui-theme] body.immersive .cm-language-more[data-selected="true"] {max-width:58px}
}
@media(prefers-reduced-motion:reduce) {html[data-ui-theme] body.immersive :is(.cm-language-button,.cm-language-option) {transition:none;transform:none!important}}
@media(forced-colors:active) {
  html[data-ui-theme] body.immersive :is(.cm-language-primary,.cm-language-options) {border-color:CanvasText;background:Canvas}
  html[data-ui-theme] body.immersive :is(.cm-language-button,.cm-language-option)[aria-pressed="true"] {outline:2px solid Highlight;outline-offset:-3px}
}
@media print {html[data-ui-theme] body.immersive .cm-languages {display:none!important}}

/* The scene is the stage; glass contains actions and reading, not the whole view. */
html[data-ui-theme="night"] {--ui-surface-glass:rgba(10,22,40,.45);--ui-reading:rgba(10,22,40,.45);--ui-header:rgba(10,22,40,.42);--ui-hero:transparent;--ui-line:rgba(230,218,190,.24);--ui-accent:#ff9863;--ui-link:#f4cb91;--ui-gold:#d4af37;--ui-muted:#d4dfe1;--ui-hover:#183849;--ui-shadow:0 22px 70px #0003}
html[data-ui-theme] body.immersive-v33 {font-family:'Noto Sans JP',sans-serif;--scene-outline:rgba(240,211,162,.22)}
html[data-ui-theme] body.immersive-v33 :is(h1,h2,h3,h4) {font-family:'Noto Serif JP',serif;text-wrap:balance}
html[data-ui-theme] body.immersive-v33 > header {min-height:88px;padding:14px 5vw;gap:24px;backdrop-filter:blur(20px);border-bottom:1px solid var(--ui-line)}
html[data-ui-theme] body.immersive-v33 .brand-title {letter-spacing:.23em;font-size:19px}
html[data-ui-theme] body.immersive-v33 #site-navigation {gap:clamp(16px,2.1vw,34px);backdrop-filter:blur(20px);border-bottom:1px solid var(--ui-line)}
html[data-ui-theme] body.immersive-v33 #site-navigation a {font-size:12px;min-height:48px}
html[data-ui-theme] body.immersive-v33 #ping-news-desk {border-color:var(--ui-line)}
html[data-ui-theme] body.immersive-v33 .appearance-bar {min-height:54px;border-bottom:0;background:transparent;backdrop-filter:none;padding-block:4px}
html[data-ui-theme] body.immersive-v33 .portal-home {padding-inline:5vw;max-width:1600px;margin:auto}
html[data-ui-theme] body.immersive-v33 .city-hero {grid-template-columns:minmax(0,1.38fr) minmax(0,.62fr);gap:3vw;min-height:calc(100svh - 205px);padding:55px 0 105px!important;isolation:isolate}
html[data-ui-theme] body.immersive-v33 .city-intro {max-width:950px;position:relative;padding:0 0 0 1vw;border:0;border-radius:0;background:transparent;backdrop-filter:none;box-shadow:none}
html[data-ui-theme] body.immersive-v33 .city-intro .eyebrow {font-size:10px;letter-spacing:.3em;margin-bottom:18px;color:var(--ui-muted)}
html[data-ui-theme] body.immersive-v33 .city-masthead {font-size:17px;letter-spacing:.45em;margin-bottom:17px}
html[data-ui-theme] body.immersive-v33 .discovery-title {font-size:clamp(50px,6.7vw,105px);font-weight:500;line-height:1.34;letter-spacing:-.045em;margin:0 0 22px;text-shadow:0 6px 35px #0003}
html[data-ui-theme] body.immersive-v33 .cinematic-deck {font-size:13px;line-height:2.1;letter-spacing:.09em;margin-bottom:28px;max-width:37em}
html[data-ui-theme] body.immersive-v33 .discovery-search {max-width:530px;background:var(--ui-surface-glass);backdrop-filter:blur(20px);border:1px solid var(--ui-line);border-radius:40px;padding:6px 7px 6px 14px;box-shadow:0 12px 40px #0002}
html[data-ui-theme] body.immersive-v33 .search-button {border-radius:28px;min-width:75px;background:var(--ui-accent);color:var(--ui-accent-ink)}
html[data-ui-theme] body.immersive-v33 .hero-shortcuts {gap:8px 22px;max-width:560px;margin-top:16px}
html[data-ui-theme] body.immersive-v33 .hero-shortcuts a {font-size:11px;min-height:42px}
html[data-ui-theme] body.immersive-v33 .scene-panorama {position:relative;align-self:center;min-height:360px;display:flex;flex-direction:column;justify-content:flex-end;gap:18px;margin:0;color:var(--ui-ink);pointer-events:none}
html[data-ui-theme] body.immersive-v33 .scene-edition {font-size:9px;letter-spacing:.22em;align-self:flex-end;writing-mode:vertical-rl;position:absolute;right:0;top:0;color:var(--ui-muted)}
html[data-ui-theme] body.immersive-v33 .scene-orbit {width:220px;height:220px;border:1px solid var(--scene-outline);border-radius:50%;position:absolute;inset:30px auto auto 10%;box-shadow:0 0 0 23px #d4af3705}
html[data-ui-theme] body.immersive-v33 .scene-orbit::before {content:'';width:5px;height:5px;border-radius:50%;position:absolute;top:35px;right:32px;background:#ffb56d;box-shadow:0 0 22px 9px #ff6b3533}
html[data-ui-theme] body.immersive-v33 .scene-mood {font-family:'Noto Serif JP',serif;font-size:18px;letter-spacing:.08em;text-align:right;text-shadow:0 2px 18px #0008;line-height:1.8}
html[data-ui-theme] body.immersive-v33 .scene-tools {bottom:30px;align-items:center;gap:12px}
html[data-ui-theme] body.immersive-v33 .scene-photo-credit {display:inline;font-size:9px;background:var(--ui-surface-glass);backdrop-filter:blur(20px);color:var(--ui-muted);padding:8px 12px;border-radius:20px;max-width:32em}
html[data-ui-theme] body.immersive-v33 .scene-discover {position:absolute;bottom:30px;left:1vw;min-height:44px;border:0;background:transparent;color:var(--ui-link);font-size:12px;letter-spacing:.15em;display:flex;gap:20px;align-items:center;padding:0;box-shadow:none;cursor:pointer}
html[data-ui-theme] body.immersive-v33 .scene-discover::before {content:'';width:54px;height:1px;background:var(--ui-link)}
html[data-ui-theme="day"] body.immersive-v33 .city-intro {text-shadow:0 2px 24px #fff4dca8}
html[data-ui-theme="night"] body.immersive-v33 .city-intro {text-shadow:0 2px 24px #030812}
html[data-ui-theme] body.immersive-v33 .portal-home > section:not(.city-hero) {margin-block:110px 0}
html[data-ui-theme] body.immersive-v33 .portal-home > .cm-today {margin-top:32px}
html[data-ui-theme] body.immersive-v33 :is(.portal-section-title,.cm-today-heading) {background:none;border-radius:0;border:0;padding:0 0 22px;align-items:end;gap:24px}
html[data-ui-theme] body.immersive-v33 :is(.portal-section-title h2,.cm-today-heading h2,.city-desk > h2,.v26-living-home > h2,.organization-preview > h2,.cm-map > h2) {font-size:clamp(26px,3.5vw,48px);font-weight:500;letter-spacing:-.035em}
html[data-ui-theme] body.immersive-v33 .section-number {font-size:40px;opacity:.7}
html[data-ui-theme] body.immersive-v33 :is(.cm-today-panel,.cm-map,.city-desk-panel,.v26-living-topic,.guide-card,.directory-card,.place-card,.organization-card,.v26-news-card,.organization-preview article,.detail-facts,.editorial-studio) {background:var(--ui-surface-glass);backdrop-filter:blur(20px);border:1px solid var(--ui-line);box-shadow:var(--ui-shadow);border-radius:22px}
html[data-ui-theme] body.immersive-v33 :is(.place-card,.guide-card,.directory-card,.organization-card,.v26-news-card,.organization-preview article):is(:hover,:focus-within) {background:var(--ui-surface-glass)!important;border-color:var(--ui-accent);transform:translateY(-4px);box-shadow:0 18px 60px #ff6b3510}
html[data-ui-theme] body.immersive-v33 :is(.place-card,.guide-card,.directory-card,.organization-card,.v26-news-card,.organization-preview article) {transition:transform .32s ease,border-color .32s ease,box-shadow .32s ease}
html[data-ui-theme] body.immersive-v33 .cm-today-grid {grid-template-columns:1.12fr 1fr 1.15fr;gap:22px}
html[data-ui-theme] body.immersive-v33 .cm-today-panel {padding:26px;border-radius:28px}
html[data-ui-theme] body.immersive-v33 .cm-today-news {margin-top:45px}
html[data-ui-theme] body.immersive-v33 .cm-today-events {margin-top:85px}
html[data-ui-theme] body.immersive-v33 .cm-weather-temperature {font-family:'Noto Serif JP',serif;font-size:52px}
html[data-ui-theme] body.immersive-v33 .cm-today-panel h3 {font-family:'Noto Serif JP',serif;font-size:18px;font-weight:500}
html[data-ui-theme] body.immersive-v33 .cm-today-headline h4 {font-size:15px;font-family:'Noto Serif JP',serif}
html[data-ui-theme] body.immersive-v33 .cm-today-story-summary {font-size:12px;line-height:1.9}
html[data-ui-theme] body.immersive-v33 .v26-home-quicklinks {background:var(--ui-surface-glass);backdrop-filter:blur(20px);border:1px solid var(--ui-line);border-radius:20px;overflow:hidden;margin-block:70px 0}
html[data-ui-theme] body.immersive-v33 .category-index {grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:240px;gap:22px}
html[data-ui-theme] body.immersive-v33 .category-tile {grid-column:span 4;border-radius:18px;padding:27px;border-color:#ffffff26;box-shadow:0 22px 70px #0002}
html[data-ui-theme] body.immersive-v33 .category-tile:first-child {grid-column:span 7;grid-row:span 2;border-radius:100px 18px 18px 18px}
html[data-ui-theme] body.immersive-v33 .category-tile:nth-child(2),html[data-ui-theme] body.immersive-v33 .category-tile:nth-child(3) {grid-column:span 5}
html[data-ui-theme] body.immersive-v33 .category-tile:nth-child(7) {grid-column:span 7}
html[data-ui-theme] body.immersive-v33 .category-tile:nth-child(8) {grid-column:span 5}
html[data-ui-theme] body.immersive-v33 .category-tile:nth-child(n+9):nth-child(-n+12) {grid-column:span 3}
html[data-ui-theme] body.immersive-v33 .category-tile:last-child {grid-column:span 12;border-radius:18px 18px 90px 18px}
html[data-ui-theme] body.immersive-v33 .category-tile .category-name {font-size:clamp(20px,2.2vw,31px)}
html[data-ui-theme] body.immersive-v33 .category-tile:first-child .category-name {font-size:clamp(32px,4vw,57px)}
html[data-ui-theme] body.immersive-v33 .category-tile .category-no {top:23px;left:25px;font-size:12px}
html[data-ui-theme] body.immersive-v33 .category-tile:first-child .category-no {left:50px;top:32px}
html[data-ui-theme] body.immersive-v33 .city-desk {position:relative;padding:45px 0 0}
html[data-ui-theme] body.immersive-v33 .city-desk > .eyebrow {font-size:11px;letter-spacing:.3em;margin-bottom:14px}
html[data-ui-theme] body.immersive-v33 .city-desk > h2 {margin-bottom:10px}
html[data-ui-theme] body.immersive-v33 .chapter-intro {font-size:14px;color:var(--ui-muted);margin-bottom:30px}
html[data-ui-theme] body.immersive-v33 .city-desk-panel {padding:30px;border-radius:0 24px 24px 24px;background:var(--ui-surface-glass)}
html[data-ui-theme] body.immersive-v33 .city-desk .v26-news-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
html[data-ui-theme] body.immersive-v33 .city-desk .v26-news-card {padding:24px;border-radius:0;background:transparent;box-shadow:none;border:0;border-top:1px solid var(--ui-line);backdrop-filter:none}
html[data-ui-theme] body.immersive-v33 .city-desk .v26-news-card:first-child {grid-column:span 2;grid-row:span 2;padding:36px;background:linear-gradient(145deg,#e1b56512,#0a162833);border:1px solid var(--ui-line);border-radius:16px;display:flex;flex-direction:column;justify-content:center;min-height:340px}
html[data-ui-theme] body.immersive-v33 .city-desk .v26-news-card:first-child h3 {font-size:clamp(27px,3.5vw,45px);line-height:1.6}
html[data-ui-theme] body.immersive-v33 .city-desk .v26-news-card:first-child p {font-size:15px;line-height:2;max-width:33em}
html[data-ui-theme] body.immersive-v33 .featured-places .place-grid {grid-template-columns:1.2fr .8fr;gap:38px}
html[data-ui-theme] body.immersive-v33 .featured-places .place-card:nth-child(2) {margin-top:95px}
html[data-ui-theme] body.immersive-v33 .featured-places .media-banner img {height:330px}
html[data-ui-theme] body.immersive-v33 .v26-living-home {padding:50px!important;background:var(--ui-surface-glass)!important;backdrop-filter:blur(20px);border:1px solid var(--ui-line)!important;border-radius:28px 100px 28px 28px}
html[data-ui-theme] body.immersive-v33 .v26-living-home a {background:transparent;border-color:var(--ui-line);border-radius:0;box-shadow:none}
html[data-ui-theme] body.immersive-v33 .organization-preview article {border-radius:20px}
html[data-ui-theme] body.immersive-v33 .page:not(.portal-home) {background:var(--ui-reading);backdrop-filter:blur(20px);border:1px solid var(--ui-line);border-radius:28px;margin:38px auto 70px;width:90%;max-width:1320px;padding:45px 4vw 75px}
html[data-ui-theme] body.immersive-v33 .page:not(.portal-home) > h1 {font-size:clamp(30px,4.2vw,62px)}
html[data-ui-theme] body.immersive-v33 footer {background:var(--ui-surface-glass);backdrop-filter:blur(20px);border-top:1px solid var(--ui-line);margin-top:100px}
/* Keep tablet navigation in one readable row; safety actions remain in the mobile dock. */
html[data-ui-theme] body.immersive-v33 #site-navigation a {white-space:nowrap;flex:none}
html[data-ui-theme] body.immersive-v33 .brand-title {white-space:nowrap}
@media(max-width:1120px){
 html[data-ui-theme] body.immersive-v33 #site-navigation{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;align-items:center}
}
@media(min-width:761px) and (max-width:1023px){
 html[data-ui-theme] body.immersive-v33 >header{grid-template-columns:minmax(0,1fr) auto;gap:18px}
 html[data-ui-theme] body.immersive-v33 .v25-header-safety{display:none!important}
 html[data-ui-theme] body.immersive-v33 .brand-title{font-size:16px;letter-spacing:.16em}
 html[data-ui-theme] body.immersive-v33 .brand-subtitle{font-size:9px;white-space:nowrap}
}
@media(max-width:1023px){
 html[data-ui-theme="night"] body.immersive-v33 .city-intro::before{content:'';position:absolute;inset:-30px -22px;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 30% 50%,rgba(10,22,40,.56),rgba(10,22,40,.32) 65%,transparent 86%)}
}
@media(min-width:1500px){html[data-ui-theme] body.immersive-v33 .city-hero{min-height:780px}}
@media(max-width:1050px){html[data-ui-theme] body.immersive-v33 .cm-today-grid{grid-template-columns:1fr 1fr}html[data-ui-theme] body.immersive-v33 .cm-today-weather{grid-column:1/-1}html[data-ui-theme] body.immersive-v33 .cm-weather-days{grid-template-columns:repeat(8,minmax(0,1fr))}html[data-ui-theme] body.immersive-v33 :is(.cm-today-news,.cm-today-events){margin-top:0}html[data-ui-theme] body.immersive-v33 .scene-orbit{width:150px;height:150px}html[data-ui-theme] body.immersive-v33 .category-tile:nth-child(n+9):nth-child(-n+12){grid-column:span 6}html[data-ui-theme] body.immersive-v33 >header{gap:12px}}
@media(max-width:760px){
 html[data-ui-theme] body.immersive-v33 >header{grid-template-columns:1fr auto;padding:12px 5vw;gap:10px}
 html[data-ui-theme] body.immersive-v33 .brand-title{font-size:16px;letter-spacing:.16em}
 html[data-ui-theme] body.immersive-v33 #site-navigation{gap:23px}
 html[data-ui-theme] body.immersive-v33 .appearance-bar{padding-block:5px;gap:8px}
 html[data-ui-theme] body.immersive-v33 .city-hero{display:block;min-height:630px;padding:60px 0 100px!important}
 html[data-ui-theme] body.immersive-v33 .city-intro{padding:0 1vw;max-width:100%}
 html[data-ui-theme] body.immersive-v33 .city-masthead{font-size:13px;letter-spacing:.32em}
 html[data-ui-theme] body.immersive-v33 .discovery-title{font-size:clamp(39px,10.1vw,73px);line-height:1.48;margin-bottom:20px}
 html[data-ui-theme] body.immersive-v33 .cinematic-deck{font-size:12px;margin-bottom:24px;letter-spacing:.03em}
 html[data-ui-theme] body.immersive-v33 .scene-panorama{min-height:90px;margin-top:30px;align-items:flex-end;justify-content:center}
 html[data-ui-theme] body.immersive-v33 .scene-orbit{width:86px;height:86px;inset:0 auto auto 15px}
 html[data-ui-theme] body.immersive-v33 .scene-edition{writing-mode:initial;position:static;font-size:8px}
 html[data-ui-theme] body.immersive-v33 .scene-mood{font-size:14px;margin:5px 0}
 html[data-ui-theme] body.immersive-v33 .scene-tools{bottom:20px;left:0;right:0;justify-content:flex-end}
 html[data-ui-theme] body.immersive-v33 .scene-photo-credit{font-size:8px;max-width:calc(100% - 55px)}
 html[data-ui-theme] body.immersive-v33 .scene-discover{bottom:73px;font-size:11px}
 html[data-ui-theme] body.immersive-v33 .scene-discover::before{width:34px}
 html[data-ui-theme] body.immersive-v33 .portal-home>section:not(.city-hero){margin-top:75px}
 html[data-ui-theme] body.immersive-v33 .portal-home>.cm-today{margin-top:15px}
 html[data-ui-theme] body.immersive-v33 .cm-today-grid{grid-template-columns:1fr;gap:18px}
 html[data-ui-theme] body.immersive-v33 .cm-weather-days{grid-template-columns:repeat(4,minmax(0,1fr))}
 html[data-ui-theme] body.immersive-v33 .cm-today-panel{padding:22px 18px;border-radius:24px}
 html[data-ui-theme] body.immersive-v33 .category-index{grid-auto-rows:220px;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
 html[data-ui-theme] body.immersive-v33 .category-tile:nth-child(n){grid-column:span 1;grid-row:span 1;padding:20px 15px;border-radius:14px}
 html[data-ui-theme] body.immersive-v33 .category-tile:first-child{grid-column:span 2;grid-row:span 2;border-radius:70px 14px 14px 14px}
 html[data-ui-theme] body.immersive-v33 .category-tile:last-child{grid-column:span 2;border-radius:14px 14px 60px 14px}
 html[data-ui-theme] body.immersive-v33 .category-tile .category-name{font-size:19px}
 html[data-ui-theme] body.immersive-v33 .category-tile:first-child .category-name{font-size:37px}
 html[data-ui-theme] body.immersive-v33 .category-tile .category-no{left:16px;top:18px}
 html[data-ui-theme] body.immersive-v33 .city-desk-panel{padding:18px}
 html[data-ui-theme] body.immersive-v33 .city-desk .v26-news-grid{grid-template-columns:1fr;gap:5px}
 html[data-ui-theme] body.immersive-v33 .city-desk .v26-news-card:first-child{grid-column:auto;grid-row:auto;padding:24px;min-height:300px;margin-bottom:18px}
 html[data-ui-theme] body.immersive-v33 .city-desk .v26-news-card:first-child h3{font-size:28px}
 html[data-ui-theme] body.immersive-v33 .featured-places .place-grid{grid-template-columns:1fr;gap:25px}
 html[data-ui-theme] body.immersive-v33 .featured-places .place-card:nth-child(2){margin-top:0}
 html[data-ui-theme] body.immersive-v33 .featured-places .media-banner img{height:260px}
 html[data-ui-theme] body.immersive-v33 .v26-living-home{padding:28px 23px!important;border-radius:25px 65px 25px 25px}
 html[data-ui-theme] body.immersive-v33 .page:not(.portal-home){width:94%;border-radius:20px;margin-top:20px;padding:35px 5vw 120px}
 html[data-ui-theme] body.immersive-v33 .v26-home-quicklinks{margin-top:45px}
}
@media(prefers-reduced-motion:reduce){html[data-ui-theme] body.immersive-v33 *{scroll-behavior:auto!important;transition:none!important}html[data-ui-theme] body.immersive-v33 :is(.category-tile,.place-card,.guide-card,.directory-card,.organization-card,.v26-news-card):hover{transform:none}}
@media(prefers-reduced-transparency:reduce){html[data-ui-theme] body.immersive-v33 :is(.page:not(.portal-home),.cm-today-panel,.cm-map,.city-desk-panel,.v26-living-home){background:var(--ui-bg)!important;backdrop-filter:none}}
@media(forced-colors:active){html[data-ui-theme] body.immersive-v33 :is(.scene-orbit,.scene-panorama){display:none}html[data-ui-theme] body.immersive-v33 :is(.city-intro,.cm-today-panel,.city-desk-panel,.v26-living-home,.page){background:Canvas!important;color:CanvasText!important;text-shadow:none!important}}

/* v34: the opening landscape leaves; each story owns its own scene. */
html[data-ui-theme] {--v34-header-height:88px;--v34-sticky-top:136px;scroll-padding-top:calc(var(--v34-sticky-top) + 20px)}
html[data-ui-theme] body.immersive-v34 {background:var(--ui-bg);overflow-x:clip}
html[data-ui-theme] body.immersive-v34 > header {position:sticky;top:0;z-index:90;background:var(--ui-bg)}
html[data-ui-theme] body.immersive-v34 #site-navigation {position:sticky;top:var(--v34-header-height);z-index:89;background:var(--ui-bg)}
html[data-ui-theme] body.immersive-v34 :is(#content,#panels,.portal-home) {overflow:visible;transform:none;contain:none}
html[data-ui-theme] body.immersive-v34 .portal-home {width:100%;max-width:none;padding:0;margin:0;background:transparent;border:0;border-radius:0;backdrop-filter:none;box-shadow:none}
html[data-ui-theme] body.immersive-v34 .city-hero {position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.6fr);align-items:center;min-height:max(720px,calc(100svh - var(--v34-sticky-top)));margin:0;border:0;border-radius:0;padding:100px 6vw 130px!important;background:#0a1628}
html[data-ui-theme] body.immersive-v34 .city-hero::before {content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(5,17,32,.66),rgba(5,17,32,.24) 60%,rgba(5,17,32,.05))}
html[data-ui-theme] body.immersive-v34 .city-hero > :not(.v34-hero-scene) {z-index:2}
html[data-ui-theme] body.immersive-v34 .city-intro {padding:0;position:relative}
html[data-ui-theme] body.immersive-v34 .city-intro::before {display:none}
html[data-ui-theme] body.immersive-v34 .scene-panorama {align-self:end;min-height:180px;padding-bottom:20px}
html[data-ui-theme] body.immersive-v34 .scene-orbit {display:none}
html[data-ui-theme] body.immersive-v34 .scene-discover {left:6vw;bottom:36px}
html[data-ui-theme] body.immersive-v34 .scene-tools {right:5vw;left:auto;bottom:32px}
html[data-ui-theme] body.immersive-v34 .city-hero .appearance-bar {position:absolute;right:5vw;top:24px;left:auto;display:flex;flex-wrap:wrap;justify-content:flex-end;max-width:calc(100% - 10vw);padding:0;min-height:44px;gap:10px 16px;border:0;margin:0}
html[data-ui-theme] body.immersive-v34 .city-hero .appearance-label {display:none}
html[data-ui-theme] body.immersive-v34 .city-hero .today-jump {margin:0;font-size:11px;background:var(--ui-surface-glass);backdrop-filter:blur(15px);border-radius:30px;padding:11px 17px}
html[data-ui-theme] body.immersive-v34 .city-hero .appearance-choices {background:var(--ui-surface-glass);backdrop-filter:blur(15px);border-radius:30px}
html[data-ui-theme] body.immersive-v34 .city-hero .appearance-more {background:var(--ui-surface-glass);border-radius:30px}
html[data-ui-theme]:not([data-ui-theme="night"]) body.immersive-v34 .city-hero::before {background:linear-gradient(90deg,rgba(255,246,226,.88),rgba(255,246,226,.57) 52%,rgba(255,246,226,.02) 87%)}
html[data-ui-theme] body.immersive-v34 .portal-home > .v34-guide-section {max-width:1440px;width:90%;margin:100px auto 0}
html[data-ui-theme] body.immersive-v34 .portal-home > .cm-today {margin-top:0;padding-top:100px;scroll-margin-top:calc(var(--v34-sticky-top) + 12px)}
html[data-ui-theme] body.immersive-v34 .portal-home > .city-index-section {padding-block:50px}
html[data-ui-theme] body.immersive-v34 .portal-home > .city-desk {padding-block:50px}
html[data-ui-theme] body.immersive-v34 .city-desk-panel {background:var(--ui-surface-glass)}
html[data-ui-theme] body.immersive-v34 footer {background:var(--ui-bg)}
html[data-ui-theme] body.immersive-v34 [id] {scroll-margin-top:calc(var(--v34-sticky-top) + 20px)}
html[data-ui-theme] body.immersive-v34 .v34-hero-scene {scroll-margin:0}
@media(max-width:760px){
 html[data-ui-theme] body.immersive-v34 .city-hero {display:block;min-height:760px;padding:145px 6vw 145px!important}
 html[data-ui-theme] body.immersive-v34 .city-hero .appearance-bar {top:17px;right:6vw;max-width:88%;justify-content:flex-start;gap:5px 9px}
 html[data-ui-theme] body.immersive-v34 .city-hero .today-jump {order:3;flex-basis:auto;font-size:10px}
 html[data-ui-theme] body.immersive-v34 .discovery-title {font-size:clamp(38px,10.8vw,68px)}
 html[data-ui-theme] body.immersive-v34 .scene-panorama {min-height:55px;margin:26px 0 0;padding:0}
 html[data-ui-theme] body.immersive-v34 .scene-tools {bottom:24px;right:6vw;max-width:88%;gap:5px}
 html[data-ui-theme] body.immersive-v34 .scene-photo-credit {font-size:8px}
 html[data-ui-theme] body.immersive-v34 .scene-discover {bottom:88px}
 html[data-ui-theme] body.immersive-v34 .portal-home > .v34-guide-section {width:90%;margin-top:65px}
 html[data-ui-theme] body.immersive-v34 .portal-home > .cm-today {padding-top:60px;margin-top:0}
 html[data-ui-theme] body.immersive-v34 .city-hero::before {background:linear-gradient(90deg,rgba(5,17,32,.76),rgba(5,17,32,.35))}
}
@media(print){
 html[data-ui-theme] body.immersive-v34 > header,html[data-ui-theme] body.immersive-v34 #site-navigation {position:static}
 html[data-ui-theme] body.immersive-v34 .city-hero {min-height:0;display:block;background:white;padding:30px!important}
 html[data-ui-theme] body.immersive-v34 .city-hero::before {display:none}
}

/* A sequence of locally pinned scenes: they enter, transform, then leave. */
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story {
 --story-ink:#fff1d5;--story-muted:#dfc8ab;--story-ground:#1d2828;--story-concept:#e4e2cd;--story-concept-ink:#23332b;--story-accent:#f4b372;--story-glass:rgba(29,40,40,.78);--story-line:rgba(255,241,213,.35);
 position:relative;width:100%;isolation:isolate;color:var(--story-ink);background:var(--story-ground);font-family:'Noto Sans JP',sans-serif;
}
html[data-ui-theme="day"] body.immersive .portal-home .cm-scroll-story,html[data-ui-theme="warm"] body.immersive .portal-home .cm-scroll-story {--story-ground:#eadbc3;--story-ink:#49331f;--story-muted:#715942;--story-concept:#f3ead0;--story-concept-ink:#493e2a;--story-accent:#9c4c27;--story-glass:rgba(255,247,227,.87);--story-line:rgba(90,64,35,.27)}
html[data-ui-theme="white"] body.immersive .portal-home .cm-scroll-story {--story-ground:#f8f7ee;--story-ink:#263b32;--story-muted:#506359;--story-concept:#e8efe4;--story-concept-ink:#254436;--story-accent:#396350;--story-glass:rgba(255,255,250,.89);--story-line:rgba(33,72,52,.28)}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story * {box-sizing:border-box}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story :is(h2,h3,p,figure){margin:0}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story :is(h2,h3){font-family:'Noto Serif JP',serif;font-weight:500;letter-spacing:.015em;text-wrap:balance;line-height:1.5;color:inherit}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story button,html[data-ui-theme] body.immersive .portal-home .cm-scroll-story a {touch-action:manipulation}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story button {font:inherit;cursor:pointer}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story button:focus-visible,html[data-ui-theme] body.immersive .portal-home .cm-scroll-story a:focus-visible {outline:3px solid #ea843d;outline-offset:5px}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-scroll-section {position:relative;margin:0;border:0;border-radius:0;max-width:none;padding:0;overflow:visible}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-sticky {position:sticky;top:var(--v34-sticky-top,0px);height:calc(100svh - var(--v34-sticky-top,0px));min-height:460px;overflow:clip}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-eyebrow {font-family:'Noto Sans JP',sans-serif;font-size:11px;line-height:1.6;letter-spacing:.18em;font-weight:600;text-wrap:balance}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-description {white-space:pre-line;font-size:clamp(13px,1.04vw,16px);line-height:1.95}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-concept {height:205svh;background:var(--story-concept);color:var(--story-concept-ink);border-radius:0 0 48% 5%/0 0 5% 1%;z-index:3}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-concept-stage {display:grid;place-items:center}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-concept-field {position:absolute;inset:0;pointer-events:none;overflow:hidden}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-concept-copy {position:relative;z-index:2;text-align:center;max-width:650px;width:54%;padding:30px 0;transform:translate3d(0,var(--concept-y,35px),0);opacity:var(--concept-reveal,1)}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-concept-copy .story-eyebrow {margin-bottom:28px}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-concept-copy h2 {font-size:clamp(35px,4.1vw,72px);line-height:1.5}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-concept-copy h2 span {display:block}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-concept-body {font-size:clamp(13px,1.1vw,17px);line-height:2.25;white-space:pre-line;margin-top:30px}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-orbit-photo {position:absolute;overflow:hidden;transform:rotate(var(--concept-turn,-7deg)) scale(var(--concept-scale,1));filter:saturate(.7);box-shadow:0 25px 70px #263d2b18}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-orbit-photo img {width:100%;height:100%;object-fit:cover;display:block}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-orbit-temple {width:30vw;height:43vw;max-height:85%;left:-11%;top:2%;border-radius:48% 45% 10% 50%/48% 40% 15% 50%}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-orbit-cafe {width:30vw;height:32vw;right:-11%;bottom:2%;border-radius:50% 12% 45% 50%/50% 12% 45% 50%;transform:rotate(calc(var(--concept-turn,-7deg) * -1)) scale(var(--concept-scale,1))}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-orbit-ring {position:absolute;top:13%;right:9%;width:clamp(60px,10vw,160px);height:clamp(60px,10vw,160px);border:1px solid currentColor;border-radius:50%;opacity:.33;transform:translateY(calc(var(--story-progress,0) * 55px))}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-orbit-dot {position:absolute;left:13%;bottom:8%;height:22px;width:22px;border:1px solid currentColor;border-radius:50%;transform:translateY(calc(var(--story-progress,0) * -70px))}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-skip {position:absolute;left:50%;bottom:20px;transform:translateX(-50%);z-index:5;padding:10px 18px;min-height:44px;max-width:90%;border:1px solid currentColor;border-radius:30px;background:transparent;color:inherit;font-size:11px;line-height:1.5;letter-spacing:.03em;white-space:nowrap}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-skip:hover {background:#ffffff60}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-journey {height:520svh;background:var(--story-ground);margin-top:-1px}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-journey-stage {padding-top:0}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-section-heading {position:relative;z-index:5;display:flex;align-items:baseline;gap:24px;padding:24px 6vw 8px;margin:0;background:none;border:0;box-shadow:none;min-height:0;color:inherit;pointer-events:none}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-section-heading h2 {font-size:clamp(21px,2.3vw,37px);line-height:1.4}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-section-heading>p {font-size:12px;color:var(--story-muted);line-height:1.7}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-journey-track {display:flex;gap:7vw;width:max-content;min-width:100%;height:calc(100% - 112px);padding:5px 9vw 12px;align-items:center;will-change:transform}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-journey-panel {position:relative;flex:0 0 73vw;width:73vw;max-width:1200px;height:100%;max-height:850px;min-height:360px;color:var(--story-ink);background:transparent;border:none;border-radius:0;padding:0;isolation:isolate;transform:rotate(var(--panel-tilt,0deg));transform-origin:50% 50%}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-journey-photo {position:absolute;inset:2% 4% 5% 5%;overflow:hidden;border-radius:34% 42% 8% 7%/37% 45% 11% 12%;z-index:-2}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-journey-panel:nth-child(even) .story-journey-photo {border-radius:9% 38% 42% 8%/13% 37% 43% 11%}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-journey-photo img {height:100%;width:100%;object-fit:cover;display:block;transform:scale(var(--panel-image-scale,1.04))}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-big-number {position:absolute;left:0;top:3%;font-family:Georgia,serif;font-size:clamp(85px,14vw,230px);line-height:.85;color:var(--story-ink);letter-spacing:-.08em;z-index:2;text-shadow:0 4px 30px #0003}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-journey-copy {position:absolute;left:0;bottom:5%;width:54%;max-width:580px;padding:25px 32px 24px 45px;border:1px solid var(--story-line);border-radius:80px 90px 90px 12px;background:var(--story-glass);backdrop-filter:blur(20px);color:var(--story-ink);box-shadow:0 20px 60px #0001}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-journey-copy h3 {font-size:clamp(25px,3.1vw,48px);margin:7px 0 11px;line-height:1.5}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-journey-copy .story-eyebrow {color:var(--story-accent)}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-route-link {display:inline-flex;align-items:center;gap:24px;min-height:44px;padding:7px 0;font-size:13px;font-weight:600;text-decoration:none!important;color:inherit!important;border-bottom:1px solid currentColor;border-radius:0;line-height:1.4;background:none;transition:gap .22s}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-route-link:hover {gap:34px;background:none}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-route-link>span {font-size:24px;font-weight:400}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-image-note {display:block;margin-top:7px;font-size:10px;opacity:.8;line-height:1.5}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-credit {position:absolute;z-index:4;bottom:0;right:6%;font-size:9px;line-height:1.5;color:var(--story-muted);max-width:70%;text-align:right}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-credit a {color:inherit;text-decoration:underline;text-underline-offset:3px}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-dock {position:absolute;z-index:8;bottom:15px;left:50%;transform:translateX(-50%);display:flex;align-items:center;justify-content:center;gap:15px;width:max-content;max-width:95%;border:1px solid var(--story-line);border-radius:40px;background:var(--story-glass);backdrop-filter:blur(20px);padding:3px 9px;color:var(--story-ink)}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-dock button {min-width:44px;min-height:44px;display:grid;place-items:center;border:0;background:transparent;color:inherit;border-radius:50%;font-size:19px;line-height:1;flex:none;padding:0}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-dock button:hover {background:#ffffff20}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-dots {display:flex;align-items:center;gap:5px}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-dot {position:relative}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-dot span {font-size:11px;opacity:.75}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-dot[aria-pressed="true"] {box-shadow:inset 0 0 0 1px currentColor}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-dot[aria-pressed="true"] span {opacity:1}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-spotlight {height:620svh;background:#16231d;color:#fff7e7}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-spotlight-stage {min-height:490px}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-spotlight .story-section-heading {position:absolute;top:0;left:0;right:0;z-index:6;display:block;padding:35px 6vw;background:linear-gradient(#10241cc2,transparent);color:#fff7e7}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-spotlight .story-section-heading h2 {font-size:clamp(29px,3.3vw,54px);margin:8px 0}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-spotlight .story-section-heading>p {color:#f4ecdd}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-spotlight-stack,html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-spotlight-panel,html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-spotlight-photo,html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-spotlight-shade {position:absolute;inset:0}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-spotlight-panel {background:transparent;color:#fff7e7;border-radius:0;border:0;padding:0;opacity:1;z-index:1;pointer-events:none;overflow:hidden}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-spotlight-panel:first-child {--spot-opacity:1}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-spotlight-panel[data-active="true"] {pointer-events:auto;z-index:2}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-spotlight-photo img {width:100%;height:100%;object-fit:cover;transform:scale(var(--spot-scale,1.04));display:block}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-spotlight-shade {background:linear-gradient(90deg,#09291c60,transparent 70%),linear-gradient(0deg,#0a211b99,transparent 60%);pointer-events:none}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-spotlight-copy {position:absolute;left:6vw;bottom:9%;width:clamp(330px,36vw,560px);padding:27px 36px 28px;border-radius:75px 95px 75px 14px;background:rgba(12,36,26,.73);backdrop-filter:blur(20px);border:1px solid #fff8e844;transform:none;box-shadow:0 20px 60px #0002}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-place-number {font-family:Georgia,serif;font-size:clamp(38px,5vw,78px);line-height:1.1;display:block;color:#f3d9a0;font-style:italic}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-spotlight-copy h3 {font-size:clamp(25px,2.8vw,45px);margin:7px 0 14px}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-spotlight .story-credit {right:6vw;bottom:20px;color:#fff7e7;background:#08241dcc;padding:5px 9px;border-radius:3px;max-width:58%}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-spotlight .story-dock {left:auto;right:30px;top:50%;bottom:auto;transform:translateY(-50%);flex-direction:column;gap:4px;padding:10px 3px;background:rgba(12,36,26,.65);border-color:#fff8e844;color:#fff7e7}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-spotlight .story-dots {flex-direction:column;gap:5px}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-spotlight .story-prev {transform:rotate(90deg)}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-spotlight .story-next {transform:rotate(90deg)}
/* Flow is also a functional baseline before the controller starts. */
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="flow"] .story-scroll-section {height:auto}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="flow"] .story-sticky {position:relative;top:auto;height:auto;overflow:visible;min-height:0}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="flow"] .story-concept-stage {min-height:80svh;padding:80px 0}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="flow"] .story-concept-copy {opacity:1;transform:none}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="flow"] .story-concept-field {overflow:clip}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="flow"] .story-journey-stage {padding-bottom:40px}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="flow"] .story-section-heading {display:block;padding:45px 7vw 25px}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="flow"] .story-section-heading h2 {font-size:30px;margin:10px 0}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="flow"] .story-journey-track {display:block;width:100%;height:auto;padding:0 6vw;transform:none!important;will-change:auto}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="flow"] .story-journey-panel {width:100%;height:650px;min-height:0;max-height:none;margin:30px 0 70px;transform:none}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="flow"] .story-journey-photo {inset:0 0 15% 0}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="flow"] .story-journey-copy {bottom:4%}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="flow"] .story-dock {display:none}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="flow"] .story-spotlight .story-section-heading {position:relative;background:#183b2d}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="flow"] .story-spotlight-stack {position:relative;inset:auto}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="flow"] .story-spotlight-panel {position:relative;inset:auto;height:700px;opacity:1!important;pointer-events:auto;z-index:1;scroll-margin-top:calc(var(--v34-sticky-top,0px) + 10px)}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="flow"] .story-spotlight-copy {transform:none}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="flow"] .story-big-number {font-size:140px}
@media (min-width:761px) and (max-height:740px){
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-section-heading {padding-top:14px;padding-bottom:4px}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-section-heading>p {display:none}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-journey-track {height:calc(100% - 95px)}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-journey-copy {padding:15px 26px 15px 35px;bottom:4%}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-journey-copy h3 {font-size:29px;margin:4px 0}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-description {font-size:12px;line-height:1.7}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-spotlight .story-section-heading {padding-top:20px}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-spotlight-copy {padding:20px 30px;bottom:8%;width:41vw}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-spotlight-copy h3 {font-size:30px;margin:5px 0}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-place-number {font-size:40px}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-concept-copy .story-eyebrow {margin-bottom:15px}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-concept-copy h2 {font-size:40px}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-concept-body {margin-top:16px;font-size:13px}
}
@media (max-width:1050px) and (min-width:761px){
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-journey-panel {width:82vw;flex-basis:82vw}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-journey-copy {width:68%;padding:22px 30px}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-journey-copy h3 {font-size:32px}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-section-heading {gap:13px}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-section-heading>p {display:none}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-spotlight-copy {width:54vw}
}
@media (max-width:760px){
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-concept {border-radius:0 0 40% 3%/0 0 3% 1%}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="flow"] .story-concept-stage {min-height:660px;padding:125px 0 130px}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-concept-copy {width:84%;padding:0;max-width:520px}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-concept-copy h2 {font-size:clamp(31px,8.2vw,49px)}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-concept-body {font-size:14px;line-height:2;margin-top:24px}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-concept-copy .story-eyebrow {font-size:9px;letter-spacing:.11em;margin-bottom:24px}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-orbit-temple {width:40vw;height:40vw;left:-12%;top:-5%;opacity:.7}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-orbit-cafe {width:43vw;height:43vw;right:-12%;bottom:-3%;opacity:.7}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-orbit-ring {top:10%;right:12%;width:48px;height:48px}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-orbit-dot {left:13%;bottom:10%;height:15px;width:15px}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-skip {font-size:10px;bottom:65px;max-width:86%;white-space:normal;width:max-content}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="flow"] .story-section-heading {padding:45px 7vw 12px}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="flow"] .story-section-heading h2 {font-size:28px}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-section-heading>p {font-size:11px}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="flow"] .story-journey-track {padding:0 5vw}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="flow"] .story-journey-panel {height:580px;margin:15px 0 40px;scroll-margin-top:calc(var(--v34-sticky-top,0px) + 15px)}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="flow"] .story-journey-photo {inset:0 0 19% 0;border-radius:37% 42% 12% 8%/28% 30% 13% 11%}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-journey-photo img {transform:none}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="flow"] .story-big-number {font-size:115px;top:10px;left:1%}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-journey-copy {width:93%;left:0;max-width:none;padding:24px 24px 22px;border-radius:55px 65px 65px 10px}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="flow"] .story-journey-copy {bottom:5%}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-journey-copy h3 {font-size:clamp(23px,6.8vw,38px);margin:6px 0 10px}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-description {font-size:14px;line-height:1.8}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-route-link {font-size:14px;gap:20px}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-credit {font-size:8px;right:1%;max-width:90%}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="flow"] .story-spotlight-panel {height:620px}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-spotlight-copy {left:5vw;bottom:10%;width:87vw;padding:22px 27px;border-radius:60px 70px 65px 10px}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-spotlight-copy h3 {font-size:clamp(24px,6.5vw,36px);margin:6px 0 12px}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-place-number {font-size:47px}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-spotlight .story-credit {max-width:87%;right:5%;bottom:20px;font-size:8px}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-spotlight .story-section-heading h2 {font-size:28px}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-spotlight-photo img {transform:none}
}
@media (prefers-reduced-motion:reduce){
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story *{scroll-behavior:auto!important;animation:none!important;transition:none!important}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-orbit-photo,html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-orbit-ring,html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-orbit-dot{transform:none!important}
}
@media (prefers-reduced-transparency:reduce){html[data-ui-theme] body.immersive .portal-home .cm-scroll-story {--story-glass:var(--story-ground)}html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-spotlight-copy,html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-spotlight .story-dock{background:#15372a;backdrop-filter:none}}
@media (forced-colors:active){html[data-ui-theme] body.immersive .portal-home .cm-scroll-story{--story-ground:Canvas;--story-ink:CanvasText;--story-muted:CanvasText;--story-concept:Canvas;--story-concept-ink:CanvasText;--story-glass:Canvas;--story-line:CanvasText}html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-spotlight-copy,html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-spotlight .story-dock{background:Canvas;color:CanvasText}html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-dock button[aria-pressed="true"]{outline:2px solid Highlight}html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-spotlight-shade{background:transparent}}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-cafe-link {margin-left:20px;gap:10px}
@media(max-width:760px){html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-cafe-link{margin-left:16px;gap:8px;font-size:11px}}

/* Crossfade only the photographs. One solid caption is readable at every point. */
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-spotlight-photo {opacity:var(--spot-opacity,0)}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-spotlight-panel[data-active="false"] > :is(.story-spotlight-copy,.story-credit,.story-spotlight-shade) {visibility:hidden}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-spotlight-panel[data-active="true"] > :is(.story-spotlight-copy,.story-credit,.story-spotlight-shade) {visibility:visible;opacity:1}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="flow"] .story-spotlight-panel > :is(.story-spotlight-copy,.story-credit,.story-spotlight-shade) {visibility:visible;opacity:1}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="flow"] .story-spotlight-photo {opacity:1}


/* v38: available height, not device width, determines the scene layout.
   The controller reserves the actual fixed safety bar below each pinned stage. */
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="scrub"] .story-sticky {height:var(--story-stage-height,calc(100svh - var(--v34-sticky-top,0px) - var(--story-safe-bottom,0px)));min-height:0}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-effects="gentle"] .story-journey-photo img,
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-effects="gentle"] .story-spotlight-photo img {transform:translate3d(0,var(--flow-image-y,0px),0) scale(1.07)}
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-effects="reduced"] .story-journey-photo img,
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-effects="reduced"] .story-spotlight-photo img {transform:none}
@media (max-width:760px) {
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="scrub"] .story-concept {height:175svh}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="scrub"] .story-journey {height:500svh}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="scrub"] .story-spotlight {height:500svh}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="scrub"] .story-concept-copy {width:84%;padding:0 0 28px}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="scrub"] .story-concept-copy h2 {font-size:clamp(29px,7.7vw,43px);line-height:1.5}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="scrub"] .story-concept-copy .story-eyebrow {margin-bottom:18px}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="scrub"] .story-concept-body {font-size:14px;line-height:1.9;margin-top:18px}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="scrub"] .story-skip {bottom:12px;max-width:88%;font-size:10px}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="scrub"] .story-section-heading {display:block;padding:16px 6vw 8px}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="scrub"] .story-section-heading .story-eyebrow {font-size:9px;line-height:1.5}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="scrub"] .story-section-heading h2 {font-size:clamp(24px,6.2vw,31px);line-height:1.4;margin:4px 0}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="scrub"] .story-section-heading>p {font-size:11px;line-height:1.6}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="scrub"] .story-journey-track {height:calc(100% - var(--story-heading-height,93px) - 70px);gap:6vw;padding:6px 6vw 0;align-items:stretch}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="scrub"] .story-journey-panel {width:88vw;flex-basis:88vw;max-width:none;height:100%;min-height:0;max-height:none;margin:0}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="scrub"] .story-journey-photo {inset:0 0 25% 0;border-radius:37% 42% 12% 8%/28% 30% 13% 11%}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="scrub"] .story-journey-photo img {transform:scale(var(--panel-image-scale,1.04))}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="scrub"] .story-big-number {font-size:clamp(72px,19vw,115px);top:12px;left:1%}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="scrub"] .story-journey-copy {left:3%;bottom:0;width:94%;max-width:none;padding:16px 18px;border-radius:38px 42px 40px 10px}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="scrub"] .story-journey-copy h3 {font-size:clamp(22px,6vw,29px);line-height:1.4;margin:5px 0 7px}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="scrub"] .story-description {font-size:14px;line-height:1.7}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="scrub"] .story-journey-copy .story-eyebrow {font-size:9px;letter-spacing:.13em}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="scrub"] .story-route-link {font-size:14px;gap:13px}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="scrub"] .story-cafe-link {margin-left:12px;gap:7px;font-size:14px}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="scrub"] .story-image-note {font-size:9px;margin-top:4px}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="scrub"] .story-journey .story-credit {top:8px;right:8px;bottom:auto;max-width:72%;padding:3px 6px;border-radius:3px;color:#fff7e7;background:#102820dd;font-size:8px}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="scrub"] .story-dock {bottom:9px;gap:8px;padding:3px 7px;max-width:calc(100% - 24px)}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="scrub"] .story-spotlight .story-section-heading {padding:18px 6vw 16px}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="scrub"] .story-spotlight .story-section-heading h2 {font-size:clamp(24px,6.3vw,32px);margin:4px 0}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="scrub"] .story-spotlight-copy {left:6vw;bottom:96px;width:88vw;padding:18px 22px;border-radius:42px 52px 42px 10px}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="scrub"] .story-spotlight-copy h3 {font-size:clamp(22px,6.1vw,29px);line-height:1.4;margin:5px 0 8px}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="scrub"] .story-place-number {font-size:32px;line-height:1.1}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="scrub"] .story-spotlight .story-credit {right:6vw;bottom:68px;max-width:88%;font-size:8px;padding:3px 6px}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="scrub"] .story-spotlight .story-dock {left:50%;right:auto;top:auto;bottom:9px;transform:translateX(-50%);flex-direction:row;gap:8px;padding:3px 7px}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="scrub"] .story-spotlight .story-dots {flex-direction:row}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="scrub"] .story-spotlight :is(.story-prev,.story-next) {transform:none}
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="scrub"] .story-spotlight-photo img {transform:scale(var(--spot-scale,1.04))}
}
@media (max-width:420px) {
 /* All five direct scene buttons retain a 44px touch target at 320px. */
 html[data-ui-theme] body.immersive .portal-home .cm-scroll-story .story-dock :is(.story-prev,.story-next) {display:none}
}

/* A travel journal masthead: one quiet baseline, a clear safety hierarchy. */
html[data-ui-theme] body.immersive-v35 {
  --v35-chrome:#0c1b2c;--v35-chrome-ink:#f4f0e6;--v35-chrome-muted:#bfcbd0;
  --v35-chrome-line:#ffffff20;--v35-chrome-hover:#ffffff0a;
  --v35-chrome-accent:#e8bd80;--v35-danger:#ffb2a8;--v35-danger-line:#d77c724f;
  --v35-danger-wash:#c86d6512;
}
html[data-ui-theme="white"] body.immersive-v35 {
  --v35-chrome:#fafaf6;--v35-chrome-ink:#213b35;--v35-chrome-muted:#59675e;
  --v35-chrome-line:#263f3526;--v35-chrome-hover:#26473508;
  --v35-chrome-accent:#2b6255;--v35-danger:#953f33;--v35-danger-line:#a752422e;
  --v35-danger-wash:#a7524207;
}
html[data-ui-theme="day"] body.immersive-v35,
html[data-ui-theme="warm"] body.immersive-v35 {
  --v35-chrome:#fbf5e9;--v35-chrome-ink:#443a2a;--v35-chrome-muted:#71644e;
  --v35-chrome-line:#65503725;--v35-chrome-hover:#75502808;
  --v35-chrome-accent:#8a5428;--v35-danger:#963e2e;--v35-danger-line:#a5503c30;
  --v35-danger-wash:#a5503c06;
}
html[data-ui-theme] body.immersive-v35 > header {
  grid-template-columns:minmax(185px,1fr) auto auto;align-items:center;
  min-height:80px;padding:14px 5vw;gap:24px;
  background:var(--v35-chrome);border-color:var(--v35-chrome-line);backdrop-filter:none;
}
html[data-ui-theme] body.immersive-v35 > header .identity {gap:13px;min-width:0}
html[data-ui-theme] body.immersive-v35 > header .mark {
  width:42px;height:42px;min-width:42px;line-height:40px;font-size:26px;
  color:var(--v35-chrome-accent)!important;border-color:var(--v35-chrome-line);background:transparent;
}
html[data-ui-theme] body.immersive-v35 > header .mark span {color:inherit!important}
html[data-ui-theme] body.immersive-v35 > header .brand-title {
  color:var(--v35-chrome-ink);font-size:18px;letter-spacing:.22em;font-weight:500;
}
html[data-ui-theme] body.immersive-v35 > header .brand-subtitle {
  color:var(--v35-chrome-muted);font-size:10px;letter-spacing:.11em;line-height:1.5;margin-top:4px;
}
html[data-ui-theme] body.immersive-v35 .v25-header-safety {
  display:flex!important;align-items:center;justify-content:flex-end;width:auto;gap:10px;
  padding-inline-end:24px;border-inline-end:1px solid var(--v35-chrome-line);
}
html[data-ui-theme] body.immersive-v35 .v25-header-safety > a[data-safety-route] {
  flex:0 0 auto;min-height:44px;padding:10px 9px;border:1px solid transparent;border-radius:5px;
  background:transparent;color:var(--v35-chrome-ink);font-size:12px;font-weight:500;line-height:1.4;
  letter-spacing:.03em;gap:7px;box-shadow:none;text-decoration:none;white-space:nowrap;
  transition:background .18s,color .18s,border-color .18s;
}
html[data-ui-theme] body.immersive-v35 .v25-header-safety > a[data-safety-route] > span {line-height:1.4;white-space:nowrap}
html[data-ui-theme] body.immersive-v35 .v25-header-safety > a[data-safety-route].header-emergency {
  color:var(--v35-danger);background:var(--v35-danger-wash);border-color:var(--v35-danger-line);
}
html[data-ui-theme] body.immersive-v35 .v25-header-safety svg {width:16px;height:16px;flex:0 0 16px;stroke-width:1.5}
html[data-ui-theme] body.immersive-v35 .v25-header-safety > a[data-safety-route]:is(:hover,:focus-visible) {
  background:var(--v35-chrome-hover);border-color:var(--v35-chrome-line);color:var(--v35-chrome-ink);
}
html[data-ui-theme] body.immersive-v35 .v25-header-safety > a[data-safety-route].header-emergency:is(:hover,:focus-visible) {
  background:var(--v35-danger-wash);border-color:var(--v35-danger);color:var(--v35-danger);
}
html[data-ui-theme] body.immersive-v35 .header-language-cluster {width:auto;max-width:none;justify-self:end;grid-column:auto}
html[data-ui-theme] body.immersive-v35 .cm-languages {gap:13px;align-items:center;overflow:visible}
html[data-ui-theme] body.immersive-v35 .cm-language-primary {
  gap:12px;padding:0;border:0;border-radius:0;background:transparent;backdrop-filter:none;
}
html[data-ui-theme] body.immersive-v35 .cm-language-button {
  position:relative;min-height:44px;gap:7px;padding:10px 1px;border:0;border-radius:0;
  color:var(--v35-chrome-muted);background:transparent;font-size:12px;font-weight:400;
  box-shadow:none;transition:color .18s;letter-spacing:0;
}
html[data-ui-theme] body.immersive-v35 .cm-language-button::after {
  content:'';position:absolute;inset:auto 0 3px;height:1px;background:var(--v35-chrome-accent);
  transform:scaleX(0);transform-origin:center;transition:transform .18s;
}
html[data-ui-theme] body.immersive-v35 .cm-language-button[aria-pressed="true"],
html[data-ui-theme] body.immersive-v35 .cm-language-button:is(:hover,:focus-visible) {
  color:var(--v35-chrome-ink);background:transparent;border-color:transparent;box-shadow:none;
}
html[data-ui-theme] body.immersive-v35 .cm-language-button[aria-pressed="true"] {font-weight:600}
html[data-ui-theme] body.immersive-v35 .cm-language-button[aria-pressed="true"]::after,
html[data-ui-theme] body.immersive-v35 .cm-language-button:hover::after {transform:scaleX(1)}
html[data-ui-theme] body.immersive-v35 .cm-language-flag {
  width:20px;height:13.333px;border-radius:1px;box-shadow:0 0 0 1px var(--v35-chrome-line);
}
html[data-ui-theme] body.immersive-v35 .cm-language-more {max-width:120px}
html[data-ui-theme] body.immersive-v35 .cm-language-more > summary {
  gap:5px;padding:10px 5px;min-width:44px;min-height:44px;border:0;border-radius:4px;
  color:var(--v35-chrome-muted);font-size:12px;
}
html[data-ui-theme] body.immersive-v35 .cm-language-more-icon {display:flex;align-items:center;line-height:1}
html[data-ui-theme] body.immersive-v35 .cm-language-more-icon svg {display:block;width:18px;height:18px}
html[data-ui-theme] body.immersive-v35 .cm-language-more:not([data-selected="true"]) .cm-language-more-name {display:none}
html[data-ui-theme] body.immersive-v35 .cm-language-more > summary::after {
  content:'';width:4px;height:4px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;
  transform:rotate(45deg);margin:0 2px 3px;flex:none;
}
html[data-ui-theme] body.immersive-v35 .cm-language-more[open] > summary::after {transform:rotate(225deg);margin-bottom:0}
html[data-ui-theme] body.immersive-v35 .cm-language-more:is([open],[data-selected="true"]) > summary,
html[data-ui-theme] body.immersive-v35 .cm-language-more > summary:hover {
  background:var(--v35-chrome-hover);color:var(--v35-chrome-ink);border-color:transparent;
}
html[data-ui-theme] body.immersive-v35 .cm-language-options {
  top:calc(100% + 14px);padding:16px;gap:2px 8px;border-radius:8px;
  background:var(--v35-chrome);color:var(--v35-chrome-ink);border-color:var(--v35-chrome-line);
  box-shadow:0 18px 45px #0003;
}
html[data-ui-theme] body.immersive-v35 .cm-language-option {font-size:12px;font-weight:400;border-radius:3px;color:var(--v35-chrome-ink)}
html[data-ui-theme] body.immersive-v35 .cm-language-option:hover {background:var(--v35-chrome-hover);color:var(--v35-chrome-ink)}
html[data-ui-theme] body.immersive-v35 .cm-language-option[aria-pressed="true"] {
  color:var(--v35-chrome-ink);background:var(--v35-chrome-hover);border-color:var(--v35-chrome-accent);font-weight:600;
}
html[data-ui-theme] body.immersive-v35 #site-navigation {
  background:var(--v35-chrome);border-color:var(--v35-chrome-line);backdrop-filter:none;
}
html[data-ui-theme] body.immersive-v35 #site-navigation a {color:var(--v35-chrome-muted);font-size:12px;letter-spacing:.055em;min-height:44px}
html[data-ui-theme] body.immersive-v35 #site-navigation a[aria-current="page"] {color:var(--v35-chrome-ink)}
html[data-ui-theme] body.immersive-v35 #site-navigation a::after {background:var(--v35-chrome-accent);height:1px}
html[data-ui-theme] body.immersive-v35 #site-navigation .scene-motion-global {
  background:transparent;border:0;border-radius:4px;color:var(--v35-chrome-muted);font-size:12px;
}
html[data-ui-theme] body.immersive-v35 > header :is(a,button,summary):focus-visible,
html[data-ui-theme] body.immersive-v35 #site-navigation :is(a,button):focus-visible {
  outline:2px solid var(--v35-chrome-accent)!important;outline-offset:4px;
}
@media(min-width:1024px) and (max-width:1180px) {
  html[data-ui-theme] body.immersive-v35 > header {gap:16px;padding-inline:4vw}
  html[data-ui-theme] body.immersive-v35 .v25-header-safety {padding-inline-end:16px;gap:4px}
  html[data-ui-theme] body.immersive-v35 .cm-languages {gap:8px}
  html[data-ui-theme] body.immersive-v35 .cm-language-primary {gap:8px}
  html[data-ui-theme] body.immersive-v35 .cm-language-button {gap:5px}
}
@media(max-width:1023px) {
  html[data-ui-theme] body.immersive-v35 > header {grid-template-columns:minmax(0,1fr) auto}
  html[data-ui-theme] body.immersive-v35 .v25-header-safety {display:none!important}
  html[data-ui-theme] body.immersive-v35 .v25-mobile-safety {
    gap:0;padding:8px 5vw max(8px,env(safe-area-inset-bottom));
    background:var(--v35-chrome);border-color:var(--v35-chrome-line);box-shadow:0 -4px 20px #00000010;backdrop-filter:none;
  }
  html[data-ui-theme] body.immersive-v35 .v25-mobile-safety a[data-safety-route] {
    min-height:48px;padding:9px 12px;border:0;border-radius:0;box-shadow:none;
    font-size:14px;font-weight:500;letter-spacing:.03em;color:var(--v35-chrome-ink);background:transparent;
  }
  html[data-ui-theme] body.immersive-v35 .v25-mobile-safety a[data-safety-route]:first-child {color:var(--v35-danger);border-inline-end:1px solid var(--v35-chrome-line)}
  html[data-ui-theme] body.immersive-v35 .v25-mobile-safety a[data-safety-route]:is(:hover,:focus-visible) {background:var(--v35-chrome-hover);color:var(--v35-chrome-ink)}
  html[data-ui-theme] body.immersive-v35 .v25-mobile-safety a[data-safety-route]:first-child:is(:hover,:focus-visible) {color:var(--v35-danger)}
  html[data-ui-theme] body.immersive-v35 .v25-mobile-safety svg {width:18px;height:18px;flex:0 0 18px;stroke-width:1.6}
}
@media(max-width:760px) {
  html[data-ui-theme] body.immersive-v35 > header {padding:13px 5vw 5px;gap:9px;min-height:0}
  html[data-ui-theme] body.immersive-v35 > header .identity {grid-column:1/-1;gap:11px}
  html[data-ui-theme] body.immersive-v35 > header .mark {width:36px;height:36px;min-width:36px;line-height:34px;font-size:23px}
  html[data-ui-theme] body.immersive-v35 > header .brand-title {font-size:17px;letter-spacing:.2em}
  html[data-ui-theme] body.immersive-v35 > header .brand-subtitle {font-size:9px;margin-top:2px}
  html[data-ui-theme] body.immersive-v35 .header-language-cluster {grid-column:1/-1;justify-self:stretch;width:100%}
  html[data-ui-theme] body.immersive-v35 .cm-languages {justify-content:space-between;gap:10px}
  html[data-ui-theme] body.immersive-v35 .cm-language-primary {gap:20px;flex:0 1 auto}
  html[data-ui-theme] body.immersive-v35 .cm-language-button {font-size:12px;padding-inline:1px;gap:7px}
  html[data-ui-theme] body.immersive-v35 .cm-language-more[data-selected="true"] {max-width:78px}
  html[data-ui-theme] body.immersive-v35 .cm-language-options {top:calc(100% + 8px)}
  html[data-ui-theme] body.immersive-v35 #site-navigation {gap:23px;scrollbar-width:none}
  html[data-ui-theme] body.immersive-v35 #site-navigation::-webkit-scrollbar {display:none}
}
@media(max-width:380px) {
  html[data-ui-theme] body.immersive-v35 .cm-language-primary {gap:12px}
  html[data-ui-theme] body.immersive-v35 .cm-language-button {gap:5px}
  html[data-ui-theme] body.immersive-v35 .cm-language-more[data-selected="true"] {max-width:64px}
}
@media(prefers-reduced-motion:reduce) {
  html[data-ui-theme] body.immersive-v35 :is(.cm-language-button,.cm-language-button::after,.v25-header-safety>a) {transition:none}
}
@media(forced-colors:active) {
  html[data-ui-theme] body.immersive-v35 {--v35-chrome:Canvas;--v35-chrome-ink:CanvasText;--v35-chrome-muted:CanvasText;--v35-chrome-line:CanvasText;--v35-chrome-accent:Highlight;--v35-danger:LinkText;--v35-danger-line:CanvasText;--v35-danger-wash:Canvas;--v35-chrome-hover:Canvas}
}

/* Restore the section-local contrast veil suppressed by the older immersive skin. */
@media screen { html[data-ui-theme] body.immersive-v35 .city-hero::before {display:block} }

/* v35: a compact, readable daily desk, with one weather band and two columns.
   Scope to the prepared section so classic and interior pages stay intact. */
html[data-ui-theme] body.immersive-v34 .portal-home > #today-overview.v35-daily-desk {
  --desk-line:color-mix(in srgb,var(--ui-ink) 22%,transparent);
  --desk-faint:color-mix(in srgb,var(--ui-ink) 7%,transparent);
  --desk-surface:color-mix(in srgb,var(--ui-surface) 80%,var(--ui-bg));
  width:min(90%,1360px);max-width:1360px;margin:0 auto;padding:80px 0 0;
  color:var(--ui-ink);scroll-margin-top:calc(var(--v34-sticky-top) + 24px);
}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-heading {
  display:flex;justify-content:space-between;align-items:flex-end;gap:28px;
  margin:0 0 30px;padding:0 0 26px;border:0;border-bottom:1px solid var(--desk-line);
  background:transparent;box-shadow:none;border-radius:0;
}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-strap {
  font:600 10px/1.5 'Noto Sans JP',sans-serif;letter-spacing:.22em;color:var(--ui-link);margin:0 0 13px;
}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-heading h2 {
  margin:0;font:500 clamp(29px,3.8vw,50px)/1.35 'Noto Serif JP',serif;
  color:var(--ui-ink);letter-spacing:-.045em;text-wrap:balance;
}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .v35-daily-intro {
  font-size:14px;line-height:1.8;color:var(--ui-muted);margin:13px 0 0;letter-spacing:.01em;
}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .v35-daily-edition {
  display:grid;gap:8px;text-align:right;flex:none;padding-bottom:3px;color:var(--ui-muted);font-size:11px;line-height:1.6;
}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-date {
  font-size:13px;line-height:1.6;color:var(--ui-ink);white-space:normal;padding:0;font-variant-numeric:tabular-nums;
}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-grid {
  display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);gap:36px 42px;align-items:start;
}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-panel {
  min-width:0;display:flex;flex-direction:column;padding:0;margin:0;border:0;
  background:transparent;box-shadow:none;backdrop-filter:none;border-radius:0;transform:none;color:var(--ui-ink);
}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-panel h3 {
  font:500 23px/1.55 'Noto Serif JP',serif;letter-spacing:-.025em;margin:0;color:var(--ui-ink);
}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-place {
  font-size:12px;line-height:1.6;margin:4px 0 0;color:var(--ui-muted);
}
/* Weather is a horizontal instrument strip, not a tall, stretched card. */
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-weather {
  grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) auto;
  padding:26px 28px 21px;background:var(--desk-surface);border:1px solid var(--desk-line);border-radius:3px;
}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-panel-heading {
  display:flex;justify-content:space-between;align-items:center;gap:18px;grid-column:1/-1;
}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-weather > .cm-today-place {grid-column:1/-1;margin-top:-3px}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk button.cm-weather-refresh {
  display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;min-width:66px;
  padding:8px 12px;border:1px solid var(--desk-line);border-radius:3px;background:transparent;box-shadow:none;
  color:var(--ui-ink);font:500 12px/1.3 'Noto Sans JP',sans-serif;cursor:pointer;
}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk button.cm-weather-refresh::before {content:'↻';font:400 19px/1 sans-serif}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk button.cm-weather-refresh:hover {background:var(--desk-faint);border-color:var(--ui-link)}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk button.cm-weather-refresh:disabled {opacity:.5;cursor:wait}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-weather-body {
  grid-column:1/-1;display:grid;grid-template-columns:minmax(190px,.95fr) minmax(0,3.3fr);gap:18px 26px;align-items:center;margin-top:23px;
}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-weather-current {
  display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:10px;row-gap:15px;align-items:center;
  margin:0;padding:8px 0 10px;min-width:0;
}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-weather-current > .cm-weather-icon {width:49px;height:49px;color:var(--ui-link)}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-weather-temperature {
  font:400 clamp(49px,4.5vw,64px)/1 'Noto Serif JP',serif;letter-spacing:-.075em;white-space:nowrap;color:var(--ui-ink);
}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-weather-current-copy {
  grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 12px;font-size:11px;line-height:1.6;color:var(--ui-muted);
}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-weather-current-copy b {font-size:14px;line-height:1.6;font-weight:500;color:var(--ui-ink)}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-weather-days {
  display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:0;min-width:0;border-left:1px solid var(--desk-line);
}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-weather-day {
  display:flex;flex-direction:column;align-items:center;gap:5px;min-width:0;padding:5px 5px 6px;
  background:transparent;border:0;border-radius:0;box-shadow:none;text-align:center;
}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-weather-day:first-child {background:var(--desk-faint)}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-weather-day-date {font-size:13px;font-weight:600;line-height:1.4;gap:3px;color:var(--ui-ink)}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-weather-calendar {font-size:11px;color:var(--ui-muted)}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-weather-day .cm-weather-icon {width:31px;height:31px;margin:7px 0 3px;color:var(--ui-link)}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-weather-condition {font-size:11px;line-height:1.5;min-height:3em;display:flex;align-items:center;justify-content:center;color:var(--ui-muted);overflow-wrap:anywhere}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-weather-range {font-size:14px;line-height:1.5;gap:6px;color:var(--ui-ink);white-space:nowrap}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-weather-range b {font-weight:600}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-weather-range span {color:var(--ui-muted)}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-weather-rain {font-size:10px;line-height:1.5;color:var(--ui-muted)}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-weather-observed {
  grid-column:1/-1;font-size:11px;line-height:1.7;margin:0;color:var(--ui-muted);font-variant-numeric:tabular-nums;
}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-weather-status {
  grid-column:1/-1;margin:13px 0 0;font-size:13px;line-height:1.8;border-radius:2px;color:var(--ui-muted);
}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-weather-status:empty {display:none}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-weather-empty {grid-column:1/-1;min-height:90px;margin:0;padding:12px 0;font-size:15px;line-height:1.8}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-panel-footer {
  margin:22px 0 0;padding:16px 0 0;border-top:1px solid var(--desk-line);gap:6px;align-items:flex-start;display:flex;flex-direction:column;
}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-weather .cm-today-panel-footer {
  grid-column:1/-1;display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:flex-start;
  gap:5px 19px;margin-top:15px;padding-top:12px;
}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-weather .cm-today-panel-footer .cm-today-note {flex-basis:100%}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-note {font-size:11px;line-height:1.8;color:var(--ui-muted)}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk a.cm-today-link {font-size:12px;line-height:1.6;min-height:36px;color:var(--ui-link);font-weight:500;letter-spacing:0}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk a.cm-today-source {font-size:11px;line-height:1.7;color:var(--ui-muted)}
/* News and agenda share a baseline and a typographic system; no tall cards. */
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk :is(.cm-today-news,.cm-today-events) {border-top:2px solid var(--ui-link);padding-top:19px;margin:0}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-headlines {display:grid;grid-template-columns:1fr 1fr;gap:23px 22px;margin-top:21px;align-items:start}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-headline {padding:17px 0 0!important;margin:0!important;border:0!important;border-top:1px solid var(--desk-line)!important;background:transparent!important;box-shadow:none!important;border-radius:0!important;transform:none!important;min-width:0}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-headline:first-child {grid-column:1/-1;border-top:0!important;padding:0!important}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-meta {display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:5px 10px;font-size:11px;line-height:1.5;margin:0 0 9px;color:var(--ui-muted)}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-meta span {font-size:11px;color:var(--ui-link);letter-spacing:.05em;font-weight:500}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk :is(.cm-today-headline,.cm-today-event) h4 {font:500 16px/1.75 'Noto Serif JP',serif;margin:0;color:var(--ui-ink);text-wrap:pretty}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-headline:first-child h4 {font-size:25px;line-height:1.55;letter-spacing:-.03em;max-width:23em}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk a.cm-today-story-link {display:inline;color:var(--ui-ink);font-weight:500;text-decoration:none;background:none;box-shadow:none;border:0;border-radius:0;padding:0}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk a.cm-today-story-link:hover {text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px;color:var(--ui-link)}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-story-summary {font-size:13px;line-height:1.9;margin:10px 0 0;color:var(--ui-muted)}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-headline:first-child .cm-today-story-summary {font-size:14px;line-height:1.9;max-width:40em}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-event-list {margin-top:12px}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-event {display:grid;grid-template-columns:56px minmax(0,1fr);gap:17px;padding:16px 0!important;background:none!important;box-shadow:none!important;border:0!important;border-radius:0!important;margin:0!important;transform:none!important}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-event+.cm-today-event {border-top:1px solid var(--desk-line)!important}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-event-date {display:flex;align-items:flex-start;gap:3px;padding-top:4px;color:var(--ui-link)}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-event-date strong {font:400 39px/1 'Noto Serif JP',serif;letter-spacing:-.055em}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-event-date span {font-size:11px;line-height:1.5}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk :is(.cm-today-event-time,.cm-today-venue,.cm-today-event-note) {font-size:12px;line-height:1.8;margin:4px 0;color:var(--ui-muted)}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-event-time {font-variant-numeric:tabular-nums}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-event-actions {display:flex;gap:6px 18px;margin-top:1px;flex-wrap:wrap}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-event-actions a.cm-today-link {font-size:12px;min-height:34px}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-empty {font-size:14px;line-height:1.9;margin:18px 0;color:var(--ui-muted)}
html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk :is(a,button):focus-visible {outline:2px solid var(--ui-focus);outline-offset:5px}
@media(max-width:1120px) {
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-weather-body {grid-template-columns:1fr;gap:18px}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-weather-current {display:flex;flex-wrap:wrap;gap:12px 18px;padding:0}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-weather-current-copy {display:grid;gap:3px;margin-left:10px}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-weather-days {border-left:0;border-top:1px solid var(--desk-line);padding-top:15px}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-grid {gap:30px}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-headlines {grid-template-columns:1fr;gap:18px}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-headline:first-child {grid-column:auto}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-headline:first-child h4 {font-size:22px}
}
@media(max-width:760px) {
  html[data-ui-theme] body.immersive-v34 .portal-home > #today-overview.v35-daily-desk {width:90%;padding-top:54px}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-heading {display:block;margin-bottom:24px;padding-bottom:22px}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-strap {font-size:9px;margin-bottom:12px}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-heading h2 {font-size:clamp(29px,7.5vw,42px);line-height:1.45}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .v35-daily-intro {font-size:12px;line-height:1.9;margin-top:10px;max-width:29em}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .v35-daily-edition {display:flex;gap:8px 16px;align-items:baseline;text-align:left;flex-wrap:wrap;margin-top:16px;font-size:10px}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-date {font-size:12px}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-grid {grid-template-columns:1fr;gap:30px}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-panel h3 {font-size:21px}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-weather {padding:18px 16px 14px;grid-column:auto}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-panel-heading {gap:8px}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-panel-heading h3 {font-size:18px;line-height:1.7}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk button.cm-weather-refresh {font-size:11px;min-width:60px;padding:8px;gap:5px;flex:none}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-weather > .cm-today-place {font-size:11px;margin-top:4px}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-weather-body {margin-top:21px;gap:17px}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-weather-current {gap:11px}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-weather-current > .cm-weather-icon {width:42px;height:42px}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-weather-temperature {font-size:52px}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-weather-current-copy {font-size:10px;margin-left:0;gap:2px;max-width:96px}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-weather-current-copy b {font-size:12px}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-weather-days {grid-template-columns:repeat(4,minmax(0,1fr));row-gap:15px;padding-top:15px}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-weather-day {padding:7px 3px;gap:4px}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-weather-day:nth-child(n+5) {border-top:1px solid var(--desk-line);padding-top:14px}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-weather-day-date {font-size:12px}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-weather-calendar {font-size:10px}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-weather-day .cm-weather-icon {width:29px;height:29px;margin-block:5px 2px}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-weather-condition {font-size:10px;min-height:3em}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-weather-range {font-size:13px;gap:5px}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-weather-rain {font-size:10px;line-height:1.6;overflow-wrap:anywhere}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-weather-observed {font-size:10px;line-height:1.8}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-weather .cm-today-panel-footer {gap:5px 14px;margin-top:13px;padding-top:13px}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-note {font-size:11px;line-height:1.9}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-weather a.cm-today-source {font-size:10px}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-headlines {gap:21px;margin-top:20px}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-headline:first-child h4 {font-size:24px;line-height:1.6}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk :is(.cm-today-headline,.cm-today-event) h4 {font-size:17px}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-story-summary {font-size:13px;line-height:1.9}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-event {grid-template-columns:43px minmax(0,1fr);gap:13px;padding:18px 0!important}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-event-date strong {font-size:35px}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-event-actions {gap:5px 16px}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-event-actions a.cm-today-link {min-height:44px}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-panel-footer a.cm-today-link {min-height:44px}
}
@media(forced-colors:active) {
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk {--desk-line:CanvasText;--desk-faint:Canvas;--desk-surface:Canvas}
  html[data-ui-theme] body.immersive-v34 #today-overview.v35-daily-desk .cm-today-panel {background:Canvas!important;color:CanvasText!important}
}

/* A shared invitation, with a clear practice boundary and no card stack. */
html[data-ui-theme] body.immersive .cm-drill-bridge {
  display:grid;grid-template-columns:minmax(0,1.5fr) minmax(230px,.65fr);align-items:center;gap:clamp(28px,5vw,84px);
  padding:42px 0;background:transparent;color:var(--ui-ink);border:0;border-block:1px solid var(--ui-line);
  border-radius:0;box-shadow:none;backdrop-filter:none;
}
html[data-ui-theme] body.immersive .portal-home > .cm-drill-bridge {
  width:90%;max-width:1440px;margin:72px auto 0;padding-block:42px;
}
html[data-ui-theme] body.immersive .page:not(.portal-home) .cm-drill-bridge {margin-block:40px}
html[data-ui-theme] body.immersive .cm-drill-bridge-eyebrow {
  margin:0 0 13px;font:500 10px/1.5 'Noto Sans JP',sans-serif;letter-spacing:.2em;color:var(--ui-link);
}
html[data-ui-theme] body.immersive .cm-drill-bridge h2 {
  margin:0 0 17px;color:var(--ui-ink);font:500 clamp(25px,2.65vw,39px)/1.55 'Noto Serif JP',serif;
  letter-spacing:-.025em;text-wrap:balance;
}
html[data-ui-theme] body.immersive .cm-drill-bridge-description {
  max-width:45em;margin:0;color:var(--ui-muted);font-size:13px;line-height:1.9;
}
html[data-ui-theme] body.immersive .cm-drill-bridge-roles {
  display:flex;flex-wrap:wrap;gap:12px 25px;list-style:none;margin:23px 0 0;padding:0;
  color:var(--ui-ink);font-size:12px;line-height:1.5;
}
html[data-ui-theme] body.immersive .cm-drill-bridge-roles li {display:flex;align-items:baseline;gap:8px;padding:0;margin:0}
html[data-ui-theme] body.immersive .cm-drill-role-number {font-size:10px;font-weight:500;letter-spacing:.06em;color:var(--ui-muted)}
html[data-ui-theme] body.immersive .cm-drill-bridge-actions {display:flex;align-items:stretch;flex-direction:column;gap:12px;min-width:0}
html[data-ui-theme] body.immersive .cm-drill-bridge-app {
  display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:52px;padding:14px 20px;
  border:1px solid var(--ui-accent);border-radius:6px;background:var(--ui-accent);color:var(--ui-accent-ink);
  font:500 13px/1.6 'Noto Sans JP',sans-serif;text-decoration:none;box-shadow:none;
  transition:background .18s,color .18s,border-color .18s;
}
html[data-ui-theme] body.immersive .cm-drill-bridge-app:is(:hover,:focus-visible) {
  background:var(--ui-ink);color:var(--ui-bg);border-color:var(--ui-ink);box-shadow:none;transform:none;
}
html[data-ui-theme] body.immersive .cm-drill-bridge-arrow {font-size:19px;font-weight:400;flex:none}
html[data-ui-theme] body.immersive .cm-drill-bridge-guide {
  display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:9px 0;
  color:var(--ui-link);border-bottom:1px solid var(--ui-line);border-radius:0;background:none;
  font-size:12px;font-weight:500;line-height:1.6;text-decoration:none;box-shadow:none;
}
html[data-ui-theme] body.immersive .cm-drill-bridge-guide:hover {color:var(--ui-ink);border-color:var(--ui-link);background:none}
html[data-ui-theme] body.immersive .cm-drill-bridge-note {margin:2px 0 0;color:var(--ui-muted);font-size:11px;line-height:1.8}
html[data-ui-theme] body.immersive .cm-drill-bridge[lang="th"] :is(h2,p,a,li) {font-family:'Noto Sans Thai','Noto Sans JP',Tahoma,sans-serif}
@media(max-width:760px) {
  html[data-ui-theme] body.immersive .cm-drill-bridge {grid-template-columns:minmax(0,1fr);gap:26px;padding-block:30px}
  html[data-ui-theme] body.immersive .portal-home > .cm-drill-bridge {margin-top:48px;padding-block:30px}
  html[data-ui-theme] body.immersive .cm-drill-bridge h2 {font-size:27px;line-height:1.65;letter-spacing:-.03em}
  html[data-ui-theme] body.immersive .cm-drill-bridge-roles {gap:10px 20px;margin-top:20px}
  html[data-ui-theme] body.immersive .cm-drill-bridge-actions {gap:8px}
  html[data-ui-theme] body.immersive .cm-drill-bridge-note {font-size:12px}
}
@media(prefers-reduced-motion:reduce) {html[data-ui-theme] body.immersive .cm-drill-bridge-app {transition:none}}
@media print {html[data-ui-theme] body.immersive .cm-drill-bridge {display:block;break-inside:avoid}}

/* Music journal: date-led stories, a numbered venue index and artist typography. */
html[data-ui-theme] body.immersive .cm-live-edition {margin:42px 0 64px;color:var(--ui-ink)}
html[data-ui-theme] body.immersive .cm-live-edition * {box-sizing:border-box}
html[data-ui-theme] body.immersive .cm-live-intro {
  position:relative;overflow:hidden;isolation:isolate;display:block;min-height:0;padding:38px 0 30px;margin:0;
  border:0;border-top:1px solid var(--ui-line);background:transparent;backdrop-filter:none;
}
html[data-ui-theme] body.immersive .cm-live-intro::after {
  content:'';position:absolute;z-index:-1;right:-50px;top:-90px;width:320px;height:320px;border:1px solid var(--ui-line);
  border-radius:50%;box-shadow:0 0 0 17px var(--ui-bg),0 0 0 18px var(--ui-line),0 0 0 51px var(--ui-bg),0 0 0 52px var(--ui-line);opacity:.3;
}
html[data-ui-theme] body.immersive .cm-live-kicker {
  margin:0 0 13px;color:var(--ui-link);font:500 10px/1.5 'Noto Sans JP',sans-serif;letter-spacing:.19em;
}
html[data-ui-theme] body.immersive .cm-live-intro h2 {
  max-width:19em;margin:0 0 18px;font:500 clamp(32px,4.5vw,58px)/1.4 'Noto Serif JP',serif;
  letter-spacing:-.035em;color:var(--ui-ink);text-wrap:balance;
}
html[data-ui-theme] body.immersive .cm-live-intro > p:not(.cm-live-kicker) {margin:0;color:var(--ui-muted);font-size:14px;line-height:1.9}
html[data-ui-theme] body.immersive .cm-live-jumps {display:flex;flex-wrap:wrap;gap:6px 25px;border-bottom:1px solid var(--ui-line);padding:0 0 20px}
html[data-ui-theme] body.immersive .cm-live-jumps button {
  min-height:44px;padding:8px 0;border:0;border-bottom:1px solid transparent;border-radius:0;background:transparent;box-shadow:none;
  color:var(--ui-link);font:500 12px/1.5 'Noto Sans JP',sans-serif;cursor:pointer;text-align:start;
}
html[data-ui-theme] body.immersive .cm-live-jumps button:hover {color:var(--ui-ink);border-bottom-color:var(--ui-link);background:transparent;transform:none}
html[data-ui-theme] body.immersive .cm-live-dates {margin:48px 0 0}
html[data-ui-theme] body.immersive .cm-live-dates > h3,
html[data-ui-theme] body.immersive .cm-live-group-head h3 {margin:0;color:var(--ui-ink);font:500 clamp(25px,3vw,36px)/1.55 'Noto Serif JP',serif;letter-spacing:-.025em}
html[data-ui-theme] body.immersive .cm-live-date-lead {margin:12px 0 24px;color:var(--ui-muted);font-size:12px;line-height:1.8}
html[data-ui-theme] body.immersive .cm-live-dated-events {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px}
html[data-ui-theme] body.immersive .cm-live-date-story {display:grid;grid-template-columns:64px minmax(0,1fr);gap:17px;align-items:start;padding:27px 0;border-top:1px solid var(--ui-line);margin:0;background:transparent;border-radius:0;box-shadow:none}
html[data-ui-theme] body.immersive .cm-live-date-stamp {display:grid;justify-items:center;gap:4px;padding:12px 6px;border-block:1px solid var(--ui-link);color:var(--ui-link);font:500 11px/1.3 'Noto Sans JP',sans-serif;white-space:nowrap}
html[data-ui-theme] body.immersive .cm-live-date-stamp strong {font:400 35px/1.05 'Noto Serif JP',serif;font-variant-numeric:tabular-nums}
html[data-ui-theme] body.immersive .cm-live-event-meta {display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;margin:0 0 9px;font:500 11px/1.5 'Noto Sans JP',sans-serif;color:var(--ui-muted)}
html[data-ui-theme] body.immersive .cm-live-ongoing {color:var(--ui-link)}
html[data-ui-theme] body.immersive .cm-live-date-body h4 {margin:0 0 12px;font:500 22px/1.5 'Noto Serif JP',serif;letter-spacing:-.015em;color:var(--ui-ink)}
html[data-ui-theme] body.immersive .cm-live-event-place {margin:0 0 8px;color:var(--ui-ink);font-size:12px;line-height:1.75}
html[data-ui-theme] body.immersive .cm-live-event-note {margin:0;color:var(--ui-muted);font-size:12px;line-height:1.75}
html[data-ui-theme] body.immersive .cm-live-event-link {display:inline-flex;align-items:center;min-height:44px;padding:10px 0;margin-top:7px;color:var(--ui-link);text-decoration:none;font-size:12px}
html[data-ui-theme] body.immersive .cm-live-event-link:hover {text-decoration:underline;text-underline-offset:4px}
html[data-ui-theme] body.immersive .cm-live-empty {grid-column:1/-1;padding:24px 0;color:var(--ui-muted);font-size:14px;line-height:1.9;border-block:1px solid var(--ui-line)}
html[data-ui-theme] body.immersive .cm-live-group {margin:65px 0 0}
html[data-ui-theme] body.immersive .cm-live-group-head {display:block;min-height:0;padding:0 0 27px;margin:0;background:transparent;border:0;backdrop-filter:none}
html[data-ui-theme] body.immersive .cm-live-group-head > p:not(.cm-live-kicker) {margin:10px 0 0;font-size:13px;line-height:1.8;color:var(--ui-muted)}
html[data-ui-theme] body.immersive .cm-live-records {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:38px}
html[data-ui-theme] body.immersive .cm-live-record {display:flex;gap:17px;min-width:0;margin:0;padding:26px 0;border:0;border-top:1px solid var(--ui-line);border-radius:0;background:transparent;box-shadow:none}
html[data-ui-theme] body.immersive .cm-live-record-number {flex:0 0 30px;padding-top:3px;color:var(--ui-muted);font:400 24px/1.4 'Noto Serif JP',serif;font-variant-numeric:tabular-nums}
html[data-ui-theme] body.immersive .cm-live-record-body {min-width:0}
html[data-ui-theme] body.immersive .cm-live-record h4 {margin:0 0 10px;color:var(--ui-ink);font:500 23px/1.5 'Noto Serif JP',serif;letter-spacing:-.025em;overflow-wrap:anywhere}
html[data-ui-theme] body.immersive .cm-live-record-summary {margin:0 0 10px;font-size:13px;line-height:1.85;color:var(--ui-muted)}
html[data-ui-theme] body.immersive .cm-live-schedule {margin:12px 0 0;color:var(--ui-link);font-size:12px;line-height:1.8}
html[data-ui-theme] body.immersive .cm-live-schedule-unconfirmed {color:var(--ui-muted)}
html[data-ui-theme] body.immersive .cm-live-restricted {display:table;margin:10px 0 0;padding:0 0 0 8px;border-inline-start:2px solid var(--ui-line);font-size:12px;line-height:1.7;color:var(--ui-muted)}
html[data-ui-theme] body.immersive .cm-live-source-links {display:flex;flex-wrap:wrap;gap:0 18px;padding:0;margin:10px 0 0}
html[data-ui-theme] body.immersive .cm-live-source-links a {display:inline-flex;align-items:center;min-height:44px;padding:8px 0;color:var(--ui-link);font:500 12px/1.5 'Noto Sans JP',sans-serif;text-decoration:none;white-space:nowrap}
html[data-ui-theme] body.immersive .cm-live-source-links a:hover {text-decoration:underline;text-underline-offset:4px}
html[data-ui-theme] body.immersive .cm-live-group-artists {padding:35px 0 12px;border-block:1px solid var(--ui-line);background:linear-gradient(110deg,transparent,color-mix(in srgb,var(--ui-link) 6%,transparent),transparent)}
html[data-ui-theme] body.immersive .cm-live-group-artists .cm-live-records {grid-template-columns:repeat(2,minmax(0,1fr));column-gap:40px}
html[data-ui-theme] body.immersive .cm-live-record-artists {padding:20px 0 26px;border:0}
html[data-ui-theme] body.immersive .cm-live-record-artists h4 {font-size:clamp(24px,3.1vw,37px);letter-spacing:-.035em}
html[data-ui-theme] body.immersive .cm-live-record-festivals h4 {font-size:28px}
html[data-ui-theme] body.immersive .cm-live-group-markets .cm-live-record {border-top:2px solid var(--ui-link)}
html[data-ui-theme] body.immersive .cm-live-record-markets h4 {font-size:30px}
html[data-ui-theme] body.immersive .cm-live-footnote {display:flex;align-items:start;justify-content:space-between;gap:30px;margin:24px 0 0;padding:20px 0;border-top:1px solid var(--ui-line);background:transparent;color:var(--ui-muted);backdrop-filter:none}
html[data-ui-theme] body.immersive .cm-live-footnote p {max-width:65em;margin:0;font-size:12px;line-height:1.8}
html[data-ui-theme] body.immersive .cm-live-footnote time {flex:none;font-size:11px;white-space:nowrap;line-height:1.8}
html[data-ui-theme] body.immersive .cm-live-existing-title {margin:50px 0 25px;font-size:26px;color:var(--ui-ink)}
html[data-ui-theme] body.immersive .portal-home > .cm-live-home {
  display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:36px;width:90%;max-width:1440px;
  margin:65px auto 0;padding:32px 0;border-block:1px solid var(--ui-line);border-radius:0;background:transparent;box-shadow:none;
}
html[data-ui-theme] body.immersive .cm-live-home h2 {margin:0 0 12px;font:500 clamp(27px,3.5vw,42px)/1.5 'Noto Serif JP',serif;letter-spacing:-.03em;color:var(--ui-ink)}
html[data-ui-theme] body.immersive .cm-live-home-lead {margin:0;font-size:13px;line-height:1.8;color:var(--ui-muted)}
html[data-ui-theme] body.immersive .cm-live-home-next {margin:14px 0 0;font-size:12px;line-height:1.8;color:var(--ui-link)}
html[data-ui-theme] body.immersive .cm-live-home-link {display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:52px;padding:13px 18px;border:1px solid var(--ui-line);border-radius:5px;background:var(--ui-surface);color:var(--ui-link);text-decoration:none;font-size:13px;font-weight:500;box-shadow:none}
html[data-ui-theme] body.immersive .cm-live-home-link span {font-size:20px;font-weight:400}
html[data-ui-theme] body.immersive .cm-live-home-link:hover {background:var(--ui-hover);border-color:var(--ui-link);color:var(--ui-ink)}
html[data-ui-theme] body.immersive [data-live-edition][lang="th"] :is(h2,h3,h4,p,a,button) {font-family:'Noto Sans Thai','Noto Sans JP',Tahoma,sans-serif}
@media(max-width:850px) {
 html[data-ui-theme] body.immersive .cm-live-dated-events {grid-template-columns:minmax(0,1fr)}
 html[data-ui-theme] body.immersive .cm-live-records {column-gap:25px}
}
@media(max-width:640px) {
 html[data-ui-theme] body.immersive .cm-live-intro {padding-top:25px}
 html[data-ui-theme] body.immersive .cm-live-intro h2 {font-size:33px;line-height:1.55}
 html[data-ui-theme] body.immersive .cm-live-jumps {gap:0 20px}
 html[data-ui-theme] body.immersive .cm-live-group {margin-top:46px}
 html[data-ui-theme] body.immersive .cm-live-records,
 html[data-ui-theme] body.immersive .cm-live-group-artists .cm-live-records {grid-template-columns:minmax(0,1fr)}
 html[data-ui-theme] body.immersive .cm-live-record {padding-block:23px}
 html[data-ui-theme] body.immersive .cm-live-group-artists {padding-block:25px 0}
 html[data-ui-theme] body.immersive .cm-live-record-artists + .cm-live-record-artists {border-top:1px solid var(--ui-line)}
 html[data-ui-theme] body.immersive .cm-live-date-story {grid-template-columns:51px minmax(0,1fr);gap:15px}
 html[data-ui-theme] body.immersive .cm-live-date-stamp strong {font-size:31px}
 html[data-ui-theme] body.immersive .cm-live-footnote {flex-direction:column;gap:10px}
 html[data-ui-theme] body.immersive .portal-home > .cm-live-home {grid-template-columns:minmax(0,1fr);gap:22px;margin-top:45px}
 html[data-ui-theme] body.immersive .cm-live-home-link {justify-self:start}
}
@media print {html[data-ui-theme] body.immersive .cm-live-jumps {display:none}}

/* A cleared, exact venue photograph is an editorial inset, never a show poster. */
html[data-ui-theme] body.immersive .cm-live-venue-photo {float:inline-end;width:43%;max-width:185px;margin:0 0 15px 19px;padding:0;background:transparent;border:0;border-radius:0;overflow:visible;box-shadow:none}
html[data-ui-theme] body.immersive .cm-live-venue-photo  img {display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:3px}
html[data-ui-theme] body.immersive .cm-live-venue-photo figcaption {padding:0;color:var(--ui-muted);background:transparent;font-size:11px;line-height:1.7}
html[data-ui-theme] body.immersive .cm-live-photo-credit summary {min-height:44px;display:list-item;list-style-position:inside;padding:9px 0;font-size:11px;cursor:pointer;color:var(--ui-muted)}
html[data-ui-theme] body.immersive .cm-live-photo-credit p {margin:0 0 8px;font-size:11px;line-height:1.7;overflow-wrap:anywhere;color:var(--ui-muted)}
html[data-ui-theme] body.immersive .cm-live-photo-credit a {color:var(--ui-link);text-decoration:underline;text-underline-offset:3px}
html[data-ui-theme] body.immersive .cm-live-record-body::after {content:'';display:block;clear:both}
html[data-ui-theme] body.immersive .cm-live-record[data-live-photo] .cm-live-source-links {clear:both}
@media(max-width:380px) {html[data-ui-theme] body.immersive .cm-live-venue-photo {width:46%;margin-inline-start:13px}}

/* Interior pages use an editorial reading width. Local maps get a full row,
   never another multi-column layout inside the description column. */
html[data-ui-theme] body.immersive-v34 .page.v36-interior {
  width:min(92%,1280px);max-width:1280px;margin:30px auto 70px;padding:38px clamp(20px,4vw,55px) 58px;
  border:1px solid var(--ui-line);border-radius:8px;background:var(--ui-bg);backdrop-filter:none;box-shadow:none;
  font-size:15px;line-height:1.8;color:var(--ui-ink);overflow:visible;min-width:0;
}
html[data-ui-theme] body.immersive-v34 .v36-interior :is(section,article,aside,div,nav,form,figure,dl) {min-width:0}
html[data-ui-theme] body.immersive-v34 .v36-interior :is(h1,h2,h3,h4,p,li,dd,dt,a) {overflow-wrap:anywhere;word-break:normal}
html[data-ui-theme] body.immersive-v34 .v36-interior :is(p,li,dd) {line-height:1.9}
html[data-ui-theme] body.immersive-v34 .v36-interior :is(h1,.detail-title-block h1) {
  font:500 clamp(30px,3.9vw,54px)/1.5 'Noto Serif JP',serif;letter-spacing:-.035em;
  max-width:100%;margin:10px 0 22px;color:var(--ui-ink);text-wrap:balance;
}
html[data-ui-theme] body.immersive-v34 .v36-interior :is(h2,.v36-overview-title) {font-size:clamp(23px,2.4vw,31px);line-height:1.6;letter-spacing:-.025em;color:var(--ui-ink)}
html[data-ui-theme] body.immersive-v34 .v36-interior h3 {font-size:20px;line-height:1.7;color:var(--ui-ink)}
html[data-ui-theme] body.immersive-v34 .v36-interior > .back-link {display:inline-flex;align-items:center;min-height:44px;font-size:13px;margin:0 0 17px;padding:0;color:var(--ui-link)}
html[data-ui-theme] body.immersive-v34 .v36-interior .detail-title-block {margin:0 0 25px;padding:0;border:0;background:none}
html[data-ui-theme] body.immersive-v34 .v36-interior .detail-title-block .eyebrow {font-size:12px;letter-spacing:.12em;margin:0 0 11px;color:var(--ui-link)}
html[data-ui-theme] body.immersive-v34 .v36-interior .detail-area {font-size:14px;line-height:1.8;margin:0 0 20px;color:var(--ui-muted)}
html[data-ui-theme] body.immersive-v34 .v36-interior > :is(.media-banner,.route-photo-banner) {display:block;width:100%;max-width:none;margin:22px 0 36px;overflow:hidden;border-radius:5px;border:1px solid var(--ui-line);box-shadow:none}
html[data-ui-theme] body.immersive-v34 .v36-interior > :is(.media-banner,.route-photo-banner) img {display:block;width:100%;height:clamp(260px,33vw,450px);object-fit:cover;max-width:100%}
html[data-ui-theme] body.immersive-v34 .v36-interior :is(.media-banner,.route-photo-banner,.v25-photo) figcaption {font-size:11px;line-height:1.7;padding:10px 13px;white-space:normal;overflow-wrap:anywhere}
html[data-ui-theme] body.immersive-v34 .v36-interior :is(.media-banner,.route-photo-banner,.v25-photo) figcaption a {display:inline;min-height:0;text-underline-offset:3px}
html[data-ui-theme] body.immersive-v34 .v36-interior .detail-layout {
  display:grid;grid-template-columns:minmax(0,1.5fr) minmax(290px,1fr);gap:clamp(26px,4vw,50px);
  align-items:start;width:100%;margin:38px 0;min-width:0;
}
html[data-ui-theme] body.immersive-v34 .v36-interior .detail-body {display:block;width:auto;max-width:none;padding:0;margin:0;background:transparent;border:0;border-radius:0;box-shadow:none;backdrop-filter:none;min-width:0}
html[data-ui-theme] body.immersive-v34 .v36-interior .v36-overview-title {margin:0 0 20px;font-size:25px;line-height:1.6}
html[data-ui-theme] body.immersive-v34 .v36-interior .detail-lead {font-size:20px;line-height:1.85;font-weight:500;margin:0 0 21px;color:var(--ui-ink)}
html[data-ui-theme] body.immersive-v34 .v36-interior .verified-facts {padding-inline-start:22px;margin:0;font-size:15px;line-height:1.95;color:var(--ui-muted)}
html[data-ui-theme] body.immersive-v34 .v36-interior .verified-facts li {margin-bottom:12px;padding-inline-start:3px}
html[data-ui-theme] body.immersive-v34 .v36-interior .detail-facts {width:100%;padding:25px;margin:0;background:var(--ui-surface);border:1px solid var(--ui-line);border-radius:5px;box-shadow:none;backdrop-filter:none;position:static;min-width:0}
html[data-ui-theme] body.immersive-v34 .v36-interior .detail-facts h2 {font-size:22px;line-height:1.6;margin:0 0 19px}
html[data-ui-theme] body.immersive-v34 .v36-interior .detail-facts dl {display:block;margin:0;font-size:14px;line-height:1.85}
html[data-ui-theme] body.immersive-v34 .v36-interior .detail-facts dt {font-size:12px;font-weight:600;color:var(--ui-muted);margin:18px 0 5px;padding:0;border:0}
html[data-ui-theme] body.immersive-v34 .v36-interior .detail-facts dt:first-child {margin-top:0}
html[data-ui-theme] body.immersive-v34 .v36-interior .detail-facts dd {font-size:14px;margin:0;padding:0;color:var(--ui-ink);border:0}
html[data-ui-theme] body.immersive-v34 .v36-interior .detail-checked {font-size:11px;line-height:1.7;margin:23px 0 13px;color:var(--ui-muted)}
html[data-ui-theme] body.immersive-v34 .v36-interior .detail-official {display:inline-flex;align-items:center;justify-content:center;min-height:46px;max-width:100%;padding:11px 18px;font-size:13px;line-height:1.6;border-radius:3px;text-align:center}
html[data-ui-theme] body.immersive-v34 .v36-interior .source-disclosure {padding:14px 0 0;margin-top:16px;border:0;border-top:1px solid var(--ui-line);background:transparent;box-shadow:none;border-radius:0;color:var(--ui-muted);font-size:12px}
html[data-ui-theme] body.immersive-v34 .v36-interior .source-disclosure summary {min-height:44px;line-height:1.8;padding:10px 0;font-size:13px;color:var(--ui-ink);cursor:pointer}
html[data-ui-theme] body.immersive-v34 .v36-interior .source-disclosure :is(p,a) {font-size:12px;line-height:1.85;overflow-wrap:anywhere}
html[data-ui-theme] body.immersive-v34 .v36-interior .source-disclosure .unknown-title {font-size:14px;margin:16px 0 7px}
html[data-ui-theme] body.immersive-v34 .v36-interior :is(.cm-destination,.cm-map-location) {margin:30px 0;padding:25px;background:var(--ui-surface);border:1px solid var(--ui-line);border-radius:5px;box-shadow:none;min-width:0}
html[data-ui-theme] body.immersive-v34 .v36-interior .cm-destination h2 {margin:0 0 17px;font-size:25px}
html[data-ui-theme] body.immersive-v34 .v36-interior .cm-destination-text {font-size:15px;line-height:1.85;min-width:0}
html[data-ui-theme] body.immersive-v34 .v36-interior .cm-destination-text strong {font-size:18px;line-height:1.7}
html[data-ui-theme] body.immersive-v34 .v36-interior .cm-destination-text p {font-size:14px;line-height:1.8}
html[data-ui-theme] body.immersive-v34 .v36-interior .cm-destination.is-presenting .cm-destination-text {font-size:clamp(24px,3.5vw,36px);padding:clamp(17px,3vw,32px);line-height:1.7}
html[data-ui-theme] body.immersive-v34 .v36-interior .cm-destination.is-presenting .cm-destination-text :is(strong,p) {font-size:inherit;line-height:inherit}
html[data-ui-theme] body.immersive-v34 .v36-interior .cm-actions {display:flex;flex-wrap:wrap;gap:10px;min-width:0;margin-top:18px}
html[data-ui-theme] body.immersive-v34 .v36-interior .cm-action {min-height:44px;max-width:100%;font-size:13px;line-height:1.6;padding:11px 15px;border-radius:3px;white-space:normal;text-align:center}
/* Full-width local map: its own row, independent of the text/facts layout. */
html[data-ui-theme] body.immersive-v34 .v36-interior > .v36-detail-map {margin:36px 0;padding:28px;width:100%;max-width:none;border-radius:5px;box-shadow:none;background:var(--ui-surface)}
html[data-ui-theme] body.immersive-v34 .v36-interior .v36-detail-map .cm-map-intro h2 {font-size:27px;margin-bottom:10px}
html[data-ui-theme] body.immersive-v34 .v36-interior .v36-detail-map .cm-map-intro .cm-map-eyebrow {display:none}
html[data-ui-theme] body.immersive-v34 .v36-interior .v36-detail-map .cm-map-lead {font-size:14px;line-height:1.9;max-width:65em;margin:0 0 20px}
html[data-ui-theme] body.immersive-v34 .v36-interior .v36-detail-map .cm-map-workspace {display:grid;grid-template-columns:minmax(0,1fr);gap:22px;width:100%;min-width:0}
html[data-ui-theme] body.immersive-v34 .v36-interior .v36-detail-map .cm-map-frame {height:400px;min-height:300px;width:100%;border-radius:4px;max-width:100%}
html[data-ui-theme] body.immersive-v34 .v36-interior .v36-detail-map .cm-map-status {font-size:12px;line-height:1.8;margin:0 0 17px}
html[data-ui-theme] body.immersive-v34 .v36-interior .v36-detail-map .cm-map-selected {padding:22px;border-radius:4px;max-width:none;margin:0;min-width:0}
html[data-ui-theme] body.immersive-v34 .v36-interior .v36-detail-map .cm-map-selected.v36-current-location {padding:0;border:0;background:transparent;box-shadow:none}
html[data-ui-theme] body.immersive-v34 .v36-interior .v36-current-location > :is(.cm-map-photo,.cm-map-card-number,.cm-map-card-meta,h3,.cm-map-summary,.cm-map-address) {display:none}
html[data-ui-theme] body.immersive-v34 .v36-interior .v36-detail-map .cm-map-selected:not(.v36-current-location) .cm-map-photo {max-width:420px;margin-bottom:22px}
html[data-ui-theme] body.immersive-v34 .v36-interior .v36-detail-map .cm-map-selected:not(.v36-current-location) .cm-map-photo img {height:240px}
html[data-ui-theme] body.immersive-v34 .v36-interior .v36-detail-map :is(.cm-map-summary,.cm-map-address) {font-size:14px;line-height:1.85;max-width:70ch}
html[data-ui-theme] body.immersive-v34 .v36-interior .v36-detail-map :is(.cm-map-position-note,.cm-map-muted) {font-size:12px;line-height:1.9}
html[data-ui-theme] body.immersive-v34 .v36-interior .v36-detail-map .cm-map-card-actions {display:flex;flex-wrap:wrap;gap:10px;margin:16px 0 8px}
html[data-ui-theme] body.immersive-v34 .v36-interior .v36-detail-map .cm-map-card-actions a {font-size:13px;min-height:44px;padding:11px 16px;border-radius:3px;max-width:100%;white-space:normal}
html[data-ui-theme] body.immersive-v34 .v36-interior .v36-detail-map .cm-map-card-actions a[hidden] {display:none!important}
html[data-ui-theme] body.immersive-v34 .v36-interior .v36-detail-map .cm-map-full-link {margin-top:20px;border-radius:3px;min-height:44px;font-size:13px}
/* Restaurant, organisation and narrative pages keep one readable content body. */
html[data-ui-theme] body.immersive-v34 .v36-interior .restaurant-detail-body {max-width:none;padding:28px;margin:28px 0;background:var(--ui-surface);border:1px solid var(--ui-line);border-radius:5px;box-shadow:none;backdrop-filter:none}
html[data-ui-theme] body.immersive-v34 .v36-interior .restaurant-facts {display:grid;grid-template-columns:minmax(120px,.3fr) minmax(0,1fr);gap:15px 25px;padding:22px 0;margin:25px 0;border:0;border-block:1px solid var(--ui-line);border-radius:0;box-shadow:none;backdrop-filter:none;background:transparent;font-size:15px}
html[data-ui-theme] body.immersive-v34 .v36-interior .restaurant-facts dt {font-size:13px;font-weight:600;color:var(--ui-muted)}
html[data-ui-theme] body.immersive-v34 .v36-interior .restaurant-facts dd {font-size:15px;margin:0;color:var(--ui-ink)}
html[data-ui-theme] body.immersive-v34 .v36-interior :is(.org-detail-summary,.v26-story-body) {max-width:820px;font-size:16px;line-height:1.95;margin:24px 0 35px}
html[data-ui-theme] body.immersive-v34 .v36-interior .org-detail-summary {font-size:19px}
html[data-ui-theme] body.immersive-v34 .v36-interior .v26-story-body > p {font-size:16px;line-height:1.95}
html[data-ui-theme] body.immersive-v34 .v36-interior :is(.organization-source,.official-actions,.cm-organization-next,.cm-organization-entry) {padding:25px;border-radius:5px;background:var(--ui-surface);box-shadow:none;margin-block:26px}
html[data-ui-theme] body.immersive-v34 .v36-interior :is(.organization-source,.official-actions,.cm-organization-next,.cm-organization-entry) :is(p,li) {font-size:14px;line-height:1.9}
html[data-ui-theme] body.immersive-v34 .v36-interior .venue-gallery {margin:35px 0 40px;padding:0}
html[data-ui-theme] body.immersive-v34 .v36-interior .venue-gallery h2 {margin-bottom:20px}
html[data-ui-theme] body.immersive-v34 .v36-interior .venue-gallery-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
html[data-ui-theme] body.immersive-v34 .v36-interior .venue-gallery-grid .media-banner {margin:0;border-radius:4px;max-width:100%}
html[data-ui-theme] body.immersive-v34 .v36-interior .venue-gallery-grid img {width:100%;height:220px;object-fit:cover}
html[data-ui-theme] body.immersive-v34 .v36-interior .venue-social {margin:0 0 20px}
/* Browsing and guide families: columns respond to the available reading width. */
html[data-ui-theme] body.immersive-v34 .v36-interior :is(.place-grid,.organization-grid,.directory-grid,.v26-news-grid,.v26-event-grid) {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px;align-items:stretch}
html[data-ui-theme] body.immersive-v34 .v36-interior :is(.place-card,.organization-card,.directory-card,.v26-news-card) {padding:22px;min-width:0;max-width:100%;margin:0;transform:none;border-radius:5px;box-shadow:none;background:var(--ui-surface);backdrop-filter:none}
html[data-ui-theme] body.immersive-v34 .v36-interior :is(.place-card,.organization-card,.directory-card,.v26-news-card) > .media-banner {margin:-22px -22px 19px;max-width:none;width:calc(100% + 44px);border:0;border-bottom:1px solid var(--ui-line);border-radius:4px 4px 0 0}
html[data-ui-theme] body.immersive-v34 .v36-interior :is(.place-card,.organization-card,.directory-card,.v26-news-card) > .media-banner img {width:100%;height:200px;object-fit:cover}
html[data-ui-theme] body.immersive-v34 .v36-interior :is(.place-card,.organization-card,.directory-card,.v26-news-card) h3 {font-size:22px;line-height:1.65}
html[data-ui-theme] body.immersive-v34 .v36-interior :is(.place-card,.organization-card,.directory-card,.v26-news-card) p {font-size:14px;line-height:1.85}
html[data-ui-theme] body.immersive-v34 .v36-interior :is(.place-card-link,.guide-results .place-card-link) {padding:0;min-height:0;max-width:100%}
html[data-ui-theme] body.immersive-v34 .v36-interior :is(.place-card-meta,.card-kicker,.v26-news-category,.v26-news-date,.directory-card small) {font-size:11px;line-height:1.8}
html[data-ui-theme] body.immersive-v34 .v36-interior :is(.guide-filters,.directory-filters,.v26-news-filter,.organization-filter,.category-chooser) {padding:20px;gap:15px;border-radius:4px;box-shadow:none;max-width:100%;margin-block:24px;background:var(--ui-surface)}
html[data-ui-theme] body.immersive-v34 .v36-interior :is(.guide-filters,.directory-filters,.v26-news-filter,.organization-filter,.category-chooser) :is(input,select,button) {font-size:15px;min-height:46px;min-width:0;max-width:100%;border-radius:3px;white-space:normal;line-height:1.5}
html[data-ui-theme] body.immersive-v34 .v36-interior .category-pills {display:flex;flex-wrap:wrap;gap:8px 16px;margin:22px 0;min-width:0}
html[data-ui-theme] body.immersive-v34 .v36-interior .category-pills a {display:inline-flex;align-items:center;min-height:44px;max-width:100%;padding:8px 10px;white-space:normal;font-size:13px;line-height:1.6;border-radius:3px}
html[data-ui-theme] body.immersive-v34 .v36-interior :is(.v26-living-topic,.cm-option,.guide-reporting,.guide-policy) {padding:25px;border-radius:5px;box-shadow:none;background:var(--ui-surface);backdrop-filter:none}
html[data-ui-theme] body.immersive-v34 .v36-interior :is(.v26-living-topic,.cm-option,.guide-reporting,.guide-policy) :is(p,li) {font-size:15px;line-height:1.95}
html[data-ui-theme] body.immersive-v34 .v36-interior .v26-living-topic summary {min-height:44px;font-size:14px;line-height:1.85;white-space:normal}
html[data-ui-theme] body.immersive-v34 .v36-interior :is(.v26-living-links,.official-action-links,.org-actions,.guide-more,.join-bottom-nav) {display:flex;flex-wrap:wrap;gap:10px 16px;min-width:0}
html[data-ui-theme] body.immersive-v34 .v36-interior :is(.v26-living-links,.official-action-links,.org-actions,.guide-more,.join-bottom-nav) a {min-height:44px;max-width:100%;font-size:14px;line-height:1.8;white-space:normal}
html[data-ui-theme] body.immersive-v34 .v36-interior .v36-table-scroll {overflow-x:auto;max-width:100%;min-width:0;overscroll-behavior-x:contain}
html[data-ui-theme] body.immersive-v34 .v36-interior .v36-table-scroll table {width:100%;min-width:580px}
html[data-ui-theme] body.immersive-v34 .v36-interior :is(.portal-trust,.portal-translation,.translation-note,.org-independence,.v26-news-footnote,.hours-caveat) {font-size:12px;line-height:1.9;margin-block:24px;max-width:85ch}
html[data-ui-theme] body.immersive-v34 .v36-interior .join-return-nav {margin-top:30px;padding-top:20px;border-top:1px solid var(--ui-line)}
html[data-ui-theme] body.immersive-v34 .v36-interior :is(a,button,select,input,summary):focus-visible {outline:3px solid var(--ui-focus);outline-offset:4px}
@media(max-width:1050px) {
  html[data-ui-theme] body.immersive-v34 .v36-interior :is(.place-grid,.organization-grid,.directory-grid,.v26-news-grid,.v26-event-grid) {grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
  html[data-ui-theme] body.immersive-v34 .v36-interior .detail-layout {grid-template-columns:minmax(0,1fr);gap:26px}
  html[data-ui-theme] body.immersive-v34 .v36-interior .detail-facts {max-width:none;padding:25px}
  html[data-ui-theme] body.immersive-v34 .v36-interior .detail-facts dl {display:grid;grid-template-columns:150px minmax(0,1fr);gap:13px 23px}
  html[data-ui-theme] body.immersive-v34 .v36-interior .detail-facts dt {margin:0;line-height:1.9}
  html[data-ui-theme] body.immersive-v34 .v36-interior .venue-gallery-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px) {
  html[data-ui-theme] body.immersive-v34 .page.v36-interior {width:94%;margin:18px auto 45px;padding:25px 5vw 45px;border-radius:5px}
  html[data-ui-theme] body.immersive-v34 .v36-interior :is(h1,.detail-title-block h1) {font-size:clamp(27px,7.1vw,39px);line-height:1.55;letter-spacing:-.035em;margin:8px 0 19px}
  html[data-ui-theme] body.immersive-v34 .v36-interior h2 {font-size:24px;line-height:1.65}
  html[data-ui-theme] body.immersive-v34 .v36-interior h3 {font-size:20px}
  html[data-ui-theme] body.immersive-v34 .v36-interior > :is(.media-banner,.route-photo-banner) {margin:20px 0 28px}
  html[data-ui-theme] body.immersive-v34 .v36-interior > :is(.media-banner,.route-photo-banner) img {height:clamp(215px,57vw,350px)}
  html[data-ui-theme] body.immersive-v34 .v36-interior :is(.media-banner,.route-photo-banner,.v25-photo) figcaption {font-size:10px;padding:8px 10px;line-height:1.8}
  html[data-ui-theme] body.immersive-v34 .v36-interior .detail-layout {margin:28px 0;gap:25px}
  html[data-ui-theme] body.immersive-v34 .v36-interior .v36-overview-title {font-size:22px;margin-bottom:15px}
  html[data-ui-theme] body.immersive-v34 .v36-interior .detail-lead {font-size:18px;line-height:1.9}
  html[data-ui-theme] body.immersive-v34 .v36-interior .verified-facts {font-size:14px;line-height:1.95;padding-inline-start:20px}
  html[data-ui-theme] body.immersive-v34 .v36-interior .detail-facts {padding:21px}
  html[data-ui-theme] body.immersive-v34 .v36-interior .detail-facts dl {display:block}
  html[data-ui-theme] body.immersive-v34 .v36-interior .detail-facts dt {font-size:12px;margin:19px 0 5px}
  html[data-ui-theme] body.immersive-v34 .v36-interior .detail-facts dt:first-child {margin-top:0}
  html[data-ui-theme] body.immersive-v34 .v36-interior .detail-facts dd {font-size:14px}
  html[data-ui-theme] body.immersive-v34 .v36-interior :is(.cm-destination,.cm-map-location,.restaurant-detail-body,.organization-source,.official-actions,.cm-organization-next,.cm-organization-entry) {padding:21px;margin:24px 0}
  html[data-ui-theme] body.immersive-v34 .v36-interior .cm-destination-text strong {font-size:17px}
  html[data-ui-theme] body.immersive-v34 .v36-interior .cm-actions {gap:8px}
  html[data-ui-theme] body.immersive-v34 .v36-interior .cm-action {font-size:12px;padding:10px 12px}
  html[data-ui-theme] body.immersive-v34 .v36-interior > .v36-detail-map {padding:18px;margin:26px 0}
  html[data-ui-theme] body.immersive-v34 .v36-interior .v36-detail-map .cm-map-intro h2 {font-size:24px}
  html[data-ui-theme] body.immersive-v34 .v36-interior .v36-detail-map .cm-map-lead {font-size:13px;line-height:1.9}
  html[data-ui-theme] body.immersive-v34 .v36-interior .v36-detail-map .cm-map-workspace {gap:17px}
  html[data-ui-theme] body.immersive-v34 .v36-interior .v36-detail-map .cm-map-frame {height:320px;min-height:280px}
  html[data-ui-theme] body.immersive-v34 .v36-interior .v36-detail-map .cm-map-status {font-size:11px;line-height:1.8}
  html[data-ui-theme] body.immersive-v34 .v36-interior .v36-detail-map .cm-map-controls {gap:7px}
  html[data-ui-theme] body.immersive-v34 .v36-interior .v36-detail-map .cm-map-controls button {font-size:12px;min-height:44px;padding:8px 10px}
  html[data-ui-theme] body.immersive-v34 .v36-interior .v36-detail-map .cm-map-controls [data-map-action^="zoom-"] {font-size:22px;min-width:44px}
  html[data-ui-theme] body.immersive-v34 .v36-interior .v36-detail-map .cm-map-card-actions {gap:8px}
  html[data-ui-theme] body.immersive-v34 .v36-interior .v36-detail-map .cm-map-card-actions a {font-size:12px;padding:10px 12px;flex:1 1 auto}
  html[data-ui-theme] body.immersive-v34 .v36-interior .v36-detail-map .cm-map-selected:not(.v36-current-location) {padding:17px}
  html[data-ui-theme] body.immersive-v34 .v36-interior .restaurant-facts {grid-template-columns:minmax(0,1fr);gap:5px;padding:20px 0}
  html[data-ui-theme] body.immersive-v34 .v36-interior .restaurant-facts dd {margin-bottom:14px;font-size:14px}
  html[data-ui-theme] body.immersive-v34 .v36-interior .restaurant-facts dd:last-child {margin-bottom:0}
  html[data-ui-theme] body.immersive-v34 .v36-interior :is(.org-detail-summary,.v26-story-body) {font-size:16px;line-height:1.95}
  html[data-ui-theme] body.immersive-v34 .v36-interior .v26-story-body > p {font-size:15px;line-height:1.95}
  html[data-ui-theme] body.immersive-v34 .v36-interior :is(.place-grid,.organization-grid,.directory-grid,.v26-news-grid,.v26-event-grid) {grid-template-columns:minmax(0,1fr);gap:21px}
  html[data-ui-theme] body.immersive-v34 .v36-interior :is(.place-card,.organization-card,.directory-card,.v26-news-card) {padding:21px}
  html[data-ui-theme] body.immersive-v34 .v36-interior :is(.place-card,.organization-card,.directory-card,.v26-news-card) > .media-banner {margin:-21px -21px 18px;width:calc(100% + 42px)}
  html[data-ui-theme] body.immersive-v34 .v36-interior :is(.place-card,.organization-card,.directory-card,.v26-news-card) > .media-banner img {height:215px}
  html[data-ui-theme] body.immersive-v34 .v36-interior :is(.guide-filters,.directory-filters,.v26-news-filter,.organization-filter,.category-chooser) {display:grid;grid-template-columns:minmax(0,1fr);padding:18px;gap:14px}
  html[data-ui-theme] body.immersive-v34 .v36-interior :is(.guide-filters,.directory-filters,.v26-news-filter,.organization-filter,.category-chooser) :is(input,select,button,label) {grid-column:1;max-width:100%;width:100%;font-size:16px}
  html[data-ui-theme] body.immersive-v34 .v36-interior .category-pills {gap:5px 8px}
  html[data-ui-theme] body.immersive-v34 .v36-interior .category-pills a {font-size:12px;padding:7px 9px}
  html[data-ui-theme] body.immersive-v34 .v36-interior .venue-gallery-grid {grid-template-columns:minmax(0,1fr);gap:19px}
  html[data-ui-theme] body.immersive-v34 .v36-interior .venue-gallery-grid img {height:250px}
  html[data-ui-theme] body.immersive-v34 .v36-interior :is(.v26-living-topic,.cm-option,.guide-reporting,.guide-policy) {padding:21px}
  html[data-ui-theme] body.immersive-v34 .v36-interior :is(.v26-living-topic,.cm-option,.guide-reporting,.guide-policy) :is(p,li) {font-size:14px}
  html[data-ui-theme] body.immersive-v34 .v36-interior :is(.cm-option-grid,.v26-living-topics,.join-options,.join-detail-layout,.v25-video-grid,.v25-credits-grid) {grid-template-columns:minmax(0,1fr)}
}
@media(prefers-reduced-motion:reduce) {
  html[data-ui-theme] body.immersive-v34 .v36-interior * {scroll-behavior:auto!important;transition:none!important}
}
@media(forced-colors:active) {
  html[data-ui-theme] body.immersive-v34 .page.v36-interior {background:Canvas!important;color:CanvasText!important;border-color:CanvasText}
}

/* v36 exact-location media and honest editorial identity panels. */
body.immersive .v36-venue-photo,body.immersive .v36-venue-identity{margin:0 0 18px;overflow:hidden;border:1px solid var(--ui-line,rgba(160,166,165,.3));border-radius:10px;background:var(--ui-surface,#132435)}
body.immersive .v36-venue-photo img,body.immersive .v36-venue-identity>svg{display:block;width:100%;height:clamp(155px,18vw,220px);object-fit:cover;filter:none;opacity:1}
body.immersive .organization-card .v36-venue-photo,body.immersive .organization-card .v36-venue-identity{margin-bottom:16px}
body.immersive .v36-venue-photo>figcaption,body.immersive .v36-venue-identity>figcaption{display:flex;flex-wrap:wrap;justify-content:space-between;gap:5px 12px;padding:8px 12px;color:var(--ui-muted,#aababa);font-size:11px;line-height:1.65;background:var(--ui-surface,#132435)}
body.immersive .v36-venue-photo .v36-photo-credit{width:100%;margin:0;padding:0;border:0;background:none;box-shadow:none}
body.immersive .v36-photo-credit>summary{min-height:32px;display:list-item;cursor:pointer;font-size:11px;padding:4px 0;line-height:1.6;color:inherit;white-space:normal}
body.immersive .v36-photo-credit>p{padding:4px 0 8px;margin:0;font:inherit;max-width:none}
body.immersive .v36-official-photo-link,body.immersive .v36-photo-credit a{color:inherit;text-underline-offset:4px;text-decoration:underline;overflow-wrap:anywhere}
body.immersive .v36-official-photo-link{display:inline-flex;align-items:center;min-height:40px;font-size:12px;font-weight:600}
body.immersive .v36-photo-status{display:flex;align-items:center;font-size:11px}
body.immersive .portal-page>.v36-venue-photo img,body.immersive .portal-page>.v36-venue-detail-media img{height:clamp(220px,32vw,430px)}
body.immersive .portal-page>.v36-venue-identity>svg{height:clamp(165px,24vw,280px)}
html[data-ui-theme="day"] body.immersive .v36-venue-photo>figcaption,html[data-ui-theme="day"] body.immersive .v36-venue-identity>figcaption,html[data-ui-theme="warm"] body.immersive .v36-venue-photo>figcaption,html[data-ui-theme="warm"] body.immersive .v36-venue-identity>figcaption{background:#f5f3eb;color:#425356}
@media(max-width:600px){body.immersive .v36-venue-photo img,body.immersive .v36-venue-identity>svg{height:180px}body.immersive .v36-venue-photo>figcaption,body.immersive .v36-venue-identity>figcaption{padding:8px 10px}.v36-photo-status{width:100%}}

/* Safety sections share portal tokens. Header/mobile links retain v35 chrome. */
html[data-ui-theme] body.immersive-v36-safety .v41-help-panel {
  --help-entry-bg:#9b292f;--help-entry-ink:#fff9f2;
  margin:18px 0 22px;padding:0;border:0;background:none;box-shadow:none;min-width:0;
}
html[data-ui-theme] body.immersive-v36-safety .v41-help-entry {
  display:flex;align-items:center;justify-content:space-between;gap:8px 14px;min-height:56px;
  width:100%;max-width:100%;box-sizing:border-box;padding:12px 17px;
  border:1px solid var(--help-entry-bg);border-radius:7px;background:var(--help-entry-bg);
  color:var(--help-entry-ink)!important;text-decoration:none;text-shadow:none;box-shadow:none;
  font:600 16px/1.55 'Noto Sans JP',sans-serif;
}
html[data-ui-theme] body.immersive-v36-safety .v41-help-entry strong {
  flex:1;min-width:0;margin:0;color:inherit;font:inherit;overflow-wrap:anywhere;
}
html[data-ui-theme] body.immersive-v36-safety .v41-help-practice-tag {
  display:inline-block;flex:none;padding:3px 8px;border:1px solid #fff9f280;border-radius:4px;
  font:600 11px/1.6 'Noto Sans JP',sans-serif;color:inherit;white-space:nowrap;
}
html[data-ui-theme] body.immersive-v36-safety .v41-help-entry:hover {background:#802127;border-color:#802127}
html[data-ui-theme] body.immersive-v36-safety .v41-help-entry:focus-visible {outline:3px solid var(--ui-focus);outline-offset:4px}
html[data-ui-theme] body.immersive-v36-safety .v41-help-note {margin:9px 0 0;color:var(--ui-muted);font:400 13px/1.8 'Noto Sans JP',sans-serif;text-shadow:none}
html[data-ui-theme] body.immersive-v36-safety .v36-safety-choices {
  padding:clamp(20px,3vw,36px)!important;margin:28px 0!important;
  border:1px solid var(--ui-line)!important;background:var(--ui-surface-glass)!important;
  border-radius:18px!important;color:var(--ui-ink)!important;box-shadow:none;
}
html[data-ui-theme] body.immersive-v36-safety .v36-safety-choices :is(h2,h3,p,summary) {color:var(--ui-ink)!important;text-shadow:none}
html[data-ui-theme] body.immersive-v36-safety .v36-safety-choices h2 {font:500 clamp(23px,2.4vw,30px)/1.5 'Noto Serif JP',serif;margin:0 0 26px;letter-spacing:.03em}
html[data-ui-theme] body.immersive-v36-safety .v36-safety-options {display:grid;grid-template-columns:minmax(0,1fr);gap:20px}
html[data-ui-theme] body.immersive-v36-safety .portal-emergency .v36-safety-options {grid-template-columns:minmax(0,1fr)}
html[data-ui-theme] body.immersive-v36-safety .v36-safety-option {display:flex;flex-direction:column;gap:13px;padding:22px!important;background:var(--ui-surface)!important;border:1px solid var(--ui-line)!important;border-radius:12px!important;box-shadow:none;min-width:0;transform:none}
html[data-ui-theme] body.immersive-v36-safety .v36-safety-option h3 {font-size:20px;margin:0;line-height:1.6}
html[data-ui-theme] body.immersive-v36-safety .v36-safety-option p {font-size:16px;line-height:1.8;margin:0 0 8px;color:var(--ui-muted)!important}
html[data-ui-theme] body.immersive-v36-safety :is(.v36-help-entry,.v36-practice-entry) {display:flex;align-items:center;justify-content:space-between;min-height:56px;margin-top:auto;padding:13px 16px;border:1px solid var(--ui-line);border-radius:8px;background:var(--ui-surface-soft);color:var(--ui-link)!important;font-size:16px;font-weight:700;text-decoration:none;line-height:1.6;text-shadow:none}
html[data-ui-theme] body.immersive-v36-safety .v36-help-entry {flex-direction:column;align-items:flex-start;background:var(--ui-danger-bg);color:var(--ui-danger-ink)!important}
html[data-ui-theme] body.immersive-v36-safety .v36-help-entry strong {font-size:19px;color:inherit}
html[data-ui-theme] body.immersive-v36-safety .v36-help-entry small {font-size:13px;color:inherit;font-weight:500}
html[data-ui-theme] body.immersive-v36-safety .v36-practice-entry:hover {background:var(--ui-hover)}
html[data-ui-theme] body.immersive-v36-safety .v36-safety-boundary {font-size:14px;line-height:1.7;margin:23px 0 12px;color:var(--ui-muted)!important}
html[data-ui-theme] body.immersive-v36-safety .v36-safety-limits {border-top:1px solid var(--ui-line);margin-top:12px;padding-top:7px}
html[data-ui-theme] body.immersive-v36-safety .v36-safety-limits summary {min-height:48px;cursor:pointer;font-size:15px;padding:12px 0;line-height:1.6;font-weight:600}
html[data-ui-theme] body.immersive-v36-safety .v36-safety-limits p {font-size:15px;line-height:1.8;margin:4px 0;color:var(--ui-muted)!important}
html[data-ui-theme] body.immersive-v36-safety :is(.v36-help-entry,.v36-practice-entry,.v36-safety-limits summary):focus-visible {outline:3px solid var(--ui-focus);outline-offset:4px}
@media(max-width:1023px) {
  html[data-ui-theme] body.immersive-v36-safety .v36-safety-options {grid-template-columns:1fr}
}
@media(max-width:600px) {
  html[data-ui-theme] body.immersive-v36-safety .portal-emergency .v36-safety-options {grid-template-columns:1fr}
  html[data-ui-theme] body.immersive-v36-safety .v36-safety-option {padding:20px 16px!important}
  html[data-ui-theme] body.immersive-v36-safety .v41-help-entry {gap:8px;padding:11px 13px;font-size:15px;min-height:54px}
  html[data-ui-theme] body.immersive-v36-safety .v41-help-practice-tag {padding-inline:6px;font-size:10px}
}
@media(forced-colors:active) {
  html[data-ui-theme] body.immersive-v36-safety :is(.v36-help-entry,.v36-practice-entry,.v41-help-entry) {border:2px solid ButtonText!important;background:ButtonFace!important;color:ButtonText!important;forced-color-adjust:auto}
  html[data-ui-theme] body.immersive-v36-safety .v41-help-practice-tag {border-color:ButtonText}
}
/* One full-width entry, about the area of the four phone tiles on desktop. */
html[data-ui-theme] body.immersive-v36-safety .v41-help-entry {
  min-height:280px;padding:32px;flex-direction:column;justify-content:center;align-items:center;
  gap:22px;text-align:center;font-size:clamp(30px,4vw,60px);line-height:1.45;
}
html[data-ui-theme] body.immersive-v36-safety .v41-help-entry strong {flex:0;overflow-wrap:normal;text-wrap:balance}
html[data-ui-theme] body.immersive-v36-safety .v41-help-practice-tag {font-size:18px;padding:6px 18px}
html[data-ui-theme] body.immersive-v36-safety .v41-help-note {font-size:16px;line-height:1.85}
@media(max-width:600px){html[data-ui-theme] body.immersive-v36-safety .v41-help-entry{min-height:220px;padding:24px 16px;font-size:32px}html[data-ui-theme] body.immersive-v36-safety .v41-help-practice-tag{font-size:16px}}

/* The discovery directory follows the portal's four appearance palettes. */
body.immersive .v39-catalog,body.immersive .v39-place-detail,body.immersive .v39-related{color:var(--ui-ink);font-family:'Noto Sans JP',sans-serif;min-width:0}
body.immersive .v39-catalog{margin:clamp(44px,7vw,100px) auto;padding:clamp(22px,4.5vw,64px);max-width:1480px;background:var(--ui-surface-glass);border-top:1px solid var(--ui-line);border-bottom:1px solid var(--ui-line);scroll-margin-top:calc(var(--v34-sticky-top,130px) + 16px)}
body.immersive .v39-catalog *{box-sizing:border-box}
body.immersive .v39-catalog [hidden]{display:none!important}
body.immersive .v39-catalog-heading{position:relative;max-width:760px;margin-bottom:32px}
body.immersive .v39-eyebrow{color:var(--ui-link);font-size:11px;line-height:1.6;letter-spacing:.13em;font-weight:700;margin:0 0 14px}
body.immersive .v39-catalog h2,body.immersive .v39-place-detail h1,body.immersive .v39-related h2,body.immersive .v39-browse-title{font-family:'Noto Serif JP',serif;letter-spacing:.015em;text-wrap:balance;color:var(--ui-ink)}
body.immersive .v39-catalog-heading h2{font-size:clamp(27px,3.4vw,46px);line-height:1.5;margin:0 0 16px}
body.immersive .v39-catalog-intro{font-size:15px;line-height:1.9;color:var(--ui-muted);margin:0;max-width:650px}
body.immersive .v39-category-rail{display:flex;flex-wrap:wrap;gap:9px;padding:3px 3px 20px;margin:0 -3px 22px;border-bottom:1px solid var(--ui-line);min-width:0;max-width:100%;scrollbar-width:thin;scrollbar-color:var(--ui-line) transparent}
body.immersive .v39-category{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;min-width:44px;max-width:100%;padding:10px 14px;border:1px solid var(--ui-line);border-radius:5px;background:var(--ui-surface);color:var(--ui-ink);font:500 13px/1.55 'Noto Sans JP',sans-serif;text-decoration:none;cursor:pointer;transition:background .18s,color .18s,border-color .18s}
body.immersive .v39-category:hover{background:var(--ui-hover);border-color:var(--ui-accent)}
body.immersive .v39-category[aria-pressed=true]{background:var(--ui-accent);color:var(--ui-accent-ink);border-color:var(--ui-accent)}
body.immersive .v39-category-count{font-variant-numeric:tabular-nums;font-size:11px;min-width:18px;text-align:center;padding-inline-start:7px;border-inline-start:1px solid currentColor}
body.immersive .v39-filters{display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,.4fr);align-items:end;gap:20px;margin-bottom:20px}
body.immersive .v39-filters label{display:block;color:var(--ui-muted);font-size:12px;font-weight:600;margin-bottom:8px;line-height:1.6}
body.immersive .v39-catalog :is(input,select){width:100%;max-width:100%;min-width:0;min-height:50px;padding:12px 15px;border:1px solid var(--ui-line);border-radius:4px;background:var(--ui-bg);color:var(--ui-ink);font:16px/1.5 'Noto Sans JP',sans-serif}
body.immersive .v39-catalog input::placeholder{color:var(--ui-muted);opacity:1}
body.immersive .v39-results-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;min-height:44px;margin-bottom:20px}
body.immersive .v39-result-count{font-size:13px;letter-spacing:.03em;color:var(--ui-muted);margin:0;line-height:1.8;font-variant-numeric:tabular-nums}
body.immersive .v39-reset{min-height:44px;padding:8px 0;border:0;background:none;color:var(--ui-link);font:500 13px/1.5 'Noto Sans JP',sans-serif;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
body.immersive .v39-discovery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 22px;align-items:stretch;min-width:0}
body.immersive .v39-place{display:flex;flex-direction:column;min-width:0;margin:0;background:var(--ui-surface);border:1px solid var(--ui-line);border-radius:4px;overflow:hidden;box-shadow:0 5px 24px #00000008;transition:transform .2s ease,box-shadow .2s ease;position:relative}
body.immersive .v39-place:hover{transform:translateY(-3px);box-shadow:var(--ui-shadow)}
body.immersive .v39-photo{margin:0;padding:0;position:relative;min-width:0;min-height:0;border:0;background:var(--ui-surface-soft)}
body.immersive .v39-photo img{display:block;width:100%;height:220px;object-fit:cover;border:0;border-radius:0;transition:transform .6s ease}
body.immersive .v39-photo>figcaption{margin:0;padding:0;font-size:10px;line-height:1.5;background:var(--ui-surface-soft);color:var(--ui-muted)}
body.immersive .v39-photo-credit summary{cursor:pointer;min-height:44px;display:flex;align-items:center;padding:8px 16px;color:var(--ui-muted);font-size:11px}
body.immersive .v39-photo-credit summary::before{content:'+';margin-inline-end:8px;font-size:16px}
body.immersive .v39-photo-credit[open] summary::before{content:'−'}
body.immersive .v39-photo-credit p{margin:0;padding:0 16px 12px;color:var(--ui-muted);font-size:11px;overflow-wrap:anywhere;line-height:1.8}
body.immersive .v39-photo-credit a{color:var(--ui-link);min-height:44px;display:inline-flex;align-items:center}
body.immersive .v39-place-body{padding:23px;display:flex;flex-direction:column;flex:1;min-width:0}
body.immersive .v39-place-meta{display:flex;gap:8px 12px;flex-wrap:wrap;margin:0 0 11px;font-size:11px;line-height:1.7;font-weight:600;color:var(--ui-muted)}
body.immersive .v39-place-meta>span+span{padding-inline-start:12px;border-inline-start:1px solid var(--ui-line)}
body.immersive .v39-place h3{font-family:'Noto Serif JP',serif;font-weight:600;font-size:clamp(19px,1.55vw,24px);line-height:1.65;color:var(--ui-ink);margin:0 0 12px;overflow-wrap:anywhere;text-wrap:balance}
body.immersive a.v39-place-title{display:inline-block;min-height:44px;padding:3px 0;color:var(--ui-ink);text-decoration:none}
body.immersive a.v39-place-title:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
body.immersive .v39-place-description{color:var(--ui-muted);font-size:13px;line-height:1.9;margin:0 0 22px;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
body.immersive .v39-card-links{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:auto;padding-top:13px;border-top:1px solid var(--ui-line)}
body.immersive .v39-card-links a{min-height:44px;display:inline-flex;align-items:center;color:var(--ui-link);font-size:12px;font-weight:600;line-height:1.6;text-decoration:none;padding:7px 0}
body.immersive .v39-card-links a:hover{text-decoration:underline;text-underline-offset:4px}
body.immersive .v39-card-links .v39-map-link{padding-inline:12px;border:1px solid var(--ui-line);border-radius:3px}
body.immersive .v39-place-featured{grid-column:span 2;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}
body.immersive .v39-place-featured>.v39-photo{display:flex;flex-direction:column}
body.immersive .v39-place-featured>.v39-photo img{height:100%;min-height:290px;flex:1;position:absolute;inset:0}
body.immersive .v39-place-featured>.v39-photo>figcaption{position:relative;margin-top:auto;z-index:1;background:var(--ui-surface)}
body.immersive .v39-place-featured .v39-place-body{padding:clamp(22px,2.8vw,38px)}
body.immersive .v39-place-featured h3{font-size:clamp(23px,2vw,29px)}
body.immersive .v39-place-featured .v39-place-description{-webkit-line-clamp:6}
body.immersive .v39-identity{position:relative;isolation:isolate;min-height:220px;padding:23px;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;background:var(--ui-surface-soft);color:var(--ui-ink);border-bottom:1px solid var(--ui-line)}
body.immersive .v39-identity::before{content:'';position:absolute;z-index:-1;width:190px;height:190px;border:1px solid var(--ui-line);border-radius:50%;inset-inline-end:-65px;top:10px}
body.immersive .v39-identity::after{content:'';position:absolute;z-index:-1;width:190px;height:190px;border:1px solid var(--ui-line);border-radius:50%;inset-inline-end:-100px;top:45px}
body.immersive .v39-identity-category{font-size:10px;letter-spacing:.2em;color:var(--ui-muted);font-weight:600}
body.immersive .v39-identity-name{font-family:'Noto Serif JP',serif;font-size:clamp(24px,2.3vw,35px);line-height:1.2;max-width:88%;text-wrap:balance;overflow-wrap:anywhere;margin:20px 0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
body.immersive .v39-identity-area{font-size:10px;letter-spacing:.06em;color:var(--ui-muted)}
body.immersive .v39-photo>figcaption.v39-photo-note{padding:11px 16px;min-height:44px;display:flex;align-items:center;font-size:10px;line-height:1.6}
body.immersive .v39-photo-note:has(.v39-official-photo){padding-block:0}
body.immersive .v39-official-photo{display:inline-flex;align-items:center;min-height:44px;color:var(--ui-link);font-size:11px;line-height:1.6;text-decoration:underline;text-underline-offset:3px}
body.immersive .v39-empty{grid-column:1/-1;min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:36px 20px;border:1px dashed var(--ui-line);border-radius:5px}
body.immersive .v39-empty h3{font-size:21px;color:var(--ui-ink);margin:0 0 12px;line-height:1.7;text-wrap:balance}
body.immersive .v39-empty p{font-size:14px;line-height:1.9;color:var(--ui-muted);margin:0}
body.immersive .v39-catalog-foot{display:flex;justify-content:center;margin-top:36px}
body.immersive .v39-more{min-height:54px;padding:13px 34px;border:1px solid var(--ui-accent);border-radius:4px;background:var(--ui-accent);color:var(--ui-accent-ink);font:600 14px/1.7 'Noto Sans JP',sans-serif;cursor:pointer}
body.immersive .v39-more:hover{filter:brightness(1.08)}
body.immersive .v39-browse-title{margin:35px 0 0;font-size:clamp(30px,4vw,54px);line-height:1.5}
body.immersive .v39-browse-page>.v39-catalog{margin-top:30px}
body.immersive .v39-detail-heading{max-width:1050px;margin:40px auto 30px}
body.immersive .v39-detail-heading h1{font-size:clamp(32px,4.5vw,64px);line-height:1.5;margin:0 0 15px;overflow-wrap:anywhere}
body.immersive .v39-detail-original{font-size:15px;color:var(--ui-muted);letter-spacing:.03em}
body.immersive .v39-place-detail>.v39-photo{max-width:1200px;margin:0 auto}
body.immersive .v39-place-detail>.v39-photo img{height:clamp(280px,48vw,620px);object-fit:cover}
body.immersive .v39-place-detail>.v39-photo-portrait img{object-fit:contain}
body.immersive .v39-place-detail>.v39-photo>.v39-identity{min-height:300px;padding:clamp(30px,6vw,70px)}
body.immersive .v39-place-detail>.v39-photo .v39-identity-name{font-size:clamp(32px,6vw,76px)}
body.immersive .v39-detail-copy{max-width:860px;margin:36px auto 0}
body.immersive .v39-detail-lead{font-size:clamp(16px,1.7vw,20px);line-height:2.1;white-space:pre-line;color:var(--ui-ink);margin:0 0 30px}
body.immersive .v39-detail-actions{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:36px}
body.immersive .v39-detail-actions a{display:flex;align-items:center;justify-content:center;min-height:52px;border:1px solid var(--ui-accent);padding:12px 23px;border-radius:4px;font-size:14px;line-height:1.7;text-decoration:none}
body.immersive .v39-primary-link{background:var(--ui-accent);color:var(--ui-accent-ink)}
body.immersive .v39-secondary-link{background:var(--ui-surface);color:var(--ui-link)}
body.immersive .v39-sources{border-top:1px solid var(--ui-line);border-bottom:1px solid var(--ui-line);padding:4px 0;color:var(--ui-muted);font-size:12px}
body.immersive .v39-sources summary{padding:12px 0;min-height:44px;cursor:pointer;font-size:13px;color:var(--ui-link)}
body.immersive .v39-sources a{min-height:44px;display:inline-flex;align-items:center;overflow-wrap:anywhere;color:var(--ui-link)}
body.immersive .v39-sources time{display:block;margin:10px 0 15px}
body.immersive .v39-visit-info h2{font-family:'Noto Serif JP',serif;font-size:24px}
body.immersive .v39-visit-info dl{display:grid;grid-template-columns:minmax(100px,.3fr) 1fr;gap:12px;padding:20px 0;border-top:1px solid var(--ui-line)}
body.immersive .v39-visit-info dt{font-size:13px;color:var(--ui-muted)}
body.immersive .v39-visit-info dd{font-size:14px;margin:0;color:var(--ui-ink);overflow-wrap:anywhere}
body.immersive .v39-related{margin:70px auto 0;max-width:1200px;padding-top:30px;border-top:1px solid var(--ui-line)}
body.immersive .v39-related h2{font-size:29px;margin:0 0 24px}
body.immersive .v39-related .v39-discovery-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
body.immersive .v39-related .v39-place-body{padding:18px}
body.immersive .v39-related .v39-place h3{font-size:19px}
body.immersive :is(.v39-catalog,.v39-place-detail,.v39-related) :is(a,button,input,select,summary):focus-visible{outline:3px solid var(--ui-focus);outline-offset:3px}
@media(min-width:1500px){body.immersive .v39-discovery-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:1050px){body.immersive .v39-discovery-grid,body.immersive .v39-related .v39-discovery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}body.immersive .v39-place-featured{grid-column:span 2}body.immersive .v39-place h3{font-size:22px}}
@media(max-width:760px){
  body.immersive .v39-catalog{padding:26px 18px;margin-block:45px}
  body.immersive .v39-category-rail{flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;padding-bottom:14px;margin-bottom:20px}
  body.immersive .v39-category{flex:0 0 auto;white-space:nowrap;scroll-snap-align:start;max-width:none}
  body.immersive .v39-catalog-heading h2{font-size:29px}
  body.immersive .v39-catalog-intro{font-size:14px}
  body.immersive .v39-filters{grid-template-columns:minmax(0,1fr);gap:14px}
  body.immersive .v39-discovery-grid{gap:20px 14px}
  body.immersive .v39-place-body{padding:19px}
  body.immersive .v39-place h3{font-size:20px}
  body.immersive .v39-place-featured{display:flex;grid-column:auto}
  body.immersive .v39-place-featured>.v39-photo img{position:static;height:220px;min-height:0;flex:none}
  body.immersive .v39-place-featured .v39-place-body{padding:19px}
  body.immersive .v39-place-featured .v39-place-description{-webkit-line-clamp:4}
  body.immersive .v39-place-detail>.v39-photo img{height:330px}
  body.immersive .v39-detail-actions{flex-direction:column}
  body.immersive .v39-detail-heading{margin-top:24px}
  body.immersive .v39-detail-lead{font-size:16px}
}
@media(max-width:540px){
  body.immersive .v39-catalog{padding:24px 14px}
  body.immersive .v39-discovery-grid,body.immersive .v39-related .v39-discovery-grid{grid-template-columns:minmax(0,1fr)}
  body.immersive .v39-catalog-heading h2{font-size:26px}
  body.immersive .v39-place h3{font-size:23px}
  body.immersive .v39-place-description{font-size:14px;-webkit-line-clamp:4}
  body.immersive .v39-place> .v39-photo img{height:230px}
  body.immersive .v39-place-body{padding:21px}
  body.immersive .v39-category{font-size:12px;padding-inline:12px}
  body.immersive .v39-result-count{font-size:12px}
  body.immersive .v39-detail-heading h1{font-size:32px}
  body.immersive .v39-related{margin-top:48px}
  body.immersive .v39-place-detail>.v39-photo img{height:280px}
}
@media(prefers-reduced-motion:reduce){body.immersive .v39-place,body.immersive .v39-photo img,body.immersive .v39-category{transition:none}body.immersive .v39-place:hover{transform:none}}

/* Editorial residents' entrance: the same palette in night, day, white and warm. */
html[data-ui-theme] body.immersive .v40-resident-entry{color:var(--ui-ink);font-family:'Noto Sans JP',sans-serif;margin:34px 0 40px;padding:clamp(20px,3.4vw,42px);border:1px solid var(--ui-line);border-radius:5px;background:var(--ui-surface-glass);min-width:0;box-sizing:border-box}
html[data-ui-theme] body.immersive .v40-resident-entry *{box-sizing:border-box}
html[data-ui-theme] body.immersive .v40-resident-heading{margin:0 0 26px;padding:0;background:none;border:0;box-shadow:none;position:static}
html[data-ui-theme] body.immersive .v40-resident-eyebrow{font-size:10px;font-weight:700;letter-spacing:.16em;line-height:1.7;color:var(--ui-link);margin:0 0 12px}
html[data-ui-theme] body.immersive .v40-resident-heading :is(h2,h3){font-family:'Noto Serif JP',serif;font-size:clamp(25px,2.65vw,39px);font-weight:500;line-height:1.5;letter-spacing:.015em;text-wrap:balance;color:var(--ui-ink);margin:0 0 12px;overflow-wrap:anywhere}
html[data-ui-theme] body.immersive .v40-resident-intro{font-size:14px;line-height:1.9;margin:0;color:var(--ui-muted);max-width:760px}
html[data-ui-theme] body.immersive .v40-resident-layout{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:clamp(22px,3.5vw,48px);min-width:0;align-items:stretch}
html[data-ui-theme] body.immersive .v40-school-feature{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding:clamp(23px,2.7vw,36px);border:0;border-radius:3px;background:var(--ui-surface-soft);color:var(--ui-ink);box-shadow:none;margin:0}
html[data-ui-theme] body.immersive .v40-school-feature::before,html[data-ui-theme] body.immersive .v40-school-feature::after{content:'';position:absolute;z-index:-1;width:245px;height:245px;border:1px solid var(--ui-line);border-radius:50%;pointer-events:none;opacity:.52}
html[data-ui-theme] body.immersive .v40-school-feature::before{inset-inline-end:-134px;top:-75px}
html[data-ui-theme] body.immersive .v40-school-feature::after{inset-inline-end:-108px;top:-44px}
html[data-ui-theme] body.immersive .v40-school-kicker{font:600 11px/1.7 'Noto Sans JP',sans-serif;letter-spacing:.09em;color:var(--ui-link);margin:0 0 20px}
html[data-ui-theme] body.immersive .v40-school-title{font-family:'Noto Serif JP',serif;font-size:clamp(24px,2.2vw,34px);font-weight:500;line-height:1.65;letter-spacing:.01em;white-space:pre-line;text-wrap:balance;color:var(--ui-ink);margin:0 0 17px;overflow-wrap:anywhere}
html[data-ui-theme] body.immersive .v40-school-name{font-size:14px;font-weight:700;letter-spacing:.06em;line-height:1.7;color:var(--ui-link);margin:0 0 12px}
html[data-ui-theme] body.immersive .v40-school-body{font-size:13px;line-height:1.95;color:var(--ui-muted);margin:0 0 24px;max-width:430px}
html[data-ui-theme] body.immersive .v40-school-link{display:inline-flex;align-items:center;justify-content:space-between;gap:14px;min-height:50px;max-width:100%;padding:12px 17px;background:var(--ui-accent);color:var(--ui-accent-ink);border:1px solid var(--ui-accent);border-radius:3px;text-decoration:none;font-size:13px;font-weight:600;line-height:1.7;margin-top:auto;transition:transform .18s ease;overflow-wrap:anywhere}
html[data-ui-theme] body.immersive .v40-school-link:hover{transform:translateY(-2px)}
html[data-ui-theme] body.immersive .v40-school-more{display:inline-flex;align-items:center;min-height:44px;max-width:100%;margin-top:8px;padding:8px 0;color:var(--ui-link);font-size:11px;line-height:1.8;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}
html[data-ui-theme] body.immersive .v40-resident-actions{min-width:0}
html[data-ui-theme] body.immersive .v40-resident-navigation{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 22px;background:none;border:0;margin:0;padding:0}
html[data-ui-theme] body.immersive .v40-resident-action{display:grid;grid-template-columns:23px minmax(0,1fr) 13px;gap:9px;align-items:start;min-height:90px;padding:18px 1px;border:0;border-bottom:1px solid var(--ui-line);border-radius:0;background:none;color:var(--ui-ink);text-decoration:none;box-shadow:none;transition:background .18s ease}
html[data-ui-theme] body.immersive .v40-resident-action:last-child{grid-column:1/-1;min-height:76px}
html[data-ui-theme] body.immersive .v40-resident-action:hover{background:var(--ui-hover)}
html[data-ui-theme] body.immersive .v40-resident-number{font-family:'Noto Serif JP',serif;font-size:12px;line-height:2;color:var(--ui-link);font-variant-numeric:tabular-nums}
html[data-ui-theme] body.immersive .v40-resident-action-body{display:block;min-width:0}
html[data-ui-theme] body.immersive .v40-resident-action strong{display:block;margin:0 0 5px;color:var(--ui-ink);font-size:14px;font-weight:600;line-height:1.7;overflow-wrap:anywhere}
html[data-ui-theme] body.immersive .v40-resident-action-description{display:block;color:var(--ui-muted);font-size:11px;line-height:1.85;overflow-wrap:anywhere}
html[data-ui-theme] body.immersive .v40-resident-arrow{display:inline-block;flex:none;color:inherit;font-size:16px;line-height:1.65;font-family:'Noto Sans JP',sans-serif;transition:transform .18s ease}
html[data-ui-theme] body.immersive .v40-resident-action:hover>.v40-resident-arrow{transform:translate(2px,-2px)}
html[data-ui-theme] body.immersive .v40-resident-language{display:inline-block;flex:none;margin:6px 0 0;padding:2px 6px;border:1px solid var(--ui-line);border-radius:3px;font-size:10px;font-weight:500;line-height:1.5;color:var(--ui-muted);background:var(--ui-surface);letter-spacing:.015em}
html[data-ui-theme] body.immersive .v40-resident-language-note{color:var(--ui-muted);font-size:11px;line-height:1.9;margin:14px 0 0}
html[data-ui-theme] body.immersive .v40-resident-foot{display:flex;flex-wrap:wrap;align-items:center;gap:6px 22px;margin-top:16px}
html[data-ui-theme] body.immersive .v40-resident-foot a{display:inline-flex;align-items:center;flex-wrap:wrap;gap:8px;min-height:44px;color:var(--ui-link);font-size:11px;line-height:1.8;text-decoration:underline;text-underline-offset:4px;padding:7px 0}
html[data-ui-theme] body.immersive .v40-resident-foot .v40-resident-language{margin:0}
html[data-ui-theme] body.immersive .v40-resident-entry a:focus-visible{outline:3px solid var(--ui-focus);outline-offset:4px}
@media(max-width:1000px){html[data-ui-theme] body.immersive .v40-resident-layout{grid-template-columns:minmax(0,1fr)}html[data-ui-theme] body.immersive .v40-school-feature{padding:26px}html[data-ui-theme] body.immersive .v40-school-title{font-size:30px}html[data-ui-theme] body.immersive .v40-school-body{max-width:650px}html[data-ui-theme] body.immersive .v40-resident-action{min-height:83px}}
@media(max-width:540px){
  html[data-ui-theme] body.immersive .v40-resident-entry{padding:22px 15px;margin:26px 0 30px}
  html[data-ui-theme] body.immersive .v40-resident-heading :is(h2,h3){font-size:25px}
  html[data-ui-theme] body.immersive .v40-resident-intro{font-size:13px}
  html[data-ui-theme] body.immersive .v40-school-feature{padding:23px 18px}
  html[data-ui-theme] body.immersive .v40-school-title{font-size:26px}
  html[data-ui-theme] body.immersive .v40-school-body{font-size:13px}
  html[data-ui-theme] body.immersive .v40-resident-navigation{grid-template-columns:minmax(0,1fr)}
  html[data-ui-theme] body.immersive .v40-resident-action,html[data-ui-theme] body.immersive .v40-resident-action:last-child{min-height:76px;grid-column:auto;grid-template-columns:24px minmax(0,1fr) 15px;gap:10px;padding:15px 2px}
  html[data-ui-theme] body.immersive .v40-resident-action strong{font-size:15px;margin-bottom:3px}
  html[data-ui-theme] body.immersive .v40-resident-action-description{font-size:12px}
  html[data-ui-theme] body.immersive .v40-resident-foot{gap:4px 17px}
}
@media(prefers-reduced-motion:reduce){html[data-ui-theme] body.immersive .v40-resident-entry :is(a,.v40-resident-arrow){transition:none}html[data-ui-theme] body.immersive .v40-resident-entry :is(a:hover,a:hover>.v40-resident-arrow){transform:none}}

body.immersive .tsl-feature{max-width:1440px;margin:auto;padding:clamp(22px,4vw,60px);color:var(--ui-ink);background:var(--ui-bg);min-width:0}
body.immersive .tsl-feature *{box-sizing:border-box}
body.immersive .tsl-feature [hidden]{display:none!important}
body.immersive .tsl-feature :is(a,button,select,textarea){font:inherit}
body.immersive .tsl-feature :is(a,button){min-height:44px}
body.immersive .tsl-back{display:inline-flex;align-items:center;color:var(--ui-muted);font-size:13px;margin-bottom:40px;text-decoration:none}
body.immersive .tsl-hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(24px,5vw,80px);align-items:center;padding:15px 0 70px;position:relative}
body.immersive .tsl-hero-words{min-width:0}
body.immersive .tsl-kicker{font-size:11px;line-height:1.8;letter-spacing:.13em;color:var(--ui-link);font-weight:600;margin:0 0 23px}
body.immersive .tsl-title{font-family:'Noto Serif JP',serif;font-size:clamp(34px,4.2vw,65px);font-weight:500;line-height:1.55;letter-spacing:.015em;white-space:pre-line;margin:0 0 25px;text-wrap:balance;overflow-wrap:anywhere}
body.immersive .tsl-school{font-size:15px;letter-spacing:.04em;margin:0 0 20px;font-weight:600}
body.immersive :is(.tsl-intro,.tsl-body){font-size:15px;line-height:2;color:var(--ui-muted);max-width:720px;margin:0 0 24px}
body.immersive .tsl-meta{font-size:12px;line-height:1.8;color:var(--ui-muted);margin:0 0 23px}
body.immersive .tsl-actions{display:flex;gap:12px 18px;flex-wrap:wrap;align-items:center}
body.immersive :is(.tsl-primary,.tsl-secondary){display:inline-flex;align-items:center;justify-content:center;text-align:center;min-height:48px;max-width:100%;padding:12px 20px;border:1px solid var(--ui-accent);border-radius:4px;font-size:13px;line-height:1.8;text-decoration:none;cursor:pointer;box-shadow:none;transition:transform .18s,background .18s}
body.immersive .tsl-primary{background:var(--ui-accent);color:var(--ui-accent-ink)}
body.immersive .tsl-secondary{background:transparent;color:var(--ui-link);border-color:var(--ui-line)}
body.immersive :is(.tsl-primary,.tsl-secondary):hover{transform:translateY(-2px)}
body.immersive .tsl-secondary:hover{background:var(--ui-hover)}
body.immersive .tsl-film{margin:0;min-width:0;position:relative;padding:20px 0 0}
body.immersive .tsl-film-link{display:block;position:relative;aspect-ratio:4/3;background:var(--ui-surface-soft);border:1px solid var(--ui-line);border-radius:120px 4px 4px 4px;overflow:hidden}
body.immersive .tsl-film img{display:block;width:100%;height:100%;object-fit:contain;border:0;border-radius:0;opacity:1;filter:none}
body.immersive .tsl-building .tsl-film-link{aspect-ratio:960/668}
body.immersive .tsl-building figcaption a{color:var(--ui-link);min-height:0;text-underline-offset:3px}
body.immersive .tsl-building.tsl-film-unavailable{padding-top:0}
body.immersive .v39-photo>.v40-photo-year{margin:0;order:0;position:relative;padding:8px 12px;font-size:10px;line-height:1.7;background:var(--ui-surface);color:var(--ui-muted);z-index:2}
body.immersive .tsl-film-play{position:absolute;inset:calc(50% - 29px) auto auto calc(50% - 29px);width:58px;height:58px;border:1px solid #ffffff90;border-radius:50%;background:#102333df;color:#fff;display:grid;place-items:center;font-size:20px;padding-left:3px;transition:transform .2s}
body.immersive .tsl-film-link:hover .tsl-film-play{transform:scale(1.1)}
body.immersive .tsl-film figcaption{font-size:10px;line-height:1.8;color:var(--ui-muted);background:none;padding:16px 0 0;margin:0}
body.immersive .tsl-film-caption{display:inline-flex;align-items:center;color:var(--ui-link);font-size:12px;line-height:1.8;text-decoration:none}
body.immersive .tsl-video-fallback{display:block;padding:clamp(24px,4vw,55px);color:var(--ui-ink);font:500 24px/1.8 'Noto Serif JP',serif}
body.immersive .tsl-film-unavailable .tsl-film-play{inset:auto 25px 25px auto}
body.immersive .tsl-chapters{display:flex;flex-wrap:wrap;gap:8px 28px;padding:20px 0;border-block:1px solid var(--ui-line)}
body.immersive .tsl-chapters button{background:none;color:var(--ui-muted);border:0;padding:8px 0;cursor:pointer;font-size:12px;line-height:1.8;box-shadow:none;text-align:start}
body.immersive .tsl-chapters button:hover{color:var(--ui-link)}
body.immersive .tsl-chapter{padding:clamp(50px,7vw,100px) 0;border-bottom:1px solid var(--ui-line)}
body.immersive .tsl-feature :is(h2,h3){font-family:'Noto Serif JP',serif;font-weight:500;text-wrap:balance;overflow-wrap:anywhere}
body.immersive .tsl-feature h2{font-size:clamp(27px,3vw,42px);line-height:1.6;margin:0 0 25px;scroll-margin-top:calc(var(--v34-sticky-top,140px) + 24px)}
body.immersive .tsl-feature h3{font-size:clamp(22px,2.3vw,30px);line-height:1.6;margin:0 0 20px}
body.immersive .tsl-language-choices{display:flex;flex-wrap:wrap;gap:8px;margin:30px 0 0}
body.immersive .tsl-language{padding:11px 24px;border:1px solid var(--ui-line);background:var(--ui-bg);border-radius:30px;cursor:pointer;color:var(--ui-ink);font-size:14px}
body.immersive .tsl-language[aria-pressed=true]{background:var(--ui-accent);color:var(--ui-accent-ink);border-color:var(--ui-accent)}
body.immersive .tsl-course-panel{margin-top:24px;padding:clamp(24px,4.5vw,60px);background:var(--ui-surface-soft);border-inline-start:3px solid var(--ui-accent);min-height:310px}
body.immersive .tsl-course-script{font:500 clamp(36px,5vw,60px)/1.5 'Noto Serif JP',serif;margin:0 0 24px;color:var(--ui-link)}
body.immersive .tsl-text-link{display:inline-flex;align-items:center;color:var(--ui-link);font-size:13px;line-height:1.8;text-decoration:underline;text-underline-offset:5px}
body.immersive .tsl-note{font-size:12px;line-height:1.9;color:var(--ui-muted);margin:20px 0 0;max-width:800px}
body.immersive .tsl-culture{margin-top:48px;padding:0 0 0 24px;border-inline-start:1px solid var(--ui-line)}
body.immersive .tsl-person{display:grid;grid-template-columns:160px minmax(0,1fr);gap:clamp(22px,4vw,55px);align-items:center;max-width:900px;padding-top:15px}
body.immersive .tsl-person-monogram{width:160px;aspect-ratio:1;display:grid;place-items:center;border:1px solid var(--ui-line);border-radius:50%;color:var(--ui-link);font:400 38px/1 Georgia,serif;letter-spacing:.05em}
body.immersive .tsl-enquiry-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:30px 0}
body.immersive .tsl-feature label{display:block;font-size:12px;color:var(--ui-muted);margin-bottom:10px}
body.immersive .tsl-feature :is(select,textarea){max-width:100%;min-width:0;width:100%;border:1px solid var(--ui-line);border-radius:4px;background:var(--ui-surface);color:var(--ui-ink);padding:13px 14px;font:15px/1.8 'Noto Sans JP',sans-serif}
body.immersive .tsl-feature select{min-height:50px;cursor:pointer}
body.immersive .tsl-enquiry-draft{resize:vertical;min-height:240px;margin-bottom:20px}
body.immersive .tsl-copy-status{font-size:13px;color:var(--ui-link);line-height:1.8;min-height:24px;margin:15px 0 0}
body.immersive .tsl-address{font-style:normal;font-size:15px;line-height:2;color:var(--ui-muted);margin-bottom:28px;max-width:640px}
body.immersive .tsl-address strong{color:var(--ui-ink)}
body.immersive .tsl-socials{display:flex;flex-wrap:wrap;gap:10px 25px;margin-top:30px}
body.immersive .tsl-socials a{display:inline-flex;align-items:center;color:var(--ui-link);font-size:13px;text-underline-offset:4px;overflow-wrap:anywhere}
body.immersive .tsl-next{padding:clamp(45px,6vw,90px) 0}
body.immersive .tsl-next-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 40px;margin-top:30px}
body.immersive .tsl-next-links a{padding:20px 0;border-bottom:1px solid var(--ui-line);color:var(--ui-link);font-size:16px;line-height:1.7;text-decoration:none}
body.immersive .tsl-sources{border-top:1px solid var(--ui-line);font-size:12px;line-height:1.8;color:var(--ui-muted);padding-top:15px}
body.immersive .tsl-sources summary{min-height:44px;cursor:pointer}
body.immersive .tsl-sources a{display:inline-flex;align-items:center;color:var(--ui-link);margin-inline-start:20px}
body.immersive .tsl-feature-entry{margin:20px 0}
@media(max-width:800px){body.immersive .tsl-hero{grid-template-columns:1fr;padding-bottom:40px;gap:32px}body.immersive .tsl-film{width:min(100%,560px);padding-top:0}body.immersive .tsl-title{font-size:clamp(32px,7vw,50px)}body.immersive .tsl-person{grid-template-columns:95px minmax(0,1fr);gap:22px}body.immersive .tsl-person-monogram{width:95px;font-size:27px}body.immersive .tsl-enquiry-fields{grid-template-columns:1fr}body.immersive .tsl-chapters{gap:4px 16px}body.immersive .tsl-chapters button{font-size:11px}}
@media(max-width:480px){body.immersive .tsl-feature{padding:22px 18px}body.immersive .tsl-back{margin-bottom:25px}body.immersive .tsl-title{font-size:31px}body.immersive .tsl-film-link{border-top-left-radius:65px}body.immersive .tsl-person{grid-template-columns:1fr}body.immersive .tsl-person-monogram{width:80px;font-size:24px}body.immersive .tsl-next-links{grid-template-columns:1fr}body.immersive .tsl-course-panel{padding:22px}body.immersive .tsl-language{padding:10px 16px}body.immersive .tsl-actions>:is(a,button){width:100%}body.immersive .tsl-film-caption{font-size:11px}}
@media(prefers-reduced-motion:reduce){body.immersive .tsl-feature *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

body.immersive .v41-art{position:relative;margin:0 0 20px;overflow:hidden;border-radius:14px;background:#eee5d4}
body.immersive .v41-art-image{display:block;width:100%;height:auto;aspect-ratio:2;object-fit:cover}
body.immersive .v41-art-label{position:absolute;left:12px;bottom:10px;padding:3px 7px;border-radius:3px;background:#fbf7ed;color:#514a3e;font:11px/1.4 sans-serif;z-index:2}
body.immersive .v41-identity-art{position:relative;overflow:hidden}
body.immersive .v39-identity.v41-identity-art{background:#eee5d4;min-height:230px;justify-content:flex-end;padding:20px;color:#243e3d}
body.immersive .v39-identity>.v41-art-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.9}
body.immersive .v39-identity.v41-identity-art .v39-identity-name,body.immersive .v39-identity.v41-identity-art .v39-identity-category,body.immersive .v39-identity.v41-identity-art .v39-identity-area{position:relative;z-index:1;background:#eee5d4e8;padding:3px 7px;border-radius:3px;max-width:100%;color:#243e3d}
body.immersive .v39-identity.v41-identity-art .v39-identity-name{font-size:24px;max-width:16ch;margin-bottom:27px}
body.immersive .v39-identity.v41-identity-art .v39-identity-area{display:none}
body.immersive .v36-venue-identity>.v41-art-image{max-height:280px}
body.immersive .v36-venue-identity>.v41-art-label{bottom:auto;top:12px}
body.immersive .v41-art~h3{margin-top:10px}
body.immersive .v26-living-topic>.v41-art{max-width:220px;float:right;margin:0 0 18px 22px}
body.immersive .cm-today-headline>.v41-art,body.immersive .cm-today-event>.v41-art{max-height:120px;margin-bottom:14px}
body.immersive .v39-photo-credit summary,body.immersive .v36-photo-credit summary{font-size:10px}
body.immersive .v39-photo-credit p,body.immersive .v36-photo-credit p{display:block;font-size:11px;line-height:1.65;margin-top:4px}
body.immersive .v41-extra-credits{padding-top:30px}.v41-credit-row{padding:18px 0;border-top:1px solid var(--ui-border)}.v41-credit-row h3{font-size:16px!important}.v41-credit-row p{font-size:12px;overflow-wrap:anywhere}
@media(max-width:540px){body.immersive .v26-living-topic>.v41-art{float:none;max-width:none;margin:0 0 18px}body.immersive .v39-identity.v41-identity-art .v39-identity-name{font-size:21px}}
@media(prefers-reduced-motion:reduce){body.immersive .v41-art,body.immersive .v41-art-image{animation:none;transition:none}}

body.immersive .v41-tile-credit{font:10px/1.5 sans-serif;color:#fff2da;margin-top:7px;position:relative;text-shadow:0 1px 3px #000;max-width:100%}
body.immersive .v25-category-art .v41-art{height:100%;margin:0;border-radius:0}
body.immersive .emergency-contact-card>.v41-art,body.immersive .v36-safety-option>.v41-art{max-width:180px;float:right;margin:0 0 14px 18px}
@media(max-width:540px){body.immersive .emergency-contact-card>.v41-art,body.immersive .v36-safety-option>.v41-art{max-width:120px;float:none;margin:0 0 12px}}

body.immersive .v41-kurashi-entry{display:grid;grid-template-columns:minmax(180px,.65fr) minmax(0,1fr);gap:34px;align-items:center;margin:40px 0;padding:26px;border:1px solid var(--ui-border);border-radius:22px;background:var(--ui-surface);color:var(--ui-ink)}
body.immersive .v41-kurashi-entry .v41-kurashi-art{margin:0;height:100%;min-height:200px}
body.immersive .v41-kurashi-art img{height:100%;object-fit:cover}
body.immersive .v41-kurashi-kicker{font-size:10px;letter-spacing:.17em;color:var(--ui-accent);margin:0 0 10px}
body.immersive .v41-kurashi-body h2{font-size:clamp(24px,3vw,36px);margin:0 0 14px;font-family:'Noto Serif JP',serif;line-height:1.45}
body.immersive .v41-kurashi-body>p{line-height:1.85;font-size:14px;max-width:49ch}
body.immersive .v41-kurashi-link{display:inline-flex;align-items:center;min-height:46px;padding:10px 18px;border:1px solid var(--ui-accent);border-radius:99px;color:var(--ui-ink);font-size:14px;text-decoration:none;transition:transform .2s}
body.immersive .v41-kurashi-link:hover{transform:translateY(-2px)}
body.immersive .v41-kurashi-lang{font-size:11px!important;color:var(--ui-muted)}
@media(max-width:620px){body.immersive .v41-kurashi-entry{grid-template-columns:1fr;padding:18px;gap:20px}body.immersive .v41-kurashi-entry .v41-kurashi-art{height:160px;min-height:0}}
@media(prefers-reduced-motion:reduce){body.immersive .v41-kurashi-link{transition:none;transform:none}}

/* Reading and photography repair. Loaded after all inherited edition styles.
   Header, language selection, emergency routing and editorial data stay with
   their own controllers. No media source, credit or content is replaced here. */

/* Set readable text by semantic role, keeping the existing heading hierarchy. */
html[data-ui-theme] body.immersive #panels :is(p,li,dt,dd,label,legend,input,select,textarea,summary,time,small,figcaption,button,a) {
  font-size:max(1rem,16px)!important;
}
html[data-ui-theme] body.immersive #panels :is(p,li,dt,dd,figcaption) {
  line-height:1.85!important;
}
html[data-ui-theme] body.immersive #panels :is(input,select,textarea,button,summary,label,legend) {
  line-height:1.6!important;
}
html[data-ui-theme] body.immersive #panels :is(h1,h2,h3,h4,h5,h6) a {
  font-size:inherit!important;line-height:inherit!important;
}
html[data-ui-theme] body.immersive #panels :is(.detail-lead,.v39-detail-lead,.org-detail-summary) {
  font-size:clamp(18px,1.4vw,21px)!important;
}
html[data-ui-theme] body.immersive #panels :is(
  .card-kicker,.card-index,.card-action,.place-card-meta,.directory-chip,
  .v26-news-category,.v26-news-date,.v25-news-date,.v25-news-event,.v25-news-ended,
  .v39-place-meta,.v39-place-meta>span,.v39-category-count,.v39-identity-category,
  .v39-identity-area,.v39-detail-original,.v36-photo-status,.illustrative-note,
  .route-photo-description,.v41-art-label,.v41-tile-credit,
  .cm-today-meta,.cm-today-meta>span,.cm-today-event-date>span,
  .cm-live-event-meta,.cm-live-event-meta>span,.cm-live-date-stamp>span,
  .cm-weather-day-date,.cm-weather-calendar,.cm-weather-condition,.cm-weather-rain,
  .cm-weather-range,.cm-weather-range>span,.cm-weather-current-copy,
  .cm-weather-current-copy>b,.cm-weather-range-label,
  .v26-living-intro,.guide-source-tag,.record-status,.join-status,
  .source-disclosure,.translation-note,.portal-translation,
  .story-image-note,.story-eyebrow,.eyebrow
) {font-size:max(1rem,16px)!important;line-height:1.65!important}
html[data-ui-theme] body.immersive #panels :is(figcaption,.source-disclosure,.v39-sources,.v41-credit-row) {
  overflow-wrap:anywhere;word-break:normal;
}
html[data-ui-theme] body.immersive #panels :is(.v39-place-description,.v39-identity-name) {
  display:block;-webkit-line-clamp:unset;overflow:visible;
}
html[data-ui-theme] body.immersive #panels :is(button,summary,input,select) {
  min-height:44px;
}

/* Keep wide sections spacious and prose comfortable to read. */
html[data-ui-theme] body.immersive #panels :is(
 .v25-official-checked,.emergency-phone-label,.emergency-domestic,.directory-badge,
 .reference-status,.scene-edition,.cm-drill-role-number,.category-no,
 .v40-resident-number,.v40-resident-action-description,.cm-map-north,.cm-map-scale,
 .cm-map-result-number,.cm-map-result-meta,.cm-map-result-note,.org-category,
 .join-number,.join-option-action,.story-dot>span,.v35-daily-edition>span,.guide-truth>span,
 .studio-number,.v40-resident-action strong,.place-card-meta bdi,
 .v40-resident-language,.city-masthead>span,.unknown-title,.tsl-address
) {font-size:max(1rem,16px)!important;line-height:1.6!important}
html[data-ui-theme] body.immersive #panels > .page:not(.portal-home) {
  box-sizing:border-box;width:calc(100% - 48px);max-width:1440px;
  padding-inline:clamp(20px,3vw,40px);margin-inline:auto;
}
html[data-ui-theme] body.immersive #panels .portal-home > .v34-guide-section,
html[data-ui-theme] body.immersive #panels #today-overview.v35-daily-desk {
  box-sizing:border-box;width:calc(100% - 48px);max-width:1440px;margin-inline:auto;
}
html[data-ui-theme] body.immersive #panels .v39-catalog {
  box-sizing:border-box;max-width:1440px;padding-inline:clamp(16px,2.5vw,32px);
}
html[data-ui-theme] body.immersive #panels :is(.v26-story-body,.v39-detail-copy,.org-detail-summary,.restaurant-detail-body) {
  width:100%;max-width:42rem;box-sizing:border-box;margin-inline:auto;
}
html[data-ui-theme] body.immersive #panels .detail-body {max-width:42rem}
html[data-ui-theme] body.immersive #panels :is(.v39-detail-copy,.v26-story-body,.detail-body) :is(p,li) {
  line-height:1.95!important;
}

/* The column minimum responds to the actual grid width. It allows up to three
   columns, never four squeezed cards inside a narrower content container. */
html[data-ui-theme] body.immersive #panels :is(
  .v39-discovery-grid,.guide-results,.place-grid,.organization-grid,
  .organization-preview-grid,.directory-grid,.v26-news-grid,.v26-event-grid,
  .venue-gallery-grid,.v25-video-grid,.v25-credits-grid
) {
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,max(270px,calc((100% - 48px)/3))),1fr))!important;
  gap:24px!important;align-items:start;min-width:0;
}
html[data-ui-theme] body.immersive #panels :is(
  .v39-discovery-grid,.guide-results,.place-grid,.organization-grid,
  .organization-preview-grid,.directory-grid,.v26-news-grid,.v26-event-grid,
  .venue-gallery-grid,.v25-video-grid,.v25-credits-grid
) > * {min-width:0;max-width:100%}
html[data-ui-theme] body.immersive #panels .v39-place-featured {
  display:flex;flex-direction:column;grid-column:auto;
}
html[data-ui-theme] body.immersive #panels .v39-place-featured > .v39-photo  img {
  position:static;inset:auto;flex:none;min-height:0;
}

/* A decorative third child must never consume the narrow calendar column.
   Explicit areas preserve date/body order whether or not artwork is present. */
html[data-ui-theme] body.immersive #panels :is(.cm-today-event,.cm-live-date-story) {
  display:grid!important;
  grid-template-columns:4.5rem minmax(0,1fr)!important;
  grid-template-areas:"date body"!important;
  column-gap:20px!important;row-gap:16px!important;align-items:start;
}
html[data-ui-theme] body.immersive #panels :is(.cm-today-event,.cm-live-date-story):has(> figure) {
  grid-template-areas:"art art" "date body"!important;
}
html[data-ui-theme] body.immersive #panels :is(.cm-today-event,.cm-live-date-story) > figure {
  grid-area:art!important;width:100%;min-width:0;max-width:none;
  margin:0 0 4px!important;max-height:none!important;
}
html[data-ui-theme] body.immersive #panels :is(.cm-today-event-date,.cm-live-date-stamp) {
  grid-area:date!important;min-width:0;
}
html[data-ui-theme] body.immersive #panels :is(.cm-today-event-info,.cm-live-date-body) {
  grid-area:body!important;min-width:0;width:100%;
}
html[data-ui-theme] body.immersive #panels :is(.cm-today-event-info,.cm-live-date-body) :is(h4,p,a) {
  overflow-wrap:break-word;word-break:normal;
}
html[data-ui-theme] body.immersive #panels :is(.cm-today-event-actions,.cm-live-event-meta) {
  flex-wrap:wrap;gap:8px 16px;
}
html[data-ui-theme] body.immersive #panels .cm-live-source-links {
  display:flex;flex-wrap:wrap;min-width:0;gap:8px 16px;
}
html[data-ui-theme] body.immersive #panels .cm-live-source-links a {
  max-width:100%;white-space:normal;overflow-wrap:anywhere;
}

/* Natural photography proportions replace inherited fixed-height strips.
   Portraits and galleries retain the entire photograph. */
html[data-ui-theme] body.immersive #panels :is(.media-banner,.v36-venue-photo,.v39-photo,.v25-photo,.cm-live-venue-photo)  img {
  display:block;width:100%;height:auto!important;max-height:none!important;
  aspect-ratio:3/2;object-fit:cover;
}
html[data-ui-theme] body.immersive #panels :is(.v36-interior,.v39-place-detail) > :is(.media-banner,.v36-venue-photo,.v39-photo,.v25-photo)  img {
  aspect-ratio:16/10;object-fit:contain;background:var(--ui-surface-soft);
}
html[data-ui-theme] body.immersive #panels .venue-gallery-grid .media-banner  img,
html[data-ui-theme] body.immersive #panels .v39-photo-portrait  img {
  aspect-ratio:3/2;object-fit:contain;background:var(--ui-surface-soft);
}
/* Each photograph carries its verified largest available pixel width. A small
   original remains crisp and centred instead of stretching across a wide page.
   Cards keep their 3:2 frame; detail views keep the photograph's full ratio. */
html[data-ui-theme] body.immersive #panels img[data-v61-photo-width] {
  max-width:min(100%,var(--photo-native-width))!important;margin-inline:auto;
}
html[data-ui-theme] body.immersive #panels :is(.v36-interior,.v39-place-detail) > :is(.media-banner,.v36-venue-photo,.v39-photo,.v25-photo)  img[data-v61-photo-width],
html[data-ui-theme] body.immersive #panels .venue-gallery-grid img[data-v61-photo-width],
html[data-ui-theme] body.immersive #panels .tsl-building img[data-v61-photo-width] {
  width:100%;height:auto!important;aspect-ratio:auto!important;object-fit:contain;
}
html[data-ui-theme] body.immersive #panels :is(.cm-today-headline,.cm-today-event,.cm-live-date-story) > .v41-art {
  max-height:none!important;overflow:visible;
}
html[data-ui-theme] body.immersive #panels :is(.cm-today-headline,.cm-today-event,.cm-live-date-story) > .v41-art > .v41-art-image {
  height:auto!important;max-height:220px!important;aspect-ratio:16/10;
  object-fit:contain;background:#eee5d4;border-radius:10px;
}
html[data-ui-theme] body.immersive #panels :is(.v36-venue-photo,.v39-photo) > figcaption {
  position:relative;margin-top:0;max-width:100%;
}
html[data-ui-theme] body.immersive #panels .v41-art-label {
  position:static;display:block;width:max-content;max-width:100%;margin:8px 0 0;
}
html[data-ui-theme] body.immersive #panels .v39-identity .v41-art-label {
  position:relative;z-index:1;
}

@media(max-width:900px) {
  html[data-ui-theme] body.immersive #panels #today-overview.v35-daily-desk .cm-today-grid {
    grid-template-columns:minmax(0,1fr)!important;gap:32px;
  }
}
@media(max-width:760px) {
  html[data-ui-theme] body.immersive #panels > .page:not(.portal-home) {
    width:calc(100% - 24px);padding-inline:16px;
  }
  html[data-ui-theme] body.immersive #panels .portal-home > .v34-guide-section,
  html[data-ui-theme] body.immersive #panels #today-overview.v35-daily-desk {
    width:calc(100% - 32px);
  }
  html[data-ui-theme] body.immersive #panels :is(
    .v39-discovery-grid,.guide-results,.place-grid,.organization-grid,
    .organization-preview-grid,.directory-grid,.v26-news-grid,.v26-event-grid,
    .venue-gallery-grid,.v25-video-grid,.v25-credits-grid
  ) {grid-template-columns:minmax(0,1fr)!important}
  html[data-ui-theme] body.immersive #panels .v39-catalog {padding-inline:12px}
  html[data-ui-theme] body.immersive #panels :is(.cm-today-event,.cm-live-date-story) {
    grid-template-columns:3.5rem minmax(0,1fr)!important;column-gap:14px!important;
  }
}
@media(prefers-reduced-motion:reduce) {
  html[data-ui-theme] body.immersive #panels .v39-place {transform:none!important}
}

/* Text-token contrast repair: retain the four backgrounds and their hue families.
   The normal, soft and hover surfaces all meet at least 7:1 for these text
   tokens. Full-page conformance still requires the separate rendered audit. */
html[data-ui-theme] {
 --ui-muted:#cad8db;--ui-link:#efd49f;--ui-accent:#e6d4b0;--ui-gold:#e9d3a7;
 --ui-warning-ink:#f4e5c8;--ui-danger-ink:#fff3ed;
}
html[data-ui-theme="white"] {
 --ui-muted:#444f48;--ui-link:#18554d;--ui-accent:#1a554d;--ui-gold:#614817;
 --ui-warning-ink:#624b17;--ui-danger-ink:#85322a;
}
html[data-ui-theme="day"] {
 --ui-muted:#483b2e;--ui-link:#662d13;--ui-accent:#632f13;--ui-gold:#4f3a11;
 --ui-warning-ink:#604314;--ui-danger-ink:#832d21;
}
html[data-ui-theme="warm"] {
 --ui-muted:#4c4133;--ui-link:#583d23;--ui-accent:#583d28;--ui-gold:#5a3d13;
 --ui-warning-ink:#5b4215;--ui-danger-ink:#7e3224;
}
html[data-ui-theme] body.recovery-v61.immersive-v35 {
 --v35-chrome-muted:var(--ui-muted);--v35-chrome-accent:var(--ui-link);
}
/* The decided safety/language hierarchy, on opaque high-contrast surfaces. */
html[data-ui-theme] body.recovery-v61 > header{position:relative;grid-template-columns:minmax(0,1fr) auto;gap:14px 24px;padding:18px max(20px,4vw);z-index:50}
html[data-ui-theme] body.recovery-v61 .v25-header-safety{display:flex!important;border:0;padding:0;gap:12px}
html[data-ui-theme] body.recovery-v61 .v25-header-safety>a[data-safety-route],html[data-ui-theme] body.recovery-v61 .v25-mobile-safety>a[data-safety-route]{min-height:60px;min-width:132px;padding:14px 22px;display:flex;align-items:center;justify-content:center;gap:10px;border:2px solid #c6615e;border-radius:8px;background:#7e222b;color:#fff!important;font:700 20px/1.5 'Noto Sans JP',sans-serif;white-space:normal;overflow-wrap:anywhere;text-align:center}
html[data-ui-theme] body.recovery-v61 :is(.v25-header-safety,.v25-mobile-safety)>a[data-safety-route]>span{min-width:0;white-space:normal;overflow-wrap:anywhere;flex:1}
html[data-ui-theme] body.recovery-v61 .v25-header-safety>a.v25-header-disaster,html[data-ui-theme] body.recovery-v61 .v25-mobile-safety>a.v25-disaster-link{background:#173f4d;border-color:#709da7}
html[data-ui-theme] body.recovery-v61 :is(.v25-header-safety,.v25-mobile-safety) svg{width:25px;height:25px;flex:0 0 25px}
html[data-ui-theme] body.recovery-v61 .header-language-cluster{grid-column:1/-1;width:100%;max-width:none;display:flex;justify-content:space-between;align-items:center;gap:16px}
html[data-ui-theme] body.recovery-v61 .language-select-control{display:flex!important;align-items:center;gap:8px;flex:none;margin:0}
html[data-ui-theme] body.recovery-v61 .language-select-control label{font-size:16px}
html[data-ui-theme] body.recovery-v61 #language-select{display:block;min-height:44px;max-width:180px;font-size:16px;background:var(--v35-chrome);color:var(--v35-chrome-ink);border:1px solid var(--ui-line);border-radius:5px}
html[data-ui-theme] body.recovery-v61 #language-flags{display:flex!important;flex-wrap:wrap;justify-content:flex-end;gap:4px;overflow:visible;max-width:none;width:auto;position:relative;margin:0;padding:0}
html[data-ui-theme] body.recovery-v61 .language-flag-button{display:flex;align-items:center;justify-content:center;width:44px;height:44px;min-width:44px;min-height:44px;padding:6px;background:transparent;border:2px solid transparent;border-radius:5px;position:relative;cursor:pointer}
html[data-ui-theme] body.recovery-v61 .language-flag-button[aria-pressed="true"]{border-color:var(--v35-chrome-accent);background:var(--v35-chrome-hover)}
html[data-ui-theme] body.recovery-v61 .language-flag{width:28px;height:20px;object-fit:contain}
html[data-ui-theme] body.recovery-v61 .language-flag-hint{position:absolute;top:100%;right:0;background:var(--v35-chrome);color:var(--v35-chrome-ink);padding:6px 10px;font-size:16px;z-index:100;pointer-events:none}
html[data-ui-theme] body.recovery-v61 #site-navigation{position:relative;top:auto;z-index:40;gap:6px;padding-inline:3vw;flex-wrap:wrap;overflow:visible}
html[data-ui-theme] body.recovery-v61 #site-navigation a{font-size:16px;min-height:48px;padding:10px 13px;line-height:1.5;white-space:normal}
html[data-ui-theme] body.recovery-v61 .portal-home>.v61-call-first{width:calc(100% - 40px);max-width:1440px;margin:24px auto;padding:20px 24px;box-sizing:border-box;border:1px solid #ac6a64;border-left:6px solid #cf7771;border-radius:10px;background:#321c25;color:#fff5f0}
html[data-ui-theme] body.recovery-v61 .v61-call-first h2{font:700 20px/1.5 'Noto Sans JP',sans-serif;color:#fff5f0;margin:0 0 14px;letter-spacing:0}
html[data-ui-theme] body.recovery-v61 .v61-call-first .v25-phone-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0}
html[data-ui-theme] body.recovery-v61 .v61-call-first .v25-phone-tile{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;min-height:64px;border:1px solid #bf8581;background:#fff7f0;color:#531d28!important;padding:10px;border-radius:7px}
html[data-ui-theme] body.recovery-v61 .v61-call-first .v25-phone-number{font-size:27px;color:inherit;line-height:1.2}
html[data-ui-theme] body.recovery-v61 .v61-call-first .v25-phone-label{font-size:16px;color:inherit;line-height:1.4}
html[data-ui-theme] body.recovery-v61 .v61-call-first .v25-home-safety-links{display:flex;flex-wrap:wrap;gap:0 22px;margin-top:10px}
html[data-ui-theme] body.recovery-v61 .v61-call-first .v25-home-safety-links a{font-size:16px;min-height:44px;display:inline-flex;align-items:center;color:#fff0d2!important;background:transparent;border:0;padding:4px 0}
html[data-ui-theme] body.recovery-v61 .portal-home>.v41-kurashi-entry,html[data-ui-theme] body.recovery-v61 .portal-home>.v61-practice{width:calc(100% - 40px);max-width:1440px;box-sizing:border-box;margin:32px auto;padding:24px;background:var(--ui-surface);border:1px solid var(--ui-line);border-radius:10px}
html[data-ui-theme] body.recovery-v61 .v41-help-entry{background:#173f4d;border-color:#709da7;color:#fff!important;font-size:18px;min-height:60px}
html[data-ui-theme] body.recovery-v61 .v41-help-note,html[data-ui-theme] body.recovery-v61 .v41-help-practice-tag{font-size:16px}
html[data-ui-theme] body.recovery-v61 .portal-home>.cm-scroll-story{margin-top:48px}
html[data-ui-theme] body.recovery-v61 #ping-news-desk{position:relative;height:48px;min-height:48px;background:var(--ui-surface);color:var(--ui-ink);border-block:1px solid var(--ui-line);margin-top:48px}
html[data-ui-theme] body.recovery-v61 #ping-news-desk :is(.ping-ticker-viewport,.ping-desk-story,.ping-desk-brand){height:48px;min-height:48px;font-size:16px}
html[data-ui-theme] body.recovery-v61 #ping-news-desk .ping-headline-date{font-size:16px}
html[data-ui-theme] body.recovery-v61 :is(a,button,select,summary):focus-visible{outline:3px solid var(--ui-focus)!important;outline-offset:4px}
@media(max-width:1023px){
 html[data-ui-theme] body.recovery-v61 .header-language-cluster{flex-direction:column;align-items:flex-start;gap:8px}
 html[data-ui-theme] body.recovery-v61 #language-flags{justify-content:flex-start}
 html[data-ui-theme] body.recovery-v61 .v25-mobile-safety{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:10px 16px max(10px,env(safe-area-inset-bottom));background:#0c1b2c}
 html[data-ui-theme] body.recovery-v61 .v25-mobile-safety>a[data-safety-route]{min-width:0;min-height:60px;padding:10px 12px;font-size:20px}
 html[data-ui-theme] body.recovery-v61{padding-bottom:90px}
}
@media(max-width:600px){
 html[data-ui-theme] body.recovery-v61 > header{grid-template-columns:minmax(0,1fr);padding:16px;gap:14px}
 html[data-ui-theme] body.recovery-v61 .v25-header-safety{display:grid!important;grid-template-columns:1fr 1fr;width:100%;gap:10px}
 html[data-ui-theme] body.recovery-v61 .v25-header-safety>a[data-safety-route]{min-width:0;min-height:56px;padding:10px;font-size:19px}
 html[data-ui-theme] body.recovery-v61 #language-flags{gap:3px}
 html[data-ui-theme] body.recovery-v61 #site-navigation{display:flex;flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;gap:0;padding:0 12px}
 html[data-ui-theme] body.recovery-v61 #site-navigation a{flex:none;white-space:nowrap}
 html[data-ui-theme] body.recovery-v61 .portal-home>.v61-call-first{width:calc(100% - 24px);margin:16px auto;padding:16px 12px}
 html[data-ui-theme] body.recovery-v61 .v61-call-first h2{font-size:18px}
 html[data-ui-theme] body.recovery-v61 .v61-call-first .v25-phone-tiles{gap:6px}
 html[data-ui-theme] body.recovery-v61 .v61-call-first .v25-phone-tile{flex-direction:column;gap:5px;padding:10px 4px;min-width:0}
 html[data-ui-theme] body.recovery-v61 .v61-call-first .v25-phone-tile svg{display:none}
 html[data-ui-theme] body.recovery-v61 .v61-call-first .v25-phone-number{font-size:27px}
 html[data-ui-theme] body.recovery-v61 .v61-call-first .v25-home-safety-links{gap:0 16px}
 html[data-ui-theme] body.recovery-v61 .portal-home>.v41-kurashi-entry,html[data-ui-theme] body.recovery-v61 .portal-home>.v61-practice{width:calc(100% - 24px);padding:18px;margin:24px auto}
 html[data-ui-theme] body.recovery-v61 .v41-help-entry{align-items:flex-start;flex-wrap:wrap;font-size:18px}
}
@media(prefers-reduced-motion:reduce){html[data-ui-theme] body.recovery-v61 *,html[data-ui-theme] body.recovery-v61 *::before,html[data-ui-theme] body.recovery-v61 *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Resolve the inherited ID-scoped editorial overrides at the actual safety node. */
html[data-ui-theme] body.recovery-v61 #panels .portal-home>#call-first{margin:16px auto!important;padding:18px 20px!important;width:calc(100% - 40px)!important;background:#321c25!important;border:1px solid #ac6a64!important;border-left:6px solid #cf7771!important}
html[data-ui-theme] body.recovery-v61 #panels #call-first .v25-phone-tiles{grid-template-columns:repeat(2,minmax(0,1fr))!important}
html[data-ui-theme] body.recovery-v61 #panels #call-first .v25-phone-tile{display:flex!important;background:#fff7f0!important;color:#531d28!important;border:1px solid #bf8581!important;min-height:64px}
html[data-ui-theme] body.recovery-v61 #panels #call-first .v25-phone-tile :is(.v25-phone-number,.v25-phone-label){color:#531d28!important}
html[data-ui-theme] body.recovery-v61 .v25-header-safety>a.header-emergency[data-safety-route]{background:#7e222b!important;color:#fff!important;border:2px solid #c6615e!important;width:100%;max-width:none;box-sizing:border-box}
html[data-ui-theme] body.recovery-v61 .v25-header-safety>a.v25-header-disaster[data-safety-route]{width:100%;max-width:none;box-sizing:border-box}
html[data-ui-theme] body.recovery-v61 #panels #call-first .v25-home-safety-links a{color:#fff0d2!important}
@media(max-width:600px){html[data-ui-theme] body.recovery-v61 #panels .portal-home>#call-first{width:calc(100% - 24px)!important;padding:14px 12px!important}html[data-ui-theme] body.recovery-v61 #panels #call-first .v25-home-safety-links a{font-size:16px!important}html[data-ui-theme] body.recovery-v61 #panels #call-first .v25-home-safety-links a:nth-child(-n+2){display:none}}
@media(max-width:360px){html[data-ui-theme] body.recovery-v61 :is(.v25-header-safety,.v25-mobile-safety)>a[data-safety-route]{flex-direction:column;gap:4px}}

/* v27: quiet desktop masthead; mobile dimensions remain v61. */
html[data-ui-theme] body.recovery-v61 .language-select-control label::after{content:none}
html[data-ui-theme] body.recovery-v61 :is(.scene-motion,.scene-motion-global){display:none!important}
.v62-nav-more{display:none}
/* Keep the removed control's layout slot on mobile so wrapped menus retain
   exactly their established height. Visibility also removes keyboard focus. */
@media(max-width:1023px){html[data-ui-theme] body.recovery-v61 #site-navigation .scene-motion-global:not([hidden]){display:inline-flex!important;visibility:hidden;pointer-events:none}}
/* v29: apply the established PC layout on direct routes as well. */
@media(min-width:1024px){
html[data-ui-theme] body:is(.recovery-v61,.edition-v63) > header{position:relative;z-index:50;font-family:'Noto Sans JP',sans-serif;--v35-chrome-muted:var(--ui-muted);--v35-chrome-accent:var(--ui-link)}
html[data-ui-theme] body:is(.recovery-v61,.edition-v63) #site-navigation{font-family:'Noto Sans JP',sans-serif;--v35-chrome-muted:var(--ui-muted);--v35-chrome-accent:var(--ui-link)}
html[data-ui-theme] body:is(.recovery-v61,.edition-v63) .v25-header-safety{display:flex!important;border:0;padding:0}
html[data-ui-theme] body:is(.recovery-v61,.edition-v63) .v25-header-safety>a[data-safety-route]{display:flex;align-items:center;justify-content:center;color:#fff!important;text-align:center}
html[data-ui-theme] body:is(.recovery-v61,.edition-v63) .v25-header-safety>a[data-safety-route]>span{min-width:0}
html[data-ui-theme] body:is(.recovery-v61,.edition-v63) .header-language-cluster{max-width:none;display:flex;align-items:center}
html[data-ui-theme] body:is(.recovery-v61,.edition-v63) #language-flags{overflow:visible;max-width:none;width:auto;position:relative;margin:0;padding:0}
html[data-ui-theme] body:is(.recovery-v61,.edition-v63) .language-flag-button{display:flex;align-items:center;justify-content:center;position:relative;cursor:pointer}
html[data-ui-theme] body:is(.recovery-v61,.edition-v63) .language-flag{object-fit:contain}
}
@media(min-width:1024px){
 html[data-ui-theme] body:is(.recovery-v61,.edition-v63) > header{height:100px;min-height:100px;box-sizing:border-box;display:grid;grid-template-columns:230px minmax(0,1fr) auto;grid-template-rows:36px 63px;gap:0;padding:0 24px;border:0;border-bottom:1px solid var(--ui-line);align-items:center;background:var(--v35-chrome)}
 html[data-ui-theme] body:is(.recovery-v61,.edition-v63) > header>.identity{grid-row:2;grid-column:1;min-width:0;gap:10px;padding:0;width:max-content;max-width:224px}
 html[data-ui-theme] body:is(.recovery-v61,.edition-v63) > header .mark{width:38px;height:38px;min-width:38px;line-height:36px;font-size:26px}
 html[data-ui-theme] body:is(.recovery-v61,.edition-v63) > header .brand-title{font-size:17px;letter-spacing:.14em;white-space:nowrap}
 html[data-ui-theme] body:is(.recovery-v61,.edition-v63) > header .brand-subtitle{font-size:11px;letter-spacing:.08em;line-height:1.4;max-height:31px;overflow:hidden}
 html[data-ui-theme] body:is(.recovery-v61,.edition-v63) .header-language-cluster{grid-row:1;grid-column:1/-1;width:100%;justify-content:flex-end;align-self:center;gap:0}
 html[data-ui-theme] body:is(.recovery-v61,.edition-v63) .language-select-control{display:none!important}
 html[data-ui-theme] body:is(.recovery-v61,.edition-v63) #language-flags{display:flex!important;flex-wrap:nowrap;gap:2px;align-items:center;justify-content:flex-end;height:36px;direction:ltr}
 html[data-ui-theme] body:is(.recovery-v61,.edition-v63) .language-flag-button{width:32px;height:32px;min-width:32px;min-height:32px;padding:4px;border:0;border-radius:3px;background:transparent;box-shadow:none;flex:0 0 32px}
 html[data-ui-theme] body:is(.recovery-v61,.edition-v63) .language-flag-button[aria-pressed=true]{border:0;background:var(--v35-chrome-hover);box-shadow:none}
 html[data-ui-theme] body:is(.recovery-v61,.edition-v63) .language-flag{width:24px;height:17px;border:0;box-shadow:none}
 html[data-ui-theme] body:is(.recovery-v61,.edition-v63) .v25-header-safety{grid-row:2;grid-column:3;justify-self:end;gap:8px;width:auto;max-width:360px;min-width:0;align-items:center}
 html[data-ui-theme] body:is(.recovery-v61,.edition-v63) .v25-header-safety>a[data-safety-route]{min-height:40px;max-width:176px;min-width:0;width:auto!important;padding:8px 10px;font:500 16px/20px 'Noto Sans JP',sans-serif;letter-spacing:0;gap:6px;border-width:1px!important;border-radius:5px;flex:0 1 auto;white-space:normal;overflow-wrap:normal}
 html[data-ui-theme] body:is(.recovery-v61,.edition-v63) .v25-header-safety>a.header-emergency[data-safety-route]{background:#7e222b!important;border:1px solid #c6615e!important}
 html[data-ui-theme] body:is(.recovery-v61,.edition-v63) .v25-header-safety>a.v25-header-disaster[data-safety-route]{background:transparent!important;border:1px solid #709da7!important;color:var(--v35-chrome-ink)!important}
 html[data-ui-theme] body:is(.recovery-v61,.edition-v63) .v25-header-safety>a[data-safety-route]>span{flex:0 1 auto;white-space:normal;overflow-wrap:normal;line-height:20px}
 html[data-ui-theme] body:is(.recovery-v61,.edition-v63) .v25-header-safety svg{width:17px;height:17px;flex:0 0 17px}
 html[data-ui-theme] body:is(.recovery-v61,.edition-v63) #site-navigation{position:absolute;top:36px;inset-inline-start:260px;inset-inline-end:390px;height:63px;min-height:0;box-sizing:border-box;padding:0;gap:4px;display:flex;flex-wrap:nowrap;align-items:center;justify-content:center;border:0;background:transparent;overflow:visible;z-index:60}
 html[data-ui-theme] body:is(.recovery-v61,.edition-v63) #site-navigation>a{display:flex;flex:none}
 html[data-ui-theme] body:is(.recovery-v61,.edition-v63) #site-navigation>a[data-v63-overflow=true]{display:none}
 html[data-ui-theme] body:is(.recovery-v61,.edition-v63) #site-navigation :is(a,summary){min-height:40px;height:auto;font:500 16px/1.4 'Noto Sans JP',sans-serif;letter-spacing:0;padding:8px 10px;white-space:nowrap;border:0;align-items:center;box-sizing:border-box;text-decoration:none}
 html[data-ui-theme] body:is(.recovery-v61,.edition-v63) #site-navigation a>b{font:inherit;letter-spacing:inherit}
 html[data-ui-theme] body:is(.recovery-v61,.edition-v63) #site-navigation>a>span{display:none}
 html[data-ui-theme] body:is(.recovery-v61,.edition-v63) .v62-nav-more{display:block;position:relative;flex:none;min-width:0;margin:0;padding:0;border:0;color:var(--v35-chrome-ink)}
 html[data-ui-theme] body:is(.recovery-v61,.edition-v63) .v62-nav-more[data-v63-empty=true]{display:none}
 html[data-ui-theme] body:is(.recovery-v61,.edition-v63) .v62-nav-more>summary{cursor:pointer;list-style:none;border-radius:4px;display:flex;gap:7px}
 html[data-ui-theme] body:is(.recovery-v61,.edition-v63) .v62-nav-more>summary::-webkit-details-marker{display:none}
 html[data-ui-theme] body:is(.recovery-v61,.edition-v63) .v62-nav-more>summary::after{content:'⌄';font-size:16px}
 html[data-ui-theme] body:is(.recovery-v61,.edition-v63) .v62-nav-more[open]>summary{background:var(--v35-chrome-hover)}
 html[data-ui-theme] body:is(.recovery-v61,.edition-v63) .v62-nav-more>.v62-nav-links{position:absolute;inset-inline-end:0;top:100%;width:280px;max-width:calc(100vw - 32px);max-height:calc(100vh - 110px);overflow-y:auto;background:var(--v35-chrome);border:1px solid var(--ui-line);border-radius:6px;padding:10px;box-shadow:0 16px 32px #0005}
 html[data-ui-theme] body:is(.recovery-v61,.edition-v63) #site-navigation .v62-nav-links>a{display:flex;white-space:normal;overflow-wrap:anywhere;min-width:0;width:100%;border-radius:4px}
 html[data-ui-theme] body:is(.recovery-v61,.edition-v63) #site-navigation .v62-nav-links>a>span{display:none}
 html[data-ui-theme] body:is(.recovery-v61,.edition-v63) #site-navigation .v62-nav-links>a[data-v63-copy-hidden=true]{display:none}
 html[data-ui-theme] body:is(.recovery-v61,.edition-v63) #panels .portal-home>#call-first{display:none!important}
}
@media(min-width:1024px){html[data-ui-theme] body:is(.recovery-v61,.edition-v63) :is(.scene-motion,.scene-motion-global){display:none!important}}
@media(max-width:1023px){html[data-ui-theme] body.edition-v63:not(.recovery-v61) #site-navigation :is([data-v61-kurashi],[data-v62-kurashi]){display:none!important}}

/* Text-only editorial lists; no image-shaped gaps after the display policy. */
html[data-ui-theme] body.immersive #panels :is(.v26-news-grid,.v26-event-grid,.v26-news-compact,.cm-today-headlines,.cm-today-event-list) {
 display:block!important;
}
html[data-ui-theme] body.immersive #panels :is(.v26-news-card,.cm-today-headline,.cm-today-event,.cm-live-date-story) {
 display:block!important;min-width:0;width:100%;box-sizing:border-box;
 padding-block:20px!important;border-bottom:1px solid var(--ui-line);margin:0!important;
}
html[data-ui-theme] body.immersive #panels :is(.v26-news-card,.cm-today-headline,.cm-today-event,.cm-live-date-story) :is(h3,h4,p,a) {
 max-width:none;overflow-wrap:break-word;word-break:normal;
}
html[data-ui-theme] body.immersive #panels :is(.cm-today-event-info,.cm-live-date-body) {width:100%;min-width:0}
html[data-ui-theme] body.immersive #panels :is(.v26-news-card,.cm-today-headline) :is(h3,h4) {margin-block:10px}
html[data-ui-theme] body.immersive #panels .v26-news-date {display:block;margin-bottom:10px}
html[data-ui-theme] body.immersive #panels .v62-text-tile {min-height:0;padding-block:24px}
html[data-ui-theme] body.immersive #panels .v62-text-tile::before {background:none}
html[data-ui-theme] body.immersive .v62-news-date {font-size:16px!important;line-height:1.6;white-space:normal;overflow-wrap:anywhere}
html[data-ui-theme] body.immersive .v62-date-ended {color:var(--ui-muted)!important}

/* Retain the existing section and links, with ordinary document scrolling. */
html[data-ui-theme] body.recovery-v61 #ping-news-desk {
 display:block!important;position:relative!important;inset:auto!important;
 width:calc(100% - 40px);max-width:1440px;height:auto!important;min-height:0!important;
 margin:48px auto 0;padding:24px;box-sizing:border-box;background:var(--ui-surface);color:var(--ui-ink);
}
html[data-ui-theme] body.recovery-v61 #ping-news-desk .v62-ping-heading {
 display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:16px;
}
html[data-ui-theme] body.recovery-v61 #ping-news-desk .v62-ping-heading h2 {margin:0;font-size:22px;line-height:1.5}
html[data-ui-theme] body.recovery-v61 #ping-news-desk .ping-desk-source {
 display:inline-block;flex:none;width:auto;min-width:0;height:auto;padding:0;font-size:16px;line-height:1.5;color:var(--ui-link);background:none;border:0;
}
html[data-ui-theme] body.recovery-v61 #ping-news-desk :is(.ping-desk-body,.ping-ticker-viewport,.ping-ticker-track) {
 display:block!important;position:static;width:100%;height:auto!important;min-height:0!important;max-height:none;
 overflow:visible!important;white-space:normal!important;transform:none!important;animation:none!important;
 mask:none!important;-webkit-mask:none!important;padding:0;margin:0;
}
html[data-ui-theme] body.recovery-v61 #ping-news-desk .ping-ticker-track {list-style:none}
html[data-ui-theme] body.recovery-v61 #ping-news-desk .v62-ping-row {padding:18px 0;border-top:1px solid var(--ui-line);min-width:0}
html[data-ui-theme] body.recovery-v61 #ping-news-desk .v62-ping-meta {display:flex;flex-wrap:wrap;gap:8px 20px;font-size:16px;color:var(--ui-muted)}
html[data-ui-theme] body.recovery-v61 #ping-news-desk .v62-ping-row h3 {margin:8px 0;font-size:18px;line-height:1.6}
html[data-ui-theme] body.recovery-v61 #ping-news-desk .ping-desk-story {
 display:inline!important;width:auto;max-width:none;min-width:0;height:auto!important;min-height:0!important;
 padding:0;margin:0;white-space:normal!important;overflow:visible!important;text-overflow:clip;
 font-size:18px!important;line-height:1.6;color:var(--ui-link);background:none;border:0;
}
html[data-ui-theme] body.recovery-v61 #ping-news-desk .v62-ping-summary {font-size:16px;line-height:1.8;margin:0;color:var(--ui-ink)}
html[data-ui-theme] body.recovery-v61 #ping-news-desk .ping-headline-date {font-size:16px;margin:0;white-space:normal;opacity:1}
@media(max-width:600px){
 html[data-ui-theme] body.recovery-v61 #ping-news-desk {width:calc(100% - 24px);padding:18px;margin-top:32px}
}
/* The remaining scenes set their own count after filtering unavailable media. */
html[data-ui-theme] body.immersive .portal-home .cm-scroll-story[data-story-motion="scrub"] :is(.story-journey,.story-spotlight) {height:var(--v62-story-length)}
/* Match the heading inset, with and without a loaded video thumbnail. */
html[data-ui-theme] body.immersive .v25-video-card .v25-video-watch {margin-inline:20px;width:fit-content;max-width:calc(100% - 40px)}
html[data-ui-theme] body.immersive .v25-video-card .v25-video-kind {width:fit-content;max-width:calc(100% - 40px);margin-inline:20px;padding-inline:8px;box-sizing:border-box}

/* v29: descendants share one text flow, including links inside flex headings. */
html[data-ui-theme] body.immersive #panels .v63-heading,
html[data-ui-theme] body.immersive #panels .v63-heading * {word-break:normal;overflow-wrap:anywhere;line-break:strict;text-wrap:balance}
@supports (word-break:auto-phrase) {
 html[data-ui-theme] body.immersive #panels .v63-heading,
 html[data-ui-theme] body.immersive #panels .v63-heading * {word-break:auto-phrase}
}
html[data-ui-theme] body.immersive #panels .v63-heading .v29-text {min-width:0}
html[data-ui-theme] body.immersive #panels .v63-heading :is(.v29-heading-compound,.v29-heading-tail) {display:inline;white-space:nowrap}

/* v29: contain font extents while preserving glyph and neighbouring positions. */
html:is([lang="ja"],[lang="en"])[data-ui-theme] body.immersive #panels .discovery-title {
  padding-top: 6px;
  margin-top: -6px;
  padding-bottom: 5px;
  margin-bottom: 17px;
}
@media (max-width:760px) {
  html:is([lang="ja"],[lang="en"])[data-ui-theme] body.immersive #panels .discovery-title { margin-bottom:15px; }
}
html:is([lang="ja"],[lang="en"],[lang="th"])[data-ui-theme] body.immersive #panels #cm-today-title,
html:is([lang="ja"],[lang="en"],[lang="th"])[data-ui-theme] body.immersive #panels #page-senior .page-heading h1 {
  padding-top: 3px;
  margin-top: -3px;
  padding-bottom: 2px;
  margin-bottom: -2px;
}
html:is([lang="ja"],[lang="en"],[lang="th"])[data-ui-theme] body.immersive #panels .organization-preview > .editorial-section-head > h2 {
  padding-top: 2px;
  margin-top: -2px;
}
/* Shared map headings also occur in expanded details. */
html:is([lang="ja"],[lang="en"],[lang="th"])[data-ui-theme] body.immersive #panels .v26-map h2 {
  padding-top: 3px;
  margin-top: -3px;
  padding-bottom: 2px;
  margin-bottom: 12px;
}

/* Direct safety routes only: keep typography and click minimum heights. */
body.edition-v63:not(.recovery-v61) #ping-news-desk {
 display:block!important;height:auto!important;max-height:none;overflow:visible!important;
}
body.edition-v63:not(.recovery-v61) #ping-news-desk :is(.ping-desk-body,.ping-ticker-viewport,.ping-ticker-track) {
 display:block!important;position:static;width:100%;height:auto!important;max-height:none;
 overflow:visible!important;white-space:normal!important;transform:none!important;animation:none!important;
 mask:none!important;-webkit-mask:none!important;padding:0;margin:0;
}
body.edition-v63:not(.recovery-v61) #ping-news-desk .ping-desk-story {
 max-width:100%;height:auto!important;white-space:normal!important;overflow:visible!important;text-overflow:clip;
}

/* Natural content height: no text truncation or empty picture placeholders. */
html[data-ui-theme] body.immersive #panels .v41-kurashi-entry:not(:has(.v41-kurashi-art)){grid-template-columns:1fr;gap:0;margin-block:32px;padding:24px}
html[data-ui-theme] body.immersive #panels .v41-kurashi-body>p{max-width:70ch}
html[data-ui-theme] body.immersive-v34 .portal-home>#today-overview.v35-daily-desk{padding-top:32px}
html[data-ui-theme] body.immersive #panels .cm-drill-bridge{margin-block:32px;padding-block:28px}
html[data-ui-theme] body.immersive #panels #today-overview .cm-today-weather[data-weather-state="official-links"]{display:block;padding:22px 24px}
html[data-ui-theme] body.immersive #panels #today-overview .cm-today-weather[data-weather-state="official-links"] .cm-weather-body{display:grid;grid-template-columns:36px minmax(0,1fr);gap:8px 14px;margin-top:14px;align-items:center}
html[data-ui-theme] body.immersive #panels #today-overview .cm-today-weather[data-weather-state="official-links"] .cm-weather-icon{width:32px;height:32px}
html[data-ui-theme] body.immersive #panels #today-overview .cm-today-weather[data-weather-state="official-links"] .cm-weather-body h4{margin:0}
html[data-ui-theme] body.immersive #panels #today-overview .cm-today-weather[data-weather-state="official-links"] .cm-weather-body p{grid-column:2;margin:0}
html[data-ui-theme] body.immersive #panels #today-overview .cm-today-weather .cm-weather-empty{min-height:0;padding-block:8px}
html[data-ui-theme] body.immersive #panels :is(.v39-discovery-grid,.guide-results,.place-grid,.organization-grid,.organization-preview-grid,.directory-grid){grid-template-columns:1fr!important;gap:16px!important;align-items:start}
html[data-ui-theme] body.immersive #panels :is(.place-card-link,.organization-card-link){min-height:0}
html[data-ui-theme] body.immersive #panels :is(.v39-place-description,.v39-identity-name){display:block;-webkit-line-clamp:unset;overflow:visible}
html[data-ui-theme] body.immersive #panels .v39-place-body{padding:20px}
html[data-ui-theme] body.immersive #panels .v39-place-description{margin-bottom:14px}
html[data-ui-theme] body.immersive #panels .v39-card-links{margin-top:0}
html[data-ui-theme] body.immersive #panels .org-meta{margin-top:16px}
html[data-ui-theme] body.immersive #panels .cm-map-controls{margin-bottom:12px}
@media(min-width:760px){
 html[data-ui-theme] body.immersive #panels :is(.v39-place,.v39-place-featured):has(>.v39-photo){display:grid;grid-template-columns:240px minmax(0,1fr);align-items:start}
 html[data-ui-theme] body.immersive #panels :is(.v39-place,.v39-place-featured)>.v39-photo{display:contents}
 html[data-ui-theme] body.immersive #panels :is(.v39-place,.v39-place-featured)>.v39-photo img{grid-column:1;grid-row:1;position:static;width:100%;height:auto;aspect-ratio:4/3;min-height:0;max-height:230px!important;object-fit:cover;flex:none}
 html[data-ui-theme] body.immersive #panels :is(.v39-place,.v39-place-featured)>.v39-photo>figcaption{grid-column:1/-1;grid-row:2;margin:0}
 html[data-ui-theme] body.immersive #panels .v39-place:has(>.v39-photo)>.v39-place-body{grid-column:2;grid-row:1}
 html[data-ui-theme] body.immersive #panels .v39-place-featured h3{font-size:24px}
 html[data-ui-theme] body.immersive #panels :is(.organization-card,.organization-preview article):has(>.media-banner){display:grid;grid-template-columns:180px minmax(0,1fr);gap:0 24px;align-items:start}
 html[data-ui-theme] body.immersive #panels :is(.organization-card,.organization-preview article)>.media-banner{display:contents}
 html[data-ui-theme] body.immersive #panels :is(.organization-card,.organization-preview article)>.media-banner img{grid-column:1;grid-row:1/span 2;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;min-height:0}
 html[data-ui-theme] body.immersive #panels :is(.organization-card,.organization-preview article)>.media-banner figcaption{grid-column:1/-1;grid-row:4;margin-top:12px}
 html[data-ui-theme] body.immersive #panels :is(.organization-card,.organization-preview article):has(>.media-banner)>:not(.media-banner){grid-column:2}
}
@media(max-width:759px){
 html[data-ui-theme] body.immersive #panels :is(.v39-place,.v39-place-featured){display:flex;flex-direction:column}
 html[data-ui-theme] body.immersive #panels .v39-photo img{height:auto;aspect-ratio:16/9;min-height:0;object-fit:cover}
 html[data-ui-theme] body.immersive #panels .cm-map-workspace{grid-template-columns:1fr}
 html[data-ui-theme] body.immersive #panels #today-overview .cm-today-weather[data-weather-state="official-links"]{padding:18px}
}

html:is([lang=ar],[lang=km]) :is(h1,h2,h3,h4,.eyebrow){letter-spacing:normal}.brand-mark{direction:ltr;unicode-bidi:isolate}
.v69-app-languages{display:block;font-size:16px;line-height:1.6;font-weight:400;margin-top:.35rem}
/* A city desk: ink, paper, original photographs. No decorative palette. */
.language-locale-mark{font:600 16px/1 system-ui,sans-serif;color:var(--ui-ink,#f2f2ed);letter-spacing:.04em;direction:ltr}
.v69-translation-note{font-size:16px;line-height:1.8;padding:20px;margin:24px auto;max-width:1400px;border-block-start:1px solid currentColor}
html[lang="ar"] body{font-family:'Segoe UI',Tahoma,system-ui,sans-serif}
html[lang="km"] body{font-family:'Khmer UI','Leelawadee UI','Nirmala UI',system-ui,sans-serif;line-height:1.9}
html[dir="rtl"] .city-hero,html[dir="rtl"] .v66-city-home{text-align:start}
html[dir="rtl"] input[type="search"]{text-align:start}
html[data-ui-theme]{
 --ui-bg:#171a1c;--ui-surface:#202426;--ui-surface-soft:#282d30;--ui-surface-glass:#202426;
 --ui-ink:#f2f2ed;--ui-muted:#bfc4c4;--ui-line:#62696b;--ui-border:var(--ui-line);
 --ui-accent:#eceee8;--ui-accent-ink:#171a1c;--ui-link:#eceee8;--ui-gold:#c6ccca;
 --ui-hover:#303638;--ui-focus:#ffffff;--ui-header:#171a1c;--ui-reading:#171a1c;--ui-hero:#202426;
 --ui-ticker:#202426;--ui-ticker-ink:#f2f2ed;--ui-shadow:none;
 --portal-type:'Noto Sans JP','Noto Sans Thai',system-ui,sans-serif;
}
html[data-ui-theme="day"]{
 --ui-bg:#f8f8f4;--ui-surface:#ffffff;--ui-surface-soft:#eeefeb;--ui-surface-glass:#ffffff;
 --ui-ink:#242829;--ui-muted:#555e60;--ui-line:#90999a;--ui-accent:#242829;--ui-accent-ink:#ffffff;
 --ui-link:#242829;--ui-gold:#555e60;--ui-hover:#e9ece8;--ui-focus:#242829;--ui-header:#f8f8f4;
 --ui-reading:#f8f8f4;--ui-hero:#ffffff;--ui-ticker:#eeefeb;--ui-ticker-ink:#242829;
}
html[data-ui-theme] body.immersive-v35{
 --v35-chrome:var(--ui-bg);--v35-chrome-ink:var(--ui-ink);--v35-chrome-muted:var(--ui-muted);
 --v35-chrome-line:var(--ui-line);--v35-chrome-hover:var(--ui-hover);--v35-chrome-accent:var(--ui-ink);
 font-family:var(--portal-type);
}
html[data-ui-theme] body.immersive #panels :is(h1,h2,h3,h4){font-family:'Noto Serif JP',Georgia,serif!important;font-weight:500;letter-spacing:0;line-height:1.55}
html[data-ui-theme] body.immersive #panels :is(.eyebrow,.story-eyebrow,.card-kicker,.cm-today-strap){letter-spacing:.04em;font-family:var(--portal-type)}
html[data-ui-theme] body.immersive #panels .v66-city-home{--city-paper:var(--ui-surface);--city-line:var(--ui-line);--city-accent:var(--ui-ink);--portal-width:1440px}
html[data-ui-theme] body.immersive #panels .v66-city-home>:is(#today-overview,.v41-help-panel,.city-desk,.v41-kurashi-entry,.v40-resident-entry,.v32-nightlife){
 width:calc(100% - clamp(32px,10vw,160px));max-width:var(--portal-width);margin:64px auto;box-sizing:border-box;min-width:0;
}
/* Restore the reference: one full weather band, news and events below. */
html[data-ui-theme] body.immersive #panels #today-overview.v66-city-window{padding:0;border:0;border-radius:0;background:none;overflow:visible}
html[data-ui-theme] body.immersive #panels #today-overview .cm-today-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:24px;padding:0 0 26px;margin:0 0 30px;border-bottom:1px solid var(--ui-line);background:none}
html[data-ui-theme] body.immersive #panels #today-overview .cm-today-heading h2{max-width:none;font-size:clamp(27px,3.5vw,48px);text-wrap:balance}
html[data-ui-theme] body.immersive #panels #today-overview .cm-today-strap{font-size:12px;color:var(--ui-muted)}
html[data-ui-theme] body.immersive #panels #today-overview .v35-daily-intro{font-size:16px;line-height:1.8;max-width:none}
html[data-ui-theme] body.immersive #panels #today-overview .v35-daily-edition{font-size:14px;max-width:240px;min-width:0}
html[data-ui-theme] body.immersive #panels #today-overview .cm-today-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);gap:36px 42px;align-items:start}
html[data-ui-theme] body.immersive #panels #today-overview .cm-today-panel{min-width:0;display:block;margin:0;padding:24px 0 0;border:0;border-top:2px solid var(--ui-ink);border-radius:0;box-shadow:none;background:none;overflow:visible}
html[data-ui-theme] body.immersive #panels #today-overview .cm-today-panel h3{font-size:24px;line-height:1.6;margin:0 0 8px}
html[data-ui-theme] body.immersive #panels #today-overview .cm-today-weather[data-weather-state="official-links"]{grid-column:1/-1;padding:28px 30px;display:block;background:var(--ui-surface);border:1px solid var(--ui-line);border-radius:2px}
html[data-ui-theme] body.immersive #panels #today-overview .cm-today-weather .cm-weather-body{display:grid;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:8px 18px;margin:20px 0 16px;padding:0;min-height:0}
html[data-ui-theme] body.immersive #panels #today-overview .cm-today-weather .cm-weather-icon{width:32px;height:32px;color:var(--ui-ink)}
html[data-ui-theme] body.immersive #panels #today-overview .cm-today-weather .cm-weather-body p{grid-column:2;max-width:70ch;margin:0}
html[data-ui-theme] body.immersive #panels #today-overview .cm-today-weather h4{font-size:18px;margin:0;line-height:1.7}
html[data-ui-theme] body.immersive #panels #today-overview :is(p,a,time,button){font-size:16px;line-height:1.8;overflow-wrap:anywhere}
html[data-ui-theme] body.immersive #panels #today-overview :is(.cm-today-headlines,.cm-today-event-list){display:block;margin:22px 0 0;padding:0;overflow:visible}
html[data-ui-theme] body.immersive #panels #today-overview :is(.cm-today-headlines,.cm-today-event-list)>article{display:block;min-width:0;padding:20px 0!important;margin:0!important;border:0!important;border-bottom:1px solid var(--ui-line)!important;border-radius:0;background:none!important}
html[data-ui-theme] body.immersive #panels #today-overview :is(.cm-today-headlines,.cm-today-event-list) h4{font-size:21px;line-height:1.6;margin:12px 0;white-space:normal;overflow:visible;max-width:none}
html[data-ui-theme] body.immersive #panels #today-overview .cm-today-meta{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;color:var(--ui-muted)}
html[data-ui-theme] body.immersive #panels #today-overview .cm-today-event-date{display:flex;gap:8px;align-items:baseline;color:var(--ui-muted);padding:0;background:none}
html[data-ui-theme] body.immersive #panels #today-overview .cm-today-event-date strong{font:500 22px/1.6 var(--portal-type)}
html[data-ui-theme] body.immersive #panels #today-overview .cm-today-event-actions{display:flex;gap:12px 22px;flex-wrap:wrap;margin-top:14px}
html[data-ui-theme] body.immersive #panels #today-overview .cm-today-event-actions a{display:inline-flex;min-height:44px;align-items:center}
html[data-ui-theme] body.immersive #panels #today-overview .cm-today-panel-footer{display:flex;flex-wrap:wrap;gap:8px 20px;padding-top:18px;margin-top:24px;border-top:1px solid var(--ui-line);background:none}
html[data-ui-theme] body.immersive #panels #today-overview .cm-today-panel-footer p{flex-basis:100%;margin:0;color:var(--ui-muted)}
/* A substantial, plain entry for practice. */
html[data-ui-theme] body.immersive #panels .v66-city-home>.v41-help-panel{padding:0;background:none;border:0}
html[data-ui-theme] body.immersive #panels .v66-city-home .v41-help-entry{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px 24px;min-height:144px;padding:28px 32px;border:3px solid var(--ui-line);border-radius:2px;background:none;box-shadow:none;color:var(--ui-ink);text-decoration:none}
html[data-ui-theme] body.immersive #panels .v66-city-home .v41-help-entry strong{font:500 clamp(23px,2.5vw,32px)/1.6 var(--portal-type);grid-column:1;overflow-wrap:anywhere}
html[data-ui-theme] body.immersive #panels .v41-help-practice-tag{grid-column:1;grid-row:2;color:var(--ui-muted);background:none;border:0;padding:0;font-size:16px}
html[data-ui-theme] body.immersive #panels .v66-practice-arrow{grid-column:2;grid-row:1/span 2;font-size:36px}
html[data-ui-theme] body.immersive #panels .v41-help-note{font-size:16px;line-height:1.8;margin:12px 0;color:var(--ui-muted);max-width:none}
/* A notebook index, each subject on its own ruled line. */
html[data-ui-theme] body.immersive #panels .v66-city-home>.v41-kurashi-entry[data-city-notebook]{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.3fr);gap:32px 64px;padding:40px 0;border:0;border-top:2px solid var(--ui-ink);border-radius:0;background:none;overflow:visible}
html[data-ui-theme] body.immersive #panels [data-city-notebook]::before{display:none}
html[data-ui-theme] body.immersive #panels [data-city-notebook] .v41-kurashi-body h2{font-size:clamp(26px,3vw,42px);color:var(--ui-ink);margin:0 0 24px}
html[data-ui-theme] body.immersive #panels [data-city-notebook] .v41-kurashi-kicker{font:400 12px/1.8 var(--portal-type);color:var(--ui-muted);letter-spacing:.04em}
html[data-ui-theme] body.immersive #panels [data-city-notebook] .v41-kurashi-body p{font-size:16px;line-height:1.9;max-width:none}
html[data-ui-theme] body.immersive #panels [data-city-notebook] .v41-kurashi-link{background:none;border:0;border-bottom:1px solid var(--ui-line);border-radius:0;padding:12px 0;white-space:normal;font-size:16px;min-height:48px}
html[data-ui-theme] body.immersive #panels .v66-notebook-index{display:flex;flex-direction:column;min-width:0}
html[data-ui-theme] body.immersive #panels .v66-notebook-chapter{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:18px;align-items:center;min-width:0;min-height:86px;padding:20px 0;border:0;border-bottom:1px solid var(--ui-line);color:var(--ui-ink);text-decoration:none;background:none}
html[data-ui-theme] body.immersive #panels .v66-notebook-chapter strong{font:500 21px/1.6 var(--portal-type);overflow-wrap:anywhere}
html[data-ui-theme] body.immersive #panels .v66-chapter-number{font:400 14px/1.5 var(--portal-type);color:var(--ui-muted)}
html[data-ui-theme] body.immersive #panels .v66-chapter-arrow{font-size:24px}
html[data-ui-theme] body.immersive #panels .v66-notebook-services{grid-column:1/-1;border-top:1px solid var(--ui-line);padding-top:24px}
html[data-ui-theme] body.immersive #panels .v66-notebook-services>summary{font-size:18px;cursor:pointer;min-height:48px;padding-block:10px}
html[data-ui-theme] body.immersive #panels .v66-notebook-services .v26-living-home-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
/* Four venue notes, no competing coloured cards. */
html[data-ui-theme] body.immersive #panels .v32-nightlife{padding:36px 0;background:none;color:var(--ui-ink);border:0;border-top:2px solid var(--ui-ink);border-radius:0;overflow:visible}
html[data-ui-theme] body.immersive #panels .v32-nightlife>h2{font-size:clamp(27px,3vw,42px);max-width:none}
html[data-ui-theme] body.immersive #panels .v32-nightlife p{font-size:16px;line-height:1.9}
html[data-ui-theme] body.immersive #panels .v32-feature-kicker{font-size:12px;letter-spacing:.04em;color:var(--ui-muted)}
html[data-ui-theme] body.immersive #panels .v32-venue-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 48px;margin:32px 0}
html[data-ui-theme] body.immersive #panels .v32-venue{padding:24px 0;min-width:0;border:0;border-top:1px solid var(--ui-line);border-radius:0;background:none;display:flex;flex-direction:column}
html[data-ui-theme] body.immersive #panels .v32-venue h3{font-size:25px;color:var(--ui-ink);margin:12px 0}
html[data-ui-theme] body.immersive #panels .v32-venue-number{font:400 14px/1.5 var(--portal-type);color:var(--ui-muted)}
html[data-ui-theme] body.immersive #panels .v32-venue a{margin-top:auto;padding:14px 0;font-size:16px;min-height:48px;color:var(--ui-ink);text-underline-offset:5px;overflow-wrap:anywhere}
html[data-ui-theme] body.immersive #panels .v32-feature-date{color:var(--ui-muted)}
/* Hero text has a deliberate reading area; the photograph has no yellow wash. */
html[data-ui-theme] body.immersive #panels .city-hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;padding:112px 5vw 104px!important;min-height:740px;background:var(--ui-bg)}
html[data-ui-theme] body.immersive #panels .city-hero::before{background:none!important}
html[data-ui-theme] body.immersive #panels .city-intro{background:var(--ui-surface);color:var(--ui-ink);padding:32px;max-width:650px;border:0;border-left:3px solid var(--ui-ink);border-radius:0;box-shadow:none;text-shadow:none}
html[data-ui-theme] body.immersive #panels .city-intro .discovery-title{font-size:clamp(36px,4.2vw,64px);line-height:1.45;font-weight:500;letter-spacing:-.025em;text-shadow:none}
html[data-ui-theme] body.immersive #panels .city-intro .cinematic-deck{font-size:16px;line-height:1.9}
html[data-ui-theme] body.immersive #panels .discovery-search{border-radius:0;box-shadow:none;border:1px solid var(--ui-line);background:var(--ui-bg)}
html[data-ui-theme] body.immersive #panels .discovery-search button{border-radius:0;background:var(--ui-ink);color:var(--ui-bg)}
html[data-ui-theme] body.immersive #panels .hero-shortcuts a{border:0;border-bottom:1px solid var(--ui-line);border-radius:0;background:none;backdrop-filter:none;padding:10px 0;font-size:16px}
html[data-ui-theme] body.immersive #panels .hero-shortcuts{gap:8px 20px}
html[data-ui-theme] body.immersive #panels .scene-panorama{display:none}
html[data-ui-theme] body.immersive #panels .scene-tools{right:5vw;bottom:24px;max-width:90%;gap:12px;display:flex;align-items:center}
html[data-ui-theme] body.immersive #panels .scene-photo-credit{padding:8px 12px;border-radius:0;background:var(--ui-surface);color:var(--ui-ink);font-size:12px;line-height:1.7;backdrop-filter:none}
html[data-ui-theme] body.immersive #panels .scene-discover{border-radius:0;background:var(--ui-surface);color:var(--ui-ink);border:1px solid var(--ui-line);font-size:16px;backdrop-filter:none}
html[data-ui-theme] body.immersive .appearance-bar :is(.appearance-choices,.appearance-choice){border-radius:2px;backdrop-filter:none;background:var(--ui-surface);color:var(--ui-ink)}
html[data-ui-theme] body.immersive .appearance-choice[aria-pressed="true"]{background:var(--ui-ink);color:var(--ui-bg);border-color:var(--ui-ink)}
html[data-ui-theme] body.immersive .appearance-swatch{display:none}
html[data-ui-theme] body.immersive #panels .city-hero .today-jump{border-radius:2px;background:var(--ui-surface);color:var(--ui-ink);font-size:14px;backdrop-filter:none}
/* Keep the scroll narrative, with rectilinear photographic frames and captions. */
html[data-ui-theme] body.immersive #panels .cm-scroll-story{--story-ground:var(--ui-bg);--story-ink:var(--ui-ink);--story-muted:var(--ui-muted);--story-concept:var(--ui-surface);--story-concept-ink:var(--ui-ink);--story-accent:var(--ui-ink);--story-glass:var(--ui-surface);--story-line:var(--ui-line);font-family:var(--portal-type)}
html[data-ui-theme] body.immersive #panels .cm-scroll-story .story-concept{border-radius:0}
html[data-ui-theme] body.immersive #panels .cm-scroll-story .story-concept-copy{background:var(--ui-surface);padding:32px;text-align:start;max-width:650px;border-left:3px solid var(--ui-ink)}
html[data-ui-theme] body.immersive #panels .cm-scroll-story .story-concept-copy h2{font-size:clamp(28px,3.5vw,48px)}
html[data-ui-theme] body.immersive #panels .cm-scroll-story .story-concept-body{font-size:16px;line-height:1.9}
html[data-ui-theme] body.immersive #panels .cm-scroll-story .story-orbit-photo{border-radius:0;filter:none;box-shadow:none;transform:translateY(calc(var(--story-progress,0) * -25px))}
html[data-ui-theme] body.immersive #panels .cm-scroll-story .story-orbit-temple{left:0;top:12%;width:28%;height:62%}
html[data-ui-theme] body.immersive #panels .cm-scroll-story .story-orbit-cafe{right:0;bottom:8%;width:26%;height:45%;transform:translateY(calc(var(--story-progress,0) * 25px))}
html[data-ui-theme] body.immersive #panels .cm-scroll-story :is(.story-orbit-ring,.story-orbit-dot){display:none}
html[data-ui-theme] body.immersive #panels .cm-scroll-story .story-skip{border-radius:0;font-size:16px;white-space:normal;background:var(--ui-surface)}
html[data-ui-theme] body.immersive #panels .cm-scroll-story .story-section-heading{background:var(--ui-bg);color:var(--ui-ink)}
html[data-ui-theme] body.immersive #panels .cm-scroll-story :is(.story-journey-photo,.story-journey-panel:nth-child(even) .story-journey-photo){border-radius:0}
html[data-ui-theme] body.immersive #panels .cm-scroll-story .story-journey-copy{border-radius:0;background:var(--ui-surface);color:var(--ui-ink);border:0;border-left:3px solid var(--ui-ink);box-shadow:none;backdrop-filter:none;padding:24px 28px;max-width:600px}
html[data-ui-theme] body.immersive #panels .cm-scroll-story .story-journey-copy h3{font-size:clamp(24px,2.5vw,38px)}
html[data-ui-theme] body.immersive #panels .cm-scroll-story .story-big-number{top:0;font:400 38px/1.2 var(--portal-type);color:var(--ui-ink);text-shadow:none;background:var(--ui-bg);padding:10px 14px}
html[data-ui-theme] body.immersive #panels .cm-scroll-story .story-description{font-size:16px;line-height:1.9}
html[data-ui-theme] body.immersive #panels .cm-scroll-story .story-route-link{font-size:16px;line-height:1.7}
html[data-ui-theme] body.immersive #panels .cm-scroll-story .story-dock{border-radius:2px;box-shadow:none;backdrop-filter:none}
html[data-ui-theme] body.immersive #panels .cm-scroll-story .story-spotlight{background:var(--ui-bg);color:var(--ui-ink)}
html[data-ui-theme] body.immersive #panels .cm-scroll-story .story-spotlight .story-section-heading{background:var(--ui-bg);color:var(--ui-ink);padding:24px 6vw}
html[data-ui-theme] body.immersive #panels .cm-scroll-story .story-spotlight .story-section-heading>p{color:var(--ui-muted)}
html[data-ui-theme] body.immersive #panels .cm-scroll-story .story-spotlight-copy{border-radius:0;background:var(--ui-surface);color:var(--ui-ink);border:0;border-left:3px solid var(--ui-ink);backdrop-filter:none;box-shadow:none;bottom:10%;padding:24px 28px}
html[data-ui-theme] body.immersive #panels .cm-scroll-story .story-place-number{font:400 14px/1.5 var(--portal-type);color:var(--ui-muted)}
html[data-ui-theme] body.immersive #panels .cm-scroll-story .story-spotlight-copy h3{color:var(--ui-ink);font-size:clamp(25px,2.5vw,38px)}
html[data-ui-theme] body.immersive #panels .cm-scroll-story .story-spotlight-shade{background:linear-gradient(0deg,#0005,transparent 40%)}
html[data-ui-theme] body.immersive #panels .cm-scroll-story .story-spotlight .story-dock{background:var(--ui-surface);color:var(--ui-ink);border-color:var(--ui-line)}
html[data-ui-theme] body.immersive #panels .cm-scroll-story .story-spotlight .story-credit{background:var(--ui-surface);color:var(--ui-ink);border-radius:0}
@media(max-width:1023px){
 html[data-ui-theme] body.immersive #panels .city-hero{display:block;padding:112px 5vw 140px!important;min-height:760px}
 html[data-ui-theme] body.immersive #panels .city-intro{max-width:560px;padding:24px}
 html[data-ui-theme] body.immersive #panels .v66-city-home>.v41-kurashi-entry[data-city-notebook]{grid-template-columns:1fr;gap:24px}
 html[data-ui-theme] body.immersive #panels .v66-notebook-services .v26-living-home-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:680px){
 html[data-ui-theme] body.immersive #panels .v66-city-home>:is(#today-overview,.v41-help-panel,.city-desk,.v41-kurashi-entry,.v40-resident-entry,.v32-nightlife){width:calc(100% - 32px);margin:40px auto}
 html[data-ui-theme] body.immersive #panels #today-overview .cm-today-heading{grid-template-columns:1fr;gap:14px}
 html[data-ui-theme] body.immersive #panels #today-overview .v35-daily-edition{text-align:start;max-width:none;display:flex;flex-wrap:wrap;gap:8px 16px}
 html[data-ui-theme] body.immersive #panels #today-overview .cm-today-grid{grid-template-columns:1fr;gap:30px}
 html[data-ui-theme] body.immersive #panels #today-overview .cm-today-weather[data-weather-state="official-links"]{padding:22px 18px}
 html[data-ui-theme] body.immersive #panels #today-overview .cm-today-panel h3{font-size:22px}
 html[data-ui-theme] body.immersive #panels .v66-city-home .v41-help-entry{padding:24px 18px;min-height:160px}
 html[data-ui-theme] body.immersive #panels .v66-notebook-chapter strong{font-size:20px}
 html[data-ui-theme] body.immersive #panels .v66-notebook-services .v26-living-home-grid{grid-template-columns:1fr}
 html[data-ui-theme] body.immersive #panels .v32-venue-grid{grid-template-columns:1fr;gap:12px}
 html[data-ui-theme] body.immersive #panels .city-hero{padding:124px 16px 160px!important;min-height:780px}
 html[data-ui-theme] body.immersive #panels .city-intro{padding:20px;max-width:none}
 html[data-ui-theme] body.immersive #panels .city-intro .discovery-title{font-size:38px}
 html[data-ui-theme] body.immersive #panels .scene-tools{bottom:24px;left:16px;right:16px;max-width:none}
 html[data-ui-theme] body.immersive #panels .scene-photo-credit{font-size:11px;line-height:1.8}
 html[data-ui-theme] body.immersive #panels .scene-discover{position:relative;inset:auto;margin:24px 0 0;transform:none}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story .story-concept-copy{width:calc(100% - 32px);padding:24px;max-width:none}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story .story-journey-copy{padding:20px;max-width:100%;border-left:0;border-top:2px solid var(--ui-ink)}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story .story-spotlight-copy{padding:20px;border-left:0;border-top:2px solid var(--ui-ink)}
}
@media(max-width:700px){html[data-ui-theme] body.immersive .brand-title{white-space:normal;overflow-wrap:anywhere;max-width:100%}html[data-ui-theme] body.immersive .brand-stack{min-width:0}}
@media(forced-colors:active){html[data-ui-theme]{--ui-bg:Canvas;--ui-surface:Canvas;--ui-ink:CanvasText;--ui-muted:CanvasText;--ui-line:CanvasText;--ui-link:LinkText;--ui-accent:Highlight;--ui-accent-ink:HighlightText;--ui-focus:Highlight;--ui-header:Canvas;--ui-reading:Canvas}}

/* v70: the desktop masthead scrolls away. Reserve only actual pinned chrome. */
html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion="scrub"] .story-sticky{top:var(--story-sticky-top,0px)}
html[data-ui-theme] body.immersive footer .site-maker{font-size:16px;font-weight:600;line-height:1.7;letter-spacing:.02em}
/* A scaled TV can have a short CSS viewport. Keep the scene and its 16px copy. */
@media(min-width:761px){
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion="scrub"][data-story-layout="compact"] .story-section-heading{padding:10px 5vw 6px;gap:12px}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion="scrub"][data-story-layout="compact"] .story-section-heading>p{display:none}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion="scrub"][data-story-layout="compact"] .story-section-heading h2{font-size:25px;margin:0;line-height:1.4}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion="scrub"][data-story-layout="compact"] .story-journey-track{height:calc(100% - 105px);padding-top:0;align-items:stretch}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion="scrub"][data-story-layout="compact"] .story-journey-panel{min-height:0;max-height:none;height:100%}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion="scrub"][data-story-layout="compact"] .story-journey-copy{bottom:5px;padding:12px 18px;width:68%;max-width:600px}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion="scrub"][data-story-layout="compact"] :is(.story-journey-copy,.story-spotlight-copy) h3{font-size:24px;line-height:1.4;margin:2px 0 4px}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion="scrub"][data-story-layout="compact"] .story-description{font-size:16px;line-height:1.6}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion="scrub"][data-story-layout="compact"] .story-spotlight-copy{bottom:72px;padding:12px 18px;width:52vw;max-width:600px}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion="scrub"][data-story-layout="compact"] .story-place-number{font-size:14px}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion="scrub"][data-story-layout="compact"] .story-concept-copy{padding:18px;width:64%;max-width:650px}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion="scrub"][data-story-layout="compact"] .story-concept-copy h2{font-size:30px;line-height:1.4}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion="scrub"][data-story-layout="compact"] .story-concept-body{margin-top:12px}
}

/* Large external displays need photographs and controls that use the screen. */
/* Override the inherited 16px important floor only within these large scenes. */
@media(min-width:2560px) and (min-height:1200px){
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion="scrub"] .story-journey-track{height:calc(100% - 180px);gap:6vw;padding:12px 12vw 24px}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion="scrub"] .story-journey-panel{width:56vw;flex-basis:56vw;max-width:none;height:72svh;max-height:none;min-height:0}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion="scrub"] :is(.story-journey-copy,.story-spotlight-copy){width:55%;max-width:1050px;padding:40px 48px;border-left-width:5px}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion="scrub"] :is(.story-journey-copy,.story-spotlight-copy) h3{font-size:64px!important;line-height:1.45}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion="scrub"] .story-description{font-size:28px!important;line-height:1.8}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion="scrub"] .story-route-link{font-size:28px!important;min-height:68px;gap:36px}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion="scrub"] .story-route-link>span{font-size:40px!important}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion="scrub"] .story-eyebrow{font-size:24px!important}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion="scrub"] .story-section-heading{padding:36px 6vw 16px;gap:36px}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion="scrub"] .story-section-heading h2{font-size:64px!important}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion="scrub"] .story-section-heading>p{font-size:24px!important}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion="scrub"] .story-big-number{font-size:64px!important;padding:14px 24px}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion="scrub"] :is(.story-place-number,.story-image-note){font-size:24px!important}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion="scrub"] .story-credit{font-size:20px!important;line-height:1.65}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion="scrub"] .story-credit a{font-size:inherit!important}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion="scrub"] .story-dock{padding:8px 16px;gap:20px;bottom:30px}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion="scrub"] .story-dock button{min-width:76px;min-height:76px;font-size:32px!important}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion="scrub"] .story-dot span{font-size:26px!important}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion="scrub"] .story-spotlight .story-dock{bottom:auto;right:48px}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion="scrub"] .story-concept-copy{max-width:1100px;padding:48px}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion="scrub"] .story-concept-copy h2{font-size:80px!important}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion="scrub"] .story-concept-body{font-size:28px!important}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion="scrub"] .story-skip{font-size:26px!important;padding:16px 28px;bottom:30px}
}

.cm-image-link{display:block;cursor:pointer}.cm-image-link:focus-visible{outline:3px solid currentColor;outline-offset:4px}.story-orbit-photo>.cm-image-link,.story-journey-photo>.cm-image-link,.story-spotlight-photo>.cm-image-link{width:100%;height:100%}.story-concept-field .cm-image-link{pointer-events:auto}

html[data-ui-theme] body:is(.recovery-v61,.edition-v63)>header .brand-title{font-size:16px;letter-spacing:0;line-height:1.5;white-space:normal}
html[data-ui-theme] body:is(.recovery-v61,.edition-v63)>header .brand-subtitle{letter-spacing:.03em}
html[data-ui-theme] body.immersive #panels .v71-feature-entry{width:min(1360px,calc(100% - 10vw));margin:88px auto;padding:40px 0;border-top:2px solid var(--ui-ink);border-bottom:1px solid var(--ui-line);display:grid;grid-template-columns:1fr 1.35fr;gap:48px;color:var(--ui-ink)}
.v71-feature-kicker{font-size:13px;letter-spacing:.08em;color:var(--ui-muted)}
.v71-feature-intro h2{font-size:clamp(26px,3vw,42px);line-height:1.55;font-weight:500}
.v71-feature-intro p,.v71-feature-story p{font-size:16px;line-height:1.9}
.v71-feature-entry a{color:var(--ui-ink);text-underline-offset:.3em;font-size:16px}
.v71-feature-stories{display:grid;gap:0}
.v71-feature-story{display:block;padding:18px 0 22px;text-decoration:none;border-top:1px solid var(--ui-line)}
.v71-feature-story h3{font-size:23px;line-height:1.6;margin:0}
.v71-feature-story span{text-decoration:underline;text-underline-offset:.3em}
.v82-festival-planning{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:15px;padding-top:12px;border-top:1px solid #efd7a066}.v82-festival-planning a{min-height:44px;line-height:1.7}
.v71-footer-links{display:flex;flex-wrap:wrap;gap:18px}
.v71-footer-links a{font-size:16px;line-height:1.8}
.v71-artist-feature a{font-size:16px;line-height:1.8}
.v71-static-intro{max-width:980px;margin:40px auto;padding:24px;font-size:18px;line-height:1.9}
.v71-static-intro h1{font-size:36px;line-height:1.5}
.v71-static-intro li{margin:12px 0}
.v80-festival-entry{width:min(1360px,calc(100% - 10vw));margin:40px auto 65px;padding:35px 40px;display:grid;grid-template-columns:1.5fr 1fr;gap:35px;align-items:center;background:#112a33!important;color:#fff6da!important}.v80-festival-entry .v80-festival-kicker{font-size:13px!important;letter-spacing:.12em;color:#efd7a0!important}.v80-festival-entry h2{font-size:clamp(27px,3vw,45px)!important;line-height:1.5;color:#fff6da!important}.v80-festival-entry p{font-size:17px!important;line-height:1.9;color:#fff6da!important}.v80-festival-entry a{color:#fff6da!important;font-size:16px;display:inline-block;padding:8px 0;text-underline-offset:.3em}.v80-festival-entry img{width:100%;height:245px;object-fit:contain}.v80-festival-entry a:focus-visible{outline:3px solid #efd7a0;outline-offset:5px}@media(max-width:760px){.v80-festival-entry{width:calc(100% - 32px);padding:27px 24px;grid-template-columns:1fr;margin:32px auto}.v80-festival-entry>a{display:none}}
@media(max-width:760px){html[data-ui-theme] body.immersive #panels .v71-feature-entry{width:calc(100% - 32px);grid-template-columns:1fr;gap:24px;margin:44px auto;padding:24px 0}.v71-feature-story h3{font-size:22px}.v71-static-intro h1{font-size:28px}}

html[data-ui-theme] body.immersive .header-language-cluster{display:block;min-width:0;max-width:100%;width:auto}
html[data-ui-theme] body.immersive .language-select-control{display:none!important}
html[data-ui-theme] body.immersive #language-flags.v73-language-menu{display:flex!important;align-items:start;justify-content:flex-end;gap:8px;max-width:none;width:auto;position:relative;padding:0;margin:0}
html[data-ui-theme] body.immersive .v73-language-primary{display:flex;gap:6px;min-width:0}
html[data-ui-theme] body.immersive .v73-language-choice{display:flex;align-items:center;justify-content:center;gap:7px;min-width:44px;min-height:44px;width:auto;height:auto;padding:8px 10px;border:1px solid var(--ui-line);border-radius:3px;background:var(--ui-surface);color:var(--ui-ink);box-shadow:none;font:500 13px/1.5 var(--portal-type,system-ui)}
html[data-ui-theme] body.immersive .v73-language-choice[aria-pressed=true]{border:2px solid var(--ui-ink);padding:7px 9px;background:var(--ui-surface)}
html[data-ui-theme] body.immersive .v73-language-name{display:block;min-width:0;overflow-wrap:anywhere}
html[data-ui-theme] body.immersive .v73-language-more{position:relative;flex:none;margin:0}
html[data-ui-theme] body.immersive .v73-language-summary{display:flex;align-items:center;justify-content:center;gap:7px;min-height:44px;max-width:190px;padding:8px 12px;border:1px solid var(--ui-line);border-radius:3px;background:var(--ui-surface);color:var(--ui-ink);font:500 13px/1.5 var(--portal-type,system-ui);cursor:pointer;list-style:none;overflow-wrap:anywhere}
html[data-ui-theme] body.immersive .v73-language-summary::-webkit-details-marker{display:none}
html[data-ui-theme] body.immersive .v73-language-summary:after{content:'⌄';font-size:16px}
html[data-ui-theme] body.immersive .v73-language-panel{position:absolute;inset-inline-end:0;top:calc(100% + 8px);z-index:80;display:grid;grid-template-columns:1fr 1fr;gap:7px;width:390px;max-width:calc(100vw - 32px);max-height:min(60vh,520px);overflow:auto;padding:12px;background:var(--ui-surface);border:1px solid var(--ui-line);box-shadow:0 8px 24px #0002}
html[data-ui-theme] body.immersive .v73-language-more:not([open]) .v73-language-panel{display:none}
html[data-ui-theme] body.immersive .v73-language-panel .v73-language-choice{justify-content:flex-start;width:100%;text-align:start}
html[data-ui-theme] body.immersive .language-flag-hint{display:none!important}
html[data-ui-theme] body.immersive #language-flags.v73-language-menu{height:auto;direction:ltr}
@media(min-width:1024px){html[data-ui-theme] body.immersive:is(.recovery-v61,.edition-v63)>header{height:auto;min-height:128px;grid-template-rows:64px 63px;z-index:auto}html[data-ui-theme] body.immersive:is(.recovery-v61,.edition-v63) .header-language-cluster{grid-row:1;grid-column:1/-1;position:relative;z-index:70}html[data-ui-theme] body.immersive:is(.recovery-v61,.edition-v63) #site-navigation{top:64px}html[data-ui-theme] body.immersive .v73-language-choice{flex:0 0 auto}}
html[data-ui-theme] body.immersive .cm-scroll-story[data-story-effects="reduced"] :is(.story-journey-photo,.story-spotlight-photo) img{transform:none!important;transition:none!important}
@media(max-width:760px){html[data-ui-theme] body.immersive .header-language-cluster{width:100%;justify-self:stretch}html[data-ui-theme] body.immersive #language-flags.v73-language-menu{justify-content:flex-start;gap:6px;flex-wrap:nowrap}html[data-ui-theme] body.immersive .v73-language-primary{flex:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}html[data-ui-theme] body.immersive .v73-language-primary .v73-language-choice{flex-direction:column;gap:3px;padding:6px 3px;min-height:52px;font-size:11px}html[data-ui-theme] body.immersive .v73-language-primary .v73-language-choice[aria-pressed=true]{padding:5px 2px}html[data-ui-theme] body.immersive .v73-language-summary{min-height:52px;max-width:118px;padding:8px;font-size:12px}html[data-ui-theme] body.immersive .v73-language-panel{max-width:calc(100vw - 32px);width:350px}}
html[data-ui-theme] body.immersive :is(.v39-photo img,.v36-venue-photo>img){object-fit:contain}

.cm-atlas-word,.cm-atlas-stamp,.cm-atlas-visual,.cm-atlas-footer{display:none}
@media(min-width:1024px) and (pointer:fine){
 html[data-ui-theme] body.immersive #panels .cm-atlas{position:relative;height:240svh;margin:0!important;padding:0!important;background:var(--ui-bg);isolation:isolate;max-width:none}
 html[data-ui-theme] body.immersive #panels .cm-atlas .cm-atlas-stage{position:sticky;top:0;display:block;min-height:0;height:100svh;padding:0!important;overflow:hidden;background:var(--ui-bg);border:0;isolation:isolate}
 html[data-ui-theme] body.immersive #panels .cm-atlas .v34-hero-scene,html[data-ui-theme] body.immersive #panels .cm-atlas .scene-tools,html[data-ui-theme] body.immersive #panels .cm-atlas .hero-scroll-note,html[data-ui-theme] body.immersive #panels .cm-atlas .scene-discover{display:none}
 html[data-ui-theme] body.immersive #panels .cm-atlas .city-intro{position:absolute;left:5vw;bottom:17%;width:29vw;max-width:1100px;padding:0;border:0;background:none;box-shadow:none;z-index:6;transform:none}
 html[data-ui-theme] body.immersive #panels .cm-atlas .city-intro .eyebrow,html[data-ui-theme] body.immersive #panels .cm-atlas .city-intro .city-country,html[data-ui-theme] body.immersive #panels .cm-atlas .city-intro .cinematic-deck{display:none}
 html[data-ui-theme] body.immersive #panels .cm-atlas .city-intro .discovery-title{font-family:'Noto Serif JP',serif!important;font-size:clamp(40px,4.8vw,140px);line-height:1.45;letter-spacing:-.04em;margin:0 0 24px;text-wrap:balance}
 html[data-ui-theme] body.immersive #panels .cm-atlas .city-intro .city-intro-note{font-size:16px;line-height:1.8}
 html[data-ui-theme] body.immersive #panels .cm-atlas .city-intro :is(.v26-home-quicklinks,.city-quicklinks){flex-wrap:wrap;font-size:14px;gap:10px}
 html[data-ui-theme] body.immersive #panels .cm-atlas-word{display:block;position:absolute;left:4vw;top:10%;font:500 clamp(80px,12.5vw,270px)/.83 'Noto Serif JP',serif;letter-spacing:var(--atlas-word-space,-.075em);color:var(--ui-ink);z-index:0;transform:translateX(var(--atlas-word-x,0));pointer-events:none}
 .cm-atlas-word span{display:block}.cm-atlas-word span+span{margin-left:16vw}
 html[data-ui-theme] body.immersive #panels .cm-atlas-stamp{display:block;position:absolute;top:28px;left:5vw;font:500 11px/1.7 'Noto Sans JP',sans-serif;letter-spacing:.16em;color:var(--ui-muted);z-index:6;max-width:34vw}
 html[data-ui-theme] body.immersive #panels .cm-atlas-visual{display:block;position:absolute;inset:0;z-index:2;pointer-events:none;perspective:1500px}
 html[data-ui-theme] body.immersive #panels .cm-atlas-sheet{position:absolute;left:var(--atlas-x);top:0;width:var(--atlas-w);height:100%;margin:0;padding:0;pointer-events:none;border-radius:var(--atlas-round) 2px var(--atlas-round) 2px;background:none;overflow:visible;z-index:2}
 .cm-atlas-photo-link{display:block;position:absolute;top:var(--atlas-y);width:100%;height:var(--atlas-h);overflow:hidden;border-radius:inherit;transform:rotate(var(--atlas-r));transform-origin:50% 90%;pointer-events:auto;box-shadow:0 12px 25px #0002;background:var(--ui-surface)}.cm-atlas-photo-link:focus-visible{outline:4px solid var(--ui-link);outline-offset:5px}
 html[data-ui-theme] body.immersive #panels .cm-atlas-photo{display:block;width:100%;height:100%;object-fit:cover;filter:saturate(.88);max-height:none;max-width:none;border-radius:inherit;transform:none}
 html[data-ui-theme] body.immersive #panels .cm-atlas-caption{position:absolute;top:78%;left:calc(38vw + var(--atlas-i)*12.2vw - var(--atlas-x));width:11.5vw;pointer-events:auto;font:400 clamp(11px,.7vw,20px)/1.6 'Noto Sans JP',sans-serif;color:var(--ui-ink);text-align:start;line-height:1.7}
 .cm-atlas-number{opacity:.6;margin-inline-end:8px}.cm-atlas-name{font-family:'Noto Serif JP',serif;font-size:clamp(15px,1vw,28px)}.cm-atlas-source{display:block;color:var(--ui-muted);font-size:clamp(10px,.6vw,17px);overflow-wrap:anywhere;margin-top:5px}
 .cm-atlas:not([data-atlas-revealed]) .cm-atlas-caption .cm-atlas-name{visibility:hidden}
 html[data-ui-theme] body.immersive #panels .cm-atlas-footer{display:flex;align-items:center;gap:24px;position:absolute;bottom:28px;left:5vw;right:5vw;z-index:6;border-top:1px solid var(--ui-line);padding-top:18px;color:var(--ui-ink);font-size:12px;letter-spacing:.04em;background:var(--ui-bg)}
 .cm-atlas-meter{flex:1;height:1px;background:var(--ui-line);max-width:220px}.cm-atlas-meter i{display:block;width:calc(var(--atlas-progress,0)*100%);height:2px;background:var(--ui-ink)}
 html[data-ui-theme] body.immersive #panels .cm-atlas-toggle{min-height:44px;padding:8px 14px;border:1px solid var(--ui-line);border-radius:0;color:var(--ui-ink);background:var(--ui-bg);font:400 12px/1.5 'Noto Sans JP',sans-serif;cursor:pointer;margin-left:auto}
 html[data-ui-theme] body.immersive #panels .cm-atlas[data-atlas-mode=compact],html[data-ui-theme] body.immersive #panels .cm-atlas[data-atlas-mode=still]{height:auto}
 html[data-ui-theme] body.immersive #panels .cm-atlas[data-atlas-mode=compact] .cm-atlas-stage{position:relative;height:900px}
 html[data-ui-theme] body.immersive #panels .cm-atlas[data-atlas-mode=still] .cm-atlas-stage{position:relative;height:max(800px,100svh)}
 html[dir=rtl] .cm-atlas .city-intro{direction:rtl}
}
@media print{.cm-atlas{height:auto!important}.cm-atlas-stage{position:static!important}.cm-atlas-visual,.cm-atlas-word,.cm-atlas-stamp,.cm-atlas-footer{display:none!important}}

@media(min-width:1024px) and (pointer:fine){html[data-ui-theme] body.immersive #panels .cm-atlas .city-intro :is(input,button){font-size:clamp(16px,1vw,24px);min-height:52px}.cm-atlas-caption{background:var(--ui-bg)}html[data-ui-theme] body.immersive #panels .cm-atlas-footer{font-size:clamp(12px,.75vw,20px)}}

/* Stable reading regions. Movement belongs to photographs, never over copy. */
@media(min-width:1024px) and (pointer:fine){
 html[data-ui-theme] body.immersive #panels .cm-atlas .cm-atlas-word{left:5vw;top:11%;font-size:clamp(64px,8vw,300px);line-height:1.1;letter-spacing:.01em;white-space:nowrap;transform:none;z-index:4}
 html[data-ui-theme] body.immersive #panels .cm-atlas-word span{display:inline}
 html[data-ui-theme] body.immersive #panels .cm-atlas-word span+span{margin-left:.3em}
 html[data-ui-theme] body.immersive #panels .cm-atlas .city-intro{top:31%;bottom:auto;width:30vw}
 html[data-ui-theme] body.immersive #panels .cm-atlas .city-intro>.city-kicker{display:none}
 html[data-ui-theme] body.immersive #panels .cm-atlas .city-intro .discovery-title{font-size:clamp(36px,3.4vw,130px);line-height:1.45;margin-bottom:24px}
 html[data-ui-theme] body.immersive #panels .cm-atlas .cm-atlas-caption{top:auto;bottom:clamp(110px,12svh,260px);left:calc(40vw + var(--atlas-i)*11vw - var(--atlas-x));width:10vw}
 html[data-ui-theme] body.immersive #panels .cm-atlas .cm-atlas-stamp{max-width:42vw}
}
@media(min-width:761px){
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion] .story-concept-copy{width:46%;max-width:1500px;background:none;border:0;padding:24px;transform:none}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion] :is(.story-orbit-temple,.story-orbit-cafe){width:22%;height:55%;top:22%;bottom:auto;transform:none}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion] .story-orbit-temple{left:0}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion] .story-orbit-cafe{right:0}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion] .story-section-heading{position:relative;inset:auto;display:flex;align-items:baseline;gap:24px;padding:24px 6vw 8px;flex:none;background:var(--ui-bg)}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion] .story-section-heading h2{font-size:clamp(26px,2.6vw,64px)!important;margin:0;line-height:1.4}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion] .story-section-heading>p{font-size:clamp(16px,1vw,24px)!important}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion] .story-journey-track{height:calc(100% - var(--story-heading-height,100px) - 100px);padding:20px 6vw 12px;gap:6vw;align-items:stretch}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion] .story-journey-panel{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,1fr);grid-template-rows:minmax(0,1fr) auto;column-gap:3vw;width:88vw;flex-basis:88vw;height:100%;max-width:none;max-height:none;min-height:0;transform:none}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion] :is(.story-journey-photo,.story-spotlight-photo){position:relative;inset:auto;grid-column:1;grid-row:1;z-index:0;width:100%;height:100%;min-height:0;overflow:hidden;border-radius:0}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion] :is(.story-journey-copy,.story-spotlight-copy){position:relative;inset:auto;grid-column:2;grid-row:1 / 3;align-self:center;width:100%;max-width:none;padding:0;border:0;border-radius:0;box-shadow:none;backdrop-filter:none;background:none;color:var(--ui-ink);transform:none}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion] :is(.story-journey-copy,.story-spotlight-copy) h3{font-size:clamp(28px,2.8vw,64px)!important;line-height:1.5;margin:12px 0 18px}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion] .story-description{font-size:clamp(16px,1.05vw,28px)!important;line-height:1.9}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion] .story-route-link{font-size:clamp(16px,1.05vw,28px)!important;min-height:48px;margin-top:20px;gap:20px}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion] .story-eyebrow{font-size:clamp(14px,1vw,24px)!important}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion] .story-big-number{display:none}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion] .story-credit{position:relative;inset:auto;grid-column:1;grid-row:2;max-width:none;text-align:left;font-size:clamp(14px,.8vw,22px)!important;line-height:1.7;padding:12px 0 0;background:none;color:var(--ui-muted);overflow-wrap:anywhere}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion] .story-spotlight-stage{display:flex;flex-direction:column;min-height:0}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion] .story-spotlight-stack{position:relative;inset:auto;flex:1;min-height:0;margin:20px 6vw 100px}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion] .story-spotlight-panel{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,1fr);grid-template-rows:minmax(0,1fr) auto;column-gap:3vw;background:var(--ui-bg);overflow:visible}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion] .story-spotlight-shade{display:none}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion] .story-place-number{font-size:clamp(16px,1.2vw,30px)!important;color:var(--ui-muted);font-style:normal}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion] .story-dock{position:absolute;left:50%;right:auto;top:auto;bottom:20px;transform:translateX(-50%);flex-direction:row;gap:12px;padding:5px 12px;background:var(--ui-bg);color:var(--ui-ink);border:1px solid var(--ui-line);border-radius:0;backdrop-filter:none}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion] .story-spotlight .story-dock{left:50%;right:auto;top:auto;bottom:20px;transform:translateX(-50%);flex-direction:row}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion] .story-dots{flex-direction:row}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion] .story-dock button{min-width:44px;min-height:44px;font-size:24px!important;transform:none}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion] .story-dot span{font-size:16px!important}
 /* Reduced motion retains the same separate reading columns in document flow. */
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion=flow] .story-journey-track{height:auto;display:block;padding:0 6vw}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion=flow] :is(.story-journey-panel,.story-spotlight-panel){position:relative;inset:auto;width:100%;height:auto;min-height:500px;margin:30px 0 60px}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion=flow] :is(.story-journey-photo,.story-spotlight-photo){height:480px}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion=flow] .story-spotlight-stack{margin:0 6vw;flex:none}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion=flow] .story-dock{display:none}
}
@media(min-width:761px) and (max-height:600px){
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion] .story-section-heading{padding-top:12px;padding-bottom:4px}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion] .story-section-heading h2{font-size:25px!important}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion] :is(.story-journey-copy,.story-spotlight-copy) h3{font-size:26px!important;margin:4px 0 8px}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion] .story-route-link{margin-top:4px}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion] .story-credit{padding-top:4px}
}

/* Keep forecast, reading columns and practice entry on explicit theme pairs. */
html[data-ui-theme] body.immersive .cm-today{--cm-text:var(--ui-ink);--cm-muted:var(--ui-muted);--cm-accent:var(--ui-ink);--cm-surface:var(--ui-surface);--cm-border:var(--ui-line);--cm-bg:var(--ui-bg)}
html[data-ui-theme] body.immersive .cm-today-grid{grid-template-columns:1fr 1fr}
html[data-ui-theme] body.immersive .cm-today-weather{grid-column:1/-1}
html[data-ui-theme] body.immersive .cm-weather-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:12px}
html[data-ui-theme] body.immersive .cm-weather-day{padding:16px 8px}
html[data-ui-theme] body.immersive .cm-weather-range{margin:4px 0}
html[data-ui-theme] body.immersive #panels #today-overview .cm-today-weather .cm-weather-body{display:block;width:100%;min-width:0;margin:20px 0}
html[data-ui-theme] body.immersive #panels #today-overview .cm-today-weather .cm-weather-days{display:grid;width:100%;min-width:0;grid-template-columns:repeat(7,minmax(0,1fr));gap:12px}
html[data-ui-theme] body.immersive #panels #today-overview .cm-today-weather .cm-weather-body p{grid-column:auto;max-width:none}
html[data-ui-theme] body.immersive #panels #today-overview .cm-today-weather .cm-weather-range{display:flex;justify-content:center;gap:8px;margin:4px 0}
html[data-ui-theme] body.immersive .cm-news-tabs{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}
html[data-ui-theme] body.immersive .cm-news-tabs button[aria-pressed=true]{background:var(--ui-ink);color:var(--ui-bg)}
html[data-ui-theme] body.immersive .cm-today :is(.cm-today-note,.cm-weather-status,.cm-weather-observed,.cm-today-meta,.cm-weather-condition,.cm-weather-day-date){font-size:14px;line-height:1.7}
html[data-ui-theme] body.immersive .cm-today :is(.cm-weather-range,.cm-today-story-link){font-size:16px}
html[data-ui-theme] body.immersive #panels :is(.v41-help-entry,.v25-practice-entry){background:var(--ui-surface)!important;color:var(--ui-ink)!important;border:2px solid var(--ui-ink)!important}
html[data-ui-theme] body.immersive #panels :is(.v41-help-entry,.v25-practice-entry) *{color:inherit!important;opacity:1!important}
html[data-ui-theme] body.immersive #panels .cm-atlas-number{opacity:1;color:var(--ui-muted)}
@media(min-width:761px) and (prefers-reduced-motion:no-preference){
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion=scrub] .story-orbit-photo{overflow:hidden}
 html[data-ui-theme] body.immersive #panels .cm-scroll-story[data-story-motion=scrub] .story-orbit-photo img{height:120%;max-height:none;transform:translateY(calc(var(--story-progress,0) * -12%));will-change:transform}
}
@media(max-width:759px){
 html[data-ui-theme] body.immersive .cm-today-grid{grid-template-columns:1fr}
 html[data-ui-theme] body.immersive .cm-weather-days{grid-template-columns:repeat(2,minmax(0,1fr))}
 html[data-ui-theme] body.immersive #panels #today-overview .cm-today-weather .cm-weather-days{grid-template-columns:repeat(2,minmax(0,1fr))}
 html[data-ui-theme] body.immersive .cm-weather-day:last-child{grid-column:1/-1}
}


html[data-ui-theme] body.immersive #panels [data-community-help-entry] .v41-help-entry{display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;min-height:280px!important;width:100%;padding:32px!important;gap:22px!important;text-align:center;border:3px solid var(--ui-ink)!important;background:var(--ui-surface)!important;color:var(--ui-ink)!important;box-sizing:border-box}
html[data-ui-theme] body.immersive #panels [data-community-help-entry] .v41-help-entry strong{font:600 clamp(32px,4vw,60px)/1.5 'Noto Sans JP',sans-serif!important;flex:0;min-width:0;overflow-wrap:normal;text-wrap:balance;color:inherit!important}
html[data-ui-theme] body.immersive #panels [data-community-help-entry] .v41-help-practice-tag{font:600 18px/1.6 'Noto Sans JP',sans-serif!important;padding:6px 18px!important;border:1px solid currentColor!important;color:inherit!important}
@media(max-width:600px){html[data-ui-theme] body.immersive #panels [data-community-help-entry] .v41-help-entry{min-height:220px!important;padding:24px 16px!important}html[data-ui-theme] body.immersive #panels [data-community-help-entry] .v41-help-entry strong{font-size:32px!important}}

html[data-ui-theme] body.immersive #panels #today-overview .cm-news-original{margin:10px 0;font-size:14px;line-height:1.8;color:var(--ui-muted)}
html[data-ui-theme] body.immersive #panels #today-overview .cm-news-original summary{cursor:pointer;min-height:44px;padding:10px 0}
html[data-ui-theme] body.immersive #panels #today-overview .cm-news-original p{overflow-wrap:anywhere;margin:4px 0}
html[data-ui-theme] body.immersive #panels #today-overview .cm-translation-note{margin-top:10px}
html[data-ui-theme] body.immersive #panels #today-overview .cm-news-original:focus-within{outline:2px solid var(--ui-ink);outline-offset:4px}
