:root { --wrap: min(1200px, 92vw); --gap: 16px; --brand: #004096; --brand-600:#00347a; }
.wp { width: var(--wrap); margin: 0 auto; }

/* —— Banner —— */
.banner { margin: 0; overflow: hidden; }
.banner .slider-banner img {
  display: block; width: 100%;
  height: clamp(220px, 40vw, 520px);
  object-fit: cover; object-position: center;
}
@media (max-width: 768px) {
  .banner .slider-banner img { height: clamp(160px, 45vw, 360px); }
}

/* —— 通用区块标题/布局 —— */
.iMain { padding: 28px 0; }
.tit1 { font-size: 22px; margin: 8px 0 16px; }
.tit1 strong { font-weight: 700; }

.iMain1 .wp { display: grid; grid-template-columns: 1.2fr 1fr; gap: var(--gap); }
.iNoticeFl .h3 a { font-size: 18px; font-weight: 600; text-decoration: none; }
.iNoticeFl .p { color: #666; margin: 12px 0 8px; }
.more1 { color: #0b5fff; text-decoration: none; }

.iNoticeFr ul { list-style: none; padding: 0; margin: 0; display: grid; gap: 10px; }
.iNoticeFr .pd { display: grid; grid-template-columns: 56px 1fr; gap: 10px; padding: 10px; border: 1px solid #eee; border-radius: 10px; text-decoration: none; color: inherit; }
.iNoticeFr .img { width: 56px; height: 56px; background: #f5f7fb; border-radius: 10px; }
.iNoticeFr .h3 { font-weight: 600; }

.hNav ul { list-style: none; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(260px,1fr)); gap: var(--gap); }
.hNav .pd { display: block; padding: 18px; border-radius: 14px; background-size: cover; background-position: center; color: #fff; text-shadow: 0 2px 8px rgba(0,0,0,.4); }

.iMain2 .iNews { margin-top: 12px; }
.iMain2 .slick-slide .pd { display: grid; grid-template-columns: 220px 1fr; gap: 12px; padding: 12px; border: 1px solid #eee; border-radius: 12px; text-decoration: none; color: inherit; }
.iMain2 .img img { width: 220px; height: 140px; object-fit: cover; border-radius: 10px; }
.iMain2 .h3 { font-weight: 600; margin-bottom: 6px; }
.iMain2 .em { color: #666; font-size: 14px; }

.iMain3 .iActivity { margin-top: 12px; display: grid; grid-template-columns: 1.2fr 1fr; gap: var(--gap); }
.iActivityFl .slick-slide .pd { display: block; text-decoration: none; color: inherit; }
.iActivityFl .img img { width: 100%; height: clamp(240px, 35vw, 420px); object-fit: cover; border-radius: 12px; }
.iActivityFl .text { margin-top: 8px; font-weight: 600; }

.iActivityFr .cards { list-style: none; display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--gap); padding: 0; margin: 0; }
.iActivityFr .cards img { width: 100%; height: clamp(140px, 18vw, 240px); object-fit: cover; border-radius: 12px; }
.iActivityFr .cards .text { position: relative; margin-top: -36px; padding: 8px 12px; background: rgba(0,0,0,.55); color: #fff; display: inline-block; border-radius: 8px; backdrop-filter: blur(2px); }

/* 小屏适配 */
@media (max-width: 960px) {
  .iMain1 .wp, .iMain3 .iActivity { grid-template-columns: 1fr; }
  .iMain2 .slick-slide .pd { grid-template-columns: 1fr; }
}

/* —— 学院新闻：左封面 + 右侧列表 —— */
.news-with-cover{
  display:grid;
  grid-template-columns:1.1fr 1.6fr;
  gap:24px;
  align-items:stretch;
}
.news-left .cover{
  display:flex; align-items:center; justify-content:center;
  height:100%; padding:16px; background:#fff;
  border:1px solid rgba(0,0,0,.06); border-radius:14px;
  box-shadow:0 8px 24px rgba(0,0,0,.08);
}
.news-left .cover img{
  max-width:100%; max-height:100%; width:auto; height:auto; object-fit:contain; display:block; border-radius:8px;
}
.news-right .news-header{ display:flex; justify-content:space-between; align-items:baseline; margin-bottom:8px; }
.news-right .more-link{ font-size:13px; color:var(--brand); text-decoration:none; }
.news-right .more-link:hover{ color:var(--brand-600); text-decoration:underline; }

.news-list{ list-style:none; padding:0; margin:0; }
.news-list li{ border-top:1px solid #eee; }
.news-list li:first-child{ border-top:none; }
.news-list .item{
  display:grid; grid-template-columns:72px 1fr; gap:16px; align-items:center;
  padding:14px 0; text-decoration:none; color:inherit;
}
.news-list .datebox{
  width:72px; height:72px; border-radius:10px; background:var(--brand); color:#fff;
  display:flex; flex-direction:column; justify-content:center; align-items:center; font-weight:700;
  box-shadow:0 6px 14px rgba(0,64,150,.25);
}
.news-list .datebox .day{ font-size:22px; line-height:1; }
.news-list .datebox .mon{ font-size:12px; opacity:.95; }
.news-list .title{ line-height:1.4; }
.news-list .item:hover .title{ color:var(--brand-600); text-decoration:underline; }

@media (max-width:960px){
  .news-with-cover{ grid-template-columns:1fr; }
  .news-list .item{ grid-template-columns:56px 1fr; }
  .news-list .datebox{ width:56px; height:56px; }
}

/* —— 期刊浏览（Swiper 3D 椭圆） —— */
.issues-head { display:flex; justify-content:space-between; align-items:baseline; margin-bottom:10px; }
.issues-head .more-link { font-size:13px; color:var(--brand); text-decoration:none; }
.issues-head .more-link:hover { color:var(--brand-600); text-decoration:underline; }

/* 容器必须允许两侧露出，并启用 3D 透视 */
.issues-swiper.swiper {
  padding: 30px 20px 50px;
  overflow: visible;
  perspective: 1200px;
}
.issues-swiper .swiper-wrapper {
  align-items: center;
  transform-style: preserve-3d;
  will-change: transform;
}

/* 卡片尺寸（去掉 !important，给 Swiper 更好测宽空间） */
.issues-swiper .swiper-slide {
  width: clamp(160px, 18vw, 220px);
  height: clamp(220px, 28vw, 300px);
  border-radius: 14px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 12px 28px rgba(0,0,0,.18), 0 2px 8px rgba(0,0,0,.08);
  backface-visibility: hidden;
  will-change: transform, box-shadow, filter;
  transition: transform .6s ease, box-shadow .6s ease, filter .6s ease, opacity .6s ease;
}
.issues-swiper .swiper-slide a { display:block; height:100%; }
.issues-swiper img{
  width:100%; height:100%; display:block; object-fit:cover;
  transition: transform .6s ease; will-change: transform;
}

/* 中心更亮，两侧略暗一点，增强层次 */
.issues-swiper .swiper-slide { opacity: .85; filter: brightness(.96) saturate(.92); }
.issues-swiper .swiper-slide-prev,
.issues-swiper .swiper-slide-next { opacity: .9; filter: brightness(.98) saturate(.96); }
.issues-swiper .swiper-slide-active {
  opacity: 1; filter: brightness(1.02) saturate(1.06);
  box-shadow: 0 16px 36px rgba(0,0,0,.22), 0 4px 12px rgba(0,0,0,.12);
}

/* 微调 transform 中心，制造轻微 Z 轴错觉 */
.issues-swiper .swiper-slide { transform-origin: 50% 50% -120px; }

/* 控件配色 */
.issues-swiper .swiper-button-prev,
.issues-swiper .swiper-button-next {
  color: var(--brand);
  width: 38px; height: 38px; border-radius: 50%;
  background: rgba(255,255,255,.85);
  box-shadow: 0 2px 8px rgba(0,0,0,.15);
}
.issues-swiper .swiper-pagination-bullet { background: #c9d7f2; opacity: 1; }
.issues-swiper .swiper-pagination-bullet-active { background: var(--brand); }

/* hover 提升一点质感 */
.issues-swiper .swiper-slide:hover { box-shadow: 0 16px 36px rgba(0,0,0,.22), 0 4px 10px rgba(0,0,0,.1); }

/* —— 兜底：当 Swiper 未初始化时自动平铺 —— */
.issues-swiper:not(.swiper-initialized) .swiper-wrapper {
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 14px;
}
.issues-swiper:not(.swiper-initialized) .swiper-slide {
  width: auto !important; height: auto !important;
  box-shadow: none !important; transform: none !important;
}
.issues-swiper:not(.swiper-initialized) .swiper-slide a,
.issues-swiper:not(.swiper-initialized) .swiper-slide img {
  display: block; width: 100%; height: auto; object-fit: cover;
}
/* 兜底小屏列数 */
@media (max-width: 1200px) {
  .issues-swiper:not(.swiper-initialized) .swiper-wrapper { grid-template-columns: repeat(5, 1fr); }
}
@media (max-width: 900px)  {
  .issues-swiper:not(.swiper-initialized) .swiper-wrapper { grid-template-columns: repeat(4, 1fr); }
}
@media (max-width: 680px)  {
  .issues-swiper:not(.swiper-initialized) .swiper-wrapper { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 520px)  {
  .issues-swiper:not(.swiper-initialized) .swiper-wrapper { grid-template-columns: repeat(2, 1fr); }
}


/* 手机：卡片更宽、箭头隐藏、分页点更好点 */
@media (max-width: 680px) {
  .issues-swiper .swiper-slide {
    width: min(76vw, 320px);   /* 一屏 ≈ 1.25 张 */
    height: min(100vw, 420px);
  }
  .issues-swiper .swiper-button-prev,
  .issues-swiper .swiper-button-next {
    display: none;             /* 手机只用滑动/底部圆点 */
  }
  .issues-swiper .swiper-pagination-bullet {
    width: 8px; height: 8px;
  }
}


/* ====== 校官网风格页脚（首页） ====== */
.sbs-footer { background:#0a4e9a; color:#fff; margin-top:60px; font-size:16px; }
.sbs-footer a { color:#fff; text-decoration:none; }
.sbs-footer .wp { max-width:1200px; margin:0 auto; padding:0 20px; }

/* 顶部三栏 */
.sbs-footer__top { padding:36px 0 24px; }
.sbs-footer__grid {
  display:grid;
  grid-template-columns: 1.2fr 1.6fr 1.2fr; /* 左 中 右 */
  gap:28px;
  align-items:center;
}

/* 左：品牌 */
.sbs-footer__brand { display:flex; align-items:center; gap:16px; }
.sbs-footer__logo { width:76px; height:auto; display:block; }
.sbs-footer__name .cn { font-size:28px; font-weight:700; letter-spacing:2px; }
.sbs-footer__name .en { font-size:18px; opacity:.9; margin-top:4px; }

/* 中：大楼线稿 */
.sbs-footer__building img { width:100%; height:auto; display:block; opacity:.9; }

/* 右：二维码 */
.sbs-footer__qrs { display:flex; gap:18px; justify-content:flex-end; }
.sbs-footer__qrs .qr { text-align:center; }
.sbs-footer__qrs .qr img { width:128px; height:128px; background:#fff; padding:6px; border-radius:6px; display:block; margin:0 auto 8px; }
.sbs-footer__qrs .qr span { font-size:14px; opacity:.95; }

/* 分割线 */
.sbs-footer__divider { height:1px; background:rgba(255,255,255,.3); margin:0; }

/* 底部文字块 */
.sbs-footer__bottom { padding:18px 0 28px; }
.sbs-footer__bottom p { margin:6px 0; line-height:1.8; }

/* 响应式 */
@media (max-width: 1024px) {
  .sbs-footer__grid { grid-template-columns: 1fr; gap:20px; }
  .sbs-footer__qrs { justify-content:flex-start; }
  .sbs-footer__logo { width:100px; }
  .sbs-footer__name .cn { font-size:24px; }
  .sbs-footer__name .en { font-size:16px; }
}
@media (max-width: 480px) {
  .sbs-footer__qrs .qr img { width:104px; height:104px; }
  .sbs-footer { font-size:15px; }
}

/* 隐藏 Blocksy 默认页脚（仅首页 home.css） */
.site-footer, .ct-footer { display:none !important; }



/* 调大首页页脚的校徽与标题 */
.sbs-footer__logo {
  /* 之前是 76px，这里加大；也可用 clamp 做响应式 */
  width: clamp(90px, 9vw, 130px);
  height: auto;
}

.sbs-footer__name .cn { 
  font-size: clamp(26px, 2.2vw, 34px);
}
.sbs-footer__name .en {
  font-size: clamp(16px, 1.4vw, 20px);
  opacity: .95;
}

/* 品牌区间距稍微放大一点，让大 logo 呼吸感更好 */
.sbs-footer__brand { gap: 20px; }

/* 大屏时整体三栏高度更舒展 */
@media (min-width: 1024px) {
  .sbs-footer__top { padding: 44px 0 28px; }
}

/* 居中一排：logo1 + logo2(标题图) + 官方微信 */
.sbs-footer__center{
  display:flex;
  align-items:center;
  justify-content:center;
  gap: clamp(24px, 5vw, 56px);
  flex-wrap: wrap;            /* 小屏自动换行 */
  padding: clamp(28px, 5vw, 48px) 0;
}

/* logo1（校徽） */
.sbs-logo1{
  width: clamp(90px, 9vw, 160px);
  height:auto;
  display:block;
}

/* logo2（“上海商学院学报”图片） */
.sbs-logo2{
  height: clamp(36px, 4vw, 68px);   /* 只控制高度，等比缩放 */
  width:auto;
  display:block;
  image-rendering:auto;
}

/* 官方微信二维码块 */
.sbs-qr{ text-align:center; }
.sbs-qr img{
  width: clamp(120px, 12vw, 160px);
  height: clamp(120px, 12vw, 160px);
  background:#fff;
  padding:8px;
  border-radius:8px;
  display:block;
  margin:0 auto 10px;
}
.sbs-qr span{ font-size:14px; color:#fff; opacity:.95; }

/* 如果你之前还有 .sbs-footer__grid / __brand 等布局，避免干扰： */
.sbs-footer__grid, .sbs-footer__brand, .sbs-footer__qrs{ display:none; }

/* 下面是已有的整体配色和分割线（若已存在就不用重复） */
.sbs-footer{ background:#0a4e9a; color:#fff; }
.sbs-footer a{ color:#fff; text-decoration:none; }
.sbs-footer__divider{ height:1px; background:rgba(255,255,255,.3); }

/* 小屏优化：三者垂直居中堆叠 */
@media (max-width: 640px){
  .sbs-footer__center{ gap:20px; }
  .sbs-logo1{ width:110px; }
  .sbs-logo2{ height:48px; }
}

/* 只作用于页脚那张标题图 */
.sbs-logo2 {
  filter: brightness(0) invert(1);  /* 把黑字反相成白字 */
  opacity: .98;                     /* 可选，略提亮 */
}


/* ===== 紧凑化首页蓝色页脚 ===== */
.sbs-footer__top{
  /* 上下内边距：大屏更紧凑 */
  padding: 18px 0 12px !important;
}
.sbs-footer__center{
  gap: 28px !important;          /* 三个块之间的间距更小 */
}

/* 缩一点三件套的尺寸，整体高度自然降 */
.sbs-logo1{ width: clamp(78px, 7vw, 110px) !important; }
.sbs-logo2{ height: clamp(30px, 3.2vw, 52px) !important; }
.sbs-qr img{
  width: clamp(110px, 10vw, 140px) !important;
  height: clamp(110px, 10vw, 140px) !important;
  margin-bottom: 6px !important;
}
.sbs-qr span{ font-size: 13px !important; }

/* 分割线与底部信息更紧凑 */
.sbs-footer__divider{ margin: 0 !important; }
.sbs-footer__bottom{ padding: 12px 0 16px !important; }
.sbs-footer__bottom p{ margin: 4px 0 !important; }

/* 大屏再压一次（>1280px 时通常最“空”） */
@media (min-width: 1280px){
  .sbs-footer__top{ padding: 16px 0 10px !important; }
  .sbs-footer__center{ gap: 24px !important; }
  .sbs-logo1{ width: 96px !important; }
  .sbs-logo2{ height: 44px !important; }
  .sbs-qr img{ width: 128px !important; height: 128px !important; }
}

/* 小屏保持可读，不再额外压缩 */
@media (max-width: 640px){
  .sbs-footer__center{ gap: 20px !important; }
}


/* ===== 顶部蓝区：紧凑且两 Logo 固定 200px 高 ===== */
.sbs-footer__top{
  padding: 8px 0 !important;            /* 减小上下内边距，整体不拔高 */
}

.sbs-footer__center{
  display:flex;
  align-items:center;                    /* 垂直居中对齐 */
  justify-content:center;                /* 水平居中 */
  gap: 36px;                             /* 三块之间的间距 */
  flex-wrap:wrap;                        /* 窄屏自动换行 */
  min-height: 200px;                     /* 正好等于两图高度 */
}

/* 两个 Logo：固定高 200px，等比缩放，绝不撑高容器 */
.sbs-logo1,
.sbs-logo2{
  height: 130px !important;
  width: auto !important;
  display:block;
  margin:0;
}

/* 官方微信二维码：比 logo 略小，避免把区块撑太高 */
.sbs-qr img{
  height: 160px !important;
  width: 160px !important;
  background:#fff;
  padding:8px;
  border-radius:8px;
  display:block;
  margin:0 auto 6px;
}
.sbs-qr span{ font-size:13px; color:#fff; }

/* 分割线与下半区也保持紧凑 */
.sbs-footer__divider{ height:1px; margin:0 !important; background:rgba(255,255,255,.3); }
.sbs-footer__bottom{ padding: 12px 0 16px !important; }
.sbs-footer__bottom p{ margin:4px 0 !important; line-height:1.7; }

/* —— 响应式：窄屏自动降尺寸，依然不显臃肿 —— */
@media (max-width: 1024px){
  .sbs-logo1,.sbs-logo2{ height: 150px !important; }
  .sbs-qr img{ height: 140px !important; width:140px !important; }
  .sbs-footer__top{ padding:10px 0 !important; }
  .sbs-footer__center{ gap: 28px; }
}
@media (max-width: 640px){
  .sbs-logo1,.sbs-logo2{ height: 110px !important; }
  .sbs-qr img{ height: 110px !important; width:110px !important; }
  .sbs-footer__center{ gap: 18px; }
}