/* Shared city reading surface. Native details retain all content without JS. */
.city-section-nav112{display:flex;flex-wrap:wrap;gap:9px;padding:18px 0 26px;margin-bottom:8px;border-bottom:1px solid #e2e5eb}.city-main .city-section-nav112 a{display:inline-flex;align-items:center;padding:10px 15px;border:1px solid #dbe1ec;border-radius:30px;text-decoration:none;font-size:13px;font-weight:600;color:#31445b;background:#fff}.city-section-nav112 a:hover{background:#edf2ff;border-color:#a7b7e6}.city-main .city-hero .primary{display:inline-flex;margin-top:14px;min-height:44px;align-items:center;padding:12px 18px}.city-main .place-browser112{padding:32px 0 42px;border-top:0;scroll-margin-top:120px}.place-heading112{display:flex;justify-content:space-between;align-items:end;gap:18px}.place-heading112 h2{margin:8px 0 14px;max-width:800px}.place-total112{padding:9px 13px;border:1px solid #dfe4ed;border-radius:30px;font-size:12px;white-space:nowrap;margin-bottom:16px}.place-browser112 .city-method{max-width:750px;font-size:13px;line-height:1.6;margin:0 0 24px;color:#687487}.place-tools112{display:grid;grid-template-columns:minmax(200px,300px) minmax(0,1fr);gap:18px 24px;align-items:end;padding:20px 0;border-top:1px solid #e2e6ed}.place-search112{display:grid;gap:7px;font-size:12px;font-weight:600;color:#59677b}.place-search112 input{width:100%;min-width:0;min-height:44px;padding:11px 14px;font:inherit;font-size:14px;border:1px solid #d6dfe9;border-radius:12px;background:#fafbfd;color:#26384d;box-sizing:border-box}.place-filters112{display:flex;flex-wrap:wrap;gap:7px;min-width:0}.place-filters112 button{display:inline-flex;gap:7px;align-items:center;padding:9px 12px;border:1px solid #dce3ed;border-radius:30px;font:600 12px/1.25 system-ui,sans-serif;box-shadow:none;color:#53647a;background:#fff;min-height:38px}.place-filters112 button span{font-size:11px;opacity:.65;font-weight:500}.place-filters112 button[aria-pressed=true]{background:#e9efff;border-color:#b6c7f3;color:#2349df}.place-result112{grid-column:1/-1;font-size:12px;margin:0;color:#788397}.place-list112{border-top:1px solid #dfe5ee}.place-browser112 .city-place{border:0;border-bottom:1px solid #e2e7ee;border-radius:0;padding:0;background:transparent;box-shadow:none;min-width:0;scroll-margin-top:130px;transform:none!important;translate:none!important;opacity:1!important}.place-row112>summary{display:grid;grid-template-columns:32px minmax(0,1fr) 28px;align-items:start;gap:16px;list-style:none;padding:19px 2px;cursor:pointer;min-height:76px;box-sizing:border-box}.place-row112>summary::-webkit-details-marker{display:none}.place-row112>summary::marker{content:''}.place-number112{padding-top:3px;font-size:11px;font-variant-numeric:tabular-nums;color:#95a1b1}.place-summary112{display:block;min-width:0}.place-browser112 .place-summary112 h3{font-size:17px;line-height:1.35;letter-spacing:-.02em;font-weight:650;margin:0 0 5px;color:#27344b;overflow-wrap:anywhere}.place-meta112{display:block;color:#7a8596;font-size:12px;line-height:1.6;overflow-wrap:anywhere}.place-description112{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;color:#596a7d;font-size:13px;line-height:1.6;margin-top:5px}.place-expand112{display:flex;align-items:center;justify-content:center;min-height:28px;border:1px solid #d8e1ee;border-radius:50%;font-size:19px;color:#667a96;line-height:1;transition:transform .2s ease}.place-row112[open] .place-expand112{transform:rotate(45deg)}.place-row112[open]{background:#fafbfe}.place-row112[open]>summary{padding-bottom:12px}.place-detail112{padding:0 42px 22px 50px;max-width:850px}.place-browser112 .place-detail112 p{font-size:14px;line-height:1.75;color:#4e5e73;margin:0 0 10px}.place-browser112 .place-detail112 .place-check112{font-size:12px;color:#7a6f58;background:#f6f3e9;border-radius:9px;padding:10px 12px}.place-detail112 a{display:inline-flex;font-size:12px;line-height:1.5;font-weight:600;word-break:break-word;margin-top:5px}.place-more112>summary{display:flex;width:max-content;max-width:100%;box-sizing:border-box;align-items:center;min-height:44px;padding:12px 18px;margin:22px auto 6px;border:1px solid #d6dfed;border-radius:30px;font-size:13px;font-weight:600;cursor:pointer;list-style:none;color:#2349df;background:white}.place-more112>summary::-webkit-details-marker{display:none}.place-more112[open]>summary{margin-bottom:20px}.place-more112 .place-list112{border-top:0}.place-browser112 [hidden]{display:none!important}.place-browser112 .place-empty112{padding:24px;border:1px dashed #d6deea;border-radius:14px;font-size:14px;line-height:1.7;color:#6b788c}.city-overview112,.city-examples,.city-planner112{scroll-margin-top:130px}.city-overview112{padding:35px 0;border-top:1px solid #e1e5ed}.city-overview112 h2{font-size:clamp(28px,3vw,40px);letter-spacing:-.035em;margin:8px 0 24px}.city-overview112>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 28px;margin-bottom:22px;align-items:start}.city-overview112 article{border-bottom:1px solid #dde4ed;padding:0 0 15px;min-width:0}.city-overview112 h3{font-size:15px;font-weight:650;line-height:1.5;cursor:pointer;overflow-wrap:anywhere}.city-overview112 article p{font-size:14px;line-height:1.75;color:#66758a}.city-planner112 .destination-form{margin:26px 0 40px}.city-main .city-hero{padding-bottom:20px}.city-main .city-examples{padding-top:26px}.place-browser112 summary:focus-visible,.place-browser112 button:focus-visible,.city-section-nav112 a:focus-visible,.place-search112 input:focus-visible{outline:3px solid #8ba3ef;outline-offset:4px}
@media(max-width:850px){.place-tools112{grid-template-columns:1fr}.place-result112{grid-column:auto}.place-search112{max-width:440px}.place-row112>summary{gap:12px}.place-description112{-webkit-line-clamp:2}.place-total112{margin-bottom:15px}}
@media(max-width:600px){.city-section-nav112{gap:7px;padding-top:5px}.city-main .city-section-nav112 a{font-size:12px;padding:9px 11px}.place-heading112{align-items:start}.place-heading112 h2{font-size:28px;line-height:1.15}.place-total112{font-size:11px;margin:35px 0 0;padding:7px 10px}.place-tools112{gap:16px}.place-filters112{gap:6px}.place-filters112 button{font-size:11px;padding:9px 10px}.place-row112>summary{grid-template-columns:22px minmax(0,1fr) 24px;gap:9px;padding:17px 0}.place-browser112 .place-summary112 h3{font-size:16px}.place-meta112{font-size:11px}.place-description112{font-size:12px}.place-number112{font-size:10px}.place-expand112{min-height:24px;font-size:17px}.place-detail112{padding:0 12px 20px 31px}.place-browser112 .place-detail112 p{font-size:13px}.city-overview112>div{grid-template-columns:1fr;gap:16px}.place-browser112{scroll-margin-top:140px}.city-main .city-hero h1{font-size:42px}.city-main .city-hero .primary{font-size:13px}}
@media(prefers-reduced-motion:reduce){.place-expand112{transition:none}}

.city-overview112>div{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:14px}
.city-overview112 article{background:#fff;border:1px solid #dde4ed;border-radius:14px;padding:14px 16px}
.city-overview112 article p{margin-bottom:0}
.place-layout166.has-map166{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:24px}
.place-map166{height:clamp(300px,45vw,510px);position:sticky;top:118px;z-index:1;overflow:hidden;border:1px solid #dde4ed;border-radius:16px;background:#eef2f6}
.place-stack166{min-width:0}
.place-pin166{display:grid;place-items:center;background:#344ad7;color:white;border:2px solid white;border-radius:50%;font-size:11px;font-weight:700;box-shadow:0 2px 6px #18294355}
@media(max-width:800px){
 .place-layout166.has-map166{grid-template-columns:minmax(0,1fr);gap:16px}
 .place-map166{position:relative;top:auto;height:clamp(240px,58vw,360px)}
}
@media(max-width:660px){.city-overview112>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.city-overview112 article{padding:12px}}

.city-overview112 h3{margin:0;cursor:inherit}
.place-layout166.has-map166{--place-panel-height:clamp(300px,45vw,510px)}
.place-layout166.has-map166 .place-map166{height:var(--place-panel-height);position:relative;top:auto}
.place-layout166.has-map166 .place-stack166{max-height:var(--place-panel-height);overflow-y:auto;scrollbar-gutter:stable;scroll-padding:8px}
@media(max-width:800px){
 .place-layout166.has-map166{--place-panel-height:clamp(240px,58vw,360px)}
}
