

/* ===== 通栏大图（全站共用栏目 banner） ===== */
/* .page-hero{min-height:220px;background:linear-gradient(120deg,#07214A 0%,#0C447C 55%,#1A56DB 100%);padding:0;color:#fff;text-align:center;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;background-size:cover;background-position:center}
 */
/* ===== 页面标题（左栏顶部 H1） ===== */
.page-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:22px;padding:12px 32px 24px;border-bottom:1px solid var(--line);flex-wrap:wrap}
.page-head h1{font-size:26px;font-weight:900;color:var(--ink);margin:0}
.page-head p{margin:0;font-size:14px;color:var(--ink-faint);line-height:1.6}

/* ===== 左右布局 ===== */
.bro-layout{max-width:1240px;margin:0 auto;display:grid;grid-template-columns:188px minmax(0,1fr) 300px;gap:30px;padding:48px 0 72px;align-items:start}

/* ===== 校园环境内容 ===== */
.campus-sec{margin-bottom:48px;padding:0 32px}
.campus-sec:first-child{padding-top:30px}
.campus-sec:last-child{padding-bottom:30px}
.campus-sec h2{font-size:20px;font-weight:900;color:var(--ink);margin:0 0 16px;padding-left:13px;border-left:4px solid var(--primary);line-height:1.3}
.campus-sec .cs-desc{font-size:14px;color:var(--ink-soft);margin:0 0 20px;line-height:1.85}
.gal{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.gal-photo{position:relative;aspect-ratio:4/3;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:#EAEFF6}
.gal-photo img{width:100%;height:100%;object-fit:cover;display:block}
.gal-photo.is-empty{display:flex;align-items:center;justify-content:center;background:repeating-linear-gradient(45deg,#EDF1F7,#EDF1F7 12px,#E4EAF3 12px,#E4EAF3 24px)}
.side-body{padding:14px 14px 16px}
.side-cta .btn{width:100%;justify-content:center;padding:11px 0;font-size:13.5px}
.visit-card .side-body{font-size:13.5px;color:var(--ink-soft);line-height:1.9}
.visit-card .side-body b{color:var(--ink);font-weight:700}

/* ===== CTA 区 ===== */
.cta-banner{width:100%;background:linear-gradient(120deg,#07214A 0%,#1A56DB 70%,#2E7BEA 100%);border-radius:28px;padding:46px 36px;text-align:center;color:#fff;position:relative;overflow:hidden;box-shadow:0 22px 56px rgba(12,68,124,.3)}
.cta-banner h2{font-size:30px;font-weight:900;letter-spacing:1.5px;margin-bottom:10px;line-height:1.5}
.cta-banner p{font-size:15px;color:rgba(255,255,255,.78);margin-bottom:24px}
.cta-row{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.copy a{color:#6C7A96}

/* ===== 分类导航横条 ===== */
.cat-chips{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px}
.cat-chips a{padding:9px 18px;border-radius:999px;font-size:13.5px;font-weight:600;color:var(--ink-soft);background:#F5F7FB;border:1px solid var(--line);transition:.2s}
.cat-chips a:hover{color:var(--primary);border-color:var(--primary);background:#F2F6FB}
.cat-chips a.active{background:var(--primary);color:#fff;border-color:var(--primary)}

/* ===== 图片 + 说明 ===== */
.gal-item{margin:0;display:flex;flex-direction:column;gap:7px}
.gal-item .gal-photo{border-radius:12px}
.cap{font-size:12.5px;color:var(--ink-soft);line-height:1.5;padding:0 2px}
.more-cat{display:inline-block;margin-top:14px;font-size:13.5px;font-weight:700;color:var(--primary)}
.more-cat:hover{text-decoration:underline}

/* ===== 响应式 ===== */
@media(max-width:1200px){
  .menu a{padding:8px 6px;font-size:12.8px}
  .nav-phone{display:none}
}
@media(max-width:1024px){
  .menu a{padding:8px 7px;font-size:12.5px}
  .nav-phone{display:none}
  .footer-inner{grid-template-columns:1fr 1fr;gap:36px 28px}
  .footer-contact{flex-direction:column;gap:16px}
  .bro-layout{grid-template-columns:1fr;gap:24px;padding:28px 20px 48px}
  .bro-side{position:static;display:grid;grid-template-columns:1fr 1fr;gap:16px}
}
@media(max-width:640px){
  .page-hero{min-height:170px;padding:0}
  .page-head{flex-direction:column;align-items:flex-start;gap:14px;padding:12px 20px 22px}
  .page-head h1{font-size:22px}
  .crumbs-inner .crumbs-right{display:none}
  .campus-sec{margin-bottom:36px;padding:0 20px}
  .campus-sec:first-child{padding-top:24px}
  .campus-sec:last-child{padding-bottom:24px}
  .gal{grid-template-columns:repeat(2,1fr);gap:10px}
  .footer-inner{grid-template-columns:1fr}
  .menu{display:none}
  .cta-banner{padding:38px 22px;border-radius:20px}
  .cta-banner h2{font-size:23px}
  .bro-side{grid-template-columns:1fr}
}
