/* ==================================================
   城市通 设计系统 v3 — 深蓝金高级感
   ================================================== */
:root{
  /* 品牌色阶：深海蓝 + 琥珀金 */
  --navy-950:#050A18;
  --navy-900:#0A142D;
  --navy-800:#0F1D3D;
  --navy-700:#16264F;
  --navy-600:#1E3266;
  --navy-500:#2A4482;
  --navy-400:#4A6CB0;
  --navy-300:#8AA6E0;
  --navy-200:#C8D6F2;
  --navy-100:#EAF0FB;

  --gold-600:#B45309;
  --gold-500:#D97706;
  --gold-400:#F59E0B;
  --gold-300:#FCD34D;
  --gold-200:#FDE68A;
  --gold-100:#FEF3C7;

  --cyan-500:#0EA5E9;
  --cyan-400:#38BDF8;
  --cyan-300:#7DD3FC;

  --text-heading:#0B1120;
  --text-body:#334155;
  --text-muted:#64748B;
  --bg-page:#F3F6FB;
  --bg-card:#FFFFFF;
  --line:#E2E8F0;

  --shadow-sm:0 1px 2px 0 rgb(15 23 42 / .06);
  --shadow-md:0 6px 16px -4px rgb(15 23 42 / .10);
  --shadow-lg:0 18px 40px -12px rgb(15 23 42 / .16);
  --shadow-xl:0 28px 64px -18px rgb(15 23 42 / .22);

  --radius-sm:8px;
  --radius-md:12px;
  --radius-lg:16px;
  --radius-xl:24px;
  --radius-pill:999px;

  --transition:220ms cubic-bezier(.4,0,.2,1);
  --container:1240px;
  --font-sans:"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans SC",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}

*::before,*::after,*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;font-family:var(--font-sans);color:var(--text-body);background:var(--bg-page);
  line-height:1.65;-webkit-font-smoothing:antialiased;font-size:16px;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--navy-600);text-decoration:none;transition:color var(--transition)}
a:hover{color:var(--gold-500)}
:focus-visible{outline:2px solid var(--cyan-400);outline-offset:3px}
button{font-family:inherit}

.wrap{max-width:var(--container);margin:0 auto;padding:0 20px}

/* 顶部导航 */
.nav{
  position:sticky;top:0;z-index:120;
  background:rgba(10,20,45,.92);
  backdrop-filter:saturate(180%) blur(12px);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.nav-in{display:flex;align-items:center;justify-content:space-between;height:68px;gap:20px}
.logo{display:flex;align-items:center;gap:12px;color:#fff}
.logo-mark{
  width:42px;height:42px;border-radius:var(--radius-md);
  background:linear-gradient(135deg,var(--gold-500),var(--gold-300));
  color:var(--navy-900);display:grid;place-items:center;font-size:22px;font-weight:900;
}
.logo-txt{font-size:20px;font-weight:800;color:#fff;letter-spacing:.3px}
.logo-txt small{display:block;font-size:12px;color:var(--navy-200);font-weight:500;letter-spacing:.5px;margin-top:2px}
.nav-links{display:flex;align-items:center;gap:32px}
.nav-links a{font-size:15px;font-weight:600;color:#E2E8F0;position:relative;padding:6px 0}
.nav-links a::after{content:"";position:absolute;left:0;bottom:0;width:0;height:2px;background:var(--gold-400);transition:width var(--transition)}
.nav-links a:hover{color:#fff}
.nav-links a:hover::after{width:100%}
.nav-links .gold{color:var(--gold-300)}

/* 按钮 */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:var(--radius-sm);font-weight:700;font-size:15px;cursor:pointer;transition:all var(--transition)}
.btn-gold{background:linear-gradient(135deg,var(--gold-500),var(--gold-400));color:var(--navy-900);padding:13px 30px;box-shadow:0 4px 14px rgba(245,158,11,.35)}
.btn-gold:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(245,158,11,.45)}
.btn-outline{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.35);padding:11px 24px}
.btn-outline:hover{background:rgba(255,255,255,.08);border-color:#fff}

/* ===== Hero 轮播 ===== */
.hero-slider{position:relative;width:100%;height:540px;background:var(--navy-900);overflow:hidden}
.slider{position:relative;width:100%;height:100%}
.slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .8s ease,visibility .8s ease;background-position:center;background-repeat:no-repeat;background-size:cover}
.slide.active{opacity:1;visibility:visible}
.slide::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,10,24,.82) 0%,rgba(5,10,24,.45) 55%,rgba(5,10,24,.55) 100%)}
.slide-content{position:relative;z-index:3;height:100%;display:flex;flex-direction:column;justify-content:center;color:#fff;max-width:700px;padding-top:30px}
.slide-kicker{display:inline-flex;align-items:center;gap:8px;color:var(--gold-300);font-size:13px;font-weight:700;letter-spacing:1px;text-transform:uppercase;margin-bottom:16px}
.slide-kicker::before{content:"";width:24px;height:2px;background:var(--gold-400)}
.slide h1{font-size:52px;font-weight:900;line-height:1.1;letter-spacing:.5px;margin-bottom:18px;text-shadow:0 2px 16px rgba(0,0,0,.3)}
.slide p{font-size:18px;line-height:1.7;color:#E2E8F0;max-width:560px;margin-bottom:28px}
.slide .btn-gold{margin-right:14px}

.slider-dots{position:absolute;left:50%;bottom:24px;transform:translateX(-50%);display:flex;gap:10px;z-index:10}
.dot{width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.35);cursor:pointer;transition:var(--transition)}
.dot.active{background:var(--gold-400);transform:scale(1.2)}
.slider-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:10;width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.08);color:#fff;font-size:24px;display:grid;place-items:center;cursor:pointer;transition:var(--transition)}
.slider-arrow:hover{background:rgba(255,255,255,.18);border-color:#fff}
.slider-prev{left:20px}
.slider-next{right:20px}

/* 搜索浮层 */
.search-layer{position:relative;z-index:20;margin-top:-42px}
.search-box{
  display:flex;gap:0;max-width:720px;margin:0 auto;background:#fff;border-radius:var(--radius-pill);
  box-shadow:var(--shadow-xl);overflow:hidden;padding:6px;border:1px solid var(--line);
}
.search-box input{flex:1;height:56px;border:0;padding:0 24px;font-size:16px;color:var(--text-heading);background:transparent}
.search-box input::placeholder{color:#94A3B8}
.search-box button{height:56px;border:0;border-radius:var(--radius-pill);padding:0 34px;background:linear-gradient(135deg,var(--gold-500),var(--gold-400));color:var(--navy-900);font-size:17px;font-weight:800;cursor:pointer}
.search-box button:hover{filter:brightness(1.05)}
.search-result{max-width:720px;margin:12px auto 0;position:absolute;left:0;right:0;z-index:30}
.sr-item{display:flex;align-items:center;gap:10px;background:#fff;border-radius:var(--radius-md);padding:13px 16px;margin-bottom:8px;color:var(--text-heading);font-weight:700;box-shadow:var(--shadow-md);transition:var(--transition);border:1px solid var(--line)}
.sr-item:hover{border-color:var(--gold-400);transform:translateX(3px);color:var(--navy-700)}
.sr-item small{font-weight:500;color:var(--text-muted);margin-left:auto}

/* 统计数据条 */
.stats-bar{background:linear-gradient(135deg,var(--navy-800),var(--navy-700));color:#fff;padding:28px 0;margin-top:42px;border-top:1px solid rgba(255,255,255,.08)}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;text-align:center}
.stats-grid .num{font-size:34px;font-weight:900;color:var(--gold-300);line-height:1}
.stats-grid .label{font-size:14px;color:#CBD5E1;margin-top:6px}

/* 热门城市 */
.section{padding:56px 0}
.section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;gap:16px}
.section-title{font-size:28px;font-weight:900;color:var(--text-heading);letter-spacing:.3px;display:flex;align-items:center;gap:10px}
.section-title::before{content:"";width:6px;height:26px;border-radius:3px;background:linear-gradient(var(--gold-500),var(--gold-300))}
.section-title small{font-size:14px;color:var(--text-muted);font-weight:500;margin-left:8px}

.hot-scroll{display:flex;gap:14px;overflow-x:auto;padding-bottom:8px;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
.hot-scroll::-webkit-scrollbar{height:6px}
.hot-scroll::-webkit-scrollbar-thumb{background:#CBD5E1;border-radius:3px}
.hot-city{flex:0 0 auto;min-width:124px;background:#fff;border:1px solid var(--line);border-radius:var(--radius-md);padding:16px 18px;text-align:center;transition:var(--transition);box-shadow:var(--shadow-sm)}
.hot-city:hover{transform:translateY(-3px);border-color:var(--gold-400);box-shadow:var(--shadow-md)}
.hot-city .name{font-size:18px;font-weight:800;color:var(--text-heading);margin-bottom:4px}
.hot-city .meta{font-size:12px;color:var(--text-muted);font-weight:500}

/* 四大功能卡（百度收录四图） */
.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.feature-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);transition:var(--transition);display:flex;flex-direction:column}
.feature-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg);border-color:var(--gold-200)}
.feature-img{height:180px;overflow:hidden;position:relative;background:var(--navy-800)}
.feature-img img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.feature-card:hover .feature-img img{transform:scale(1.05)}
.feature-body{padding:20px}
.feature-body h3{font-size:17px;font-weight:800;color:var(--text-heading);margin-bottom:8px;display:flex;align-items:center;gap:8px}
.feature-body p{font-size:14px;color:var(--text-muted);line-height:1.6}
.feature-icon{width:30px;height:30px;border-radius:50%;background:var(--gold-100);color:var(--gold-600);display:grid;place-items:center;font-size:16px}

/* 省份标签导航 */
.prov-tabs{position:sticky;top:68px;z-index:90;background:rgba(243,246,251,.95);backdrop-filter:blur(8px);padding:14px 0;border-bottom:1px solid var(--line);display:flex;gap:8px;overflow-x:auto;scrollbar-width:none}
.prov-tabs::-webkit-scrollbar{display:none}
.prov-tab{flex:0 0 auto;min-width:48px;height:40px;border:0;border-radius:var(--radius-pill);background:#fff;color:var(--text-body);font-size:14px;font-weight:700;cursor:pointer;box-shadow:var(--shadow-sm);transition:var(--transition);border:1px solid var(--line)}
.prov-tab:hover{background:var(--navy-100);border-color:var(--navy-200)}
.prov-tab.active{background:linear-gradient(135deg,var(--navy-700),var(--navy-600));color:#fff;border-color:transparent;box-shadow:var(--shadow-md)}

.prov-panel{margin-top:28px;padding-top:10px}
.prov-title{font-size:20px;font-weight:800;color:var(--text-heading);margin-bottom:16px;display:flex;align-items:center;gap:10px}
.prov-abbr{width:36px;height:36px;border-radius:var(--radius-sm);background:linear-gradient(135deg,var(--navy-700),var(--navy-500));color:#fff;display:grid;place-items:center;font-size:16px;font-weight:800}
.prov-title small{font-size:13px;color:var(--text-muted);font-weight:500;margin-left:6px}

.city-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px}
.city-cell{background:#fff;border:1px solid var(--line);border-radius:var(--radius-md);padding:15px;transition:var(--transition);box-shadow:var(--shadow-sm);position:relative}
.city-cell:hover{border-color:var(--gold-400);box-shadow:var(--shadow-md);transform:translateY(-3px)}
.city-cell:hover .cell-name{color:var(--navy-700)}
.cell-name{font-size:16px;font-weight:800;color:var(--text-heading);margin-bottom:5px}
.cell-meta{font-size:12px;color:var(--text-muted);font-weight:500}

/* 页脚 */
.footer{background:linear-gradient(180deg,var(--navy-900),var(--navy-950));color:#CBD5E1;padding:48px 0 28px;font-size:14px;margin-top:40px;border-top:1px solid rgba(255,255,255,.06)}
.footer .top{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px;margin-bottom:36px}
.footer h4{font-size:16px;font-weight:800;color:#fff;margin-bottom:16px}
.footer p{line-height:1.8;opacity:.85}
.footer-links{display:flex;flex-wrap:wrap;gap:16px}
.footer-links a{color:#A5B4FC}
.footer-links a:hover{color:#fff}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:20px;border-top:1px solid rgba(255,255,255,.08);flex-wrap:wrap}
.footer .beian{font-size:13px;color:#94A3B8}
.footer .beian a{color:#94A3B8}
.footer .beian a:hover{color:#fff}

/* ===== 城市页 ===== */
.city-hero{position:relative;height:420px;background:var(--navy-900);overflow:hidden;color:#fff}
.city-hero .banner-bg{position:absolute;inset:0;background-position:center;background-size:cover}
.city-hero .banner-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,10,24,.78) 0%,rgba(5,10,24,.4) 60%,rgba(5,10,24,.6) 100%)}
.city-hero-content{position:relative;z-index:3;height:100%;display:flex;flex-direction:column;justify-content:flex-end;padding-bottom:40px}
.city-hero .badge{display:inline-flex;align-items:center;gap:8px;background:rgba(245,158,11,.15);border:1px solid rgba(245,158,11,.35);color:var(--gold-300);border-radius:var(--radius-pill);padding:5px 14px;font-size:13px;font-weight:700;margin-bottom:14px;width:fit-content}
.city-hero h1{font-size:42px;font-weight:900;margin-bottom:10px}
.city-hero .sub{font-size:16px;opacity:.9;max-width:640px;line-height:1.7}
.city-hero .chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.city-hero .chip{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-pill);padding:7px 15px;font-size:14px;font-weight:600}
.city-hero .chip strong{font-weight:800;color:var(--gold-300)}

.city-toolbar{position:relative;z-index:10;margin-top:-30px}
.city-toolbar .wrap{background:#fff;border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);padding:24px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.quick-info{display:flex;gap:32px;flex-wrap:wrap}
.quick-info .item{display:flex;align-items:center;gap:8px}
.quick-info .icon{width:36px;height:36px;border-radius:50%;background:var(--navy-100);color:var(--navy-600);display:grid;place-items:center;font-size:16px}
.quick-info .txt{font-size:13px;color:var(--text-muted)}
.quick-info .num{font-size:17px;font-weight:800;color:var(--text-heading)}

/* 城市页布局 */
.layout{display:grid;grid-template-columns:1fr 340px;gap:30px;padding:32px 0 56px}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);padding:24px 26px;margin-bottom:22px;box-shadow:var(--shadow-sm)}
.card-h{display:flex;align-items:center;gap:10px;font-size:19px;font-weight:900;color:var(--text-heading);margin-bottom:16px}
.card-h .bar{width:5px;height:22px;border-radius:3px;background:linear-gradient(var(--gold-500),var(--gold-300))}
.para{color:var(--text-body);line-height:1.8}
.sub-h{font-size:17px;font-weight:800;color:var(--text-heading);margin:18px 0 10px}

.kv{width:100%;border-collapse:collapse;margin:8px 0 16px;font-size:14px;border-radius:var(--radius-sm);overflow:hidden}
.kv th,.kv td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--line)}
.kv th{background:var(--navy-100);color:var(--navy-700);font-weight:800;width:13%;white-space:nowrap}
.kv td{color:var(--text-body);width:37%}
.kv tr:last-child th,.kv tr:last-child td{border-bottom:0}

.tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}
.tag{display:inline-flex;align-items:center;background:var(--navy-100);color:var(--navy-700);border:1px solid var(--navy-200);padding:7px 14px;border-radius:var(--radius-pill);font-size:14px;font-weight:600}
.tag-warm{background:var(--gold-100);color:var(--gold-700);border-color:var(--gold-200)}

.attr-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);transition:var(--transition);display:flex;flex-direction:column}
.attr-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--gold-200)}
.attr-img{height:190px;overflow:hidden;position:relative;background:var(--navy-800)}
.attr-img img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.attr-card:hover .attr-img img{transform:scale(1.05)}
.attr-img .placeholder{position:absolute;inset:0;display:grid;place-items:center;color:#fff;font-size:56px;font-weight:900;background:linear-gradient(135deg,var(--navy-500),var(--navy-700));text-shadow:0 2px 16px rgba(0,0,0,.2)}
.attr-body{padding:18px}
.attr-body h3{font-size:17px;font-weight:900;color:var(--text-heading);margin-bottom:8px}
.attr-body p{font-size:14px;color:var(--text-muted);line-height:1.6;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.grid-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.dlist{list-style:none}
.dlist li{padding:10px 0 10px 20px;position:relative;border-bottom:1px dashed var(--line);font-size:14.5px;color:var(--text-body)}
.dlist li::before{content:"";position:absolute;left:0;top:17px;width:7px;height:7px;border-radius:50%;background:var(--gold-500)}
.dlist li:last-child{border-bottom:0}

.scard{background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);padding:20px;margin-bottom:20px;box-shadow:var(--shadow-sm)}
.scard h3{font-size:16px;font-weight:900;color:var(--text-heading);margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--line)}
.quick{list-style:none}
.quick li{display:flex;justify-content:space-between;padding:11px 0;border-bottom:1px dashed var(--line);font-size:14px}
.quick li:last-child{border-bottom:0}
.quick span{color:var(--text-muted)}
.quick b{font-weight:900;color:var(--text-heading)}
.citylinks{display:flex;flex-wrap:wrap;gap:8px}
.citylinks a{display:inline-block;background:var(--navy-100);color:var(--navy-700);padding:6px 12px;border-radius:var(--radius-sm);font-size:13.5px;font-weight:700;transition:var(--transition)}
.citylinks a:hover{background:var(--navy-600);color:#fff}

.breadcrumb{padding:18px 0;font-size:13px;color:var(--text-muted)}
.breadcrumb a{color:var(--text-muted)}
.breadcrumb a:hover{color:var(--navy-600)}
.breadcrumb span{color:var(--text-heading);font-weight:700}

/* 404 */
.page-404{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--navy-900),var(--navy-700));color:#fff;text-align:center;padding:24px}
.page-404 .box{max-width:560px}
.page-404 .code{font-size:120px;font-weight:900;line-height:1;letter-spacing:4px;background:linear-gradient(var(--gold-300),var(--gold-500));-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.page-404 h1{font-size:26px;font-weight:800;margin:18px 0 10px}
.page-404 p{opacity:.85;line-height:1.8;font-size:15px}
.page-404 .btn{display:inline-block;background:var(--gold-500);color:var(--navy-900);padding:12px 28px;border-radius:var(--radius-pill);font-weight:800;text-decoration:none;margin-top:24px}
.page-404 .hot{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:28px}
.page-404 .hot a{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.24);color:#fff;padding:8px 16px;border-radius:var(--radius-pill);font-size:14px;font-weight:700}
.page-404 .hot a:hover{background:rgba(255,255,255,.22)}

/* ===== 响应式 ===== */
@media(max-width:1024px){
  .hero-slider{height:480px}
  .slide h1{font-size:40px}
  .feature-grid{grid-template-columns:repeat(2,1fr)}
  .stats-grid{grid-template-columns:repeat(2,1fr);gap:16px}
  .layout{grid-template-columns:1fr}
  .footer .top{grid-template-columns:1fr;gap:24px}
}
@media(max-width:768px){
  .nav-links{display:none}
  .hero-slider{height:460px}
  .slide h1{font-size:30px}
  .slide p{font-size:15px}
  .slide-content{padding-top:60px}
  .search-box{flex-direction:column;border-radius:var(--radius-lg)}
  .search-box input,.search-box button{width:100%;border-radius:var(--radius-md)}
  .stats-grid .num{font-size:26px}
  .feature-grid{grid-template-columns:1fr}
  .city-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}
  .grid-cards,.two-col{grid-template-columns:1fr}
  .city-hero{height:380px}
  .city-hero h1{font-size:30px}
  .city-toolbar .wrap{padding:18px}
}
@media(max-width:480px){
  .section{padding:40px 0}
  .section-title{font-size:22px}
  .slide h1{font-size:26px}
  .slider-arrow{display:none}
  .city-grid{grid-template-columns:repeat(2,1fr)}
  .footer-bottom{flex-direction:column;align-items:flex-start}
}

/* ===== 城市页 hero 两栏 + 天气卡（补全） ===== */
.hero-grid{display:flex;gap:32px;align-items:center;height:100%;position:relative;z-index:3;padding:0 24px;}
.hero-main{flex:1.3;min-width:0;}
.hero-side{flex:0.9;display:flex;flex-direction:column;gap:14px;min-width:280px;}
.wcard{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:14px;padding:16px 18px;}
.wcard-top{display:flex;justify-content:space-between;font-size:13px;opacity:.85;margin-bottom:8px;}
.wmain{display:flex;align-items:baseline;gap:10px;margin-bottom:6px;}
.wtemp{font-size:38px;font-weight:800;color:#f59e0b;}
.wtxt{font-size:16px;}
.wmeta{font-size:12.5px;opacity:.8;margin-bottom:10px;}
.wfore{display:flex;gap:6px;}
.wfore>div{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;background:rgba(255,255,255,.06);border-radius:8px;padding:6px 2px;font-size:12px;text-align:center;}
.wfore .ft{font-size:18px;line-height:1;}
.timecard{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:14px;padding:12px 18px;display:flex;align-items:baseline;justify-content:space-between;}
.timecard .label{font-size:13px;opacity:.8;}
.timecard .big{font-size:26px;font-weight:800;color:#f59e0b;}
.timecard .date{font-size:12.5px;opacity:.8;}
/* ===== 城市印象大图：限高，加快首屏 ===== */
.city-banner{padding:18px 0 0;}
.city-banner .banner{border-radius:14px;overflow:hidden;box-shadow:0 2px 12px rgba(0,0,0,.08);}
.city-banner .banner img{width:100%;height:230px;object-fit:cover;display:block;}
@media(max-width:768px){
  .hero-grid{flex-direction:column;gap:16px;align-items:stretch;}
  .city-banner .banner img{height:180px;}
}
