:root{
  --ink:#0b1220;
  --ink-2:#31404f;
  --body:#4a5766;
  --muted:#5a6675;
  --muted-dark:#8b98a9;
  --accent:#1263b8;
  --accent-hover:#0f5399;
  --accent-light:#7db6ef;
  --tint:#f1f7fd;
  --tint-border:#d8e7f8;
  --surface:#ffffff;
  --surface-alt:#fbfcfd;
  --line:#e9edf2;
  --line-card:#e4e9ef;
  --line-table:#eef2f7;
}
@font-face{font-family:Archivo;src:url(/fonts/archivo-var.woff2) format('woff2-variations');
  font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:'IBM Plex Mono';src:url(/fonts/plexmono-400.woff2) format('woff2');
  font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'IBM Plex Mono';src:url(/fonts/plexmono-500.woff2) format('woff2');
  font-weight:500;font-style:normal;font-display:swap}
html{-webkit-text-size-adjust:100%}
body{font-family:Archivo,system-ui,-apple-system,'Segoe UI',sans-serif}
code,kbd,samp,pre,.mono{font-family:'IBM Plex Mono',ui-monospace,SFMono-Regular,Menlo,monospace}
img,picture,svg{max-width:100%}
.shot{display:block;width:100%;height:auto;border-radius:10px}
/* every anchor target clears the 66px sticky header */
:target,[id]{scroll-margin-top:66px}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}
@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;
  animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
/* waitlist states */
.wl-msg{margin:10px 0 0;font-size:14px;line-height:1.5}
.wl-msg[data-state=ok]{color:var(--accent)}
.wl-msg[data-state=err]{color:#b3261e}
.wl-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
button[disabled]{opacity:.6;cursor:progress}

/* Pricing: the grid is auto-fit minmax(300px,1fr) inside a 1180px container, so
   four cards can never fit on one row and Enterprise always orphans onto its
   own. Let it span the full width instead, and lay its features out in columns
   so the card does not read as mostly empty space. */
@media (min-width:920px){
  #pricing [data-c="xee3dc82"] > *:last-child{grid-column:1/-1}
  #pricing [data-c="xee3dc82"] > *:last-child [data-c="x61f9edb"]{
    grid-template-columns:repeat(3,minmax(0,1fr));column-gap:26px}
}
@media (min-width:640px) and (max-width:919px){
  #pricing [data-c="xee3dc82"] > *:last-child{grid-column:1/-1}
  #pricing [data-c="xee3dc82"] > *:last-child [data-c="x61f9edb"]{
    grid-template-columns:repeat(2,minmax(0,1fr));column-gap:26px}
}
/* Header nav on narrow screens. The ported rule is a flex row of five links
   with a fixed 24px gap and no breakpoint, so below about 430px the row ran off
   the right edge and Platform, Pricing and FAQ could not be reached on a phone
   at all -- there is no horizontal scroll on the header to find them with.

   Wrapping the row is the cheapest fix that keeps every link reachable: no
   disclosure widget, no script, and nothing to open. The nav is ordered last so
   the logo and the call to action keep the first line to themselves.

   Selected by its accessible name rather than by `data-c`, because the hash
   differs between the pages already (x718c60e on / and /download, x47d2967 on
   /mac) and the next port would renumber both. Lives in BASE for the same
   reason the rules below do. */
@media (max-width:640px){
  /* `[data-c]` without a value: the ported rule sets a fixed 66px height and a
     34px gap at specificity (0,1,0), so `header > div` alone loses to it and the
     second row lands outside the header instead of growing it. Matching the
     attribute rather than its value beats that without pinning a hash that the
     next port would renumber. */
  header > div[data-c]{height:auto;flex-wrap:wrap;row-gap:10px;
    padding-top:11px;padding-bottom:11px}
  header nav[aria-label="Sections"]{order:3;width:100%;justify-content:center;
    flex-wrap:wrap;gap:8px 18px;font-size:13.5px}
}
/* The hero grid on a phone.

   The ported rule gives the hero a fixed pixel column -- 360px on /mac -- inside
   a container whose own 20px padding leaves a 335px content box at 375px wide.
   A 360px track in a 335px box overflows by 25, so the headline, the paragraph,
   the email input and the line under it were all clipped at the right edge, with
   no horizontal scroll to reach them. It read as a broken page rather than a
   narrow one.

   A single fluid column is the same layout at every width the grid actually
   gets. `minmax(0,1fr)` rather than `1fr` because a bare `1fr` is `minmax(auto,
   1fr)`, and `auto` floors at the widest unbreakable word, which puts the
   overflow straight back on a long headline.

   Selected structurally rather than by `data-c`: the hash differs per page and
   the next port renumbers it. Lives in BASE for the same reason. */
@media (max-width:640px){
  main > section:first-of-type > div[data-c]{grid-template-columns:minmax(0,1fr)}
}
/* Footer social. Hand added rather than ported, so it lives in BASE: a rule
   written into a `data-c` block would be dropped the next time the design is
   ported, and an invented `data-c` hash would collide with a real one. */
.social{display:flex;gap:8px;margin:16px 0 0}
.social a{display:grid;place-items:center;width:34px;height:34px;border-radius:8px;
  border:1px solid #2b3a4b;color:#aab6c6;transition:border-color .15s,color .15s}
.social a:hover{border-color:var(--accent-light);color:var(--surface)}
.social svg{width:15px;height:15px;fill:currentColor}
/* "Who it is for" cards. Hand written rather than ported, so the rule lives in
   BASE: a `data-c` block would be dropped the next time the design is ported. */
.who{border-bottom:1px solid var(--line);background:var(--surface);scroll-margin-top:66px}
.who > div{padding-top:clamp(46px,6vw,72px);padding-bottom:clamp(46px,6vw,72px)}
.who-kicker{font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:12px;font-weight:500;
  letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin:0}
.who-h{font-size:clamp(1.5rem,3.2vw,2.1rem);letter-spacing:-.02em;color:var(--ink);margin:14px 0 0}
.who-sub{font-size:15px;line-height:1.6;color:var(--body);margin:12px 0 0;max-width:62ch}
.who-grid{display:grid;gap:18px;margin:34px 0 0;
  grid-template-columns:repeat(auto-fit,minmax(238px,1fr))}
.who-grid article{border:1px solid var(--line-card);border-radius:10px;padding:20px;
  background:var(--surface-alt)}
.who-grid h3{font-size:15px;font-weight:600;color:var(--ink);margin:0}
.who-grid p{font-size:13.5px;line-height:1.6;color:var(--muted);margin:8px 0 0}
/* Analytics consent. Hand written rather than ported, so it lives in BASE.
   Fixed to the bottom so appearing costs no layout shift. */
.cc{position:fixed;left:12px;right:12px;bottom:12px;z-index:50;margin:0 auto;
  max-width:640px;background:var(--surface);border:1px solid var(--line-card);
  border-radius:12px;padding:16px 18px;display:flex;gap:16px;align-items:center;
  flex-wrap:wrap;box-shadow:0 6px 24px rgba(11,18,32,.13)}
.cc p{margin:0;flex:1 1 300px;font-size:13.5px;line-height:1.55;color:var(--body)}
.cc-b{display:flex;gap:8px;margin-left:auto}
.cc button{font:inherit;font-size:13.5px;font-weight:600;border-radius:8px;
  padding:9px 16px;cursor:pointer;border:1px solid var(--line-card);
  background:var(--surface);color:var(--body)}
.cc button:hover{border-color:var(--muted-dark)}
.cc .cc-yes{background:var(--accent);border-color:var(--accent);color:#fff}
.cc .cc-yes:hover{background:var(--accent-hover);border-color:var(--accent-hover)}
/* The free trial line on the paid pricing cards. Hand written, so it lives in
   BASE where a re-port cannot drop it. */
.trial{margin:6px 0 0;font-size:12.5px;line-height:1.5;color:var(--accent);
  background:var(--tint);border:1px solid var(--tint-border);border-radius:8px;
  padding:7px 10px}

.video-sec{padding:72px 0;background:var(--surface-alt);border-top:1px solid var(--line);
  border-bottom:1px solid var(--line)}
.video-wrap{max-width:840px;margin:0 auto;padding:0 24px;text-align:center}
.video-sec h2{font-size:clamp(26px,3.2vw,36px);line-height:1.15;letter-spacing:-.02em;
  color:var(--ink);margin:0 0 10px}
.video-sub{color:var(--body);font-size:17px;line-height:1.5;margin:0 0 28px}
.video-frame{position:relative;border-radius:14px;overflow:hidden;background:#0b1220;
  box-shadow:0 18px 48px rgba(11,18,32,.18);aspect-ratio:16/9}
.video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.video-play{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;cursor:pointer;
  background:none;display:block}
.video-play img{width:100%;height:100%;object-fit:cover;display:block}
.video-btn{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
  transition:transform .15s ease}
.video-btn-bg{fill:#212121;fill-opacity:.85;transition:fill-opacity .15s ease}
.video-play:hover .video-btn-bg,.video-play:focus-visible .video-btn-bg{fill:#cc0000;fill-opacity:1}
.video-play:hover .video-btn{transform:translate(-50%,-50%) scale(1.06)}
.video-play:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
@media (prefers-reduced-motion:reduce){.video-btn,.video-btn-bg{transition:none}}


/* ---- home ---- */

  body { margin: 0; background: var(--surface); color: var(--ink); text-wrap: pretty; -webkit-font-smoothing: antialiased; }
  a { color: var(--accent); text-decoration: none; }
  a:hover { color: var(--accent-hover); text-decoration: underline; }
  details summary::-webkit-details-marker { display: none; }
  ::selection { background: #dbe9fa; }
  * { box-sizing: border-box; }

[data-c="x0335d1d"]{font-family:'Archivo',system-ui,sans-serif;font-size:16.5px;line-height:1.65;letter-spacing:-.003em;background:var(--surface)}
[data-c="x2ea3d58"]{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.86);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
[data-c="xe59e62f"]{max-width:1180px;margin:0 auto;padding:0 clamp(20px,4vw,40px);height:66px;display:flex;align-items:center;gap:34px}
[data-c="xf3a70d9"]{display:flex;align-items:center;gap:10px;font-size:17.5px;font-weight:600;letter-spacing:-.02em;flex:none;color:var(--ink)}
[data-c="x2a1b75c"]{display:block}
[data-c="x80a68f2"]{color:var(--accent)}
[data-c="x718c60e"]{display:flex;gap:24px;align-items:center;font-size:14.5px;color:var(--muted)}
[data-c="x1c9c449"]{color:inherit}
[data-c="x4dff485"]{margin-left:auto;flex:none;background:var(--ink);color:var(--surface);font-size:14.5px;font-weight:500;padding:9px 16px;border-radius:8px}
[data-c="xe597e6f"]{position:relative;overflow:hidden;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#fbfcfe 0%,var(--surface) 72%)}
[data-c="x9c9e49d"]{position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(var(--line-table) 1px,transparent 1px),linear-gradient(90deg,var(--line-table) 1px,transparent 1px);background-size:56px 56px;-webkit-mask-image:radial-gradient(ellipse 80% 70% at 60% 8%,#000,transparent 75%);mask-image:radial-gradient(ellipse 80% 70% at 60% 8%,#000,transparent 75%)}
[data-c="x404bd5c"]{position:relative;max-width:1180px;margin:0 auto;padding:clamp(48px,6.5vw,88px) clamp(20px,4vw,40px) clamp(44px,6vw,72px);display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:clamp(32px,5vw,64px);align-items:center}
[data-c="xae0c076"]{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:500;color:var(--accent);background:var(--tint);border:1px solid var(--tint-border);padding:5px 12px;border-radius:999px}
[data-c="x7463176"]{width:6px;height:6px;border-radius:50%;background:var(--accent);display:block;flex:none}
[data-c="x20eea43"]{font-size:clamp(36px,4.3vw,56px);line-height:1.07;font-weight:700;letter-spacing:-.028em;margin:22px 0 0}
[data-c="x2bb63f3"]{font-size:18px;line-height:1.6;color:var(--body);max-width:54ch;margin:22px 0 0}
[data-c="x3ce2ca7"]{color:var(--ink);font-weight:600}
[data-c="x33081bb"]{display:flex;gap:10px;flex-wrap:wrap;margin:30px 0 0;max-width:480px}
[data-c="x8b6a286"]{flex:1;min-width:220px;font:inherit;font-size:15px;color:var(--ink);background:var(--surface);border:1px solid #dbe1e9;border-radius:9px;padding:11px 14px;outline:none}
[data-c="x1aae7b1"]{font:inherit;font-size:15px;font-weight:500;background:var(--accent);color:var(--surface);border:0;border-radius:9px;padding:11px 20px;cursor:pointer}
[data-c="x920a268"]{font-size:13.5px;color:var(--muted);margin:12px 0 0}
[data-c="x28fa303"]{border:1px solid var(--line-card);border-radius:14px;background:var(--surface);box-shadow:0 24px 48px -28px rgba(11,18,32,.25),0 2px 6px rgba(11,18,32,.04);overflow:hidden}
[data-c="xd243058"]{height:34px;display:flex;align-items:center;gap:7px;padding:0 13px;background:#f7f9fb;border-bottom:1px solid var(--line)}
[data-c="xa9d0875"]{width:9px;height:9px;border-radius:50%;background:#dde3ea;display:block}
[data-c="x38c7056"]{margin-left:8px;font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--muted)}
[data-c="x7db9357"]{border-bottom:1px solid var(--line);background:var(--surface-alt)}
[data-c="x3b4d873"]{max-width:1180px;margin:0 auto;padding:0 clamp(20px,4vw,40px)}
[data-c="x804f734"]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
[data-c="xad9b808"]{padding:34px 26px 34px 0;border-right:1px solid #eaeff5}
[data-c="xedda047"]{font-family:'IBM Plex Mono',monospace;font-size:30px;font-weight:500;letter-spacing:-.02em;color:var(--accent);margin:0}
[data-c="xf0ee1df"]{font-size:15px;font-weight:600;color:var(--ink);margin:8px 0 0}
[data-c="xafa6e1b"]{font-size:13.5px;color:var(--muted);margin:3px 0 0}
[data-c="x45c4772"]{padding:34px 26px;border-right:1px solid #eaeff5}
[data-c="x92fa464"]{padding:34px 0 34px 26px}
[data-c="xa08cdaf"]{border-bottom:1px solid var(--line)}
[data-c="x90d84ce"]{max-width:1180px;margin:0 auto;padding:clamp(48px,6vw,76px) clamp(20px,4vw,40px);display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:clamp(28px,4vw,56px)}
[data-c="xcf223d5"]{font-size:12.5px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--accent);margin:0}
[data-c="x730d128"]{font-size:clamp(26px,2.8vw,34px);line-height:1.18;font-weight:700;letter-spacing:-.022em;margin:14px 0 0;max-width:26ch}
[data-c="xf04934e"]{font-size:17.5px;line-height:1.62;color:var(--ink-2);margin:0;max-width:64ch}
[data-c="xcc47faf"]{font-family:'IBM Plex Mono',monospace;font-size:15px;background:#f4f6f9;border:1px solid var(--line);border-radius:5px;padding:1px 5px}
[data-c="x675fd47"]{font-size:15.5px;line-height:1.6;color:var(--muted);margin:18px 0 0;max-width:64ch}
[data-c="x9e94b23"]{border-bottom:1px solid var(--line);background:var(--surface-alt);scroll-margin-top:66px}
[data-c="xf857a15"]{max-width:1180px;margin:0 auto;padding:clamp(48px,6vw,80px) clamp(20px,4vw,40px)}
[data-c="xb5f91e5"]{font-size:clamp(28px,3vw,38px);line-height:1.15;font-weight:700;letter-spacing:-.022em;margin:14px 0 0;max-width:32ch}
[data-c="x2886bc4"]{font-size:17px;color:var(--body);max-width:64ch;margin:14px 0 0}
[data-c="xef42e7b"]{margin-top:34px;overflow-x:auto;border:1px solid var(--line-card);border-radius:14px;background:var(--surface)}
[data-c="x7e2f09b"]{width:100%;min-width:760px;border-collapse:collapse;font-size:14.5px}
[data-c="x30338e8"]{text-align:left;font-size:13px;color:var(--muted);padding:14px 18px 0}
[data-c="x8d87751"]{background:#f7f9fb}
[data-c="xe98c98b"]{text-align:left;font-weight:600;color:var(--muted);padding:13px 18px;border-bottom:1px solid var(--line);width:23%}
[data-c="xaa80625"]{text-align:left;font-weight:600;color:var(--accent);padding:13px 18px;border-bottom:1px solid var(--line);border-left:1px solid var(--line-table)}
[data-c="xf12d9b6"]{text-align:left;font-weight:600;color:var(--muted);padding:13px 18px;border-bottom:1px solid var(--line);border-left:1px solid var(--line-table)}
[data-c="x346774d"]{text-align:left;font-weight:600;color:var(--ink);padding:13px 18px;border-bottom:1px solid var(--line-table)}
[data-c="x24953b0"]{padding:13px 18px;border-bottom:1px solid var(--line-table);border-left:1px solid var(--line-table);color:var(--ink)}
[data-c="x6431d59"]{padding:13px 18px;border-bottom:1px solid var(--line-table);border-left:1px solid var(--line-table);color:var(--muted)}
[data-c="xc246788"]{text-align:left;font-weight:600;color:var(--ink);padding:13px 18px}
[data-c="xcb7400c"]{padding:13px 18px;border-left:1px solid var(--line-table);color:var(--muted)}
[data-c="xff61ea1"]{padding:13px 18px;border-left:1px solid var(--line-table);color:var(--ink)}
[data-c="x8f9e9b7"]{font-size:13.5px;color:var(--muted);margin:14px 0 0;max-width:74ch}
[data-c="xc306f4d"]{border-bottom:1px solid var(--line);scroll-margin-top:66px}
[data-c="xca745f7"]{font-size:clamp(28px,3vw,38px);line-height:1.15;font-weight:700;letter-spacing:-.022em;margin:14px 0 0;max-width:28ch}
[data-c="xfbf5d1c"]{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:20px;margin-top:34px}
[data-c="x4869ca4"]{border:1px solid var(--line);border-radius:12px;padding:24px;background:var(--surface)}
[data-c="xb51b16e"]{font-size:17px;font-weight:600;letter-spacing:-.01em;margin:0}
[data-c="xc28317c"]{font-size:15px;line-height:1.55;color:var(--muted);margin:8px 0 0}
[data-c="x562cf41"]{font-size:13.5px;line-height:1.6;color:var(--muted);margin:22px 0 0;max-width:78ch}
[data-c="x9e79b3e"]{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:20px;margin-top:34px}
[data-c="xb6405f9"]{border:1px solid var(--line-card);border-radius:14px;padding:26px;background:var(--surface);display:flex;flex-direction:column;gap:12px}
[data-c="xef05c36"]{width:38px;height:38px;border-radius:10px;background:var(--tint);border:1px solid var(--tint-border);display:grid;place-items:center}
[data-c="xbe727c5"]{font-size:18px;font-weight:600;letter-spacing:-.012em;margin:0}
[data-c="x1e7640f"]{font-size:15.5px;line-height:1.58;color:var(--muted);margin:0}
[data-c="x3c6f45d"]{margin-top:auto;align-self:flex-start;font-size:12px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);border:1px solid var(--line-card);border-radius:6px;padding:4px 9px}
[data-c="xb3bcd78"]{font-size:clamp(28px,3vw,38px);line-height:1.15;font-weight:700;letter-spacing:-.022em;margin:14px 0 0;max-width:30ch}
[data-c="xffa2b7d"]{font-size:17px;color:var(--body);max-width:66ch;margin:14px 0 0}
[data-c="xee3dc82"]{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:22px;margin-top:44px;align-items:stretch}
[data-c="x28c4438"]{position:relative;border:1px solid var(--line-card);border-radius:14px;padding:26px 24px;background:var(--surface);display:flex;flex-direction:column}
[data-c="xb2c41d8"]{font-family:'IBM Plex Mono',monospace;font-size:25px;font-weight:500;letter-spacing:-.02em;color:var(--ink);margin:12px 0 0}
[data-c="xb667f6d"]{font-family:'Archivo',sans-serif;font-size:14px;font-weight:400;color:var(--muted)}
[data-c="x0d1edc3"]{font-size:14.5px;line-height:1.45;color:var(--muted);margin:8px 0 0}
[data-c="xddf4238"]{border:0;border-top:1px solid var(--line-table);margin:18px 0}
[data-c="x61f9edb"]{margin:0;padding:0;list-style:none;display:grid;gap:11px;align-content:start;flex:1}
[data-c="xe779414"]{display:flex;gap:9px;font-size:14.5px;line-height:1.5;color:var(--muted)}
[data-c="x62c117b"]{flex:none;margin-top:4px}
[data-c="x37fd936"]{margin-top:22px;display:block;text-align:center;font-size:14.5px;font-weight:500;padding:10px 16px;border-radius:9px;background:var(--surface);color:var(--ink);border:1px solid #dbe1e9}
[data-c="xda63952"]{position:relative;border:2px solid var(--accent);border-radius:14px;padding:25px 23px;background:linear-gradient(180deg,#f6faff,var(--surface));box-shadow:0 18px 40px -26px rgba(18,99,184,.55);display:flex;flex-direction:column}
[data-c="x40d8a7d"]{position:absolute;top:-11px;left:24px;background:var(--accent);color:var(--surface);font-size:11.5px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;padding:4px 10px;border-radius:5px}
[data-c="x8fb641b"]{border:0;border-top:1px solid #cfe1f6;margin:18px 0}
[data-c="xb7b1262"]{margin-top:22px;display:block;text-align:center;font-size:14.5px;font-weight:500;padding:10px 16px;border-radius:9px;background:var(--accent);color:var(--surface)}
[data-c="xe64b546"]{font-size:13px;font-weight:600;color:var(--accent);margin:8px 0 0}
[data-c="xddfe863"]{font-family:'IBM Plex Mono',monospace;font-size:20px;font-weight:500;letter-spacing:-.02em;color:var(--ink);margin:12px 0 0}
[data-c="x1d29c30"]{max-width:1180px;margin:0 auto;padding:clamp(48px,6vw,80px) clamp(20px,4vw,40px);display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:clamp(28px,4vw,56px);align-items:start}
[data-c="xd2f21d7"]{font-size:clamp(26px,2.8vw,34px);line-height:1.18;font-weight:700;letter-spacing:-.022em;margin:14px 0 0;max-width:22ch}
[data-c="x439f7da"]{font-size:15.5px;color:var(--muted);margin:14px 0 0;max-width:40ch}
[data-c="xd169904"]{border-bottom:1px solid var(--line-card);padding:16px 0}
[data-c="x5fa8233"]{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;align-items:baseline;font-size:16.5px;font-weight:600}
[data-c="xaa06297"]{color:var(--accent);font-weight:400;font-size:20px;line-height:1}
[data-c="xb828df5"]{font-size:15.5px;line-height:1.6;color:var(--muted);margin:12px 0 0;max-width:70ch}
[data-c="x499bd43"]{background:var(--ink);color:var(--surface);border-bottom:1px solid var(--ink);scroll-margin-top:66px}
[data-c="x28a8527"]{max-width:1180px;margin:0 auto;padding:clamp(52px,6vw,84px) clamp(20px,4vw,40px);display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:clamp(28px,4vw,56px);align-items:center}
[data-c="x727bc76"]{font-size:clamp(27px,3vw,38px);line-height:1.14;font-weight:700;letter-spacing:-.024em;margin:0}
[data-c="xcb5e9a8"]{color:var(--accent-light)}
[data-c="x29d785a"]{font-size:16.5px;line-height:1.6;color:#aab6c6;margin:0;max-width:46ch}
[data-c="xe2e42be"]{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0 0;max-width:460px}
[data-c="x6c28fe5"]{flex:1;min-width:220px;font:inherit;font-size:15px;color:var(--ink);background:var(--surface);border:1px solid #1f2b3d;border-radius:9px;padding:11px 14px;outline:none}
[data-c="x98198ae"]{font-size:13px;color:#7b8a9c;margin:10px 0 0}
[data-c="x338d9ba"]{background:var(--ink);color:#aab6c6;font-size:14.5px}
[data-c="xfaae942"]{max-width:1180px;margin:0 auto;padding:clamp(40px,5vw,60px) clamp(20px,4vw,40px)}
[data-c="xbe38db5"]{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:32px 24px}
[data-c="x47b618f"]{min-width:200px}
[data-c="x3fc8a8f"]{display:flex;align-items:center;gap:10px;font-size:17px;font-weight:600;letter-spacing:-.02em;color:var(--surface)}
[data-c="x5f80458"]{font-size:14px;line-height:1.55;color:#7b8a9c;margin:14px 0 0;max-width:34ch}
[data-c="x718b312"]{font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted-dark);margin:0 0 14px}
[data-c="xa09df5c"]{margin:0;padding:0;list-style:none;display:grid;gap:10px}
[data-c="x4f2e61a"]{color:#aab6c6}
[data-c="x4b83a29"]{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;border-top:1px solid #1c2635;margin-top:36px;padding-top:22px;font-size:13px;color:var(--muted-dark)}

/* ---- mac ---- */

  body { margin: 0; background: var(--surface); color: var(--ink); text-wrap: pretty; -webkit-font-smoothing: antialiased; }
  a { color: var(--accent); text-decoration: none; }
  a:hover { color: var(--accent-hover); text-decoration: underline; }
  details summary::-webkit-details-marker { display: none; }
  ::selection { background: #dbe9fa; }
  * { box-sizing: border-box; }

[data-c="x0335d1d"]{font-family:'Archivo',system-ui,sans-serif;font-size:16.5px;line-height:1.65;letter-spacing:-.003em;background:var(--surface)}
[data-c="x2ea3d58"]{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.86);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
[data-c="xdbb0770"]{max-width:1180px;margin:0 auto;padding:0 clamp(20px,4vw,40px);height:66px;display:flex;align-items:center;gap:26px}
[data-c="xf3a70d9"]{display:flex;align-items:center;gap:10px;font-size:17.5px;font-weight:600;letter-spacing:-.02em;flex:none;color:var(--ink)}
[data-c="x2a1b75c"]{display:block}
[data-c="x80a68f2"]{color:var(--accent)}
[data-c="xf1221b1"]{font-size:12.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);background:var(--tint);border:1px solid var(--tint-border);border-radius:6px;padding:3px 8px;flex:none}
[data-c="x47d2967"]{display:flex;gap:22px;align-items:center;font-size:14.5px;color:var(--muted)}
[data-c="x1c9c449"]{color:inherit}
[data-c="x4dff485"]{margin-left:auto;flex:none;background:var(--ink);color:var(--surface);font-size:14.5px;font-weight:500;padding:9px 16px;border-radius:8px}
[data-c="xe597e6f"]{position:relative;overflow:hidden;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#fbfcfe 0%,var(--surface) 72%)}
[data-c="x9c9e49d"]{position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(var(--line-table) 1px,transparent 1px),linear-gradient(90deg,var(--line-table) 1px,transparent 1px);background-size:56px 56px;-webkit-mask-image:radial-gradient(ellipse 80% 70% at 60% 8%,#000,transparent 75%);mask-image:radial-gradient(ellipse 80% 70% at 60% 8%,#000,transparent 75%)}
[data-c="x1567490"]{position:relative;max-width:1180px;margin:0 auto;padding:clamp(44px,6vw,80px) clamp(20px,4vw,40px) clamp(40px,5vw,68px);display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:clamp(32px,5vw,64px);align-items:center}
[data-c="xae0c076"]{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:500;color:var(--accent);background:var(--tint);border:1px solid var(--tint-border);padding:5px 12px;border-radius:999px}
[data-c="x7463176"]{width:6px;height:6px;border-radius:50%;background:var(--accent);display:block;flex:none}
[data-c="x2884f23"]{font-size:clamp(34px,4.1vw,54px);line-height:1.08;font-weight:700;letter-spacing:-.028em;margin:22px 0 0}
[data-c="x2bb63f3"]{font-size:18px;line-height:1.6;color:var(--body);max-width:54ch;margin:22px 0 0}
[data-c="x33081bb"]{display:flex;gap:10px;flex-wrap:wrap;margin:30px 0 0;max-width:480px}
[data-c="x8b6a286"]{flex:1;min-width:220px;font:inherit;font-size:15px;color:var(--ink);background:var(--surface);border:1px solid #dbe1e9;border-radius:9px;padding:11px 14px;outline:none}
[data-c="x1aae7b1"]{font:inherit;font-size:15px;font-weight:500;background:var(--accent);color:var(--surface);border:0;border-radius:9px;padding:11px 20px;cursor:pointer}
[data-c="x920a268"]{font-size:13.5px;color:var(--muted);margin:12px 0 0}
[data-c="x28fa303"]{border:1px solid var(--line-card);border-radius:14px;background:var(--surface);box-shadow:0 24px 48px -28px rgba(11,18,32,.25),0 2px 6px rgba(11,18,32,.04);overflow:hidden}
[data-c="xd243058"]{height:34px;display:flex;align-items:center;gap:7px;padding:0 13px;background:#f7f9fb;border-bottom:1px solid var(--line)}
[data-c="xa9d0875"]{width:9px;height:9px;border-radius:50%;background:#dde3ea;display:block}
[data-c="x38c7056"]{margin-left:8px;font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--muted)}
[data-c="x9e94b23"]{border-bottom:1px solid var(--line);background:var(--surface-alt);scroll-margin-top:66px}
[data-c="xb95c01a"]{max-width:1180px;margin:0 auto;padding:clamp(44px,5.5vw,72px) clamp(20px,4vw,40px);display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:clamp(28px,4vw,56px)}
[data-c="xcf223d5"]{font-size:12.5px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--accent);margin:0}
[data-c="x730d128"]{font-size:clamp(26px,2.8vw,34px);line-height:1.18;font-weight:700;letter-spacing:-.022em;margin:14px 0 0;max-width:26ch}
[data-c="xf04934e"]{font-size:17.5px;line-height:1.62;color:var(--ink-2);margin:0;max-width:64ch}
[data-c="x675fd47"]{font-size:15.5px;line-height:1.6;color:var(--muted);margin:18px 0 0;max-width:64ch}
[data-c="xa08cdaf"]{border-bottom:1px solid var(--line)}
[data-c="x3b4d873"]{max-width:1180px;margin:0 auto;padding:0 clamp(20px,4vw,40px)}
[data-c="x804f734"]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
[data-c="xad9b808"]{padding:34px 26px 34px 0;border-right:1px solid #eaeff5}
[data-c="xedda047"]{font-family:'IBM Plex Mono',monospace;font-size:30px;font-weight:500;letter-spacing:-.02em;color:var(--accent);margin:0}
[data-c="xf0ee1df"]{font-size:15px;font-weight:600;color:var(--ink);margin:8px 0 0}
[data-c="xafa6e1b"]{font-size:13.5px;color:var(--muted);margin:3px 0 0}
[data-c="x45c4772"]{padding:34px 26px;border-right:1px solid #eaeff5}
[data-c="x4ea74da"]{font-family:'IBM Plex Mono',monospace;font-size:12.5px}
[data-c="x92fa464"]{padding:34px 0 34px 26px}
[data-c="xc9006a3"]{max-width:1180px;margin:0 auto;padding:clamp(44px,5.5vw,76px) clamp(20px,4vw,40px)}
[data-c="xb5f91e5"]{font-size:clamp(28px,3vw,38px);line-height:1.15;font-weight:700;letter-spacing:-.022em;margin:14px 0 0;max-width:32ch}
[data-c="xffa2b7d"]{font-size:17px;color:var(--body);max-width:66ch;margin:14px 0 0}
[data-c="xd972e26"]{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;margin-top:32px}
[data-c="x7fb85a1"]{border:1px solid #b9d5f2;border-radius:14px;padding:24px;background:linear-gradient(180deg,#f6faff,var(--surface));box-shadow:0 12px 28px -22px rgba(18,99,184,.5)}
[data-c="x083cc57"]{font-size:17px;font-weight:600;margin:0}
[data-c="x3016962"]{font-size:13px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--accent);margin:6px 0 14px}
[data-c="x1867692"]{font-size:15px;line-height:1.55;color:var(--muted);margin:0}
[data-c="xfb53c88"]{border:1px solid var(--line-card);border-radius:14px;padding:24px;background:var(--surface)}
[data-c="x34e4cfd"]{font-size:13px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);margin:6px 0 14px}
[data-c="xc306f4d"]{border-bottom:1px solid var(--line);scroll-margin-top:66px}
[data-c="xb3bcd78"]{font-size:clamp(28px,3vw,38px);line-height:1.15;font-weight:700;letter-spacing:-.022em;margin:14px 0 0;max-width:30ch}
[data-c="x2bd6d6d"]{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:32px}
[data-c="xcf2f92d"]{border:1px solid var(--line);border-radius:12px;padding:22px;background:var(--surface)}
[data-c="x9a3d453"]{font-size:16.5px;font-weight:600;margin:0 0 8px}
[data-c="xc37a059"]{max-width:1180px;margin:0 auto;padding:clamp(44px,5.5vw,76px) clamp(20px,4vw,40px);display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:clamp(28px,4vw,56px);align-items:start}
[data-c="xd2f21d7"]{font-size:clamp(26px,2.8vw,34px);line-height:1.18;font-weight:700;letter-spacing:-.022em;margin:14px 0 0;max-width:22ch}
[data-c="x439f7da"]{font-size:15.5px;color:var(--muted);margin:14px 0 0;max-width:40ch}
[data-c="xd169904"]{border-bottom:1px solid var(--line-card);padding:16px 0}
[data-c="x5fa8233"]{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;align-items:baseline;font-size:16.5px;font-weight:600}
[data-c="xaa06297"]{color:var(--accent);font-weight:400;font-size:20px;line-height:1}
[data-c="xb828df5"]{font-size:15.5px;line-height:1.6;color:var(--muted);margin:12px 0 0;max-width:70ch}
[data-c="x18a1c45"]{background:var(--ink);color:var(--surface);scroll-margin-top:66px}
[data-c="x12256f3"]{max-width:1180px;margin:0 auto;padding:clamp(48px,5.5vw,80px) clamp(20px,4vw,40px);display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:clamp(28px,4vw,56px);align-items:center}
[data-c="x727bc76"]{font-size:clamp(27px,3vw,38px);line-height:1.14;font-weight:700;letter-spacing:-.024em;margin:0}
[data-c="xcb5e9a8"]{color:var(--accent-light)}
[data-c="x29d785a"]{font-size:16.5px;line-height:1.6;color:#aab6c6;margin:0;max-width:46ch}
[data-c="xe2e42be"]{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0 0;max-width:460px}
[data-c="x6c28fe5"]{flex:1;min-width:220px;font:inherit;font-size:15px;color:var(--ink);background:var(--surface);border:1px solid #1f2b3d;border-radius:9px;padding:11px 14px;outline:none}
[data-c="xedbac2d"]{font-size:13px;color:var(--muted-dark);margin:10px 0 0}
[data-c="x338d9ba"]{background:var(--ink);color:#aab6c6;font-size:14.5px}
[data-c="xc054511"]{max-width:1180px;margin:0 auto;padding:clamp(36px,4.5vw,56px) clamp(20px,4vw,40px)}
[data-c="xbe38db5"]{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:32px 24px}
[data-c="x47b618f"]{min-width:200px}
[data-c="x3fc8a8f"]{display:flex;align-items:center;gap:10px;font-size:17px;font-weight:600;letter-spacing:-.02em;color:var(--surface)}
[data-c="xf7b9c2a"]{font-size:14px;line-height:1.55;color:var(--muted-dark);margin:14px 0 0;max-width:34ch}
[data-c="x718b312"]{font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted-dark);margin:0 0 14px}
[data-c="xa09df5c"]{margin:0;padding:0;list-style:none;display:grid;gap:10px}
[data-c="x4f2e61a"]{color:#aab6c6}
[data-c="x210a0a4"]{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;border-top:1px solid #1c2635;margin-top:32px;padding-top:22px;font-size:13px;color:var(--muted-dark)}
