﻿/* ==========================================================================   广州泰都科技创新中心 · 官网样式   设计语言：取自企业 LOGO 的深蓝 + 橙色点缀，深墨底与斜切几何延续宣传册构图   ========================================================================== */:root {  /* 品牌主色：取自 LOGO 的深蓝 */  --brand: #0f1670;  --brand-600: #0b1178;  --brand-700: #070b4f;  --brand-050: #f2f3fc;  --brand-100: #dfe2f7;  /* 品牌强调色：取自 LOGO 中橙色的字母 */  --accent: #f95a08;  --accent-600: #d94a03;  --accent-050: #fff3ea;  --accent-100: #ffdcc6;  --ink: #05072e;  --ink-800: #0a0d3c;  --ink-700: #141a52;  --text: #1e2340;  --muted: #5b6480;  --muted-2: #767e96;  --line: #e6e7f1;  --line-dark: rgba(255, 255, 255, 0.12);  --bg: #ffffff;  --bg-soft: #f6f6fb;  --bg-soft-2: #eeeff8;  --radius: 16px;  --radius-lg: 24px;  --shadow-sm: 0 1px 2px rgba(8, 10, 50, 0.04), 0 8px 24px -16px rgba(8, 10, 50, 0.18);  --shadow-md: 0 24px 60px -32px rgba(8, 10, 50, 0.35);  --container: 1200px;  --font: "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC",    system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;}*,*::before,*::after {  box-sizing: border-box;}html {  -webkit-text-size-adjust: 100%;  scroll-behavior: smooth;}body {  margin: 0;  font-family: var(--font);  font-size: 16px;  line-height: 1.75;  color: var(--text);  background: var(--bg);  -webkit-font-smoothing: antialiased;  text-rendering: optimizeLegibility;}img {  max-width: 100%;  display: block;}a {  color: inherit;  text-decoration: none;}h1,h2,h3,h4 {  margin: 0;  font-weight: 700;  letter-spacing: -0.01em;  line-height: 1.25;  color: var(--ink);}p {  margin: 0;}ul,ol {  margin: 0;  padding: 0;  list-style: none;}button {  font: inherit;  cursor: pointer;}::selection {  background: var(--brand);  color: #fff;}.container {  width: 100%;  max-width: var(--container);  margin: 0 auto;  padding: 0 24px;}.container-wide {  max-width: 1360px;}/* ------------------------------ 通用元素 ------------------------------ */.eyebrow {  display: inline-flex;  align-items: center;  gap: 10px;  font-size: 13px;  font-weight: 700;  letter-spacing: 0.14em;  text-transform: uppercase;  color: var(--accent-600);}.eyebrow::before {  content: "";  width: 26px;  height: 2px;  border-radius: 2px;  background: var(--accent);  opacity: 1;}.eyebrow.on-dark {  color: #ffc79b;}.section {  padding: 96px 0;  position: relative;}.section-sm {  padding: 64px 0;}.section-soft {  background: var(--bg-soft);}.section-head {  display: flex;  align-items: flex-end;  justify-content: space-between;  gap: 32px;  margin-bottom: 48px;}.section-title {  font-size: clamp(28px, 3vw, 40px);  margin-top: 14px;}.section-desc {  margin-top: 16px;  max-width: 620px;  color: var(--muted);  font-size: 16.5px;}.section-link {  flex: none;  display: inline-flex;  align-items: center;  gap: 8px;  font-size: 15px;  font-weight: 600;  color: var(--brand-600);  padding-bottom: 6px;  border-bottom: 1px solid var(--brand-100);  transition: gap 0.2s ease, border-color 0.2s ease;}.section-link:hover {  gap: 14px;  border-color: var(--brand);}.btn {  display: inline-flex;  align-items: center;  justify-content: center;  gap: 10px;  height: 50px;  padding: 0 26px;  border-radius: 999px;  font-size: 15px;  font-weight: 600;  border: 1px solid transparent;  transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease,    color 0.2s ease, border-color 0.2s ease;  white-space: nowrap;}.btn svg {  width: 16px;  height: 16px;}.btn-primary {  background: var(--brand);  color: #fff;  box-shadow: 0 14px 30px -14px rgba(15, 22, 112, 0.75);}.btn-primary:hover {  background: var(--brand-600);  transform: translateY(-1px);  box-shadow: 0 18px 34px -14px rgba(15, 22, 112, 0.8);}.btn-ghost {  border-color: var(--line);  color: var(--ink);  background: #fff;}.btn-ghost:hover {  border-color: var(--brand);  color: var(--brand-600);  transform: translateY(-1px);}.btn-on-dark {  border-color: rgba(255, 255, 255, 0.62);  color: #fff;}.btn-on-dark:hover {  background: rgba(255, 255, 255, 0.1);  border-color: rgba(255, 255, 255, 0.62);}.btn-sm {  height: 42px;  padding: 0 20px;  font-size: 14px;}/* ------------------------------ 顶部导航 ------------------------------ */.site-header {  position: fixed;  inset: 0 0 auto 0;  z-index: 60;  transition: background 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;  border-bottom: 1px solid transparent;}.site-header.is-transparent {  background: transparent;}.site-header.is-solid {  background: rgba(255, 255, 255, 0.94);  backdrop-filter: saturate(180%) blur(14px);  border-bottom-color: var(--line);  box-shadow: 0 10px 30px -24px rgba(8, 30, 60, 0.5);}.header-inner {  display: flex;  align-items: center;  gap: 28px;  height: 76px;}.brand {  display: inline-flex;  align-items: center;  gap: 12px;  flex: none;}.brand-mark {  position: relative;  display: block;  width: 54px;  height: 54px;  flex: none;}.brand-logo {  position: absolute;  inset: 0;  width: 100%;  height: 100%;  object-fit: contain;  transition: opacity 0.25s ease;}/* 默认（深色头图 / 页脚）用白色版 LOGO，滚动后再换成彩色版 */.brand-logo-dark {  opacity: 0;}.site-header.is-solid .brand-logo-light {  opacity: 0;}.site-header.is-solid .brand-logo-dark {  opacity: 1;}.brand-text {  display: flex;  flex-direction: column;  line-height: 1.15;}.brand-name {  font-size: 17.5px;  font-weight: 700;  letter-spacing: 0.02em;  color: var(--ink);}.brand-sub {  font-size: 10px;  letter-spacing: 0.18em;  color: var(--muted-2);  text-transform: uppercase;  margin-top: 4px;}.is-transparent .brand-name {  color: #fff;}.is-transparent .brand-sub {  color: rgba(255, 255, 255, 0.62);}.nav {  display: flex;  align-items: center;  gap: 4px;  margin-left: auto;}.nav a {  position: relative;  display: inline-block;  padding: 10px 15px;  font-size: 15px;  font-weight: 500;  color: var(--text);  border-radius: 10px;  transition: color 0.2s ease, background 0.2s ease;}.nav a::after {  content: "";  position: absolute;  left: 15px;  right: 15px;  bottom: 4px;  height: 2px;  background: var(--accent);  border-radius: 2px;  transform: scaleX(0);  transform-origin: left;  transition: transform 0.25s ease;}.nav a:hover {  color: var(--brand-600);}.nav a:hover::after,.nav a.is-active::after {  transform: scaleX(1);}.nav a.is-active {  color: var(--brand-600);  font-weight: 600;}.is-transparent .nav a {  color: rgba(255, 255, 255, 0.82);}.is-transparent .nav a:hover,.is-transparent .nav a.is-active {  color: #fff;}.is-transparent .nav a::after {  background: #ffc79b;}.header-cta {  flex: none;  margin-left: 8px;}.header-phone {  display: none;  font-size: 13px;  color: var(--muted);}.nav-toggle {  display: none;  width: 44px;  height: 44px;  border: 1px solid var(--line);  border-radius: 12px;  background: transparent;  align-items: center;  justify-content: center;}.nav-toggle span {  display: block;  position: relative;  width: 18px;  height: 1.5px;  background: var(--ink);  transition: transform 0.25s ease, opacity 0.2s ease;}.nav-toggle span::before,.nav-toggle span::after {  content: "";  position: absolute;  left: 0;  width: 18px;  height: 1.5px;  background: var(--ink);  transition: transform 0.25s ease;}.nav-toggle span::before {  top: -6px;}.nav-toggle span::after {  top: 6px;}.is-transparent .nav-toggle {  border-color: rgba(255, 255, 255, 0.62);}.is-transparent .nav-toggle span,.is-transparent .nav-toggle span::before,.is-transparent .nav-toggle span::after {  background: #fff;}/* ------------------------------ 首页首屏 ------------------------------ */.hero {  position: relative;  overflow: hidden;  padding: 168px 0 96px;  background: radial-gradient(65% 60% at 100% 0%, rgba(249, 90, 8, 0.16), transparent 62%),    radial-gradient(120% 120% at 82% 8%, #1b1f7d 0%, #0a0c48 40%, #05061f 80%);  color: #fff;}.hero::before {  content: "";  position: absolute;  inset: 0;  background-image: linear-gradient(rgba(255, 255, 255, 0.05) 1px, transparent 1px),    linear-gradient(90deg, rgba(255, 255, 255, 0.05) 1px, transparent 1px);  background-size: 72px 72px;  mask-image: radial-gradient(120% 90% at 60% 0%, #000 0%, transparent 72%);  -webkit-mask-image: radial-gradient(120% 90% at 60% 0%, #000 0%, transparent 72%);  pointer-events: none;}.hero::after {  content: "";  position: absolute;  top: -10%;  right: -6%;  width: 58vw;  height: 130%;  background: linear-gradient(160deg, rgba(15, 22, 112, 0.55), rgba(6, 20, 40, 0) 62%);  clip-path: polygon(38% 0, 100% 0, 100% 100%, 0 100%);  opacity: 0.9;  pointer-events: none;}.hero-inner {  position: relative;  z-index: 2;  display: grid;  grid-template-columns: minmax(0, 1.08fr) minmax(0, 0.92fr);  gap: 56px;  align-items: center;}.hero-eyebrow {  display: inline-flex;  align-items: center;  gap: 9px;  padding: 7px 14px 7px 10px;  border: 1px solid rgba(255, 255, 255, 0.18);  border-radius: 999px;  font-size: 12.5px;  letter-spacing: 0.08em;  color: rgba(255, 255, 255, 0.8);  background: rgba(255, 255, 255, 0.04);  backdrop-filter: blur(6px);}.hero-eyebrow .dot {  width: 6px;  height: 6px;  border-radius: 50%;  background: #ffb27a;  box-shadow: 0 0 0 4px rgba(255, 178, 122, 0.18);}.hero h1 {  margin: 26px 0 0;  max-width: 15em;  text-wrap: balance;  font-size: clamp(34px, 4.4vw, 58px);  line-height: 1.16;  letter-spacing: -0.02em;  color: #fff;  font-weight: 700;}.hero h1 .accent {  position: relative;  color: #ffb27a;  white-space: nowrap;}.hero h1 .accent::after {  content: "";  position: absolute;  left: 0;  right: 0;  bottom: 6px;  height: 9px;  background: rgba(249, 90, 8, 0.28);  border-radius: 2px;  z-index: -1;}.hero-desc {  margin-top: 24px;  max-width: 560px;  font-size: 17px;  line-height: 1.85;  color: rgba(255, 255, 255, 0.8);}.hero-actions {  display: flex;  flex-wrap: wrap;  gap: 14px;  margin-top: 38px;}.hero-note {  display: flex;  flex-wrap: wrap;  gap: 18px 28px;  margin-top: 40px;  padding-top: 26px;  border-top: 1px solid rgba(255, 255, 255, 0.1);}.hero-note span {  display: inline-flex;  align-items: center;  gap: 8px;  font-size: 13.5px;  color: rgba(255, 255, 255, 0.7);}.hero-note svg {  width: 15px;  height: 15px;  color: #ffb27a;}/* 首屏右侧：体系卡片 */.hero-panel {  position: relative;  padding: 26px;  border-radius: 22px;  border: 1px solid rgba(255, 255, 255, 0.14);  background: linear-gradient(180deg, rgba(255, 255, 255, 0.11), rgba(255, 255, 255, 0.035));  backdrop-filter: blur(16px);  box-shadow: 0 40px 80px -40px rgba(0, 0, 0, 0.8);}.hero-panel::after {  content: "";  position: absolute;  inset: 0;  border-radius: inherit;  background: radial-gradient(80% 50% at 20% 0%, rgba(255, 178, 122, 0.22), transparent 70%);  pointer-events: none;}.hero-panel-head {  position: relative;  display: flex;  align-items: baseline;  justify-content: space-between;  gap: 12px;  padding-bottom: 18px;  border-bottom: 1px solid rgba(255, 255, 255, 0.12);}.hero-panel-head h3 {  font-size: 15px;  color: #fff;  font-weight: 600;  letter-spacing: 0.04em;}.hero-panel-head span {  font-size: 11px;  letter-spacing: 0.2em;  color: rgba(255, 255, 255, 0.62);}.hero-steps {  position: relative;  display: grid;  gap: 2px;  margin-top: 6px;}.hero-step {  display: flex;  align-items: center;  gap: 14px;  padding: 13px 4px;  border-bottom: 1px dashed rgba(255, 255, 255, 0.1);}.hero-step:last-child {  border-bottom: 0;}.hero-step-index {  flex: none;  width: 26px;  height: 26px;  border-radius: 8px;  display: grid;  place-items: center;  font-size: 11.5px;  font-weight: 700;  font-variant-numeric: tabular-nums;  color: #ffd0ad;  background: rgba(255, 178, 122, 0.14);  border: 1px solid rgba(255, 178, 122, 0.24);}.hero-step-title {  font-size: 14.5px;  color: rgba(255, 255, 255, 0.9);  font-weight: 500;}.hero-step-desc {  font-size: 12.5px;  color: rgba(255, 255, 255, 0.72);  margin-top: 1px;}.hero-panel-foot {  position: relative;  display: flex;  align-items: center;  justify-content: space-between;  gap: 12px;  margin-top: 16px;  padding-top: 16px;  border-top: 1px solid rgba(255, 255, 255, 0.12);  font-size: 12.5px;  color: rgba(255, 255, 255, 0.62);}.hero-panel-foot a {  color: #ffd0ad;  display: inline-flex;  align-items: center;  gap: 6px;}/* 首屏统计 */.hero-stats {  position: relative;  z-index: 2;  display: grid;  grid-template-columns: repeat(4, minmax(0, 1fr));  gap: 1px;  margin-top: 64px;  border-top: 1px solid rgba(255, 255, 255, 0.12);}.hero-stat {  padding: 26px 22px 0 0;}.hero-stat + .hero-stat {  padding-left: 26px;  border-left: 1px solid rgba(255, 255, 255, 0.1);}.hero-stat-value {  display: flex;  align-items: baseline;  font-size: clamp(30px, 3.4vw, 42px);  font-weight: 700;  letter-spacing: -0.02em;  color: #fff;  font-variant-numeric: tabular-nums;  line-height: 1;}.hero-stat-value small {  font-size: 0.52em;  font-weight: 600;  margin-left: 2px;  color: #ffb27a;}.hero-stat-label {  margin-top: 10px;  font-size: 13.5px;  color: rgba(255, 255, 255, 0.66);}/* ------------------------------ 客户 Logo 墙 ------------------------------ */.clients-band {  padding: 46px 0;  border-bottom: 1px solid var(--line);  background: #fff;}.clients-band-head {  display: flex;  align-items: center;  justify-content: space-between;  gap: 24px;  margin-bottom: 30px;}.clients-band-head p {  font-size: 14px;  color: var(--muted);  letter-spacing: 0.02em;}.clients-band-head p strong {  color: var(--ink);  font-weight: 600;}.marquee {  position: relative;  overflow: hidden;  mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);  -webkit-mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);}.marquee-track {  display: flex;  gap: 18px;  width: max-content;  animation: marquee 46s linear infinite;}.marquee:hover .marquee-track {  animation-play-state: paused;}@keyframes marquee {  from {    transform: translateX(0);  }  to {    transform: translateX(-50%);  }}.logo-chip {  flex: none;  width: 176px;  height: 74px;  border: 1px solid var(--line);  border-radius: 12px;  background: #fff;  display: grid;  place-items: center;  padding: 12px 18px;  transition: border-color 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease;}.logo-chip img {  max-width: 100%;  max-height: 100%;  object-fit: contain;  filter: grayscale(1);  opacity: 0.72;  transition: filter 0.25s ease, opacity 0.25s ease;}.logo-chip:hover {  border-color: var(--brand-100);  box-shadow: 0 18px 32px -26px rgba(8, 10, 50, 0.6);  transform: translateY(-2px);}.logo-chip:hover img {  filter: grayscale(0);  opacity: 1;}.client-grid {  display: grid;  grid-template-columns: repeat(6, minmax(0, 1fr));  gap: 12px;}@media (max-width: 1080px) {  .client-grid {    grid-template-columns: repeat(4, minmax(0, 1fr));  }}@media (max-width: 720px) {  .client-grid {    grid-template-columns: repeat(3, minmax(0, 1fr));    gap: 10px;  }}@media (max-width: 480px) {  .client-grid {    grid-template-columns: repeat(2, minmax(0, 1fr));  }}.client-card {  display: flex;  align-items: center;  justify-content: center;  gap: 10px;  padding: 14px 12px;  border: 1px solid var(--line);  border-radius: 12px;  background: #fff;  font-size: 13px;  line-height: 1.5;  color: var(--text);  min-height: 76px;  transition: border-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;}.client-card img {  max-width: 100%;  max-height: 44px;  width: auto;  height: auto;  object-fit: contain;  flex: none;}.client-card:hover {  border-color: var(--brand-100);  transform: translateY(-2px);  box-shadow: var(--shadow-sm);}.client-name-list {  display: grid;  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));  gap: 2px 28px;  columns: 2;}.client-name-list li {  position: relative;  padding: 9px 0 9px 18px;  font-size: 14px;  color: var(--text);  border-bottom: 1px dashed var(--line);  break-inside: avoid;}.client-name-list li::before {  content: "";  position: absolute;  left: 0;  top: 17px;  width: 5px;  height: 5px;  border-radius: 50%;  background: var(--brand);  opacity: 0.6;}/* ------------------------------ 关于我们 ------------------------------ */.about-grid {  display: grid;  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);  gap: 64px;  align-items: start;}.about-copy p {  font-size: 16px;  line-height: 1.95;  color: #3a4757;}.about-copy p + p {  margin-top: 18px;}.about-purpose {  margin-top: 32px;  padding: 22px 24px;  border-left: 3px solid var(--brand);  background: linear-gradient(90deg, var(--brand-050), rgba(239, 247, 253, 0));  font-size: 15.5px;  color: var(--ink-700);}.about-purpose span {  display: block;  font-size: 11.5px;  letter-spacing: 0.18em;  color: var(--brand-600);  text-transform: uppercase;  margin-bottom: 6px;}.value-grid {  display: grid;  grid-template-columns: repeat(2, minmax(0, 1fr));  gap: 1px;  background: var(--line);  border: 1px solid var(--line);  border-radius: var(--radius);  overflow: hidden;  margin-top: 20px;}.value-item {  background: #fff;  padding: 30px 28px;  transition: background 0.25s ease;}.value-item:hover {  background: var(--brand-050);}.value-item h4 {  font-size: 17px;  display: flex;  align-items: center;  gap: 10px;}.value-item h4::before {  content: "";  width: 22px;  height: 2px;  background: var(--brand);  border-radius: 2px;}.value-item p {  margin-top: 12px;  font-size: 14.5px;  line-height: 1.8;  color: var(--muted);}.coverage {  display: flex;  flex-wrap: wrap;  gap: 8px;  margin-top: 26px;}.coverage span {  padding: 5px 13px;  border: 1px solid var(--line);  border-radius: 999px;  font-size: 13px;  color: var(--muted);  background: #fff;}/* ------------------------------ 服务体系 ------------------------------ */.service-grid {  display: grid;  grid-template-columns: repeat(4, minmax(0, 1fr));  gap: 18px;}.service-card {  position: relative;  padding: 30px 26px 26px;  border: 1px solid var(--line);  border-radius: var(--radius);  background: #fff;  overflow: hidden;  transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;}.service-card::before {  content: "";  position: absolute;  inset: auto 0 0 0;  height: 3px;  background: linear-gradient(90deg, var(--accent), #ffb27a);  transform: scaleX(0);  transform-origin: left;  transition: transform 0.35s ease;}.service-card:hover {  transform: translateY(-4px);  box-shadow: var(--shadow-md);  border-color: transparent;}.service-card:hover::before {  transform: scaleX(1);}.service-icon {  width: 52px;  height: 52px;  border-radius: 14px;  display: grid;  place-items: center;  background: var(--brand-050);  color: var(--brand-600);  margin-bottom: 20px;  transition: background 0.3s ease, color 0.3s ease;}.service-icon svg {  width: 25px;  height: 25px;}.service-card:hover .service-icon {  background: var(--brand);  color: #fff;}.service-card h3 {  font-size: 18px;  letter-spacing: 0;}.service-card .service-en {  display: block;  margin-top: 5px;  font-size: 10.5px;  letter-spacing: 0.16em;  text-transform: uppercase;  color: var(--muted-2);}.service-card p {  margin-top: 12px;  font-size: 14px;  line-height: 1.75;  color: var(--muted);}.service-tags {  display: flex;  flex-wrap: wrap;  gap: 6px;  margin-top: 18px;  padding-top: 16px;  border-top: 1px dashed var(--line);}.service-tags span {  font-size: 12px;  color: #52627a;  background: var(--bg-soft);  border-radius: 5px;  padding: 3px 8px;}/* ------------------------------ 两大体系（深色块） ------------------------------ */.pillars {  position: relative;  overflow: hidden;  padding: 96px 0;  background: radial-gradient(60% 70% at 100% 0%, rgba(249, 90, 8, 0.14), transparent 60%),    radial-gradient(100% 130% at 80% 0%, #191d78 0%, #080a3d 45%, #05061f 86%);  color: #fff;}.pillars::after {  content: "";  position: absolute;  left: -10%;  bottom: -40%;  width: 60vw;  height: 120%;  background: linear-gradient(200deg, rgba(15, 22, 112, 0.22), transparent 60%);  clip-path: polygon(0 0, 100% 46%, 0 100%);  pointer-events: none;}.pillars .container {  position: relative;  z-index: 2;}.pillars-head {  max-width: 660px;  margin-bottom: 52px;}.pillars-head h2 {  color: #fff;  font-size: clamp(28px, 3vw, 40px);  margin-top: 14px;}.pillars-head p {  margin-top: 18px;  color: rgba(255, 255, 255, 0.72);  font-size: 16px;  line-height: 1.9;}.pillar-grid {  display: grid;  grid-template-columns: repeat(2, minmax(0, 1fr));  gap: 20px;}.pillar-card {  position: relative;  padding: 40px 36px;  border-radius: 20px;  border: 1px solid rgba(255, 255, 255, 0.12);  background: linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.02));  overflow: hidden;}.pillar-card::after {  content: "";  position: absolute;  top: -40px;  right: -40px;  width: 180px;  height: 180px;  border-radius: 50%;  background: radial-gradient(circle, rgba(255, 178, 122, 0.35), transparent 68%);  opacity: 0.7;}.pillar-index {  font-size: 12px;  letter-spacing: 0.2em;  color: rgba(255, 178, 122, 0.8);}.pillar-card h3 {  margin-top: 16px;  font-size: clamp(20px, 2vw, 26px);  color: #fff;}.pillar-card p {  margin-top: 16px;  color: rgba(255, 255, 255, 0.72);  font-size: 15px;  line-height: 1.9;}.pillar-en {  display: block;  margin-top: 8px;  font-size: 11px;  letter-spacing: 0.18em;  text-transform: uppercase;  color: rgba(255, 255, 255, 0.62);}/* ------------------------------ 服务流程 ------------------------------ */.process {  display: grid;  grid-template-columns: repeat(5, minmax(0, 1fr));  gap: 20px;  counter-reset: step;}.process-step {  position: relative;  padding-top: 28px;  border-top: 2px solid var(--line);  transition: border-color 0.3s ease;}.process-step::before {  content: "";  position: absolute;  top: -5px;  left: 0;  width: 8px;  height: 8px;  border-radius: 50%;  background: var(--line);  transition: background 0.3s ease, box-shadow 0.3s ease;}.process-step:hover {  border-color: var(--brand);}.process-step:hover::before {  background: var(--brand);  box-shadow: 0 0 0 5px rgba(15, 22, 112, 0.14);}.process-num {  font-size: 12px;  font-weight: 700;  letter-spacing: 0.14em;  color: var(--brand);  font-variant-numeric: tabular-nums;}.process-step h4 {  margin-top: 8px;  font-size: 16.5px;}.process-step p {  margin-top: 10px;  font-size: 13.5px;  line-height: 1.8;  color: var(--muted);}/* ------------------------------ 数据条 ------------------------------ */.stat-strip {  display: grid;  grid-template-columns: repeat(4, minmax(0, 1fr));  border: 1px solid var(--line);  border-radius: var(--radius-lg);  overflow: hidden;  background: #fff;}.stat-cell {  padding: 34px 30px;  border-right: 1px solid var(--line);}.stat-cell:last-child {  border-right: 0;}.stat-cell .num {  font-size: clamp(28px, 3vw, 38px);  font-weight: 700;  color: var(--ink);  letter-spacing: -0.02em;  font-variant-numeric: tabular-nums;  line-height: 1.1;}.stat-cell .num small {  font-size: 0.5em;  color: var(--brand);  margin-left: 3px;}.stat-cell .lbl {  margin-top: 10px;  font-size: 13.5px;  color: var(--muted);}/* ------------------------------ 资讯卡片 ------------------------------ */.news-grid {  display: grid;  grid-template-columns: repeat(3, minmax(0, 1fr));  gap: 22px;}.news-card {  display: flex;  flex-direction: column;  border: 1px solid var(--line);  border-radius: var(--radius);  background: #fff;  overflow: hidden;  transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;}.news-card:hover {  transform: translateY(-4px);  box-shadow: var(--shadow-md);  border-color: transparent;}.news-cover {  position: relative;  aspect-ratio: 16 / 9;  overflow: hidden;  background: linear-gradient(135deg, #080b4a, #0f1670);}.news-cover img {  width: 100%;  height: 100%;  object-fit: cover;  transition: transform 0.5s ease;}.news-card:hover .news-cover img {  transform: scale(1.04);}.news-cover.is-placeholder::after {  content: "泰都 · 政策观察";  position: absolute;  inset: 0;  display: grid;  place-items: center;  font-size: 13px;  letter-spacing: 0.24em;  color: rgba(255, 255, 255, 0.62);  background-image: linear-gradient(rgba(255, 255, 255, 0.06) 1px, transparent 1px),    linear-gradient(90deg, rgba(255, 255, 255, 0.06) 1px, transparent 1px);  background-size: 28px 28px;}.news-body {  padding: 24px 24px 26px;  display: flex;  flex-direction: column;  flex: 1;}.news-meta {  display: flex;  align-items: center;  gap: 12px;  font-size: 12px;  color: var(--muted-2);}.news-tag {  display: inline-block;  padding: 2px 9px;  border-radius: 4px;  background: var(--brand-050);  color: var(--brand-600);  font-size: 11.5px;  font-weight: 600;}.news-card h3 {  margin-top: 14px;  font-size: 17px;  line-height: 1.55;  letter-spacing: 0;  display: -webkit-box;  -webkit-line-clamp: 3;  -webkit-box-orient: vertical;  overflow: hidden;}.news-card:hover h3 {  color: var(--brand-600);}.news-card p {  margin-top: 12px;  font-size: 13.5px;  line-height: 1.75;  color: var(--muted);  display: -webkit-box;  -webkit-line-clamp: 2;  -webkit-box-orient: vertical;  overflow: hidden;}.news-more {  margin-top: auto;  padding-top: 20px;  font-size: 13px;  font-weight: 600;  color: var(--brand-600);  display: inline-flex;  align-items: center;  gap: 6px;}/* ------------------------------ CTA ------------------------------ */.cta-band {  position: relative;  overflow: hidden;  padding: 72px 0;  background: linear-gradient(120deg, #070a42 0%, #0d1470 52%, #0f1670 100%);  color: #fff;}.cta-band::after {  content: "";  position: absolute;  right: -8%;  top: -60%;  width: 46vw;  height: 220%;  border: 1px solid rgba(255, 255, 255, 0.12);  border-radius: 50%;  pointer-events: none;}.cta-inner {  position: relative;  z-index: 2;  display: flex;  align-items: center;  justify-content: space-between;  gap: 40px;  flex-wrap: wrap;}.cta-inner h2 {  color: #fff;  font-size: clamp(26px, 2.8vw, 36px);}.cta-inner p {  margin-top: 12px;  color: rgba(255, 255, 255, 0.68);  font-size: 15.5px;  max-width: 620px;}.cta-actions {  display: flex;  gap: 12px;  flex-wrap: wrap;}/* ------------------------------ 内页头部 ------------------------------ */.page-hero {  position: relative;  overflow: hidden;  padding: 148px 0 68px;  background: radial-gradient(60% 70% at 100% 0%, rgba(249, 90, 8, 0.14), transparent 58%),    radial-gradient(110% 140% at 78% 0%, #1b1f7d 0%, #0a0c48 44%, #05061f 84%);  color: #fff;}.page-hero::after {  content: "";  position: absolute;  inset: auto 0 0 0;  height: 1px;  background: rgba(255, 255, 255, 0.08);}.page-hero-inner {  position: relative;  z-index: 2;  max-width: 800px;}.crumb {  display: flex;  align-items: center;  gap: 10px;  font-size: 13px;  color: rgba(255, 255, 255, 0.66);  margin-bottom: 22px;}.crumb a:hover {  color: #fff;}.crumb span {  opacity: 0.4;}.page-hero h1 {  font-size: clamp(30px, 3.8vw, 46px);  color: #fff;  line-height: 1.2;}.page-hero p {  margin-top: 18px;  font-size: 16.5px;  line-height: 1.85;  color: rgba(255, 255, 255, 0.82);  max-width: 680px;}.page-hero .eyebrow {  margin-bottom: 18px;}/* ------------------------------ 内页通用块 ------------------------------ */.prose {  font-size: 16px;  line-height: 1.95;  color: #33404f;}.prose p + p {  margin-top: 18px;}.prose h2 {  font-size: 22px;  margin: 40px 0 16px;}.prose h3 {  font-size: 18.5px;  margin: 30px 0 12px;}.prose ul,.prose ol {  margin: 16px 0;  padding-left: 4px;}.prose li {  position: relative;  padding-left: 20px;  margin: 8px 0;}.prose ul li::before {  content: "";  position: absolute;  left: 2px;  top: 13px;  width: 6px;  height: 6px;  border-radius: 50%;  background: var(--brand);}.prose ol {  counter-reset: li;}.prose ol li::before {  counter-increment: li;  content: counter(li) ".";  position: absolute;  left: 0;  top: 0;  font-weight: 700;  color: var(--brand);  font-size: 14px;}.prose blockquote {  margin: 24px 0;  padding: 18px 22px;  border-left: 3px solid var(--brand);  background: var(--brand-050);  color: #33404f;  font-size: 15px;}.prose a {  color: var(--brand-600);  border-bottom: 1px solid var(--brand-100);}.prose a:hover {  border-color: var(--brand);}.prose strong {  color: var(--ink);}/* 服务体系详情 */.service-detail {  display: grid;  grid-template-columns: 280px minmax(0, 1fr);  gap: 56px;  align-items: start;}.service-nav {  position: sticky;  top: 100px;  border: 1px solid var(--line);  border-radius: var(--radius);  overflow: hidden;  background: #fff;}.service-nav-head {  padding: 18px 22px;  font-size: 12px;  letter-spacing: 0.16em;  text-transform: uppercase;  color: var(--muted-2);  border-bottom: 1px solid var(--line);  background: var(--bg-soft);}.service-nav a {  display: flex;  align-items: center;  gap: 10px;  padding: 13px 22px;  font-size: 14.5px;  color: var(--text);  border-bottom: 1px solid var(--line);  transition: background 0.2s ease, color 0.2s ease, padding 0.2s ease;}.service-nav a:last-child {  border-bottom: 0;}.service-nav a:hover,.service-nav a.is-active {  background: var(--brand-050);  color: var(--brand-600);  padding-left: 26px;}.service-nav a .idx {  font-size: 11px;  font-variant-numeric: tabular-nums;  color: var(--muted-2);}.service-block {  padding: 44px 0;  border-bottom: 1px solid var(--line);  scroll-margin-top: 100px;}.service-block:first-child {  padding-top: 0;}.service-block:last-child {  border-bottom: 0;}.service-block-head {  display: flex;  align-items: flex-start;  gap: 20px;}.service-block-head .service-icon {  margin-bottom: 0;  flex: none;}.service-block h2 {  font-size: clamp(22px, 2.4vw, 28px);}.service-block .lead {  margin-top: 10px;  font-size: 15.5px;  color: var(--muted);  line-height: 1.8;}.service-items {  display: grid;  grid-template-columns: repeat(2, minmax(0, 1fr));  gap: 2px 24px;  margin-top: 26px;}.service-items li {  position: relative;  padding: 11px 0 11px 22px;  font-size: 14.5px;  border-bottom: 1px dashed var(--line);}.service-items li::before {  content: "";  position: absolute;  left: 0;  top: 19px;  width: 7px;  height: 7px;  border: 1.5px solid var(--brand);  border-radius: 50%;}/* 项目汇总表 */.program-table {  width: 100%;  border-collapse: collapse;  font-size: 14px;}.program-table caption {  text-align: left;  padding-bottom: 18px;  font-size: 13px;  color: var(--muted);}.program-table th {  text-align: left;  font-weight: 600;  font-size: 12.5px;  letter-spacing: 0.06em;  color: var(--muted);  padding: 12px 14px;  background: var(--bg-soft);  border-bottom: 1px solid var(--line);}.program-table td {  padding: 14px;  border-bottom: 1px solid var(--line);  vertical-align: top;  color: var(--text);}.program-table td:first-child {  width: 180px;  font-weight: 600;  color: var(--ink);}.program-table tr:hover td {  background: #fbfbfe;}.program-groups {  display: grid;  gap: 18px;}.program-group {  border: 1px solid var(--line);  border-radius: var(--radius);  background: #fff;  overflow: hidden;}.program-group-head {  display: flex;  align-items: center;  justify-content: space-between;  gap: 16px;  padding: 16px 22px;  background: var(--bg-soft);  border-bottom: 1px solid var(--line);}.program-group-head h4 {  font-size: 15px;}.program-group-head span {  font-size: 12px;  color: var(--muted-2);}.program-chips {  display: flex;  flex-wrap: wrap;  gap: 8px;  padding: 18px 22px 22px;}.program-chips span {  padding: 6px 12px;  border-radius: 8px;  background: var(--brand-050);  color: #3a418f;  font-size: 13px;}/* 资讯列表 */.news-list {  display: grid;  gap: 0;  border-top: 1px solid var(--line);}.news-list-item {  display: grid;  grid-template-columns: 120px minmax(0, 1fr) auto;  gap: 32px;  align-items: center;  padding: 28px 4px;  border-bottom: 1px solid var(--line);  transition: background 0.2s ease, padding 0.2s ease;}.news-list-item:hover {  background: #fbfbfe;  padding-left: 12px;}.news-list-date {  font-variant-numeric: tabular-nums;  color: var(--muted-2);  font-size: 13px;  line-height: 1.4;  display: flex;  flex-direction: column;  align-items: flex-start;  gap: 2px;}.news-list-date strong {  display: block;  font-size: 27px;  line-height: 1.1;  color: var(--ink);  font-weight: 700;  letter-spacing: -0.03em;}.news-list-date span {  font-size: 12.5px;  letter-spacing: 0.06em;  color: var(--muted-2);}.news-list-date em {  font-style: normal;  margin-top: 8px;  font-size: 11.5px;  color: var(--brand-600);  background: var(--brand-50);  border-radius: 999px;  padding: 2px 9px;}.news-list-item h3 {  font-size: 17.5px;  line-height: 1.55;}.news-list-item:hover h3 {  color: var(--brand-600);}.news-list-item p {  margin-top: 8px;  font-size: 13.5px;  color: var(--muted);  line-height: 1.7;  display: -webkit-box;  -webkit-line-clamp: 1;  -webkit-box-orient: vertical;  overflow: hidden;}.news-list-arrow {  width: 40px;  height: 40px;  border-radius: 50%;  border: 1px solid var(--brand-100);  display: grid;  place-items: center;  color: var(--brand-600);  background: #fff;  transition: all 0.25s ease;}.news-list-item:hover .news-list-arrow {  background: var(--brand);  border-color: var(--brand);  color: #fff;}.filter-bar {  display: flex;  flex-wrap: wrap;  gap: 8px;  margin-bottom: 28px;}.filter-bar a {  padding: 8px 18px;  border-radius: 999px;  border: 1px solid var(--line);  font-size: 13.5px;  color: var(--muted);  background: #fff;  transition: all 0.2s ease;}.filter-bar a:hover {  border-color: var(--brand-100);  color: var(--brand-600);}.filter-bar a.is-active {  background: var(--ink);  border-color: var(--ink);  color: #fff;}.pagination {  display: flex;  gap: 8px;  justify-content: center;  margin-top: 48px;}.pagination a,.pagination span {  min-width: 40px;  height: 40px;  display: grid;  place-items: center;  border-radius: 10px;  border: 1px solid var(--line);  font-size: 14px;  color: var(--muted);  background: #fff;  padding: 0 12px;}.pagination a:hover {  border-color: var(--brand);  color: var(--brand-600);}.pagination .is-current {  background: var(--ink);  border-color: var(--ink);  color: #fff;}/* 资讯详情 */.article-layout {  display: grid;  grid-template-columns: minmax(0, 1fr) 300px;  gap: 64px;  align-items: start;}.article-head {  padding-bottom: 28px;  border-bottom: 1px solid var(--line);  margin-bottom: 34px;}.article-head h1 {  font-size: clamp(26px, 3vw, 38px);  line-height: 1.35;}.article-meta {  display: flex;  flex-wrap: wrap;  gap: 18px;  margin-top: 20px;  font-size: 13px;  color: var(--muted-2);}.article-meta a {  color: var(--brand-600);}.article-side {  position: sticky;  top: 100px;  display: grid;  gap: 20px;}.side-card {  border: 1px solid var(--line);  border-radius: var(--radius);  padding: 24px;  background: #fff;}.side-card h4 {  font-size: 13px;  letter-spacing: 0.12em;  text-transform: uppercase;  color: var(--muted-2);  margin-bottom: 16px;}.side-news a {  display: block;  padding: 12px 0;  border-bottom: 1px dashed var(--line);  font-size: 14px;  line-height: 1.6;}.side-news a:last-child {  border-bottom: 0;}.side-news a:hover {  color: var(--brand-600);}.side-news time {  display: block;  margin-top: 4px;  font-size: 12px;  color: var(--muted-2);}.article-nav {  display: grid;  grid-template-columns: repeat(2, minmax(0, 1fr));  gap: 14px;  margin-top: 48px;  padding-top: 32px;  border-top: 1px solid var(--line);}.article-nav a {  padding: 18px 20px;  border: 1px solid var(--line);  border-radius: 12px;  font-size: 14px;  transition: all 0.2s ease;}.article-nav a:hover {  border-color: var(--brand-100);  background: var(--brand-050);}.article-nav span {  display: block;  font-size: 11.5px;  letter-spacing: 0.1em;  color: var(--muted-2);  margin-bottom: 6px;}.article-nav .next {  text-align: right;}/* 下载 */.file-list {  display: grid;  gap: 12px;}.file-item {  display: flex;  align-items: center;  gap: 20px;  padding: 20px 24px;  border: 1px solid var(--line);  border-radius: var(--radius);  background: #fff;  transition: all 0.2s ease;}.file-item:hover {  border-color: var(--brand-100);  box-shadow: var(--shadow-sm);  transform: translateY(-2px);}.file-icon {  width: 46px;  height: 52px;  flex: none;  border-radius: 8px;  display: grid;  place-items: center;  font-size: 10px;  font-weight: 700;  letter-spacing: 0.04em;  color: var(--brand-600);  background: var(--brand-050);  border: 1px solid var(--brand-100);}.file-main {  flex: 1;  min-width: 0;}.file-main h4 {  font-size: 15.5px;}.file-meta {  margin-top: 6px;  display: flex;  gap: 14px;  font-size: 12.5px;  color: var(--muted-2);}.file-download {  flex: none;  font-size: 13.5px;  font-weight: 600;  color: var(--brand-600);  display: inline-flex;  align-items: center;  gap: 6px;}/* 联系我们 */.contact-grid {  display: grid;  grid-template-columns: minmax(0, 0.86fr) minmax(0, 1.14fr);  gap: 56px;  align-items: start;}.contact-block + .contact-block {  margin-top: 30px;  padding-top: 30px;  border-top: 1px solid var(--line);}.contact-label {  font-size: 11.5px;  letter-spacing: 0.18em;  text-transform: uppercase;  color: var(--muted-2);}.contact-value {  margin-top: 8px;  font-size: 15.5px;  line-height: 1.75;}.contact-value a:hover {  color: var(--brand-600);}.contact-phone {  font-size: clamp(26px, 3vw, 34px);  font-weight: 700;  letter-spacing: -0.01em;  color: var(--ink);  font-variant-numeric: tabular-nums;}.contact-people {  display: grid;  gap: 10px;  margin-top: 14px;}.person {  display: flex;  align-items: center;  gap: 14px;  padding: 14px 18px;  border: 1px solid var(--line);  border-radius: 12px;  background: #fff;}.person .avatar {  width: 38px;  height: 38px;  border-radius: 50%;  display: grid;  place-items: center;  background: var(--brand-050);  color: var(--brand-600);  font-weight: 700;  font-size: 13px;  flex: none;}.person .p-info {  flex: 1;  min-width: 0;}.person .p-name {  font-size: 14.5px;  font-weight: 600;}.person .p-role {  font-size: 12px;  color: var(--muted-2);}.person .p-phone {  font-size: 14.5px;  font-variant-numeric: tabular-nums;  color: var(--brand-600);  font-weight: 600;}.form-card {  border: 1px solid var(--line);  border-radius: var(--radius-lg);  background: #fff;  padding: 38px;  box-shadow: var(--shadow-md);}.form-card h2 {  font-size: 24px;}.form-card > p {  margin-top: 10px;  font-size: 14px;  color: var(--muted);}.form-grid {  display: grid;  grid-template-columns: repeat(2, minmax(0, 1fr));  gap: 18px;  margin-top: 26px;}.field {  display: flex;  flex-direction: column;  gap: 8px;}.field.full {  grid-column: 1 / -1;}.field label {  font-size: 13px;  font-weight: 600;  color: var(--ink-700);}.field label span {  color: #d64545;  margin-left: 2px;}.field input,.field textarea,.field select {  width: 100%;  border: 1px solid var(--line);  border-radius: 10px;  padding: 12px 14px;  font: inherit;  font-size: 14.5px;  color: var(--text);  background: #fff;  transition: border-color 0.2s ease, box-shadow 0.2s ease;}.field input:focus,.field textarea:focus,.field select:focus {  outline: none;  border-color: var(--brand);  box-shadow: 0 0 0 4px rgba(15, 22, 112, 0.12);}.field textarea {  min-height: 120px;  resize: vertical;  line-height: 1.7;}.field .hint {  font-size: 12px;  color: var(--muted-2);}.form-note {  margin-top: 16px;  font-size: 12.5px;  color: var(--muted-2);}.form-actions {  margin-top: 24px;  display: flex;  align-items: center;  gap: 14px;  flex-wrap: wrap;}.form-success {  margin-top: 20px;  padding: 14px 18px;  border-radius: 10px;  background: #ebf9f1;  border: 1px solid #bfe9d2;  color: #16704a;  font-size: 14px;}.form-error {  margin-top: 20px;  padding: 14px 18px;  border-radius: 10px;  background: #fdf0f0;  border: 1px solid #f4cfcf;  color: #a73131;  font-size: 14px;}.map-card {  margin-top: 32px;  border: 1px solid var(--line);  border-radius: var(--radius);  overflow: hidden;  background: var(--bg-soft);  padding: 28px;}.map-card .map-pin {  display: flex;  gap: 14px;  align-items: flex-start;}.map-card svg {  width: 22px;  height: 22px;  color: var(--brand);  flex: none;  margin-top: 3px;}/* ------------------------------ 页脚 ------------------------------ */.site-footer {  background: #05061f;  color: rgba(255, 255, 255, 0.6);  padding: 72px 0 0;  font-size: 14px;}.footer-grid {  display: grid;  grid-template-columns: 1.5fr 0.8fr 0.8fr 1.1fr;  gap: 40px;  padding-bottom: 56px;}.footer-brand .brand-name {  color: #fff;}.footer-brand .brand-sub {  color: rgba(255, 255, 255, 0.62);}.footer-about {  margin-top: 20px;  font-size: 13.5px;  line-height: 1.9;  color: rgba(255, 255, 255, 0.62);  max-width: 340px;}.footer-title {  font-size: 13px;  font-weight: 600;  color: #fff;  letter-spacing: 0.06em;  margin-bottom: 18px;}.footer-links {  display: grid;  gap: 10px;  font-size: 13.5px;}.footer-links a {  color: rgba(255, 255, 255, 0.62);  transition: color 0.2s ease;}.footer-links a:hover {  color: #fff;}.footer-contact {  display: grid;  gap: 12px;  font-size: 13.5px;  line-height: 1.7;}.footer-contact strong {  display: block;  font-size: 18px;  color: #fff;  font-variant-numeric: tabular-nums;  letter-spacing: 0.02em;}.footer-contact span {  color: rgba(255, 255, 255, 0.62);}.footer-bottom {  display: flex;  align-items: center;  justify-content: space-between;  gap: 20px;  flex-wrap: wrap;  padding: 24px 0;  border-top: 1px solid rgba(255, 255, 255, 0.08);  font-size: 12.5px;  color: rgba(255, 255, 255, 0.62);}.footer-bottom a:hover {  color: rgba(255, 255, 255, 0.7);}/* ------------------------------ 移动菜单 ------------------------------ */.mobile-nav {  position: fixed;  inset: 0;  z-index: 70;  background: #05061f;  padding: 24px;  display: flex;  flex-direction: column;  overflow-y: auto;  visibility: hidden;  opacity: 0;  transform: translateY(-10px);  pointer-events: none;  transition: opacity 0.26s ease, transform 0.26s ease, visibility 0.26s;}.mobile-nav.is-open {  visibility: visible;  opacity: 1;  transform: none;  pointer-events: auto;}.mobile-nav-head {  display: flex;  align-items: center;  justify-content: space-between;  margin-bottom: 32px;}.mobile-nav-close {  width: 44px;  height: 44px;  border: 1px solid rgba(255, 255, 255, 0.18);  border-radius: 12px;  background: transparent;  color: #fff;  font-size: 20px;  line-height: 1;}.mobile-nav a {  padding: 18px 4px;  border-bottom: 1px solid rgba(255, 255, 255, 0.08);  color: rgba(255, 255, 255, 0.82);  font-size: 17px;  display: flex;  align-items: center;  justify-content: space-between;}.mobile-nav a.is-active {  color: #ffb27a;}.mobile-nav-foot {  margin-top: auto;  padding-top: 32px;  color: rgba(255, 255, 255, 0.62);  font-size: 13px;  line-height: 1.9;}/* ------------------------------ 动画 ------------------------------ *//* 入场动画：仅在 JS 可用时隐藏初始状态，避免无脚本环境下内容不可见 */[data-reveal] {  transition: opacity 0.7s cubic-bezier(0.16, 1, 0.3, 1),    transform 0.7s cubic-bezier(0.16, 1, 0.3, 1);}body.has-reveal [data-reveal] {  opacity: 0;  transform: translateY(18px);}body.has-reveal [data-reveal].is-visible {  opacity: 1;  transform: none;}@media (prefers-reduced-motion: reduce) {  * {    animation-duration: 0.001ms !important;    animation-iteration-count: 1 !important;    transition-duration: 0.001ms !important;    scroll-behavior: auto !important;  }  [data-reveal] {    opacity: 1 !important;    transform: none !important;  }}/* ------------------------------ 响应式 ------------------------------ */@media (max-width: 1080px) {  .service-grid {    grid-template-columns: repeat(2, minmax(0, 1fr));  }  .hero-inner {    grid-template-columns: 1fr;    gap: 44px;  }  .hero-panel {    max-width: 520px;  }  .process {    grid-template-columns: repeat(3, minmax(0, 1fr));    gap: 28px 20px;  }  .service-detail {    grid-template-columns: 1fr;    gap: 32px;  }  .service-nav {    position: static;    display: flex;    flex-wrap: wrap;    gap: 0;  }  .service-nav-head {    width: 100%;  }  .service-nav a {    border-bottom: 0;    padding: 12px 16px;  }  .article-layout {    grid-template-columns: 1fr;    gap: 40px;  }  .article-side {    position: static;    grid-template-columns: repeat(2, minmax(0, 1fr));  }  .footer-grid {    grid-template-columns: 1.4fr 1fr 1fr;  }  .footer-grid > :last-child {    grid-column: 1 / -1;    padding-top: 24px;    border-top: 1px solid rgba(255, 255, 255, 0.08);  }  .about-grid {    grid-template-columns: 1fr;    gap: 40px;  }  .contact-grid {    grid-template-columns: 1fr;    gap: 40px;  }}@media (max-width: 860px) {  .nav,  .header-cta {    display: none;  }  .nav-toggle {    display: inline-flex;    margin-left: auto;  }  .section {    padding: 68px 0;  }  .hero {    padding: 132px 0 72px;  }  .hero-stats {    grid-template-columns: repeat(2, minmax(0, 1fr));    gap: 0;  }  .hero-stat {    padding: 22px 16px 22px 0;    border-bottom: 1px solid rgba(255, 255, 255, 0.1);  }  .hero-stat + .hero-stat {    padding-left: 20px;    border-left: 1px solid rgba(255, 255, 255, 0.1);  }  .hero-stat:nth-child(odd) {    border-left: 0;    padding-left: 0;  }  .stat-strip {    grid-template-columns: repeat(2, minmax(0, 1fr));  }  .stat-cell {    border-bottom: 1px solid var(--line);  }  .stat-cell:nth-child(2n) {    border-right: 0;  }  .news-grid {    grid-template-columns: 1fr;  }  .pillar-grid {    grid-template-columns: 1fr;  }  .process {    grid-template-columns: repeat(2, minmax(0, 1fr));  }  .section-head {    flex-direction: column;    align-items: flex-start;    gap: 20px;  }  .news-list-item {    grid-template-columns: 1fr auto;    gap: 12px 20px;    padding: 22px 0;  }  .news-list-date {    grid-column: 1 / -1;    display: flex;    align-items: center;    flex-wrap: wrap;    gap: 8px;  }  .news-list-date strong {    display: inline;    font-size: 16px;  }  .news-list-date em {    margin-top: 0;  }  .article-side {    grid-template-columns: 1fr;  }  .form-card {    padding: 26px;  }  .client-name-list {    columns: 1;  }  .footer-grid {    grid-template-columns: 1fr 1fr;    gap: 32px;  }  .footer-brand {    grid-column: 1 / -1;  }}@media (max-width: 620px) {  .container {    padding: 0 18px;  }  .service-grid {    grid-template-columns: 1fr;  }  .value-grid {    grid-template-columns: 1fr;  }  .process {    grid-template-columns: 1fr;  }  .hero-actions .btn {    flex: 1;  }  .cta-inner {    flex-direction: column;    align-items: flex-start;  }  .service-items {    grid-template-columns: 1fr;  }  .form-grid {    grid-template-columns: 1fr;  }  .article-nav {    grid-template-columns: 1fr;  }  .footer-grid {    grid-template-columns: 1fr;  }  .file-item {    flex-wrap: wrap;    padding: 18px;  }  .news-list-item {    grid-template-columns: 1fr;  }  .news-list-arrow {    display: none;  }  .hero-panel {    padding: 20px;  }}

/* ==========================================================================
   全站公告条（后台「站点设置 → 全站公告条」控制，留空则不显示）
   ========================================================================== */
.site-notice {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 70;
  height: 38px;
  display: flex;
  align-items: center;
  background: linear-gradient(90deg, #fff2e8, #fff8f3);
  border-bottom: 1px solid rgba(249, 90, 8, 0.26);
  font-size: 13px;
  color: var(--ink);
}
.site-notice-inner {
  display: flex;
  align-items: center;
  gap: 9px;
  min-width: 0;
}
.site-notice-dot {
  width: 6px;
  height: 6px;
  flex: none;
  border-radius: 50%;
  background: var(--accent);
  box-shadow: 0 0 0 3px rgba(249, 90, 8, 0.18);
}
.site-notice a,
.site-notice span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.site-notice a {
  font-weight: 600;
  color: var(--ink);
}
.site-notice a:hover {
  color: var(--accent-600);
}
.site-notice svg {
  flex: none;
}

/* 有公告条时，固定头与首屏整体下移，避免遮挡 */
.has-notice .site-header {
  top: 38px;
}
.has-notice .hero {
  padding-top: 206px;
}
.has-notice .page-hero {
  padding-top: 186px;
}

@media (max-width: 720px) {
  .site-notice {
    font-size: 12.5px;
  }
  .has-notice .hero {
    padding-top: 178px;
  }
  .has-notice .page-hero {
    padding-top: 158px;
  }
}
