:root { color-scheme: light dark; --bg:#f6f6fb; --surface:#fff; --text:#202031; --muted:#555568; --line:#dcdce9; --accent:#4b48c6; --accent-hover:#37339d; --tint:#eaeafb; --soft:#f0f0f7; }
* { box-sizing:border-box; }
html { scroll-padding-top:24px; }
body { margin:0; background:var(--bg); color:var(--text); font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; line-height:1.65; -webkit-font-smoothing:antialiased; }
a { color:var(--accent); text-underline-offset:4px; }
a:hover { text-decoration-thickness:2px; }
a,button,summary { -webkit-tap-highlight-color:transparent; }
:focus-visible { outline:3px solid var(--accent); outline-offset:5px; }
button { font:inherit; }
img { max-width:100%; height:auto; }
.wrap { width:min(1120px,calc(100% - 64px)); margin-inline:auto; }
.skip-link { position:absolute; top:10px; left:16px; transform:translateY(-160%); background:var(--surface); padding:10px 16px; z-index:2; }
.skip-link:focus { transform:translateY(0); }
.site-header { display:flex; align-items:center; justify-content:space-between; gap:24px; min-height:80px; border-bottom:1px solid var(--line); }
.brand { display:inline-flex; align-items:center; gap:10px; color:var(--text); font-size:23px; font-weight:750; text-decoration:none; letter-spacing:-.6px; }
.site-header nav,.site-footer nav { display:flex; align-items:center; gap:28px; }
.site-header nav a { font-size:14px; font-weight:600; color:var(--muted); text-decoration:none; padding-block:12px; }
.site-header nav a:hover { color:var(--accent); }
.hero { display:flex; align-items:center; justify-content:space-between; gap:48px; padding:64px 0 40px; }
.hero-copy { max-width:740px; }
.eyebrow { color:var(--accent); font-size:13px; font-weight:700; letter-spacing:.07em; margin:0 0 15px; text-transform:uppercase; }
h1,h2,h3,p { margin-top:0; }
h1,h2,h3 { line-height:1.12; }
h1 { font-size:clamp(38px,5.1vw,66px); letter-spacing:-2.6px; margin-bottom:20px; }
h2 { font-size:clamp(30px,3.3vw,42px); letter-spacing:-1.4px; margin-bottom:22px; }
h3 { font-size:21px; letter-spacing:-.5px; margin-bottom:14px; }
.lead { font-size:19px; line-height:1.55; color:var(--muted); max-width:610px; margin-bottom:26px; }
.hero-icon { width:150px; flex:none; margin-right:20px; }
.actions { display:flex; flex-wrap:wrap; gap:12px; }
.button { display:inline-flex; align-items:center; justify-content:center; padding:12px 20px; min-height:48px; border:1px solid transparent; border-radius:10px; font-weight:650; text-decoration:none; font-size:15px; white-space:nowrap; }
.button.primary { background:var(--accent); color:#fff; }
.button.primary:hover { background:var(--accent-hover); }
.button.secondary { background:var(--surface); border-color:var(--line); color:var(--text); }
.button.secondary:hover { border-color:var(--accent); }
.product-preview { margin:0; }
.product-preview img { display:block; width:100%; border-radius:16px; border:1px solid var(--line); background:#191919; }
.product-preview figcaption { display:flex; justify-content:space-between; gap:16px; align-items:center; padding:14px 0; color:var(--muted); font-size:13px; }
.text-button { padding:6px 0; background:none; color:var(--accent); border:0; font-size:13px; font-weight:650; text-decoration:underline; text-underline-offset:4px; cursor:pointer; white-space:nowrap; }
[hidden] { display:none !important; }
.requirements { display:flex; flex-wrap:wrap; gap:14px 28px; color:var(--muted); font-size:13px; padding:8px 0 30px; border-bottom:1px solid var(--line); }
.section { padding-block:68px; }
.section + .section { border-top:1px solid var(--line); }
.section-intro { color:var(--muted); max-width:640px; margin-bottom:30px; }
.features { display:grid; grid-template-columns:1.15fr 1fr; gap:18px; margin-top:30px; }
.feature { padding:32px; border:1px solid var(--line); border-radius:16px; background:var(--surface); }
.feature.featured { background:var(--tint); border-color:transparent; }
.feature.tinted { background:var(--soft); }
.feature p { color:var(--muted); margin-bottom:18px; max-width:42ch; }
.feature .feature-note { font-size:13px; margin-bottom:0; }
kbd { font-family:inherit; font-size:.88em; background:var(--surface); border:1px solid var(--line); border-bottom-width:2px; border-radius:5px; padding:1px 5px; white-space:nowrap; color:var(--text); }
.workflow { display:grid; grid-template-columns:1fr 1fr; gap:64px; }
.steps { list-style:none; padding:0; margin:0; counter-reset:step; }
.steps li { position:relative; padding:0 0 24px 44px; }
.steps li:last-child { padding-bottom:0; }
.steps li:before { counter-increment:step; content:counter(step); position:absolute; left:0; top:0; width:27px; height:27px; border-radius:50%; background:var(--tint); color:var(--accent); text-align:center; font-weight:650; font-size:13px; line-height:27px; }
.steps h3 { font-size:18px; margin-bottom:9px; }
.steps p { margin-bottom:0; color:var(--muted); font-size:15px; }
.install-grid { display:grid; grid-template-columns:1fr 1.3fr; gap:18px; }
.install-card { padding:30px; border:1px solid var(--line); border-radius:16px; background:var(--surface); }
.install-card p { font-size:15px; color:var(--muted); }
.install-card .small { font-size:13px; margin:18px 0 0; }
.install-card.store { grid-column:1 / -1; display:grid; grid-template-columns:1fr auto; column-gap:30px; align-items:start; background:var(--soft); }
.install-card.store h3 { grid-column:1; }
.install-card.store p { grid-column:1; max-width:650px; margin:0; }
.install-card.store .button { grid-column:2; grid-row:1 / 3; align-self:center; }
.install-card.store .small { margin-top:12px; }
pre { white-space:pre-wrap; overflow-wrap:anywhere; background:var(--soft); border:1px solid var(--line); border-radius:10px; padding:16px; font-size:12px; line-height:1.9; }
code { font-family:ui-monospace,SFMono-Regular,Consolas,monospace; }
.copy-status { display:block; min-height:24px; color:var(--muted); font-size:13px; }
.privacy-section > p { color:var(--muted); max-width:760px; }
.sync-grid { display:grid; grid-template-columns:1fr 1fr; gap:48px; margin:30px 0 16px; }
.sync-grid h3 { font-size:18px; }
.sync-grid p { color:var(--muted); font-size:15px; }
.faq { max-width:900px; }
details { border-bottom:1px solid var(--line); padding:18px 0; }
summary { cursor:pointer; font-weight:650; padding-right:18px; }
details p,details ul { color:var(--muted); max-width:760px; font-size:15px; margin:16px 0 0; }
.site-footer { border-top:1px solid var(--line); display:flex; flex-wrap:wrap; justify-content:space-between; gap:24px; padding-block:36px; color:var(--muted); font-size:13px; }
.site-footer .brand { font-size:19px; }
.site-footer p { margin:9px 0 0; }
.site-footer nav { flex-wrap:wrap; gap:18px; }
.site-footer nav a { color:var(--muted); }
.site-footer .fine-print { flex-basis:100%; font-size:12px; }
.document { max-width:800px; padding:56px 0 64px; }
.document h1 { font-size:clamp(36px,5vw,48px); }
.document h2 { font-size:26px; letter-spacing:-.6px; margin-top:40px; }
.document h3 { font-size:18px; }
.document p,.document li { color:var(--muted); }
.document .intro { font-size:19px; }
.document .contact { display:flex; flex-wrap:wrap; gap:12px; margin:24px 0; }
.document .note { border-left:3px solid var(--accent); padding:4px 0 4px 20px; margin-block:24px; }
.document .note p { margin:0; }
@media (prefers-color-scheme:dark) {
  :root { --bg:#101017; --surface:#1a1a25; --text:#f3f3fa; --muted:#b1b1c5; --line:#343442; --accent:#aaa8ff; --accent-hover:#c1bfff; --tint:#252440; --soft:#1d1d2b; }
  .button.primary { color:#161525; }
}
@media (prefers-reduced-motion:no-preference) {
  .button { transition:transform .16s,background-color .16s,border-color .16s; }
  .button:active { transform:translateY(1px); }
}
@media (max-width:767px) {
  .wrap { width:calc(100% - 36px); }
  .site-header { min-height:72px; gap:12px; }
  .site-header nav { gap:16px; }
  .site-header nav a { font-size:13px; }
  .site-header nav a:first-child { display:none; }
  .brand { font-size:21px; gap:7px; }
  .brand img { width:32px; }
  .hero { padding:40px 0 30px; gap:0; }
  h1 { letter-spacing:-1.6px; }
  .hero-icon { display:none; }
  .lead { font-size:17px; }
  .eyebrow { font-size:11px; }
  .button { font-size:14px; padding-inline:16px; }
  .product-preview figcaption { align-items:flex-start; font-size:12px; }
  .requirements { gap:8px 18px; font-size:12px; padding-bottom:24px; }
  .section { padding-block:44px; }
  .features,.workflow,.install-grid,.sync-grid { grid-template-columns:1fr; gap:16px; }
  .workflow { gap:24px; }
  .feature,.install-card { padding:24px; }
  .install-card.store { display:block; }
  .install-card.store .button { margin-top:22px; }
  .sync-grid { gap:10px; }
  .site-footer { display:block; }
  .site-footer nav { margin:24px 0; }
  .document { padding-top:36px; }
}
@media (max-width:360px) {
  .site-header nav { gap:11px; }
  .site-header nav a { font-size:12px; }
  .actions { gap:10px; }
  .actions .button { width:100%; }
}
