:root {
  --site-font-family: "Inter", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  --site-font-family-display: var(--site-font-family);
  --site-font-family-mono: ui-monospace, "SFMono-Regular", "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;
  --site-color-brand: #d71c20;
  --site-color-heading: #3a3a3a;
  --site-color-text: #3a3a3a;
  --site-color-muted: #3a3a3a;
  --site-color-subtle: #3a3a3a;
  --site-color-white: #ffffff;
  --site-color-surface: #ffffff;
  --site-color-surface-soft: #f7f9fc;
  --site-color-surface-muted: #f3f6fa;
  --site-desktop-title-size: 40px;
  --site-desktop-title-line: 1.2;
  --site-desktop-section-title-size: 34px;
  --site-desktop-section-title-line: 1.24;
  --site-desktop-card-title-size: 24px;
  --site-desktop-card-title-line: 1.34;
  --site-desktop-small-title-size: 21px;
  --site-desktop-small-title-line: 1.38;
  --site-desktop-body-size: 16px;
  --site-desktop-body-strong-size: 17px;
  --site-desktop-body-line: 1.68;
  --site-desktop-small-size: 14px;
  --site-desktop-small-line: 1.58;
  --site-desktop-button-size: 14px;
  --site-weight-heading: 600;
  --site-weight-button: 600;
  --site-weight-body-strong: 500;
}

html {
  -webkit-text-size-adjust: 100%;
}

html,
body,
#app,
button,
input,
textarea,
select,
option,
label,
a,
span,
li,
dt,
dd,
small,
strong,
b {
  font-family: var(--site-font-family) !important;
}

body {
  margin: 0;
  font-family: var(--site-font-family);
  font-size: var(--site-desktop-body-size);
  line-height: var(--site-desktop-body-line);
  color: #3a3a3a;
  background: var(--site-color-surface);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin-top: 0;
  color: #3a3a3a;
  font-family: var(--site-font-family-display);
  font-weight: var(--site-weight-heading);
  letter-spacing: -0.02em;
}

h1 {
  font-size: var(--site-desktop-title-size);
  line-height: var(--site-desktop-title-line);
}

h2 {
  font-size: var(--site-desktop-section-title-size);
  line-height: var(--site-desktop-section-title-line);
}

h3 {
  font-size: var(--site-desktop-card-title-size);
  line-height: var(--site-desktop-card-title-line);
}

h4,
h5,
h6 {
  font-size: var(--site-desktop-small-title-size);
  line-height: var(--site-desktop-small-title-line);
}

p,
li,
dd,
dt {
  color: #3a3a3a;
}

a {
  color: #3a3a3a;
  text-decoration: none;
}

a:hover {
  color: #3a3a3a;
}

button,
input,
textarea,
select {
  font: inherit;
  color: inherit;
}

strong,
b {
  color: #3a3a3a;
  font-weight: var(--site-weight-body-strong);
}

small {
  font-size: var(--site-desktop-small-size);
  line-height: var(--site-desktop-small-line);
}

code,
pre,
kbd,
samp {
  font-family: var(--site-font-family-mono);
}

.site-title {
  color: #3a3a3a;
  font-size: var(--site-desktop-title-size);
  line-height: var(--site-desktop-title-line);
  font-weight: var(--site-weight-heading);
  letter-spacing: -0.02em;
}

.site-section-title {
  color: #3a3a3a;
  font-size: var(--site-desktop-section-title-size);
  line-height: var(--site-desktop-section-title-line);
  font-weight: var(--site-weight-heading);
  letter-spacing: -0.02em;
}

.site-body-strong {
  color: #3a3a3a;
  font-size: var(--site-desktop-body-strong-size);
  line-height: var(--site-desktop-body-line);
  font-weight: var(--site-weight-body-strong);
}

.site-caption {
  color: #3a3a3a;
  font-size: var(--site-desktop-small-size);
  line-height: var(--site-desktop-small-line);
}

.ss-font-bold {
  font-weight: var(--site-weight-heading);
}

.ss-font-34 {
  font-size: var(--site-desktop-section-title-size);
  line-height: var(--site-desktop-section-title-line);
}

.ss-font-22 {
  font-size: var(--site-desktop-card-title-size);
  line-height: var(--site-desktop-card-title-line);
}

.ss-font-17 {
  font-size: var(--site-desktop-body-strong-size);
  line-height: var(--site-desktop-body-line);
}

.ss-font-16 {
  font-size: var(--site-desktop-body-size);
  line-height: var(--site-desktop-body-line);
}

.ss-font-15,
.ss-font-14,
.ss-font-13,
.ss-font-12 {
  font-size: var(--site-desktop-small-size);
  line-height: var(--site-desktop-small-line);
}

@media (min-width: 768px) and (max-width: 1023px) {
  :root {
    --site-desktop-title-size: 34px;
    --site-desktop-section-title-size: 30px;
    --site-desktop-card-title-size: 22px;
    --site-desktop-small-title-size: 19px;
    --site-desktop-body-size: 15px;
    --site-desktop-body-strong-size: 16px;
    --site-desktop-button-size: 14px;
  }

  .ss-font-34 {
    font-size: var(--site-desktop-section-title-size);
  }

  .ss-font-22 {
    font-size: var(--site-desktop-card-title-size);
  }

  .ss-font-17 {
    font-size: var(--site-desktop-body-strong-size);
  }

  .ss-font-16 {
    font-size: var(--site-desktop-body-size);
  }

  .ss-font-15,
  .ss-font-14,
  .ss-font-13,
  .ss-font-12 {
    font-size: var(--site-desktop-small-size);
  }
}

@media (max-width: 767px) {
  :root {
    --site-desktop-title-size: 30px;
    --site-desktop-title-line: 1.18;
    --site-desktop-section-title-size: 26px;
    --site-desktop-section-title-line: 1.28;
    --site-desktop-card-title-size: 20px;
    --site-desktop-card-title-line: 1.38;
    --site-desktop-small-title-size: 18px;
    --site-desktop-small-title-line: 1.44;
    --site-desktop-body-size: 15px;
    --site-desktop-body-strong-size: 16px;
    --site-desktop-body-line: 1.64;
    --site-desktop-small-size: 13px;
    --site-desktop-small-line: 1.54;
    --site-desktop-button-size: 14px;
  }

  .ss-font-34 {
    font-size: var(--site-desktop-section-title-size);
    line-height: var(--site-desktop-section-title-line);
  }

  .ss-font-22 {
    font-size: var(--site-desktop-card-title-size);
    line-height: var(--site-desktop-card-title-line);
  }

  .ss-font-17 {
    font-size: var(--site-desktop-body-strong-size);
    line-height: var(--site-desktop-body-line);
  }

  .ss-font-16 {
    font-size: var(--site-desktop-body-size);
    line-height: var(--site-desktop-body-line);
  }

  .ss-font-15,
  .ss-font-14,
  .ss-font-13,
  .ss-font-12 {
    font-size: var(--site-desktop-small-size);
    line-height: var(--site-desktop-small-line);
  }
}

:root {
        --solution-bg: #f3f7fb;
        --solution-surface: #ffffff;
        --solution-ink: #3a3a3a;
        --solution-muted: #3a3a3a;
        --solution-line: rgba(23, 32, 51, 0.08);
        --solution-brand: #d71c20;
        --solution-brand-soft: rgba(215, 28, 32, 0.08);
        --solution-shadow: 0 18px 46px rgba(215, 28, 32, 0.34);
      }
      * { box-sizing: border-box; }
      body {
        margin: 0;
        color: #3a3a3a;
        background: linear-gradient(180deg, #f6fbff 0, var(--solution-bg) 260px, var(--solution-bg) 100%);
        font-family: var(--site-font-family);
      }
      a { color: inherit; text-decoration: none; }
      .solution-shell { width: min(1180px, calc(100% - 40px)); margin-left: max(20px, calc((100vw - 1200px) / 2)); margin-right: 0; }
      .solution-topbar { position: sticky; top: 0; z-index: 10020; background: #ffffff; border-bottom: 1px solid rgba(221,227,234,0.78); }
      .solution-topbar__inner { display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:64px; }
      .solution-logo { display:inline-flex; align-items:center; justify-content:center; flex:0 0 95px; width:95px; height:55px; gap:0; font-size:0; font-weight:700; }
      .solution-logo img { width:95px; height:55px; object-fit:contain; display:block; }
      .solution-logo span { display:none; }
      .solution-nav { display:flex; flex-wrap:wrap; gap:18px; color:#3a3a3a; font-size:14px; }
      .solution-nav a:hover, .solution-nav a:focus-visible { color: #3a3a3a; }
      .layout-tips { position:fixed; right:0; bottom:20px; z-index:9999; display:flex; flex-direction:column; align-items:flex-end; gap:0; }
      .layout-tips a { width:50px; height:50px; display:flex; align-items:center; justify-content:center; padding:0; overflow:visible; }
      .layout-tips a img { width:50px; height:50px; display:block; object-fit:contain; }
      .layout-tips a:last-child { margin-top:14px; }
      .solution-hero { padding:88px 0 48px; }
      .solution-breadcrumb { color:#3a3a3a; font-size:14px; margin-bottom:18px; }
      .solution-breadcrumb a:hover, .solution-breadcrumb a:focus-visible { color: #3a3a3a; }
      .solution-hero__grid { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(320px,0.92fr); gap:28px; }
      .solution-hero__copy, .solution-hero__panel, .solution-card, .solution-faq-item, .solution-cta, .solution-stage { background:var(--solution-surface); border:1px solid var(--solution-line); box-shadow:var(--solution-shadow); }
      .solution-hero__copy { padding:42px 40px; }
      .solution-eyebrow { display:inline-flex; padding:7px 14px; border-radius:999px; background:var(--solution-brand-soft); color:#3a3a3a; font-size:13px; font-weight:700; }
      .solution-hero h1 { margin:18px 0 20px; font-size:clamp(34px,4vw,52px); line-height:1.14; }
      .solution-hero__lead { margin:0; color:#3a3a3a; font-size:18px; line-height:1.9; }
      .solution-tags { display:flex; flex-wrap:wrap; gap:12px; margin:28px 0 0; padding:0; list-style:none; }
      .solution-tags li { padding:10px 14px; border-radius:999px; background:#f8fafc; color:#3a3a3a; font-size:14px; }
      .solution-actions { display:flex; flex-wrap:wrap; gap:14px; margin-top:32px; }
      .solution-button { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:0 22px; border-radius:999px; border:1px solid transparent; font-size:15px; font-weight:700; }
      .solution-button--primary { background:var(--solution-brand); color:#fff; }
      .solution-button--secondary { border-color:rgba(215,28,32,0.18); background:#fff; color:#3a3a3a; }
      .solution-hero__panel { padding:34px 30px; background:linear-gradient(135deg, rgba(215,28,32,0.08), rgba(255,255,255,0) 48%), var(--solution-surface); }
      .solution-hero__panel h2 { margin:0 0 18px; font-size:28px; }
      .solution-metric-list { display:grid; gap:16px; }
      .solution-metric { padding:18px; border:1px solid rgba(23,32,51,0.07); background:rgba(255,255,255,0.9); }
      .solution-metric strong { display:block; margin-bottom:8px; font-size:18px; }
      .solution-metric p, .solution-card p, .solution-card li, .solution-faq-item p, .solution-stage p, .solution-stage li, .solution-cta p { margin:0; color:#3a3a3a; line-height:1.85; }
      .solution-section { padding:18px 0 28px; }
      .solution-section h2 { margin:0 0 16px; font-size:32px; line-height:1.25; }
      .solution-section__lead { margin:0 0 28px; color:#3a3a3a; line-height:1.9; font-size:16px; }
      .solution-card-grid, .solution-faq { display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:22px; }
      .solution-card { padding:28px 24px; }
      .solution-card h3, .solution-faq-item h3, .solution-stage h3 { margin:0 0 14px; font-size:22px; line-height:1.4; }
      .solution-stage-grid { display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); gap:18px; }
      .solution-stage { padding:26px 22px; }
      .solution-stage ul, .solution-card ul { margin:0; padding-left:18px; }
      .solution-faq { grid-template-columns:repeat(2, minmax(0,1fr)); }
      .solution-faq-item { padding:28px 24px; border-left:4px solid var(--solution-brand); }
      .solution-cta { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:24px; align-items:center; padding:30px 32px; margin:36px 0 88px; }
      .solution-cta h2 { margin:0 0 10px; font-size:28px; }
      .solution-footer { padding:0 0 58px; color:#3a3a3a; font-size:14px; }
      .solution-footer__inner { display:flex; flex-wrap:wrap; justify-content:space-between; gap:18px; padding-top:24px; border-top:1px solid rgba(23,32,51,0.1); }
      @media (max-width: 1024px) {
        .solution-hero__grid, .solution-cta { grid-template-columns:1fr; }
        .solution-card-grid, .solution-stage-grid { grid-template-columns:repeat(2, minmax(0,1fr)); }
        .solution-faq { grid-template-columns:1fr; }
      }
      @media (max-width: 767px) {
        .solution-shell { width:min(100% - 24px, 1180px); }
        .solution-topbar__inner { padding:12px 0; align-items:flex-start; flex-direction:column; }
        .solution-hero { padding:56px 0 28px; }
        .solution-hero__copy, .solution-hero__panel, .solution-card, .solution-faq-item, .solution-cta, .solution-stage { padding:24px 20px; }
        .solution-card-grid, .solution-stage-grid { grid-template-columns:1fr; }
        .solution-section h2, .solution-cta h2 { font-size:26px; }
      }
