:root { --forest:#1f5b45; --forest-dark:#163b2f; --ink:#252b28; --muted:#67716c; --paper:#fbfaf6; --soft:#f0f3ed; --white:#fff; --line:#dfe4df; --notice:#f5edd9; --content:1240px; --font-body:"Segoe UI Variable Text","Aptos","Noto Sans Arabic","Microsoft YaHei UI",Arial,sans-serif; --font-display:"Segoe UI Variable Display","Aptos Display","Segoe UI","Microsoft YaHei UI",Arial,sans-serif; }
* { box-sizing:border-box; }
.sr-only { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
html { scroll-behavior:smooth; }
h1,h2,h3 { overflow-wrap:anywhere; }
body { margin:0; color:var(--ink); background:var(--paper); font-family:var(--font-body); font-size:1rem; line-height:1.65; font-optical-sizing:auto; }
.language-gate-page { background:#111; }
a { color:inherit; } img { display:block; max-width:100%; }
.wrap { width:min(var(--content),calc(100% - 48px)); margin-inline:auto; }
.skip-link { position:fixed; inset-block-start:-5rem; inset-inline-start:1rem; z-index:100; background:white; padding:.75rem 1rem; }
.skip-link:focus { inset-block-start:1rem; }
:focus-visible { outline:3px solid #e0b94f; outline-offset:4px; }
.seo-breadcrumb { padding-block:1rem; font-size:.82rem; color:var(--muted); }
.seo-breadcrumb ol { display:flex; flex-wrap:wrap; gap:.35rem .6rem; list-style:none; padding:0; margin:0; }
.seo-breadcrumb li+li::before { content:"/"; margin-inline-end:.6rem; }
.seo-breadcrumb a { text-underline-offset:.2em; }
.seo-guide-header { padding-block:2.5rem 1.8rem; }
.seo-guide-header h1 { max-width:28ch; margin:.5rem 0 1rem; font-family:var(--font-display); font-size:clamp(1.9rem,3.2vw,2.8rem); font-weight:720; line-height:1.15; letter-spacing:-.025em; text-wrap:balance; overflow-wrap:normal; }
.seo-updated { color:var(--muted); font-size:.85rem; }
.seo-guide-layout { display:grid; grid-template-columns:minmax(180px,.3fr) minmax(0,1fr); gap:clamp(2rem,5vw,4rem); align-items:start; padding-bottom:4rem; }
.seo-toc { position:sticky; top:1rem; padding:1.25rem; background:var(--soft); border:1px solid var(--line); }
.seo-toc h2 { font-size:1rem; margin:0 0 .7rem; }
.seo-toc ol { list-style:none; padding:0; margin:0; }
.seo-toc a { display:block; min-height:44px; padding-block:.5rem; font-size:.9rem; text-underline-offset:.2em; }
.seo-guide-copy { min-width:0; max-width:76ch; }
.seo-guide-copy>section { margin-block-end:2.6rem; scroll-margin-top:1rem; }
.seo-guide-copy h2,.seo-related h2 { margin:0 0 .8rem; font-family:var(--font-display); font-size:clamp(1.45rem,2vw,1.85rem); line-height:1.3; text-wrap:pretty; }
.seo-guide-copy h3 { margin:1.5rem 0 .65rem; font-size:1.2rem; line-height:1.4; }
.seo-guide-copy p { line-height:1.8; }
.seo-guide-copy li { margin-block:.65rem; }
.seo-quick-answer { padding:1.5rem; background:var(--soft); border-inline-start:4px solid var(--forest); }
.seo-quick-answer p { margin-bottom:0; }
.seo-guide-copy .table-scroll th,.seo-guide-copy .table-scroll td { min-width:0; }
.seo-faq-item { border-block-end:1px solid var(--line); }
.seo-faq-item summary { min-height:48px; padding-block:1rem; font-weight:650; cursor:pointer; }
.seo-faq-answer { padding-bottom:.75rem; }
.seo-faq-answer p { margin-top:0; }
.seo-related-links { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.8rem; list-style:none; padding:0; }
.seo-related-links a { display:block; min-height:56px; padding:1rem; border:1px solid var(--line); color:var(--forest-dark); background:var(--soft); text-underline-offset:.2em; overflow-wrap:normal; }
.seo-author { border-block-start:1px solid var(--line); padding-top:1rem; color:var(--muted); font-size:.85rem; }
.seo-core-directory { columns:2; }
.seo-core-directory li { break-inside:avoid; }
.seo-legacy-links { padding-block:2.5rem; }
.language-guide-note { padding:.3rem .45rem; color:var(--muted); font-size:.75rem; line-height:1.5; }
.hero .video-caption { margin-top:1rem; max-width:62ch; font-size:.7rem; line-height:1.5; }
.language-gate .language-gate-heading .video-caption { max-width:62ch; margin:.65rem 0 0; font-size:.65rem; line-height:1.5; }
.language-gate-guide { display:inline-block; margin-top:1rem; font-size:.9rem; text-underline-offset:.25em; }
@media(max-width:1020px) { .seo-guide-layout { grid-template-columns:1fr; } .seo-guide-copy { display:contents; } .seo-guide-copy>section { margin-block-end:0; } .seo-quick-answer { grid-row:1; } .seo-toc { position:static; grid-row:2; } .seo-toc ol { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.4rem 1rem; } }
@media(max-width:640px) { .seo-guide-header { padding-block:1.8rem 1.2rem; } .seo-guide-header h1 { font-size:clamp(1.65rem,7vw,2rem); } .seo-toc ol { grid-template-columns:1fr 1fr; } .seo-related-links { grid-template-columns:1fr; } .seo-core-directory { columns:1; } .seo-quick-answer { padding:1rem; } }
.site-header { position:relative; z-index:20; background:rgba(251,250,246,.97); border-bottom:1px solid var(--line); }
.header-row { min-height:80px; display:flex; align-items:center; gap:1.6rem; }
.brand { display:flex; align-items:center; gap:.75rem; text-decoration:none; flex:0 0 auto; }
.brand-mark { position:relative; width:46px; height:46px; display:grid; place-items:center; overflow:hidden; color:white; background:var(--forest); border-radius:50%; }
.brand-mark::before,.brand-mark::after,.brand-mark i { content:""; position:absolute; inset-block-end:9px; width:0; height:0; border-inline:10px solid transparent; border-block-end:0; border-block-start:23px solid #fff; }
.brand-mark::before { inset-inline-start:3px; transform:scale(.72); opacity:.74; }
.brand-mark::after { inset-inline-end:0; transform:scale(.6); opacity:.48; }
.brand-mark i { inset-inline-start:13px; }
.brand strong { display:block; font-family:var(--font-display); font-size:1.1rem; font-weight:720; letter-spacing:-.015em; }
.brand small { display:block; color:var(--muted); font-size:.72rem; letter-spacing:.06em; }
.main-nav { display:flex; gap:clamp(.7rem,1.5vw,1.35rem); margin-inline-start:auto; }
.main-nav a { padding-block:.65rem; color:#303733; text-decoration:none; font-size:.92rem; border-bottom:2px solid transparent; }
.main-nav a:hover,.main-nav a[aria-current="page"] { color:var(--forest); border-color:var(--forest); }
.language-list { position:relative; display:flex; align-items:center; gap:.25rem; }
.language-list a { min-width:38px; padding:.38rem .45rem; border:1px solid var(--line); border-radius:999px; text-align:center; text-decoration:none; font-size:.78rem; }
.language-list a[aria-current="true"] { color:white; background:var(--forest); border-color:var(--forest); }
.language-more { position:relative; }
.language-more summary { width:38px; min-height:38px; display:grid; place-items:center; border:1px solid var(--line); border-radius:999px; cursor:pointer; list-style:none; font-size:1rem; line-height:1; }
.language-more summary::-webkit-details-marker { display:none; }
.language-more[open] summary { color:white; background:var(--forest); border-color:var(--forest); }
.language-menu { position:absolute; z-index:30; inset-inline-end:0; inset-block-start:calc(100% + .65rem); width:250px; padding:.8rem; color:var(--ink); background:white; border:1px solid var(--line); box-shadow:0 14px 35px rgba(12,35,27,.16); }
.language-menu>strong { display:block; padding:.25rem .45rem .55rem; font-size:.8rem; }
.language-list .language-menu a { display:block; min-height:44px; margin-block:.3rem; color:var(--forest); border-radius:3px; font-size:.9rem; }
.language-list .language-menu a[aria-current="true"] { color:#fff; background:var(--forest); }
.language-pending { display:grid; grid-template-columns:42px 1fr; align-items:center; gap:.1rem .55rem; padding:.55rem .45rem; border-top:1px solid var(--line); }
.language-pending b { grid-row:span 2; color:var(--forest); font-size:.78rem; }
.language-pending>span { font-size:.88rem; font-weight:650; }
.language-pending small { color:var(--muted); font-size:.68rem; }
.menu-button { display:none; min-height:42px; padding:.5rem .75rem; border:1px solid var(--line); background:transparent; color:var(--ink); }
.hero { position:relative; min-height:min(78vh,760px); display:grid; align-items:end; overflow:hidden; color:white; }
.hero-media { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:58% 46%; }
.zh-home-hero .hero-media { object-position:52% 50%; }
.hero::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(10,30,24,.72) 0%,rgba(10,30,24,.36) 43%,rgba(10,30,24,.04) 70%),linear-gradient(0deg,rgba(8,25,20,.44),transparent 48%); }
.hero-content { position:relative; z-index:1; max-width:640px; padding-block:6rem 4.5rem; }
.eyebrow { color:var(--forest); font-size:.78rem; font-weight:750; letter-spacing:.13em; text-transform:uppercase; }
.hero .eyebrow { color:#dcebdc; }
.hero h1 { max-width:14ch; margin:.45rem 0 .85rem; font-family:var(--font-display); font-size:clamp(2.75rem,5.7vw,4.85rem); font-weight:680; letter-spacing:-.045em; line-height:1.02; }
.hero p { max-width:580px; margin:0; color:rgba(255,255,255,.92); font-size:1.05rem; }
.hero-actions { display:flex; flex-wrap:wrap; gap:.7rem; margin-top:1.5rem; }
.button { display:inline-flex; min-height:46px; align-items:center; justify-content:center; padding:.65rem 1.1rem; border:1px solid currentColor; text-decoration:none; font-weight:700; }
.button.primary { color:var(--forest-dark); background:white; border-color:white; }
.button.secondary { color:white; background:rgba(19,56,44,.38); }
.section { padding-block:clamp(4rem,7vw,6.5rem); }
.soft-section { background:var(--soft); }
.section-heading { display:flex; justify-content:space-between; align-items:end; gap:2rem; margin-bottom:2rem; }
.section-heading h2,.guide-intro h2 { margin:.25rem 0 0; font-family:var(--font-display); font-size:clamp(1.95rem,3.3vw,2.85rem); font-weight:680; letter-spacing:-.035em; line-height:1.16; }
.section-heading p { max-width:520px; margin:0; color:var(--muted); }
.section-action { margin-top:2rem; text-align:end; }
.text-link { color:var(--forest); font-weight:750; text-decoration-thickness:1px; text-underline-offset:.25em; }
.source-note { margin-top:1rem; color:var(--muted); font-size:.8rem; }
.label { color:var(--forest); font-size:.76rem; font-weight:750; letter-spacing:.05em; text-transform:uppercase; }
.attraction-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:2.25rem 1.4rem; }
.attraction-card { color:inherit; text-decoration:none; }
.card-media { display:block; width:100%; aspect-ratio:16/9; overflow:hidden; background:#e7ebe8; }
.card-media img { display:block; width:100%; height:100%; object-fit:cover; object-position:center; }
.attraction-card img { transition:opacity .2s ease,transform .2s ease; }
.attraction-card:hover img { opacity:.92; transform:translateY(-2px); }
.card-copy { display:block; padding-top:.9rem; }
.card-copy h2 { margin:.18rem 0 .3rem; font-family:var(--font-display); font-size:1.4rem; font-weight:680; letter-spacing:-.025em; line-height:1.22; }
.card-copy p { margin:0; color:var(--muted); font-size:.92rem; }
.theme-entries { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.35rem; }
.theme-entry { background:white; text-decoration:none; }
.theme-entry .card-media { aspect-ratio:16/9; }
.theme-entry-copy { display:block; position:relative; padding:1.25rem; }
.theme-entry h3 { margin:.25rem 2rem .4rem 0; font-family:var(--font-display); font-size:1.5rem; font-weight:680; letter-spacing:-.025em; }
[dir="rtl"] .theme-entry h3 { margin-right:0; margin-left:2rem; }
.theme-entry p { margin:0; color:var(--muted); }
.theme-entry b { position:absolute; inset-inline-end:1.25rem; inset-block-start:1.25rem; color:var(--forest); }
.guide-section { background:var(--forest-dark); color:white; }
.guide-intro { display:grid; grid-template-columns:.7fr 1.3fr; gap:clamp(2rem,7vw,6rem); align-items:start; }
.guide-intro .eyebrow { color:#bcd8c6; }
.guide-intro p { color:#d4dfda; }
.guide-links { display:grid; grid-template-columns:repeat(2,1fr); border-top:1px solid rgba(255,255,255,.28); }
.guide-link { display:grid; grid-template-columns:auto 1fr auto; gap:.8rem; align-items:center; min-height:76px; padding:.8rem 0; border-bottom:1px solid rgba(255,255,255,.28); text-decoration:none; }
.guide-number { color:#9fc4ad; font-size:.8rem; }
.page-hero { padding-block:clamp(4rem,7vw,6rem) 3.5rem; background:var(--forest-dark); color:white; }
.page-hero .eyebrow { color:#bcd8c6; }
.page-hero h1 { margin:.4rem 0 .65rem; font-family:var(--font-display); font-size:clamp(2.45rem,5.2vw,4.25rem); font-weight:680; letter-spacing:-.04em; line-height:1.04; }
.page-hero p { max-width:760px; margin:0; color:#dce6df; }
.filters { display:flex; flex-wrap:wrap; gap:.55rem; margin-bottom:1.75rem; }
.filter-button { min-height:42px; padding:.5rem .9rem; border:1px solid #aebbb2; border-radius:999px; background:transparent; color:var(--forest-dark); cursor:pointer; }
.filter-button[aria-pressed="true"] { color:white; background:var(--forest); border-color:var(--forest); }
.place-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1.5rem; }
.place-card { background:white; color:inherit; text-decoration:none; }
.place-card[hidden] { display:none; }
.place-card img { object-position:center; }
.place-card-copy { display:block; padding:.85rem 0; }
.place-card h2 { margin:.15rem 0 .25rem; font-family:var(--font-display); font-size:1.32rem; font-weight:680; letter-spacing:-.02em; }
.place-card p { margin:0; color:var(--muted); font-size:.9rem; }
.related-grid { grid-template-columns:repeat(3,1fr); }
.detail-visual-hero { background:var(--paper); }
.detail-wide { width:calc(100% - 48px); margin-inline:auto; }
.detail-media { position:relative; aspect-ratio:16/7; max-height:660px; overflow:hidden; background:#dfe6e0; }
.detail-hero-image { width:100%; height:100%; display:block; object-fit:cover; object-position:center; }
.detail-media::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(5,20,15,.76) 0%,rgba(5,20,15,.32) 46%,rgba(5,20,15,.02) 72%),linear-gradient(0deg,rgba(5,20,15,.55),transparent 48%); }
.detail-hero-copy { position:absolute; z-index:1; inset-inline-start:clamp(1.5rem,4vw,4rem); inset-block-end:clamp(1.5rem,4vw,3.5rem); max-width:680px; color:#fff; }
.detail-hero-copy .eyebrow { color:#d2eadb; }
.detail-hero-copy h1 { margin:.35rem 0 .45rem; font-family:var(--font-display); font-size:clamp(2.7rem,5.2vw,4.8rem); font-weight:720; letter-spacing:-.045em; line-height:1; }
.detail-hero-copy p { margin:0; color:#eef5f0; font-size:1.08rem; }
.sight-groups { display:grid; gap:1.2rem; }
.sight-group { padding:1.4rem; background:#fff; border-top:3px solid var(--forest); }
.sight-group header { display:flex; align-items:start; justify-content:space-between; gap:1rem; }
.sight-group h3 { margin:0; font-family:var(--font-display); font-size:1.55rem; }
.sight-group header p { margin:.3rem 0 0; color:var(--muted); font-size:.85rem; }
.sight-group header a { flex:0 0 auto; color:var(--forest); font-weight:700; text-decoration:none; }
.sight-group ol,.detail-sight-list { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.65rem 1rem; margin:1.25rem 0 0; padding:0; list-style:none; counter-reset:sights; }
.sight-group li,.detail-sight-list li { min-width:0; padding:.65rem 0; border-top:1px solid var(--line); counter-increment:sights; }
.sight-group li::before,.detail-sight-list li::before { content:counter(sights,decimal-leading-zero); display:block; margin-bottom:.22rem; color:var(--forest); font-size:.72rem; font-weight:750; }
.sight-group li span,.detail-sight-list li span { display:block; font-weight:680; line-height:1.3; }
.sight-group li small,.detail-sight-list li small { display:block; margin-top:.18rem; color:var(--muted); font-size:.72rem; }
.content-grid { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(270px,.5fr); gap:clamp(2rem,6vw,5rem); align-items:start; }
.prose { max-width:760px; font-size:1.03rem; }
.prose h2 { margin:2.25rem 0 .65rem; font-family:var(--font-display); font-size:1.8rem; font-weight:680; letter-spacing:-.025em; }
.prose li+li { margin-top:.45rem; }
.side-panel { padding:1.25rem; border-top:3px solid var(--forest); background:white; }
.side-panel h2 { margin-top:0; font-size:1.08rem; }
.side-panel dl { margin:0; }
.side-panel dt { margin-top:.9rem; color:var(--muted); font-size:.82rem; }
.side-panel dd { margin-inline-start:0; }
.notice-box { padding:1rem 1.15rem; background:var(--notice); border-inline-start:3px solid #b58b38; }
.theme-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1.25rem; }
.theme-card { display:block; min-width:0; background:white; }
.theme-card .card-media { aspect-ratio:16/9; }
.theme-copy { padding:1.35rem; }
.theme-copy h2 { margin:.2rem 0; font-family:var(--font-display); font-size:1.55rem; font-weight:680; letter-spacing:-.025em; }
.guide-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; }
.guide-card { padding:1.35rem; border-top:3px solid var(--forest); background:white; }
.guide-card h2,.guide-card h3 { margin-top:0; font-family:var(--font-display); font-weight:680; letter-spacing:-.02em; }
.guide-prose { margin-top:3rem; }
.gallery-grid { columns:3; column-gap:1rem; }
.gallery-button { width:100%; margin:0 0 1rem; padding:0; border:0; background:transparent; break-inside:avoid; cursor:zoom-in; text-align:start; }
.gallery-button img { width:100%; height:auto; }
.gallery-button span { display:block; padding:.55rem 0; color:var(--muted); font-size:.85rem; }
.lightbox { width:min(1100px,calc(100% - 32px)); border:0; padding:0; background:#0b1712; color:white; }
.lightbox::backdrop { background:rgba(4,14,10,.86); }
.lightbox img { width:100%; max-height:78vh; object-fit:contain; }
.lightbox-bar { display:flex; justify-content:space-between; align-items:center; gap:1rem; padding:.8rem 1rem; }
.lightbox button { padding:.5rem .8rem; border:1px solid #84958b; background:transparent; color:white; cursor:pointer; }
[dir="rtl"] .hero::after { background:linear-gradient(270deg,rgba(10,30,24,.72) 0%,rgba(10,30,24,.36) 43%,rgba(10,30,24,.04) 70%),linear-gradient(0deg,rgba(8,25,20,.44),transparent 48%); }
[dir="rtl"] .hero-content { margin-inline-start:auto; }
[dir="rtl"] .brand strong,[dir="rtl"] h1,[dir="rtl"] h2,[dir="rtl"] h3,[lang="zh-CN"] .brand strong,[lang="zh-CN"] h1,[lang="zh-CN"] h2,[lang="zh-CN"] h3 { letter-spacing:0; }
.site-footer { padding-block:3rem; background:#102d24; color:#e8eee9; }
.footer-grid { display:grid; grid-template-columns:1.2fr .8fr 1fr; gap:2.5rem; }
.site-footer p { margin:.5rem 0; color:#bdc9c1; font-size:.9rem; }
.footer-languages { display:flex; flex-wrap:wrap; gap:.35rem .8rem; margin-top:.5rem; }
.footer-languages a,.footer-language-pending { color:#dce7e0; font-size:.9rem; }
.footer-language-pending { opacity:.72; }

/* English homepage: clean-room destination editorial layout. */
html[lang="en"] .site-header { background:#151515; border-color:#151515; color:#fff; }
html[lang="en"] .site-header .brand small,html[lang="en"] .site-header .main-nav a { color:#fff; }
html[lang="en"] .site-header .brand-mark { background:#fff; }
html[lang="en"] .site-header .brand-mark::before,html[lang="en"] .site-header .brand-mark::after,html[lang="en"] .site-header .brand-mark i { border-block-start-color:#151515; }
html[lang="en"] .site-header .main-nav a:hover,html[lang="en"] .site-header .main-nav a[aria-current="page"] { color:#8bd18c; border-color:#52a64f; }
html[lang="en"] .site-header .language-list a { border-color:#5a5a5a; color:#fff; }
html[lang="en"] .site-header .language-list a[aria-current="true"] { background:#3d963f; border-color:#3d963f; }
html[lang="en"] .site-header .language-more summary { color:#fff; border-color:#5a5a5a; }
html[lang="en"] .site-header .language-more[open] summary { background:#3d963f; border-color:#3d963f; }
.en-home-hero { min-height:700px; align-items:start; }
.en-home-hero.language-gate { min-height:100vh; min-height:100svh; }
.language-gate .language-gate-content { width:min(100% - 64px,1320px); min-height:100vh; min-height:100svh; display:flex; align-items:flex-start; padding-block:clamp(3rem,7vh,5rem) clamp(2.5rem,6vh,4.5rem); }
.language-gate-heading { position:absolute; inset-inline-start:0; inset-block-end:clamp(2.5rem,6vh,4.5rem); width:min(100%,1080px); }
.language-gate .language-gate-heading .eyebrow { color:#b8d8bb; text-shadow:0 2px 12px rgba(0,0,0,.55); }
.language-gate .language-gate-heading h1 { max-width:none; overflow-wrap:normal; margin:.55rem 0 .75rem; color:#f7f5ee; font-size:clamp(3.5rem,5.8vw,5.8rem); line-height:.92; letter-spacing:-.05em; -webkit-text-stroke:2px #174b38; paint-order:stroke fill; text-shadow:0 4px 24px rgba(0,0,0,.5); text-wrap:balance; }
.language-gate .language-gate-heading p { margin:0; color:#dce5de; font-size:1.15rem; letter-spacing:.04em; text-shadow:0 2px 12px rgba(0,0,0,.55); }
.language-gate-actions { position:static; width:100%; display:flex; flex-wrap:wrap; gap:.65rem; margin:2rem 0 0; }
.language-gate-button { min-height:48px; display:inline-flex; align-items:center; gap:.85rem; padding:.72rem 1rem .72rem 1.15rem; border:1px solid rgba(255,255,255,.58); border-radius:999px; color:#173f31; background:rgba(255,255,255,.94); box-shadow:0 12px 32px rgba(0,0,0,.2); text-decoration:none; backdrop-filter:blur(10px); transition:transform .18s ease,background .18s ease,border-color .18s ease; }
.language-gate-button:hover,.language-gate-button:focus-visible { transform:translateY(-2px); background:#fff; border-color:#fff; }
.language-gate-button>span { font-size:.95rem; font-weight:750; line-height:1; white-space:nowrap; }
.language-gate-button>small { padding:.26rem .42rem; border-radius:999px; color:#f4f7f4; background:#174b38; font-size:.61rem; font-weight:800; letter-spacing:.08em; line-height:1; white-space:nowrap; }
.language-gate-button.is-pending { color:#173f31; background:rgba(255,255,255,.94); border-color:rgba(255,255,255,.58); box-shadow:0 12px 32px rgba(0,0,0,.2); cursor:default; }
.language-gate-button.is-pending>small { color:#fff; background:#69736e; }
.en-home-hero .hero-media { object-position:center; }
.en-home-hero::after { background:linear-gradient(90deg,rgba(0,0,0,.68),rgba(0,0,0,.18) 54%,rgba(0,0,0,.05)),linear-gradient(0deg,rgba(0,0,0,.3),transparent 48%); }
.en-home-hero .hero-content { margin:0 auto; max-width:none; padding-top:4.3rem; padding-bottom:4rem; }
.video-play-button { position:absolute; z-index:3; inset-inline-end:clamp(1rem,3vw,2.5rem); inset-block-end:clamp(1rem,3vw,2.5rem); min-height:46px; padding:.75rem 1rem; border:1px solid rgba(255,255,255,.75); border-radius:3px; background:rgba(17,17,17,.82); color:#fff; font:700 .95rem/1 var(--font-body); cursor:pointer; }
.video-play-button:hover,.video-play-button:focus-visible { background:#fff; color:#111; }
.en-hero-video { opacity:0; }
.en-hero-video.has-frame { opacity:1; }
.language-gate .video-play-button { inset-block-start:1rem; inset-block-end:auto; }
.video-status { position:absolute; z-index:3; inset-inline-end:1rem; inset-block-end:5rem; max-width:min(32rem,calc(100% - 2rem)); margin:0; padding:.6rem .9rem; background:#151515; color:#fff; font-size:.9rem; }
.video-status:empty { display:none; }
.language-gate .video-status { inset-block-start:4.5rem; inset-block-end:auto; }
.en-home-hero h1 { max-width:12ch; margin:0 0 1rem; font-size:clamp(3.35rem,6vw,5.6rem); font-weight:850; letter-spacing:-.055em; text-transform:uppercase; }
.en-home-hero p { max-width:630px; font-size:1.18rem; line-height:1.65; }
.button.en-primary { color:#fff; background:#3d963f; border-color:#3d963f; }
.button.en-primary:hover { background:#2f7e31; border-color:#2f7e31; }
.en-hero-links { background:#151515; color:#fff; }
.en-hero-links .wrap { min-height:112px; display:flex; align-items:center; gap:0; }
.en-hero-links a { padding:0 .7rem; border-inline-end:1px solid #777; font-weight:650; line-height:1; text-underline-offset:.22em; }
.en-hero-links a:first-child { padding-inline-start:0; }
.en-hero-links a:last-child { border:0; }
.en-feature img { height:min(62vw,620px); object-fit:cover; }
.en-feature-copy { padding:2.5rem 0 3rem; background:#151515; color:#fff; }
.en-feature-copy-inner { padding-inline:0; }
.en-feature-copy h2 { margin:0 0 .55rem; font-family:var(--font-display); font-size:clamp(1.85rem,3vw,2.65rem); letter-spacing:-.035em; }
.en-feature-copy p { max-width:980px; margin:0 0 1.35rem; font-size:1.08rem; }
.en-wide { width:min(1380px,calc(100% - 48px)); margin-inline:auto; }
.en-wide>h2 { margin:0 0 .4rem; font-family:var(--font-display); font-size:clamp(2.3rem,4vw,3.6rem); font-weight:780; letter-spacing:-.045em; line-height:1.05; }
.en-inspiration { background:#fff; }
.en-inspiration .en-wide>p { margin:.5rem 0 1.1rem; }
.en-story-track { display:grid; grid-template-columns:repeat(6,minmax(220px,1fr)); gap:.8rem; overflow-x:auto; scroll-snap-type:x proximity; }
.en-story-card { position:relative; min-height:400px; overflow:hidden; border-radius:14px; color:#fff; background:#26372f; text-decoration:none; }
.en-story-card::after { content:""; position:absolute; inset:45% 0 0; background:linear-gradient(transparent,rgba(0,0,0,.78)); }
.en-story-card img { width:100%; height:100%; object-fit:cover; transition:transform .3s ease; }
.en-story-card:hover img { transform:scale(1.025); }
.en-story-card span { position:absolute; z-index:1; inset-inline:12px; inset-block-end:10px; display:flex; justify-content:space-between; gap:.5rem; padding:.55rem .7rem; border-radius:999px; background:#3d963f; font-weight:700; line-height:1.25; }
.en-track-controls { display:flex; justify-content:flex-end; align-items:center; gap:.55rem; margin-top:1rem; }
.en-track-controls button { width:44px; height:44px; display:grid; place-items:center; margin-inline-start:.45rem; border:1px solid #bbb; border-radius:50%; background:#fff; color:var(--ink); font:inherit; cursor:pointer; }
.en-track-controls button:disabled { opacity:.4; cursor:default; }
.en-journey { background:#fff; }
.en-mosaic { display:grid; grid-template-columns:2fr 1fr 1fr; gap:1rem; margin-top:2.2rem; }
.en-mosaic a { position:relative; height:340px; overflow:hidden; color:#fff; text-decoration:none; }
.en-mosaic a:nth-child(n+4) { height:300px; }
.en-mosaic-wide { grid-column:span 1; }
.en-mosaic a:nth-child(4),.en-mosaic a:nth-child(5) { grid-column:span 1; }
.en-mosaic a:nth-child(4) { grid-column:1 / 2; }
.en-mosaic a:nth-child(5) { grid-column:2 / 4; }
.en-mosaic a::after { content:""; position:absolute; inset:40% 0 0; background:linear-gradient(transparent,rgba(0,0,0,.72)); }
.en-mosaic img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .28s ease; }
.en-mosaic a:hover img { transform:scale(1.02); }
.en-mosaic span { position:absolute; z-index:1; inset-inline:1rem; inset-block-end:.85rem; font-weight:720; text-decoration:underline; text-underline-offset:.2em; }
.en-must-do { background:#f5f5f5; }
.en-filter-label { margin:2rem 0 .7rem; font-size:.82rem; }
.en-must-do .filters { align-items:center; }
.en-must-do .filter-button { min-height:34px; padding:.32rem .8rem; border:0; background:#dedede; color:#202020; font-size:.8rem; }
.en-must-do .filter-button[aria-pressed="true"] { color:#fff; background:#171717; }
.en-all-link { margin-inline-start:auto; color:#377e37; text-decoration:none; font-size:.86rem; }
.en-experience-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1.3rem; }
.en-experience-card { min-height:420px; display:flex; flex-direction:column; overflow:hidden; border-radius:12px; background:#fff; box-shadow:0 5px 16px rgba(0,0,0,.08); text-decoration:none; }
.en-experience-card[hidden] { display:none; }
.en-experience-card img { width:100%; aspect-ratio:1.55; object-fit:cover; }
.en-experience-card .place-card-copy { display:block; flex:1; padding:1.2rem; }
.en-experience-card h2 { margin:.5rem 0; font-size:1.2rem; line-height:1.25; }
.en-experience-card p { margin:0; color:var(--muted); font-size:.87rem; }
.en-see-all { margin-top:2rem; }
.en-planning { background:#fff; }
.en-planning-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:clamp(1.5rem,5vw,5rem); margin-top:3rem; }
.en-planning-grid a { color:inherit; text-decoration:none; }
.en-planning-grid i { width:80px; height:80px; display:grid; place-items:center; border-radius:50%; background:#ddd; color:#171717; font-style:normal; font-size:2.2rem; }
.en-planning-grid h3 { max-width:230px; margin:1.35rem 0 .35rem; font-size:1.35rem; line-height:1.15; }
.en-planning-grid h3 span { color:#489748; font-weight:500; }
.en-planning-grid p { margin:0; color:#313131; font-size:.84rem; line-height:1.5; }
.en-travel-guide { display:inline-block; margin-top:4rem; color:#3d8a3e; text-decoration:none; }
html[lang="en"] .site-footer { background:#171717; }
.guidebook-home { background:#fff; }
.guidebook-chapter-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); border-top:1px solid #cfd5d1; border-bottom:1px solid #cfd5d1; }
.guidebook-chapter-grid a { position:relative; min-height:170px; display:flex; flex-direction:column; justify-content:flex-end; gap:.35rem; padding:1.25rem 2.5rem 1.25rem 1rem; border-inline-end:1px solid #cfd5d1; text-decoration:none; }
.guidebook-chapter-grid a:last-child { border:0; }
.guidebook-chapter-grid strong { font-size:1.12rem; line-height:1.25; }
.guidebook-chapter-grid span { position:absolute; inset-inline-end:1rem; inset-block-end:1.2rem; color:#438d45; }
.guidebook-section { padding-block:2.25rem 4.5rem; background:#f3f3f1; }
.guidebook-chapter-intro { padding:1.2rem 24px; background:#edf1ec; border-bottom:1px solid #d7dcd8; }
.guidebook-chapter-intro p { width:min(var(--content),100%); margin:0 auto; color:#4f5d55; font-size:1.02rem; line-height:1.6; overflow-wrap:anywhere; }
.guidebook-toc { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); margin-bottom:2.5rem; background:#fff; border-top:1px solid #d7dcd8; border-bottom:1px solid #d7dcd8; }
.guidebook-toc-link { min-height:72px; display:flex; flex-direction:column; justify-content:center; padding:.8rem 1rem; border-inline-end:1px solid #d7dcd8; text-decoration:none; }
.guidebook-toc-link:last-child { border:0; }
.guidebook-toc-link strong { font-size:.92rem; line-height:1.25; }
.guidebook-toc-link[aria-current="page"] { color:#fff; background:var(--forest); }
.guidebook-feature { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr); align-items:stretch; margin-bottom:2.5rem; background:var(--forest-dark); color:#fff; }
.guidebook-feature img { width:100%; height:100%; min-height:420px; object-fit:cover; }
.guidebook-feature>div { display:flex; flex-direction:column; justify-content:flex-start; padding:clamp(1.5rem,2.5vw,2rem); }
.guidebook-feature h2 { margin:.35rem 0 1rem; font-family:var(--font-display); font-size:clamp(1.75rem,2.1vw,2.25rem); line-height:1.3; overflow-wrap:normal; word-break:normal; text-wrap:pretty; }
.guidebook-feature p { margin:0; font-size:1.05rem; line-height:1.8; }
.guidebook-topic-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); border-block:1px solid var(--line); }
.guidebook-topic-link { min-height:130px; display:flex; align-items:flex-end; justify-content:space-between; gap:1rem; padding:1.25rem; border-inline-end:1px solid var(--line); text-decoration:none; }
.guidebook-topic-link:last-child { border:0; }
.guidebook-topic-link span { color:var(--forest); font-size:1.4rem; }
.guidebook-content-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(1.2rem,2.5vw,2rem); }
.guidebook-content-card { min-width:0; background:#fff; }
.guidebook-content-card img { width:100%; aspect-ratio:16/9; object-fit:cover; }
.guidebook-content-card>div { padding:1.3rem 1.4rem 1.6rem; }
.guidebook-content-card h2 { margin:.35rem 0 .65rem; font-family:var(--font-display); font-size:clamp(1.35rem,2.2vw,2rem); line-height:1.18; }
.guidebook-content-card p { margin:0; color:var(--muted); line-height:1.72; }
html[lang="zh-CN"] .guidebook-chapter-intro p,html[lang="zh-CN"] .guidebook-content-card p { word-break:break-all; }
.guidebook-articles { display:grid; grid-template-columns:minmax(0,1fr); gap:clamp(3.5rem,7vw,7rem); }
.guidebook-article { min-width:0; display:grid; grid-template-columns:minmax(240px,.42fr) minmax(0,1fr); column-gap:clamp(2rem,5vw,5rem); row-gap:1.5rem; padding-block-start:clamp(2rem,4vw,4rem); border-top:1px solid var(--line); }
.guidebook-article:first-child { padding-block-start:0; border-top:0; }
.guidebook-article header { min-width:0; grid-column:1; grid-row:1 / span 2; align-self:start; }
.guidebook-article h2 { margin:0; font-family:var(--font-display); font-size:clamp(1.75rem,2.1vw,2.25rem); font-weight:700; line-height:1.3; letter-spacing:-.015em; overflow-wrap:normal; word-break:normal; text-wrap:pretty; }
.guidebook-title-label { display:block; margin-block-end:.7rem; color:var(--forest); font-size:.85rem; font-weight:650; line-height:1.5; letter-spacing:0; }
.guidebook-title-phrase { display:block; word-break:keep-all; overflow-wrap:normal; }
.guidebook-article-media { grid-column:2; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.75rem; }
.guidebook-article-media.count-1 { grid-template-columns:1fr; }
.guidebook-article-media.count-3 figure:first-child { grid-column:1 / -1; }
.guidebook-article-media figure { margin:0; overflow:hidden; background:#e4e8e4; }
.guidebook-article-media img { width:100%; height:100%; min-height:220px; aspect-ratio:16/9; object-fit:cover; }
.guidebook-article-media.count-3 figure:not(:first-child) img { aspect-ratio:4/3; }
.guidebook-article-copy { min-width:0; grid-column:2; max-width:76ch; overflow-wrap:anywhere; }
.guidebook-article-copy p { margin:0 0 1.15rem; color:#28352f; font-size:1rem; line-height:1.82; }
.guidebook-article-copy p:last-child { margin-bottom:0; }
.table-scroll { overflow-x:auto; max-width:100%; margin-block:1.5rem; }
.table-scroll table { width:100%; border-collapse:collapse; background:#fff; font-size:.9rem; overflow-wrap:normal; word-break:normal; }
.table-scroll caption { text-align:start; color:var(--forest); font-weight:700; padding-block:.75rem; }
.table-scroll th,.table-scroll td { min-width:6em; padding:.7rem; border:1px solid var(--line); text-align:start; }
.table-scroll th { background:var(--soft); }
html[lang="zh-CN"] .guidebook-article-copy p { word-break:normal; text-wrap:pretty; }
.guidebook-area-grid { margin-bottom:clamp(4rem,7vw,6rem); }
.guidebook-subheading { padding-top:1rem; }
@media (max-width:1020px) {
  .language-gate .language-gate-content { padding-block:2.5rem; }
  .language-gate .language-gate-heading h1 { max-width:none; font-size:clamp(2.7rem,7vw,4.5rem); }
  .language-gate .language-gate-content { width:min(100% - 48px,900px); }
  .main-nav { display:none; position:absolute; inset-inline:24px; inset-block-start:100%; grid-template-columns:1fr; gap:.25rem; padding:1rem; background:var(--paper); border:1px solid var(--line); }
  .main-nav.open { display:grid; }
  .menu-button { display:inline-block; margin-inline-start:auto; }
  .attraction-grid,.theme-entries { grid-template-columns:repeat(2,1fr); }
  .place-grid { grid-template-columns:repeat(2,1fr); }
  .content-grid,.guide-intro { grid-template-columns:1fr; }
  .sight-group ol,.detail-sight-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .theme-grid { grid-template-columns:1fr; }
  .footer-grid { grid-template-columns:1fr 1fr; }
  html[lang="en"] .site-header .main-nav { background:#171717; border-color:#555; }
  html[lang="en"] .menu-button { color:#fff; border-color:#666; }
  .en-story-track { grid-template-columns:repeat(6,260px); overflow-x:auto; padding-bottom:.5rem; scroll-snap-type:x proximity; }
  .en-story-card { scroll-snap-align:start; }
  .en-mosaic { grid-template-columns:1.5fr 1fr; }
  .en-mosaic a:nth-child(3),.en-mosaic a:nth-child(4),.en-mosaic a:nth-child(5) { grid-column:auto; }
  .en-mosaic a,.en-mosaic a:nth-child(n+4) { height:300px; }
  .en-experience-grid,.en-planning-grid { grid-template-columns:repeat(2,1fr); }
  .guidebook-chapter-grid { grid-template-columns:repeat(2,1fr); }
  .guidebook-chapter-grid a { border-bottom:1px solid #cfd5d1; }
  .guidebook-toc { grid-template-columns:repeat(3,1fr); }
  .guidebook-feature { grid-template-columns:1fr; }
  .guidebook-feature img { min-height:340px; }
  .guidebook-topic-grid { grid-template-columns:repeat(2,1fr); }
  .guidebook-article { grid-template-columns:1fr; }
  .guidebook-article header,.guidebook-article-media,.guidebook-article-copy { grid-column:1; grid-row:auto; }
}
@media (max-width:640px) {
  .language-gate .video-status { inset-block-start:auto; inset-block-end:12rem; }
  .guidebook-chapter-intro { padding-inline:14px; }
  .guidebook-chapter-intro p,.guidebook-section .en-wide { width:calc(100vw - 28px); max-width:calc(100vw - 28px); }
  .language-gate .language-gate-content { padding-block:2rem; }
  .language-gate .language-gate-heading h1 { max-width:none; font-size:clamp(2.25rem,11vw,3.2rem); }
  .language-gate .language-gate-heading p { font-size:1rem; }
  .language-gate-heading { position:static; width:100%; }
  .language-gate .language-gate-content { width:calc(100% - 28px); }
  .language-gate-actions { position:absolute; inset-inline-start:0; inset-block-end:1.25rem; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.55rem; margin:0; }
  .language-gate-button { min-width:0; min-height:46px; justify-content:space-between; gap:.5rem; padding:.65rem .72rem .65rem .85rem; }
  .language-gate-button>span { overflow:hidden; font-size:.84rem; text-overflow:ellipsis; }
  .language-gate-button>small { font-size:.56rem; }
  .wrap { width:min(100% - 28px,var(--content)); }
  .header-row { min-height:70px; gap:.5rem; }
  .brand strong { font-size:1rem; }
  .brand small { display:none; }
  .brand-mark { width:38px; height:38px; }
  .brand-mark::before,.brand-mark::after,.brand-mark i { inset-block-end:7px; border-inline-width:8px; border-block-start-width:19px; }
  .brand-mark i { inset-inline-start:11px; }
  .language-list { order:2; }
  .language-list>a { display:none; }
  .language-list a[aria-current="true"] { display:inline-flex; align-items:center; justify-content:center; min-width:40px; }
  .language-more { display:block; }
  .language-menu { position:fixed; inset-inline:14px; inset-block-start:118px; width:auto; max-height:calc(100svh - 136px); overflow:auto; }
  .menu-button { order:3; }
  .hero { min-height:max(560px,78svh); align-items:end; }
  .hero-media { object-position:64% center; }
  .hero::after,[dir="rtl"] .hero::after { background:linear-gradient(0deg,rgba(8,27,21,.82) 0%,rgba(8,27,21,.25) 62%,rgba(8,27,21,.05) 100%); }
  .hero-content { padding-block:5.5rem 2.75rem; }
  .hero h1 { max-width:12ch; font-size:clamp(2.5rem,13vw,3.7rem); }
  .hero p { font-size:1rem; }
  .hero-actions { align-items:stretch; }
  .hero-actions .button { flex:1 1 130px; }
  .section-heading { display:block; }
  .section-heading p { margin-top:.75rem; }
  .attraction-grid,.theme-entries,.place-grid,.related-grid,.guide-grid,.guide-links,.footer-grid { grid-template-columns:1fr; }
  .gallery-grid { columns:1; }
  .page-hero { padding-block:3.5rem 2.5rem; }
  .detail-wide { width:calc(100% - 28px); }
  .detail-media { aspect-ratio:16/9; }
  .detail-hero-copy { inset-inline:1.1rem; inset-block-end:1rem; }
  .detail-hero-copy h1 { font-size:clamp(2rem,11vw,2.8rem); }
  .detail-hero-copy p { font-size:.88rem; }
  .sight-group { padding:1rem; }
  .sight-group header { display:block; }
  .sight-group header a { display:inline-block; margin-top:.65rem; }
  .sight-group ol,.detail-sight-list { grid-template-columns:1fr 1fr; gap:.35rem .8rem; }
  .en-home-hero { min-height:620px; }
  .en-home-hero .hero-media { object-position:62% center; }
  .en-home-hero .hero-content { padding-top:3.5rem; }
  .en-home-hero h1 { max-width:13ch; font-size:clamp(1.875rem,8vw,2.5rem); line-height:1.04; }
  .en-home-hero p { max-width:28rem; font-size:1rem; }
  .en-hero-links .wrap { min-height:auto; display:block; padding-block:1rem; }
  .en-hero-links a { display:block; padding:.65rem 0; border:0; }
  .en-feature img { height:68vw; min-height:300px; }
  .en-wide { width:calc(100% - 28px); }
  .en-wide>h2 { overflow-wrap:anywhere; font-size:clamp(2rem,10vw,2.8rem); }
  .en-story-track { grid-template-columns:repeat(6,78vw); }
  .en-story-card { min-height:430px; }
  .en-mosaic { grid-template-columns:1fr; }
  .en-mosaic a,.en-mosaic a:nth-child(n+4),.en-mosaic a:nth-child(3),.en-mosaic a:nth-child(4),.en-mosaic a:nth-child(5) { grid-column:auto; height:230px; min-height:0; }
  .en-experience-grid,.en-planning-grid { grid-template-columns:1fr; }
  .en-experience-card { min-height:auto; }
  .en-all-link { width:100%; margin:0; }
  .en-planning-grid { gap:2.5rem; }
  .guidebook-chapter-grid,.guidebook-content-grid,.guidebook-topic-grid { grid-template-columns:1fr; }
  .guidebook-articles { gap:3.5rem; }
  .guidebook-article-media { grid-template-columns:1fr; }
  .guidebook-article-media.count-3 figure:first-child { grid-column:auto; }
  .guidebook-article-media img,.guidebook-article-media.count-3 figure:not(:first-child) img { min-height:0; aspect-ratio:16/9; }
  .guidebook-article h2 { font-size:clamp(1.5rem,6.5vw,1.75rem); }
  .guidebook-toc { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .guidebook-chapter-grid a { min-height:92px; }
  .guidebook-toc-link { min-height:56px; padding:.65rem .75rem; border-bottom:1px solid #d7dcd8; }
  .guidebook-toc-link strong { font-size:.86rem; }
  .guidebook-feature img { min-height:230px; }
  .guidebook-feature>div { padding:1.5rem; }
  .guidebook-feature h2 { font-size:clamp(1.5rem,6.5vw,1.75rem); }
  .guidebook-topic-link { min-height:76px; }
}
@media (max-width:640px) and (max-height:480px) {
  .language-gate .video-status { inset-block-start:.25rem; inset-block-end:auto; inset-inline-start:1rem; inset-inline-end:auto; max-width:calc(100% - 180px); padding:.25rem; font-size:.65rem; line-height:1.2; }
}
@media (max-width:380px) {
  .brand { flex:1 1 auto; min-width:0; gap:.4rem; }
  .brand>span:last-child { min-width:0; }
  .brand strong { font-size:.86rem; line-height:1.25; overflow-wrap:normal; }
  .brand-mark { flex:0 0 32px; width:32px; height:32px; }
  .menu-button { min-height:44px; padding:.45rem .55rem; }
  .language-list { flex:0 0 auto; }
}
.official-brand-logo { width:46px; height:46px; flex:0 0 46px; object-fit:contain; border-radius:50%; }
.hero-place-name { white-space:nowrap; }
.route-reference { margin-block:1rem 3rem; padding-block:1rem; border-block:1px solid var(--line); }
.route-reference summary { cursor:pointer; font-weight:700; padding-block:.5rem; }
.route-reference-image { width:100%; height:auto; max-width:925px; object-fit:contain; }
.route-reference-button { display:block; border:0; padding:0; background:transparent; cursor:zoom-in; }
.brand-place-name { white-space:nowrap; }
.menu-button { flex-shrink:0; white-space:nowrap; }
.brand { max-width:280px; min-width:0; }
.brand strong { font-size:1rem; line-height:1.3; white-space:normal; }
.brand small { letter-spacing:.015em; white-space:normal; }
.nav-destination-group { position:relative; display:flex; align-items:center; gap:.15rem; }
.nav-destinations summary { cursor:pointer; list-style:none; min-width:32px; min-height:44px; display:grid; place-items:center; }
.nav-destinations summary::-webkit-details-marker { display:none; }
.nav-destinations>div { position:absolute; top:100%; inset-inline-start:0; min-width:280px; max-width:min(340px,calc(100vw - 48px)); padding:.75rem; background:var(--paper); border:1px solid var(--line); box-shadow:0 8px 24px #0002; }
.nav-destinations>div a { display:block; }
html[lang="en"] .nav-destinations>div { background:#171717; border-color:#555; }
.destination-group+.destination-group { margin-top:3rem; }
.destination-group .section-heading h2 { font-size:clamp(1.6rem,3vw,2.4rem); }
.area-parent { margin-top:1.3rem; color:var(--forest); }
.en-home-hero .eyebrow { max-width:68ch; font-size:.73rem; line-height:1.8; }
.language-gate h1 { font-size:clamp(2.6rem,5.8vw,5.5rem); max-width:18ch; }
@media (max-width:1020px) {
  .nav-destination-group { align-items:flex-start; }
  .nav-destinations>div { position:static; width:100%; min-width:0; box-shadow:none; }
  .nav-destination-group>a { flex:1; }
}
@media (max-width:640px) {
  .official-brand-logo { width:34px; height:34px; flex-basis:34px; }
  .brand { flex:1 1 auto; max-width:none; }
  .brand strong { font-size:.84rem; }
  .brand small { display:none; }
  .en-home-hero .eyebrow { font-size:.62rem; max-width:43ch; }
  .language-gate h1 { font-size:clamp(1.85rem,7.5vw,2.7rem); max-width:17ch; }
  .nav-destinations>div { max-width:calc(100vw - 70px); }
}
@media (min-width:641px) and (max-height:480px) {
  .language-gate .language-gate-content { padding-block:5.5rem 1.25rem; }
  .language-gate-heading { position:static; width:100%; }
  .language-gate .language-gate-heading h1 { font-size:clamp(1.9rem,4.5vw,2.5rem); max-width:none; line-height:1; }
  .language-gate-actions { margin-block-start:1rem; }
}
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; transition-duration:.01ms!important; } }
