/* 恩知教育官网 · 样式 v2
   设计定位：**政府公报 / 官方数据手册**的质感 —— 素净但不简陋。
   靠字号层级、留白节奏、表格可读性、品牌色点缀撑起来，不靠图片墙。

   1) 硬约束：无 JS、无轮播、无弹窗、无表单（AI 友好 + 少攻击面）
   2) 数字列一律右对齐 + 等宽数字（家长要能一眼比大小）—— 由生成器自动判定列类型
   3) 正文最大宽度 920px；表格横向可滚动，手机不炸版
   4) 所有视觉元素用 CSS 画，不用图片承载信息（AI 读不到图片里的字）
   ============================================================ */
*{margin:0;padding:0;box-sizing:border-box}
:root{
  /* 色板：深藏蓝主色 + 朱红强调，克制、可信 */
  --ink:#152238; --ink2:#41506b; --ink3:#6b7a90; --ink4:#98a4b5;
  --line:#e2e8f0; --line2:#edf1f7; --bg:#fff; --bg2:#f6f8fb; --bg3:#eef3f9;
  --brand:#0f2f52; --brand-2:#16406e; --brand-3:#1c5b96;
  --link:#14639b; --accent:#b3261e; --ok:#1f6b4a;
  --gold:#b8862b;
  --maxw:920px; --wide:1080px;
  --mono:"SFMono-Regular",Consolas,"Liberation Mono",Menlo,monospace;
  --shadow:0 1px 2px rgba(15,47,82,.05),0 4px 14px rgba(15,47,82,.05);
}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;
  color:var(--ink); background:var(--bg); line-height:1.8; font-size:16.5px;
  font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;
}
a{color:var(--link);text-decoration:none}
a:hover{text-decoration:underline}
b,strong{font-weight:600;color:var(--ink)}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 22px}
.wrap-wide{max-width:var(--wide);margin:0 auto;padding:0 22px}

/* ── 头部 ── */
header{border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(255,255,255,.95);backdrop-filter:blur(8px);z-index:20}
.hd{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-top:14px;padding-bottom:14px;flex-wrap:wrap}
.logo{display:flex;align-items:center;gap:11px;font-size:19.5px;font-weight:700;color:var(--brand);letter-spacing:.3px;line-height:1.3}
/* 品牌标记：纯 CSS 画，不用图片。里面放「恩」字，与 favicon 同一套设计。
   尺寸用 CSS 变量，移动端断点只改变量即可（不用重写整块）。 */
.logo::before{content:"恩";flex:none;width:var(--lgsz,34px);height:var(--lgsz,34px);border-radius:8px;
  background:linear-gradient(135deg,var(--brand) 0%,var(--brand-3) 100%);
  color:#fff;font-size:calc(var(--lgsz,34px) * .55);line-height:var(--lgsz,34px);
  text-align:center;font-weight:700;letter-spacing:0;
  box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.28)}
.logo-txt{display:block}
.logo small{display:block;font-size:12px;font-weight:400;color:var(--ink3);letter-spacing:0;margin-top:3px}
.hd-tel{margin-left:auto;text-align:right;text-decoration:none;border-left:1px solid var(--line);padding-left:18px}
.hd-tel span{display:block;font-size:11.5px;color:var(--ink3);line-height:1.2;letter-spacing:.4px}
.hd-tel b{font-size:17px;color:var(--accent);letter-spacing:.4px;font-variant-numeric:tabular-nums}
.hd-tel:hover{text-decoration:none}
nav{display:flex;gap:22px;font-size:14.5px;flex-wrap:wrap}
nav a{color:var(--ink2);padding:4px 0;border-bottom:2px solid transparent}
nav a:hover{color:var(--brand-3);text-decoration:none;border-bottom-color:var(--brand-3)}

/* ── 面包屑 ── */
.crumb{padding:18px 0 0;font-size:13px;color:var(--ink4)}
.crumb a{color:var(--ink4)}
.crumb span{color:var(--ink2)}

/* ── 首屏（首页：深色带，立刻有「机构官网」的正式感）── */
.hero{background:linear-gradient(140deg,#0d2745 0%,var(--brand) 46%,var(--brand-2) 100%);color:#fff;padding:62px 0 54px;position:relative;overflow:hidden}
.hero::after{content:"";position:absolute;right:-120px;top:-120px;width:420px;height:420px;border-radius:50%;
  background:radial-gradient(circle,rgba(255,255,255,.07) 0%,rgba(255,255,255,0) 70%)}
.hero .wrap{position:relative;z-index:1}
.hero-badge{display:inline-block;font-size:12.5px;letter-spacing:.6px;color:#cfe0f2;
  border:1px solid rgba(255,255,255,.28);border-radius:999px;padding:5px 14px;margin-bottom:20px}
.hero h1{font-size:clamp(25px,3.4vw,38px);line-height:1.42;font-weight:700;letter-spacing:-.4px;margin-bottom:18px;color:#fff}
.hero-lead{font-size:16.5px;color:#d3e0ef;max-width:700px;margin-bottom:12px;line-height:1.85}
.hero-meta{margin-top:24px;font-size:14px;color:#a9c1da;display:flex;gap:26px;flex-wrap:wrap}
.hero-meta b{color:#fff;font-weight:600}
.hero-cta{margin-top:28px;display:flex;gap:12px;flex-wrap:wrap}
.btn{display:inline-block;background:#fff;color:var(--brand);font-weight:600;font-size:15.5px;
  padding:12px 24px;border-radius:8px;letter-spacing:.3px;transition:.15s}
.btn:hover{text-decoration:none;transform:translateY(-1px);box-shadow:0 6px 18px rgba(0,0,0,.18)}
.btn-ghost{background:rgba(255,255,255,.1);color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.45)}
.btn-ghost:hover{background:rgba(255,255,255,.2)}

/* ── 数据带（首页关键数字，一眼看到「有货」）── */
.databar{background:var(--bg3);border-bottom:1px solid var(--line);padding:26px 0}
.databar .grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:20px}
.databar .it{text-align:center}
.databar .v{font-size:26px;font-weight:700;color:var(--brand);letter-spacing:-.5px;line-height:1.2}
.databar .k{font-size:12.5px;color:var(--ink3);margin-top:5px}

/* ── 章节与标题：字号层级拉开，才有「排版」而非「一块块文字」── */
main{padding-bottom:0}
section{padding:42px 0;border-bottom:1px solid var(--line)}
section:last-child{border-bottom:0}
h1{font-size:clamp(21px,2.5vw,30px);font-weight:700;letter-spacing:-.4px;line-height:1.45;margin-bottom:12px}
h2{font-size:clamp(18px,1.9vw,22px);font-weight:700;margin-bottom:12px;letter-spacing:-.3px}
h2 .sub{display:block;font-size:13.5px;font-weight:400;color:var(--ink3);margin-top:7px;letter-spacing:0;line-height:1.7}
h3{font-size:16.5px;font-weight:600;margin-bottom:7px}
h3 .sub{display:block;font-size:13px;font-weight:400;color:var(--ink3);margin-top:5px;letter-spacing:0;line-height:1.7}
.catblock{margin-top:30px}
.catblock:first-of-type{margin-top:16px}
.lead{font-size:16.5px;color:var(--ink2);margin-bottom:14px}
.meta-line{font-size:13.5px;color:var(--ink3);margin-bottom:6px;padding-bottom:14px;border-bottom:1px dashed var(--line)}
.tip{font-size:13.5px;color:var(--ink3);margin-top:12px;line-height:1.8}

/* 一句话结论：整页最该被 AI 摘走的一块，加强视觉权重 */
.concl{background:linear-gradient(180deg,#f8fbff 0%,var(--bg2) 100%);border:1px solid #dbe6f2;
  border-left:4px solid var(--brand-3);border-radius:0 10px 10px 0;padding:24px 26px;margin:24px 0 10px}
.concl h2{margin-bottom:13px;font-size:18.5px}
.concl ul{margin:11px 0;padding-left:20px;color:var(--ink2)}
.concl li{margin-bottom:7px}
.concl p{color:var(--ink2);margin-bottom:9px}

/* 页内目录（长页必需：数据页动辄 9 个类别） */
.toc{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.toc a{font-size:13.5px;color:var(--ink2);background:#fff;border:1px solid var(--line);
  border-radius:999px;padding:5px 13px;transition:.15s}
.toc a:hover{border-color:var(--brand-3);color:var(--brand-3);text-decoration:none;background:var(--bg3)}

/* ── 卡片 ── */
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;margin-top:24px}
@media(min-width:880px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
.card{border:1px solid var(--line);border-radius:12px;padding:22px;background:#fff;
  box-shadow:var(--shadow);transition:.18s;display:block;position:relative;overflow:hidden}
.card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--brand-3);opacity:0;transition:.18s}
.card:hover{border-color:#c9d8e8;text-decoration:none;transform:translateY(-2px);box-shadow:0 6px 22px rgba(15,47,82,.1)}
.card:hover::before{opacity:1}
.card .tag{font-size:12px;color:var(--accent);font-weight:600;letter-spacing:.5px}
.card h3{margin:9px 0 7px;color:var(--ink);line-height:1.5}
.card p{font-size:14px;color:var(--ink2);margin-bottom:12px;line-height:1.72}
.card .go{font-size:14px;font-weight:600;color:var(--brand-3)}

/* 指标条 */
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-top:18px}
.stat{border:1px solid var(--line);border-radius:10px;padding:13px 15px;background:#fff}
.stat .k{font-size:12.5px;color:var(--ink3);margin-bottom:5px;line-height:1.5}
.stat .v{font-size:17px;font-weight:700;color:var(--brand)}

/* ── 表格：数据页的门面 ── */
.tw{overflow-x:auto;-webkit-overflow-scrolling:touch;margin-top:18px;border:1px solid var(--line);
  border-radius:10px;box-shadow:var(--shadow)}
table{border-collapse:collapse;width:100%;font-size:14px;min-width:560px;background:#fff}
caption{caption-side:top;text-align:left;font-size:13px;color:var(--ink3);padding:12px 15px;
  background:var(--bg2);border-bottom:1px solid var(--line)}
th,td{padding:10px 13px;text-align:left;border-bottom:1px solid var(--line2);vertical-align:top}
thead th{background:var(--brand);color:#eaf2fa;font-weight:600;font-size:13px;white-space:nowrap}
/* 数字列右对齐（生成器按列内容自动判定 .num）—— 左对齐的数字家长没法一眼比大小 */
th.num,td.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
td:first-child{font-weight:600;color:var(--ink)}
tbody tr:nth-child(even){background:#fafcfe}
tbody tr:hover{background:var(--bg3)}
tbody tr:last-child td{border-bottom:0}
/* 分数类：投档线这类「越大越好」的数值给一点色阶暗示 */
td.num b{color:var(--brand)}

/* 公式块（文章里的综合分算法，别再散写 inline style） */
.formula{background:#f4f8fd;border:1px solid #dbe6f2;border-left:3px solid var(--brand-3);
  border-radius:0 8px 8px 0;padding:13px 17px;font-family:var(--mono);font-size:14.5px;
  color:var(--brand);margin:11px 0;overflow-x:auto}

/* ── 出处 ── */
.src{background:var(--bg2);border-left:3px solid var(--brand-3);border-radius:0 8px 8px 0;
  padding:13px 17px;font-size:14.5px;color:var(--ink2);line-height:1.8}
.src b{color:var(--ink)}

/* ── 关于 ── */
.about-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:34px;margin-top:20px}
.about-grid p{font-size:15.5px;color:var(--ink2);margin-bottom:14px;line-height:1.85}
.fact{border-left:3px solid var(--brand-3);padding-left:15px;margin-bottom:16px}
.fact .k{font-size:13px;color:var(--ink3)}
.fact .v{font-size:15.5px;font-weight:600;color:var(--ink)}

/* ── FAQ ── */
.faq{margin-top:20px}
.faq details{border:1px solid var(--line);border-radius:10px;margin-bottom:10px;background:#fff;transition:.15s}
.faq details[open]{border-color:#c9d8e8;box-shadow:var(--shadow)}
.faq summary{padding:15px 17px;cursor:pointer;font-weight:600;font-size:15.5px;list-style:none;
  display:flex;align-items:flex-start;gap:11px;line-height:1.6}
.faq summary::-webkit-details-marker{display:none}
.faq summary::before{content:"问";flex:none;display:inline-block;width:21px;height:21px;line-height:21px;
  text-align:center;background:var(--brand);color:#fff;border-radius:5px;font-size:12px;margin-top:3px}
.faq .ans{padding:0 17px 17px 48px;font-size:15px;color:var(--ink2);line-height:1.88}
.faq .ans p{margin-bottom:9px}

/* ── 联系 ── */
.contact{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:14px;margin-top:22px}
.contact .item{border:1px solid var(--line);border-radius:10px;padding:17px 21px;background:#fff;box-shadow:var(--shadow)}
.contact .k{font-size:13px;color:var(--ink3);margin-bottom:6px}
.contact .v{font-size:16.5px;font-weight:600;color:var(--ink);word-break:break-all;line-height:1.6}
.contact .v a{color:var(--accent)}

/* ── 文章列表 ── */
.arts{margin-top:20px}
.arts .row{display:block;padding:17px 0;border-bottom:1px solid var(--line2)}
.arts .row:last-child{border-bottom:0}
.arts .row h3{margin-bottom:6px;line-height:1.55}
.arts .row:hover h3{color:var(--brand-3)}
.arts .row p{font-size:14.5px;color:var(--ink2);margin-bottom:5px}
.arts .row .d{font-size:12.5px;color:var(--ink4)}

/* ── 回到顶部（长数据页必需；纯锚点，不用 JS）── */
.totop{display:block;text-align:center;font-size:13.5px;color:var(--ink3);margin:30px 0 0}
.totop a{border:1px solid var(--line);border-radius:999px;padding:8px 20px;background:#fff;color:var(--ink2)}
.totop a:hover{border-color:var(--brand-3);color:var(--brand-3);text-decoration:none}

/* ── 页脚 ── */
footer{padding:34px 0 46px;font-size:13.5px;color:var(--ink3);background:var(--brand);color:#a9c1da;margin-top:0}
footer .rows{display:flex;flex-direction:column;gap:10px}
footer a{color:#cfe0f2}
footer a:hover{color:#fff}
.police{display:inline-flex;align-items:center;gap:6px}
footer .legal{font-size:12.5px;line-height:1.95;color:#8fa8c2}
footer .legal b{color:#dce8f4}

/* ── 移动端 ── */
@media(max-width:640px){
  body{font-size:15.5px}
  .hero{padding:38px 0 32px}
  .hero-cta .btn{flex:1 1 100%;text-align:center}
  .databar .grid{grid-template-columns:repeat(2,1fr);gap:16px}
  .databar .v{font-size:22px}
  h1{font-size:21px}
  .about-grid{grid-template-columns:1fr;gap:24px}
  nav{gap:15px;font-size:14px}
  header{position:static}
  .logo::before{--lgsz:30px}
  /* 手机页头压缩：把「咨询电话」并到号码同一行、去掉竖分隔线、收紧行距。
     页头约占手机屏高 1/4 太浪费，压缩后从约 204px 降到约 165px。 */
  .hd{gap:10px;padding-top:12px;padding-bottom:12px}
  .hd-tel{display:flex;align-items:baseline;gap:7px;margin-left:auto;padding-left:0;border-left:0}
  .hd-tel span{display:inline;font-size:11.5px}
  .hd-tel b{font-size:16px}
  .logo small{font-size:11.5px;margin-top:2px}
  section{padding:30px 0}
  .concl{padding:19px}
  th,td{padding:9px 11px;font-size:13.5px}
  table{min-width:520px}
  footer .legal{font-size:12px}
}

/* ════════════════════════════════════════════════════════════
   校区分布 / 微信二维码 / 文章列表 / 提示框（2026-09-26 新增）
   ============================================================ */

/* ── 校区分布（首页，按省分组卡片） ── */
.campus-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;align-items:start}
.cprov{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--bg)}
.cprov-name{display:flex;align-items:center;justify-content:space-between;gap:8px;
  padding:10px 14px;background:var(--bg3);border-bottom:1px solid var(--line);
  font-weight:700;color:var(--brand);font-size:15px}
.cprov-name span{font-weight:500;font-size:12.5px;color:var(--ink3);background:#fff;
  border:1px solid var(--line);border-radius:20px;padding:1px 9px}
.cprov ul{list-style:none}
.cprov li{display:flex;gap:10px;padding:9px 14px;border-bottom:1px solid var(--line2);font-size:14px;line-height:1.6}
.cprov li:last-child{border-bottom:0}
.cprov li b{flex:none;color:var(--ink);font-weight:600;min-width:78px}
.cprov li span{color:var(--ink2)}

/* ── 微信二维码（联系区） ── */
.qr-box{display:flex;align-items:center;gap:18px;margin-top:18px;padding:16px 18px;
  border:1px solid var(--line);border-radius:10px;background:var(--bg2);flex-wrap:wrap}
.qr-box img{border:1px solid var(--line);border-radius:8px;background:#fff;flex:none}
.qr-tip b{display:block;color:var(--brand);font-size:15.5px;margin-bottom:4px}
.qr-tip span{color:var(--ink2);font-size:14px;line-height:1.7}

/* ── 文章列表（首页「艺考资讯」+ 文章总览页） ── */
.artlist{list-style:none;border-top:1px solid var(--line)}
.artlist li{display:flex;align-items:baseline;justify-content:space-between;gap:14px;
  padding:13px 2px;border-bottom:1px solid var(--line)}
.artlist a{font-size:16.5px;font-weight:600;color:var(--brand);line-height:1.5}
.ameta{flex:none;font-size:12.5px;color:var(--brand-3);background:var(--bg3);
  border:1px solid var(--line);border-radius:20px;padding:2px 10px}
.more{margin-top:18px}

/* ── 说明 / 提示框（校区页、隐私页） ── */
.note{margin-top:16px;padding:13px 16px;border-left:3px solid var(--gold);
  background:#fdf9f1;border-radius:0 8px 8px 0;font-size:14.5px;color:var(--ink2);line-height:1.75}
.note b{color:var(--ink)}

@media(max-width:640px){
  .campus-grid{grid-template-columns:1fr}
  .cprov li{flex-direction:column;gap:2px}
  .cprov li b{min-width:0}
  .qr-box{flex-direction:column;align-items:flex-start}
  .artlist li{flex-direction:column;gap:5px}
}
.qr-alt{display:block;margin-top:7px;font-size:14px;color:var(--ink3)}
.qr-alt a{color:var(--accent);font-weight:600}

/* 数据速览：给 AI 引用准备的陈述句列表（每句一个 li，便于抽取） */
ol.facts{margin:.2em 0 0;padding-left:1.45em}
ol.facts li{margin:.55em 0;line-height:1.75}
ol.facts li::marker{color:var(--muted,#667)}
