:root { color-scheme: light; --surface-canvas: #f6f8fb; --surface-raised: #ffffff; --surface-subtle: #edf2f7; --surface-muted: #e2e9f1; --surface-inverse: #07152b; --surface-overlay: rgba(255, 255, 255, 0.82); --text-primary: #10213a; --text-secondary: #4f6178; --text-muted: #738198; --text-on-accent: #ffffff; --text-on-inverse: #f7faff; --border-default: #d6dee9; --border-control: #bcc8d7; --border-subtle: #e6ebf2; --accent: #0877e8; --accent-hover: #0567ca; --accent-solid: #0877e8; --accent-solid-hover: #0567ca; --accent-selected: #60aefd; --accent-subtle: #e7f3ff; --accent-cyan: #05b9c8; --accent-mint: #08b89b; --success: #07866f; --success-subtle: #e1f8f1; --warning: #a46408; --danger: #c63a4b; --danger-strong: #a71f34; --danger-solid: #bc2d42; --danger-border: #edb9c1; --danger-subtle: #fff0f2; --shadow-card: 0 24px 70px rgba(16, 33, 58, 0.1); --shadow-dialog: 0 32px 90px rgba(5, 20, 42, 0.2); --shadow-button: 0 10px 24px rgba(8, 119, 232, 0.22); --space-0: 0; --space-1: 4px; --space-2: 8px; --space-3: 12px; --space-4: 16px; --space-6: 24px; --space-8: 32px; --space-10: 40px; --space-12: 48px; --space-16: 64px; --space-20: 80px; --font-caption: 0.625rem; --font-body: 0.875rem; --font-section-title: 1rem; --font-page-title: clamp(2.7rem, 6vw, 5.5rem); --radius-control: 8px; --radius-card: 12px; --radius-large: 24px; --radius-pill: 999px; --motion-fast: 120ms; --motion-normal: 180ms; --motion-slow: 240ms; --z-header: 20; --z-menu: 30; font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif; font-synthesis: none; text-rendering: optimizeLegibility; } [data-theme="dark"] { color-scheme: dark; --surface-canvas: #07101f; --surface-raised: #101c2e; --surface-subtle: #142338; --surface-muted: #1b2a3f; --surface-inverse: #eaf3ff; --surface-overlay: rgba(7, 16, 31, 0.84); --text-primary: #edf5ff; --text-secondary: #b2c0d2; --text-muted: #8494a9; --text-on-accent: #ffffff; --text-on-inverse: #10213a; --border-default: #2a3b51; --border-control: #40546d; --border-subtle: #203148; --accent: #62b0ff; --accent-hover: #8bc5ff; --accent-solid: #147fe9; --accent-solid-hover: #3495f5; --accent-selected: #65b4ff; --accent-subtle: #112d4c; --accent-cyan: #37c9d4; --accent-mint: #35ccb1; --success: #59d4bb; --success-subtle: #103a34; --warning: #e8ae54; --danger: #ff8795; --danger-strong: #ffa2ad; --danger-solid: #d34257; --danger-border: #763d48; --danger-subtle: #3b1e27; --shadow-card: 0 24px 70px rgba(0, 0, 0, 0.28); --shadow-dialog: 0 32px 90px rgba(0, 0, 0, 0.46); --shadow-button: 0 10px 26px rgba(20, 127, 233, 0.28); } *, *::before, *::after { box-sizing: border-box; } html { scroll-behavior: smooth; scroll-padding-top: 88px; } body { min-width: 320px; margin: 0; overflow-x: hidden; background: var(--surface-canvas); color: var(--text-primary); font-size: var(--font-body); line-height: 1.7; } button, a { -webkit-tap-highlight-color: transparent; } button, input, textarea, select { font: inherit; } a { color: inherit; } svg { display: block; } h1, h2, h3, p { margin-top: 0; } h1, h2, h3 { line-height: 1.16; } h2 { margin-bottom: var(--space-4); font-size: clamp(2rem, 4vw, 3.5rem); letter-spacing: -0.045em; } h3 { font-size: 1.25rem; letter-spacing: -0.02em; } p { color: var(--text-secondary); } :focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; } ::selection { background: var(--accent-selected); color: var(--text-primary); } .sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; } .skip-link { position: fixed; z-index: calc(var(--z-menu) + 1); top: var(--space-3); left: var(--space-3); padding: var(--space-2) var(--space-4); border-radius: var(--radius-control); background: var(--accent-solid); color: var(--text-on-accent); font-weight: 700; text-decoration: none; transform: translateY(-150%); transition: transform var(--motion-fast) ease-out; } .skip-link:focus { transform: translateY(0); } .section { padding-block: 112px; } .section-inner, .header-inner { width: min(100% - 64px, 1200px); margin-inline: auto; } .site-header { position: fixed; z-index: var(--z-header); top: 0; right: 0; left: 0; border-bottom: 1px solid transparent; background: transparent; transition: background-color var(--motion-normal) ease-out, border-color var(--motion-normal) ease-out, box-shadow var(--motion-normal) ease-out; } .site-header.is-scrolled, .site-header.is-menu-open { border-bottom-color: var(--border-subtle); background: var(--surface-overlay); box-shadow: 0 6px 24px color-mix(in srgb, var(--text-primary) 7%, transparent); backdrop-filter: blur(18px); } .header-inner { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; min-height: 72px; } .brand { display: inline-flex; align-items: center; justify-self: start; gap: var(--space-2); color: var(--text-primary); font-size: 1.125rem; font-weight: 780; letter-spacing: -0.025em; text-decoration: none; } .brand-mark { width: 34px; height: 34px; overflow: visible; fill: none; stroke: var(--accent); stroke-linecap: round; stroke-linejoin: round; stroke-width: 3; } .brand-mark path:nth-child(2) { stroke: var(--accent-mint); } .brand-mark path:last-child { stroke-width: 2.5; } .site-navigation { display: flex; align-items: center; gap: var(--space-1); padding: var(--space-1); border: 1px solid var(--border-subtle); border-radius: var(--radius-pill); background: color-mix(in srgb, var(--surface-raised) 82%, transparent); } .site-navigation a { min-height: 36px; padding: 6px var(--space-4); border-radius: var(--radius-pill); color: var(--text-secondary); font-size: 0.8125rem; font-weight: 650; text-decoration: none; transition: color var(--motion-fast) ease-out, background-color var(--motion-fast) ease-out; } .site-navigation a:hover, .site-navigation a[aria-current="true"] { background: var(--surface-subtle); color: var(--text-primary); } .header-actions { display: flex; align-items: center; justify-self: end; gap: var(--space-2); } .icon-button { display: inline-grid; width: 40px; height: 40px; padding: 0; place-items: center; border: 1px solid var(--border-default); border-radius: var(--radius-control); background: var(--surface-raised); color: var(--text-primary); cursor: pointer; transition: border-color var(--motion-fast) ease-out, background-color var(--motion-fast) ease-out, transform var(--motion-fast) ease-out; } .icon-button:hover { border-color: var(--border-control); background: var(--surface-subtle); } .icon-button:active { transform: translateY(1px); } .icon-button svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; } .theme-icon--moon { display: none; } [data-theme="dark"] .theme-icon--sun { display: none; } [data-theme="dark"] .theme-icon--moon { display: block; } .menu-toggle { display: none; } .button { display: inline-flex; min-height: 44px; align-items: center; justify-content: center; gap: var(--space-2); padding: 10px 20px; border: 1px solid transparent; border-radius: var(--radius-control); font-weight: 720; line-height: 1.2; text-align: center; text-decoration: none; transition: color var(--motion-fast) ease-out, background-color var(--motion-fast) ease-out, border-color var(--motion-fast) ease-out, box-shadow var(--motion-fast) ease-out, transform var(--motion-fast) ease-out; } .button:not(.is-disabled):hover { transform: translateY(-1px); } .button--primary { background: var(--accent-solid); box-shadow: var(--shadow-button); color: var(--text-on-accent); } .button--primary:not(.is-disabled):hover { background: var(--accent-solid-hover); box-shadow: none; } .button--secondary { border-color: var(--border-control); background: var(--surface-raised); color: var(--text-primary); } .button--secondary:not(.is-disabled):hover, .button--quiet:hover { border-color: var(--accent-selected); background: var(--accent-subtle); } .button--quiet { min-height: 40px; padding: var(--space-2) var(--space-4); border-color: var(--border-default); background: var(--surface-raised); color: var(--text-primary); } .button.is-disabled { border-color: var(--border-default); background: var(--surface-muted); box-shadow: none; color: var(--text-muted); cursor: not-allowed; } .hero { position: relative; min-height: 820px; padding-top: 164px; overflow: hidden; } .hero::before { position: absolute; top: -240px; left: 50%; width: 1000px; height: 650px; border: 1px solid color-mix(in srgb, var(--accent) 9%, transparent); border-radius: 50%; background: radial-gradient(circle at 32% 45%, color-mix(in srgb, var(--accent) 13%, transparent), transparent 34%), radial-gradient(circle at 68% 52%, color-mix(in srgb, var(--accent-mint) 12%, transparent), transparent 36%); content: ""; filter: blur(2px); pointer-events: none; transform: translateX(-50%); } .hero-grid { position: relative; display: grid; grid-template-columns: minmax(0, 0.86fr) minmax(520px, 1.14fr); align-items: center; gap: var(--space-16); } .hero-copy { position: relative; z-index: 2; } .eyebrow, .kicker { color: var(--accent); font-size: 0.75rem; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; } .eyebrow { display: inline-flex; align-items: center; gap: var(--space-2); margin-bottom: var(--space-6); padding: 7px var(--space-3); border: 1px solid color-mix(in srgb, var(--accent) 24%, var(--border-default)); border-radius: var(--radius-pill); background: color-mix(in srgb, var(--accent-subtle) 72%, transparent); } .status-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--success); box-shadow: 0 0 0 4px color-mix(in srgb, var(--success) 14%, transparent); } .hero h1 { max-width: 760px; margin-bottom: var(--space-6); font-size: var(--font-page-title); letter-spacing: -0.065em; } .hero h1 span { background: linear-gradient(110deg, var(--accent), var(--accent-cyan) 48%, var(--accent-mint)); background-clip: text; color: transparent; } .hero-lead { max-width: 620px; margin-bottom: var(--space-8); font-size: 1.0625rem; line-height: 1.85; } .hero-actions { display: flex; flex-wrap: wrap; gap: var(--space-3); margin-bottom: var(--space-8); } .hero-facts { display: flex; flex-wrap: wrap; gap: var(--space-4) var(--space-6); padding: 0; margin: 0; color: var(--text-secondary); font-size: 0.75rem; list-style: none; } .hero-facts li { display: flex; align-items: center; gap: 6px; } .hero-facts svg { width: 16px; height: 16px; fill: none; stroke: var(--success); stroke-linecap: round; stroke-linejoin: round; stroke-width: 2; } .product-stage { --scene-tilt-x: 0deg; --scene-tilt-y: 0deg; --spotlight-x: 50%; --spotlight-y: 50%; position: relative; z-index: 1; min-height: 540px; } .product-stage::before { position: absolute; z-index: -1; inset: -96px; background: radial-gradient( circle 270px at var(--spotlight-x) var(--spotlight-y), color-mix(in srgb, var(--accent) 18%, transparent) 0, color-mix(in srgb, var(--accent) 8%, transparent) 42%, transparent 74% ); content: ""; filter: blur(36px); opacity: 0; pointer-events: none; transition: opacity var(--motion-normal) ease-out; } .product-stage.is-tilting::before { opacity: 1; } .stage-glow { position: absolute; border-radius: 50%; filter: blur(65px); opacity: 0.55; pointer-events: none; } .stage-glow--one { top: 10%; left: 10%; width: 280px; height: 280px; background: color-mix(in srgb, var(--accent) 34%, transparent); } .stage-glow--two { right: -10%; bottom: 0; width: 310px; height: 310px; background: color-mix(in srgb, var(--accent-mint) 26%, transparent); } .app-window { --window-scale: 1; --window-translate-x: 0%; position: absolute; top: 22px; left: 0; width: 680px; overflow: hidden; border: 1px solid color-mix(in srgb, var(--border-control) 70%, transparent); border-radius: 18px; background: var(--surface-raised); box-shadow: var(--shadow-dialog); transform: translateX(var(--window-translate-x)) perspective(1400px) scale(var(--window-scale)) rotateX(var(--scene-tilt-x)) rotateY(var(--scene-tilt-y)); transform-origin: center center; transform-style: preserve-3d; transition: transform var(--motion-slow) ease-out, box-shadow var(--motion-normal) ease-out; will-change: transform; } .app-window::after { position: absolute; z-index: 5; inset: -18px; border-radius: inherit; background: radial-gradient( circle 260px at var(--spotlight-x) var(--spotlight-y), color-mix(in srgb, var(--text-on-accent) 18%, transparent), color-mix(in srgb, var(--accent) 7%, transparent) 34%, transparent 76% ); content: ""; filter: blur(18px); opacity: 0; pointer-events: none; transition: opacity var(--motion-normal) ease-out; } .product-stage.is-tilting .app-window { box-shadow: 0 36px 90px color-mix(in srgb, var(--text-primary) 18%, transparent), 0 0 34px color-mix(in srgb, var(--accent) 16%, transparent); transition-duration: 70ms; } .product-stage.is-tilting .app-window::after { opacity: 0.72; } .window-bar { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; height: 42px; padding-inline: var(--space-4); border-bottom: 1px solid var(--border-subtle); background: var(--surface-subtle); color: var(--text-muted); font-size: var(--font-caption); } .window-dots { display: flex; gap: 6px; } .window-dots span { width: 8px; height: 8px; border-radius: 50%; background: var(--border-control); } .window-dots span:first-child { background: var(--danger); } .window-dots span:nth-child(2) { background: var(--warning); } .window-dots span:last-child { background: var(--success); } .window-title { font-weight: 680; } .window-status { display: flex; align-items: center; justify-self: end; gap: 5px; } .window-status span { width: 6px; height: 6px; border-radius: 50%; background: var(--success); } .app-layout { display: grid; grid-template-columns: 116px 1fr; height: 420px; } .app-sidebar { display: flex; flex-direction: column; gap: 5px; padding: var(--space-3) var(--space-2); border-right: 1px solid var(--border-subtle); background: color-mix(in srgb, var(--surface-subtle) 65%, var(--surface-raised)); } .mini-brand { display: grid; width: 30px; height: 30px; margin: 0 0 var(--space-3) 6px; place-items: center; border-radius: var(--radius-control); background: var(--accent-subtle); } .mini-brand svg { width: 22px; fill: none; stroke: var(--accent); stroke-linecap: round; stroke-linejoin: round; stroke-width: 3; } .mini-brand path:last-child { stroke: var(--accent-mint); } .side-item { display: flex; align-items: center; gap: 7px; padding: 6px 7px; border-radius: 6px; color: var(--text-muted); font-size: 9px; font-weight: 650; white-space: nowrap; } .side-item span { width: 12px; height: 12px; border: 1.5px solid currentColor; border-radius: 3px; } .side-item.is-active { background: var(--accent-subtle); color: var(--accent); } .sidebar-spacer { flex: 1; } .app-content { position: relative; background: var(--surface-raised); } .app-content-header { display: flex; height: 62px; align-items: center; justify-content: space-between; padding-inline: var(--space-4); border-bottom: 1px solid var(--border-subtle); } .app-content-header > div:first-child { display: flex; flex-direction: column; } .app-content-header strong { font-size: 12px; } .app-content-header span { color: var(--text-muted); font-size: 8px; } .mode-pill { padding: 4px 8px; border: 1px solid var(--border-default); border-radius: var(--radius-pill); background: var(--surface-subtle); color: var(--text-secondary); font-size: 8px; } .message-area { padding: 22px 38px 76px; } .message { max-width: 85%; font-size: 10px; } .message--user { padding: 10px 12px; margin: 0 0 18px auto; border-radius: 10px 10px 2px 10px; background: var(--accent-solid); color: var(--text-on-accent); } .assistant-label { display: flex; align-items: center; gap: 7px; margin-bottom: var(--space-2); } .assistant-label strong { font-size: 10px; } .assistant-avatar { display: grid; width: 23px; height: 23px; place-items: center; border-radius: 7px; background: linear-gradient(135deg, var(--accent), var(--accent-mint)); color: var(--text-on-accent); font-size: 9px; font-weight: 800; } .message--assistant p { margin-bottom: var(--space-3); color: var(--text-secondary); line-height: 1.7; } .tool-card { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 9px; padding: 9px; border: 1px solid var(--border-default); border-radius: var(--radius-control); background: var(--surface-subtle); } .tool-icon { display: grid; width: 26px; height: 26px; place-items: center; border-radius: 6px; background: var(--surface-raised); color: var(--accent); } .tool-icon svg { width: 14px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-width: 2; } .tool-card > div:nth-child(2) { display: flex; flex-direction: column; } .tool-card strong { font-size: 8px; } .tool-card span { color: var(--text-muted); font-size: 7px; } .tool-card .tool-state { color: var(--success); } .plan-lines { display: grid; gap: 6px; margin-top: var(--space-3); } .plan-lines span { height: 5px; border-radius: var(--radius-pill); background: var(--surface-muted); } .plan-lines span:nth-child(2) { width: 88%; } .plan-lines span:nth-child(3) { width: 62%; } .composer { position: absolute; right: 28px; bottom: 18px; left: 28px; display: flex; min-height: 48px; align-items: center; justify-content: space-between; padding: 10px 12px; border: 1px solid var(--border-control); border-radius: 10px; background: var(--surface-raised); box-shadow: 0 5px 18px color-mix(in srgb, var(--text-primary) 7%, transparent); color: var(--text-muted); font-size: 9px; } .composer-actions { display: flex; align-items: center; gap: var(--space-2); } .composer-actions span { padding: 3px 7px; border-radius: var(--radius-pill); background: var(--surface-subtle); color: var(--text-secondary); font-size: 7px; } .composer-actions b { display: grid; width: 24px; height: 24px; place-items: center; border-radius: 7px; background: var(--accent-solid); color: var(--text-on-accent); } .floating-card { position: absolute; z-index: 3; display: flex; align-items: center; gap: 10px; padding: 10px 14px; border: 1px solid color-mix(in srgb, var(--border-control) 70%, transparent); border-radius: var(--radius-card); background: var(--surface-overlay); box-shadow: var(--shadow-card); backdrop-filter: blur(14px); transform: perspective(1400px) rotateX(var(--scene-tilt-x)) rotateY(var(--scene-tilt-y)) translateZ(28px); transform-origin: center; transform-style: preserve-3d; transition: transform var(--motion-slow) ease-out, box-shadow var(--motion-normal) ease-out; will-change: transform; } .product-stage.is-tilting .floating-card { box-shadow: 0 18px 38px color-mix(in srgb, var(--text-primary) 15%, transparent), 0 0 22px color-mix(in srgb, var(--accent) 12%, transparent); transition-duration: 70ms; } .floating-card > span:last-child { display: flex; flex-direction: column; } .floating-card strong { font-size: 10px; } .floating-card small { color: var(--text-muted); font-size: 8px; } .floating-card--approval { right: -32px; bottom: 58px; } .floating-card--scope { top: -5px; right: -20px; } .floating-icon { display: grid; width: 30px; height: 30px; place-items: center; border-radius: var(--radius-control); background: var(--success-subtle); color: var(--success); } .floating-icon svg { width: 17px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; } .scope-dot { width: 9px; height: 9px; border: 2px solid var(--surface-raised); border-radius: 50%; background: var(--accent); box-shadow: 0 0 0 3px var(--accent-subtle); } .proof-strip { border-block: 1px solid var(--border-subtle); background: color-mix(in srgb, var(--surface-raised) 55%, transparent); } .proof-grid { display: grid; grid-template-columns: repeat(4, 1fr); padding-block: var(--space-8); } .proof-grid div { display: flex; min-height: 56px; flex-direction: column; justify-content: center; padding-inline: var(--space-8); border-right: 1px solid var(--border-subtle); } .proof-grid div:first-child { padding-left: 0; } .proof-grid div:last-child { border-right: 0; } .proof-grid strong { color: var(--text-primary); font-size: 1.25rem; } .proof-grid span { color: var(--text-muted); font-size: 0.75rem; } .section-heading { display: grid; grid-template-columns: minmax(0, 1fr) minmax(300px, 0.55fr); align-items: end; gap: var(--space-16); margin-bottom: var(--space-12); } .section-heading h2, .section-heading p { margin-bottom: 0; } .kicker { margin-bottom: var(--space-3); } .feature-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--space-4); } .feature-card { position: relative; min-height: 330px; padding: var(--space-8); overflow: hidden; border: 1px solid var(--border-default); border-radius: var(--radius-card); background: var(--surface-raised); transition: border-color var(--motion-normal) ease-out, transform var(--motion-normal) ease-out, box-shadow var(--motion-normal) ease-out; } .feature-card:hover { border-color: var(--accent-selected); box-shadow: var(--shadow-card); transform: translateY(-3px); } .feature-card--wide { grid-column: span 2; } .feature-card--accent { background: radial-gradient(circle at 100% 0, color-mix(in srgb, var(--accent-mint) 14%, transparent), transparent 40%), radial-gradient(circle at 0 100%, color-mix(in srgb, var(--accent) 13%, transparent), transparent 42%), var(--surface-raised); } .feature-icon { display: grid; width: 46px; height: 46px; margin-bottom: var(--space-8); place-items: center; border: 1px solid color-mix(in srgb, var(--accent) 20%, var(--border-default)); border-radius: var(--radius-card); background: var(--accent-subtle); color: var(--accent); } .feature-icon svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.6; } .feature-number { position: absolute; top: var(--space-6); right: var(--space-6); color: var(--text-muted); font-family: "SFMono-Regular", Consolas, monospace; font-size: 0.6875rem; } .feature-card h3 { margin-bottom: var(--space-3); } .feature-card p { max-width: 580px; margin-bottom: 0; } .mode-row, .provider-pills { display: flex; flex-wrap: wrap; gap: var(--space-2); margin-top: var(--space-6); } .mode-row span, .provider-pills span { display: inline-flex; align-items: center; gap: var(--space-2); padding: 6px 10px; border: 1px solid var(--border-default); border-radius: var(--radius-pill); background: var(--surface-subtle); color: var(--text-secondary); font-size: 0.6875rem; font-weight: 680; } .mode-row small { color: var(--text-muted); font-size: var(--font-caption); font-weight: 500; } .mode-row .is-accent { border-color: color-mix(in srgb, var(--accent) 35%, var(--border-default)); background: var(--accent-subtle); color: var(--accent); } .download-section { padding-top: var(--space-20); } .download-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--space-4); } .download-card { display: grid; grid-template-columns: auto 1fr; gap: var(--space-4); padding: var(--space-6); border: 1px solid var(--border-default); border-radius: var(--radius-card); background: var(--surface-raised); } .download-card h3 { margin: 3px 0 5px; } .download-card p { margin-bottom: 0; color: var(--text-muted); font-size: 0.75rem; } .platform-icon { display: grid; width: 48px; height: 48px; place-items: center; border-radius: var(--radius-card); background: var(--surface-subtle); color: var(--text-primary); } .platform-icon svg { width: 23px; height: 23px; fill: currentColor; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.3; } .download-card:nth-child(3) .platform-icon svg { fill: none; } .button--download { grid-column: 1 / -1; width: 100%; margin-top: var(--space-2); } .domestic-support { display: grid; grid-template-columns: minmax(260px, 0.9fr) minmax(420px, 1.1fr); align-items: center; gap: var(--space-8); padding: var(--space-6); margin-top: var(--space-6); border: 1px solid color-mix(in srgb, var(--accent) 24%, var(--border-default)); border-radius: var(--radius-card); background: radial-gradient(circle at 100% 0, color-mix(in srgb, var(--accent-mint) 11%, transparent), transparent 42%), var(--surface-raised); } .domestic-support h3 { margin-bottom: var(--space-2); } .domestic-support > div:first-child > p:last-child { margin-bottom: 0; font-size: 0.75rem; } .domestic-support__items { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--space-3); } .domestic-support__items div { display: flex; min-height: 72px; flex-direction: column; justify-content: center; padding: var(--space-3) var(--space-4); border: 1px solid var(--border-default); border-radius: var(--radius-control); background: var(--surface-subtle); } .domestic-support__items span { color: var(--text-muted); font-size: var(--font-caption); } .domestic-support__items strong { margin-top: var(--space-1); font-size: 0.8125rem; } .assistant-section { border-block: 1px solid color-mix(in srgb, var(--text-on-inverse) 12%, transparent); background: var(--surface-inverse); color: var(--text-on-inverse); } .assistant-grid { display: grid; grid-template-columns: minmax(0, 0.8fr) minmax(520px, 1.2fr); gap: 96px; } .assistant-intro { position: sticky; top: 112px; align-self: start; } .assistant-intro h2 { color: var(--text-on-inverse); } .assistant-intro p:not(.kicker) { color: color-mix(in srgb, var(--text-on-inverse) 70%, transparent); } .assistant-mark { display: grid; width: 76px; height: 76px; margin-bottom: var(--space-8); place-items: center; border: 1px solid color-mix(in srgb, var(--accent-cyan) 40%, transparent); border-radius: 20px; background: color-mix(in srgb, var(--accent-cyan) 10%, transparent); color: var(--accent-cyan); } .assistant-mark svg { width: 42px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 2; } .text-link { display: inline-flex; align-items: center; gap: var(--space-2); margin-top: var(--space-3); color: var(--accent-cyan); font-weight: 750; text-decoration: none; } .text-link:hover { text-decoration: underline; text-underline-offset: 4px; } .assistant-list { border-top: 1px solid color-mix(in srgb, var(--text-on-inverse) 18%, transparent); } .assistant-list article { display: grid; grid-template-columns: 42px 1fr; gap: var(--space-6); padding-block: var(--space-8); border-bottom: 1px solid color-mix(in srgb, var(--text-on-inverse) 18%, transparent); } .assistant-number { padding-top: 4px; color: color-mix(in srgb, var(--text-on-inverse) 42%, transparent); font-family: "SFMono-Regular", Consolas, monospace; font-size: 0.6875rem; } .assistant-list h3 { margin-bottom: var(--space-3); color: var(--text-on-inverse); } .assistant-list p { margin-bottom: 0; color: color-mix(in srgb, var(--text-on-inverse) 67%, transparent); } .site-footer { padding-block: var(--space-12); border-top: 1px solid var(--border-subtle); background: var(--surface-raised); } .footer-inner { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: var(--space-8); } .brand--footer { font-size: 1rem; } .brand--footer .brand-mark { width: 30px; height: 30px; } .footer-inner p { margin-bottom: 0; font-size: 0.75rem; } .footer-links { display: flex; gap: var(--space-6); } .footer-links a { color: var(--text-secondary); font-size: 0.75rem; font-weight: 650; text-decoration: none; } .footer-links a:hover { color: var(--accent); } .footer-inner small { grid-column: 1 / -1; padding-top: var(--space-6); border-top: 1px solid var(--border-subtle); color: var(--text-muted); font-size: var(--font-caption); } @media (max-width: 1199px) { .section-inner, .header-inner { width: min(100% - 48px, 1040px); } .hero-grid { grid-template-columns: minmax(0, 0.9fr) minmax(450px, 1.1fr); gap: var(--space-10); } .app-window { --window-scale: 0.9; width: 620px; transform-origin: center top; } .floating-card--approval { right: -10px; } .assistant-grid { gap: var(--space-16); } } @media (max-width: 959px) { .section { padding-block: 88px; } .header-inner { grid-template-columns: auto 1fr auto; } .site-navigation { justify-self: center; } .header-github { display: none; } .hero { min-height: auto; padding-top: 140px; } .hero-grid { grid-template-columns: 1fr; } .hero-copy { max-width: 720px; text-align: center; } .eyebrow { margin-inline: auto; } .hero-lead { margin-inline: auto; } .hero-actions, .hero-facts { justify-content: center; } .product-stage { width: min(100%, 690px); min-height: 500px; margin-inline: auto; } .app-window { --window-scale: 0.93; width: 680px; transform-origin: center top; } .floating-card--scope { right: 0; } .floating-card--approval { right: 0; bottom: 34px; } .proof-grid { grid-template-columns: repeat(2, 1fr); } .proof-grid div:nth-child(2) { border-right: 0; } .proof-grid div:nth-child(n + 3) { border-top: 1px solid var(--border-subtle); } .proof-grid div:nth-child(3) { padding-left: 0; } .section-heading { grid-template-columns: 1fr; gap: var(--space-4); } .section-heading > p { max-width: 640px; } .feature-grid { grid-template-columns: repeat(2, 1fr); } .feature-card--wide { grid-column: span 2; } .download-grid { grid-template-columns: 1fr; max-width: 680px; margin-inline: auto; } .download-card { grid-template-columns: auto 1fr auto; align-items: center; } .domestic-support { grid-template-columns: 1fr; } .button--download { grid-column: auto; width: auto; margin-top: 0; } .assistant-grid { grid-template-columns: 1fr; } .assistant-intro { position: static; max-width: 720px; } } @media (max-width: 719px) { html { scroll-padding-top: 72px; } .section-inner, .header-inner { width: calc(100% - 32px); } .section { padding-block: var(--space-16); } .header-inner { grid-template-columns: auto 1fr auto; min-height: 64px; } .brand { font-size: 1rem; } .brand-mark { width: 30px; height: 30px; } .menu-toggle { display: inline-grid; justify-self: end; margin-right: var(--space-2); } .header-actions { grid-column: 3; grid-row: 1; } .site-navigation { position: absolute; top: calc(100% + 1px); right: var(--space-4); left: var(--space-4); display: none; flex-direction: column; align-items: stretch; gap: var(--space-1); padding: var(--space-2); border-radius: var(--radius-card); background: var(--surface-raised); box-shadow: var(--shadow-dialog); } .site-header.is-menu-open .site-navigation { display: flex; } .site-navigation a { display: flex; min-height: 44px; align-items: center; border-radius: var(--radius-control); } .hero { padding-top: 118px; } .hero::before { width: 600px; } .hero h1 { letter-spacing: -0.055em; } .hero-lead { font-size: 0.9375rem; } .hero-actions { flex-direction: column; } .hero-actions .button { width: 100%; } .hero-facts { align-items: center; flex-direction: column; gap: var(--space-2); } .product-stage { min-height: 365px; margin-top: var(--space-4); } .app-window { --window-scale: 0.59; --window-translate-x: -50%; left: 50%; width: 680px; transform-origin: top center; } .floating-card--scope { top: -2px; right: 2px; } .floating-card--approval { right: 2px; bottom: 18px; } .floating-card { padding: var(--space-2) 10px; } .floating-card strong { font-size: 9px; } .floating-card small { max-width: 130px; font-size: 7px; } .floating-icon { width: 26px; height: 26px; } .proof-grid { grid-template-columns: 1fr; padding-block: var(--space-3); } .proof-grid div, .proof-grid div:first-child, .proof-grid div:nth-child(3) { padding: var(--space-3); border-top: 1px solid var(--border-subtle); border-right: 0; text-align: center; } .proof-grid div:first-child { border-top: 0; } .section-heading { margin-bottom: var(--space-8); } .feature-grid { grid-template-columns: 1fr; } .feature-card, .feature-card--wide { grid-column: auto; min-height: 0; padding: var(--space-6); } .feature-icon { margin-bottom: var(--space-6); } .download-card { grid-template-columns: auto 1fr; } .button--download { grid-column: 1 / -1; width: 100%; } .domestic-support { padding: var(--space-4); } .domestic-support__items { grid-template-columns: 1fr; } .assistant-grid { gap: var(--space-12); } .assistant-mark { width: 64px; height: 64px; } .assistant-list article { grid-template-columns: 32px 1fr; gap: var(--space-3); } .footer-inner { grid-template-columns: 1fr; gap: var(--space-4); } .footer-links { flex-wrap: wrap; gap: var(--space-3) var(--space-6); } .footer-inner small { grid-column: auto; } } @media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { scroll-behavior: auto !important; transition-duration: 0.01ms !important; animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; } .feature-card:hover, .button:not(.is-disabled):hover { transform: none; } .product-stage::before, .app-window::after { display: none; } .app-window { transform: translateX(var(--window-translate-x)) perspective(1400px) scale(var(--window-scale)) !important; } .floating-card { transform: none !important; } }