/* ===== RESET & BASE ===== */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

:root {
  --black: #f7f9fc;
  --dark: #ffffff;
  --dark2: #f1f5f9;
  --mid: #cfdbe7;
  --gray1: #7d8fa1;
  --gray2: #526579;
  --gray3: #34485d;
  --gray4: #182d43;
  --gray5: #071b30;
  --light: #ffffff;
  --white: #071b30;
  --accent: #096fc7;
  --accent2: #2fae9d;
  --blue-glow: rgba(9, 111, 199, 0.2);
  --green-glow: rgba(47, 174, 157, 0.16);
  --font-display: 'Cormorant Garamond', 'Noto Serif SC', Georgia, serif;
  --font-body: 'DM Sans', 'PingFang SC', 'Microsoft YaHei', sans-serif;
  --transition: 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

html { scroll-behavior: smooth; font-size: 16px; }

body {
  font-family: var(--font-body);
  background:
    linear-gradient(180deg, #ffffff 0%, var(--black) 44%, #eef3f8 100%);
  color: var(--white);
  line-height: 1.6;
  overflow-x: hidden;
}

a { text-decoration: none; color: inherit; }
img { max-width: 100%; display: block; }
ul { list-style: none; }
button { border: none; cursor: pointer; font-family: var(--font-body); }

/* ===== TYPOGRAPHY ===== */
.display-xl { font-family: var(--font-display); font-size: clamp(3rem, 7vw, 7rem); font-weight: 300; line-height: 1.05; letter-spacing: 0; }
.display-lg { font-family: var(--font-display); font-size: clamp(2rem, 4vw, 4.5rem); font-weight: 300; line-height: 1.1; }
.display-md { font-family: var(--font-display); font-size: clamp(1.5rem, 3vw, 2.8rem); font-weight: 400; line-height: 1.2; }
.heading-lg { font-size: clamp(1.2rem, 2vw, 1.8rem); font-weight: 500; letter-spacing: 0.02em; color: var(--accent); }
.heading-md { font-size: 1.1rem; font-weight: 500; letter-spacing: 0.03em; color: var(--gray5); }
.body-lg { font-size: 1rem; line-height: 1.75; color: var(--gray3); }
.body-sm { font-size: 0.875rem; color: var(--gray3); }
.label { font-size: 0.7rem; letter-spacing: 0.15em; text-transform: uppercase; color: var(--accent2); font-weight: 600; }

/* ===== NAVIGATION ===== */
.nav {
  position: fixed; top: 0; left: 0; right: 0; z-index: 1000;
  height: 64px;
  display: flex; align-items: center; justify-content: space-between;
  padding: 0 4vw;
  background: rgba(9, 111, 199, 0.96);
  backdrop-filter: blur(20px);
  border-bottom: 1px solid rgba(255,255,255,0.14);
  box-shadow: 0 8px 26px rgba(7,27,48,0.12);
  transition: var(--transition);
}
.nav.scrolled { background: rgba(8, 94, 170, 0.98); }

.nav-logo {
  display: flex; align-items: center; gap: 12px;
}
.nav-logo-mark {
  width: 36px; height: 36px;
  background: linear-gradient(135deg, #ffffff, #d9fff8);
  box-shadow: 0 8px 22px rgba(7,27,48,0.16);
  border-radius: 4px;
  display: flex; align-items: center; justify-content: center;
}
.nav-logo-mark span { font-family: var(--font-display); font-size: 1.1rem; font-weight: 600; color: var(--accent); }
.nav-logo-text { font-size: 0.85rem; font-weight: 500; letter-spacing: 0.05em; color: rgba(255,255,255,0.78); }
.nav-logo-text strong { color: #ffffff; }

.nav-links {
  display: flex; align-items: center; gap: 2px;
}
.nav-links a {
  padding: 8px 16px;
  font-size: 0.82rem;
  font-weight: 400;
  color: rgba(255,255,255,0.82);
  border-radius: 4px;
  transition: var(--transition);
  letter-spacing: 0.02em;
}
.nav-links a:hover, .nav-links a.active { color: #ffffff; background: rgba(255,255,255,0.14); }

.nav-right { display: flex; align-items: center; gap: 8px; }
.lang-btn {
  padding: 6px 14px;
  font-size: 0.78rem;
  letter-spacing: 0.05em;
  color: rgba(255,255,255,0.82);
  border: 1px solid rgba(255,255,255,0.3);
  border-radius: 3px;
  background: transparent;
  transition: var(--transition);
}
.lang-btn:hover { color: #ffffff; border-color: rgba(255,255,255,0.58); background: rgba(255,255,255,0.12); }
.contact-btn {
  padding: 8px 20px;
  font-size: 0.82rem;
  font-weight: 500;
  color: #ffffff;
  background: var(--accent2);
  border-radius: 3px;
  transition: var(--transition);
}
.contact-btn:hover { background: #239d8f; }

/* Mobile menu button */
.menu-toggle { display: none; flex-direction: column; gap: 5px; background: transparent; padding: 4px; }
.menu-toggle span { display: block; width: 24px; height: 1.5px; background: #ffffff; transition: var(--transition); }

/* ===== PLACEHOLDERS ===== */
.video-placeholder {
  background: var(--dark2);
  border: 1px solid var(--mid);
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  gap: 12px; position: relative; overflow: hidden;
}
.video-placeholder::before {
  content: '';
  position: absolute; inset: 0;
  background: repeating-linear-gradient(
    -45deg,
    transparent,
    transparent 20px,
    rgba(29,120,200,0.035) 20px,
    rgba(29,120,200,0.035) 21px
  );
}
.video-placeholder .play-icon {
  width: 56px; height: 56px;
  border: 1.5px solid rgba(29,120,200,0.36);
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  z-index: 1;
}
.video-placeholder .play-icon::after {
  content: '';
  display: block;
  width: 0; height: 0;
  border-style: solid;
  border-width: 8px 0 8px 16px;
  border-color: transparent transparent transparent var(--accent);
  margin-left: 4px;
}
.video-placeholder .ph-label {
  font-size: 0.75rem; letter-spacing: 0.1em; text-transform: uppercase;
  color: var(--gray2); z-index: 1;
}

.img-placeholder {
  background: var(--dark2);
  border: 1px solid var(--mid);
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  gap: 8px; position: relative; overflow: hidden;
}
.img-placeholder::before {
  content: '';
  position: absolute; inset: 0;
  background: repeating-linear-gradient(
    90deg,
    transparent,
    transparent 30px,
    rgba(29,120,200,0.026) 30px,
    rgba(29,120,200,0.026) 31px
  );
}
.img-placeholder .ph-icon {
  width: 40px; height: 40px;
  border: 1.5px solid var(--gray1);
  border-radius: 4px;
  display: flex; align-items: center; justify-content: center;
  z-index: 1;
}
.img-placeholder .ph-icon svg { stroke: var(--accent2); }
.img-placeholder .ph-label {
  font-size: 0.72rem; letter-spacing: 0.08em; text-transform: uppercase;
  color: var(--gray2); z-index: 1; text-align: center; padding: 0 16px;
}

.media-filled {
  background: var(--dark);
  border-color: rgba(29,120,200,0.1);
}
.media-filled::before { display: none; }
.media-fill {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: none;
}
.media-fill.contain {
  object-fit: contain;
  padding: 18px;
}
.media-filled .ph-icon,
.media-filled .play-icon,
.media-filled .ph-label { display: none; }
.media-filled::after {
  content: '';
  position: absolute;
  inset: 0;
  background:
    linear-gradient(to bottom, rgba(255,255,255,0.03), rgba(13,32,53,0.12)),
    linear-gradient(135deg, rgba(29,120,200,0.06), rgba(104,184,173,0.045));
  pointer-events: none;
}
.hero-video.media-filled::after {
  background:
    linear-gradient(to bottom, rgba(6,16,28,0.16) 0%, rgba(6,16,28,0.04) 42%, rgba(6,16,28,0.62) 100%),
    linear-gradient(90deg, rgba(6,16,28,0.7), rgba(14,42,63,0.16) 54%, rgba(6,16,28,0.28));
}
.logo-item {
  flex-direction: column;
  gap: 10px;
}
.logo-img {
  max-width: 100%;
  max-height: 48px;
  object-fit: contain;
  filter: none;
  opacity: 1;
  transition: var(--transition);
}
.logo-item:hover .logo-img {
  filter: none;
  opacity: 1;
}
.logo-item.logo-generic .logo-img {
  width: 100%;
  height: 62px;
  max-height: 62px;
  object-fit: contain;
}
.logo-item.has-logo .logo-text {
  font-size: 0.68rem;
  color: var(--gray1);
  line-height: 1.35;
}
.team-photo .media-fill {
  object-position: center 18%;
}
.asset-carousel {
  position: absolute;
  inset: 0;
  overflow: hidden;
  background: linear-gradient(135deg, #eef3f8, #ffffff);
}
.asset-carousel-slides,
.asset-carousel-slide {
  position: absolute;
  inset: 0;
}
.asset-carousel-slide {
  opacity: 0;
  transform: scale(1.04);
  transition: opacity 0.62s ease, transform 1.2s ease;
}
.asset-carousel-slide.active {
  opacity: 1;
  transform: scale(1);
  z-index: 2;
}
.asset-carousel-stack {
  inset: 0;
  border-radius: 0;
  overflow: hidden;
}
.asset-carousel-stack::before,
.asset-carousel-stack::after {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 3;
}
.asset-carousel-stack::before {
  transform: none;
  opacity: 1;
  background:
    linear-gradient(90deg, rgba(13,32,53,0.24), rgba(13,32,53,0.02) 44%, rgba(13,32,53,0.2)),
    linear-gradient(to bottom, rgba(255,255,255,0.02), rgba(13,32,53,0.18));
}
.asset-carousel-stack::after {
  inset: auto 18% 15px 18%;
  height: 2px;
  transform: none;
  opacity: 0.72;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.78), transparent);
  border: 0;
  border-radius: 999px;
}
.asset-carousel-stack .asset-carousel-slides {
  z-index: 1;
  border-radius: 0;
  overflow: hidden;
  box-shadow: none;
}
.asset-carousel-dots {
  position: absolute;
  left: 50%;
  bottom: 14px;
  transform: translateX(-50%);
  z-index: 6;
  display: flex;
  gap: 7px;
  padding: 5px 7px;
  border: 1px solid rgba(29,120,200,0.14);
  border-radius: 999px;
  background: rgba(255,255,255,0.72);
  backdrop-filter: blur(10px);
}
.asset-carousel-dot {
  width: 22px;
  height: 3px;
  border-radius: 999px;
  background: rgba(9,111,199,0.28);
  border: 0;
  padding: 0;
  transition: var(--transition);
}
.asset-carousel-dot.active {
  width: 42px;
  border-radius: 999px;
  background: var(--accent);
  box-shadow: 0 0 16px rgba(9,111,199,0.24);
}
.asset-carousel-arrow {
  position: absolute;
  top: 50%;
  z-index: 6;
  width: 34px;
  height: 58px;
  transform: translateY(-50%);
  background: transparent;
  border: 0;
  opacity: 0.86;
}
.asset-carousel-arrow::before {
  content: '';
  position: absolute;
  top: 50%;
  width: 22px;
  height: 22px;
  border-top: 3px solid rgba(255,255,255,0.94);
  border-left: 3px solid rgba(255,255,255,0.94);
  filter: drop-shadow(0 2px 8px rgba(13,32,53,0.28));
}
.asset-carousel-arrow.prev { left: 16px; }
.asset-carousel-arrow.next { right: 16px; }
.asset-carousel-arrow.prev::before {
  left: 9px;
  transform: translateY(-50%) rotate(-45deg);
}
.asset-carousel-arrow.next::before {
  right: 9px;
  transform: translateY(-50%) rotate(135deg);
}
.asset-carousel-arrow:hover {
  opacity: 1;
}
.asset-carousel-arrow:hover::before {
  border-color: var(--accent);
}
.asset-carousel-grid {
  padding: 16px;
}
.asset-carousel-grid .asset-carousel-slides {
  inset: 16px 16px 46px;
}
.app-collage-slide {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}
.app-collage-slide .carousel-img {
  position: relative;
  inset: auto;
  width: 100%;
  height: 100%;
  min-width: 0;
  object-fit: cover;
  object-position: top center;
  padding: 0;
  border: 1px solid rgba(29,120,200,0.12);
  border-radius: 5px;
  background: #ffffff;
}
.media-grid-filled::after {
  background: linear-gradient(to bottom, rgba(6,16,28,0.04), rgba(6,16,28,0.16));
}
.media-hero-carousel .asset-carousel {
  background: #041c34;
}
.media-hero-carousel .asset-carousel-dots,
.media-hero-carousel .asset-carousel-arrow {
  display: none;
}
.media-hero-carousel .asset-carousel-slide {
  transform: scale(1.03);
}
.media-hero-carousel .asset-carousel-slide.active {
  transform: scale(1);
}
.media-hero-carousel .asset-carousel-dots {
  bottom: 26px;
  gap: 0;
  padding: 0;
  border: 0;
  background: transparent;
  backdrop-filter: none;
}
.media-hero-carousel .asset-carousel-dot {
  width: 62px;
  height: 3px;
  border-radius: 0;
  background: rgba(255,255,255,0.42);
}
.media-hero-carousel .asset-carousel-dot + .asset-carousel-dot {
  margin-left: 3px;
}
.media-hero-carousel .asset-carousel-dot.active {
  width: 78px;
  background: #ffffff;
  box-shadow: 0 0 16px rgba(66,209,255,0.42);
}
.media-hero-carousel .asset-carousel-arrow {
  width: 72px;
  height: 92px;
  opacity: 0.9;
}
.media-hero-carousel .asset-carousel-arrow.prev { left: 26px; }
.media-hero-carousel .asset-carousel-arrow.next { right: 26px; }
.media-hero-carousel .asset-carousel-arrow::before {
  width: 34px;
  height: 34px;
  border-width: 4px;
  filter: drop-shadow(0 2px 12px rgba(4,20,36,0.55));
}
.media-hero-carousel .asset-carousel-arrow:hover::before {
  border-color: #ffffff;
}
.product-card-icon svg,
.product-card-icon svg *,
.img-placeholder .ph-icon svg,
.img-placeholder .ph-icon svg *,
.video-placeholder .play-icon {
  color: var(--accent);
  stroke: var(--accent);
}
.product-card:hover .product-card-icon {
  border-color: rgba(29,120,200,0.36);
  box-shadow: 0 0 22px rgba(29,120,200,0.08);
}

/* ===== SECTIONS BASE ===== */
.section { padding: 100px 4vw; }
.section-sm { padding: 60px 4vw; }
.section-label { display: flex; align-items: center; gap: 12px; margin-bottom: 20px; }
.section-label::before { content: ''; display: block; width: 32px; height: 1px; background: var(--accent); opacity: 0.62; }
.container { max-width: 1280px; margin: 0 auto; }
.divider { height: 1px; background: linear-gradient(90deg, transparent, var(--mid), transparent); margin: 0 4vw; }

/* ===== HERO ===== */
.hero {
  min-height: 100vh;
  display: grid; grid-template-rows: 1fr auto;
  position: relative; padding-top: 64px;
}
.hero-video {
  width: 100%; height: calc(100vh - 64px);
  z-index: 0;
}
.hero-overlay {
  position: absolute; inset: 0; top: 64px;
  background:
    linear-gradient(to bottom, rgba(6,16,28,0.3) 0%, rgba(6,16,28,0.08) 38%, rgba(6,16,28,0.78) 100%),
    linear-gradient(90deg, rgba(4,14,26,0.74), rgba(8,30,52,0.2) 54%, rgba(4,14,26,0.34));
  pointer-events: none;
  z-index: 1;
}
.hero-content {
  position: absolute; bottom: 80px; left: 4vw;
  max-width: 700px;
  z-index: 3;
}
.hero-eyebrow { font-size: 0.72rem; letter-spacing: 0.2em; text-transform: uppercase; color: var(--gray3); margin-bottom: 20px; }
.hero-content h1 { margin-bottom: 24px; }
.hero-content p { color: var(--gray3); font-size: 1rem; line-height: 1.8; margin-bottom: 32px; max-width: 480px; }
.hero-actions { display: flex; gap: 12px; flex-wrap: wrap; }
.hero-content,
.hero-content h1,
.hero-content .hero-eyebrow { color: #ffffff; }
.hero-content p { color: rgba(255,255,255,0.76); }
.hero .btn-outline { color: #ffffff; border-color: rgba(255,255,255,0.42); }
.hero .btn-outline:hover { border-color: #ffffff; background: rgba(255,255,255,0.08); }

/* ===== BUTTONS ===== */
.btn-primary {
  padding: 12px 28px; font-size: 0.85rem; font-weight: 500;
  background: var(--accent); color: #ffffff; border-radius: 3px;
  transition: var(--transition); letter-spacing: 0.02em;
  box-shadow: 0 10px 28px rgba(9,111,199,0.2);
}
.btn-primary:hover { background: #075da9; }
.btn-outline {
  padding: 12px 28px; font-size: 0.85rem; font-weight: 400;
  background: transparent; color: var(--white);
  border: 1px solid rgba(139,183,210,0.42); border-radius: 3px;
  transition: var(--transition); letter-spacing: 0.02em;
}
.btn-outline:hover { border-color: var(--accent); background: rgba(29,120,200,0.04); }
.btn-ghost {
  display: inline-flex; align-items: center; gap: 8px;
  font-size: 0.82rem; color: var(--gray3); letter-spacing: 0.03em;
  transition: var(--transition); padding: 4px 0; border-bottom: 1px solid var(--gray1);
}
.btn-ghost:hover { color: var(--accent); border-color: var(--accent); }
.btn-ghost::after { content: '\2192'; transition: transform 0.25s; }
.btn-ghost:hover::after { transform: translateX(4px); }

/* ===== STATS BAR ===== */
.stats-bar {
  width: min(1180px, calc(100% - 8vw));
  margin: -74px auto 78px;
  position: relative;
  z-index: 8;
  background: rgba(255,255,255,0.96);
  border: 1px solid rgba(203,216,228,0.82);
  border-radius: 8px;
  box-shadow: 0 22px 58px rgba(7,27,48,0.13);
  display: grid; grid-template-columns: repeat(4, 1fr);
  overflow: hidden;
}
.stat-item {
  padding: 36px 32px;
  border-right: none;
  position: relative;
}
.stat-item:not(:last-child)::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 0;
  width: 1px;
  height: 42px;
  transform: translateY(-50%);
  background: linear-gradient(180deg, transparent, rgba(9,111,199,0.28), transparent);
}
.stat-item:last-child { border-right: none; }
.stat-num { font-family: var(--font-display); font-size: 2.8rem; font-weight: 300; color: var(--white); line-height: 1; text-shadow: 0 0 26px rgba(139,183,210,0.16); }
.stat-unit { font-size: 0.9rem; color: var(--gray3); margin-left: 4px; }
.stat-desc { font-size: 0.78rem; color: var(--gray2); letter-spacing: 0.05em; margin-top: 8px; text-transform: uppercase; }

/* ===== BUSINESS CARDS ===== */
.business-grid {
  display: grid; grid-template-columns: repeat(4, 1fr);
  border: 1px solid var(--mid);
}
.biz-card {
  padding: 48px 32px;
  border-right: 1px solid var(--mid);
  transition: var(--transition);
  cursor: pointer; position: relative; overflow: hidden;
}
.biz-card:last-child { border-right: none; }
.biz-card::before {
  content: ''; position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(29,120,200,0.045), rgba(104,184,173,0.035));
  transform: translateY(100%); transition: var(--transition);
}
.biz-card:hover::before { transform: translateY(0); }
.biz-card:hover { border-color: rgba(9,111,199,0.3); }
.biz-num { font-family: var(--font-display); font-size: 3.5rem; font-weight: 300; color: rgba(9,111,199,0.18); line-height: 1; margin-bottom: 24px; }
.biz-tag { display: inline-block; padding: 4px 10px; border: 1px solid rgba(9,111,199,0.26); border-radius: 2px; font-size: 0.68rem; letter-spacing: 0.12em; text-transform: uppercase; color: var(--accent); margin-bottom: 16px; background: rgba(9,111,199,0.055); }
.biz-title { font-family: var(--font-display); font-size: 1.5rem; font-weight: 400; margin-bottom: 12px; }
.biz-subtitle { font-size: 0.78rem; color: var(--gray2); line-height: 1.6; margin-bottom: 24px; }
.biz-arrow { font-size: 1.2rem; color: var(--accent2); transition: var(--transition); }
.biz-card:hover .biz-arrow { color: var(--accent); transform: translate(4px, -2px); }

/* ===== FEATURED SECTION ===== */
.featured-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; background: var(--mid); }
.featured-item { background: #ffffff; padding: 56px 48px; position: relative; overflow: hidden; }
.featured-item-img { margin-bottom: 32px; }
.featured-tag { display: inline-block; padding: 5px 12px; border: 1px solid rgba(9,111,199,0.26); border-radius: 2px; font-size: 0.68rem; letter-spacing: 0.12em; text-transform: uppercase; color: var(--accent); margin-bottom: 20px; background: rgba(9,111,199,0.055); }
.featured-item h3 { margin-bottom: 12px; }
.featured-item p { color: var(--gray2); font-size: 0.85rem; line-height: 1.7; margin-bottom: 24px; }

/* ===== PRODUCT GRID ===== */
.product-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--mid); margin-top: 48px; }
.product-card {
  background: var(--dark);
  padding: 40px 32px;
  transition: var(--transition);
  cursor: pointer;
}
.product-card:hover { background: #f6f9fc; }
.product-card-icon { width: 48px; height: 48px; border: 1px solid rgba(9,111,199,0.26); border-radius: 4px; display: flex; align-items: center; justify-content: center; margin-bottom: 20px; background: rgba(9,111,199,0.055); }
.product-card h4 { font-size: 1rem; font-weight: 500; margin-bottom: 8px; }
.product-card p { font-size: 0.82rem; color: var(--gray2); line-height: 1.6; }

/* ===== PARTNER LOGOS ===== */
.logo-grid {
  display: grid; grid-template-columns: repeat(6, 1fr);
  border: 1px solid var(--mid);
}
.logo-item {
  padding: 32px 24px;
  border-right: 1px solid var(--mid);
  border-bottom: 1px solid var(--mid);
  display: flex; align-items: center; justify-content: center;
  min-height: 80px;
  background: #ffffff;
  transition: var(--transition);
}
.logo-item:hover { background: #f6f9fc; }
.logo-item:nth-child(6n) { border-right: none; }
.logo-text { font-size: 0.78rem; font-weight: 500; color: var(--gray2); text-align: center; letter-spacing: 0.05em; }

/* ===== TEAM CARDS ===== */
.team-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: var(--mid); }
.team-card { background: #ffffff; padding: 40px 28px; }
.team-photo { margin-bottom: 24px; }
.team-name { font-weight: 500; font-size: 0.95rem; margin-bottom: 4px; }
.team-role { font-size: 0.75rem; letter-spacing: 0.08em; text-transform: uppercase; color: var(--gray2); margin-bottom: 16px; }
.team-bio { font-size: 0.78rem; color: var(--gray2); line-height: 1.65; }

/* ===== CONTACT SECTION ===== */
.contact-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; }
.contact-form { display: flex; flex-direction: column; gap: 16px; }
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.form-field { display: flex; flex-direction: column; gap: 6px; }
.form-field label { font-size: 0.75rem; letter-spacing: 0.08em; text-transform: uppercase; color: var(--gray2); }
.form-field input, .form-field select, .form-field textarea {
  background: var(--dark2); border: 1px solid var(--mid);
  color: var(--white); padding: 12px 16px; font-size: 0.85rem;
  font-family: var(--font-body); border-radius: 3px;
  transition: var(--transition); outline: none;
}
.form-field input:focus, .form-field select:focus, .form-field textarea:focus {
  border-color: var(--accent);
  box-shadow: 0 0 0 3px rgba(29,120,200,0.08);
}
.form-field select option { background: var(--dark2); }
.form-field textarea { resize: vertical; min-height: 120px; }
.form-submit { padding: 14px 32px; background: var(--accent); color: #ffffff; font-size: 0.85rem; font-weight: 500; border-radius: 3px; transition: var(--transition); align-self: flex-start; }
.form-submit:hover { background: #166ab2; }

.contact-info { display: flex; flex-direction: column; gap: 40px; }
.contact-item h4 { font-size: 0.75rem; letter-spacing: 0.12em; text-transform: uppercase; color: var(--gray2); margin-bottom: 12px; }
.contact-item p { font-size: 0.88rem; color: var(--gray4); line-height: 1.8; }

/* ===== FOOTER ===== */
.footer {
  background:
    radial-gradient(circle at 8% 0%, rgba(255,255,255,0.72), transparent 30%),
    linear-gradient(180deg, #e3e9f0 0%, #d7e0e8 100%);
  border-top: 1px solid #c3ced9;
  padding: 64px 4vw 32px;
  color: #111820;
}
.footer-grid { display: grid; grid-template-columns: 2fr 1fr 1fr 1fr 1fr; gap: 48px; margin-bottom: 64px; }
.footer-brand .nav-logo-text,
.footer-brand .nav-logo-text strong {
  color: #000000;
}
.footer-brand p { font-size: 0.82rem; color: #111820; line-height: 1.7; margin-top: 16px; max-width: 280px; }
.footer-col h5 { font-size: 0.72rem; letter-spacing: 0.12em; text-transform: uppercase; color: #05080b; margin-bottom: 20px; font-weight: 600; }
.footer-col ul { display: flex; flex-direction: column; gap: 10px; }
.footer-col ul li a { font-size: 0.82rem; color: #111820; transition: var(--transition); }
.footer-col ul li a:hover { color: #000000; }
.footer-bottom { border-top: 1px solid #cbd8e4; padding-top: 28px; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 16px; }
.footer-bottom p { font-size: 0.75rem; color: #111820; }
/* ===== PAGE HERO (inner pages) ===== */
body.page-business { --page-hero-image: url('../Assets/hero-business-tech.png'); --page-hero-position: center center; }
body.page-products { --page-hero-image: url('../Assets/hero-products-tech.png'); --page-hero-position: center center; }
body.page-partners { --page-hero-image: url('../Assets/hero-partners-tech.png'); --page-hero-position: center center; }
body.page-about { --page-hero-image: url('../Assets/hero-about-tech.png'); --page-hero-position: center center; }
body.page-contact { --page-hero-image: url('../Assets/hero-contact-tech.png'); --page-hero-position: center center; }
.page-hero {
  padding: 160px 4vw 80px;
  border-bottom: 1px solid rgba(255,255,255,0.12);
  position: relative;
  overflow: hidden;
  background:
    linear-gradient(90deg, rgba(3,28,55,0.9) 0%, rgba(8,79,148,0.7) 42%, rgba(4,25,47,0.38) 100%),
    linear-gradient(to bottom, rgba(5,33,62,0.42), rgba(3,18,34,0.72)),
    var(--page-hero-image, none),
    radial-gradient(circle at 74% 36%, rgba(47,174,157,0.34), transparent 24%),
    linear-gradient(150deg, #085eaa 0%, #096fc7 45%, #07345f 100%);
  background-size: auto, auto, cover, auto, auto;
  background-position: center, center, var(--page-hero-position, center center), center, center;
  background-repeat: no-repeat;
  color: #ffffff;
}
.page-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(255,255,255,0.08) 1px, transparent 1px),
    linear-gradient(0deg, rgba(255,255,255,0.08) 1px, transparent 1px),
    radial-gradient(circle at 78% 52%, rgba(86,224,218,0.22), transparent 20%);
  background-size: 72px 72px, 72px 72px, auto;
  mask-image: linear-gradient(90deg, transparent, #000 22%, #000 86%, transparent);
  opacity: 0.5;
}
.page-hero::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(67,211,203,0.8), transparent);
  opacity: 0.85;
}
.page-hero .container { position: relative; z-index: 1; }
.page-hero .display-lg,
.page-hero .section-label .label { color: #ffffff; }
.page-hero .body-lg { color: rgba(255,255,255,0.84); }
.page-hero .section-label::before { background: var(--accent2); opacity: 1; }
.page-hero .breadcrumb { display: flex; align-items: center; gap: 8px; font-size: 0.75rem; color: rgba(255,255,255,0.68); margin-bottom: 32px; }
.page-hero .breadcrumb a { transition: var(--transition); }
.page-hero .breadcrumb a:hover { color: #ffffff; }
.page-hero .breadcrumb span { color: rgba(255,255,255,0.42); }

/* ===== TABS ===== */
.tab-nav { display: flex; border-bottom: 1px solid var(--mid); margin-bottom: 48px; overflow-x: auto; }
.tab-btn { padding: 16px 28px; font-size: 0.82rem; letter-spacing: 0.04em; color: var(--gray2); background: transparent; border: none; border-bottom: 2px solid transparent; cursor: pointer; transition: var(--transition); white-space: nowrap; font-family: var(--font-body); }
.tab-btn.active, .tab-btn:hover { color: var(--white); border-bottom-color: var(--accent); }
.tab-panel { display: none; }
.tab-panel.active { display: block; }

/* ===== TIMELINE ===== */
.timeline { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; border-top: 1px solid var(--mid); margin-top: 48px; }
.timeline-item { padding: 36px 32px 36px 0; border-right: 1px solid var(--mid); }
.timeline-item:last-child { border-right: none; padding-right: 0; }
.tl-year { font-family: var(--font-display); font-size: 2rem; font-weight: 300; color: var(--gray1); margin-bottom: 12px; }
.tl-text { font-size: 0.82rem; color: var(--gray2); line-height: 1.7; }

/* ===== LOCATION GRID ===== */
.location-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--mid); margin-top: 48px; }
.location-card { background: var(--dark); padding: 36px 32px; }
.location-card h4 { font-size: 1rem; font-weight: 500; margin-bottom: 4px; }
.location-tag { font-size: 0.68rem; letter-spacing: 0.1em; text-transform: uppercase; color: var(--gray2); margin-bottom: 16px; }
.location-card p { font-size: 0.8rem; color: var(--gray2); line-height: 1.7; }

/* ===== ANIMATIONS ===== */
@keyframes fadeUp { from { opacity: 0; transform: translateY(24px); } to { opacity: 1; transform: translateY(0); } }
@keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }

.animate { animation: fadeUp 0.7s ease both; }
.animate-delay-1 { animation-delay: 0.1s; }
.animate-delay-2 { animation-delay: 0.2s; }
.animate-delay-3 { animation-delay: 0.3s; }

/* ===== MOBILE NAV MENU ===== */
.mobile-menu {
  display: none; position: fixed; inset: 0; top: 64px; background: rgba(255,255,255,0.98);
  z-index: 999; padding: 32px 4vw; flex-direction: column; gap: 8px;
  border-top: 1px solid var(--mid);
}
.mobile-menu.open { display: flex; }
.mobile-menu a { padding: 16px 0; font-size: 1.1rem; color: var(--gray3); border-bottom: 1px solid var(--mid); transition: var(--transition); }
.mobile-menu a:hover { color: var(--white); }

/* ===== VISUAL POLISH ===== */
.section {
  position: relative;
}
.section:nth-of-type(even) {
  background:
    linear-gradient(180deg, rgba(255,255,255,0.72), rgba(240,246,251,0.64));
}
.section-label::before {
  height: 2px;
  background: linear-gradient(90deg, var(--accent), var(--accent2));
  opacity: 1;
}
.display-md,
.display-lg {
  color: var(--gray5);
}
.page-hero .display-lg {
  text-shadow: 0 8px 30px rgba(0,0,0,0.2);
}
.page-hero .body-lg {
  text-shadow: 0 2px 12px rgba(0,0,0,0.18);
}
.stats-bar,
.business-grid,
.featured-grid,
.product-grid,
.team-grid,
.location-grid,
.logo-grid {
  border-color: rgba(146,164,184,0.58);
  box-shadow: 0 18px 60px rgba(7,27,48,0.055);
}
.stat-item,
.biz-card,
.featured-item,
.product-card,
.team-card,
.location-card,
.logo-item {
  background:
    linear-gradient(180deg, rgba(255,255,255,0.98), rgba(248,251,254,0.94));
}
.biz-card,
.product-card,
.featured-item,
.team-card,
.location-card,
.logo-item {
  position: relative;
  isolation: isolate;
}
.biz-card:hover,
.product-card:hover,
.featured-item:hover,
.team-card:hover,
.location-card:hover,
.logo-item:hover {
  background:
    linear-gradient(180deg, #ffffff, #f2f8fc);
  box-shadow: inset 0 0 0 1px rgba(9,111,199,0.12), 0 16px 42px rgba(7,27,48,0.07);
}
.featured-item::before,
.product-card::before,
.team-card::before,
.location-card::before {
  content: '';
  position: absolute;
  top: 22px;
  left: 28px;
  width: 28px;
  height: 2px;
  background: linear-gradient(90deg, var(--accent), var(--accent2));
  opacity: 0.58;
  pointer-events: none;
}
.featured-item-img,
.img-placeholder,
.video-placeholder {
  border-color: rgba(9,111,199,0.16);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.48), 0 14px 34px rgba(7,27,48,0.06);
}
.media-filled {
  background: #eef5fb;
}
.media-filled::after {
  background:
    linear-gradient(to bottom, rgba(255,255,255,0), rgba(7,27,48,0.08)),
    linear-gradient(135deg, rgba(9,111,199,0.045), rgba(47,174,157,0.04));
}
.media-fill.contain {
  padding: 16px;
}
.btn-primary,
.form-submit,
.contact-btn {
  background: linear-gradient(135deg, var(--accent), #0b85da);
  box-shadow: 0 12px 28px rgba(9,111,199,0.22);
}
.btn-primary:hover,
.form-submit:hover {
  background: linear-gradient(135deg, #075da9, var(--accent));
  box-shadow: 0 16px 36px rgba(9,111,199,0.28);
}
.contact-btn {
  background: linear-gradient(135deg, var(--accent2), #35bfae);
}
.btn-outline {
  border-color: rgba(9,111,199,0.28);
  color: var(--accent);
  background: rgba(255,255,255,0.42);
}
.btn-outline:hover {
  border-color: var(--accent);
  color: var(--accent);
  background: rgba(9,111,199,0.07);
}
.hero .btn-outline {
  color: #ffffff;
  background: rgba(255,255,255,0.04);
}
.hero .btn-outline:hover {
  color: #ffffff;
}
.tab-nav {
  border-bottom-color: rgba(146,164,184,0.5);
}
.tab-btn {
  color: #4b6176;
}
.tab-btn.active,
.tab-btn:hover {
  color: var(--accent);
  border-bottom-color: var(--accent2);
  background: linear-gradient(180deg, transparent, rgba(9,111,199,0.055));
}
.form-field input,
.form-field select,
.form-field textarea {
  background: #ffffff;
  border-color: rgba(146,164,184,0.7);
}
.form-field label,
.contact-item h4,
.location-tag,
.stat-desc,
.team-role {
  color: #4b6176;
}
.body-lg,
.body-sm,
.featured-item p,
.product-card p,
.team-bio,
.location-card p {
  color: #34485d;
}
.product-card h4,
.location-card h4,
.team-name,
.biz-title {
  color: var(--gray5);
}
.footer {
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.82);
}
.footer-col ul li a {
  text-underline-offset: 4px;
}
.footer-col ul li a:hover {
  text-decoration: underline;
}
.stats-bar .stat-item {
  background: transparent;
}
.stats-bar {
  background: rgba(255,255,255,0.96);
}

/* ===== UI FINAL TUNE ===== */
body {
  background:
    linear-gradient(180deg, #eef4fa 0%, #f6f9fc 34%, #edf3f8 100%);
}
.nav {
  background: rgba(6, 53, 100, 0.98);
  box-shadow: 0 10px 28px rgba(4,20,36,0.18);
}
.nav.scrolled {
  background: rgba(4, 43, 82, 0.99);
}
.nav-links a {
  position: relative;
  color: rgba(255,255,255,0.84);
}
.nav-links a.active,
.nav-links a:hover {
  color: #ffffff;
  background: rgba(255,255,255,0.16);
}
.nav-links a.active::after {
  content: '';
  position: absolute;
  left: 16px;
  right: 16px;
  bottom: 4px;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg, #ffffff, var(--accent2));
}
.hero-overlay {
  background:
    linear-gradient(to bottom, rgba(3,14,28,0.36) 0%, rgba(3,14,28,0.16) 38%, rgba(3,14,28,0.86) 100%),
    linear-gradient(90deg, rgba(2,10,22,0.88) 0%, rgba(5,26,48,0.58) 36%, rgba(4,18,34,0.18) 66%, rgba(4,18,34,0.42) 100%);
}
.hero-content {
  text-shadow: 0 8px 28px rgba(0,0,0,0.32);
}
.hero-content p {
  color: rgba(255,255,255,0.88);
}
.display-md,
.display-lg,
.heading-lg,
.heading-md {
  color: #071b30;
}
.page-hero .display-lg,
.page-hero .heading-lg,
.page-hero .heading-md {
  color: #ffffff;
}
.body-lg,
.body-sm,
.featured-item p,
.product-card p,
.team-bio,
.location-card p,
.biz-subtitle {
  color: #33495e;
}
.label,
.featured-tag,
.biz-tag {
  color: #0872c9;
}
.btn-primary,
.form-submit {
  color: #ffffff;
  background: linear-gradient(135deg, #096fc7, #0b82dc);
  border: 1px solid rgba(255,255,255,0.12);
  box-shadow: 0 14px 32px rgba(9,111,199,0.24);
}
.btn-primary:hover,
.form-submit:hover {
  background: linear-gradient(135deg, #075da9, #096fc7);
}
.btn-outline {
  color: #096fc7;
  background: rgba(255,255,255,0.72);
  border: 1px solid rgba(9,111,199,0.42);
}
.btn-outline:hover {
  color: #075da9;
  border-color: #096fc7;
  background: rgba(9,111,199,0.08);
}
.hero .btn-outline {
  color: #ffffff;
  background: rgba(255,255,255,0.06);
  border-color: rgba(255,255,255,0.48);
}
.stats-bar {
  background: rgba(255,255,255,0.98);
  border: 1px solid rgba(204,217,229,0.95);
  border-radius: 8px;
  box-shadow: 0 24px 62px rgba(7,27,48,0.16);
}
.stat-num {
  color: #06223d;
  font-weight: 400;
}
.stat-unit,
.stat-desc {
  color: #34485d;
}
.biz-card,
.product-card,
.featured-item,
.team-card,
.location-card,
.logo-item {
  border-color: rgba(204,217,229,0.8);
  border-radius: 8px;
  background: rgba(255,255,255,0.96);
  box-shadow: 0 10px 28px rgba(7,27,48,0.045);
}
.business-grid,
.featured-grid,
.product-grid,
.team-grid,
.location-grid,
.logo-grid {
  gap: 1px;
  background: transparent;
  border: 0;
  box-shadow: none;
}
.biz-card,
.product-card {
  cursor: pointer;
}
.biz-card:hover,
.product-card:hover,
.featured-item:hover,
.team-card:hover,
.location-card:hover,
.logo-item:hover {
  transform: translateY(-2px);
  box-shadow: 0 18px 44px rgba(7,27,48,0.09);
}
.img-placeholder,
.video-placeholder,
.featured-item-img,
.team-photo {
  border-radius: 8px;
  border: 1px solid rgba(186,205,222,0.86);
  background: #f5f8fb;
  box-shadow: 0 16px 38px rgba(7,27,48,0.08);
}
.media-fill,
.asset-carousel,
.asset-carousel-slides {
  border-radius: inherit;
}
.hero-video,
.hero-video .asset-carousel,
.hero-video .asset-carousel-slides,
.hero-video .media-fill {
  border-radius: 0;
}
.media-filled::after {
  border-radius: inherit;
}
.media-fill.contain {
  padding: 18px;
}
.media-video-filled {
  position: relative;
  overflow: hidden;
  background: #eef5fb;
  border-color: rgba(9,111,199,0.18);
  isolation: isolate;
}
.media-video-filled .media-fill,
.media-video-filled video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: inherit;
  pointer-events: none;
}
.media-video-filled::before {
  content: '';
  position: absolute;
  left: 18px;
  bottom: 18px;
  z-index: 5;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background:
    linear-gradient(135deg, rgba(255,255,255,0.96), rgba(230,246,255,0.92));
  border: 1px solid rgba(9,111,199,0.16);
  box-shadow: 0 10px 24px rgba(7,27,48,0.2);
  pointer-events: none;
}
.media-video-filled::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 3;
  border-radius: inherit;
  background:
    linear-gradient(to bottom, rgba(255,255,255,0), rgba(7,27,48,0.18)),
    linear-gradient(135deg, rgba(9,111,199,0.04), rgba(47,174,157,0.035));
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.24);
  pointer-events: none;
}
.media-video-filled .play-icon,
.media-video-filled .ph-label {
  display: none;
}
.media-video-filled video::-webkit-media-controls {
  display: none !important;
}
@media (max-width: 1100px) {
  .stats-bar { grid-template-columns: repeat(2, 1fr); }
  .stat-item:nth-child(2n)::after { display: none; }
  .business-grid { grid-template-columns: repeat(2, 1fr); }
  .biz-card:nth-child(2) { border-right: none; }
  .biz-card:nth-child(3) { border-top: 1px solid var(--mid); }
  .product-grid { grid-template-columns: repeat(2, 1fr); }
  .footer-grid { grid-template-columns: 1fr 1fr; }
  .team-grid { grid-template-columns: repeat(2, 1fr); }
  .logo-grid { grid-template-columns: repeat(3, 1fr); }
  .logo-item:nth-child(3n) { border-right: none; }
}

@media (max-width: 768px) {
  .nav-links, .nav-right { display: none; }
  .menu-toggle { display: flex; }
  .stats-bar { grid-template-columns: repeat(2, 1fr); margin-top: -44px; margin-bottom: 56px; }
  .business-grid { grid-template-columns: 1fr; }
  .biz-card { border-right: none; border-bottom: 1px solid var(--mid); }
  .featured-grid { grid-template-columns: 1fr; }
  .product-grid { grid-template-columns: 1fr; }
  .contact-grid { grid-template-columns: 1fr; }
  .team-grid { grid-template-columns: 1fr; }
  .timeline { grid-template-columns: 1fr 1fr; }
  .footer-grid { grid-template-columns: 1fr; }
  .location-grid { grid-template-columns: 1fr; }
  .logo-grid { grid-template-columns: repeat(2, 1fr); }
  .logo-item:nth-child(2n) { border-right: none; }
  .form-row { grid-template-columns: 1fr; }
  .stat-item { border-bottom: 1px solid var(--mid); }
}

/* ===== STATS BAR FLUSH + SHADOW TUNE =====
   统计条改为全宽，底部不留空隙，并加强阴影，形成轻微悬浮感。
*/
.stats-bar {
  width: 100vw;
  max-width: none;
  margin: -74px 0 0;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  position: relative;
  z-index: 12;
  border-left: 0;
  border-right: 0;
  border-radius: 0;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  background: rgba(255, 255, 255, 0.985);
  border-top: 1px solid rgba(218, 229, 239, 0.95);
  border-bottom: 1px solid rgba(198, 214, 229, 0.95);
  box-shadow:
    0 18px 42px rgba(7, 27, 48, 0.16),
    0 4px 14px rgba(9, 111, 199, 0.08);
}

.stats-bar .stat-item {
  padding: 36px clamp(28px, 5vw, 96px);
}

.stats-bar .stat-item:not(:last-child)::after {
  height: 42px;
  background: linear-gradient(180deg, transparent, rgba(9, 111, 199, 0.26), transparent);
}

@media (max-width: 1100px) {
  .stats-bar {
    grid-template-columns: repeat(2, 1fr);
  }

  .stats-bar .stat-item:nth-child(2n)::after {
    display: none;
  }
}

@media (max-width: 768px) {
  .stats-bar {
    margin-top: -44px;
    margin-bottom: 0;
    grid-template-columns: repeat(2, 1fr);
  }

  .stats-bar .stat-item {
    padding: 28px 24px;
  }
}

@media (max-width: 480px) {
  .stats-bar {
    grid-template-columns: 1fr;
  }

  .stats-bar .stat-item::after {
    display: none !important;
  }
}

/* ===== TIMELINE VISUAL TUNE =====
   发展历程模块仅做视觉优化：不改变现有两行四列布局与文字内容。
   优化点：浅灰蓝背景承托、白色卡片感、清晰分割线、年份强调、轻微 hover 悬浮。
*/
@supports selector(:has(*)) {
  .section:has(.timeline) {
    background:
      radial-gradient(circle at 12% 8%, rgba(9, 111, 199, 0.055), transparent 28%),
      linear-gradient(180deg, #f4f8fc 0%, #edf3f8 100%);
  }
}

.timeline {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
  margin-top: 48px;
  border: 1px solid rgba(204, 217, 229, 0.92);
  border-radius: 12px;
  overflow: hidden;
  background: rgba(255, 255, 255, 0.88);
  box-shadow:
    0 18px 48px rgba(7, 27, 48, 0.075),
    inset 0 1px 0 rgba(255, 255, 255, 0.82);
  backdrop-filter: blur(10px);
}

.timeline-item {
  position: relative;
  padding: 38px 32px;
  border-right: 1px solid rgba(204, 217, 229, 0.9);
  border-bottom: 1px solid rgba(204, 217, 229, 0.9);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(248, 251, 254, 0.88));
  transition: transform 0.25s ease, box-shadow 0.25s ease, background 0.25s ease;
}

.timeline-item:nth-child(4n) {
  border-right: none;
}

.timeline-item:nth-last-child(-n + 4) {
  border-bottom: none;
}

.timeline-item::before {
  content: '';
  position: absolute;
  left: 32px;
  top: 24px;
  width: 24px;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--accent), var(--accent2));
  opacity: 0.36;
  transition: opacity 0.25s ease, width 0.25s ease;
}

.timeline-item:hover {
  z-index: 2;
  transform: translateY(-2px);
  background: #ffffff;
  box-shadow: 0 16px 38px rgba(7, 27, 48, 0.09);
}

.timeline-item:hover::before {
  width: 38px;
  opacity: 0.82;
}

.tl-year {
  font-family: var(--font-display);
  font-size: 2.15rem;
  font-weight: 400;
  line-height: 1;
  color: #096fc7;
  margin-bottom: 14px;
  letter-spacing: 0.02em;
}

.tl-text {
  font-size: 0.82rem;
  color: #34485d;
  line-height: 1.8;
}

@media (max-width: 768px) {
  .timeline {
    grid-template-columns: repeat(2, 1fr);
  }

  .timeline-item {
    padding: 34px 26px;
  }

  .timeline-item:nth-child(4n) {
    border-right: 1px solid rgba(204, 217, 229, 0.9);
  }

  .timeline-item:nth-child(2n) {
    border-right: none;
  }

  .timeline-item:nth-last-child(-n + 4) {
    border-bottom: 1px solid rgba(204, 217, 229, 0.9);
  }

  .timeline-item:nth-last-child(-n + 2) {
    border-bottom: none;
  }

  .timeline-item::before {
    left: 26px;
  }
}

@media (max-width: 480px) {
  .timeline {
    grid-template-columns: 1fr;
  }

  .timeline-item,
  .timeline-item:nth-child(2n),
  .timeline-item:nth-child(4n) {
    border-right: none;
  }

  .timeline-item:nth-last-child(-n + 2) {
    border-bottom: 1px solid rgba(204, 217, 229, 0.9);
  }

  .timeline-item:last-child {
    border-bottom: none;
  }
}



/* ===== MP4 VIDEO DISPLAY FIX =====
   修复业务板块与首页 MP4 视频空白问题：保留原媒体卡片样式，允许视频正常显示与控制。
*/
.media-video-filled {
  position: relative;
  overflow: hidden;
  background: #eef5fb;
  border: 1px solid rgba(9,111,199,0.18);
  border-radius: 8px;
  box-shadow: 0 16px 38px rgba(7,27,48,0.08);
}

.media-video-filled .media-fill,
.media-video-filled video {
  display: block;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: inherit;
  pointer-events: auto;
  z-index: 1;
}

.media-video-filled::before,
.media-video-filled::after {
  display: none;
}

.media-video-filled .play-icon,
.media-video-filled .ph-label {
  display: none;
}

.media-video-filled video::-webkit-media-controls {
  display: flex !important;
}

/* ===== HOME STATS GAP / SEAM FIX =====
   修复首页统计条下方出现“透底色”的横向接缝：统一统计条与下方 section 背景，去掉底部重阴影与边框断层。
*/
.stats-bar {
  margin-bottom: -1px !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
  background: #ffffff !important;
}

.stats-bar + .section {
  margin-top: 0 !important;
  background: #ffffff !important;
}

.stats-bar + .section::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -4px;
  height: 8px;
  background: #ffffff;
  z-index: 1;
  pointer-events: none;
}

.stats-bar::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -4px;
  height: 8px;
  background: #ffffff;
  z-index: 3;
  pointer-events: none;
}

/* ===== HOME STATS POSITION TUNE =====
   将首页统计条下移到轮播图/首屏图下方，不再使用负 margin 压到图片区域内。
   保持全宽横条，同时处理与下方模块的接缝。
*/
.hero + .stats-bar,
.stats-bar {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  transform: none !important;
}

.stats-bar {
  width: 100vw !important;
  max-width: none !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  border-top: none !important;
  border-bottom: none !important;
  border-radius: 0 !important;
  background: #ffffff !important;
  box-shadow: none !important;
  position: relative;
  z-index: 4;
}

.stats-bar + .section {
  margin-top: 0 !important;
  background: #ffffff !important;
}

.stats-bar::after,
.stats-bar + .section::before {
  display: none !important;
}

@media (max-width: 768px) {
  .hero + .stats-bar,
  .stats-bar {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
}

/* ===== HOME STATS BELOW HERO + FLOAT SHADOW =====
   统计条保持在轮播图/首屏图下方，同时保留轻微悬浮阴影效果。
*/
.hero + .stats-bar,
.stats-bar {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  transform: none !important;
}

.stats-bar {
  width: 100vw !important;
  max-width: none !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  border-top: none !important;
  border-bottom: 1px solid rgba(198, 214, 229, 0.62) !important;
  border-radius: 0 !important;
  background: #ffffff !important;
  overflow: visible !important;
  position: relative;
  z-index: 8;
  box-shadow:
    0 16px 34px rgba(7, 27, 48, 0.10),
    0 4px 10px rgba(9, 111, 199, 0.045) !important;
}

.stats-bar + .section {
  margin-top: 0 !important;
  background: #ffffff !important;
}

.stats-bar::after,
.stats-bar + .section::before {
  display: none !important;
}

@media (max-width: 768px) {
  .hero + .stats-bar,
  .stats-bar {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    box-shadow: 0 10px 22px rgba(7, 27, 48, 0.08) !important;
  }
}


/* ===== HOME BUSINESS CARDS SHADOW DEEPEN ONLY =====
   仅加深首页“四大核心业务”卡片阴影，不改动布局、文字、颜色与其他模块。
*/
.hero + .stats-bar + .section .business-grid .biz-card {
  box-shadow:
    0 22px 56px rgba(7, 27, 48, 0.13),
    0 8px 20px rgba(9, 111, 199, 0.06) !important;
}

.hero + .stats-bar + .section .business-grid .biz-card:hover {
  box-shadow:
    0 30px 72px rgba(7, 27, 48, 0.18),
    0 10px 28px rgba(9, 111, 199, 0.08) !important;
}

/* ===== FOOTER BACKGROUND DEEPER TUNE =====
   仅加深尾页背景颜色，不改动布局、文字与其他模块。
*/
.footer {
  background:
    radial-gradient(circle at 8% 0%, rgba(255, 255, 255, 0.45), transparent 32%),
    linear-gradient(180deg, #d9e1e8 0%, #cbd6df 100%) !important;
  border-top: 1px solid #b8c5d1 !important;
}

/* ===== SPORTS TAB MEDIA DISPLAY FIX =====
   修复业务板块“体育”模块下方手机截图显示不全：只调整体育 tab 的下方媒体容器高度与截图适配方式，不影响其他模块。
*/
#tab-sports .video-placeholder,
#tab-sports .asset-carousel-grid {
  height: 300px !important;
}

#tab-sports .asset-carousel-grid .asset-carousel-slides {
  inset: 16px 16px 46px !important;
}

#tab-sports .app-collage-slide {
  align-items: stretch;
}

#tab-sports .app-collage-slide .carousel-img {
  object-fit: contain !important;
  object-position: center center !important;
  background: #ffffff !important;
}

@media (max-width: 768px) {
  #tab-sports .video-placeholder,
  #tab-sports .asset-carousel-grid {
    height: 260px !important;
  }
}

/* ===== ABOUT PAGE BACKGROUND CONSISTENCY FIX =====
   关于我们页：发展历程、核心团队、荣誉与资质背景统一为公司简介同款浅色，
   仅增加轻微阴影，保持空间感，不影响其他页面。
*/

/* 关于我们页各内容区统一为公司简介同款白色背景 */
.page-about .section {
  background: #ffffff !important;
}

/* 分割线弱化，避免模块割裂感过强 */
.page-about .divider {
  background: linear-gradient(
    90deg,
    transparent,
    rgba(198, 214, 229, 0.7),
    transparent
  ) !important;
}

/* 发展历程卡片 */
.page-about .timeline-item {
  background: rgba(255, 255, 255, 0.98) !important;
  border: 1px solid rgba(204, 217, 229, 0.85) !important;
  border-radius: 8px !important;
  box-shadow:
    0 10px 26px rgba(7, 27, 48, 0.045),
    0 2px 8px rgba(9, 111, 199, 0.025) !important;
}

/* 核心团队卡片 */
.page-about .team-card {
  background: rgba(255, 255, 255, 0.98) !important;
  border: 1px solid rgba(204, 217, 229, 0.85) !important;
  box-shadow:
    0 10px 26px rgba(7, 27, 48, 0.045),
    0 2px 8px rgba(9, 111, 199, 0.025) !important;
}

/* 荣誉与资质外层容器：覆盖原本的深色分隔背景 */
.page-about section:nth-of-type(5) .scroll-reveal[style*="grid-template-columns"] {
  background: transparent !important;
  gap: 16px !important;
}

/* 荣誉与资质卡片：覆盖 HTML 内联 background:var(--dark) */
.page-about section:nth-of-type(5) .scroll-reveal[style*="grid-template-columns"] > div {
  background: rgba(255, 255, 255, 0.98) !important;
  border: 1px solid rgba(204, 217, 229, 0.85) !important;
  border-radius: 8px !important;
  box-shadow:
    0 10px 26px rgba(7, 27, 48, 0.045),
    0 2px 8px rgba(9, 111, 199, 0.025) !important;
}

/* 轻微悬浮反馈，阴影不加重过多 */
.page-about .timeline-item:hover,
.page-about .team-card:hover,
.page-about section:nth-of-type(5) .scroll-reveal[style*="grid-template-columns"] > div:hover {
  transform: translateY(-2px);
  box-shadow:
    0 14px 34px rgba(7, 27, 48, 0.07),
    0 4px 12px rgba(9, 111, 199, 0.035) !important;
  transition: 0.25s ease;
}

/* ===== CONTACT PAGE MAP BACKGROUND FIX =====
   联系我们页：让全国分支机构地图图片区域背景与上方页面背景保持一致。
   只影响 contact.html 的地图图片区域，不影响其他页面。
*/
.page-contact .img-placeholder.media-filled {
  background: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
}

.page-contact .img-placeholder.media-filled::before,
.page-contact .img-placeholder.media-filled::after {
  display: none !important;
}

.page-contact .img-placeholder.media-filled .media-fill.contain {
  padding: 0 !important;
  object-fit: contain !important;
}

/* ===== FOOTER BOTTOM SEPARATOR LINE FIX =====
   尾页版权信息上方增加清晰但不突兀的横线，与上方栏目内容隔开。
*/
.footer-bottom {
  margin-top: 24px !important;
  padding-top: 24px !important;
  border-top: 1px solid #b9c8d6 !important;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 16px;
}

/* ===== HUAWEI-LIKE WIDER CONTENT FINAL =====
   调整目标：
   1. 参考华为官网：背景全宽，内容区居中铺开，不贴边，也不锁死窄宽度；
   2. 相比上一版，内容区明显放大，减少左右留白；
   3. PC / 平板 / 手机 / 安卓 / iOS 都保留安全边距；
   4. 图片和视频按比例自适应，不拉伸变形。
*/

:root {
  --site-safe-left: env(safe-area-inset-left, 0px);
  --site-safe-right: env(safe-area-inset-right, 0px);

  /* PC 内容边距：比上一版更小，内容更大；但仍保留华为式居中呼吸感 */
  --site-gutter-pc: clamp(48px, 5.8vw, 180px);
  --site-gutter-tablet: 24px;
  --site-gutter-mobile: 16px;

  /* 内容最大宽度放大，避免大屏下仍显得窄 */
  --site-content-max: 2160px;
}

html,
body {
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: hidden !important;
}

/* 主体内容区：自适应变宽，最多到 2160px */
.container {
  width: min(
    calc(100% - (var(--site-gutter-pc) * 2) - var(--site-safe-left) - var(--site-safe-right)),
    var(--site-content-max)
  ) !important;
  max-width: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* section 背景全宽，左右由 container 控制，避免双重边距 */
.section {
  padding: 96px 0 !important;
}

.section-sm {
  padding: 60px 0 !important;
}

.page-hero {
  padding: 160px 0 80px !important;
}

.footer {
  padding: 64px 0 32px !important;
}

/* 顶部导航参考华为：不贴边，但比正文更收一点 */
.nav {
  padding-left: calc(clamp(24px, 4vw, 72px) + var(--site-safe-left)) !important;
  padding-right: calc(clamp(24px, 4vw, 72px) + var(--site-safe-right)) !important;
}

.mobile-menu {
  padding-left: calc(var(--site-gutter-pc) + var(--site-safe-left)) !important;
  padding-right: calc(var(--site-gutter-pc) + var(--site-safe-right)) !important;
}

/* 首页首屏文案跟随正文边距 */
.hero-content {
  left: calc(var(--site-gutter-pc) + var(--site-safe-left)) !important;
  right: calc(var(--site-gutter-pc) + var(--site-safe-right)) !important;
}

/* 分割线跟随主体内容宽度 */
.divider {
  width: min(
    calc(100% - (var(--site-gutter-pc) * 2) - var(--site-safe-left) - var(--site-safe-right)),
    var(--site-content-max)
  ) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* 首屏大图保持全宽 */
.hero {
  width: 100% !important;
}

.hero-video {
  width: 100% !important;
  height: calc(100vh - 64px) !important;
  aspect-ratio: auto !important;
}

/* 统计条保持横向信息条，不使用 100vw 负边距，避免横向滚动 */
.stats-bar {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  border-radius: 0 !important;
}

/* 首页业务卡片保持克制高度，避免变成过高大白块 */
.business-grid {
  gap: 1px !important;
}

.biz-card {
  min-height: 260px;
}

/* 图片、视频本体不变形 */
img,
video,
.media-fill,
.carousel-img {
  max-width: 100% !important;
}

.media-fill,
.carousel-img {
  object-fit: cover;
}

.media-fill.contain,
.carousel-img.contain {
  object-fit: contain !important;
}

/* 普通媒体容器按比例自适应，避免只变宽不变高 */
.img-placeholder:not(.hero-video),
.video-placeholder:not(.hero-video),
.featured-item-img {
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: 16 / 9;
}

/* 业务板块右侧图/视频统一 16:9 */
.tab-panel > .scroll-reveal:first-child > div:last-child > .img-placeholder,
.tab-panel > .scroll-reveal:first-child > div:last-child > .video-placeholder,
.featured-item .img-placeholder,
.featured-item .video-placeholder,
.featured-item-img {
  aspect-ratio: 16 / 9 !important;
}

/* 关于我们团队照片保持人物比例 */
.page-about .team-photo,
.page-about .team-photo.img-placeholder {
  height: auto !important;
  aspect-ratio: 4 / 3 !important;
}

/* 联系我们地图保持横向比例 */
.page-contact .img-placeholder.media-filled {
  height: auto !important;
  aspect-ratio: 3.2 / 1 !important;
}

/* 体育 APP 截图完整展示 */
#tab-sports .video-placeholder,
#tab-sports .asset-carousel-grid {
  height: auto !important;
  aspect-ratio: 16 / 7 !important;
}

#tab-sports .app-collage-slide .carousel-img {
  object-fit: contain !important;
  object-position: center center !important;
}

/* 平板：保留安全边距，重点模块降列 */
@media (max-width: 1024px) {
  :root {
    --site-content-max: none;
  }

  .container {
    width: calc(100% - (var(--site-gutter-tablet) * 2) - var(--site-safe-left) - var(--site-safe-right)) !important;
  }

  .nav,
  .mobile-menu {
    padding-left: calc(var(--site-gutter-tablet) + var(--site-safe-left)) !important;
    padding-right: calc(var(--site-gutter-tablet) + var(--site-safe-right)) !important;
  }

  .hero-content {
    left: calc(var(--site-gutter-tablet) + var(--site-safe-left)) !important;
    right: calc(var(--site-gutter-tablet) + var(--site-safe-right)) !important;
  }

  .divider {
    width: calc(100% - (var(--site-gutter-tablet) * 2) - var(--site-safe-left) - var(--site-safe-right)) !important;
  }

  .tab-panel > .scroll-reveal:first-child,
  .contact-grid {
    grid-template-columns: 1fr !important;
    gap: 36px !important;
  }

  .featured-grid,
  .product-grid,
  .team-grid,
  .location-grid,
  .business-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .logo-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  .biz-card {
    min-height: 240px;
  }
}

/* 手机：16px 安全边距，单列展示 */
@media (max-width: 768px) {
  .container {
    width: calc(100% - (var(--site-gutter-mobile) * 2) - var(--site-safe-left) - var(--site-safe-right)) !important;
  }

  .section {
    padding-top: 64px !important;
    padding-bottom: 64px !important;
  }

  .section-sm {
    padding-top: 40px !important;
    padding-bottom: 40px !important;
  }

  .page-hero {
    padding-top: 120px !important;
    padding-bottom: 64px !important;
  }

  .footer {
    padding-top: 48px !important;
    padding-bottom: 28px !important;
  }

  .nav,
  .mobile-menu {
    padding-left: calc(var(--site-gutter-mobile) + var(--site-safe-left)) !important;
    padding-right: calc(var(--site-gutter-mobile) + var(--site-safe-right)) !important;
  }

  .hero-content {
    left: calc(var(--site-gutter-mobile) + var(--site-safe-left)) !important;
    right: calc(var(--site-gutter-mobile) + var(--site-safe-right)) !important;
    max-width: none !important;
  }

  .divider {
    width: calc(100% - (var(--site-gutter-mobile) * 2) - var(--site-safe-left) - var(--site-safe-right)) !important;
  }

  .business-grid,
  .featured-grid,
  .product-grid,
  .team-grid,
  .location-grid,
  .contact-grid,
  .tab-panel > .scroll-reveal:first-child,
  .footer-grid {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }

  .logo-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .timeline {
    grid-template-columns: 1fr !important;
  }

  .biz-card {
    min-height: auto;
  }

  .img-placeholder:not(.hero-video),
  .video-placeholder:not(.hero-video),
  .featured-item-img {
    aspect-ratio: 16 / 10 !important;
  }

  .page-contact .img-placeholder.media-filled,
  #tab-sports .video-placeholder,
  #tab-sports .asset-carousel-grid {
    aspect-ratio: 16 / 9 !important;
  }
}

@media (max-width: 480px) {
  .logo-grid,
  .stats-bar {
    grid-template-columns: 1fr !important;
  }

  .display-xl {
    font-size: clamp(2.4rem, 12vw, 3.2rem) !important;
  }

  .display-lg {
    font-size: clamp(2rem, 10vw, 2.8rem) !important;
  }

  .display-md {
    font-size: clamp(1.6rem, 8vw, 2.2rem) !important;
  }
}

/* ===== MOBILE / TABLET PROPORTIONAL SHRINK FIX =====
   修正说明：
   上一版主要解决 PC 大屏留白，但手机端不应该简单把内容变成单列后继续保持大卡片、大内边距。
   这一段专门处理手机和平板：整体等比缩小、减少卡片内边距、降低图片高度、控制首屏高度。
*/

/* 平板端：内容略缩小，避免卡片和图片过大 */
@media (max-width: 1024px) {
  .section {
    padding-top: 72px !important;
    padding-bottom: 72px !important;
  }

  .section-sm {
    padding-top: 48px !important;
    padding-bottom: 48px !important;
  }

  .page-hero {
    padding-top: 128px !important;
    padding-bottom: 64px !important;
  }

  .featured-item {
    padding: 36px 32px !important;
  }

  .biz-card,
  .product-card,
  .team-card,
  .location-card {
    padding: 32px 26px !important;
  }

  .logo-item {
    padding: 24px 18px !important;
  }

  .featured-item-img,
  .featured-item .img-placeholder,
  .featured-item .video-placeholder,
  .tab-panel > .scroll-reveal:first-child > div:last-child > .img-placeholder,
  .tab-panel > .scroll-reveal:first-child > div:last-child > .video-placeholder {
    aspect-ratio: 16 / 9 !important;
  }
}

/* 手机端：整体缩小，而不是简单放成一整块大内容 */
@media (max-width: 768px) {
  body {
    font-size: 15px !important;
  }

  .section {
    padding-top: 52px !important;
    padding-bottom: 52px !important;
  }

  .section-sm {
    padding-top: 36px !important;
    padding-bottom: 36px !important;
  }

  .page-hero {
    padding-top: 104px !important;
    padding-bottom: 48px !important;
  }

  /* 首页首屏在手机端不要占满一整屏太高 */
  .hero {
    min-height: auto !important;
  }

  .hero-video {
    height: 62vh !important;
    min-height: 420px !important;
    max-height: 620px !important;
  }

  .hero-content {
    bottom: 42px !important;
    max-width: calc(100% - 32px) !important;
  }

  .hero-content p {
    font-size: 0.9rem !important;
    line-height: 1.65 !important;
    margin-bottom: 22px !important;
  }

  .hero-actions {
    gap: 10px !important;
  }

  .btn-primary,
  .btn-outline {
    padding: 10px 20px !important;
    font-size: 0.8rem !important;
  }

  /* 卡片内边距缩小，避免手机端显得巨大 */
  .featured-item {
    padding: 24px 20px !important;
  }

  .biz-card,
  .product-card,
  .team-card,
  .location-card {
    padding: 24px 20px !important;
  }

  .logo-item {
    min-height: 68px !important;
    padding: 18px 14px !important;
  }

  .stat-item {
    padding: 22px 18px !important;
  }

  .stat-num {
    font-size: 2.1rem !important;
  }

  .stat-desc {
    font-size: 0.7rem !important;
  }

  .biz-num {
    font-size: 2.4rem !important;
    margin-bottom: 16px !important;
  }

  .biz-title {
    font-size: 1.25rem !important;
  }

  .biz-subtitle,
  .featured-item p,
  .product-card p,
  .team-bio,
  .location-card p {
    font-size: 0.8rem !important;
    line-height: 1.6 !important;
  }

  /* 图片 / 视频高度按手机比例收缩，不再使用 16:10 放得太高 */
  .img-placeholder:not(.hero-video),
  .video-placeholder:not(.hero-video),
  .featured-item-img,
  .featured-item .img-placeholder,
  .featured-item .video-placeholder,
  .tab-panel > .scroll-reveal:first-child > div:last-child > .img-placeholder,
  .tab-panel > .scroll-reveal:first-child > div:last-child > .video-placeholder {
    height: auto !important;
    aspect-ratio: 16 / 9 !important;
  }

  .featured-item-img {
    margin-bottom: 20px !important;
  }

  /* 联系我们地图手机端不要太高 */
  .page-contact .img-placeholder.media-filled {
    aspect-ratio: 16 / 8 !important;
  }

  /* 体育 APP 截图区域手机端适当缩小 */
  #tab-sports .video-placeholder,
  #tab-sports .asset-carousel-grid {
    aspect-ratio: 16 / 9 !important;
  }

  #tab-sports .asset-carousel-grid {
    padding: 10px !important;
  }

  #tab-sports .asset-carousel-grid .asset-carousel-slides {
    inset: 10px 10px 36px !important;
  }

  .app-collage-slide {
    gap: 6px !important;
  }

  /* 标签和标题间距收紧 */
  .section-label {
    margin-bottom: 14px !important;
  }

  .display-md {
    margin-bottom: 20px !important;
  }

  .tab-nav {
    margin-bottom: 28px !important;
  }

  .tab-btn {
    padding: 12px 18px !important;
    font-size: 0.78rem !important;
  }

  .footer-grid {
    gap: 24px !important;
    margin-bottom: 36px !important;
  }

  .footer-bottom {
    padding-top: 18px !important;
  }
}

/* 超小屏：进一步缩小图片高度和留白 */
@media (max-width: 480px) {
  .section {
    padding-top: 44px !important;
    padding-bottom: 44px !important;
  }

  .hero-video {
    height: 58vh !important;
    min-height: 380px !important;
  }

  .featured-item,
  .biz-card,
  .product-card,
  .team-card,
  .location-card {
    padding: 20px 16px !important;
  }

  .img-placeholder:not(.hero-video),
  .video-placeholder:not(.hero-video),
  .featured-item-img {
    aspect-ratio: 16 / 9 !important;
  }

  .stats-bar {
    grid-template-columns: 1fr !important;
  }

  .logo-grid {
    grid-template-columns: 1fr !important;
  }
}

/* ========================================================================
   FINAL: 整体等比缩放适配层
   说明：
   1. 页面以 1440px 桌面设计稿为基准宽度；
   2. JS 根据浏览器宽度自动计算 scale，并给 .yh-scale-page 做 transform: scale；
   3. 下方规则用于抵消旧版 @media 中的移动端重排，保持电脑、平板、手机为同一套版式；
   4. 不再在手机端改成单列、不隐藏桌面导航、不单独放大/缩小某个模块字体。
   ======================================================================== */
:root {
  --yh-design-width: 1440px;
  --yh-safe-gutter: 0px;
  --yh-scale: 1;
}

html {
  min-width: 0 !important;
  font-size: 16px !important;
}

body.yh-scale-enabled {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  overflow-x: hidden !important;
  font-size: 16px !important;
}

.yh-scale-stage {
  position: relative;
  width: 100%;
  min-height: 100vh;
  overflow: visible;
}

.yh-scale-page {
  width: var(--yh-design-width) !important;
  max-width: none !important;
  min-width: var(--yh-design-width) !important;
  transform-origin: top left;
  will-change: transform;
}

body.yh-scale-enabled .container {
  width: 1280px !important;
  max-width: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body.yh-scale-enabled .section {
  padding: 100px 0 !important;
}

body.yh-scale-enabled .section-sm {
  padding: 60px 0 !important;
}

body.yh-scale-enabled .page-hero {
  padding: 160px 0 80px !important;
}

body.yh-scale-enabled .footer {
  padding: 64px 0 32px !important;
}

body.yh-scale-enabled .divider {
  width: 1280px !important;
  max-width: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* 固定桌面端文字层级，再由整体 scale 统一缩放 */
body.yh-scale-enabled .display-xl {
  font-size: 6.3rem !important;
  line-height: 1.05 !important;
}

body.yh-scale-enabled .display-lg {
  font-size: 3.6rem !important;
  line-height: 1.1 !important;
}

body.yh-scale-enabled .display-md {
  font-size: 2.7rem !important;
  line-height: 1.2 !important;
}

body.yh-scale-enabled .heading-lg {
  font-size: 1.8rem !important;
}

body.yh-scale-enabled .body-lg {
  font-size: 1rem !important;
  line-height: 1.75 !important;
}

body.yh-scale-enabled .btn-primary,
body.yh-scale-enabled .btn-outline {
  padding: 12px 28px !important;
  font-size: 0.85rem !important;
}

/* 导航保持桌面版横向结构，不在移动端切换为汉堡菜单 */
body.yh-scale-enabled .nav {
  left: 0 !important;
  right: 0 !important;
  width: auto !important;
  height: 64px !important;
  padding: 0 56px !important;
}

body.yh-scale-enabled .nav-links,
body.yh-scale-enabled .nav-right {
  display: flex !important;
}

body.yh-scale-enabled .menu-toggle,
body.yh-scale-enabled .mobile-menu,
body.yh-scale-enabled .mobile-menu.open {
  display: none !important;
}

/* 首屏高度固定为桌面设计稿高度，避免手机端 100vh 改变纵向比例 */
body.yh-scale-enabled .hero {
  min-height: 900px !important;
  height: 900px !important;
  padding-top: 64px !important;
}

body.yh-scale-enabled .hero-video {
  width: 100% !important;
  height: 836px !important;
  min-height: 0 !important;
  max-height: none !important;
  aspect-ratio: auto !important;
}

body.yh-scale-enabled .hero-overlay {
  top: 64px !important;
}

body.yh-scale-enabled .hero-content {
  left: 80px !important;
  right: auto !important;
  bottom: 80px !important;
  max-width: 700px !important;
}

body.yh-scale-enabled .hero-content p {
  font-size: 1rem !important;
  line-height: 1.8 !important;
  margin-bottom: 32px !important;
}

/* 所有核心网格强制保留桌面列数 */
body.yh-scale-enabled .stats-bar {
  width: 100% !important;
  max-width: none !important;
  margin: -74px 0 78px !important;
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
}

body.yh-scale-enabled .stat-item {
  padding: 36px 32px !important;
  border-bottom: none !important;
}

body.yh-scale-enabled .stat-item::after {
  display: block !important;
}

body.yh-scale-enabled .stat-item:last-child::after {
  display: none !important;
}

body.yh-scale-enabled .stat-num {
  font-size: 2.8rem !important;
}

body.yh-scale-enabled .stat-desc {
  font-size: 0.78rem !important;
}

body.yh-scale-enabled .business-grid {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 0 !important;
}

body.yh-scale-enabled .biz-card {
  min-height: 260px !important;
  padding: 48px 32px !important;
  border-right: 1px solid var(--mid) !important;
  border-bottom: none !important;
}

body.yh-scale-enabled .biz-card:last-child {
  border-right: none !important;
}

body.yh-scale-enabled .biz-num {
  font-size: 3.5rem !important;
  margin-bottom: 24px !important;
}

body.yh-scale-enabled .biz-title {
  font-size: 1.5rem !important;
}

body.yh-scale-enabled .biz-subtitle {
  font-size: 0.78rem !important;
  line-height: 1.6 !important;
}

body.yh-scale-enabled .featured-grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 1px !important;
}

body.yh-scale-enabled .featured-item {
  padding: 56px 48px !important;
}

body.yh-scale-enabled .featured-item p {
  font-size: 0.85rem !important;
  line-height: 1.7 !important;
}

body.yh-scale-enabled .product-grid {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 1px !important;
}

body.yh-scale-enabled .product-card {
  padding: 40px 32px !important;
}

body.yh-scale-enabled .product-card p {
  font-size: 0.82rem !important;
  line-height: 1.6 !important;
}

body.yh-scale-enabled .logo-grid {
  display: grid !important;
  grid-template-columns: repeat(6, 1fr) !important;
}

body.yh-scale-enabled .logo-item {
  min-height: 80px !important;
  padding: 32px 24px !important;
  border-right: 1px solid var(--mid) !important;
}

body.yh-scale-enabled .logo-item:nth-child(6n) {
  border-right: none !important;
}

body.yh-scale-enabled .team-grid {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 1px !important;
}

body.yh-scale-enabled .team-card {
  padding: 40px 28px !important;
}

body.yh-scale-enabled .team-bio {
  font-size: 0.78rem !important;
  line-height: 1.65 !important;
}

body.yh-scale-enabled .contact-grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 80px !important;
}

body.yh-scale-enabled .form-row {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
}

body.yh-scale-enabled .footer-grid {
  display: grid !important;
  grid-template-columns: 2fr 1fr 1fr 1fr 1fr !important;
  gap: 48px !important;
  margin-bottom: 64px !important;
}

body.yh-scale-enabled .footer-bottom {
  padding-top: 28px !important;
}

body.yh-scale-enabled .timeline {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
}

body.yh-scale-enabled .location-grid {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 1px !important;
}

body.yh-scale-enabled .location-card {
  padding: 36px 32px !important;
}

body.yh-scale-enabled .tab-panel > .scroll-reveal:first-child {
  grid-template-columns: 1fr 1fr !important;
}

body.yh-scale-enabled .tab-nav {
  margin-bottom: 48px !important;
  overflow-x: visible !important;
}

body.yh-scale-enabled .tab-btn {
  padding: 16px 28px !important;
  font-size: 0.82rem !important;
}

/* 图片和视频保持比例，不受旧移动端 aspect-ratio 规则影响 */
body.yh-scale-enabled img,
body.yh-scale-enabled video,
body.yh-scale-enabled .media-fill,
body.yh-scale-enabled .carousel-img {
  max-width: 100% !important;
  object-fit: cover;
}

body.yh-scale-enabled .media-fill.contain,
body.yh-scale-enabled .carousel-img.contain {
  object-fit: contain !important;
}

body.yh-scale-enabled .img-placeholder,
body.yh-scale-enabled .video-placeholder,
body.yh-scale-enabled .featured-item-img {
  min-height: 0 !important;
  aspect-ratio: auto !important;
}

body.yh-scale-enabled .featured-item-img {
  margin-bottom: 32px !important;
}

body.yh-scale-enabled #tab-sports .asset-carousel-grid {
  padding: 16px !important;
}

body.yh-scale-enabled #tab-sports .asset-carousel-grid .asset-carousel-slides {
  inset: 16px 16px 46px !important;
}

body.yh-scale-enabled .app-collage-slide {
  gap: 10px !important;
}

/* ===== 首页：统计条与“四大核心业务”之间去掉空隙 ===== */
body.page-index .stats-bar + .section {
  padding-top: 0;
}

/* ===== 最终修正：去掉页面左侧及尾页外侧空隙 =====
   说明：
   - 外层不再预留 20px 安全边距，整张设计稿从浏览器左边缘开始等比缩放；
   - 页面尾部 footer 同样跟随整页贴边，不再出现左侧白边；
   - 内容本身仍保留桌面设计稿中的内部留白，版式比例不变。
*/
:root {
  --yh-safe-gutter: 0px;
}

html,
body,
body.yh-scale-enabled,
.yh-scale-stage {
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.yh-scale-page {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

body.yh-scale-enabled .footer {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* ===== 最终强制修正：统计条后方不留空隙 =====
   说明：
   - 旧样式中 body.yh-scale-enabled .section 使用了 padding:100px 0 !important；
   - stats-bar 也使用过 margin: -74px 0 78px !important；
   - 因此只写普通 .stats-bar + .section 有时会被旧规则影响。
   - 这里配合 main.js 给统计条后的 section 加 section-after-stats 类，并用更高优先级强制压住。
*/
body.yh-scale-enabled .stats-bar {
  margin-bottom: 0 !important;
}

body.yh-scale-enabled .section.section-after-stats {
  padding-top: 48px !important;
  margin-top: 0 !important;
}

body.yh-scale-enabled .section.section-after-stats > .container {
  padding-top: 0 !important;
}


/* ===== 微调：统计条与下方标题保留舒适距离 =====
   去掉原来的大空白，但不让 Business Segments / Group Companies 贴得太近。
*/
body.yh-scale-enabled .section.section-after-stats {
  padding-top: 48px !important;
  margin-top: 0 !important;
}

body.yh-scale-enabled .section.section-after-stats > .container {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

/* ===== 最终补丁：产品页光伏图铺满框，业务页体育轮播完整显示 =====
   1）产品方案 > 光伏类：图片充满外框，不再使用 contain 留白；
   2）业务板块 > 体育：下方截图轮播按 4 列完整展示，避免右侧被裁、单张截图不完整。
*/

/* 产品页：光伏类主图充满外框 */
.page-products #p-solar .img-placeholder.media-filled {
  overflow: hidden !important;
  background: #eef5fb !important;
}

.page-products #p-solar .img-placeholder.media-filled .media-fill,
.page-products #p-solar .img-placeholder.media-filled .media-fill.contain,
body.yh-scale-enabled.page-products #p-solar .img-placeholder.media-filled .media-fill,
body.yh-scale-enabled.page-products #p-solar .img-placeholder.media-filled .media-fill.contain {
  width: 100% !important;
  height: 100% !important;
  padding: 0 !important;
  object-fit: cover !important;
  object-position: center center !important;
  border-radius: inherit !important;
}

/* 业务板块：体育轮播区域显示完整 */
.page-business #tab-sports .asset-carousel-grid,
body.yh-scale-enabled.page-business #tab-sports .asset-carousel-grid {
  padding: 12px !important;
  height: 240px !important;
  aspect-ratio: auto !important;
  overflow: hidden !important;
}

.page-business #tab-sports .asset-carousel-grid .asset-carousel-slides,
body.yh-scale-enabled.page-business #tab-sports .asset-carousel-grid .asset-carousel-slides {
  inset: 12px 12px 40px !important;
}

.page-business #tab-sports .asset-carousel-slide,
body.yh-scale-enabled.page-business #tab-sports .asset-carousel-slide {
  overflow: hidden !important;
}

.page-business #tab-sports .app-collage-slide,
body.yh-scale-enabled.page-business #tab-sports .app-collage-slide {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  align-items: stretch !important;
  width: 100% !important;
  box-sizing: border-box !important;
  gap: 8px !important;
}

.page-business #tab-sports .app-collage-slide .carousel-img,
body.yh-scale-enabled.page-business #tab-sports .app-collage-slide .carousel-img {
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  padding: 4px !important;
  box-sizing: border-box !important;
  object-fit: contain !important;
  object-position: center center !important;
  background: #ffffff !important;
  border-radius: 6px !important;
  overflow: hidden !important;
}

/* ===== 精修补丁：光伏图更满，体育轮播更均衡 =====
   - 光伏类主图：去掉内部留白，轻微放大，保证框内铺满；
   - 体育轮播：提升容器高度、压缩内边距，让四张图更大、更均衡、显示更完整。
*/

/* 产品方案 > 光伏类：图片铺满并居中 */
.page-products #p-solar .img-placeholder.media-filled {
  padding: 0 !important;
  overflow: hidden !important;
}

.page-products #p-solar .img-placeholder.media-filled .media-fill,
body.yh-scale-enabled.page-products #p-solar .img-placeholder.media-filled .media-fill {
  width: 100% !important;
  height: 100% !important;
  padding: 0 !important;
  object-fit: cover !important;
  object-position: center center !important;
  transform: scale(1.025) !important;
  transform-origin: center center !important;
}

/* 业务板块 > 体育：轮播框更高，内部留白更少 */
.page-business #tab-sports .asset-carousel-grid,
body.yh-scale-enabled.page-business #tab-sports .asset-carousel-grid {
  height: 280px !important;
  padding: 8px !important;
  aspect-ratio: auto !important;
  overflow: hidden !important;
}

/* 给底部圆点留空间，同时把图片区尽量放大 */
.page-business #tab-sports .asset-carousel-grid .asset-carousel-slides,
body.yh-scale-enabled.page-business #tab-sports .asset-carousel-grid .asset-carousel-slides {
  inset: 8px 8px 30px !important;
}

/* 四张图均分，不挤压、不溢出 */
.page-business #tab-sports .app-collage-slide,
body.yh-scale-enabled.page-business #tab-sports .app-collage-slide {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  align-items: stretch !important;
  gap: 6px !important;
  width: 100% !important;
  height: 100% !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

/* 单张截图完整显示，缩小白边 */
.page-business #tab-sports .app-collage-slide .carousel-img,
body.yh-scale-enabled.page-business #tab-sports .app-collage-slide .carousel-img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  padding: 2px !important;
  box-sizing: border-box !important;
  object-fit: contain !important;
  object-position: center center !important;
  background: #ffffff !important;
  border-radius: 5px !important;
  border: 1px solid rgba(29,120,200,0.10) !important;
}

/* 轮播控制点下移并缩小，避免压到图片 */
.page-business #tab-sports .asset-carousel-dots,
body.yh-scale-enabled.page-business #tab-sports .asset-carousel-dots {
  bottom: 8px !important;
  padding: 4px 6px !important;
}

.page-business #tab-sports .asset-carousel-dot,
body.yh-scale-enabled.page-business #tab-sports .asset-carousel-dot {
  width: 18px !important;
  height: 3px !important;
}

.page-business #tab-sports .asset-carousel-dot.active,
body.yh-scale-enabled.page-business #tab-sports .asset-carousel-dot.active {
  width: 34px !important;
}

/* ===== 最终修正：业务板块体育轮播图完整显示 =====
   业务板块 > 体育：下方 APP 轮播图以前高度不够，导致长图底部被裁。
   这里把轮播框高度加大，并强制每张图使用 contain 完整展示。
*/
.page-business #tab-sports .asset-carousel-grid,
body.yh-scale-enabled.page-business #tab-sports .asset-carousel-grid {
  height: 420px !important;
  min-height: 420px !important;
  padding: 10px !important;
  aspect-ratio: auto !important;
  overflow: hidden !important;
}

.page-business #tab-sports .asset-carousel-grid .asset-carousel-slides,
body.yh-scale-enabled.page-business #tab-sports .asset-carousel-grid .asset-carousel-slides {
  inset: 10px 10px 42px !important;
  overflow: hidden !important;
}

.page-business #tab-sports .app-collage-slide,
body.yh-scale-enabled.page-business #tab-sports .app-collage-slide {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  grid-template-rows: 1fr !important;
  gap: 10px !important;
  width: 100% !important;
  height: 100% !important;
  align-items: stretch !important;
  justify-items: stretch !important;
  overflow: hidden !important;
}

.page-business #tab-sports .app-collage-slide .media-fill.carousel-img,
.page-business #tab-sports .app-collage-slide .media-fill.carousel-img.contain,
body.yh-scale-enabled.page-business #tab-sports .app-collage-slide .media-fill.carousel-img,
body.yh-scale-enabled.page-business #tab-sports .app-collage-slide .media-fill.carousel-img.contain {
  position: relative !important;
  inset: auto !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: 100% !important;
  min-width: 0 !important;
  padding: 0 !important;
  object-fit: contain !important;
  object-position: center center !important;
  background: #ffffff !important;
  border-radius: 6px !important;
  border: 1px solid rgba(29,120,200,0.10) !important;
  box-sizing: border-box !important;
}

/* 底部控制点避开图片，不遮挡内容 */
.page-business #tab-sports .asset-carousel-dots,
body.yh-scale-enabled.page-business #tab-sports .asset-carousel-dots {
  bottom: 8px !important;
  padding: 4px 6px !important;
}

.page-business #tab-sports .asset-carousel-dot,
body.yh-scale-enabled.page-business #tab-sports .asset-carousel-dot {
  width: 18px !important;
  height: 3px !important;
}

.page-business #tab-sports .asset-carousel-dot.active,
body.yh-scale-enabled.page-business #tab-sports .asset-carousel-dot.active {
  width: 34px !important;
}

/* ===== 最终修正：业务板块体育轮播图自适应完整显示 =====
   说明：
   - 保留整站“整体等比缩放”的自适应方案；
   - 体育 APP 轮播图不再写死 420px 高度；
   - 使用父容器 aspect-ratio: 3 / 2，让轮播框随设计稿宽度等比变化；
   - 图片用 contain 完整显示，不裁切底部。
*/
.page-business #tab-sports .video-placeholder.media-grid-filled,
body.yh-scale-enabled.page-business #tab-sports .video-placeholder.media-grid-filled {
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: 3 / 2 !important;
  overflow: hidden !important;
}

.page-business #tab-sports .video-placeholder.media-grid-filled > .asset-carousel-grid,
body.yh-scale-enabled.page-business #tab-sports .video-placeholder.media-grid-filled > .asset-carousel-grid {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  padding: 10px !important;
  aspect-ratio: auto !important;
  overflow: hidden !important;
}

.page-business #tab-sports .video-placeholder.media-grid-filled .asset-carousel-slides,
body.yh-scale-enabled.page-business #tab-sports .video-placeholder.media-grid-filled .asset-carousel-slides {
  inset: 10px 10px 42px !important;
  overflow: hidden !important;
}

.page-business #tab-sports .video-placeholder.media-grid-filled .app-collage-slide,
body.yh-scale-enabled.page-business #tab-sports .video-placeholder.media-grid-filled .app-collage-slide {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  grid-template-rows: 1fr !important;
  gap: 10px !important;
  width: 100% !important;
  height: 100% !important;
  align-items: stretch !important;
  justify-items: stretch !important;
  overflow: hidden !important;
}

.page-business #tab-sports .video-placeholder.media-grid-filled .app-collage-slide .media-fill.carousel-img,
.page-business #tab-sports .video-placeholder.media-grid-filled .app-collage-slide .media-fill.carousel-img.contain,
body.yh-scale-enabled.page-business #tab-sports .video-placeholder.media-grid-filled .app-collage-slide .media-fill.carousel-img,
body.yh-scale-enabled.page-business #tab-sports .video-placeholder.media-grid-filled .app-collage-slide .media-fill.carousel-img.contain {
  position: relative !important;
  inset: auto !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: 100% !important;
  min-width: 0 !important;
  padding: 0 !important;
  object-fit: contain !important;
  object-position: center center !important;
  background: #ffffff !important;
  border-radius: 6px !important;
  border: 1px solid rgba(29,120,200,0.10) !important;
  box-sizing: border-box !important;
}

.page-business #tab-sports .video-placeholder.media-grid-filled .asset-carousel-dots,
body.yh-scale-enabled.page-business #tab-sports .video-placeholder.media-grid-filled .asset-carousel-dots {
  bottom: 8px !important;
  padding: 4px 6px !important;
}

.page-business #tab-sports .video-placeholder.media-grid-filled .asset-carousel-dot,
body.yh-scale-enabled.page-business #tab-sports .video-placeholder.media-grid-filled .asset-carousel-dot {
  width: 18px !important;
  height: 3px !important;
}

.page-business #tab-sports .video-placeholder.media-grid-filled .asset-carousel-dot.active,
body.yh-scale-enabled.page-business #tab-sports .video-placeholder.media-grid-filled .asset-carousel-dot.active {
  width: 34px !important;
}


/* sticky 吸顶时保持导航在视觉上始终压住内容 */
body.yh-scale-enabled .nav.scrolled,
.nav.scrolled {
  z-index: 1000 !important;
}

/* 移动菜单仍然绝对定位在导航条下方 */
body.yh-scale-enabled .mobile-menu,
.mobile-menu {
  position: absolute !important;
  top: 100% !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 1001 !important;
}

/* 首页 / 内页不额外增加顶部占位，避免出现新的空白 */
body.yh-scale-enabled .yh-scale-stage {
  padding-top: 0 !important;
}

/* ===== 最终修正：导航条固定在顶部且页面可正常滚动 =====
   处理方式：
   1. main.js 会把 #nav-placeholder 排除在 .yh-scale-page 之外；
   2. #nav-placeholder 作为 fixed 容器固定在视口顶部；
   3. 内部 .nav 仍按 --yh-scale 等比缩放，保持和主体页面同一比例；
   4. fixed 容器只保留导航高度，不覆盖页面主体，因此页面可以正常滑动。
*/
body.yh-scale-enabled #nav-placeholder {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: auto !important;
  width: 100vw !important;
  z-index: 10000 !important;
  overflow: visible !important;
  pointer-events: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.yh-scale-enabled #nav-placeholder .nav {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: auto !important;
  width: var(--yh-design-width) !important;
  min-width: var(--yh-design-width) !important;
  height: 64px !important;
  transform: scale(var(--yh-scale)) !important;
  transform-origin: top left !important;
  z-index: 10001 !important;
  pointer-events: auto !important;
  padding: 0 56px !important;
}

body.yh-scale-enabled #nav-placeholder .nav-links,
body.yh-scale-enabled #nav-placeholder .nav-right {
  display: flex !important;
}

body.yh-scale-enabled #nav-placeholder .menu-toggle,
body.yh-scale-enabled #nav-placeholder .mobile-menu,
body.yh-scale-enabled #nav-placeholder .mobile-menu.open {
  display: none !important;
}

/* 主体不额外加顶部空白；首页 hero 与内页 page-hero 原本已有设计稿里的导航避让距离 */
body.yh-scale-enabled .yh-scale-stage {
  padding-top: 0 !important;
}

/* ===== 首页首屏文案位置微调 =====
   说明：
   - 保留整体等比缩放；
   - 将首页首屏文案整体上移一点；
   - 左侧增加一点安全距离，避免贴边感太强。
*/
body.yh-scale-enabled.page-index .hero-content {
  left: 96px !important;
  bottom: 130px !important;
  max-width: 760px !important;
}

body.yh-scale-enabled.page-index .hero-actions {
  margin-top: 4px !important;
}
