.stage{max-width:1180px;width:100%;margin:0 auto;padding:0 40px 20px;flex:1 0 auto}.hero{max-width:1180px;width:100%;margin:0 auto;padding:56px 40px 30px;display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}.hero .contact{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:baseline;gap:18px}.hero .contact a{font-family:var(--sans);font-size:13.5px;letter-spacing:.005em;color:var(--ink-soft);text-decoration:underline;text-decoration-color:var(--rule);text-underline-offset:3px;transition:color .2s,text-decoration-color .2s}.hero .contact a:hover{color:var(--slate);text-decoration-color:var(--slate)}.hero .id{display:flex;align-items:center;gap:16px}.hero .nm{font-family:var(--display);font-weight:600;font-size:34px;letter-spacing:-.02em;color:var(--ink)}.jrow .y,.subitem .sy,.asub{font-family:var(--sans)!important;font-variant-numeric:tabular-nums;letter-spacing:.02em;font-weight:500}.content{margin-top:0;padding-top:44px;border-top:1px solid var(--rule);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:26px 40px;align-items:start}.side{position:sticky;top:20px;align-self:start}.cmds{display:flex;flex-direction:column;gap:2px}.cmd{font-size:16.5px;font-weight:500;letter-spacing:-.01em;color:var(--ink-soft);cursor:pointer;text-align:left;background:none;border:0;border-radius:8px;padding:9px 10px;margin-left:-10px;display:flex;align-items:center;gap:10px;transition:color .2s,background .2s}.cmd:hover{color:var(--ink);background:color-mix(in oklch,var(--bh) 10%,transparent)}.cmd .dot{display:none}.cmd .ar{margin-left:auto;color:var(--ink-faint);font-family:var(--mono);font-size:18px;line-height:1;display:flex;align-items:center;opacity:0;transition:transform .2s,opacity .2s}.cmd .ar svg{display:block}.cmd:hover .ar{opacity:1;transform:translate(3px)}.cmd.on{color:var(--ink);background:none;font-weight:550}.cmd.on .dot{opacity:1}.cmd.on .ar{opacity:1;color:var(--bh)}.cmd.on .ar{transform:translate(3px)}.sublist{display:grid;grid-template-rows:0fr;overflow:hidden;transition:grid-template-rows .34s cubic-bezier(.16,1,.3,1)}.sublist.open{grid-template-rows:1fr}.sublist>div{min-height:0}.sub{display:flex;flex-direction:column;gap:1px;padding:3px 0 8px}.subitem{font-size:13.5px;font-weight:500;color:var(--ink-faint);text-align:left;cursor:pointer;background:none;border:0;border-radius:8px;padding:8px 10px;margin-left:9px;display:flex;justify-content:space-between;gap:12px;align-items:center;transition:color .2s,background .2s}.subitem:hover{color:var(--ink);background:color-mix(in oklch,var(--bh) 10%,transparent)}.subitem.on{color:var(--ink);font-weight:650;background:none}.subitem .st{line-height:1.3}.subitem .sy{font-family:var(--mono);font-size:10.5px;color:var(--ink-faint);flex:none}.article h2{margin-bottom:5px}.asub{font-family:var(--mono);font-size:12px;letter-spacing:.03em;color:var(--ink-faint);margin:0 0 18px}.article p{font-size:15.5px;color:var(--ink-soft);line-height:1.62;margin:0 0 13px}.article p:last-child{margin-bottom:0}.article em{font-style:italic;color:var(--ink)}.article h3{font-family:var(--mono);font-size:12px;font-weight:400;letter-spacing:.06em;text-transform:uppercase;color:var(--coral);margin:28px 0 12px}.pbody h2,.secbody h2{font-family:var(--sans);font-size:18px;font-weight:500;letter-spacing:-.01em;margin:0 0 8px}.secbody .lede{font-size:16.5px;color:var(--ink-soft);line-height:1.6;margin:0 0 14px}.secbody .lede:last-child{margin-bottom:0}.secbody b,.secbody strong{color:var(--ink);font-weight:600}.secbody em{font-style:italic;color:var(--ink)}.flist{list-style:none;margin:4px 0 16px;padding:0;display:flex;flex-direction:column;gap:9px}.flist li{position:relative;padding-left:20px;font-size:16.5px;line-height:1.5;color:var(--ink-soft)}.flist li:before{content:"";position:absolute;left:3px;top:.62em;width:5px;height:5px;border-radius:50%;background:var(--bh)}.jrow{display:grid;grid-template-columns:1fr 62px;gap:3px 18px;align-items:baseline;padding:16px 0;border-top:1px solid var(--rule)}.jrow:first-of-type{border-top:none;padding-top:0}.jrow .h{font-size:18px;font-weight:500;letter-spacing:-.01em}.jrow .h .r{color:var(--ink-soft);font-weight:500}.jrow .roles{grid-column:1 / -1;display:grid;grid-template-columns:1fr 62px;gap:3px 18px;align-items:baseline;font-size:18px;font-weight:500;letter-spacing:-.01em;color:var(--ink-faint);margin-top:1px}.jrow .roles .y{font-family:var(--mono);font-size:11px;letter-spacing:0;color:var(--ink-faint);white-space:nowrap}.jrow .y{font-family:var(--mono);font-size:11px;letter-spacing:0;color:var(--ink-faint);white-space:nowrap;justify-self:end}.jrow .d{grid-column:1;font-size:15px;color:var(--ink-soft);line-height:1.5;margin-top:2px}.sec{padding:48px 0;border-top:1px solid var(--rule)}.sec:first-child{padding-top:0;border-top:none}.wstack{display:flex;flex-direction:column}.wart{padding:40px 0;border-top:1px solid var(--rule)}.wart:first-child{padding-top:0;border-top:none}.colophon{padding:22px 0 8px;font-family:var(--sans);font-size:12.5px;letter-spacing:.01em;color:var(--ink-faint);line-height:1.6}.colophon a{color:var(--ink-soft);text-decoration:underline;text-decoration-color:var(--rule);text-underline-offset:3px}.colophon a:hover{color:var(--slate);text-decoration-color:var(--slate)}.demos{display:flex;margin:26px 0 4px}.demo.ios{flex:0 0 auto}.demo-img{display:block;width:500px;max-width:100%;height:auto}@media(max-width:900px){.content{grid-template-columns:1fr;gap:22px}.side{position:static}.hero,.stage{padding-left:24px;padding-right:24px}}
