.j-head{isolation:isolate;padding:172px 0 148px;position:relative;overflow:hidden}.j-sky{z-index:-1;background:url(/art/sky-house-tall-1200.webp) 50% 0/max(100%,900px) no-repeat;position:absolute;inset:0}.j-sky:after{content:"";background:linear-gradient(to bottom, #ecf6fd57, #fff0 38%, #ffffff8c 72%, var(--white));position:absolute;inset:0}.j-head-in{position:relative}.j-head-c{text-align:center;flex-direction:column;align-items:center;display:flex}.j-head h1{letter-spacing:-.03em;max-width:15ch;font-size:clamp(48px,5.4vw,80px);line-height:.98}.j-head h1 em{display:inline-block}.j-head-line{max-width:540px;color:var(--ink-3);text-wrap:balance;margin-top:22px;font-size:18px;font-weight:500;line-height:1.5}.j-seg{width:max-content;max-width:100%;box-shadow:inset 0 0 0 1px var(--line);scrollbar-width:none;background:#ffffffe6;border-radius:99px;gap:4px;margin-top:34px;padding:5px;display:flex;overflow-x:auto}.j-seg::-webkit-scrollbar{display:none}.j-seg a{height:40px;color:var(--dim);border-radius:99px;flex:none;align-items:center;gap:7px;padding:0 17px;font-size:14.5px;font-weight:500;text-decoration:none;transition:background-color .25s,color .25s;display:inline-flex}.j-seg a:hover:not([aria-current]){color:var(--ink)}.j-seg a[aria-current]{background:var(--ink);color:var(--white)}.j-seg-n{font:500 11px/1 var(--mono);opacity:.7}.j-kick{min-height:24px;font:500 12px/1.2 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--dim);flex-wrap:wrap;align-items:center;gap:8px 10px;display:flex}.j-type{color:var(--marigold-ink)}.j-kick>span:nth-child(2):before{content:"·";margin-right:10px}.j-kick.on-ink{color:var(--on-ink-dim)}.j-kick.on-ink .j-type{color:var(--marigold)}.j-latest{z-index:1;padding:0 0 128px;position:relative}.j-feat{border-radius:var(--r-lg);background:var(--ink);color:var(--on-ink);grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:center;gap:56px;margin-top:-84px;padding:48px 52px;display:grid}.j-feat-t{color:var(--white);margin-top:22px;font-size:clamp(38px,3.8vw,54px);line-height:1.02}.j-feat-t a{text-decoration:none}.j-feat-t a:hover{text-underline-offset:6px;text-decoration:underline;text-decoration-thickness:1.5px}.j-feat-d{max-width:540px;color:var(--on-ink-dim);margin-top:18px;font-size:18px}.j-feat-btn{margin-top:32px}.j-feat-in{padding:4px 0}.j-feat-k{font:500 11.5px/1 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--on-ink-dim);margin-bottom:14px}.j-feat-in li{border-top:1px solid var(--ink-line);min-height:46px;color:var(--white);align-items:center;padding:8px 0;font-size:15.5px;font-weight:500;line-height:1.35;display:flex}.j-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:16px;display:grid}.j-card{border-radius:var(--r-lg);background:var(--white);min-height:320px;box-shadow:inset 0 0 0 1px var(--line);transition:box-shadow .25s, opacity .6s var(--ease), transform .7s var(--ease);flex-direction:column;padding:28px 28px 24px;display:flex;position:relative}.j-card:hover{box-shadow:inset 0 0 0 1px var(--line-2)}.j-grid>:nth-child(2){transition-delay:60ms}.j-grid>:nth-child(3){transition-delay:.12s}.j-card-t{font:400 28px/1.1 var(--serif);letter-spacing:-.018em;color:var(--ink);text-wrap:balance;margin-top:44px}.j-card-t a{text-decoration:none}.j-card-t a:after{content:"";border-radius:inherit;position:absolute;inset:0}.j-card-t a:focus-visible{outline:none}.j-card:has(.j-card-t a:focus-visible){outline:2px solid var(--blue);outline-offset:3px}.j-card-d{color:var(--body);margin-top:12px;font-size:16px}.j-card-f{justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:24px;display:flex}.j-card-f time{font:400 12px/1 var(--mono);color:var(--dim)}.j-card-go{background:var(--paper);width:36px;height:36px;color:var(--ink);border-radius:50%;place-items:center;transition:background-color .25s,color .25s;display:grid}.j-card-go svg,.j-flow-arrow svg,.j-toc-fold summary svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.j-card:hover .j-card-go{background:var(--ink);color:var(--white)}.j-card-ask{background:var(--paper);box-shadow:none}.j-card-ask .j-card-t{margin-top:0}.j-card-ask .btn,.j-card-ex .btn{z-index:1;position:relative}.j-card-ex{background:var(--ink);color:var(--on-ink);box-shadow:none}.j-card-ex .pill{align-self:flex-start}.j-card-ex .j-card-t{color:var(--white);margin-top:40px}.j-card-ex .j-card-d{color:var(--on-ink-dim)}.j-empty{border-radius:var(--r-lg);background:var(--white);box-shadow:inset 0 0 0 1px var(--line);text-align:center;margin-top:-84px;padding:64px 24px 56px}.j-feat[hidden]+.j-empty[hidden]+.j-grid{margin-top:-84px}.j-empty:not([hidden])+.j-grid{margin-top:16px}.j-empty p{font:400 28px/1.2 var(--serif);color:var(--ink)}.j-empty-a{min-height:44px;color:var(--ink);text-underline-offset:4px;align-items:center;margin-top:6px;font-weight:500;display:inline-flex}.j-topics{flex-wrap:wrap;align-items:center;gap:10px 14px;display:flex}.j-topics>span{font:500 11.5px/1 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--dim)}.j-topics ul{flex-wrap:wrap;gap:8px;display:flex}.j-topics li{height:34px;box-shadow:inset 0 0 0 1px var(--line);color:var(--body);border-radius:99px;align-items:center;padding:0 14px;font-size:14px;display:inline-flex}.j-topics li a{color:var(--ink);text-decoration:none}.j-topics-list{justify-content:center;margin-top:48px}.j-latest+.start:before{background:linear-gradient(to bottom, var(--white) 0%, #fff0 26%)}.j-head-entry{text-align:center;padding:164px 0 64px}.j-head-entry .j-sky{background-size:max(100%,900px)}.j-head-entry .j-head-in{flex-direction:column;align-items:center;max-width:960px;display:flex}.j-crumbs{height:36px;font:500 13.5px/1 var(--sans);color:var(--dim);background:#ffffffe6;border-radius:99px;align-items:center;gap:8px;padding:0 16px;display:inline-flex}.j-crumbs a{min-height:36px;color:var(--ink);align-items:center;text-decoration:none;display:inline-flex}.j-crumbs a:hover{text-underline-offset:3px;text-decoration:underline}.j-head-entry h1{max-width:19ch;margin-top:24px;font-size:clamp(42px,4.8vw,70px);line-height:1}.j-head-entry .j-head-line{max-width:620px}.j-meta{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:28px;display:flex}.j-meta li{height:32px;box-shadow:inset 0 0 0 1px var(--line);font:400 12px/1 var(--mono);color:var(--ink-2);white-space:nowrap;background:#ffffffeb;border-radius:99px;align-items:center;padding:0 13px;display:inline-flex}.j-meta .j-meta-type{background:var(--ink);color:var(--white);box-shadow:none;letter-spacing:.04em;text-transform:uppercase;font-size:11.5px;font-weight:500}.j-meta .j-meta-ex{background:var(--marigold-soft);color:var(--marigold-ink);box-shadow:none;letter-spacing:.04em;text-transform:uppercase;font-size:11.5px;font-weight:500}.j-body{grid-template-columns:minmax(0,700px);justify-content:center;padding-top:24px;padding-bottom:120px;display:grid}.j-body.has-toc{grid-template-columns:minmax(0,1fr) minmax(0,700px) minmax(0,1fr);gap:56px}.j-body.has-toc .j-prose{grid-area:1/2}.j-toc-side{grid-area:1/1;place-self:start end;width:100%;max-width:230px;position:sticky;top:112px}.j-toc-k{font:500 11.5px/1 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--dim);margin-bottom:10px}.j-toc ol li a{border-top:1px solid var(--line);min-height:40px;color:var(--body);align-items:center;padding:8px 0;font-size:14px;line-height:1.4;text-decoration:none;transition:color .2s;display:flex}.j-toc ol li a:hover{color:var(--ink)}.j-toc-fold{display:none}.j-prose{min-width:0;color:var(--body);font-size:18px;line-height:1.7}.j-prose>*+*{margin-top:22px}.j-prose>p:first-child{color:var(--ink-3);font-size:20.5px;font-weight:500;line-height:1.6}.j-prose h2{margin-top:72px;scroll-margin-top:110px;font-size:clamp(30px,3vw,40px);line-height:1.08}.j-prose>h2+*{margin-top:18px}.j-prose>h3{font:400 25px/1.2 var(--serif);letter-spacing:-.012em;text-wrap:balance;margin-top:40px}.j-prose>h3+*{margin-top:10px}.j-prose strong{color:var(--ink);font-weight:600}.j-prose a:not(.btn){color:var(--ink);text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, var(--ink) 32%, transparent);text-decoration-color:color-mix(in srgb, var(--ink) 32%, transparent);text-underline-offset:4px;text-decoration-thickness:1.5px;transition:text-decoration-color .2s}.j-prose a:not(.btn):hover{-webkit-text-decoration-color:var(--ink);text-decoration-color:var(--ink)}.j-prose>ul>li,.j-note-body ul>li,.wf-body ul>li{padding-left:28px;position:relative}.j-prose>ul>li+li,.j-note-body ul>li+li,.wf-body ul>li+li{margin-top:10px}.j-prose>ul>li:before,.j-note-body ul>li:before,.wf-body ul>li:before{content:"";background:var(--ink-2);width:13px;height:2px;position:absolute;top:.85em;left:2px}.j-prose>ol:not(.wf){counter-reset:n}.j-prose>ol:not(.wf)>li{counter-increment:n;padding-left:44px;position:relative}.j-prose>ol:not(.wf)>li+li{margin-top:12px}.j-prose>ol:not(.wf)>li:before{content:counter(n);width:27px;height:27px;box-shadow:inset 0 0 0 1px var(--line-2);font:500 12px/1 var(--mono);color:var(--ink);border-radius:50%;place-items:center;display:grid;position:absolute;top:.2em;left:0}.j-prose blockquote{border-radius:var(--r-md);background:var(--paper);font:italic 400 22px/1.45 var(--serif);color:var(--ink);letter-spacing:-.005em;margin:36px 0;padding:28px 32px}.j-prose blockquote p+p{margin-top:12px}.j-prose code{background:var(--paper-2);font:400 .86em/1 var(--mono);color:var(--ink);border-radius:6px;padding:.12em .4em}.j-prose pre{border-radius:var(--r-md);background:var(--ink);color:var(--on-ink);font:400 14.5px/1.6 var(--mono);padding:20px 24px;overflow-x:auto}.j-prose pre code{color:inherit;font:inherit;background:0 0;padding:0}.j-prose hr{background:var(--line);border:0;height:1px;margin:48px 0}.j-prose img{border-radius:var(--r-md);margin:36px auto}.j-prose>.j-topics{border-top:1px solid var(--line);margin-top:64px;padding-top:24px}.j-prose>.wf{counter-reset:wf;margin:36px 0 8px}.wf-step{counter-increment:wf;padding-left:60px;position:relative}.wf-step+.wf-step{margin-top:14px}.wf-step:before{content:counter(wf);background:var(--ink);width:40px;height:40px;color:var(--white);font:500 13px/1 var(--mono);z-index:1;border-radius:50%;place-items:center;display:grid;position:absolute;top:18px;left:0}.wf-step:not(:last-child):after{content:"";background:var(--line-2);width:1px;position:absolute;top:58px;bottom:-32px;left:19.5px}.wf-card{background:var(--white);box-shadow:inset 0 0 0 1px var(--line);border-radius:20px;padding:20px 24px}.wf-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:8px 14px;display:flex}.wf-title{font:400 23px/1.2 var(--serif);letter-spacing:-.012em;color:var(--ink);text-wrap:balance}.wf-by{background:var(--paper-2);height:26px;font:500 11px/1 var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--ink-2);white-space:nowrap;border-radius:99px;flex:none;align-items:center;margin-top:1px;padding:0 10px;display:inline-flex}.wf-by.team{background:var(--green-soft);color:var(--green)}.wf-body{margin-top:8px;font-size:16.5px;line-height:1.6}.wf-body>*+*{margin-top:10px}.wf-tools{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px 10px;margin-top:16px;padding-top:14px;display:flex}.wf-uses{font:500 11px/1 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--dim)}.wf-tools ul{flex-wrap:wrap;gap:6px;display:flex}.wf-tools li{background:var(--paper);min-height:28px;box-shadow:inset 0 0 0 1px var(--line);color:var(--ink);border-radius:99px;align-items:center;padding:3px 11px;font-size:13.5px;font-weight:500;line-height:1.3;display:inline-flex}.j-prose>.wf+*{margin-top:32px}.j-prose>.j-note{border-radius:var(--r-lg);background:var(--ink);color:var(--on-ink);margin:36px 0 0;padding:28px 32px}.j-note-body{margin-top:16px;font-size:17px;line-height:1.65}.j-note-body>*+*{margin-top:12px}.j-note-body strong,.j-note-body a{color:var(--white)}.j-note-body ul li:before{background:var(--marigold)}.j-note .btn{margin-top:22px}.j-prose>.j-panel{border-radius:var(--r-lg);background:var(--paper);margin-top:28px;padding:30px 34px 32px}.j-panel-k{font:500 11.5px/1 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--marigold-ink)}.j-panel>h3{font:400 23px/1.2 var(--serif);letter-spacing:-.012em;color:var(--ink);margin-top:26px}.j-panel>h3+*{margin-top:8px}.j-panel>p{font-size:17px}.j-panel>p:last-child{margin-bottom:0}.j-prose>.j-flow{grid-template-columns:minmax(0,1fr) 28px minmax(0,1.25fr) 28px minmax(0,1fr);align-items:stretch;margin:16px 0 36px;display:grid}.j-flow-col,.j-flow-core{background:var(--paper);border-radius:18px;padding:18px 20px}.j-flow-core{background:var(--white);box-shadow:inset 0 0 0 1.5px var(--ink)}.j-flow-k{font:500 11px/1 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--dim);display:block}.j-flow-core .j-flow-k{color:var(--marigold-ink)}.j-flow-col ul{margin-top:8px}.j-flow-col li{border-top:1px solid var(--line-2);color:var(--ink);padding:7px 0;font-size:15px;font-weight:500;line-height:1.35}.j-flow-col li:first-child{border-top:0}.j-flow-core p{font:400 21px/1.25 var(--serif);color:var(--ink);text-wrap:balance;margin-top:12px}.j-flow-arrow{color:var(--ink-2);place-items:center;display:grid}.j-rel{background:var(--paper);padding:112px 0 120px}.j-rel .sec-head{margin-bottom:32px}.j-rel .j-grid{margin-top:0}@media (max-width:1100px){.j-feat{gap:40px;padding:40px}.j-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.j-body.has-toc{grid-template-columns:minmax(0,700px);gap:0}.j-body.has-toc .j-prose{grid-area:2/1}.j-toc-side{display:none}.j-toc-fold{background:var(--paper);border-radius:18px;grid-row:1;margin-bottom:40px;display:block}.j-toc-fold summary{cursor:pointer;min-height:60px;font:400 20px/1.2 var(--serif);color:var(--ink);border-radius:18px;justify-content:space-between;align-items:center;gap:12px;padding:0 64px 0 20px;list-style:none;display:flex;position:relative}.j-toc-fold summary::-webkit-details-marker{display:none}.j-toc-fold summary span{font:400 12px/1 var(--mono);color:var(--dim)}.j-toc-fold summary:after{content:"";width:14px;height:14px;transition:transform .3s var(--ease);background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'%3E%3Cpath d='M7 2v10M2 7h10' stroke='%230c1a31' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E") 50%/14px no-repeat;margin-top:-7px;position:absolute;top:50%;right:22px}.j-toc-fold[open] summary:after{transform:rotate(45deg)}.j-toc-fold nav{padding:0 20px 12px}.j-toc-fold ol li a{align-items:center;min-height:44px}}@media (max-width:900px){.j-feat{grid-template-columns:1fr}}@media (max-width:760px){.j-head{padding:116px 0 104px}.j-head h1{font-size:clamp(36px,10vw,44px);line-height:1.02}.j-head-line{margin-top:16px;font-size:16px}.j-seg{align-self:stretch;width:auto;margin-top:26px}.j-seg a{height:44px;padding:0 14px;font-size:14px}.j-latest{padding-bottom:80px}.j-feat{border-radius:22px;gap:28px;margin-top:-64px;padding:26px 22px 24px}.j-feat-t{margin-top:18px;font-size:32px;line-height:1.06}.j-feat-d{font-size:16px}.j-feat-btn{justify-content:space-between;width:100%;margin-top:24px}.j-feat-in li{min-height:42px;font-size:15px}.j-grid{grid-template-columns:1fr;gap:12px;margin-top:12px}.j-card{border-radius:22px;min-height:0;padding:22px 20px 18px}.j-card-t{margin-top:28px;font-size:25px}.j-card-ask .j-card-t{margin-top:0}.j-card-d{font-size:15.5px}.j-empty p{font-size:24px}.j-empty,.j-feat[hidden]+.j-empty[hidden]+.j-grid{margin-top:-64px}.j-head-entry{padding:112px 0 40px}.j-crumbs{font-size:13px}.j-head-entry h1{margin-top:20px;font-size:clamp(34px,9.4vw,42px);line-height:1.04}.j-meta{gap:6px;margin-top:22px}.j-meta li{height:30px;padding:0 11px;font-size:11.5px}.j-body{padding-top:16px;padding-bottom:80px}.j-prose{font-size:17px}.j-prose>p:first-child{font-size:18.5px}.j-prose h2{margin-top:56px;font-size:30px}.j-prose>h3{margin-top:32px;font-size:22px}.j-prose blockquote{padding:22px 20px;font-size:19.5px}.wf-step{padding-left:46px}.wf-step:before{width:32px;height:32px;font-size:12px;top:16px}.wf-step:not(:last-child):after{top:48px;left:15.5px}.wf-card{border-radius:18px;padding:16px 16px 16px 18px}.wf-head{flex-direction:column;align-items:flex-start}.wf-title{font-size:20.5px}.wf-body{font-size:15.5px}.j-prose>.j-note{border-radius:22px;padding:22px 20px}.j-note-body{font-size:16px}.j-note .btn{justify-content:space-between;width:100%}.j-prose>.j-flow{grid-template-columns:1fr}.j-flow-arrow{height:30px;transform:rotate(90deg)}.j-rel{padding:80px 0}}
