/* 中文排版层级：展示标题舒展，说明文字轻微留白，数字保持紧凑。 */
body{letter-spacing:.018em}
h2{font-weight:470;letter-spacing:.075em;line-height:1.42}
h3{font-weight:470;letter-spacing:.045em;line-height:1.5}
.brand{letter-spacing:.025em;font-weight:570}
.brand span{margin-left:-6px}
.nav nav a,.nav-end{letter-spacing:.07em}
.hero h1{font-weight:500;letter-spacing:.085em;line-height:1.32}
.hero h1 span{font-weight:300;letter-spacing:.11em}
.hero-sub{font-weight:330;letter-spacing:.055em;line-height:2.05}
.hero-bottom,.lead,.section-desc{letter-spacing:.035em}
.lead{font-weight:370;line-height:1.95}
.white-button,.outline-button,.text-link{letter-spacing:.055em}
.numbers strong,.climate-value{letter-spacing:-.055em}
.numbers small,.numbers span{letter-spacing:.025em}
.route-control h3{letter-spacing:.065em}
#routeSubtitle,.route-status,.route-note{letter-spacing:.025em}
.route-days button b,.day-tabs button strong{letter-spacing:.045em}
.day-image-copy h3{letter-spacing:.07em;line-height:1.46;font-weight:470}
.day-image-copy p,.day-detail>.muted{letter-spacing:.035em;line-height:1.9}
.day-map-link,.event time,.event p,.stay-note,.day-footnote{letter-spacing:.03em}
.event h4{letter-spacing:.055em;font-weight:460;line-height:1.75}
.feature-copy h2{letter-spacing:.075em;line-height:1.43;font-weight:470}
.feature-copy p:not(.eyebrow){letter-spacing:.04em;line-height:1.9}
.filters button,.search input{letter-spacing:.04em}
.spot-card h3{letter-spacing:.06em;font-weight:470;line-height:1.55}
.spot-card>p,.spot-card .spot-meta{letter-spacing:.025em}
.info-block h3{letter-spacing:.07em;font-weight:470}
.flight strong,.stay a{letter-spacing:.035em}
.note-item,footer p{letter-spacing:.03em}
.modal-body h2{letter-spacing:.08em;font-weight:470}
.modal-jp,.modal-desc,.modal-facts strong{letter-spacing:.03em}
.modal-desc{line-height:2.05}
.winter-guide-head strong,.winter-guide-cell b{letter-spacing:.055em}
.winter-guide-cell p{letter-spacing:.025em;line-height:1.9}

/* 注意事项页沿用同一套字距。 */
.prep-heading h3,.climate-city h4{letter-spacing:.065em;font-weight:470}
.climate-tip h4,.outfit-label strong,.outfit-detail h4,.pack-item h4,.gear-note h4{letter-spacing:.05em;font-weight:470}
.climate-tip p,.outfit-label small,.outfit-detail p,.outfit-note,.pack-item p,.gear-note p{letter-spacing:.025em}
.scene-tabs button,.pack-reset{letter-spacing:.04em}

@media(max-width:700px){
  body{letter-spacing:.012em}
  h2{letter-spacing:.06em;line-height:1.4}
  h3{letter-spacing:.035em}
  .brand{letter-spacing:.015em}
  .hero h1{letter-spacing:.07em;line-height:1.32}
  .hero h1 span{letter-spacing:.09em}
  .hero-sub{letter-spacing:.04em;line-height:1.95}
  .hero-bottom{letter-spacing:.015em}
  .day-image-copy h3{letter-spacing:.045em;line-height:1.43}
  .feature-copy h2{font-size:34px;letter-spacing:.045em;line-height:1.45}
  .spot-card h3{letter-spacing:.035em}
  .outfit-label strong,.pack-item h4{letter-spacing:.03em}
  .winter-guide-cell b{letter-spacing:.035em}
}

/* 语言切换位于导航右端，与原有黑白视觉保持一致。 */
.nav-actions{display:flex;align-items:center;gap:28px}
.language-control{position:relative;z-index:24}
.language-toggle{display:flex;align-items:center;gap:9px;padding:8px 0;background:transparent;color:#f3f3f3;font-size:11px;letter-spacing:.08em;white-space:nowrap}
.language-toggle svg{width:21px;height:21px;flex:none}
.language-toggle:hover,.language-toggle[aria-expanded="true"]{color:#c5c5c5}
.language-menu{position:absolute;top:calc(100% + 17px);right:-13px;min-width:174px;padding:7px;border:1px solid #ffffff38;background:#1a1a1af2;box-shadow:0 12px 36px #0007;backdrop-filter:blur(20px)}
.language-menu[hidden]{display:none}
.language-menu button{width:100%;display:flex;align-items:center;justify-content:space-between;text-align:left;background:transparent;color:#d9d9d9;padding:10px 12px;font-size:12px;letter-spacing:.055em}
.language-menu button span{font-size:9px;color:#888;letter-spacing:.12em}
.language-menu button:hover,.language-menu button[aria-pressed="true"]{background:#ffffff18;color:#fff}
html[lang="ja"] body{font-family:'Hiragino Kaku Gothic ProN','Yu Gothic',TravelSans,'Noto Sans JP',sans-serif}
html[lang="ja"] .hero h1{letter-spacing:.065em}
html[lang="ja"] .hero h1 span{letter-spacing:.075em}
@media(max-width:1050px){.nav-actions{gap:16px}.nav nav{gap:16px}}
@media(max-width:700px){.nav-actions{gap:20px}.language-toggle svg{width:22px;height:22px}.language-toggle{padding:8px 0}.language-menu{top:calc(100% + 14px);right:-8px}html[lang="ja"] .hero h1{font-size:clamp(40px,11vw,55px);letter-spacing:.035em}html[lang="ja"] .hero h1 span{font-size:.55em;letter-spacing:.035em}}
