.language-menu{position:relative;z-index:950;flex-shrink:0}
.language-trigger{display:grid;place-items:center;list-style:none;width:34px;height:34px;border:1px solid var(--line);border-radius:50%;background:#edf0e2;color:#59754e;cursor:pointer}
.language-trigger::-webkit-details-marker{display:none}
.language-trigger:focus-visible{outline:3px solid #c77c3f;outline-offset:4px}
.language-panel{position:absolute;top:calc(100% + 11px);right:0;width:205px;padding:13px;border:1px solid var(--line);border-radius:12px;background:var(--white);box-shadow:0 12px 35px #233b3033}
#language-current{margin:3px 5px 10px;font-size:11px;color:var(--muted)}
.language-panel>div{display:grid;gap:4px}
.language-panel button{display:block;width:100%;padding:10px 12px;border:1px solid transparent;border-radius:6px;font-size:12px;text-align:left;background:transparent;color:var(--ink);min-height:38px}
.language-panel button:hover{background:#edf0df}
.language-panel button[aria-pressed=true]{background:#e4ecd3;border-color:#c4d4ac;color:#355b3e}
.language-panel button[aria-pressed=true]:after{content:'✓';float:right;margin-left:10px}
.site-header nav{gap:17px}
.intro h1>span{margin-right:.12em}
.intro-copy>span:first-child:after{content:' '}
.companion-card b>span[data-i18n="companion.title"]{display:inline;color:inherit;font:inherit;margin:0}
.original-place-name{font-size:11px!important;color:var(--muted)!important;margin-top:-8px!important}
.exploration-meta>span:first-child{min-width:0;overflow-wrap:anywhere}
.exploration-meta>span:last-child{flex-shrink:0}
.geography-shell .map-toolbar>span{max-width:45%;line-height:1.55}
.geography-shell .map-foot>span{min-width:0;line-height:1.5;flex:1}
.geography-shell .map-foot>div{flex-shrink:0}
.geography-shell .leaflet-tooltip.place-tooltip{width:max-content;max-width:210px;white-space:normal;overflow-wrap:anywhere}
.county-label{font-size:17px;letter-spacing:2px}
.water-label{max-width:150px}
.next-place .primary-button{white-space:normal;line-height:1.7;text-align:left;overflow-wrap:anywhere}
.journey-top{gap:12px}.journey-top>p{text-align:right;line-height:1.6}
.next-place .eyebrow,.section-heading .eyebrow,.slow-journal .eyebrow,.region-note .eyebrow{line-height:1.8}
.geo-credit,.photo-credit,.sources-dialog p,.sources-dialog li{overflow-wrap:anywhere}
.detail-links a{line-height:1.6}
.section-heading>p{text-align:right;max-width:35%;line-height:1.8}
.terrain-postcard>b{max-width:100%;overflow-wrap:anywhere}
.terrain-postcard>small{max-width:100%;text-align:center}
.terrain-postcard .postcard-label{max-width:calc(100% - 20px);font-size:7px}
.region-note h2,.memory-placeholder h3{line-height:1.55}
.companion-card b{line-height:1.6}
html[lang="en"] .intro h1{font-size:clamp(30px,3.2vw,43px);max-width:790px}
html[lang="en"] .intro h1 em{display:block}
html[lang="en"] .travel-stamp{flex-shrink:0;margin-left:20px}
html[lang="en"] .travel-stamp b{font-size:16px;text-align:center;padding:0 15px;line-height:1.4}
html[lang="en"] .travel-stamp small{max-width:125px;text-align:center;line-height:1.5}
html[lang="en"] .exploration-panel h2{font-size:25px}
html[lang="ko"] h1,html[lang="ko"] h2,html[lang="ko"] h3{word-break:keep-all;overflow-wrap:anywhere}
html[data-theme="dark"] .language-trigger{background:#243d2c;border-color:#627958;color:#d0e0ba}
html[data-theme="dark"] .language-panel{background:#1c3027;border-color:#56704c;box-shadow:0 12px 35px #0007}
html[data-theme="dark"] .language-panel button:hover{background:#2e4934}
html[data-theme="dark"] .language-panel button[aria-pressed=true]{background:#a9c691;border-color:#a9c691;color:#1c3c2a}
@media(max-width:1100px){.site-header nav{gap:13px}.travel-stamp{flex-shrink:0}.intro h1{max-width:720px}}
@media(max-width:800px){.demo-pill{display:none}.site-header nav{gap:12px}.section-heading>p{max-width:42%}}
@media(max-width:600px){.site-header #open-sources{font-size:0!important;width:25px;height:34px;display:grid;place-items:center;flex-shrink:0}.site-header #open-sources:after{content:'ⓘ';font:18px/1 Georgia}.site-header nav{gap:7px}.language-panel{width:205px}.language-panel button{min-height:42px}}
@media(max-width:520px){.intro h1,.intro h1 em{font-size:28px;line-height:1.5;max-width:100%}.intro h1>span{margin-right:0}.intro-copy{max-width:100%;line-height:1.95}.travel-stamp{display:none}.intro .eyebrow{font-size:7px;letter-spacing:1.25px;line-height:1.8}.journey-top{align-items:center;gap:8px}.journey-top .section-label{font-size:10px;line-height:1.6}.journey-top>p{font-size:8px;max-width:47%}.exploration-meta{align-items:start;gap:10px}.exploration-meta>span:first-child{font-size:8px;line-height:1.8}.exploration-meta>span:last-child{max-width:40%;text-align:right;white-space:normal;line-height:1.8;flex-shrink:1}.geography-shell .map-toolbar>span{max-width:40%;font-size:8px;line-height:1.5}.view-switch button{font-size:8px;padding:7px 6px}.geography-shell .map-foot{gap:6px;font-size:7px}.geography-shell .map-foot>div{gap:7px}.geography-shell .map-foot button{font-size:7px}.geography-shell .leaflet-tooltip.place-tooltip{max-width:150px;font-size:9px}.section-heading>p{max-width:none;text-align:left}.place-area{line-height:1.8}.day-heading{align-items:start}.day-heading .eyebrow{font-size:7px;line-height:1.8;max-width:65%}.day-tag{max-width:40%;text-align:center;line-height:1.6}.companion-card{align-items:center}.companion-card b{font-size:10px}.companion-card p{font-size:10px;line-height:1.85}.companion-card .text-button{font-size:9px;line-height:1.6;text-align:left}.current-place-actions{gap:13px}.current-place-actions .text-button{font-size:9px;line-height:1.8;text-align:left}.route-summary strong{font-size:10px;line-height:1.8}.route-summary small{font-size:8px;line-height:1.7}.next-place .eyebrow{font-size:6px;letter-spacing:1px}.next-place .primary-button{font-size:10px}.journal-stop b{overflow-wrap:anywhere}.chat-topics button{font-size:9px;line-height:1.6}.chat-dialog h2{font-size:15px}.chat-dialog>header>div{max-width:calc(100% - 90px)}.chat-dialog header p{line-height:1.6}.region-note h2{font-size:22px}.region-note p:not(.eyebrow){font-size:10px}.memory-placeholder{padding:24px 20px}.memory-placeholder h3{font-size:23px}.site-footer>div:last-child{max-width:62%;text-align:right;line-height:1.7}}
@media(max-width:350px){.site-header nav{gap:5px}.brand{font-size:21px;letter-spacing:2px}.brand small{font-size:6px}.brand-mark{font-size:33px}.appearance-controls{gap:3px}.theme-auto{width:27px}.language-trigger{width:29px;height:32px}.site-header #open-sources{width:20px}.language-panel{right:0}.intro h1,.intro h1 em{font-size:27px}}
