:root { --red:#b11f2a; --red-dark:#7c111b; --ink:#251a1d; --muted:#75676b; --line:#ebdfe2; --soft:#fbf3f4; --white:#fff; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:100px; }
body { margin:0; color:var(--ink); background:var(--white); font:16px/1.7 -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif; -webkit-font-smoothing:antialiased; }
button, input { font:inherit; }
a { color:inherit; text-decoration:none; }
button { cursor:pointer; }
button,a,summary { -webkit-tap-highlight-color:transparent; }
:is(a,button,summary):focus-visible { outline:3px solid var(--red); outline-offset:5px; }
h1,h2,h3,p { margin:0; }
h2 { font-size:clamp(1.7rem,2.8vw,2.4rem); line-height:1.4; letter-spacing:-.035em; font-weight:750; }
em { font-style:normal; color:var(--red); }
.container { width:min(1180px,calc(100% - 64px)); margin-inline:auto; }
.skip-link { position:fixed; top:-60px; left:20px; padding:10px 18px; background:var(--red); color:#fff; z-index:200; }
.skip-link:focus { top:12px; }
.site-header { position:sticky; top:0; z-index:30; border-bottom:1px solid rgba(235,223,226,.8); background:rgba(255,255,255,.95); backdrop-filter:blur(16px); }
.header-inner { width:min(1320px,calc(100% - 48px)); margin:auto; min-height:76px; display:flex; align-items:center; gap:30px; }
.brand { display:flex; align-items:center; gap:10px; flex-shrink:0; }
.brand-mark { display:grid; place-items:center; width:39px; height:42px; border-radius:10px 10px 10px 2px; color:white; background:var(--red); font:700 25px Georgia,serif; }
.brand strong { display:block; font-size:.875rem; line-height:1.5; letter-spacing:.045em; }
.brand small { display:block; font-size:.75rem; color:var(--muted); }
.site-nav { display:flex; gap:24px; margin-left:auto; font-size:.875rem; }
.site-nav a:hover { color:var(--red); }
.header-actions { display:flex; align-items:center; gap:16px; }
.language-switch { display:flex; gap:2px; }
.language-switch button { border:0; padding:5px; background:none; color:var(--muted); font-size:.8125rem; }
.language-switch button[aria-pressed="true"] { color:var(--red); font-weight:750; }
.button { display:inline-flex; align-items:center; justify-content:center; gap:24px; min-height:50px; padding:12px 22px; border:1px solid transparent; border-radius:9px; font-size:1rem; font-weight:650; transition:background .2s,border-color .2s,box-shadow .2s; }
.button.primary { color:white; background:var(--red); }
.button.primary:hover { background:var(--red-dark); box-shadow:0 6px 20px #b11f2a18; }
.button.secondary { border-color:var(--line); background:white; }
.button.secondary:hover { border-color:#c68892; background:var(--soft); }
.button.compact { min-height:40px; padding:8px 15px; font-size:.875rem; }
.eyebrow { display:inline-flex; align-items:center; gap:9px; color:var(--red); font-size:.75rem; font-weight:750; letter-spacing:.12em; }
.status-dot { width:7px; height:7px; border-radius:50%; background:var(--red); box-shadow:0 0 0 4px #b11f2a0d; }
.hero { padding:76px 0 0; background:radial-gradient(ellipse at 87% 12%,#f9e7eb88,transparent 46%),linear-gradient(#b11f2a04 1px,transparent 1px),linear-gradient(90deg,#b11f2a04 1px,transparent 1px),#fff; background-size:auto,44px 44px,44px 44px,auto; }
.hero-grid { display:grid; grid-template-columns:1.06fr 1fr; align-items:center; gap:48px; }
.hero-copy h1 { margin:24px 0; font-size:clamp(2.25rem,4.1vw,3.75rem); line-height:1.2; letter-spacing:-.055em; font-weight:800; }
.hero-description { max-width:540px; color:var(--muted); font-size:1.0625rem; line-height:1.9; }
.hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:30px; }
.hero-note { margin-top:20px; font-size:.8125rem; line-height:1.8; color:var(--muted); }
.product-window { min-width:0; margin-top:8px; border:1px solid #e4c8cf; border-radius:16px; background:white; box-shadow:0 24px 64px -28px #7c111b35; overflow:hidden; }
.window-bar { display:flex; gap:12px; align-items:center; padding:15px 18px; border-bottom:1px solid var(--line); font-size:.75rem; color:var(--muted); }
.window-dots { font-size:9px; letter-spacing:2px; color:#d4b3bc; white-space:nowrap; }
.window-bar strong { font-weight:600; }
.preview-label { margin-left:auto; padding:2px 7px; border:1px solid var(--line); border-radius:5px; font-size:.75rem; white-space:nowrap; }
.window-content { padding:22px; }
.example-query { display:flex; align-items:center; gap:12px; border:1px solid #ddb4bf; border-radius:8px; padding:12px 14px; background:#fff; }
.search-symbol { color:var(--red); font-size:26px; line-height:1; }
.query-label { margin-left:auto; color:var(--muted); font-size:.75rem; }
.process-line { display:flex; flex-wrap:wrap; gap:9px; padding:18px 0; color:#8a777d; font-size:.75rem; }
.process-line .current { color:var(--red); font-weight:700; }
.example-image { display:block; padding:8px; border:1px solid var(--line); background:#fdfafb; border-radius:8px; }
.example-image img { display:block; width:100%; height:auto; border-radius:3px; }
.evidence-note { display:flex; gap:14px; align-items:start; margin-top:22px; padding-top:20px; border-top:1px solid var(--line); }
.evidence-icon { display:grid; place-items:center; width:34px; height:34px; flex-shrink:0; background:var(--soft); color:var(--red); border-radius:8px; }
.evidence-note strong { font-size:.9375rem; font-weight:650; }
.evidence-note p { margin-top:5px; color:var(--muted); font-size:.8125rem; line-height:1.75; }
.window-caption { border-top:1px solid var(--line); padding:10px 18px; color:var(--muted); background:#fdfafb; font-size:.75rem; }
.value-strip { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; padding:26px 0 28px; margin-top:58px; border-top:1px solid var(--line); }
.value-strip > div { padding-left:20px; border-left:2px solid #e9c9d1; }
.value-strip span { display:block; color:var(--muted); font-size:.75rem; letter-spacing:.1em; }
.value-strip strong { display:block; margin-top:7px; font-size:.9375rem; font-weight:650; }
.section { padding-top:78px; padding-bottom:78px; }
.section-heading { display:flex; align-items:end; gap:50px; justify-content:space-between; margin-bottom:30px; }
.section-heading h2 { margin-top:12px; }
.section-heading > p { max-width:270px; color:var(--muted); font-size:.9375rem; }
.capability-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.feature-card { display:flex; flex-direction:column; padding:28px; border:1px solid var(--line); border-radius:14px; background:white; transition:border-color .2s,box-shadow .2s; }
.feature-card:hover { border-color:#d7a0ad; box-shadow:0 16px 30px -22px #7c111b33; }
.feature-number { display:grid; place-items:center; width:42px; height:42px; margin-bottom:22px; border-radius:10px; color:var(--red); background:var(--soft); font-size:.875rem; font-weight:750; }
.feature-card h3 { font-size:1.25rem; letter-spacing:-.025em; }
.feature-card p { color:var(--muted); margin-top:12px; font-size:1rem; line-height:1.85; }
.feature-tags { display:flex; flex-wrap:wrap; gap:7px; margin:20px 0; }
.feature-tags span { padding:3px 8px; background:#faf6f7; border-radius:5px; color:var(--muted); font-size:.75rem; }
.text-link { display:inline-flex; align-items:center; justify-content:space-between; gap:10px; padding-top:18px; margin-top:auto; border-top:1px solid var(--line); color:var(--red); font-size:.875rem; font-weight:600; }
.workflow-band { padding:65px 0; border-block:1px solid var(--line); background:#fcf7f8; }
.workflow-layout { display:grid; grid-template-columns:.9fr 1.1fr; align-items:start; gap:100px; }
.workflow-layout h2 { margin:14px 0 18px; }
.workflow-layout > div > p { color:var(--muted); font-size:1rem; }
.steps { list-style:none; margin:0; padding:0; display:grid; gap:26px; }
.steps li { display:flex; gap:18px; }
.step-index { display:grid; place-items:center; flex-shrink:0; width:32px; height:32px; border-radius:50%; border:1px solid #e3b8c3; background:#fff; color:var(--red); font-size:.875rem; font-weight:700; }
.steps h3 { font-size:1.0625rem; font-weight:650; }
.steps p { margin-top:6px; color:var(--muted); font-size:1rem; line-height:1.85; }
.agent-grid { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:65px; }
.agent-copy h2 { margin-top:15px; }
.agent-copy > p { color:var(--muted); margin:20px 0; font-size:1rem; line-height:1.85; }
.agent-points { padding:0; list-style:none; display:grid; gap:8px; margin:0 0 28px; color:var(--muted); font-size:.9375rem; }
.agent-points li::before { content:"✓"; margin-right:12px; color:var(--red); }
.api-example { min-width:0; border:1px solid #542a34; border-radius:14px; background:#29161c; color:#fbf1f3; overflow:hidden; box-shadow:0 24px 50px -30px #29161c55; }
.api-heading { display:flex; justify-content:space-between; gap:10px; align-items:center; padding:17px 22px; border-bottom:1px solid #fff2; font:13px/1.5 ui-monospace,monospace; }
.api-heading > span { color:#f4b9c7; }
.api-heading button { padding:5px 9px; border:1px solid #ffffff35; border-radius:6px; color:white; background:transparent; font-size:.8125rem; }
.code-label { display:block; color:#bc9da7; font-size:.75rem; letter-spacing:.015em; }
.api-example > .code-label { padding:22px 22px 0; }
.api-example pre { padding:18px 22px 25px; margin:0; font:13px/1.9 ui-monospace,SFMono-Regular,Menlo,monospace; overflow:auto; white-space:pre; }
.api-return { padding:20px 22px; border-top:1px solid #fff2; }
.api-return > div { display:flex; flex-wrap:wrap; gap:8px; margin:12px 0; }
.api-return > div span { padding:3px 9px; border-radius:5px; border:1px solid #ffffff26; font-size:.8125rem; }
.api-return p { color:#ceb2bb; font-size:.8125rem; line-height:1.7; }
.copy-status { padding:0 22px; min-height:25px; color:#f4b9c7; font-size:.8125rem; }
.questions { padding-bottom:65px; }
.questions h2 { font-size:1.5rem; margin-bottom:24px; }
.questions details { padding:18px 0; border-bottom:1px solid var(--line); }
.questions summary { cursor:pointer; font-size:1rem; font-weight:600; }
.questions p { max-width:850px; margin-top:12px; color:var(--muted); font-size:1rem; }
.closing { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:25px; padding:36px; border:1px solid #ebd3d9; border-radius:14px; background:linear-gradient(110deg,#fcf0f3,#fff); }
.closing h2 { margin-top:10px; font-size:1.75rem; }
.site-footer { display:flex; align-items:start; gap:35px; padding:40px 0 30px; color:var(--muted); font-size:.75rem; }
.site-footer > span { white-space:nowrap; }
.site-footer p { flex:1; }
.site-footer a { white-space:nowrap; color:var(--red); }
@media (max-width:1100px) {
  .header-inner { gap:18px; }
  .site-nav { gap:14px; }
  .brand small { display:none; }
  .brand strong { font-size:.75rem; }
  .hero-grid { gap:30px; }
  .hero-copy h1 { font-size:2.6rem; }
  .feature-card { padding:22px; }
  .workflow-layout, .agent-grid { gap:45px; }
}
@media (max-width:850px) {
  .header-inner { flex-wrap:wrap; gap:8px 16px; padding:12px 0 8px; }
  .header-actions { margin-left:auto; }
  .site-nav { order:3; flex-basis:100%; justify-content:center; gap:28px; margin-top:5px; }
  .hero { padding-top:44px; }
  .hero-grid { grid-template-columns:minmax(0,1fr); gap:35px; }
  .hero-copy h1 { font-size:clamp(2.3rem,6.5vw,3.25rem); }
  .hero-description { max-width:650px; }
  .product-window { max-width:650px; }
  .section { padding-block:55px; }
  .section-heading { display:block; }
  .section-heading > p { max-width:600px; margin-top:14px; }
  .capability-grid { grid-template-columns:minmax(0,1fr); }
  .feature-card { display:grid; grid-template-columns:48px minmax(0,1fr); gap:0 16px; }
  .feature-number { grid-row:span 4; }
  .feature-tags, .text-link { grid-column:2; }
  .workflow-layout, .agent-grid { grid-template-columns:minmax(0,1fr); gap:35px; }
  .workflow-band { padding-block:45px; }
  .closing { padding:28px; }
  .site-footer { flex-wrap:wrap; gap:16px; }
  .site-footer p { flex-basis:100%; order:3; }
  .site-footer a { margin-left:auto; }
}
@media (max-width:520px) {
  html { scroll-padding-top:130px; }
  .container { width:calc(100% - 36px); }
  .header-inner { width:calc(100% - 32px); }
  .brand { gap:7px; }
  .brand-mark { width:31px; height:34px; font-size:21px; }
  .brand strong { max-width:130px; font-size:.75rem; letter-spacing:.01em; }
  .header-actions { gap:7px; }
  .button.compact { padding:6px 9px; font-size:.8125rem; }
  .language-switch button { font-size:.75rem; padding:4px 3px; }
  .site-nav { font-size:.875rem; }
  .hero-copy h1 { font-size:clamp(1.875rem,7.9vw,2.5rem); }
  .hero-description { font-size:1rem; }
  .hero-actions { gap:10px; }
  .hero-actions .button { padding:11px 15px; font-size:.9375rem; gap:14px; }
  .window-bar { gap:8px; padding:12px; }
  .window-dots { display:none; }
  .window-content { padding:15px; }
  .value-strip { grid-template-columns:minmax(0,1fr); gap:18px; margin-top:36px; }
  .value-strip > div { display:flex; flex-wrap:wrap; align-items:baseline; gap:10px; padding-left:12px; }
  .value-strip strong { margin:0; }
  .value-strip span { min-width:120px; }
  .feature-card { grid-template-columns:minmax(0,1fr); padding:24px; }
  .feature-number { grid-row:auto; }
  .feature-tags, .text-link { grid-column:1; }
  .closing h2 { font-size:1.5rem; }
  .closing .button { width:100%; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } * { transition:none !important; animation:none !important; } }
