/* City directory and shared knowledge pages. Product styling stays in main.css. */
@media(min-width:992px){.site-header .site-nav{gap:clamp(12px,1.6vw,32px);margin-left:clamp(20px,4vw,75px)}.site-header .site-nav a{font-size:clamp(14px,1vw,18px)}}
.city-eyebrow{margin:0 0 15px;color:#8ab8ff;font-weight:700;font-size:18px;letter-spacing:.08em}
body[data-page="city"] .hero h1{font-size:clamp(36px,4.1vw,68px);white-space:normal}.hero-answer{overflow-wrap:anywhere}
.eyebrow{color:#1761df;font-weight:700;letter-spacing:.08em}
.inner-main{background:#f5f8fd;min-height:65vh;padding-bottom:70px}.inner-hero{padding:38px 0 55px;background:linear-gradient(120deg,#eaf2ff,#f7faff)}.inner-hero h1{font-size:clamp(29px,3vw,46px);line-height:1.4;color:#102447;margin:20px 0 16px}.inner-hero>div>p:last-child{color:#5f708d;line-height:1.8;max-width:850px;font-size:18px}.breadcrumb{display:flex;gap:12px;align-items:center;color:#70819c;font-size:14px;flex-wrap:wrap;margin-bottom:30px}.breadcrumb a{color:#245aac}
@media(max-width:991px){.inner-hero{padding-top:28px}.site-header .site-nav{margin-left:0}}
@media(max-width:600px){.city-eyebrow{font-size:14px}.inner-hero{padding-bottom:30px}.inner-hero>div>p:last-child{font-size:15px}.inner-main{padding-bottom:40px}}


/* Province directory: one compact row per province, native category links. */
.regions-main{min-height:58vh;padding-bottom:52px}.region-hero{padding:26px 0 30px}.region-hero .breadcrumb{margin-bottom:18px}.region-hero h1{font-size:clamp(28px,2.7vw,38px);margin:0 0 10px}.region-hero>div>p:last-child{margin:0;font-size:16px}
.region-directory{padding-top:28px;padding-bottom:0}.province-index{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;margin-bottom:20px;color:#697991;font-size:14px}.province-index>span{margin-right:4px}.province-index a{padding:7px 16px;background:#e6efff;color:#1d5dbc;border-radius:6px}.province-index a:hover{background:#d5e4ff}
.province-list{border:1px solid #dce5f1;border-radius:12px;overflow:hidden;background:#fff}.province-group{display:grid;grid-template-columns:150px minmax(0,1fr);scroll-margin-top:110px}.province-group+.province-group{border-top:1px solid #e4ebf5}.province-heading{padding:25px 26px;background:#f1f5fc}.province-heading h2{margin:0 0 7px;color:#122e54;font-size:21px}.province-heading h2 a:hover{color:#165ee3}.province-heading>span{font-size:13px;color:#77869a}.province-cities{display:grid;grid-template-columns:repeat(auto-fill,minmax(108px,1fr));align-content:start;gap:4px 10px;padding:19px 26px}.province-cities a{display:flex;align-items:center;min-height:36px;color:#344d6d;font-size:16px;white-space:normal;overflow-wrap:anywhere;line-height:1.6;min-width:0}.province-cities a:hover,.province-cities a:focus-visible{color:#165ee3;text-decoration:underline;text-underline-offset:5px}
.region-help{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding-top:24px;color:#6c7c92;font-size:14px}.region-help p{margin:0;line-height:1.8}.region-help a{color:#205ebf;white-space:nowrap}
/* A fixed-size sample stays compact as the national directory grows. */
.region-strip-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px 18px;margin-right:var(--region-action-clearance,0px)}.region-strip-actions .province-regions{color:#3867ad}@media(max-width:600px){.region-strip-heading:has(.region-strip-actions){gap:10px;align-items:flex-start}.region-strip-actions{gap:6px 12px}}
.region-strip{padding:22px 0 24px;background:#edf3ff;border-top:1px solid #e0e9f8}.region-strip-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:12px}.region-strip-heading h2{font-size:17px;color:#17345b;margin:0;font-weight:700}.region-strip .all-regions{font-size:14px;color:#3867ad;white-space:nowrap}.region-links{display:grid;grid-template-columns:repeat(var(--region-columns,12),minmax(0,1fr));gap:0}.region-links a{display:inline-flex;align-items:center;justify-content:center;text-align:center;min-height:34px;padding:0;color:#536984;font-size:15px;line-height:1.5;white-space:normal;overflow-wrap:anywhere}.region-links a:nth-child(n+25){display:none}.region-links a:hover,.region-links a:focus-visible{color:#165ee3;text-decoration:underline;text-underline-offset:4px}
@media(max-width:600px){.regions-main{padding-bottom:32px}.region-hero{padding:22px 0 24px}.region-hero .breadcrumb{margin-bottom:16px}.region-directory{padding-top:20px}.province-index{margin-bottom:14px}.province-group{grid-template-columns:1fr}.province-heading{padding:14px 18px;display:flex;align-items:center;gap:12px}.province-heading h2{font-size:18px;margin:0}.province-cities{grid-template-columns:repeat(4,minmax(0,1fr));padding:12px 18px;gap:2px 8px}.province-cities a{font-size:15px;min-height:38px}.region-help{padding-top:18px;align-items:flex-start}.region-strip{padding:18px 0 20px}.region-strip-heading{margin-bottom:8px}.region-links a{min-height:34px;font-size:14px}.region-strip-heading h2{font-size:16px}}
/* Use the full symmetric container width; the WeChat button is fixed at mid-screen. */
@media(max-width:600px){.region-links{grid-template-columns:repeat(var(--region-columns,3),minmax(0,1fr))}.region-links a:nth-child(n+13){display:none}}
/* City name is rendered by native PbootCMS tags, together with the brand. */
body[data-page="city"] .site-header .brand{min-width:0;max-width:400px}
@media(min-width:992px) and (max-width:1399px){body[data-page="city"] .site-header .brand{max-width:300px}body[data-page="city"] .site-header .site-nav{gap:clamp(10px,1.2vw,17px);margin-left:24px}}
@media(max-width:991px){body[data-page="city"] .site-header .brand{max-width:calc(100% - 54px)}}

/* A city profile is rendered only for pages with reviewed, backend-managed local content. */
.city-context{padding:76px 0;background:#f5f8fd}
.city-context-heading{max-width:980px;margin-bottom:30px}
.city-context-kicker{margin:0 0 12px;color:#1761df;font-weight:700;letter-spacing:.08em}
.city-context-heading h2{margin:0 0 16px;color:#102447;font-size:clamp(28px,2.5vw,42px);line-height:1.35}
.city-context-heading>p:last-child{margin:0;color:#5f708d;font-size:17px;line-height:1.85}
.city-managed-content{color:#435a78;font-size:17px;line-height:1.85}
.city-managed-content .city-profile-lead{max-width:1180px;margin:0 0 28px;font-size:18px;color:#314b6d}
.city-profile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-bottom:24px}
.city-profile-grid article,.city-profile-plan>div{background:#fff;border:1px solid #dce6f4;border-radius:16px;padding:26px;box-shadow:0 12px 30px rgba(34,75,130,.06)}
.city-profile-grid span{display:inline-block;margin-bottom:13px;color:#1761df;font-size:14px;font-weight:700;letter-spacing:.06em}
.city-profile-grid h3,.city-profile-plan h3{margin:0 0 12px;color:#15345d;font-size:21px;line-height:1.5}
.city-profile-grid p{margin:0}
.city-profile-plan{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.city-profile-plan ul,.city-profile-plan ol{margin:0;padding-left:1.25em}
.city-profile-plan li+li{margin-top:8px}
.city-profile-boundary{margin:22px 0 0;padding:16px 20px;border-left:4px solid #2a75ef;background:#eaf2ff;border-radius:0 10px 10px 0;color:#49617e}
@media(max-width:991px){.city-context{padding:56px 0}.city-profile-grid{grid-template-columns:1fr}.city-profile-plan{grid-template-columns:1fr}}
@media(max-width:600px){.city-context{padding:42px 0}.city-context-heading{margin-bottom:22px}.city-context-heading>p:last-child,.city-managed-content{font-size:16px}.city-managed-content .city-profile-lead{font-size:16px}.city-profile-grid article,.city-profile-plan>div{padding:20px}.city-profile-grid h3,.city-profile-plan h3{font-size:19px}}
