:root {
  --c-bg:#fdfdfc;
  --c-panel:#f5f5f3;
  --c-card:#ffffff;
  --c-strip:#f9f9f7;
  --c-border:#e4e3e0;
  --c-border-soft:#edecea;
  --c-accent:#a23b72;
  --c-accent-dark:#7e2a57;
  --c-accent-ring:rgba(162,59,114,.28);
  --c-on-accent:#ffffff;
  --c-text:#1c1b1d;
  --c-muted:#5f5e62;
  --c-faint:#8d8c90;
  --c-success:#2f7d4f;
  --c-warn:#a86a00;
  --c-error:#b42318;
  --c-grid:rgba(176,173,166,.42);
  --c-horizon:rgba(176,173,166,.55);
  --c-mask:#000000;
  --c-transparent:rgba(253,253,252,0);
  --c-veil:rgba(28,27,29,.32);
  --c-field-start:#efefed;
  --c-field-end:#eeedf0;
  --f-display:'Inter','Noto Sans SC',-apple-system,BlinkMacSystemFont,'PingFang SC','Hiragino Sans','Microsoft YaHei',sans-serif;
  --f-body:'Inter','Noto Sans SC',-apple-system,BlinkMacSystemFont,'PingFang SC','Hiragino Sans','Apple SD Gothic Neo',sans-serif;
  --f-mono:'JetBrains Mono',ui-monospace,'SF Mono',Menlo,Consolas,monospace;
  --r-panel:10px;
  --r-card:8px;
  --r-btn:6px;
  --r-strip:6px;
  --r-pill:999px;
  --r-mark:8px;
  --r-dot:50%;
  --r-square:1px;
  --r-shot:10px;
  --sh-card:0 1px 0 rgba(28,27,29,.025),0 10px 24px -16px rgba(28,27,29,.14);
  --sh-btn:0 1px 0 rgba(126,42,87,.30),0 6px 16px -10px rgba(162,59,114,.55);
  --w-wrap:1160px;
  --w-panel:1120px;
  --w-reading:780px;
  --w-header:1280px;
  --h-header:64px;
  --gutter:24px;
  --section-space:144px;
  --track-display:-.03em;
  --track-cjk:-.02em;
  --size-body:15px;
  --size-small:13px;
  --size-h1:clamp(34px,3.35vw,48px);
  --size-h2:clamp(26px,2.6vw,36px);
  --size-h3:22px;
  --weight-regular:400;
  --weight-medium:500;
  --weight-strong:600;
  --line-body:1.6;
  --line-heading:1.2;
  --motion-fast:150ms;
  --motion-reveal:600ms;
  --focus-width:2px;
  --stroke:1px;
}
*,*::before,*::after { box-sizing:border-box; }
html { -webkit-text-size-adjust:100%; scroll-behavior:smooth; scroll-padding-top:24px; }
html.nav-open { overflow:hidden; }
body {
  margin:0;
  background:var(--c-bg);
  color:var(--c-text);
  font-family:var(--f-body);
  font-size:var(--size-body);
  line-height:var(--line-body);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
[hidden] { display:none !important; }
img { max-width:100%; }
svg { display:block; flex-shrink:0; }
a { color:inherit; text-decoration:none; }
button,input,select,textarea { font:inherit; }
button { cursor:pointer; }
button,a { -webkit-tap-highlight-color:var(--c-transparent); }
button { color:var(--c-text); }
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible {
  outline:var(--focus-width) solid var(--c-accent);
  outline-offset:3px;
  border-radius:var(--r-btn);
}
::selection { background:var(--c-accent); color:var(--c-on-accent); }
h1,h2,h3,h4 {
  font-family:var(--f-display);
  font-weight:var(--weight-regular);
  line-height:var(--line-heading);
  letter-spacing:var(--track-cjk);
  text-wrap:balance;
}
h1 { font-size:var(--size-h1); }
h2 { font-size:var(--size-h2); }
h3 { font-size:var(--size-h3); }
p { margin-block:0 1em; }
strong { font-weight:var(--weight-medium); }
code,kbd,pre { font-family:var(--f-mono); }
code { overflow-wrap:anywhere; }
pre {
  max-width:100%;
  min-width:0;
  overflow-x:auto;
  padding:18px;
  border:var(--stroke) solid var(--c-border);
  border-radius:var(--r-strip);
  background:var(--c-strip);
  color:var(--c-text);
  line-height:1.7;
  font-size:13px;
  white-space:pre;
  overscroll-behavior-inline:contain;
}
pre code { overflow-wrap:normal; word-break:normal; white-space:pre; }
.wrap {
  width:100%;
  max-width:calc(var(--w-wrap) + var(--gutter) * 2);
  margin-inline:auto;
  padding-inline:var(--gutter);
}
.reading { max-width:calc(var(--w-reading) + var(--gutter) * 2); }
.section { padding-top:var(--section-space); padding-bottom:var(--section-space); }
.section__heading { max-width:760px; margin:0 auto 36px; text-align:center; }
.section__heading h2 { margin-block:12px 16px; }
.eyebrow { font-size:12px; letter-spacing:.12em; color:var(--c-muted); text-transform:uppercase; }
.muted { color:var(--c-muted); }
.accent { color:var(--c-accent); }
.mono { font-family:var(--f-mono); }
.nowrap { white-space:nowrap; }
.cluster { display:flex; flex-wrap:wrap; align-items:center; gap:12px; }
.stack > * + * { margin-top:24px; }
.grid { display:grid; gap:24px; }
.grid--two { grid-template-columns:repeat(2,minmax(0,1fr)); }
.grid--three { grid-template-columns:repeat(3,minmax(0,1fr)); }
:where(.grid,.qindex__grid,.facts,.footer__grid,.feature-panel) > * { min-width:0; }
.panel,.card {
  background:var(--c-panel);
  color:var(--c-text);
  border-radius:var(--r-panel);
  padding:32px;
  min-width:0;
}
.card {
  background:var(--c-card);
  color:var(--c-text);
  border:var(--stroke) solid var(--c-border);
  border-radius:var(--r-card);
  padding:24px;
}
.card h3 { margin-block:0 12px; }
.card p:last-child { margin-bottom:0; }
.prose { min-width:0; line-height:1.85; }
.prose h2 { margin-top:64px; margin-bottom:24px; }
.prose h3 { margin-top:36px; margin-bottom:16px; }
.prose p,.prose li { overflow-wrap:break-word; }
.prose a:not(.btn):not(.store-button) { color:var(--c-accent); text-decoration:underline; text-underline-offset:3px; }
.prose :where(ul,ol) { padding-left:24px; }
.prose > :first-child { margin-top:0; }
.prose img { height:auto; }
.skip-link {
  position:absolute;
  top:8px;
  left:var(--gutter);
  z-index:100;
  padding:10px 16px;
  background:var(--c-card);
  color:var(--c-text);
  border:var(--stroke) solid var(--c-border);
  border-radius:var(--r-btn);
  transform:translateY(-160%);
}
.skip-link:focus { transform:none; }
.btn {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  min-height:46px;
  padding:10px 22px;
  border:var(--stroke) solid var(--c-text);
  border-radius:var(--r-btn);
  background:var(--c-card);
  color:var(--c-text);
  font-size:15px;
  font-weight:var(--weight-medium);
  letter-spacing:-.005em;
  text-align:center;
  transition:background-color var(--motion-fast),color var(--motion-fast),border-color var(--motion-fast);
}
.btn svg { width:17px; height:17px; }
.btn--solid {
  background:var(--c-accent);
  color:var(--c-on-accent);
  border-color:var(--c-accent-dark);
  box-shadow:var(--sh-btn);
}
.btn--solid:hover,.btn--solid.is-hover { background:var(--c-accent-dark); color:var(--c-on-accent); }
.btn--line:hover,.btn--line.is-hover { background:var(--c-panel); color:var(--c-text); }
.btn--text { border-color:var(--c-transparent); background:var(--c-transparent); color:var(--c-accent); padding-inline:0; }
.btn:disabled,.btn[aria-disabled="true"] { background:var(--c-panel); color:var(--c-muted); border-color:var(--c-border); box-shadow:none; cursor:not-allowed; }
.btn.is-focus { outline:var(--focus-width) solid var(--c-accent); outline-offset:3px; }
.btn__arrow { color:var(--c-muted); font-family:var(--f-mono); font-size:14px; }
.text-link { color:var(--c-accent); text-underline-offset:4px; }
.text-link:hover { color:var(--c-accent-dark); text-decoration:underline; }

.topbar { position:relative; z-index:50; min-height:var(--h-header); background:var(--c-bg); color:var(--c-text); border-bottom:var(--stroke) solid var(--c-border); }
.topbar__inner {
  position:relative;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  min-height:var(--h-header);
  max-width:min(100%,calc(var(--w-header) + var(--gutter) * 2));
  margin-inline:auto;
  padding-inline:var(--gutter);
}
.brand { display:inline-flex; align-items:center; gap:10px; flex-shrink:0; }
.brand__mark { display:block; width:30px; height:30px; border-radius:var(--r-mark); flex-shrink:0; }
.brand__mark--placeholder { background:linear-gradient(160deg,var(--c-card),var(--c-panel)); color:var(--c-text); border:var(--stroke) solid var(--c-border); }
.brand__name { font-family:var(--f-display); font-size:16px; font-weight:var(--weight-medium); letter-spacing:-.01em; }
.desktop-nav { min-width:0; margin-left:auto; }
.navmenu__list { display:flex; align-items:center; gap:2px; list-style:none; margin:0; padding:0; }
.navmenu__link { display:inline-flex; align-items:center; min-height:34px; padding:4px 13px; border:var(--stroke) solid var(--c-transparent); border-radius:var(--r-pill); font-size:14px; color:var(--c-muted); white-space:nowrap; transition:background-color var(--motion-fast),color var(--motion-fast); }
.navmenu__link:hover { background:var(--c-panel); color:var(--c-text); }
.navmenu__link[aria-current="page"] { background:var(--c-panel); color:var(--c-text); border-color:var(--c-border); }
.header-tools { display:flex; align-items:center; gap:8px; flex-shrink:0; }
.lang-control { position:relative; }
.langpick {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  min-height:34px;
  padding:4px 12px;
  border:0;
  border-left:var(--stroke) solid var(--c-border);
  background:var(--c-transparent);
  color:var(--c-muted);
  font-size:13.5px;
  white-space:nowrap;
}
.langpick svg { width:15px; height:15px; }
.langpick__short { display:none; }
.language-menu {
  position:absolute;
  right:0;
  top:calc(100% + 12px);
  width:190px;
  padding:8px;
  border:var(--stroke) solid var(--c-border);
  border-radius:var(--r-card);
  background:var(--c-card);
  color:var(--c-text);
  box-shadow:var(--sh-card);
  z-index:4;
}
.language-menu a { display:flex; align-items:center; min-height:44px; padding:8px 12px; border-radius:var(--r-btn); }
.language-menu a:hover,.language-menu a[aria-current="true"] { background:var(--c-panel); color:var(--c-text); }
.menu-toggle { display:none; align-items:center; justify-content:center; min-width:44px; min-height:44px; border:var(--stroke) solid var(--c-border); border-radius:var(--r-btn); background:var(--c-card); color:var(--c-text); }
.menu-toggle svg { width:22px; height:22px; }
.mobile-drawer {
  position:absolute;
  top:100%;
  left:0;
  right:0;
  z-index:3;
  padding:16px var(--gutter) 24px;
  max-height:calc(100dvh - var(--h-header));
  overflow-y:auto;
  overscroll-behavior:contain;
  background:var(--c-bg);
  color:var(--c-text);
  border-bottom:var(--stroke) solid var(--c-border);
}
.mobile-drawer ul { list-style:none; margin:0; padding:0; }
.mobile-drawer a { display:flex; width:100%; min-height:46px; align-items:center; padding:10px 14px; border-radius:var(--r-btn); }
.mobile-drawer a:hover,.mobile-drawer a[aria-current] { background:var(--c-panel); color:var(--c-text); }
.mobile-drawer__languages { margin-top:16px !important; padding-top:16px !important; border-top:var(--stroke) solid var(--c-border); }
.nav-veil { position:fixed; inset:var(--h-header) 0 0; z-index:40; border:0; background:var(--c-veil); color:var(--c-text); }
.preview-mobile-menu { display:none; }
.preview-mobile-menu > summary { list-style:none; }
.preview-mobile-menu > summary::-webkit-details-marker { display:none; }

.hero { position:relative; overflow:hidden; overflow-x:clip; padding:34px 24px; isolation:isolate; }
.hero__horizon {
  position:absolute;
  z-index:-1;
  left:0;
  right:0;
  top:47%;
  bottom:0;
  overflow:hidden;
  pointer-events:none;
  perspective:560px;
  perspective-origin:50% 0;
  -webkit-mask-image:linear-gradient(to bottom,var(--c-transparent),var(--c-mask) 34%,var(--c-mask));
  mask-image:linear-gradient(to bottom,var(--c-transparent),var(--c-mask) 34%,var(--c-mask));
}
.hero__horizon::before {
  content:"";
  position:absolute;
  left:-60%;
  right:-60%;
  top:0;
  height:240%;
  background-image:linear-gradient(to bottom,var(--c-grid) 1px,var(--c-transparent) 1px),linear-gradient(to right,var(--c-grid) 1px,var(--c-transparent) 1px);
  background-size:84px 60px;
  background-position:50% 0;
  transform-origin:50% 0;
  transform:rotateX(66deg);
}
.hero__horizon::after { content:""; position:absolute; left:8%; right:8%; top:0; height:1px; background:linear-gradient(to right,var(--c-transparent),var(--c-horizon) 30%,var(--c-horizon) 70%,var(--c-transparent)); }
.hero__copy { max-width:var(--w-wrap); margin-inline:auto; text-align:center; }
.tagline { display:inline-flex; align-items:center; gap:9px; min-height:28px; padding:3px 13px 3px 11px; border:var(--stroke) solid var(--c-border); border-radius:var(--r-pill); background:var(--c-card); color:var(--c-muted); font-size:12.5px; letter-spacing:.02em; }
.tagline__dot { position:relative; width:7px; height:7px; flex-shrink:0; border-radius:var(--r-dot); background:var(--c-accent); }
.tagline__dot::after { content:""; position:absolute; inset:-4px; border-radius:var(--r-dot); background:var(--c-accent-ring); animation:dot-breathe 2.8s ease-in-out infinite; }
@keyframes dot-breathe { 0%,100% { transform:scale(.55); opacity:0; } 50% { transform:scale(1); opacity:1; } }
.hero__title { margin:20px auto 0; font-weight:var(--weight-regular); font-size:var(--size-h1); line-height:1.14; letter-spacing:var(--track-display); color:var(--c-text); }
.hero__title > span { display:block; }
.hero__title .hero__title-accent { color:var(--c-accent); letter-spacing:var(--track-cjk); }
.ctas { display:flex; justify-content:center; gap:12px; margin-top:26px; }
.devices { display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:20px; margin:16px 0 0; padding:0; list-style:none; color:var(--c-muted); font-size:13px; }
.devices__item,.devices__item a { display:inline-flex; align-items:center; gap:7px; }
.devices__item a:hover { color:var(--c-accent); }
.devices__item svg { width:18px; height:18px; }
.devices__store { display:inline-flex; align-items:center; gap:6px; min-height:24px; padding:2px 10px; border:var(--stroke) solid var(--c-border); border-radius:var(--r-pill); background:var(--c-card); color:var(--c-text); font-size:12px; }
.devices__store svg { width:12px; height:12px; }
.devices__sep { width:1px; height:14px; background:var(--c-border); flex-shrink:0; }
.hero__lead { max-width:640px; margin:20px auto 0; font-size:16px; line-height:1.65; color:var(--c-muted); }
.hero__lead strong { color:var(--c-text); }
.facts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); max-width:760px; margin:24px auto 0; padding:0; list-style:none; }
.facts__item { padding-inline:18px; }
.facts__item + .facts__item { border-left:var(--stroke) solid var(--c-border); }
.facts__value { display:block; font-family:var(--f-mono); font-size:24px; line-height:1.2; letter-spacing:-.02em; color:var(--c-accent); }
.facts__note { display:block; margin-top:6px; font-size:12.5px; line-height:1.5; color:var(--c-muted); }
.nextsec { padding:96px 24px 120px; text-align:center; }
.nextsec__eyebrow { margin:0; font-size:12px; letter-spacing:.12em; color:var(--c-muted); }
.nextsec__title { margin:12px 0 0; font-size:32px; letter-spacing:var(--track-display); }

.footer { margin-top:var(--section-space); padding-top:56px; padding-bottom:24px; background:var(--c-panel); color:var(--c-text); border-top:var(--stroke) solid var(--c-border); }
.footer__grid { display:grid; grid-template-columns:1.4fr 1fr 1.3fr; gap:48px; }
.footer__intro { max-width:360px; margin-top:18px; color:var(--c-muted); font-size:14px; }
.footer h2 { margin:0 0 16px; font-size:14px; font-weight:var(--weight-medium); letter-spacing:0; }
.footer ul { list-style:none; padding:0; margin:0; }
.footer__links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px 16px; }
.footer a:not(.brand) { display:inline-block; padding-block:5px; color:var(--c-muted); font-size:13px; }
.footer a:hover { color:var(--c-accent); }
.footer__languages { display:flex; flex-wrap:wrap; gap:8px 24px; padding-top:32px; }
.footer__bottom { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px 24px; margin-top:24px; padding-top:20px; border-top:var(--stroke) solid var(--c-border); font-size:12px; color:var(--c-muted); }
.footer__bottom p { margin:0; }
.footer__legal { display:flex; flex-wrap:wrap; gap:16px; }
.reveal { opacity:1; transform:none; }
.reveal.reveal-ready { opacity:0; transform:translateY(14px); transition:opacity var(--motion-reveal) ease,transform var(--motion-reveal) ease; }
.reveal.shown { opacity:1; transform:none; }

@media (max-width:1279px) {
  .desktop-nav { display:none; }
  .header-tools { margin-left:auto; }
  .menu-toggle { display:inline-flex; }
  .preview-mobile-menu { display:block; }
}
@media (min-width:1280px) {
  .mobile-drawer,.nav-veil { display:none !important; }
}
@media (max-width:900px) {
  .grid--three { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .facts { grid-template-columns:minmax(0,1fr); gap:14px; }
  .facts__item + .facts__item { border-left:0; border-top:var(--stroke) solid var(--c-border); padding-top:14px; }
  .footer__grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px; }
  .footer__brand { grid-column:1 / -1; }
}
@media (max-width:768px) {
  :root { --size-h1:clamp(24px,4vw,30px); --section-space:88px; }
}
@media (max-width:640px) {
  :root { --gutter:16px; }
  .topbar__inner { gap:8px; }
  .brand { gap:8px; }
  .brand__name { font-size:14px; }
  .brand__mark { width:28px; height:28px; }
  .header-tools { gap:4px; margin-left:auto; }
  .langpick { padding-inline:8px; }
  .langpick__full { display:none; }
  .langpick__short { display:inline; }
  .langpick svg { display:none; }
  .grid--two,.grid--three,.footer__grid { grid-template-columns:minmax(0,1fr); }
  .footer__brand { grid-column:auto; }
  .panel,.card { padding:20px; }
  .hero { padding-inline:var(--gutter); }
  .hero__title { font-size:clamp(24px,7.4vw,30px); }
  .ctas { flex-direction:column; align-items:stretch; max-width:320px; margin-inline:auto; }
  .devices { gap:12px 16px; }
  .devices__sep { display:none; }
  .nextsec__title { font-size:24px; }
  .tilt,[data-tilt] { transform:none !important; }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  .tagline__dot::after { animation:none; opacity:.6; }
  .reveal.reveal-ready { opacity:1; transform:none; transition:none; }
  *,*::before,*::after { transition-duration:0s !important; }
}
@media print {
  .header-tools,.mobile-drawer,.nav-veil,.dl-fab { display:none !important; }
  .reveal.reveal-ready { opacity:1; transform:none; }
}