 :root {
  --ff-bg: #f6f8fb;
  --ff-surface: #ffffff;
  --ff-surface-soft: #f4faf2;
  --ff-brand: #5baa57;
  --ff-brand-dark: #163322;
  --ff-brand-border: #d7e7d5;
  --ff-text-muted: #64748b;
}

::-webkit-scrollbar {
  width: 8px;
}

::-webkit-scrollbar-track {
  background: transparent;
}

::-webkit-scrollbar-thumb {
  background: #cbd5e1;
  border-radius: 999px;
}

::-webkit-scrollbar-thumb:hover {
  background: #94a3b8;
}

html {
  margin: 0;
  padding: 0;
  scroll-padding-top: 120px;
}

body {
  margin: 0;
  padding: 0;
  background:
    radial-gradient(circle at top left, rgba(91, 170, 87, 0.07), transparent 26%),
    linear-gradient(180deg, #fbfcfe 0%, var(--ff-bg) 22%, #f7f9fc 100%);
  color: #0f172a;
}

.page-shell {
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.lang-zh {
  font-family: "Noto Sans SC", "PingFang SC", "Microsoft YaHei", "Hiragino Sans GB", sans-serif;
  line-height: 1.75;
}

.lang-en {
  font-family: "Manrope", system-ui, -apple-system, sans-serif;
}

.eyebrow-label {
  font-size: 0.9rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.22em;
}

.nav-brand-copy {
  font-size: 0.95rem;
  letter-spacing: -0.01em;
}

.nav-link-copy,
.button-copy {
  font-size: 0.95rem;
}

.page-hero-title {
  line-height: 0.98;
  letter-spacing: -0.045em;
}

.page-hero-copy,
.section-copy,
.feature-item-copy,
.solution-card-copy,
.pricing-copy,
.mobile-copy,
.conversion-copy,
.scan-copy {
  line-height: 1.85;
}

.section-title,
.conversion-title,
.mobile-title {
  line-height: 1.08;
  letter-spacing: -0.04em;
}

.workflow-card-title,
.solution-card-title,
.feature-panel-title,
.pricing-value {
  letter-spacing: -0.03em;
}

.pricing-card-header {
  min-height: 12.75rem;
}

.workflow-card-copy,
.stat-copy,
.testimonial-meta,
.feature-item-copy,
.solution-card-copy,
.pricing-copy,
.mobile-copy,
.conversion-copy {
  letter-spacing: -0.01em;
}

.lang-zh .eyebrow-label {
  font-size: 1.25rem;
  font-weight: 900;
  letter-spacing: 0.02em;
}

.lang-zh .nav-brand-copy {
  font-size: 0.89rem;
  letter-spacing: 0;
}

.lang-zh .nav-link-copy,
.lang-zh .button-copy {
  font-size: 0.94rem;
  letter-spacing: 0;
}

.lang-zh .page-hero-title {
  font-size: clamp(3rem, 6vw, 4.3rem);
  line-height: 1.08;
  letter-spacing: -0.035em;
}

.lang-zh .page-hero-copy {
  font-size: 1rem;
  line-height: 1.9;
}

.lang-zh .section-title,
.lang-zh .conversion-title,
.lang-zh .mobile-title {
  font-size: clamp(2.02rem, 3.55vw, 2.52rem);
  line-height: 1.18;
  letter-spacing: -0.028em;
}

.lang-zh .section-copy,
.lang-zh .feature-item-copy,
.lang-zh .solution-card-copy,
.lang-zh .pricing-copy,
.lang-zh .mobile-copy,
.lang-zh .conversion-copy,
.lang-zh .scan-copy,
.lang-zh .workflow-card-copy,
.lang-zh .stat-copy,
.lang-zh .testimonial-meta {
  font-size: 0.98rem;
  line-height: 1.84;
  letter-spacing: 0;
}

.lang-zh .workflow-card-title,
.lang-zh .solution-card-title,
.lang-zh .feature-panel-title,
.lang-zh .pricing-value {
  letter-spacing: -0.02em;
}

.lang-zh .workflow-card-title {
  font-size: 1.08rem;
  line-height: 1.35;
}

.lang-zh .feature-panel-title {
  font-size: 1.38rem;
  line-height: 1.24;
}

.lang-zh .solution-card-title {
  font-size: 1.16rem;
  line-height: 1.3;
}

.lang-zh .pricing-value {
  font-size: 2.95rem;
}

.lang-zh .pricing-plan-name,
.lang-zh .pricing-badge {
  letter-spacing: 0.08em;
}

.lang-zh .pricing-period {
  font-size: 0.95rem;
}

.lang-zh .pricing-feature-list {
  margin-top: 1.1rem;
  padding-top: 0.95rem;
}

.lang-zh .pricing-card-header {
  min-height: 13.5rem;
}

.lang-zh .pricing-feature-item {
  font-size: 0.94rem;
  line-height: 1.58;
}

.lang-zh .pricing-feature-item span {
  letter-spacing: 0;
}

.lang-zh .stat-copy {
  font-size: 0.96rem;
  line-height: 1.55;
}

.lang-zh .testimonial-meta,
.lang-zh .scan-copy {
  font-size: 0.92rem;
}

.lang-zh #testimonials .section-title,
.lang-zh #solutions .section-title,
.lang-zh #pricing .section-title {
  line-height: 1.2;
}

.lang-zh #testimonials p.text-\[15px\],
.lang-zh #solutions .section-copy,
.lang-zh #solutions .solution-card-copy,
.lang-zh #pricing .pricing-copy {
  letter-spacing: 0;
}

@media (max-width: 1024px) {
  .lang-zh .page-hero-title {
    font-size: clamp(2.72rem, 8vw, 3.78rem);
  }

  .lang-zh .section-title,
  .lang-zh .conversion-title,
  .lang-zh .mobile-title {
    font-size: clamp(1.84rem, 5vw, 2.16rem);
  }
}

@keyframes float {
  0%,
  100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-10px);
  }
}

.animate-float_6s_ease-in-out_infinite {
  animation: float 6s ease-in-out infinite;
}

.solution-card-media {
  isolation: isolate;
}

.solution-card-image {
  filter: brightness(0.92) saturate(0.88) contrast(0.98);
}

.solution-card-image--report {
  filter: brightness(0.86) saturate(0.76) contrast(1);
}

.solution-card-overlay {
  background:
    linear-gradient(180deg, rgba(15, 23, 42, 0.04) 0%, rgba(15, 23, 42, 0.22) 100%),
    linear-gradient(135deg, rgba(22, 51, 34, 0.24) 0%, rgba(91, 170, 87, 0.12) 100%);
  mix-blend-mode: multiply;
}
