:root {
  --ink: #17110e;
  --ink-soft: #231915;
  --ink-card: #2d201a;
  --paper: #f5f0e7;
  --paper-deep: #ebe3d7;
  --white: #fffdf8;
  --muted: #766b63;
  --muted-light: #b7aa9d;
  --line: rgba(44, 31, 24, .13);
  --line-light: rgba(255, 249, 239, .13);
  --orange: #f0582a;
  --orange-bright: #ff7040;
  --gold: #dda94a;
  --red: #9f2e20;
  --sage: #7d9277;
  --display: "Arial", "PingFang SC", "Microsoft YaHei", "Noto Sans SC", sans-serif;
  --body: "Inter", "PingFang SC", "Microsoft YaHei", "Noto Sans SC", sans-serif;
  --header: 78px;
  --radius: 20px;
  --container: 1280px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--ink); }
body { margin: 0; min-width: 320px; color: var(--ink); background: var(--paper); font-family: var(--body); font-size: 16px; line-height: 1.65; overflow-x: hidden; -webkit-font-smoothing: antialiased; }
body.menu-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
button { color: inherit; font: inherit; }
svg { display: block; }
::selection { color: var(--white); background: var(--orange); }
.container { width: min(calc(100% - 48px), var(--container)); margin-inline: auto; }
.section { position: relative; padding: 124px 0; }
section[id] { scroll-margin-top: calc(var(--header) - 1px); }
.scroll-progress { position: fixed; z-index: 1100; top: 0; left: 0; right: 0; height: 3px; pointer-events: none; }
.scroll-progress span { display: block; width: 0; height: 100%; background: linear-gradient(90deg, var(--orange), var(--gold)); box-shadow: 0 0 14px rgba(240, 88, 42, .7); }
.cursor-aura { position: fixed; z-index: 3; width: 360px; height: 360px; border-radius: 50%; background: radial-gradient(circle, rgba(240, 88, 42, .09), transparent 65%); transform: translate(-50%, -50%); pointer-events: none; opacity: 0; transition: opacity .3s ease; }
.cursor-aura.active { opacity: 1; }
.site-header { position: fixed; z-index: 1000; top: 0; left: 0; right: 0; height: var(--header); color: var(--white); border-bottom: 1px solid transparent; transition: background .35s ease, border-color .35s ease, transform .35s ease; }
.site-header.scrolled { background: rgba(23, 17, 14, .9); border-color: var(--line-light); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); }
.site-header.hidden { transform: translateY(-100%); }
.nav-shell { width: min(calc(100% - 48px), 1440px); height: 100%; margin-inline: auto; display: flex; align-items: center; justify-content: space-between; gap: 28px; }
.brand { display: inline-flex; align-items: center; gap: 12px; flex: 0 0 auto; }
.brand-mark { width: 39px; height: 39px; display: block; object-fit: contain; filter: drop-shadow(0 0 10px rgba(8, 185, 215, .26)); }
.brand-copy { display: flex; flex-direction: column; line-height: 1; }
.brand-copy strong { color: var(--white); font: 700 18px/1 var(--display); letter-spacing: .16em; }
.brand-copy small { margin-top: 6px; color: var(--muted-light); font-size: 12px; letter-spacing: .2em; }
.main-nav { display: flex; align-items: center; justify-content: center; gap: clamp(18px, 2.25vw, 38px); margin-left: auto; }
.main-nav a { position: relative; color: rgba(255, 253, 248, .7); font-size: 14px; white-space: nowrap; transition: color .25s ease; }
.main-nav a::after { content: ""; position: absolute; left: 0; right: 100%; bottom: -9px; height: 1px; background: var(--orange-bright); transition: right .3s ease; }
.main-nav a:hover { color: var(--white); }
.main-nav a:hover::after { right: 0; }
.nav-actions { position: relative; z-index: 2; display: flex; align-items: center; gap: 12px; }
.site-header > .nav-shell > .brand { position: relative; z-index: 2; }
.language-switch { min-width: 72px; height: 38px; padding: 0 12px; display: flex; align-items: center; justify-content: center; gap: 8px; color: rgba(255,255,255,.65); background: transparent; border: 1px solid rgba(255,255,255,.16); border-radius: 999px; cursor: pointer; font-size: 12px; transition: border-color .25s, color .25s; }
.language-switch:hover { color: var(--white); border-color: rgba(255,255,255,.4); }
.language-current { color: var(--orange-bright); font-weight: 700; }
.language-divider { width: 1px; height: 12px; background: rgba(255,255,255,.2); }
.nav-consult { min-height: 40px; padding: 0 18px; display: inline-flex; align-items: center; color: var(--ink); background: var(--white); border-radius: 999px; font-size: 13px; font-weight: 700; transition: transform .25s, background .25s; }
.nav-consult:hover { transform: translateY(-2px); background: var(--orange-bright); }
.menu-toggle { width: 42px; height: 42px; display: none; place-items: center; padding: 0; background: transparent; border: 1px solid rgba(255,255,255,.16); border-radius: 50%; cursor: pointer; }
.menu-toggle span { position: absolute; width: 17px; height: 1px; background: var(--white); transition: transform .3s ease; }
.menu-toggle span:first-child { transform: translateY(-3px); }
.menu-toggle span:last-child { transform: translateY(3px); }
.menu-toggle.active span:first-child { transform: rotate(45deg); }
.menu-toggle.active span:last-child { transform: rotate(-45deg); }
.section-heading { margin-bottom: 58px; }
.split-heading { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(300px, .7fr); align-items: end; gap: 80px; }
.section-heading.centered { max-width: 860px; margin-inline: auto; text-align: center; }
.section-kicker { display: block; margin-bottom: 18px; color: var(--orange); font: 700 12px/1 var(--display); letter-spacing: .2em; }
.section-heading h2 { max-width: 800px; margin: 0; font-family: var(--display); font-size: clamp(36px, 4.1vw, 62px); line-height: 1.08; letter-spacing: -.045em; }
html[lang="zh-CN"] h1, html[lang="zh-CN"] h2, html[lang="zh-CN"] h3, html[lang="zh-CN"] h4 { text-wrap: balance; line-break: strict; }
html[lang="zh-CN"] .section-heading h2 { max-width: 760px; font-size: clamp(30px, 3.2vw, 48px); line-height: 1.16; letter-spacing: -.035em; }
.section-heading p { margin: 0; color: var(--muted); font-size: 16px; }
.section-heading.centered p { max-width: 700px; margin: 20px auto 0; }
.section-heading.light { color: var(--white); }
.section-heading.light p { color: var(--muted-light); }
.eyebrow { display: inline-flex; align-items: center; gap: 10px; color: rgba(255,255,255,.7); font-size: 12px; letter-spacing: .16em; text-transform: uppercase; }
.eyebrow-pulse, .live-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--orange-bright); box-shadow: 0 0 0 0 rgba(255,112,64,.5); animation: pulse 2.2s infinite; }
.button { min-height: 52px; padding: 0 25px; display: inline-flex; align-items: center; justify-content: center; gap: 16px; border: 1px solid transparent; border-radius: 999px; font-size: 14px; font-weight: 700; transition: transform .25s, box-shadow .25s, color .25s, background .25s, border-color .25s; }
.button svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 1.5; }
.button:hover { transform: translateY(-3px); }
.button-primary { color: var(--white); background: var(--orange); box-shadow: 0 15px 45px rgba(240,88,42,.2); }
.button-primary:hover { background: var(--orange-bright); box-shadow: 0 18px 55px rgba(240,88,42,.32); }
.button-ghost { color: var(--white); border-color: rgba(255,255,255,.22); }
.button-ghost:hover { border-color: var(--gold); color: var(--gold); }
.button-light { color: var(--ink); background: var(--white); }
.button-light:hover { background: var(--gold); }


.back-top { position: fixed; z-index: 800; right: 24px; bottom: 24px; width: 46px; height: 46px; display: grid; place-items: center; color: var(--white); background: var(--ink); border: 1px solid var(--line-light); border-radius: 50%; opacity: 0; pointer-events: none; transform: translateY(12px); cursor: pointer; transition: opacity .3s, transform .3s, background .3s; }
.back-top.visible { opacity: 1; pointer-events: auto; transform: none; }
.back-top:hover { background: var(--orange); }
.back-top svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.5; }
@keyframes pulse { 70% { box-shadow: 0 0 0 9px rgba(255,112,64,0); } 100% { box-shadow: 0 0 0 0 rgba(255,112,64,0); } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }  }

/* Technical polish: focus rings + below-fold paint containment (no content change) */
:focus-visible { outline: 2px solid rgba(240,88,42,.9); outline-offset: 3px; }
/* content-visibility disabled for smooth reveal */
.product-tabs { scroll-padding-inline: 16px; }