:root {
  color-scheme: dark;
  --bg:#0b0e10; --bg-soft:#14191c; --panel:rgba(20,25,28,.94); --panel-solid:#171c20;
  --text:#f1f5f6; --muted:#a4b0b8; --line:#2b3339; --primary:#79b0ff; --primary-strong:#93c0ff;
  --accent:#62e8bf; --gold:#eab66e; --shadow:rgba(0,0,0,.22); --radius:6px;
  --hero-mask:linear-gradient(90deg,#0b0e10 0%,rgba(11,14,16,.95) 26%,rgba(11,14,16,.68) 47%,rgba(11,14,16,.04) 80%);
}
[data-theme="light"] {
  color-scheme:light;
  --bg:#fff; --bg-soft:#f4f6f6; --panel:rgba(255,255,255,.94); --panel-solid:#fff;
  --text:#151c22; --muted:#596870; --line:#dce3e6; --primary:#1261de; --primary-strong:#084eaf;
  --accent:#087d66; --gold:#95600a; --shadow:rgba(22,42,52,.08);
  --hero-mask:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.98) 24%,rgba(255,255,255,.85) 44%,rgba(255,255,255,.02) 80%);
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:100px; }
body { margin:0; background:var(--bg); color:var(--text); font:15px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif; letter-spacing:0; }
a { color:inherit; text-decoration:none; }
button { font:inherit; cursor:pointer; }
button,a { -webkit-tap-highlight-color:transparent; }
:focus-visible { outline:2px solid var(--primary); outline-offset:5px; }
::selection { background:#96efd3; color:#101b18; }
.page { overflow:clip; }
.icon { width:24px; height:24px; display:block; }
.nav { position:fixed; inset:0 0 auto; z-index:20; border-bottom:1px solid var(--line); background:color-mix(in srgb,var(--bg) 88%,transparent); backdrop-filter:blur(20px); }
.nav-inner,.hero-inner,.section,.metrics,.footer { width:min(1280px,calc(100% - 80px)); margin-inline:auto; }
.nav-inner { height:76px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.brand { display:flex; align-items:center; gap:12px; font-size:20px; font-weight:750; white-space:nowrap; }
.brand-mark { width:34px; height:34px; background:white; border-radius:6px; overflow:hidden; display:grid; place-items:center; }
.brand-mark img { width:100%; height:100%; }
.nav-links { display:flex; gap:24px; font-size:13px; color:var(--muted); }
.nav-links a { position:relative; padding-block:27px; white-space:nowrap; transition:color .2s; }
.nav-links a::after { content:""; height:2px; position:absolute; bottom:16px; left:0; right:100%; background:var(--accent); transition:right .25s; }
.nav-links a:hover,.nav-links a[aria-current="location"] { color:var(--text); }
.nav-links a[aria-current="location"]::after { right:0; }
.nav-actions { display:flex; gap:16px; align-items:center; }
.primary-button,.ghost-button { display:inline-flex; align-items:center; justify-content:center; gap:16px; min-height:42px; padding:9px 20px; border:1px solid var(--line); border-radius:5px; font-size:14px; font-weight:650; line-height:1.4; text-align:center; transition:background .2s,transform .2s,border-color .2s; }
.primary-button { color:#fff; background:#216bdf; border-color:#216bdf; }
.primary-button:hover { background:#135dcf; border-color:#135dcf; transform:translateY(-2px); }
.ghost-button { color:var(--text); background:color-mix(in srgb,var(--bg) 70%,transparent); }
.ghost-button:hover { border-color:var(--primary); background:var(--bg-soft); }
.theme-toggle { display:flex; align-items:center; gap:2px; padding:3px; border:1px solid var(--line); border-radius:6px; }
.theme-option { width:30px; height:30px; display:grid; place-items:center; border:0; border-radius:3px; background:transparent; color:var(--muted); }
.theme-option svg { width:17px; height:17px; stroke-width:1.8; }
.theme-option[aria-checked="true"] { background:var(--bg-soft); color:var(--primary); }
.hero { position:relative; isolation:isolate; padding-top:76px; min-height:710px; display:flex; align-items:center; background:var(--bg); }
.hero::before { content:""; position:absolute; inset:0; z-index:-1; background:var(--hero-mask); pointer-events:none; }
.hero::after { content:""; position:absolute; inset:auto 0 0; height:90px; z-index:-1; background:linear-gradient(0deg,var(--bg),transparent); pointer-events:none; }
.hero-bg { position:absolute; inset:0; z-index:-2; background-size:cover; background-position:center right; opacity:0; transition:opacity 1s; }
.hero-bg.is-active { opacity:1; }
.hero-inner { position:relative; padding-block:70px 66px; }
.hero-copy { max-width:665px; }
.eyebrow { display:flex; align-items:center; gap:18px; margin-bottom:28px; }
.eyebrow strong { font-size:22px; font-weight:700; }
.eyebrow span { border-left:1px solid var(--line); padding-left:18px; font-size:12px; color:var(--muted); }
h1 { margin:0; font-size:64px; line-height:1.16; font-weight:750; }
h1 .hero-emphasis { color:var(--accent); }
.lead { max-width:570px; margin:28px 0 0; color:var(--muted); font-size:16px; line-height:1.9; }
.hero-badges { display:flex; flex-wrap:wrap; gap:8px 20px; margin-top:22px; }
.hero-badges span { font-size:12px; color:var(--muted); display:flex; align-items:center; gap:7px; }
.hero-badges span::before { content:""; width:4px; height:4px; background:var(--accent); }
.hero-actions { display:flex; gap:12px; margin-top:32px; }
.hero-actions a { min-height:48px; padding-inline:24px; }
.hero-carousel { display:flex; align-items:center; gap:7px; margin-top:26px; }
.hero-dot { width:40px; height:24px; padding:0; border:0; background:transparent; position:relative; }
.hero-dot::before { content:""; position:absolute; inset:10px 0; background:var(--line); transition:background .3s; }
.hero-dot.is-active::before { background:var(--accent); }
.carousel-pause { width:28px; height:28px; border:0; color:var(--muted); background:transparent; font-size:13px; }
.metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-block:1px solid var(--line); padding-block:25px; }
.metric { padding-inline:28px; border-right:1px solid var(--line); }
.metric:first-child { padding-left:0; }
.metric:last-child { border-right:0; }
.metric strong { display:block; font-size:24px; font-weight:650; line-height:1.5; margin-bottom:4px; }
.metric span { font-size:12px; color:var(--muted); }
.section { margin-top:104px; }
.section[data-index] { position:relative; }
.section[data-index]::before { content:attr(data-index) " /"; display:block; color:var(--accent); font:13px/1.4 ui-monospace,SFMono-Regular,monospace; margin-bottom:18px; }
.section-head { display:flex; gap:28px; justify-content:space-between; align-items:end; margin-bottom:36px; }
h2 { font-size:32px; line-height:1.4; font-weight:650; margin:0; }
.section-head h2 { flex-shrink:0; }
.section-head p { margin:0 0 5px; color:var(--muted); font-size:12px; line-height:1.7; }
.proof-strip { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); margin-top:42px; gap:32px; }
.proof-item { display:grid; gap:8px; }
.proof-item strong { font-size:14px; font-weight:650; }
.proof-item span { color:var(--muted); font-size:12px; line-height:1.8; }
.modules { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-block:1px solid var(--line); counter-reset:module; }
.module { position:relative; padding:34px 32px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); counter-increment:module; transition:background .25s; }
.module:nth-child(3n) { border-right:0; }
.module:nth-last-child(-n+3) { border-bottom:0; }
.module::after { content:"0" counter(module); position:absolute; right:30px; top:32px; font:12px/1 ui-monospace,monospace; color:var(--muted); }
.module:hover { background:var(--bg-soft); }
.module-icon { width:56px; height:56px; color:var(--primary); margin-bottom:26px; display:grid; align-items:center; }
.module:nth-child(2n) .module-icon { color:var(--accent); }
.module-icon .icon { width:44px; height:44px; }
.module h3 { font-size:19px; line-height:1.5; margin:0 0 12px; font-weight:650; }
.module p { font-size:14px; color:var(--muted); line-height:1.9; margin:0; }
.module-meta { display:flex; flex-wrap:wrap; gap:16px; margin-top:22px; }
.module-meta span { font-size:11px; color:var(--primary); }
.module-meta span + span { padding-left:16px; border-left:1px solid var(--line); }
#features { padding-block:52px; }
#features::after { content:""; position:absolute; z-index:-1; inset:0 calc((1280px - 100vw) / 2); background:var(--bg-soft); }
.feature-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:72px; }
.feature-card { display:grid; grid-template-columns:40px 1fr; align-items:start; gap:22px; padding:28px 0; border-bottom:1px solid var(--line); }
.feature-card:nth-last-child(-n+2) { border-bottom:0; }
.feature-icon { width:40px; height:40px; display:grid; align-items:center; color:var(--primary); }
.feature-icon .icon { width:30px; height:30px; }
.feature-card:nth-child(3n) .feature-icon { color:var(--accent); }
.feature-card:last-child .feature-icon { color:var(--gold); }
.feature-card h3 { margin:3px 0 10px; font-size:17px; font-weight:650; }
.feature-card p { margin:0; font-size:13px; color:var(--muted); line-height:1.85; }
.feature-tags { display:flex; gap:8px; flex-wrap:wrap; margin-top:14px; }
.tag { color:var(--muted); font-size:11px; padding:2px 8px; border:1px solid var(--line); border-radius:3px; }
.scenario-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); border-top:1px solid var(--line); }
.scenario { padding:28px 24px 0; border-right:1px solid var(--line); }
.scenario:first-child { padding-left:0; }
.scenario:last-child { padding-right:0; border-right:0; }
.scenario-no { color:var(--accent); font:32px/1.2 ui-monospace,monospace; margin-bottom:26px; }
.scenario h3 { margin:0 0 12px; font-size:16px; font-weight:650; }
.scenario p { margin:0; font-size:13px; color:var(--muted); line-height:1.9; }
.workflow-wrap { display:grid; grid-template-columns:.9fr 1.1fr; gap:60px; align-items:start; }
.workflow { padding-block:8px; }
.workflow h3 { font-size:18px; margin:0 0 12px; }
.workflow p { font-size:14px; color:var(--muted); margin:0; }
.step-list { position:relative; margin-top:28px; }
.step-list::before { content:""; position:absolute; top:16px; bottom:44px; width:1px; left:16px; background:var(--line); }
.step { display:grid; grid-template-columns:34px 1fr; gap:20px; position:relative; padding-bottom:28px; }
.step:last-child { padding-bottom:0; }
.step b { background:var(--bg); color:var(--accent); border:1px solid var(--accent); border-radius:50%; width:34px; height:34px; display:grid; place-items:center; font:14px/1 ui-monospace,monospace; }
.step div { padding-top:3px; font-size:15px; font-weight:600; }
.step span { display:block; font-size:13px; line-height:1.8; font-weight:400; color:var(--muted); margin-top:5px; }
.quote-board { position:relative; padding:28px; border:1px solid var(--line); border-top:3px solid var(--accent); border-radius:6px; background:var(--panel-solid); box-shadow:0 20px 60px var(--shadow); }
.board-top { display:flex; justify-content:space-between; gap:16px; align-items:start; margin-bottom:22px; }
.board-top h3 { font-size:18px; margin:0 0 6px; }
.board-top p { color:var(--muted); font-size:12px; margin:0; }
.status { font-size:11px; color:var(--accent); white-space:nowrap; }
.quote-summary { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin-bottom:22px; padding-block:18px; border-block:1px solid var(--line); }
.summary-card { padding-left:18px; border-left:1px solid var(--line); }
.summary-card:first-child { padding-left:0; border-left:0; }
.summary-card strong { display:block; font-size:26px; line-height:1.4; font-weight:600; font-variant-numeric:tabular-nums; }
.summary-card span { font-size:11px; color:var(--muted); }
.quote-row { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:16px; font-size:13px; padding-block:14px; border-bottom:1px solid var(--line); }
.quote-row:last-child { border-bottom:0; padding-bottom:0; }
.quote-row small { display:block; color:var(--muted); font-size:11px; margin-top:4px; }
.price { color:var(--primary); font-size:13px; font-weight:700; white-space:nowrap; }
.role-visual { margin:0 0 36px; position:relative; overflow:hidden; }
.role-visual img { display:block; width:100%; aspect-ratio:3 / 1; object-fit:cover; }
.role-visual figcaption { position:absolute; left:24px; bottom:24px; background:rgba(11,14,16,.86); color:#fff; padding:10px 16px; font-size:13px; border-left:3px solid #62e8bf; }
.role-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:36px; }
.role { padding-right:36px; border-right:1px solid var(--line); }
.role:last-child { padding-right:0; border:0; }
.role-top { display:flex; justify-content:space-between; gap:12px; align-items:center; margin-bottom:20px; }
.role-top b { font-size:12px; color:var(--accent); font-weight:500; }
.role h3 { font-size:18px; margin:0 0 12px; font-weight:650; }
.role p { font-size:13px; line-height:1.85; margin:0; color:var(--muted); }
.cta-band { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:60px; align-items:center; padding-block:56px; border-block:1px solid var(--line); }
.cta-band h2 { font-size:30px; max-width:750px; margin-bottom:14px; }
.cta-band p { font-size:14px; color:var(--muted); margin:0; }
.cta-actions { display:flex; flex-direction:column; gap:12px; min-width:170px; }
.footer { display:flex; justify-content:space-between; gap:20px; padding-block:32px; color:var(--muted); font-size:12px; }
.footer a { color:var(--text); }
.contact-modal { position:fixed; inset:0; z-index:40; display:none; place-items:center; padding:24px; background:rgba(6,10,14,.65); backdrop-filter:blur(12px); }
.contact-modal.is-open { display:grid; }
.contact-card { width:min(680px,100%); max-height:calc(100dvh - 48px); overflow:auto; background:var(--panel-solid); border:1px solid var(--line); border-top:3px solid var(--accent); border-radius:6px; box-shadow:0 30px 100px rgba(0,0,0,.25); }
.contact-head { display:grid; grid-template-columns:44px minmax(0,1fr) 32px; align-items:start; gap:18px; padding:30px; }
.contact-mark { width:44px; height:44px; background:#fff; border-radius:6px; overflow:hidden; }
.contact-mark img { width:100%; height:100%; }
.contact-head h2 { font-size:22px; }
.contact-head p { margin:12px 0 0; color:var(--muted); font-size:13px; line-height:1.8; }
.contact-close { width:32px; height:32px; border:0; background:var(--bg-soft); border-radius:4px; color:var(--text); font-size:20px; }
.contact-body { padding:0 30px 30px; }
.contact-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:24px; border-top:1px solid var(--line); }
.contact-tile { min-width:0; padding-block:22px; border-bottom:1px solid var(--line); }
.contact-tile span { display:block; font-size:12px; color:var(--muted); margin-bottom:8px; }
.contact-tile strong { display:block; font-size:17px; line-height:1.5; font-weight:650; overflow-wrap:anywhere; }
.contact-tile-primary strong { color:var(--primary); }
a.contact-tile:hover strong { color:var(--accent); }
.contact-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:26px; }
.contact-note { font-size:12px; line-height:1.8; color:var(--muted); margin:20px 0 0; }
@media (prefers-reduced-motion:no-preference) {
  .hero-copy { animation:arrive .7s ease both; }
  @keyframes arrive { from { opacity:0; transform:translateY(12px); } to { opacity:1; transform:translateY(0); } }
  .module:hover .module-icon { transform:translateY(-4px); }
  .module-icon { transition:transform .25s; }
}
@media (max-width:1359px) {
  #features::after { inset-inline:-40px; }
  .nav-links { gap:16px; }
  .section-head h2 { flex-shrink:1; }
}
@media (max-width:1100px) {
  .nav-links { gap:12px; font-size:12px; }
  .nav-inner { gap:18px; }
  .nav-actions { gap:10px; }
  .brand { font-size:17px; gap:8px; }
  .nav-actions .primary-button { padding-inline:12px; }
  h1 { font-size:56px; }
  .hero-copy { max-width:610px; }
  .hero { min-height:650px; }
  .hero-inner { padding-block:54px; }
  .scenario-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px 0; }
  .scenario:nth-child(3) { border-right:0; }
  .scenario:nth-child(4) { padding-left:0; }
  .workflow-wrap { gap:32px; }
  .feature-grid { column-gap:40px; }
  .metric { padding-inline:18px; }
  .cta-band { gap:32px; }
}
@media (max-width:920px) {
  .nav-links { display:none; }
  .nav-inner,.hero-inner,.section,.metrics,.footer { width:calc(100% - 48px); }
  .section { margin-top:72px; }
  .proof-strip { margin-top:32px; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .section-head { align-items:start; flex-direction:column; gap:12px; }
  .section-head p { margin:0; }
  .modules { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .module { padding:26px; }
  .module:nth-child(3n) { border-right:1px solid var(--line); }
  .module:nth-child(2n) { border-right:0; }
  .module:nth-last-child(3) { border-bottom:1px solid var(--line); }
  .workflow-wrap { grid-template-columns:1fr; gap:36px; }
  .role-grid { gap:24px; }
  .role { padding-right:24px; }
  .role-top { align-items:start; flex-direction:column; gap:8px; }
  .metrics { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px 0; }
  .metric:nth-child(2) { border-right:0; }
  .metric:nth-child(3) { padding-left:0; }
  .metric strong { font-size:22px; }
  .cta-band { grid-template-columns:1fr; }
  .cta-actions { flex-direction:row; }
}
@media (max-width:600px) {
  .nav-inner,.hero-inner,.section,.metrics,.footer { width:calc(100% - 36px); }
  .nav-inner { height:64px; gap:10px; }
  .brand { font-size:16px; gap:8px; }
  .brand-mark { width:28px; height:28px; }
  .nav-actions { gap:8px; }
  .nav-actions .primary-button { min-height:36px; font-size:12px; padding-inline:10px; }
  .theme-toggle { padding:2px; }
  .theme-option { width:25px; height:28px; }
  .hero { padding-top:64px; min-height:650px; align-items:start; }
  .hero::before { background:linear-gradient(90deg,var(--bg) 0%,color-mix(in srgb,var(--bg) 92%,transparent) 28%,color-mix(in srgb,var(--bg) 68%,transparent) 100%); }
  .hero-bg { background-position:65% center; }
  .hero-inner { padding-block:46px 30px; }
  .eyebrow { flex-wrap:wrap; gap:12px; margin-bottom:24px; }
  .eyebrow strong { font-size:19px; }
  .eyebrow span { font-size:10px; padding-left:12px; }
  h1 { font-size:42px; line-height:1.22; }
  h1 > span { display:block; }
  .lead { font-size:14px; line-height:1.9; margin-top:22px; }
  .hero-badges { gap:8px 14px; margin-top:18px; }
  .hero-badges span { font-size:10px; }
  .hero-actions { gap:10px; margin-top:26px; }
  .hero-actions a { font-size:12px; padding-inline:18px; min-height:44px; }
  .hero-carousel { margin-top:18px; }
  .metrics { padding-block:20px; }
  .metric { padding-inline:14px; }
  .metric strong { font-size:20px; }
  .metric span { font-size:10px; }
  .proof-strip { gap:24px; }
  .proof-item span { font-size:11px; }
  h2 { font-size:25px; }
  .section { margin-top:64px; }
  .proof-strip { margin-top:30px; }
  .section-head { margin-bottom:26px; }
  .modules { grid-template-columns:1fr; }
  .module { padding:28px 0; border-right:0 !important; border-bottom:1px solid var(--line) !important; }
  .module:last-child { border-bottom:0 !important; }
  .module-icon { margin-bottom:18px; height:44px; }
  .module::after { right:0; }
  .module h3 { font-size:18px; }
  .module p { font-size:13px; }
  .feature-grid { grid-template-columns:1fr; }
  .feature-card { gap:18px; padding-block:24px; }
  .feature-card:nth-last-child(2) { border-bottom:1px solid var(--line); }
  .feature-card h3 { font-size:16px; }
  #features { padding-block:36px; }
  .scenario-grid { grid-template-columns:1fr; gap:0; }
  .scenario { display:grid; grid-template-columns:40px 1fr; column-gap:18px; padding:24px 0; border-right:0; border-bottom:1px solid var(--line); }
  .scenario-no { grid-row:span 2; margin:0; font-size:24px; }
  .scenario h3 { font-size:16px; margin-bottom:8px; }
  .scenario p { grid-column:2; }
  .quote-board { padding:20px; }
  .board-top { gap:8px; }
  .board-top h3 { font-size:17px; }
  .quote-row { gap:10px; font-size:12px; }
  .quote-row small { font-size:10px; }
  .price { font-size:11px; }
  .summary-card { padding-left:12px; }
  .summary-card strong { font-size:24px; }
  .summary-card span { font-size:10px; }
  .role-visual img { aspect-ratio:4 / 3; }
  .role-visual figcaption { left:12px; bottom:12px; right:12px; font-size:11px; padding:8px 12px; }
  .role-grid { grid-template-columns:1fr; gap:24px; }
  .role { padding:0 0 24px; border-right:0; border-bottom:1px solid var(--line); }
  .role-top { flex-direction:row; align-items:center; margin-bottom:14px; }
  .cta-band { padding-block:36px; gap:24px; }
  .cta-band h2 { font-size:25px; }
  .cta-band p { font-size:13px; }
  .footer { flex-direction:column; gap:10px; font-size:11px; }
  .contact-modal { padding:16px; }
  .contact-card { max-height:calc(100dvh - 32px); }
  .contact-head { padding:22px; gap:12px; grid-template-columns:minmax(0,1fr) 30px; }
  .contact-mark { display:none; }
  .contact-head h2 { font-size:21px; }
  .contact-body { padding:0 22px 22px; }
  .contact-grid { grid-template-columns:1fr; }
  .contact-tile { padding-block:14px; }
  .contact-tile strong { font-size:16px; }
  .contact-actions { display:grid; }
}
@media (max-width:360px) {
  h1 { font-size:36px; }
  .eyebrow { gap:8px; }
  .eyebrow span { padding-left:8px; }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { animation:none !important; transition:none !important; }
}
