/* ═══════════════════════════════════════════════════════
   TYPOGRAPHY UPGRADE — Inter · Cyrillic · 科技感 + 高级感
   适用于俄语站全局，西里尔字母排版调优 + 颜色层次
   字体：Inter（几何人文主义无衬线，西里尔清晰现代，对标参考站）
   重点/渐变文字强调色：鲜亮蓝 #1f7ae0 → 青 #16b9cc → 紫 #6d5dfc
═══════════════════════════════════════════════════════ */

/* ── Google Font 引入（由各页面 HTML head 中的 <link> 加载）── */

/* ── 全局字体替换 + 高级感渲染优化 ── */
body, button, input, select, textarea {
  font-family: 'Inter', 'Noto Sans SC', 'Segoe UI', Roboto, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

/* ════════════════════════════════
   HERO
════════════════════════════════ */
.hero-eyebrow {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.17em;
  color: var(--or2);
}

/* 西里尔大标题：Inter 字形稳健，可收紧至 -0.022em 增强高级感 */
/* 尺寸调小，确保两句各占一行（共两行） */
.hero-title {
  font-size: clamp(26px, 2.7vw, 38px);
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: -0.022em;
  color: var(--dark);
  text-wrap: balance;
}

/* em 高亮：鲜亮蓝→青→紫 tech 渐变，去掉原下划线；独占一行，单独做行内平衡 */
.hero-title em {
  display: block;
  margin-top: 0.12em;
  font-weight: 800;
  font-style: normal;
  text-wrap: balance;
  background: linear-gradient(120deg, #1f7ae0 0%, #16b9cc 55%, #6d5dfc 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  color: transparent;
}
.hero-title em::after { display: none; }

/* 正文：Inter 400 字形清晰，0 字距 + 大行高，沉稳易读 */
.hero-desc {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.92;
  letter-spacing: 0;
  color: var(--mid);
}

/* ── Hero Card ── */
.hc-val {
  font-size: 30px;
  font-weight: 800;
  letter-spacing: -0.02em;
  font-variant-numeric: tabular-nums;
  background: linear-gradient(135deg, #1f7ae0, #16b9cc);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.hc-val sup      { font-size: 17px; font-weight: 700; }
.hc-label        { font-size: 11.5px; font-weight: 400; letter-spacing: 0.01em; line-height: 1.4; color: var(--muted); }
.hc-live         { font-size: 10px; font-weight: 600; letter-spacing: 0.14em; color: var(--or2); }
.hc-date         { font-size: 10px; font-weight: 400; letter-spacing: 0.1em; color: var(--muted); }
.hc-tag          { font-size: 10.5px; font-weight: 500; letter-spacing: 0.03em; color: var(--or1); }

/* ════════════════════════════════
   PHILOSOPHY / STATS BAND
════════════════════════════════ */
.phi-band-tag {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.28em;
  color: rgba(255,255,255,0.85);
}
/* 西里尔大标题在深色背景上，Inter 收紧至 -0.02em */
.phi-band-main {
  font-size: clamp(32px, 5vw, 52px);
  font-weight: 800;
  letter-spacing: -0.02em;
  line-height: 1.1;
  color: #fff;
}
.phi-band-sub {
  font-size: 12px;
  font-weight: 400;
  letter-spacing: 0.18em;
  color: rgba(255,255,255,0.6);
}

/* ════════════════════════════════
   SECTION HEADERS（全站通用）
════════════════════════════════ */
.sec-eyebrow {
  font-size: 10.5px;
  font-weight: 600;
  letter-spacing: 0.2em;
  color: var(--or2);
}

/* 西里尔二级标题：Inter 收紧至 -0.018em */
.section-title {
  font-size: clamp(26px, 3.5vw, 36px);
  font-weight: 800;
  letter-spacing: -0.018em;
  line-height: 1.16;
  color: var(--dark);
  text-wrap: balance;
}

/* 二级标题关键词高亮：鲜亮蓝→青渐变（只包关键词，勿整块变色） */
.section-title em,
.sec-title em {
  font-style: normal;
  background: linear-gradient(120deg, #1f7ae0, #16b9cc);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  color: transparent;
}

/* 标题左侧蓝色竖条 */
.section-header .section-title {
  padding-left: 16px;
  border-left: 3px solid var(--or2);
}

.section-sub {
  font-size: 15px;
  font-weight: 400;
  line-height: 1.9;
  letter-spacing: 0;
  color: var(--mid);
}

/* ════════════════════════════════
   SERVICES
════════════════════════════════ */
.svc-title { font-size: 17px; font-weight: 700; letter-spacing: -0.005em; color: var(--dark); }
.svc-desc  { font-size: 13.5px; font-weight: 400; line-height: 1.82; color: var(--mid); }
.svc-link  {
  font-size: 12.5px; font-weight: 700; letter-spacing: 0.05em;
  background: linear-gradient(90deg, #1f7ae0, #16b9cc);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.chip {
  font-size: 10.5px; font-weight: 500; letter-spacing: 0.03em;
  color: var(--or1); background: var(--or5); border-color: var(--or4);
}

/* ════════════════════════════════
   WORLDSKILLS PAGES
════════════════════════════════ */
.ws-text p       { font-size: 15px; font-weight: 400; line-height: 1.9; color: var(--mid); }
.ws-badge-title  { font-size: 13px; font-weight: 700; letter-spacing: 0em; color: var(--dark); }
.ws-badge-sub    { font-size: 11px; font-weight: 400; letter-spacing: 0.01em; color: var(--muted); }

/* Phase / day cards (WorldSkills schedule pages) */
.phase-title     { font-weight: 800; letter-spacing: -0.01em; }
.day-topic       { font-weight: 600; letter-spacing: 0em; line-height: 1.4; }
.day-pill        { font-size: 11px; font-weight: 700; letter-spacing: 0.06em; }

/* ════════════════════════════════
   CASES
════════════════════════════════ */
.case-type   { font-size: 10px; font-weight: 600; letter-spacing: 0.14em; color: var(--or2); }
.case-title  { font-size: 14.5px; font-weight: 700; letter-spacing: 0em; line-height: 1.46; color: var(--dark); }
.case-meta   { font-size: 11.5px; font-weight: 400; letter-spacing: 0.02em; color: var(--muted); }
.case-result { font-size: 11.5px; font-weight: 600; color: var(--or1); }

/* ════════════════════════════════
   SOLUTIONS PAGES
════════════════════════════════ */
.eq-card .en   { font-weight: 700; letter-spacing: -0.005em; }
.eq-card .es   { font-size: 12.5px; font-weight: 400; line-height: 1.7; color: var(--mid); }
.ps-card       { font-size: 13px; font-weight: 600; letter-spacing: 0em; }

/* Lab layout text */
.lab-text h2   { font-weight: 800; letter-spacing: -0.01em; line-height: 1.15; }
.lab-text p    { font-weight: 400; line-height: 1.9; color: var(--mid); }
.lab-text li   { font-weight: 400; line-height: 1.8; }

/* ════════════════════════════════
   PARTNERS
════════════════════════════════ */
.partners-label { font-size: 10px; font-weight: 500; letter-spacing: 0.2em; color: var(--muted); }
.partner-pill   { font-size: 12.5px; font-weight: 500; letter-spacing: 0.01em; color: var(--mid); }
.partner-pill:hover { color: var(--or1); border-color: var(--or3); }

/* ════════════════════════════════
   CTA
════════════════════════════════ */
.cta-box h2 { font-size: clamp(22px, 3.5vw, 30px); font-weight: 800; letter-spacing: -0.01em; }
.cta-box p  { font-size: 14px; font-weight: 400; letter-spacing: 0.005em; line-height: 1.8; }

/* ════════════════════════════════
   BUTTONS（全站）
════════════════════════════════ */
.btn-primary, .btn-ghost, .btn-white, .btn-outline-white {
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.04em;
}

/* ════════════════════════════════
   ABOUT / TEAM / NEWS PAGES
════════════════════════════════ */
.team-name    { font-weight: 700; letter-spacing: -0.005em; }
.team-role    { font-size: 12.5px; font-weight: 500; letter-spacing: 0.04em; color: var(--or2); }
.news-title   { font-weight: 700; letter-spacing: -0.008em; line-height: 1.35; }
.news-date    { font-size: 11px; font-weight: 500; letter-spacing: 0.08em; color: var(--muted); }

/* ════════════════════════════════
   BREADCRUMB（面包屑）
════════════════════════════════ */
.breadcrumb, .breadcrumb a {
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.04em;
}

/* ════════════════════════════════
   PAGE BANNER（内页 Banner）
════════════════════════════════ */
.banner-title {
  font-weight: 800;
  letter-spacing: -0.015em;
  line-height: 1.1;
}
.banner-sub {
  font-size: 15px;
  font-weight: 400;
  line-height: 1.88;
  letter-spacing: 0.005em;
}

/* ════════════════════════════════
   NOTE CARDS
════════════════════════════════ */
.note-card h3 { font-weight: 700; letter-spacing: -0.005em; }
.note-card p  { font-size: 13.5px; font-weight: 400; line-height: 1.82; color: var(--mid); }

/* ════════════════════════════════
   INFO CARDS / GENERAL CARDS
════════════════════════════════ */
.info-card h4  { font-weight: 700; letter-spacing: -0.005em; }
.info-card p   { font-size: 13.5px; font-weight: 400; line-height: 1.8; color: var(--mid); }
.card-title    { font-weight: 700; letter-spacing: -0.005em; }
