@charset "utf-8";
/* ==========================================================================
   2026年“双师节”表彰专题网 —— 公共样式
   目录：01 reset / 02 变量 / 03 布局 / 04 头部 / 05 左侧栏
        06 栏目标题 / 07 人物卡片 / 08 先进基层党组织 / 09 文字列表
        10 正文页 / 11 页脚 / 12 动效 / 13 响应式
   ========================================================================== */

/* ---------- 01 reset ---------- */
html, body, div, span, h1, h2, h3, h4, h5, h6, p, ul, ol, li, dl, dt, dd,
form, input, button, img, a, table, th, td, figure {
  margin: 0;
  padding: 0;
}
ul, ol { list-style: none; }
img { border: 0; vertical-align: middle; max-width: 100%; }
a { text-decoration: none; color: inherit; }
h1, h2, h3, h4 { font-size: 100%; font-weight: normal; }
table { border-collapse: collapse; border-spacing: 0; }

/* ---------- 02 变量 ---------- */
:root {
  --c-red:        #9c1116;
  --c-red-lt:     #b3161d;
  --c-red-dk:     #79080d;
  --c-gold:       #c8a45c;
  --c-gold-lt:    #e7d3a2;
  --c-gold-dk:    #a3803a;
  --c-ink:        #2f2b28;
  --c-ink-sub:    #6d6560;
  --c-line:       #ece2d6;
  --c-paper:      #ffffff;
  --w-page:       1200px;
  --w-side:       248px;
  --shadow-sm:    0 2px 10px rgba(105, 45, 30, .07);
  --shadow-md:    0 10px 30px rgba(105, 45, 30, .13);
  --ease:         cubic-bezier(.4, 0, .2, 1);
}

/* ---------- 03 基础与布局 ---------- */
body {
  font: 16px/1.85 "Microsoft YaHei", "PingFang SC", "Hiragino Sans GB", "Helvetica Neue", Arial, sans-serif;
  color: var(--c-ink);
  background-color: #fdf8f5;
  background-image:
    radial-gradient(1000px 360px at 50% 0, rgba(200, 164, 92, .16), rgba(200, 164, 92, 0) 72%),
    url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 48 48'%3E%3Cpath d='M24 9l4.5 15L24 39l-4.5-15z' fill='%23c8a45c' fill-opacity='0.035'/%3E%3C/svg%3E");
  background-attachment: fixed, scroll;
  -webkit-font-smoothing: antialiased;
}
.wrapper {
  width: var(--w-page);
  max-width: 100%;
  margin: 0 auto;
  padding: 0 15px;
  box-sizing: border-box;
}
.main { padding: 40px 0 70px; }
.layout { display: flex; align-items: flex-start; gap: 38px; }
.aside   { width: var(--w-side); flex: 0 0 var(--w-side); }
.content { flex: 1 1 auto; min-width: 0; }

/* 通用金色装饰菱形 */
.rhombus {
  display: inline-block;
  width: 7px;
  height: 7px;
  background: var(--c-gold);
  transform: rotate(45deg);
}

/* ---------- 04 头部 ---------- */
.site-header { background: #b01218; }
.site-header .banner { display: block; width: 100%; height: auto; }

/* banner 下方的描金分隔条 */
.header-rule {
  height: 8px;
  background:
    linear-gradient(90deg, var(--c-gold-dk), var(--c-gold-lt) 20%, var(--c-gold) 50%, var(--c-gold-lt) 80%, var(--c-gold-dk)),
    var(--c-gold);
  box-shadow: 0 2px 12px rgba(156, 17, 22, .35);
}

/* ---------- 05 左侧栏 ---------- */
.side-box {
  margin-bottom: 20px;
  background: var(--c-paper);
  box-shadow: var(--shadow-sm);
  overflow: hidden;
}

/* 一级标题条（一级栏目，文字为链接，箭头负责折叠） */
.side-hd {
  position: relative;
  background: linear-gradient(135deg, var(--c-red-lt), var(--c-red-dk));
  color: #fff;
  font-size: 22px;
  font-weight: bold;
  letter-spacing: 3px;
  text-align: center;
}
.side-hd > a {
  display: block;
  padding: 15px 40px;
  color: inherit;
}
/* 顶条内的描金细线 */
.side-hd::before {
  content: "";
  position: absolute;
  left: 12px;
  right: 12px;
  top: 7px;
  bottom: 7px;
  border: 1px solid rgba(231, 211, 162, .45);
  pointer-events: none;
}

/* 折叠箭头（纯 CSS）：本身是一块可点区域，点它只折叠、不跳转 */
.toggle {
  position: absolute;
  right: 6px;
  top: 0;
  bottom: 0;
  width: 34px;
  cursor: pointer;
  user-select: none;
}
.toggle::after {
  content: "";
  position: absolute;
  right: 12px;
  top: 50%;
  width: 8px;
  height: 8px;
  margin-top: -6px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(45deg);
  transition: transform .3s var(--ease);
}
.side-box.is-collapsed > .side-hd .toggle::after,
.menu-item.is-collapsed > .group-hd .toggle::after { transform: rotate(-135deg); margin-top: -2px; }

.side-box.is-collapsed .side-menu { display: none; }

/* 二级栏目条 */
.menu-item + .menu-item { border-top: 1px solid var(--c-line); }
.menu-item > .group-hd {
  position: relative;
  background: linear-gradient(90deg, #d3b070, #b8913f);
  color: #fff;
  font-size: 19px;
  font-weight: bold;
  letter-spacing: 1px;
  text-shadow: 0 1px 1px rgba(120, 85, 20, .25);
}
.menu-item > .group-hd > a {
  display: block;
  padding: 12px 44px 12px 22px;
  color: inherit;
}
.menu-item > .group-hd::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 4px;
  background: var(--c-red);
}
.menu-item.is-on > .group-hd { background: linear-gradient(90deg, #c39a4f, #a97f2c); }
.menu-item.is-collapsed > .sub-list { display: none; }

/* 三级栏目 */
.sub-item + .sub-item { border-top: 1px dashed var(--c-line); }
.sub-item > a {
  position: relative;
  display: block;
  padding: 11px 18px 11px 32px;
  font-size: 18px;
  line-height: 1.6;
  color: #4a423d;
  transition: color .25s var(--ease), background .25s var(--ease), padding-left .25s var(--ease);
}
.sub-item > a::before {
  content: "";
  position: absolute;
  left: 18px;
  top: 50%;
  width: 5px;
  height: 5px;
  margin-top: -2px;
  background: var(--c-gold);
  transform: rotate(45deg);
  transition: background .25s var(--ease);
}
.sub-item > a:hover {
  padding-left: 38px;
  color: var(--c-red);
  background: linear-gradient(90deg, rgba(200, 164, 92, .16), rgba(200, 164, 92, 0));
}
.sub-item.is-on > a {
  color: var(--c-red);
  font-weight: bold;
  background: linear-gradient(90deg, rgba(200, 164, 92, .22), rgba(200, 164, 92, 0));
  box-shadow: inset 3px 0 0 var(--c-red);
}
.sub-item.is-on > a::before { background: var(--c-red); }

/* 侧栏按钮（无子栏目的一级栏目） */
.side-btn {
  position: relative;
  display: block;
  margin-bottom: 12px;
  padding: 14px 10px;
  background: linear-gradient(135deg, var(--c-red-lt), var(--c-red-dk));
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  letter-spacing: 3px;
  text-align: center;
  box-shadow: var(--shadow-sm);
  overflow: hidden;
  transition: transform .25s var(--ease), box-shadow .25s var(--ease);
}
.side-btn::before {
  content: "";
  position: absolute;
  left: 10px;
  right: 10px;
  top: 6px;
  bottom: 6px;
  border: 1px solid rgba(231, 211, 162, .40);
}
.side-btn:hover { transform: translateY(-2px); box-shadow: var(--shadow-md); }
.side-btn.is-on {
  background: linear-gradient(135deg, var(--c-gold), var(--c-gold-dk));
  box-shadow: var(--shadow-md);
}

/* ---------- 06 栏目标题 ---------- */
.sec-hd { margin-bottom: 30px; text-align: center; }
.sec-hd .col-title {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  color: var(--c-red);
  font-size: 34px;
  font-weight: bold;
  letter-spacing: 2px;
}
.sec-hd .col-title::before,
.sec-hd .col-title::after {
  content: "";
  flex: 0 1 90px;
  height: 1px;
  background: linear-gradient(90deg, rgba(200, 164, 92, 0), var(--c-gold));
}
.sec-hd .col-title::after { background: linear-gradient(90deg, var(--c-gold), rgba(200, 164, 92, 0)); }

/* ---------- 面包屑 ---------- */
.crumb {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 20px;
  padding: 10px 16px;
  background: rgba(255, 255, 255, .75);
  border-left: 3px solid var(--c-gold);
  font-size: 15px;
  color: var(--c-ink-sub);
}
.crumb a:hover { color: var(--c-red); }

/* ---------- 07 人物卡片 ---------- */
.person-list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 30px 26px;
}
.person-item {
  position: relative;
  display: block;
  min-width: 0;
  padding: 10px 10px 0;
  background: var(--c-paper);
  box-shadow: var(--shadow-sm);
  transition: transform .3s var(--ease), box-shadow .3s var(--ease);
}
/* 卡片右上描金折角 */
.person-item::after {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  width: 0;
  height: 0;
  border-top: 22px solid var(--c-gold);
  border-left: 22px solid transparent;
  opacity: .85;
  transition: border-top-color .3s var(--ease);
}
.person-item:hover { transform: translateY(-6px); box-shadow: var(--shadow-md); }
.person-item:hover::after { border-top-color: var(--c-red); }

.person-item .pic {
  position: relative;
  padding-top: 128%;
  overflow: hidden;
  background: #eceef2;
  box-shadow: inset 0 0 0 1px rgba(200, 164, 92, .55);
}
.person-item .pic img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .5s var(--ease);
}
.person-item:hover .pic img { transform: scale(1.05); }
.person-item .info { position: relative; padding: 15px 6px 20px; text-align: center; }
/* 姓名下方展开的金线 */
.person-item .info::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 12px;
  width: 0;
  height: 2px;
  background: var(--c-gold);
  transform: translateX(-50%);
  transition: width .35s var(--ease);
}
.person-item:hover .info::after { width: 44px; }
.person-item .name {
  font-size: 22px;
  font-weight: bold;
  letter-spacing: 2px;
  color: var(--c-ink);
  transition: color .25s var(--ease);
}
.person-item:hover .name { color: var(--c-red); }
.person-item .dept {
  margin-top: 4px;
  font-size: 14px;
  color: var(--c-ink-sub);
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

/* ---------- 08 先进基层党组织（横向合影 3:2） ---------- */
.org-list { display: grid; gap: 30px; }
.org-item {
  display: flex;
  align-items: stretch;
  gap: 0;
  background: var(--c-paper);
  box-shadow: var(--shadow-sm);
  transition: transform .3s var(--ease), box-shadow .3s var(--ease);
}
.org-item:hover { transform: translateY(-5px); box-shadow: var(--shadow-md); }
/* 偶数项图文左右对调 */
.org-item:nth-child(even) { flex-direction: row-reverse; }

.org-item .pic {
  position: relative;
  flex: 0 0 50%;
  width: 50%;
  align-self: center;        /* 文字更高时图片居中，不拉伸、不裁切 */
  padding-top: 33.33%;       /* 卡片宽的 1/3 = 图片宽的 2/3，锁定 3:2 合影比例 */
  overflow: hidden;
  background: #eceef2;
}
.org-item .pic img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 45%;
  transition: transform .5s var(--ease);
}
.org-item:hover .pic img { transform: scale(1.04); }
/* 图片外侧的描金细框 */
.org-item .pic::after {
  content: "";
  position: absolute;
  left: 9px;
  right: 9px;
  top: 9px;
  bottom: 9px;
  border: 1px solid rgba(255, 255, 255, .26);
  pointer-events: none;
}

.org-item .txt {
  flex: 1 1 auto;
  min-width: 0;
  padding: 26px 32px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.org-item .name {
  position: relative;
  padding-bottom: 14px;
  font-size: 24px;
  font-weight: bold;
  letter-spacing: 1px;
  color: var(--c-ink);
  transition: color .25s var(--ease);
}
.org-item .name::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 40px;
  height: 2px;
  background: var(--c-gold);
  transition: width .35s var(--ease);
}
.org-item:hover .name { color: var(--c-red); }
.org-item:hover .name::after { width: 76px; }

.org-item .desc {
  margin-top: 16px;
  font-size: 18px;
  line-height: 1.95;
  color: var(--c-ink-sub);
  /* 摘要限 4 行，超出省略 */
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}
.org-item .more {
  align-self: flex-start;
  margin-top: 18px;
  padding: 7px 22px;
  border: 1px solid var(--c-line);
  color: var(--c-ink-sub);
  font-size: 16px;
  transition: all .25s var(--ease);
}
.org-item:hover .more { border-color: var(--c-red); background: var(--c-red); color: #fff; }

/* ---------- 09 文字列表 ---------- */
.news-list { display: grid; gap: 14px; }
.news-list li {
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 16px 22px;
  background: var(--c-paper);
  box-shadow: var(--shadow-sm);
  border-left: 3px solid transparent;
  transition: border-color .25s var(--ease), transform .25s var(--ease), box-shadow .25s var(--ease);
}
.news-list li:hover {
  border-left-color: var(--c-red);
  transform: translateX(4px);
  box-shadow: var(--shadow-md);
}
.news-list .date {
  flex: 0 0 auto;
  width: 58px;
  padding: 6px 0;
  border: 1px solid var(--c-line);
  color: var(--c-ink-sub);
  text-align: center;
  line-height: 1.3;
  transition: background .25s var(--ease), border-color .25s var(--ease), color .25s var(--ease);
}
.news-list .date b { display: block; font-size: 24px; color: var(--c-red); transition: color .25s var(--ease); }
.news-list .date i { font-style: normal; font-size: 13px; }
.news-list li:hover .date { background: var(--c-red); border-color: var(--c-red); color: rgba(255, 255, 255, .85); }
.news-list li:hover .date b { color: #fff; }
.news-list .tit {
  flex: 1 1 auto;
  font-size: 19px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  transition: color .25s var(--ease);
}
.news-list li:hover .tit { color: var(--c-red); }

/* ---------- 10 正文页 ---------- */
.article {
  position: relative;
  padding: 42px 54px 54px;
  background: transparent;
}
.article .art-category {
  font-size: 34px;
  line-height: 1.45;
  font-weight: bold;
  color: var(--c-red);
  text-align: center;
}
.article .art-title {
  margin-top: 30px;
  font-size: 28px;
  line-height: 1.5;
  font-weight: normal;
  color: #171412;
  text-align: center;
}
.art-divider {
  height: 2px;
  margin: 28px 0 22px;
  background: var(--c-red);
}
/* ===== 正文富文本默认排版（编辑器“一键排版”后自动套用，无需手动改样式）=====
   说明：带 !important 的几条是用来盖掉编辑器写死在标签上的行内宽高，
        其余不加，保证编辑时的个别调整仍然有效。 */
.article .art-body {
  font-size: 18px;
  line-height: 2.05;
  color: #262220;
  overflow-wrap: break-word;
  word-wrap: break-word;
}

/* 段落：正文里所有文字块统一一个样式——标题、引用、列表项都按普通段落显示，
   编辑器里用了什么标签都不会跳出另一种字号 */
.article .art-body p,
.article .art-body h1,
.article .art-body h2,
.article .art-body h3,
.article .art-body h4,
.article .art-body h5,
.article .art-body h6,
.article .art-body blockquote,
.article .art-body li {
  margin: 0 0 18px;
  padding: 0;
  border: 0;
  font-size: 18px;
  font-weight: normal;
  line-height: 2.05;
  color: #262220;
  text-indent: 2em;
}
.article .art-body p:last-child { margin-bottom: 0; }

/* 强调与链接 */
.article .art-body strong,
.article .art-body b { font-weight: bold; color: #1f1b19; }
.article .art-body em,
.article .art-body i { font-style: italic; }
.article .art-body a { color: var(--c-red); text-decoration: underline; word-break: break-all; }
.article .art-body a:hover { color: var(--c-gold-dk); }

/* 列表 / 引用不做额外装饰，内部段落不再重复缩进 */
.article .art-body ul,
.article .art-body ol { margin: 0; padding: 0; list-style: none; }
.article .art-body li p,
.article .art-body blockquote p { margin-bottom: 0; text-indent: 0; }

/* 分隔线 */
.article .art-body hr { margin: 30px 0; border: 0; border-top: 1px dashed var(--c-line); }

/* 表格 */
.article .art-body table {
  width: 100%;              /* 编辑器没写宽度时铺满正文栏；写了行内宽度则以行内为准 */
  max-width: 100% !important;
  margin: 24px auto;
  font-size: 17px;
  border: 1px solid var(--c-line);
}
.article .art-body th,
.article .art-body td {
  padding: 10px 14px;
  border: 1px solid var(--c-line);
  line-height: 1.8;
  text-align: center;
  word-break: break-all;
}
.article .art-body table p { margin-bottom: 0; text-indent: 0; }

/* 图片：在正文栏内缩小并居中，保留足够留白，避免横图过大抢占阅读视线。
   width/height 都强制 auto，是为了盖掉编辑器写死的行内宽高——
   否则原图 4477×6715 会被压成 772×640 变形。
   如果个别图片想手动指定大小，把下面两条 !important 去掉即可。 */
.article .art-body img {
  display: block;
  margin: 24px auto;
  max-width: 72% !important;
  max-height: 460px;
  width: auto !important;
  height: auto !important;
  box-shadow: var(--shadow-sm);
}
.article .art-body figure { margin: 0 0 22px; }
.article .art-body figure img { margin: 0 auto 10px; }
.article .art-body figcaption { font-size: 15px; color: var(--c-ink-sub); text-align: center; }

/* 视频 / 外部嵌入 */
.article .art-body video,
.article .art-body iframe,
.article .art-body embed {
  display: block;
  margin: 24px auto;
  max-width: 100% !important;
}
.article .art-body iframe { width: 100%; min-height: 420px; border: 0; }

.article .art-nav {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin-top: 38px;
  padding-top: 24px;
  border-top: 1px dashed var(--c-line);
  font-size: 16px;
}
.article .art-nav a,
.article .art-nav span {
  display: block;
  padding: 12px 16px;
  background: #faf6f0;
  color: var(--c-ink-sub);
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  transition: background .25s var(--ease), color .25s var(--ease);
}
.article .art-nav a:hover { background: var(--c-red); color: #fff; }
/* 没有上/下一条时的占位 */
.article .art-nav span { color: #b3a99f; cursor: default; }

/* 附件 */
.art-attach {
  margin-top: 32px;
  padding: 14px 20px 16px;
  background: #fbf7f0;
  border: 1px solid var(--c-line);
  border-left: 3px solid var(--c-gold);
}
.art-attach .attach-hd {
  margin-bottom: 6px;
  color: var(--c-red);
  font-size: 17px;
  font-weight: bold;
  letter-spacing: 1px;
}
.art-attach li {
  position: relative;
  padding: 5px 0 5px 18px;
  font-size: 16px;
  line-height: 1.8;
}
.art-attach li::before {
  content: "";
  position: absolute;
  left: 2px;
  top: 50%;
  width: 5px;
  height: 5px;
  margin-top: -2px;
  background: var(--c-gold);
  transform: rotate(45deg);
}
.art-attach a {
  color: #4a423d;
  word-break: break-all;
  transition: color .25s var(--ease);
}
.art-attach a:hover { color: var(--c-red); text-decoration: underline; }

/* ---------- 空数据 ---------- */
.empty { padding: 90px 0; text-align: center; color: #a89c92; }

/* ---------- 11 页脚 ---------- */
.site-footer {
  padding: 22px 15px;
  border-top: 4px solid var(--c-gold);
  background: linear-gradient(135deg, var(--c-red-lt), var(--c-red-dk));
  color: rgba(255, 255, 255, .90);
  font-size: 16px;
  letter-spacing: 1px;
  text-align: center;
}

/* ---------- 12 入场动效 ---------- */
@keyframes fadeUp {
  from { opacity: 0; transform: translateY(18px); }
  to   { opacity: 1; transform: none; }
}
.person-item, .org-item, .news-list li { animation: fadeUp .5s var(--ease) both; }
.person-item:nth-child(1), .org-item:nth-child(1), .news-list li:nth-child(1)  { animation-delay: .02s; }
.person-item:nth-child(2), .org-item:nth-child(2), .news-list li:nth-child(2)  { animation-delay: .06s; }
.person-item:nth-child(3), .org-item:nth-child(3), .news-list li:nth-child(3)  { animation-delay: .10s; }
.person-item:nth-child(4), .org-item:nth-child(4), .news-list li:nth-child(4)  { animation-delay: .14s; }
.person-item:nth-child(5), .org-item:nth-child(5), .news-list li:nth-child(5)  { animation-delay: .18s; }
.person-item:nth-child(6), .org-item:nth-child(6), .news-list li:nth-child(6)  { animation-delay: .22s; }
.person-item:nth-child(7), .org-item:nth-child(7), .news-list li:nth-child(7)  { animation-delay: .26s; }
.person-item:nth-child(8), .org-item:nth-child(8), .news-list li:nth-child(8)  { animation-delay: .30s; }
.person-item:nth-child(n+9), .news-list li:nth-child(n+9) { animation-delay: .34s; }

@media (prefers-reduced-motion: reduce) {
  * { animation: none !important; transition: none !important; }
}

/* ---------- 13 响应式 ---------- */
@media screen and (max-width: 1100px) {
  .person-list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .org-item .txt { padding: 22px 24px; }
  .org-item .desc { -webkit-line-clamp: 3; }
  .article { padding: 38px 34px 42px; }
}
@media screen and (max-width: 900px) {
  /* 窄屏：内容在前，栏目导航移到下方 */
  .layout { flex-direction: column; align-items: stretch; gap: 28px; }
  .aside   { width: auto; flex: none; order: 2; }
  .content { width: auto; order: 1; }
}
@media screen and (max-width: 640px) {
  .main { padding: 26px 0 46px; }
  .person-list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px 14px; }
  .person-item { padding: 8px 8px 0; }
  .person-item .name { font-size: 20px; }
  .sec-hd .col-title { font-size: 28px; gap: 10px; }
  .sec-hd .col-title::before, .sec-hd .col-title::after { flex-basis: 40px; }
  .article { padding: 24px 4px 32px; }
  .article .art-category { font-size: 28px; }
  .article .art-title { margin-top: 20px; font-size: 24px; }
  .art-divider { margin: 22px 0 18px; }
  .article .art-body { font-size: 17.5px; line-height: 2; }
  .article .art-body p,
  .article .art-body h1,
  .article .art-body h2,
  .article .art-body h3,
  .article .art-body h4,
  .article .art-body h5,
  .article .art-body h6,
  .article .art-body blockquote,
  .article .art-body li { font-size: 17.5px; line-height: 2; }
  .article .art-body img { max-width: 86% !important; max-height: 360px; margin: 18px auto; }
  .article .art-body iframe { min-height: 220px; }
  .article .art-nav { grid-template-columns: 1fr; }
  .org-list { gap: 20px; }
  .org-item, .org-item:nth-child(even) { flex-direction: column; }
  .org-item .pic { flex: none; width: 100%; padding-top: 66.66%; }
  .org-item .txt { padding: 20px 18px 24px; }
  .org-item .name { font-size: 22px; }
  .news-list li { gap: 14px; padding: 12px 14px; }
  .news-list .tit { white-space: normal; font-size: 18px; }
}