:root{
  /* ===== 配色取自北京通州区政府门户 www.bjtzh.gov.cn（bjtz.css / skin.css）===== */
  --gov-red:#BD1A2D;         /* 门户主色：页头 / 主导航 / 页脚 */
  --gov-red-dark:#8F1322;    /* 深红：描边 / 栏目标题 */
  --gov-red-deep:#5A0D16;    /* 暗红：深底 / 渐变起点 */
  --gov-red-line:#901323;    /* 页头下描边 */
  --gov-red-foot:#A91728;    /* 页脚信息块 */
  --gov-gold:#C79031;        /* 金色：点缀条 */
  --gov-gold-2:#DABB85;      /* 浅金：页脚底栏 */
  --gov-gold-3:#F5D389;      /* 亮金：悬停 / 高亮 */
  --gov-cream:#FCF0D6;       /* 米金：导航二级底色 */
  --gov-cream-2:#F7E1AF;     /* 米金描边 */

  /* 原变量名沿用，统一指向门户红金体系 */
  --blue-900:var(--gov-red-deep);
  --blue-800:var(--gov-red-dark);
  --blue-700:var(--gov-red-foot);
  --blue-600:var(--gov-red);
  --blue-500:#CC3A4A;
  --blue-100:var(--gov-cream-2);
  --blue-50:var(--gov-cream);
  --red:var(--gov-gold);
  --text-1:#222222;
  --text-2:#5A5A5A;
  --text-3:#8C8C8C;
  --line:#EDE3D6;
  --line-2:#F4EDE3;
  --bg:#F6F3ED;
  --white:#FFFFFF;
  --radius:4px;
  --shadow-sm:0 1px 3px rgba(90,20,20,.06);
  --shadow-md:0 4px 16px rgba(90,20,20,.08);
  --shadow-lg:0 10px 30px rgba(90,20,20,.12);
}
*{margin:0;padding:0;box-sizing:border-box;}
body{
  background:#E7E1D6;
  font-family:"Microsoft YaHei","PingFang SC","Hiragino Sans GB","Source Han Sans SC",sans-serif;
  color:var(--text-1);
  -webkit-font-smoothing:antialiased;
  padding:0;
}
.page{
  width:100%;max-width:1920px;margin:0 auto;background:var(--white);
  box-shadow:var(--shadow-lg);overflow:hidden;
}

/* ---------- Banner（含副中心地标点缀） ---------- */
.banner{
  position:relative;height:330px;overflow:hidden;
  background:#5A0D16;
}
.banner-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.banner-content{
  position:relative;width:100%;max-width:1240px;margin:0 auto;height:100%;
  padding:0 20px 34px;box-sizing:border-box;
  display:flex;flex-direction:column;justify-content:center;
}
.banner-title{
  margin-top:0;font-size:54px;font-weight:700;color:#fff;letter-spacing:6px;
}
.banner-accent{
  width:76px;height:5px;background:var(--red);margin:20px 0 0;border-radius:2px;
}
.banner-sub{
  margin-top:20px;font-size:17px;color:#F3D9A6;letter-spacing:2.6px;
}
/* ---------- 主体 ---------- */
.main{background:var(--bg);padding:30px 0 46px;}
.main-inner{width:100%;max-width:1240px;margin:0 auto;padding:0 20px;box-sizing:border-box;}

/* ---------- 图片入口卡片 ---------- */
.entry-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;}
.entry-card{
  position:relative;background:var(--white);border:1px solid var(--line);
  border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm);
  display:flex;height:190px;cursor:pointer;transition:.22s ease;
}
.entry-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px);border-color:#E6CE96;}
.entry-visual{
  width:300px;height:100%;position:relative;flex-shrink:0;overflow:hidden;
  background:linear-gradient(135deg,#5A0D16,#8F1322 55%,#BD1A2D);
}
.entry-visual.alt{background:linear-gradient(135deg,#6B1119,#A91728 52%,#C79031);}
.entry-visual svg{position:absolute;inset:0;width:100%;height:100%;}
.entry-tag{
  position:absolute;left:16px;top:16px;padding:4px 11px;border-radius:2px;
  background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.35);
  font-size:11.5px;color:#FFF3DA;letter-spacing:1.6px;backdrop-filter:blur(2px);
}
.entry-body{flex:1;padding:26px 26px 24px;display:flex;flex-direction:column;}
.entry-title{
  font-size:24px;font-weight:700;color:var(--blue-800);letter-spacing:2px;
  display:flex;align-items:center;gap:10px;
}
.entry-title .bar{width:4px;height:22px;background:var(--red);border-radius:2px;}
.entry-desc{
  margin-top:16px;font-size:13.5px;line-height:2.05;color:var(--text-2);letter-spacing:.4px;
}
.entry-link{
  margin-top:auto;display:flex;align-items:center;justify-content:space-between;
  padding-top:14px;border-top:1px dashed var(--line);
}
.entry-link .go{
  display:flex;align-items:center;gap:7px;font-size:13.5px;color:var(--blue-600);
  font-weight:700;letter-spacing:1px;
}
.entry-link .path{
  font-size:12px;color:#A79B8A;font-family:Consolas,monospace;letter-spacing:.4px;
}
.entry-card:hover .entry-link .go{color:var(--red);}
/* 行政执法公示：整卡图片入口 */
.entry-card.img-only{display:block;}
.entry-card.img-only .entry-img{
  display:block;width:100%;height:100%;object-fit:cover;object-position:center;
}

/* ---------- 二级栏目（人事信息 / 财务信息 左右双栏） ---------- */
.section-cols{display:flex;gap:24px;margin-top:30px;align-items:stretch;}
.col-card{
  flex:1 1 0;min-width:0;display:flex;flex-direction:column;
  background:var(--white);border:1px solid var(--line);
  border-radius:var(--radius);box-shadow:var(--shadow-sm);overflow:hidden;
}
.col-head{
  height:56px;display:flex;align-items:center;justify-content:space-between;
  padding:0 22px;border-bottom:1px solid var(--line);
  background:linear-gradient(180deg,#FFFDF7,#FCF1DF);
}
.col-title{
  display:flex;align-items:center;gap:9px;
  font-size:16.5px;font-weight:700;color:var(--blue-800);letter-spacing:1.8px;
}
.col-title .bar{width:4px;height:18px;background:var(--blue-600);border-radius:2px;}
.more-link{font-size:13px;color:var(--text-3);letter-spacing:.8px;cursor:pointer;text-decoration:none;}

.list-panel{padding:10px 26px 18px;}
.list-item{
  display:flex;align-items:center;gap:18px;height:60px;
  border-bottom:1px dashed var(--line-2);cursor:pointer;
  padding:0 12px;margin:0 -12px;border-radius:3px;transition:.18s;
  text-decoration:none;color:inherit;
}
.list-item:last-child{border-bottom:none;}
.list-item:hover{background:var(--blue-50);}
.list-item .dot{
  width:6px;height:6px;border-radius:50%;background:var(--blue-500);
  flex-shrink:0;opacity:.75;
}
.list-item .txt{
  flex:1;font-size:15px;color:var(--text-1);letter-spacing:.4px;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:.18s;
}
.list-item:hover .txt{color:var(--blue-600);}
.list-item .flag{
  font-size:11.5px;padding:2px 8px;border-radius:2px;letter-spacing:.8px;
  background:#FBEED2;color:#9A6B14;border:1px solid #EEDCB0;flex-shrink:0;
}
.list-item .flag.normal{background:var(--blue-50);color:var(--blue-600);border-color:#EEDCB0;}
.list-item .date{
  font-size:13px;color:var(--text-3);font-family:Consolas,monospace;
  letter-spacing:.6px;flex-shrink:0;
}

/* 双栏内列表紧凑化适配（列窄，字号/间距同步收紧） */
.col-card .list-panel{padding:8px 22px 14px;}
.col-card .list-item{height:52px;gap:10px;padding:0 10px;margin:0 -10px;}
.col-card .list-item .txt{font-size:14px;letter-spacing:.2px;}
.col-card .list-item .flag{font-size:11px;padding:1px 7px;letter-spacing:.3px;}
.col-card .list-item .date{font-size:12.5px;letter-spacing:.2px;}

/* ---------- 页脚 ---------- */
.footer{background:#8F1322;color:#D8B48C;padding:34px 0 26px;}
.footer-inner{width:100%;max-width:1280px;margin:0 auto;padding:0 20px;box-sizing:border-box;}
.footer-links{
  display:flex;align-items:center;flex-wrap:wrap;
  padding-bottom:20px;border-bottom:1px solid rgba(255,255,255,.1);
}
.footer-links a{
  color:#F3DCC0;text-decoration:none;font-size:13.5px;padding:0 16px;
  border-right:1px solid rgba(255,255,255,.13);line-height:1;
}
.footer-links a:first-child{padding-left:0;}
.footer-links a:last-child{border-right:none;}
.footer-links a:hover{color:#fff;}
.footer-info{margin-top:20px;font-size:13px;line-height:2.15;letter-spacing:.4px;}
.footer-info .org{color:#FFF1DC;font-size:14px;}
.footer-badges{display:flex;align-items:center;gap:12px;margin-top:16px;}
.badge{
  height:38px;padding:0 14px;border:1px solid rgba(255,255,255,.18);border-radius:3px;
  display:flex;align-items:center;gap:8px;font-size:12px;color:#F0D9BC;letter-spacing:.5px;
  background:rgba(255,255,255,.04);
}
.footer-bottom{
  margin-top:22px;padding-top:16px;border-top:1px solid rgba(255,255,255,.1);
  display:flex;align-items:center;justify-content:space-between;
  font-size:12.5px;color:#D8B48C;letter-spacing:.5px;
}

/* ---------- 栏目纵向节奏 ---------- */
.section-block{margin-top:26px;}

/* ---------- 图片入口卡（整卡图片 + 左侧文字叠加） ---------- */
.hero-card{
  position:relative;display:block;height:190px;border-radius:var(--radius);
  overflow:hidden;box-shadow:var(--shadow-sm);cursor:pointer;transition:.22s ease;
  border:1px solid var(--line);
}
.hero-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px);border-color:#E6CE96;}
.hero-card > a{position:absolute;inset:0;text-decoration:none;}
.hero-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.hero-card .shade{
  position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(74,10,18,.84) 0%,rgba(74,10,18,.46) 42%,rgba(74,10,18,.06) 100%);
}
.hero-card .hc-body{
  position:absolute;inset:0;display:flex;flex-direction:column;
  justify-content:center;align-items:flex-start;padding:0 34px;color:#fff;
}
.hero-card .hc-tag{font-size:12px;letter-spacing:3px;color:#F5D389;margin-bottom:12px;}
.hero-card .hc-title>a{
  font-size:32px;font-weight:700;letter-spacing:6px;
  text-shadow:0 2px 10px rgba(60,6,12,.55);color: #fff5f5;
} 
.hero-card .hc-go{margin-top:14px;font-size:13.5px;letter-spacing:1.2px;color:#FBE8C4;opacity:.95;transition:.18s;}
.hero-card:hover .hc-go{color:#FFD98F;}

/* ================= 响应式适配 ================= */
/* 中等屏（小笔记本 / 平板横屏）：字号与Banner高度同步收敛 */
@media (max-width:1280px){
  .banner{height:290px;}
  .banner-content{padding:0 20px 26px;}
  .banner-title{font-size:44px;letter-spacing:5px;}
  .banner-accent{width:66px;height:4.5px;margin-top:17px;}
  .hero-card .hc-title{font-size:27px;letter-spacing:4px;}
  .list-item .txt{font-size:14.5px;}
}

/* 平板竖屏 / 手机横屏：双栏改单栏，页头页脚纵向堆叠 */
@media (max-width:1024px){
  body{padding:18px 0 36px;}

  /* —— Banner —— */
  .banner{height:190px;}
  .banner-content{padding:0 14px 0;}
  .banner-title{font-size:32px;letter-spacing:4px;}
  .banner-accent{width:56px;height:4px;margin-top:14px;}

  /* —— 主体：左右双栏 → 上下单栏 —— */
  .section-cols{flex-direction:column;gap:0;}
  .section-cols .col-card{flex:0 0 auto;width:100%;}
  .section-cols .col-card + .col-card{margin-top:20px;}
  .entry-grid{grid-template-columns:1fr;}
  .hero-card{height:172px;}
  .hero-card .shade{
    background:linear-gradient(90deg,rgba(74,10,18,.88) 0%,rgba(74,10,18,.52) 62%,rgba(74,10,18,.26) 100%);
  }
  .hero-card .hc-body{padding:0 22px;}
  .hero-card .hc-title{font-size:25px;letter-spacing:3px;}
  .hero-card .hc-tag{margin-bottom:8px;}
  .hero-card .hc-go{font-size:12.5px;}

  /* —— 列表：允许换行，不再强制单行省略 —— */
  .col-card .list-panel{padding:8px 18px 14px;}
  .col-card .list-item{height:auto;min-height:50px;padding:11px 6px;margin:0 -6px;}
  .col-card .list-item .txt{white-space:normal;overflow:visible;line-height:1.55;}
}

/* 手机竖屏：进一步紧凑，列表改为“标题 / 标签+日期”两行 */
@media (max-width:600px){
  body{padding:12px 0 28px;}

  .banner{height:150px;}
  .banner-content{padding:0 12px 0;}
  .banner-title{font-size:25px;letter-spacing:3px;}
  .banner-accent{width:46px;height:3px;margin-top:11px;}

  .main{padding:20px 0 30px;}
  .main-inner{padding:0 14px;}
  .section-block{margin-top:18px;}

  .col-head{height:50px;padding:0 14px;}
  .col-title{font-size:15px;letter-spacing:1.2px;}
  .more-link{font-size:12px;}
  .list-panel{padding:4px 14px 10px;}
  .col-card .list-item{display:block;position:relative;padding:12px 8px;margin:0 -8px;}
  .col-card .list-item .dot{display:none;}
  .col-card .list-item .txt{display:block;font-size:13.5px;letter-spacing:0;line-height:1.55;}
  .col-card .list-item .flag{display:inline-block;font-size:10.5px;padding:1px 6px;margin-top:7px;}
  .col-card .list-item .date{position:absolute;right:10px;bottom:15px;font-size:12px;}

  .hero-card{height:150px;}
  .hero-card .hc-body{padding:0 18px;}
  .hero-card .hc-title{font-size:21px;letter-spacing:2px;}
  .hero-card .hc-go{display:none;}
  .entry-grid{gap:14px;}
  .section-cols .col-card + .col-card{margin-top:14px;}
}

/* 超小屏手机：全局进一步紧凑 */
@media (max-width:400px){
  .banner{height:120px;}
  .banner-content{padding:0 12px 0;}
  .banner-title{font-size:20px;letter-spacing:2px;}
  .banner-accent{width:36px;height:3px;margin-top:8px;}

  .main{padding:16px 0 24px;}
  .main-inner{padding:0 12px;}
  .section-block{margin-top:14px;}

  .col-head{height:46px;padding:0 12px;}
  .col-title{font-size:14px;letter-spacing:1px;}
  .col-card .list-item{padding:11px 6px;}
  .col-card .list-item .txt{font-size:12.5px;}
  .col-card .list-item .date{font-size:11px;}

  .hero-card{height:130px;}
  .hero-card .hc-body{padding:0 14px;}
  .hero-card .hc-title{font-size:18px;letter-spacing:1.5px;}
  .hero-card .hc-tag{font-size:11px;letter-spacing:2px;margin-bottom:6px;}
  .entry-grid{gap:10px;}
  .section-cols .col-card + .col-card{margin-top:10px;}
}