/* ============================================
   内页独立通用骨架样式 (page-common.css)
============================================ */

/* 内页顶部头图样式 */
.page-banner { position: relative; height: 380px; width: 100%; background-size: cover; background-position: center; background-repeat: no-repeat; display: flex; align-items: center; justify-content: center; }
.banner-overlay { position: absolute; inset: 0; background: linear-gradient(to right, rgba(0, 30, 80, 0.85), rgba(0, 50, 120, 0.6)); }
.relative { position: relative; }
.z-index-2 { z-index: 2; }
.page-banner .container { text-align: center; margin-top: 60px;}
.page-title { font-size: clamp(2.2rem, 4vw, 3rem); font-weight: 800; color: #fff; letter-spacing: 0.05em; margin-bottom: 16px; text-shadow: 0 2px 10px rgba(0,0,0,0.3); }

/* 面包屑导航 */
.breadcrumbs { font-size: 1rem; color: rgba(255,255,255,0.8); }
.breadcrumbs a { color: #fff; transition: color 0.3s; }
.breadcrumbs a:hover { color: var(--accent-orange); }
.breadcrumbs i { margin: 0 10px; font-size: 0.85rem; opacity: 0.7; }

/* 页面内锚点菜单 (吸顶) */
.page-nav-anchor { background: #fff; box-shadow: 0 4px 12px rgba(0,0,0,0.05); z-index: 998; border-bottom: 1px solid #eee; }
.sticky-top { position: sticky; top: 80px; }
.anchor-list { display: flex; align-items: center; justify-content: center; gap: 40px; overflow-x: auto; white-space: nowrap; scrollbar-width: none; }
.anchor-list::-webkit-scrollbar { display: none; }
.anchor-item { display: block; padding: 20px 0; font-size: 1.05rem; font-weight: 500; color: #555; border-bottom: 3px solid transparent; transition: var(--transition); }
.anchor-item:hover { color: var(--primary); }
.anchor-item.active { color: var(--primary); font-weight: 700; border-bottom-color: var(--primary); }

/* 通用区块排版 */
.inner-section { padding: 90px 0; }
.bg-light { background-color: var(--bg-light); }
.bg-white { background-color: #fff; }

.section-eyebrow { font-family: var(--font-en); font-size: 0.85rem; font-weight: 700; letter-spacing: 0.15em; color: var(--primary); text-transform: uppercase; margin-bottom: 12px; }
.section-title.text-left::after { margin-left: 0; }
.section-subtitle { font-size: 1.1rem; color: var(--text-muted); max-width: 700px; margin: 0 auto; line-height: 1.6; }

/* 合作伙伴公用样式 */
.partners-grid { display: flex; flex-wrap: wrap; justify-content: center; gap: 24px; }
.partner-item { width: calc(20% - 20px); min-width: 140px; background: #fff; border: 1px solid #eee; border-radius: 8px; padding: 20px; transition: var(--transition); display: flex; align-items: center; justify-content: center; filter: grayscale(100%) opacity(0.7); }
.partner-item:hover { filter: none; border-color: var(--primary); box-shadow: var(--shadow-sm); transform: translateY(-3px); }
.partner-item img { max-width: 100%; height: auto; display: block; }

/* 通用时间轴/滑块控制箭头 */
.timeline-arrow { background: #fff; border: 1px solid #dcdcdc; width: 44px; height: 44px; border-radius: 50%; display: flex; align-items: center; justify-content: center; cursor: pointer; z-index: 10; color: #555; transition: all 0.3s ease; outline: none; flex-shrink: 0; box-shadow: 0 2px 6px rgba(0,0,0,0.03); }
.timeline-arrow:hover { background: #f0f0f0; color: #111; border-color: #bbb; }

/* 响应式断点适配 */
@media (max-width: 767px) {
  .inner-section { padding: 60px 0; }
  .anchor-list { justify-content: flex-start; padding: 0 16px; gap: 20px; }
  .anchor-item { padding: 12px 0; font-size: 0.95rem; }
  .partner-item { width: calc(33.333% - 16px); }
}
@media (max-width: 480px) { 
  .partner-item { width: calc(50% - 12px); } 
}