/* ===== PAGE BANNER ===== */
.page-banner{background:linear-gradient(135deg,<?= h($config['theme_color'] ?? '#0050a9') ?> 0%,#003d82 100%);padding:3rem 1rem;text-align:center}
.page-banner h1{font-size:2.25rem;font-weight:700;color:#fff;margin-bottom:0.375rem}
.page-banner p{font-size:1rem;color:rgba(255,255,255,.8);max-width:600px;margin:0 auto}

/* ===== PAGE WRAP ===== */
.page-wrap{max-width:1200px;margin:0 auto;padding:2rem 1rem 3rem}

/* ===== HONOR GRID ===== */
.honor-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.honor-card{background:#fff;border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow);transition:box-shadow .3s,transform .3s;cursor:pointer}
.honor-card:hover{box-shadow:0 10px 28px rgba(0,80,169,.2);transform:translateY(-3px)}
.honor-photo{width:100%;height:220px;overflow:hidden;background:#f8f9fb;display:flex;align-items:center;justify-content:center;padding:1rem}
.honor-photo img{max-width:100%;max-height:200px;object-fit:contain;transition:transform .3s}
.honor-card:hover .honor-photo img{transform:scale(1.05)}
.honor-info{padding:0.875rem 1rem;text-align:center;border-top:1px solid #f0f0f0}
.honor-name{font-size:0.9375rem;font-weight:600;color:var(--text);margin-bottom:0.25rem}
.honor-org{font-size:0.75rem;color:var(--muted)}
.honor-tag{font-size:0.6875rem;color:var(--blue);background:#eef3fb;padding:0.125rem 0.5rem;border-radius:8px;display:inline-block;margin-top:0.375rem}

/* 无图占位 */
.honor-photo-placeholder{width:100%;height:220px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f0f4ff,#dde8ff)}
.honor-photo-placeholder span{font-size:3rem;opacity:.35}

/* 空状态 */
.empty-state{grid-column:1/-1;text-align:center;padding:60px 0;color:#999}

/* ===== LIGHTBOX ===== */
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.9);z-index:9999;display:none;align-items:center;justify-content:center;flex-direction:column}
.lightbox.show{display:flex}
.lightbox img{max-width:85vw;max-height:75vh;border-radius:4px}
.lightbox .lb-close{position:absolute;top:20px;right:30px;font-size:2rem;color:#fff;cursor:pointer;background:none;border:none}
.lightbox .lb-title{color:#fff;margin-top:1rem;font-size:1rem;text-align:center}

/* ===== INTRO ===== */
.intro-text{background:#fff;border-radius:var(--r);padding:2rem;margin-bottom:2rem;box-shadow:var(--shadow);text-align:center}
.intro-text h2{font-size:1.375rem;font-weight:700;color:var(--text);margin-bottom:0.75rem}
.intro-text p{font-size:1rem;color:var(--muted);line-height:1.8;max-width:850px;margin:0 auto}

/* ===== CONSULT STRIP ===== */
.consult-strip{background:linear-gradient(135deg,var(--blue) 0%,#003d82 100%);padding:2.5rem 1rem;text-align:center;margin-top:2rem;border-radius:var(--r)}
.consult-strip p{color:rgba(255,255,255,.9);font-size:1rem;margin-bottom:0.75rem}
.consult-strip .tel{color:#7fbe26;font-size:2rem;font-weight:700;margin-bottom:1.25rem}
.consult-strip a{display:inline-flex;align-items:center;gap:0.5rem;padding:0.625rem 2rem;background:#fff;color:var(--blue);border-radius:30px;font-size:1rem;font-weight:600;transition:opacity .2s}
.consult-strip a:hover{opacity:0.9}

/* ===== RESPONSIVE ===== */
@media(max-width:1024px){
  .honor-grid{grid-template-columns:repeat(3,1fr)}
  .top_center_left{min-width:200px;max-width:280px;height:44px}
}
@media(max-width:767px){
  .top_center{height:60px}
  .top_center_left{min-width:100px;max-width:160px;height:36px;background:url(/public/images/logo_m.jpg) no-repeat;background-size:contain;background-position:left center;flex-shrink:0}
  .rexian span{display:none}
  .rexian strong{font-size:1.25rem}
  .menu{padding:0}
  .nav{display:none}
  .mbtn{display:flex}
  .honor-grid{grid-template-columns:repeat(2,1fr)}
  .honor-photo{height:160px}
  .honor-photo-placeholder{height:160px}
  .page-banner{padding:2rem 1rem}
  .page-banner h1{font-size:1.75rem}
  footer{display:none}
  .float-btn{right:10px;bottom:60px}
  .float-btn a{width:42px;height:42px}
}