/* ===== Core Tokens ===== */
:root {
  --brand-50: #fff8da;
  --brand-100: #ffefad;
  --brand-400: #f6c400;
  --brand-500: #e0b000;
  --brand-600: #b58900;

  --ink-900: #0f172a;
  --ink-700: #334155;
  --ink-500: #64748b;

  --line: #e2e8f0;
  --surface: #ffffff;
  --surface-soft: #f8fafc;

  --radius-lg: 14px;
  --radius-xl: 18px;
  --shadow-card: 0 10px 30px rgba(15, 23, 42, 0.08);

  --section-y: 3rem;
  --section-y-lg: 4rem;
}

.dark {
  --line: #334155;
  --surface: #0f172a;
  --surface-soft: #1e293b;
  --ink-900: #f8fafc;
  --ink-700: #cbd5e1;
  --ink-500: #94a3b8;
}

/* ===== Scrollbar ===== */
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background-color: #cbd5e1; border-radius: 20px; }
.dark ::-webkit-scrollbar-thumb { background-color: #475569; }
.no-scrollbar::-webkit-scrollbar { display: none; }
.no-scrollbar { -ms-overflow-style: none; scrollbar-width: none; }





/* ===== Rhythm ===== */
main > section {
  padding-top: var(--section-y);
  padding-bottom: var(--section-y);
}
@media (min-width: 1024px) {
  main > section {
    padding-top: var(--section-y-lg);
    padding-bottom: var(--section-y-lg);
  }
}

/* ===== Hero ===== */
#overview {
  padding-top: 3.25rem;
  padding-bottom: 3.25rem;
}
#overview .grid { gap: 2rem; }
#overview h1 {
  font-size: clamp(2rem, 3.2vw, 3.2rem);
  line-height: 1.08;
  text-decoration: none; /* 去掉高饱和下划线，减少噪点 */
}
#overview p {
  font-size: 1rem;
  line-height: 1.65;
  color: var(--ink-500);
}
#overview #product-carousel {
  padding: 1.25rem;
  border-radius: var(--radius-xl);
  border-color: var(--line);
  box-shadow: var(--shadow-card);
}

/* ===== Stat Row ===== */
.stat-list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.stat-list .stat-item { position: relative; }
.stat-list .stat-item + .stat-item {
  padding-left: 1rem;
  margin-left: 1rem;
}
.stat-list .stat-item + .stat-item::before {
  content: "";
  position: absolute;
  left: -1rem;
  top: 50%;
  width: 1px;
  height: 22px;
  background: var(--brand-500);
  transform: translateY(-50%);
}

/* ===== Contact CTA Bar ===== */
[data-purpose="contact-cta-bar"] {
  padding-top: 1rem;
  padding-bottom: 1rem;
  background: linear-gradient(135deg, var(--brand-400), #ffd952);
  color: #111827;
}
[data-purpose="contact-cta-bar"] a {
  color: #111827;
}
[data-purpose="contact-cta-bar"] a:hover {
  color: #000000;
  text-decoration: underline;
}
editor-content
/* ===== Specs / Tables ===== */
#specs .rounded-xl {
  border-color: color-mix(in srgb, var(--brand-500) 35%, var(--line));
}
#specs table th,
#specs table td {
  padding: 0.75rem 1rem;
}
#specs thead {
  background: color-mix(in srgb, var(--brand-100) 45%, transparent);
}

/* ===== Rich text area ===== */
.editor-content {
  color: var(--ink-700);
}
.editor-content * {
  font-family: "Noto Sans", "Space Grotesk", sans-serif !important;
  line-height: 1.75;
}
.editor-content h1,
.editor-content h2,
.editor-content h3 {
  color: var(--ink-900);
  line-height: 1.3;
  margin-top: 1.1em;
  margin-bottom: 0.5em;
}
.editor-content p + p { margin-top: 0.9em; }

/* ===== Cards ===== */
.group.rounded-xl {
  border-color: var(--line);
  border-radius: var(--radius-lg);
}
.group.rounded-xl:hover {
  transform: translateY(-2px);
  box-shadow: var(--shadow-card);
}

/* ===== Spacing helpers ===== */
.mb-12 { margin-bottom: 2rem; }
.mt-10 { margin-top: 1.75rem; }

/* ===== Mobile ===== */
@media (max-width: 767px) {
  .stat-list .stat-item + .stat-item {
    padding-left: 0;
    margin-left: 0;
  }
  .stat-list .stat-item + .stat-item::before { display: none; }

  #overview {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }
  #overview h1 {
    font-size: clamp(1.75rem, 8vw, 2.25rem);
  }
}


